public static bool Prefix(PlayerAppearance __instance, ref int[] ei, int a, bool dead)
 {
     if (!GadgetNetwork.MatrixReady && GadgetNetwork.GetTimeSinceConnect() < GadgetNetwork.MatrixTimeout)
     {
         __instance.StartCoroutine(GadgetUtils.WaitAndInvoke(RPCMethod, GadgetNetwork.MatrixTimeout - GadgetNetwork.GetTimeSinceConnect(), () => GadgetNetwork.MatrixReady, __instance, ei, a, dead));
         return(false);
     }
     GadgetNetwork.ConvertIDToLocal(ItemRegistry.Singleton, ref ei[0]);
     GadgetNetwork.ConvertIDToLocal(ItemRegistry.Singleton, ref ei[1]);
     GadgetNetwork.ConvertIDToLocal(ItemRegistry.Singleton, ref ei[2]);
     GadgetNetwork.ConvertIDToLocal(ItemRegistry.Singleton, ref ei[3]);
     GadgetNetwork.ConvertIDToLocal(null /* RaceRegistry */, ref ei[4]);
     GadgetNetwork.ConvertIDToLocal(null /* UniformRegistry */, ref ei[6]);
     GadgetNetwork.ConvertIDToLocal(null /* AugmentRegistry */, ref ei[7]);
     return(true);
 }