abstract  ... by andris96
_