code: def check(wants, has):
      
      if wants & has == 0:
          return False
      if wants & has < wants:
          return False
      return True
docs: Check if a desired scope ``wants`` is part of an available scope ``has``.
  
      Returns ``False`` if not, return ``True`` if yes.
  
      :example:
  
      If a list of scopes such as
  
      ::
  
          READ = 1 << 1
          WRITE = 1 << 2
          READ_WRITE = READ | WRITE
  
          SCOPES = (
              (READ, 'read'),
              (WRITE, 'write'),
              (READ_WRITE, 'read+write'),
          )
  
      is defined, we can check if a given scope is part of another:
  
      ::
  
          >>> from provider import scope
          >>> scope.check(READ, READ)
          True
          >>> scope.check(WRITE, READ)
          False
          >>> scope.check(WRITE, WRITE)
          True
          >>> scope.check(READ, WRITE)
          False
          >>> scope.check(READ, READ_WRITE)
          True
          >>> scope.check(WRITE, READ_WRITE)
          True