added basic implementation. service calls needed