improved business logic