docs: def latsrf(method, target, et, fixref, lonlat):
      """
      Map array of planetocentric longitude/latitude coordinate pairs 
      to surface points on a specified target body. 
   
      The surface of the target body may be represented by a triaxial 
      ellipsoid or by topographic data provided by DSK files.
      
      https://naif.jpl.nasa.gov/pub/naif/toolkit_docs/C/cspice/latsrf_c.html
      
      :param method: Computation method.
      :type method: str
      :param target: Name of target body.
      :type target: str
      :param et: Epoch in TDB seconds past J2000 TDB. 
      :type et: float
      :param fixref: Body-fixed, body-centered target body frame.
      :type fixref: str
      :param lonlat: Array of longitude/latitude coordinate pairs.
      :type lonlat: A 2xM-Element Array of floats
      :return: Array of surface points. 
      :rtype: A 3xM-Element Array of floats
      """
      method = stypes.stringToCharP(method)
      target = stypes.stringToCharP(target)
      et     = ctypes.c_double(et)
      fixref = stypes.stringToCharP(fixref)
      npts   = ctypes.c_int(len(lonlat))
      lonlat = stypes.toDoubleMatrix(lonlat)
      srfpts = stypes.emptyDoubleMatrix(3, npts.value)
      libspice.latsrf_c(method, target, et, fixref, npts, lonlat, srfpts)
      return stypes.cMatrixToNumpy(srfpts)