start of service layer