def METHOD_NAME(cls, info: ResolveInfo, instance):
    requestor = info.context.user
    if not requestor:
        raise PermissionDenied("You must be authenticated to perform this action.")
    if requestor.is_superuser:
        return
    if not can_user_manage_group_permissions(requestor, instance):
        error_msg = "You can't manage group with permissions out of your scope."
        code = PermissionGroupErrorCode.OUT_OF_SCOPE_PERMISSION.value
        raise ValidationError(error_msg, code)
    if not can_user_manage_group_channels(info, requestor, instance):
        error_msg = "You can't manage group with channels out of your scope."
        code = PermissionGroupErrorCode.OUT_OF_SCOPE_CHANNEL.value
        raise ValidationError(error_msg, code)
    cls.check_if_group_can_be_removed(requestor, instance)