service layer improvements