code: def get_secret(self, filename, secret, type_=None):
          
          if filename not in self.data:
              return None
  
          if type_:
              # Optimized lookup, because we know the type of secret
              # (and therefore, its hash)
              tmp_secret = PotentialSecret(type_, filename, secret='will be overriden')
              tmp_secret.secret_hash = secret
  
              if tmp_secret in self.data[filename]:
                  return self.data[filename][tmp_secret]
  
              return None
  
          # NOTE: We can only optimize this, if we knew the type of secret.
          # Otherwise, we need to iterate through the set and find out.
          for obj in self.data[filename]:
              if obj.secret_hash == secret:
                  return obj
  
          return None
docs: Checks to see whether a secret is found in the collection.
  
          :type filename: str
          :param filename: the file to search in.
  
          :type secret: str
          :param secret: secret hash of secret to search for.
  
          :type type_: str
          :param type_: type of secret, if known.
  
          :rtype: PotentialSecret|None