docs: def m2eul(r, axis3, axis2, axis1):
      """
      Factor a rotation matrix as a product of three rotations
      about specified coordinate axes.
  
      http://naif.jpl.nasa.gov/pub/naif/toolkit_docs/C/cspice/m2eul_c.html
  
      :param r: A rotation matrix to be factored
      :type r: 3x3-Element Array of floats
      :param axis3: third rotation axes.
      :type axis3: int
      :param axis2: second rotation axes.
      :type axis2: int
      :param axis1: first rotation axes.
      :type axis1: int
      :return: Third, second, and first Euler angles, in radians.
      :rtype: tuple
      """
      r = stypes.toDoubleMatrix(r)
      axis3 = ctypes.c_int(axis3)
      axis2 = ctypes.c_int(axis2)
      axis1 = ctypes.c_int(axis1)
      angle3 = ctypes.c_double()
      angle2 = ctypes.c_double()
      angle1 = ctypes.c_double()
      libspice.m2eul_c(r, axis3, axis2, axis1, ctypes.byref(angle3),
                       ctypes.byref(angle2), ctypes.byref(angle1))
      return angle3.value, angle2.value, angle1.value