adding the service logic