static bool Prefix(MFDVehicleOptions __instance)
    {
        Traverse mfdTraverse = new Traverse(__instance);

        Debug.Log("measurements");
        MeasurementManager measurements = (MeasurementManager)mfdTraverse.Field("measurements").GetValue();

        Debug.Log("mfdPage");
        object  obj1    = mfdTraverse.Field("mfdPage").GetValue();
        MFDPage mfdPage = null;

        if (obj1 != null)
        {
            mfdPage = (MFDPage)obj1;
        }

        Debug.Log("portalPage");
        object        obj2       = mfdTraverse.Field("portalPage").GetValue();
        MFDPortalPage portalPage = null;

        if (obj2 != null)
        {
            portalPage = (MFDPortalPage)obj2;
        }

        Bananaspersecond.speedMode = (Bananaspersecond.speedMode + 1) % Bananaspersecond.units.measurementSpeedUnits.Count;
        Bananaspersecond.UpdateDisplay(measurements, mfdPage, portalPage);
        return(false);
    }
 static bool Prefix(MeasurementManager __instance, ref string __result, float speed)
 {
     __result = string.Format("{0:n0}", Bananaspersecond.ConvertedSpeed(speed));
     return(false);
 }
 static bool Prefix(MeasurementManager __instance, ref float __result, float speed)
 {
     __result = Bananaspersecond.ConvertedDistance(speed);
     return(false);
 }
 static bool Prefix(MeasurementManager __instance, ref string __result, float distance)
 {
     __result = string.Format("{0:n}{1}", Bananaspersecond.ConvertedDistance(distance), Bananaspersecond.units.measurementDistUnits[Bananaspersecond.distMode].label);
     return(false);
 }
 static bool Prefix(MeasurementManager __instance, ref float __result, float altitude)
 {
     __result = Bananaspersecond.ConvertedAltitude(altitude);
     return(false);
 }