Added Business Logic Layer