Added Business logic layer