added PermissionManager class