code: def eci2aer(
      x, y, z, lat0, lon0, h0, t: datetime, *, deg: bool = True
  ) -> tuple:
      """
      takes Earth Centered Inertial x,y,z ECI coordinates of point and gives az, el, slant range from Observer
  
      Parameters
      ----------
  
      x : float
          ECI x-location [meters]
      y : float
          ECI y-location [meters]
      z : float
          ECI z-location [meters]
      lat0 : float
             Observer geodetic latitude
      lon0 : float
             Observer geodetic longitude
      h0 : float
           observer altitude above geodetic ellipsoid (meters)
      t : datetime.datetime
          Observation time
      deg : bool, optional
          true: degrees, false: radians
  
      Returns
      -------
      az : float
           azimuth to target
      el : float
           elevation to target
      srange : float
           slant range [meters]
      """
  
      try:
          xecef, yecef, zecef = eci2ecef(x, y, z, t)
      except NameError:
          raise ImportError("pip install numpy")
  
      return ecef2aer(xecef, yecef, zecef, lat0, lon0, h0, deg=deg)
  
file_path: pymap3d/src/pymap3d/aer.py
imports: from __future__ import annotations
  from datetime import datetime
  from .ecef import ecef2enu, ecef2geodetic, enu2uvw, geodetic2ecef
  from .ellipsoid import Ellipsoid
  from .enu import aer2enu, enu2aer, geodetic2enu
label_desc: Use image node_id 4 for calling a global function with example usage: eci2aer(x, y, z, lat0, lon0, h0, t) and returns: ecef2aer