code: def session_info(self):
          
          if self.session_not_on_or_after > 0:
              nooa = self.session_not_on_or_after
          else:
              nooa = self.not_on_or_after
  
          if self.context == "AuthzQuery":
              return {"name_id": self.name_id, "came_from": self.came_from,
                      "issuer": self.issuer(), "not_on_or_after": nooa,
                      "authz_decision_info": self.authz_decision_info()}
          else:
              authn_statement = self.assertion.authn_statement[0]
              return {"ava": self.ava, "name_id": self.name_id,
                      "came_from": self.came_from, "issuer": self.issuer(),
                      "not_on_or_after": nooa, "authn_info": self.authn_info(),
                      "session_index": authn_statement.session_index}
docs: Returns a predefined set of information gleened from the
          response.
          :returns: Dictionary with information