added the re-factored business logic api