added some business logic