completed all use cases