code: def bot_has_role(item):
      
  
      def predicate(ctx):
          ch = ctx.channel
          if not isinstance(ch, discord.abc.GuildChannel):
              raise NoPrivateMessage()
  
          me = ch.guild.me
          if isinstance(item, int):
              role = discord.utils.get(me.roles, id=item)
          else:
              role = discord.utils.get(me.roles, name=item)
          if role is None:
              raise BotMissingRole(item)
          return True
      return check(predicate)
docs: Similar to :func:`.has_role` except checks if the bot itself has the
      role.
  
      This check raises one of two special exceptions, :exc:`.BotMissingRole` if the bot
      is missing the role, or :exc:`.NoPrivateMessage` if it is used in a private message.
      Both inherit from :exc:`.CheckFailure`.
  
      .. versionchanged:: 1.1.0
  
          Raise :exc:`.BotMissingRole` or :exc:`.NoPrivateMessage`
          instead of generic :exc:`.CheckFailure`