class_docstr: performs forward and inverse geodetic, or Great Circle,
  computations.  The forward computation (using the 'fwd' method)
  involves determining latitude, longitude and back azimuth of a
  terminus point given the latitude and longitude of an initial
  point, plus azimuth and distance. The inverse computation (using
  the 'inv' method) involves determining the forward and back
  azimuths and distance given the latitudes and longitudes of an
  initial and terminus point.
  
  Attributes
  ----------
  initstring: str
      The string form of the user input used to create the Geod.
  sphere: bool
      If True, it is a sphere.
  a: float
      The ellipsoid equatorial radius, or semi-major axis.
  b: float
      The ellipsoid polar radius, or semi-minor axis.
  es: float
      The 'eccentricity' of the ellipse, squared (1-b2/a2).
  f: float
      The ellipsoid 'flattening' parameter ( (a-b)/a ).
class_docstr_tok: ["performs","forward","and","inverse","geodetic",",","or","Great","Circle",",","computations",".","The","forward","computation","(","using","the","'fwd","'","method",")","involves","determining","latitude",",","longitude","and","back","azimuth","of","a","terminus","point","given","the","latitude","and","longitude","of","an","initial","point",",","plus","azimuth","and","distance",".","The","inverse","computation","(","using","the","'inv","'","method",")","involves","determining","the","forward","and","back","azimuths","and","distance","given","the","latitudes","and","longitudes","of","an","initial","and","terminus","point",".","Attributes","--","--","--","--","--","initstring",":","str","The","string","form","of","the","user","input","used","to","create","the","Geod",".","sphere",":","bool","If","True",",","it","is","a","sphere",".","a",":","float","The","ellipsoid","equatorial","radius",",","or","semi-major","axis",".","b",":","float","The","ellipsoid","polar","radius",",","or","semi-minor","axis",".","es",":","float","The","'eccentricity","'","of","the","ellipse",",","squared","(","1-b2\/a2",")",".","f",":","float","The","ellipsoid","'flattening","'","parameter","(","(","a-b",")","\/a",")","."]
code: def __repr__(self) -> str:
      # search for ellipse name
      for ellps, vals in pj_ellps.items():
          if self.a == vals["a"]:
              # self.sphere is True when self.f is zero or very close to
              # zero (0), so prevent divide by zero.
              if self.b == vals.get("b") or (
                  not self.sphere and (1.0 / self.f) == vals.get("rf")
              ):
                  return f"{self.__class__.__name__}(ellps={ellps!r})"
  
      # no ellipse name found, call super class
      return super().__repr__()
  
imports: import math
  import warnings
  from typing import Any
  from pyproj._geod import Geod
  from pyproj._geod import GeodIntermediateReturn, geodesic_version_str
  from pyproj._geod import reverse_azimuth
  from pyproj.enums import GeodIntermediateFlag
  from pyproj.exceptions import GeodError
  from pyproj.list import get_ellps_map
  from pyproj.utils import DataType, _convertback, _copytobuffer
label_desc: Use image node_id 12 for calling the Geod obj's underlying member method code with example usage: obj.__repr__() and returns: super, self, str, ellps, str