code: def from_dict(cls, data):
          
          auth_info = AuthenticationInformation.from_dict(
              data.get("auth_info", {})
          )
          instance = cls(
              auth_info=auth_info,
              requester=data.get("requester"),
              requester_name=data.get("requester_name"),
              subject_id=data.get("subject_id"),
              subject_type=data.get("subject_type"),
              attributes=data.get("attributes"),
              user_id=data.get("user_id"),
              user_id_hash_type=data.get("hash_type"),
              name_id=data.get("name_id"),
              approved_attributes=data.get("approved_attributes"),
          )
          return instance
docs: :type data: dict[str, str]
          :rtype: satosa.internal.InternalData
          :param data: A dict representation of an InternalData object
          :return: An InternalData object