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