service reworked. tests fixed