Decompiled source of GexCommando v1.0.3

GexCommando.dll

Decompiled 9 hours ago
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Security;
using System.Security.Permissions;
using BepInEx;
using BepInEx.Logging;
using EnigmaticThunder.Util;
using MonoMod.RuntimeDetour;
using R2API.Utils;
using RoR2;
using RuneFoxMods;
using UnityEngine;
using UnityEngine.Rendering;

[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
[assembly: R2API.Utils.ManualNetworkRegistration]
[assembly: EnigmaticThunder.Util.ManualNetworkRegistration]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: AssemblyVersion("0.0.0.0")]
[module: UnverifiableCode]
namespace EnigmaticThunder.Util
{
	[AttributeUsage(AttributeTargets.Assembly)]
	public class ManualNetworkRegistrationAttribute : Attribute
	{
	}
}
namespace R2API.Utils
{
	[AttributeUsage(AttributeTargets.Assembly)]
	public class ManualNetworkRegistrationAttribute : Attribute
	{
	}
}
namespace GexCommando
{
	[BepInPlugin("com.TailLover.GexCommando", "GexCommando", "1.0.1")]
	public class GexCommandoPlugin : BaseUnityPlugin
	{
		private class Modification
		{
			public string prefabpath;

			public string bodyname;

			public string parentname;

			public GameObject prefab;

			public bool affectsbasemodel;

			public int boneIndex;

			public int boneCount;

			public GameObject instance;

			public GameObject inst_armature;

			public DynamicBone inst_dynamicBone;

			public List<DynamicBoneCollider> inst_DB_colliders = new List<DynamicBoneCollider>();

			public DynamicBoneData dynamicBoneData;

			public Modification(string PrefabPath, string ParentName, string BodyName, bool AffectsBaseModel, AssetBundle assetBundle)
			{
				bodyname = BodyName;
				prefabpath = PrefabPath;
				parentname = ParentName;
				affectsbasemodel = AffectsBaseModel;
				prefab = assetBundle.LoadAsset<GameObject>(prefabpath);
				if ((Object)(object)prefab == (Object)null)
				{
					Debug.Log((object)("Asset at " + PrefabPath + " was not loaded"));
				}
			}
		}

		private class AppliedModifications
		{
			public Stack<Modification> BaseModelModifications = new Stack<Modification>();

			public List<Modification> OtherModifications = new List<Modification>();
		}

		private class DynamicBoneData
		{
			public string m_Root;

			public float m_Damping;

			public AnimationCurve m_DampingDistrib;

			public float m_Elasticity;

			public AnimationCurve m_ElasticityDistrib;

			public float m_Stiffness;

			public AnimationCurve m_StiffnessDistrib;

			public float m_Inert;

			public AnimationCurve m_InertDistrib;

			public float m_Radius;

			public AnimationCurve m_RadiusDistrib;

			public float m_EndLength;

			public Vector3 m_EndOffset;

			public Vector3 m_Gravity;

			public Vector3 m_Force;

			public List<DynamicBoneColliderData> m_Colliders;

			public List<string> m_Exclusions;

			public FreezeAxis m_FreezeAxis;

			public DynamicBoneData(string root, float damping, AnimationCurve damping_dist, float elasticity, AnimationCurve elasticity_dist, float stiffness, AnimationCurve stiffness_dist, float inert, AnimationCurve inert_dist, float radius, AnimationCurve radius_dist, float end_length, Vector3 end_offset, Vector3 gravity, Vector3 force, List<DynamicBoneColliderData> colliders, List<string> exclusions, FreezeAxis freeze_axis)
			{
				//IL_0066: Unknown result type (might be due to invalid IL or missing references)
				//IL_0068: Unknown result type (might be due to invalid IL or missing references)
				//IL_006e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0070: Unknown result type (might be due to invalid IL or missing references)
				//IL_0076: Unknown result type (might be due to invalid IL or missing references)
				//IL_0078: Unknown result type (might be due to invalid IL or missing references)
				//IL_008e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0090: Unknown result type (might be due to invalid IL or missing references)
				m_Root = root;
				m_Damping = damping;
				m_DampingDistrib = damping_dist;
				m_Elasticity = elasticity;
				m_ElasticityDistrib = elasticity_dist;
				m_Stiffness = stiffness;
				m_StiffnessDistrib = stiffness_dist;
				m_Inert = inert;
				m_InertDistrib = inert_dist;
				m_Radius = radius;
				m_RadiusDistrib = radius_dist;
				m_EndLength = end_length;
				m_EndOffset = end_offset;
				m_Gravity = gravity;
				m_Force = force;
				m_Colliders = colliders;
				m_Exclusions = exclusions;
				m_FreezeAxis = freeze_axis;
			}
		}

		private class DynamicBoneColliderData
		{
			public string m_parent_name;

			public Direction m_Direction;

			public Vector3 m_Center;

			public Bound m_Bound;

			public float m_Radius;

			public float m_Height;

			public DynamicBoneColliderData(string parent_name, Direction direction, Vector3 Center, Bound bound, float radius, float heaight)
			{
				//IL_0010: Unknown result type (might be due to invalid IL or missing references)
				//IL_0011: Unknown result type (might be due to invalid IL or missing references)
				//IL_0017: Unknown result type (might be due to invalid IL or missing references)
				//IL_0018: Unknown result type (might be due to invalid IL or missing references)
				//IL_001e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0020: Unknown result type (might be due to invalid IL or missing references)
				m_parent_name = parent_name;
				m_Direction = direction;
				m_Center = Center;
				m_Bound = bound;
				m_Radius = radius;
				m_Height = heaight;
			}
		}

		private static AssetBundle assetBundle;

		private static readonly List<Material> materialsWithRoRShader = new List<Material>();

		private Modification GexTail;

		private static GameObject LastModelObject;

		private static List<Modification> ModificationList = new List<Modification>();

		private static Dictionary<GameObject, AppliedModifications> ModifiedObjects = new Dictionary<GameObject, AppliedModifications>();

		internal static GexCommandoPlugin Instance { get; private set; }

		internal static ManualLogSource InstanceLogger { get; private set; }

		public static SkinDef SkinDef { get; private set; }

		private void Start()
		{
			//IL_0070: Unknown result type (might be due to invalid IL or missing references)
			Instance = this;
			BeforeAwake();
			using (Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("GexCommando.taillovergexcommando"))
			{
				assetBundle = AssetBundle.LoadFromStream(stream);
			}
			((ResourceAvailability)(ref BodyCatalog.availability)).CallWhenAvailable((Action)BodyCatalogInit);
			new Hook((MethodBase)typeof(Language).GetMethod("LoadStrings"), (Delegate)new Action<Action<Language>, Language>(LanguageLoadStrings)).Apply();
			ReplaceShaders();
			AfterAwake();
		}

		private void BeforeAwake()
		{
			//IL_0028: Unknown result type (might be due to invalid IL or missing references)
			Instance = this;
			new Hook((MethodBase)typeof(SkinDef).GetMethod("Apply"), (Delegate)new Action<Action<SkinDef, GameObject>, SkinDef, GameObject>(SkinDefApply)).Apply();
		}

		private void AfterAwake()
		{
			//IL_005e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0072: Unknown result type (might be due to invalid IL or missing references)
			//IL_0086: Unknown result type (might be due to invalid IL or missing references)
			GexTail = new Modification("Tail1.prefab", "pelvis", "CommandoBody", AffectsBaseModel: true, assetBundle);
			GexTail.dynamicBoneData = new DynamicBoneData("Tail1", 0.2f, null, 0.05f, null, 0.7f, null, 0.5f, null, 0.15f, null, 0f, new Vector3(0f, 0f, 0f), new Vector3(0f, -0.002f, 0f), new Vector3(0f, -0.005f, 0f), new List<DynamicBoneColliderData>(), new List<string>(), (FreezeAxis)0);
			ModificationList.Add(GexTail);
		}

		private static void ReplaceShaders()
		{
			materialsWithRoRShader.Add(LoadMaterialWithReplacedShader("Assets/Resources/Gex/matGex.mat", "Hopoo Games/Deferred/Standard"));
		}

		private static Material LoadMaterialWithReplacedShader(string materialPath, string shaderName)
		{
			Material val = assetBundle.LoadAsset<Material>(materialPath);
			val.shader = Shader.Find(shaderName);
			return val;
		}

		private static void LanguageLoadStrings(Action<Language> orig, Language self)
		{
			orig(self);
			string text = self.name.ToLower();
			if (text == "en")
			{
				self.SetStringByToken("TAILLOVER_SKIN_GEXCOMMANDOSKIN_NAME", "Gex");
			}
			else
			{
				self.SetStringByToken("TAILLOVER_SKIN_GEXCOMMANDOSKIN_NAME", "Gex");
			}
		}

		private static void Nothing(Action<SkinDef> orig, SkinDef self)
		{
		}

		private static void BodyCatalogInit()
		{
			//IL_0023: Unknown result type (might be due to invalid IL or missing references)
			//IL_0029: Expected O, but got Unknown
			Hook val = new Hook((MethodBase)typeof(SkinDef).GetMethod("Awake", BindingFlags.Instance | BindingFlags.NonPublic), (Delegate)new Action<Action<SkinDef>, SkinDef>(Nothing));
			val.Apply();
			AddCommandoBodyGexCommandoSkinSkin();
			val.Undo();
		}

		private static void CommandoBodyGexCommandoSkinSkinAdded(SkinDef skinDef, GameObject bodyPrefab)
		{
			SkinDef = skinDef;
		}

		private static void AddCommandoBodyGexCommandoSkinSkin()
		{
			//IL_00b0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00cf: Unknown result type (might be due to invalid IL or missing references)
			//IL_0109: Unknown result type (might be due to invalid IL or missing references)
			//IL_010b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0121: Unknown result type (might be due to invalid IL or missing references)
			//IL_016a: Unknown result type (might be due to invalid IL or missing references)
			//IL_016c: Unknown result type (might be due to invalid IL or missing references)
			//IL_01c1: Unknown result type (might be due to invalid IL or missing references)
			string text = "CommandoBody";
			string text2 = "GexCommandoSkin";
			try
			{
				GameObject val = BodyCatalog.FindBodyPrefab(text);
				ModelLocator component = val.GetComponent<ModelLocator>();
				GameObject gameObject = ((Component)component.modelTransform).gameObject;
				ModelSkinController component2 = gameObject.GetComponent<ModelSkinController>();
				Renderer[] componentsInChildren = gameObject.GetComponentsInChildren<Renderer>(true);
				SkinDef val2 = ScriptableObject.CreateInstance<SkinDef>();
				val2.icon = assetBundle.LoadAsset<Sprite>("Assets\\SkinMods\\GexCommando\\Icons\\GexCommandoSkinIcon.png");
				((Object)val2).name = text2;
				val2.nameToken = "TAILLOVER_SKIN_GEXCOMMANDOSKIN_NAME";
				val2.rootObject = gameObject;
				val2.baseSkins = (SkinDef[])(object)new SkinDef[1] { component2.skins[0] };
				val2.unlockableDef = null;
				val2.gameObjectActivations = Array.Empty<GameObjectActivation>();
				val2.rendererInfos = (RendererInfo[])(object)new RendererInfo[1]
				{
					new RendererInfo
					{
						defaultMaterial = assetBundle.LoadAsset<Material>("Assets/Resources/Gex/matGex.mat"),
						defaultShadowCastingMode = (ShadowCastingMode)0,
						ignoreOverlays = false,
						renderer = componentsInChildren.First((Renderer r) => ((Object)r).name == "CommandoMesh")
					}
				};
				val2.meshReplacements = (MeshReplacement[])(object)new MeshReplacement[1]
				{
					new MeshReplacement
					{
						mesh = assetBundle.LoadAsset<Mesh>("Assets\\SkinMods\\GexCommando\\Meshes\\ShapeIndexedFaceS.001.mesh"),
						renderer = componentsInChildren.First((Renderer r) => ((Object)r).name == "CommandoMesh")
					}
				};
				val2.minionSkinReplacements = Array.Empty<MinionSkinReplacement>();
				val2.projectileGhostReplacements = Array.Empty<ProjectileGhostReplacement>();
				Array.Resize(ref component2.skins, component2.skins.Length + 1);
				component2.skins[component2.skins.Length - 1] = val2;
				BodyCatalog.skins[BodyCatalog.FindBodyIndex(val)] = component2.skins;
				CommandoBodyGexCommandoSkinSkinAdded(val2, val);
			}
			catch (Exception ex)
			{
				InstanceLogger.LogWarning((object)("Failed to add \"" + text2 + "\" skin to \"" + text + "\""));
				InstanceLogger.LogError((object)ex);
			}
		}

		private static void SkinDefApply(Action<SkinDef, GameObject> orig, SkinDef self, GameObject modelObject)
		{
			orig(self, modelObject);
			RemoveInvalidModelObjects();
			ModifiedObjects.TryGetValue(modelObject, out var value);
			try
			{
				if ((Object)(object)self != (Object)(object)SkinDef)
				{
					if (value != null)
					{
						ClearSkinModifications(LastModelObject, value);
					}
				}
				else if (value == null)
				{
					AppliedModifications appliedModifications = new AppliedModifications();
					ModifiedObjects.Add(modelObject, appliedModifications);
					ApplySkinModifications(modelObject, appliedModifications);
				}
			}
			catch (Exception ex)
			{
				InstanceLogger.LogWarning((object)"An error occured while adding accessories to a skin");
				InstanceLogger.LogError((object)ex);
			}
		}

		private static void RemoveInvalidModelObjects()
		{
			foreach (GameObject item in ModifiedObjects.Keys.Where((GameObject el) => !Object.op_Implicit((Object)(object)el)).ToList())
			{
				ModifiedObjects.Remove(item);
			}
		}

		private static void ClearSkinModifications(GameObject modelObject, AppliedModifications modifications)
		{
			while (modifications.BaseModelModifications.Count != 0)
			{
				Modification modification = modifications.BaseModelModifications.Pop();
				clearModification(modification, modelObject, modifications);
			}
			while (modifications.OtherModifications.Count != 0)
			{
				clearModification(modifications.OtherModifications[0], modelObject, modifications);
			}
			ModifiedObjects.Remove(modelObject);
		}

		private static void ApplySkinModifications(GameObject modelObject, AppliedModifications modifications)
		{
			CharacterModel component = modelObject.GetComponent<CharacterModel>();
			LastModelObject = modelObject;
			foreach (Modification modification in ModificationList)
			{
				ApplyModification(modelObject, component, modification, modifications);
			}
		}

		private static void ApplyModification(GameObject modelObject, CharacterModel characterModel, Modification modification, AppliedModifications modifications)
		{
			//IL_01b5: Unknown result type (might be due to invalid IL or missing references)
			//IL_01ba: Unknown result type (might be due to invalid IL or missing references)
			//IL_01c3: Unknown result type (might be due to invalid IL or missing references)
			//IL_01c8: Unknown result type (might be due to invalid IL or missing references)
			//IL_01d1: Unknown result type (might be due to invalid IL or missing references)
			//IL_01d6: Unknown result type (might be due to invalid IL or missing references)
			//IL_031b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0320: Unknown result type (might be due to invalid IL or missing references)
			//IL_032d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0332: Unknown result type (might be due to invalid IL or missing references)
			//IL_033f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0344: Unknown result type (might be due to invalid IL or missing references)
			//IL_03d5: Unknown result type (might be due to invalid IL or missing references)
			//IL_03da: Unknown result type (might be due to invalid IL or missing references)
			//IL_0439: Unknown result type (might be due to invalid IL or missing references)
			//IL_045b: Unknown result type (might be due to invalid IL or missing references)
			//IL_046e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0470: Unknown result type (might be due to invalid IL or missing references)
			string bodyname = modification.bodyname;
			string parentname = modification.parentname;
			Transform val = modelObject.transform.Find(ChildHelper.GetPath(bodyname, parentname));
			GameObject val2;
			if (modification.affectsbasemodel)
			{
				val2 = Object.Instantiate<GameObject>(modification.prefab, val, false);
				((Object)val2).name = Utils.RemoveCloneNaming(((Object)val2).name);
				modification.instance = val2;
				modification.inst_armature = val2;
				SkinnedMeshRenderer[] baseSkinRenderers = GetBaseSkinRenderers(modelObject);
				List<Transform> list = baseSkinRenderers[0].bones.ToList();
				int num = FindBoneIndex2(val, list);
				Transform[] array = BoneArrayBuilder(modification.instance.transform);
				list.InsertRange(num, array);
				modification.boneIndex = num;
				modification.boneCount = array.Length;
				SkinnedMeshRenderer[] array2 = baseSkinRenderers;
				foreach (SkinnedMeshRenderer val3 in array2)
				{
					val3.bones = list.ToArray();
				}
				modifications.BaseModelModifications.Push(modification);
			}
			else
			{
				val2 = Object.Instantiate<GameObject>(modification.prefab, modelObject.transform, false);
				((Object)val2).name = Utils.RemoveCloneNaming(((Object)val2).name);
				modification.instance = val2;
				Transform armature = GetArmature(val2);
				((Component)armature).transform.SetParent(val, false);
				modification.inst_armature = ((Component)armature).gameObject;
			}
			modification.instance = val2;
			DynamicBone val4 = (modification.inst_dynamicBone = modification.instance.AddComponent<DynamicBone>());
			List<DynamicBoneCollider> list2 = new List<DynamicBoneCollider>();
			foreach (DynamicBoneColliderData collider in modification.dynamicBoneData.m_Colliders)
			{
				Transform val5 = modelObject.transform.Find(ChildHelper.GetPath(bodyname, collider.m_parent_name));
				DynamicBoneCollider val6 = ((Component)val5).gameObject.AddComponent<DynamicBoneCollider>();
				val6.m_Direction = collider.m_Direction;
				val6.m_Center = collider.m_Center;
				val6.m_Bound = collider.m_Bound;
				val6.m_Radius = collider.m_Radius;
				val6.m_Height = collider.m_Height;
				list2.Add(val6);
			}
			modification.inst_DB_colliders = list2;
			Transform root = (val4.m_Root = Utils.FindChildInTree(modification.inst_armature.transform, modification.dynamicBoneData.m_Root));
			val4.m_Damping = modification.dynamicBoneData.m_Damping;
			val4.m_DampingDistrib = modification.dynamicBoneData.m_DampingDistrib;
			val4.m_Elasticity = modification.dynamicBoneData.m_Elasticity;
			val4.m_ElasticityDistrib = modification.dynamicBoneData.m_ElasticityDistrib;
			val4.m_Stiffness = modification.dynamicBoneData.m_Stiffness;
			val4.m_StiffnessDistrib = modification.dynamicBoneData.m_StiffnessDistrib;
			val4.m_Inert = modification.dynamicBoneData.m_Inert;
			val4.m_InertDistrib = modification.dynamicBoneData.m_InertDistrib;
			val4.m_Radius = modification.dynamicBoneData.m_Radius;
			val4.m_RadiusDistrib = modification.dynamicBoneData.m_RadiusDistrib;
			val4.m_EndLength = modification.dynamicBoneData.m_EndLength;
			val4.m_EndOffset = modification.dynamicBoneData.m_EndOffset;
			val4.m_Gravity = modification.dynamicBoneData.m_Gravity;
			val4.m_Force = modification.dynamicBoneData.m_Force;
			val4.m_Colliders = list2;
			val4.m_Exclusions = new List<Transform>();
			foreach (string exclusion in modification.dynamicBoneData.m_Exclusions)
			{
				Transform val7 = Utils.FindChildInTree(root, exclusion);
				if ((Object)(object)val7 != (Object)null)
				{
					val4.m_Exclusions.Add(val7);
				}
				else
				{
					Debug.Log((object)"Tried to exclude a transform that could not be found");
				}
			}
			val4.m_FreezeAxis = modification.dynamicBoneData.m_FreezeAxis;
			SkinnedMeshRenderer[] componentsInChildren = val2.GetComponentsInChildren<SkinnedMeshRenderer>(true);
			Array.Resize(ref characterModel.baseRendererInfos, characterModel.baseRendererInfos.Length + componentsInChildren.Length);
			if (componentsInChildren.Length != 0)
			{
				int num2 = componentsInChildren.Length;
				SkinnedMeshRenderer[] array3 = componentsInChildren;
				foreach (SkinnedMeshRenderer val8 in array3)
				{
					characterModel.baseRendererInfos[characterModel.baseRendererInfos.Length - num2] = new RendererInfo
					{
						renderer = (Renderer)(object)componentsInChildren[^num2],
						ignoreOverlays = false,
						defaultShadowCastingMode = (ShadowCastingMode)1,
						defaultMaterial = ((Renderer)val8).sharedMaterial
					};
					num2--;
				}
			}
			modifications.OtherModifications.Add(modification);
		}

		private static void clearModification(Modification modification, GameObject modelObject, AppliedModifications modifications)
		{
			foreach (DynamicBoneCollider inst_DB_collider in modification.inst_DB_colliders)
			{
				Object.Destroy((Object)(object)inst_DB_collider);
			}
			if (modification.affectsbasemodel)
			{
				SkinnedMeshRenderer[] baseSkinRenderers = GetBaseSkinRenderers(modelObject);
				List<Transform> list = baseSkinRenderers[0].bones.ToList();
				list.RemoveRange(modification.boneIndex, modification.boneCount);
				SkinnedMeshRenderer[] array = baseSkinRenderers;
				foreach (SkinnedMeshRenderer val in array)
				{
					val.bones = list.ToArray();
				}
			}
			Object.Destroy((Object)(object)modifications.OtherModifications[0].inst_dynamicBone);
			Object.Destroy((Object)(object)modifications.OtherModifications[0].inst_armature);
			Object.Destroy((Object)(object)modifications.OtherModifications[0].instance);
			if (!modifications.OtherModifications.Remove(modification))
			{
				InstanceLogger.LogError((object)"Skin Modification was not removed");
			}
		}

		private static int FindBoneIndex(Transform targetBone, List<Transform> BoneList)
		{
			if (((Object)targetBone.parent).name.Contains("Armature"))
			{
				return BoneList.Count;
			}
			Transform parent = targetBone.parent;
			int siblingIndex = targetBone.GetSiblingIndex();
			int childCount = parent.childCount;
			if (siblingIndex == childCount - 1)
			{
				return FindBoneIndex(targetBone.parent, BoneList);
			}
			Transform nextBone = targetBone.parent.GetChild(siblingIndex + 1);
			int num = BoneList.FindIndex((Transform x) => (Object)(object)x == (Object)(object)nextBone);
			if (num == -1)
			{
				FindBoneIndex(nextBone, BoneList);
			}
			return num;
		}

		private static int FindBoneIndex2(Transform targetBone, List<Transform> BoneList)
		{
			Dictionary<Transform, bool> dictionary = new Dictionary<Transform, bool>();
			int num = 99999;
			for (int i = 0; i < BoneList.Count; i++)
			{
				Transform val = BoneList[i];
				if (((Object)val).name == "ROOT")
				{
					dictionary.Add(val, value: false);
					continue;
				}
				if ((Object)(object)val == (Object)(object)targetBone)
				{
					num = i;
				}
				Transform parent = ((Component)val).transform.parent;
				if ((Object)(object)parent == (Object)(object)targetBone)
				{
					dictionary.Add(val, value: true);
				}
				else
				{
					if (!dictionary.ContainsKey(parent))
					{
						continue;
					}
					if (dictionary[parent])
					{
						dictionary.Add(val, value: true);
						continue;
					}
					dictionary.Add(val, value: false);
					if (i > num)
					{
						return i;
					}
				}
			}
			return BoneList.Count - 1;
		}

		private static SkinnedMeshRenderer[] GetBaseSkinRenderers(GameObject modelObject)
		{
			SkinnedMeshRenderer[] componentsInChildren = modelObject.GetComponentsInChildren<SkinnedMeshRenderer>(true);
			List<SkinnedMeshRenderer> list = new List<SkinnedMeshRenderer>();
			SkinnedMeshRenderer[] array = componentsInChildren;
			foreach (SkinnedMeshRenderer val in array)
			{
				if ((Object)(object)((Component)val).transform.parent == (Object)(object)modelObject.transform)
				{
					list.Add(val);
				}
			}
			return list.ToArray();
		}

		private static Transform[] BoneArrayBuilder(Transform NewBoneRoot)
		{
			List<Transform> list = new List<Transform>();
			BoneArrayBuilderHelper(NewBoneRoot, list);
			return list.ToArray();
		}

		private static void BoneArrayBuilderHelper(Transform parent, List<Transform> list)
		{
			if (!((Object)parent).name.EndsWith("_end"))
			{
				list.Add(parent);
			}
			for (int i = 0; i < parent.childCount; i++)
			{
				BoneArrayBuilderHelper(parent.GetChild(i), list);
			}
		}

		private static Transform GetArmature(GameObject obj)
		{
			return GetArmatureHelper(obj);
		}

		private static Transform GetArmatureHelper(GameObject obj)
		{
			if (((Object)obj).name.ToLower().Contains("armature"))
			{
				return obj.transform;
			}
			for (int i = 0; i < obj.transform.childCount; i++)
			{
				Transform armatureHelper = GetArmatureHelper(((Component)obj.transform.GetChild(i)).gameObject);
				if (Object.op_Implicit((Object)(object)armatureHelper))
				{
					return armatureHelper;
				}
			}
			return null;
		}
	}
}
namespace RuneFoxMods
{
	internal class ChildHelper
	{
		private static Dictionary<string, Dictionary<string, string>> PrefabDictionary = new Dictionary<string, Dictionary<string, string>>
		{
			{
				"CommandoBody",
				new Dictionary<string, string>
				{
					{ "CommandoArmature", "CommandoArmature" },
					{ "ROOT", "CommandoArmature/ROOT" },
					{ "base", "CommandoArmature/ROOT/base" },
					{ "IKArmTarget.l", "CommandoArmature/ROOT/base/IKArmTarget.l" },
					{ "IKArmPole.l", "CommandoArmature/ROOT/base/IKArmTarget.l/IKArmPole.l" },
					{ "IKArmTarget.r", "CommandoArmature/ROOT/base/IKArmTarget.r" },
					{ "IKArmPole.r", "CommandoArmature/ROOT/base/IKArmTarget.r/IKArmPole.r" },
					{ "pelvis", "CommandoArmature/ROOT/base/pelvis" },
					{ "thigh.l", "CommandoArmature/ROOT/base/pelvis/thigh.l" },
					{ "calf.l", "CommandoArmature/ROOT/base/pelvis/thigh.l/calf.l" },
					{ "foot.l", "CommandoArmature/ROOT/base/pelvis/thigh.l/calf.l/foot.l" },
					{ "toe.l", "CommandoArmature/ROOT/base/pelvis/thigh.l/calf.l/foot.l/toe.l" },
					{ "thigh.r", "CommandoArmature/ROOT/base/pelvis/thigh.r" },
					{ "calf.r", "CommandoArmature/ROOT/base/pelvis/thigh.r/calf.r" },
					{ "foot.r", "CommandoArmature/ROOT/base/pelvis/thigh.r/calf.r/foot.r" },
					{ "toe.r", "CommandoArmature/ROOT/base/pelvis/thigh.r/calf.r/foot.r/toe.r" },
					{ "stomach", "CommandoArmature/ROOT/base/stomach" },
					{ "chest", "CommandoArmature/ROOT/base/stomach/chest" },
					{ "head", "CommandoArmature/ROOT/base/stomach/chest/head" },
					{ "upper_arm.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l" },
					{ "lower_arm.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l" },
					{ "hand.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l" },
					{ "finger1.1.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger1.1.l" },
					{ "finger1.2.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger1.1.l/finger1.2.l" },
					{ "finger1.3.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger1.1.l/finger1.2.l/finger1.3.l" },
					{ "finger1IKBender.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger1IKBender.l" },
					{ "finger1IKTarget.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger1IKBender.l/finger1IKTarget.l" },
					{ "finger2.1.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger2.1.l" },
					{ "finger2.2.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger2.1.l/finger2.2.l" },
					{ "finger2.3.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger2.1.l/finger2.2.l/finger2.3.l" },
					{ "finger2IKBender.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger2IKBender.l" },
					{ "finger2IKTarget.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger2IKBender.l/finger2IKTarget.l" },
					{ "finger3.1.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger3.1.l" },
					{ "finger3.2.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger3.1.l/finger3.2.l" },
					{ "finger3.3.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger3.1.l/finger3.2.l/finger3.3.l" },
					{ "finger3IKBender.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger3IKBender.l" },
					{ "finger3IKTarget.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger3IKBender.l/finger3IKTarget.l" },
					{ "finger4.1.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger4.1.l" },
					{ "finger4.2.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger4.1.l/finger4.2.l" },
					{ "finger4.3.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger4.1.l/finger4.2.l/finger4.3.l" },
					{ "finger4IKBender.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger4IKBender.l" },
					{ "finger4IKTarget.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger4IKBender.l/finger4IKTarget.l" },
					{ "gun.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/gun.l" },
					{ "thumb.1.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/thumb.1.l" },
					{ "thumb.2.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/thumb.1.l/thumb.2.l" },
					{ "thumbIKBender.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/thumbIKBender.l" },
					{ "thumbIKTarget.l", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/thumbIKBender.l/thumbIKTarget.l" },
					{ "upper_arm.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r" },
					{ "lower_arm.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r" },
					{ "hand.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r" },
					{ "finger1.1.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger1.1.r" },
					{ "finger1.2.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger1.1.r/finger1.2.r" },
					{ "finger1.3.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger1.1.r/finger1.2.r/finger1.3.r" },
					{ "finger1IKBender.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger1IKBender.r" },
					{ "finger1IKTarget.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger1IKBender.r/finger1IKTarget.r" },
					{ "finger2.1.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger2.1.r" },
					{ "finger2.2.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger2.1.r/finger2.2.r" },
					{ "finger2.3.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger2.1.r/finger2.2.r/finger2.3.r" },
					{ "finger2IKBender.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger2IKBender.r" },
					{ "finger2IKTarget.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger2IKBender.r/finger2IKTarget.r" },
					{ "finger3.1.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger3.1.r" },
					{ "finger3.2.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger3.1.r/finger3.2.r" },
					{ "finger3.3.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger3.1.r/finger3.2.r/finger3.3.r" },
					{ "finger3IKBender.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger3IKBender.r" },
					{ "finger3IKTarget.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger3IKBender.r/finger3IKTarget.r" },
					{ "finger4.1.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger4.1.r" },
					{ "finger4.2.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger4.1.r/finger4.2.r" },
					{ "finger4.3.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger4.1.r/finger4.2.r/finger4.3.r" },
					{ "finger4IKBender.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger4IKBender.r" },
					{ "finger4IKTarget.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger4IKBender.r/finger4IKTarget.r" },
					{ "gun.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/gun.r" },
					{ "thumb.1.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/thumb.1.r" },
					{ "thumb.2.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/thumb.1.r/thumb.2.r" },
					{ "thumbIKBender.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/thumbIKBender.r" },
					{ "thumbIKTarget.r", "CommandoArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/thumbIKBender.r/thumbIKTarget.r" },
					{ "LeftJet", "CommandoArmature/ROOT/base/stomach/chest/LeftJet" },
					{ "RightJet", "CommandoArmature/ROOT/base/stomach/chest/RightJet" },
					{ "IKLegTarget.l", "CommandoArmature/ROOT/IKLegTarget.l" },
					{ "IKLegPole.l", "CommandoArmature/ROOT/IKLegTarget.l/IKLegPole.l" },
					{ "IKLegTarget.r", "CommandoArmature/ROOT/IKLegTarget.r" },
					{ "IKLegPole.r", "CommandoArmature/ROOT/IKLegTarget.r/IKLegPole.r" },
					{ "MuzzleCenter", "CommandoArmature/MuzzleCenter" }
				}
			},
			{
				"EngiBody",
				new Dictionary<string, string>
				{
					{ "EngiArmature", "EngiArmature" },
					{ "cannonIKTarget.l", "EngiArmature/cannonIKTarget.l" },
					{ "cannonIKTarget.r", "EngiArmature/cannonIKTarget.r" },
					{ "ROOT", "EngiArmature/ROOT" },
					{ "base", "EngiArmature/ROOT/base" },
					{ "IKArmTarget.l", "EngiArmature/ROOT/base/IKArmTarget.l" },
					{ "IKArmPole.l", "EngiArmature/ROOT/base/IKArmTarget.l/IKArmPole.l" },
					{ "IKArmTarget.r", "EngiArmature/ROOT/base/IKArmTarget.r" },
					{ "IKArmPole.r", "EngiArmature/ROOT/base/IKArmTarget.r/IKArmPole.r" },
					{ "pelvis", "EngiArmature/ROOT/base/pelvis" },
					{ "thigh.l", "EngiArmature/ROOT/base/pelvis/thigh.l" },
					{ "calf.l", "EngiArmature/ROOT/base/pelvis/thigh.l/calf.l" },
					{ "foot.l", "EngiArmature/ROOT/base/pelvis/thigh.l/calf.l/foot.l" },
					{ "toe.l", "EngiArmature/ROOT/base/pelvis/thigh.l/calf.l/foot.l/toe.l" },
					{ "thigh.r", "EngiArmature/ROOT/base/pelvis/thigh.r" },
					{ "calf.r", "EngiArmature/ROOT/base/pelvis/thigh.r/calf.r" },
					{ "foot.r", "EngiArmature/ROOT/base/pelvis/thigh.r/calf.r/foot.r" },
					{ "toe.r", "EngiArmature/ROOT/base/pelvis/thigh.r/calf.r/foot.r/toe.r" },
					{ "stomach", "EngiArmature/ROOT/base/stomach" },
					{ "chest", "EngiArmature/ROOT/base/stomach/chest" },
					{ "cannonJoint1.l", "EngiArmature/ROOT/base/stomach/chest/cannonJoint1.l" },
					{ "cannonJoint2.l", "EngiArmature/ROOT/base/stomach/chest/cannonJoint1.l/cannonJoint2.l" },
					{ "cannonHead.l", "EngiArmature/ROOT/base/stomach/chest/cannonJoint1.l/cannonJoint2.l/cannonHead.l" },
					{ "cannonJoint1.r", "EngiArmature/ROOT/base/stomach/chest/cannonJoint1.r" },
					{ "cannonJoint2.r", "EngiArmature/ROOT/base/stomach/chest/cannonJoint1.r/cannonJoint2.r" },
					{ "cannonHead.r", "EngiArmature/ROOT/base/stomach/chest/cannonJoint1.r/cannonJoint2.r/cannonHead.r" },
					{ "EngiJet", "EngiArmature/ROOT/base/stomach/chest/cannonJoint1.r/cannonJoint2.r/cannonHead.r/EngiJet" },
					{ "Distortion", "EngiArmature/ROOT/base/stomach/chest/cannonJoint1.r/cannonJoint2.r/cannonHead.r/EngiJet/Distortion" },
					{ "Jet", "EngiArmature/ROOT/base/stomach/chest/cannonJoint1.r/cannonJoint2.r/cannonHead.r/EngiJet/Jet" },
					{ "MuzzleRight", "EngiArmature/ROOT/base/stomach/chest/cannonJoint1.r/cannonJoint2.r/cannonHead.r/MuzzleRight" },
					{ "upper_arm.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l" },
					{ "lower_arm.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l" },
					{ "hand.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l" },
					{ "finger1.1.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger1.1.l" },
					{ "finger1.2.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger1.1.l/finger1.2.l" },
					{ "finger1.3.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger1.1.l/finger1.2.l/finger1.3.l" },
					{ "finger1IKBender.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger1IKBender.l" },
					{ "finger1IKTarget.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger1IKBender.l/finger1IKTarget.l" },
					{ "finger2.1.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger2.1.l" },
					{ "finger2.2.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger2.1.l/finger2.2.l" },
					{ "finger2.3.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger2.1.l/finger2.2.l/finger2.3.l" },
					{ "finger2IKBender.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger2IKBender.l" },
					{ "finger2IKTarget.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger2IKBender.l/finger2IKTarget.l" },
					{ "finger3.1.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger3.1.l" },
					{ "finger3.2.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger3.1.l/finger3.2.l" },
					{ "finger3.3.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger3.1.l/finger3.2.l/finger3.3.l" },
					{ "finger3IKBender.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger3IKBender.l" },
					{ "finger3IKTarget.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger3IKBender.l/finger3IKTarget.l" },
					{ "finger4.1.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger4.1.l" },
					{ "finger4.2.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger4.1.l/finger4.2.l" },
					{ "finger4.3.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger4.1.l/finger4.2.l/finger4.3.l" },
					{ "finger4IKBender.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger4IKBender.l" },
					{ "finger4IKTarget.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger4IKBender.l/finger4IKTarget.l" },
					{ "thumb.1.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/thumb.1.l" },
					{ "thumb.2.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/thumb.1.l/thumb.2.l" },
					{ "thumbIKBender.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/thumbIKBender.l" },
					{ "thumbIKTarget.l", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/thumbIKBender.l/thumbIKTarget.l" },
					{ "WristDisplay", "EngiArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/WristDisplay" },
					{ "upper_arm.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r" },
					{ "lower_arm.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r" },
					{ "hand.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r" },
					{ "finger1.1.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger1.1.r" },
					{ "finger1.2.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger1.1.r/finger1.2.r" },
					{ "finger1.3.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger1.1.r/finger1.2.r/finger1.3.r" },
					{ "finger1IKBender.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger1IKBender.r" },
					{ "finger1IKTarget.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger1IKBender.r/finger1IKTarget.r" },
					{ "finger2.1.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger2.1.r" },
					{ "finger2.2.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger2.1.r/finger2.2.r" },
					{ "finger2.3.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger2.1.r/finger2.2.r/finger2.3.r" },
					{ "finger2IKBender.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger2IKBender.r" },
					{ "finger2IKTarget.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger2IKBender.r/finger2IKTarget.r" },
					{ "finger3.1.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger3.1.r" },
					{ "finger3.2.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger3.1.r/finger3.2.r" },
					{ "finger3.3.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger3.1.r/finger3.2.r/finger3.3.r" },
					{ "finger3IKBender.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger3IKBender.r" },
					{ "finger3IKTarget.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger3IKBender.r/finger3IKTarget.r" },
					{ "finger4.1.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger4.1.r" },
					{ "finger4.2.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger4.1.r/finger4.2.r" },
					{ "finger4.3.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger4.1.r/finger4.2.r/finger4.3.r" },
					{ "finger4IKBender.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger4IKBender.r" },
					{ "finger4IKTarget.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger4IKBender.r/finger4IKTarget.r" },
					{ "thumb.1.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/thumb.1.r" },
					{ "thumb.2.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/thumb.1.r/thumb.2.r" },
					{ "thumbIKBender.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/thumbIKBender.r" },
					{ "thumbIKTarget.r", "EngiArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/thumbIKBender.r/thumbIKTarget.r" },
					{ "MuzzleCenter", "EngiArmature/ROOT/base/stomach/chest/MuzzleCenter" },
					{ "HeadCenter", "EngiArmature/ROOT/base/stomach/chest/HeadCenter" },
					{ "IKLegTarget.l", "EngiArmature/ROOT/IKLegTarget.l" },
					{ "IKLegPole.l", "EngiArmature/ROOT/IKLegTarget.l/IKLegPole.l" },
					{ "IKLegTarget.r", "EngiArmature/ROOT/IKLegTarget.r" },
					{ "IKLegPole.r", "EngiArmature/ROOT/IKLegTarget.r/IKLegPole.r" }
				}
			},
			{
				"HuntressBody",
				new Dictionary<string, string>
				{
					{ "HuntressArmature", "HuntressArmature" },
					{ "HandGripControl.l", "HuntressArmature/HandGripControl.l" },
					{ "HandGripControl.r", "HuntressArmature/HandGripControl.r" },
					{ "IKArmTarget.r", "HuntressArmature/IKArmTarget.r" },
					{ "IKArmPole.r", "HuntressArmature/IKArmTarget.r/IKArmPole.r" },
					{ "ROOT", "HuntressArmature/ROOT" },
					{ "base", "HuntressArmature/ROOT/base" },
					{ "BowRoot", "HuntressArmature/ROOT/base/BowRoot" },
					{ "BowBase", "HuntressArmature/ROOT/base/BowRoot/BowBase" },
					{ "BowHinge1.l", "HuntressArmature/ROOT/base/BowRoot/BowBase/BowHinge1.l" },
					{ "BowHinge2.l", "HuntressArmature/ROOT/base/BowRoot/BowBase/BowHinge1.l/BowHinge2.l" },
					{ "BowString.L", "HuntressArmature/ROOT/base/BowRoot/BowBase/BowHinge1.l/BowHinge2.l/BowString.L" },
					{ "BowHinge1.r", "HuntressArmature/ROOT/base/BowRoot/BowBase/BowHinge1.r" },
					{ "BowHinge2.r", "HuntressArmature/ROOT/base/BowRoot/BowBase/BowHinge1.r/BowHinge2.r" },
					{ "BowString.R", "HuntressArmature/ROOT/base/BowRoot/BowBase/BowHinge1.r/BowHinge2.r/BowString.R" },
					{ "HelperBowBase", "HuntressArmature/ROOT/base/BowRoot/BowBase/HelperBowBase" },
					{ "Muzzle", "HuntressArmature/ROOT/base/BowRoot/BowBase/Muzzle" },
					{ "BowStringIKTarget", "HuntressArmature/ROOT/base/BowRoot/BowStringIKTarget" },
					{ "HelperBowString", "HuntressArmature/ROOT/base/BowRoot/BowStringIKTarget/HelperBowString" },
					{ "ArrowDisplay", "HuntressArmature/ROOT/base/BowRoot/BowStringIKTarget/ArrowDisplay" },
					{ "Quad 1", "HuntressArmature/ROOT/base/BowRoot/BowStringIKTarget/ArrowDisplay/Quad 1" },
					{ "Quad 2", "HuntressArmature/ROOT/base/BowRoot/BowStringIKTarget/ArrowDisplay/Quad 2" },
					{ "Flash", "HuntressArmature/ROOT/base/BowRoot/BowStringIKTarget/ArrowDisplay/Flash" },
					{ "ClusterArrowDisplay", "HuntressArmature/ROOT/base/BowRoot/BowStringIKTarget/ClusterArrowDisplay" },
					{ "Quad Cluster 1", "HuntressArmature/ROOT/base/BowRoot/BowStringIKTarget/ClusterArrowDisplay/Quad Cluster 1" },
					{ "Quad Cluster 2", "HuntressArmature/ROOT/base/BowRoot/BowStringIKTarget/ClusterArrowDisplay/Quad Cluster 2" },
					{ "Quad Cluster 3", "HuntressArmature/ROOT/base/BowRoot/BowStringIKTarget/ClusterArrowDisplay/Quad Cluster 3" },
					{ "Quad Cluster 4", "HuntressArmature/ROOT/base/BowRoot/BowStringIKTarget/ClusterArrowDisplay/Quad Cluster 4" },
					{ "Quad Cluster 5", "HuntressArmature/ROOT/base/BowRoot/BowStringIKTarget/ClusterArrowDisplay/Quad Cluster 5" },
					{ "IKArmTarget.l", "HuntressArmature/ROOT/base/BowRoot/IKArmTarget.l" },
					{ "IKArmPole.l", "HuntressArmature/ROOT/base/BowRoot/IKArmTarget.l/IKArmPole.l" },
					{ "pelvis", "HuntressArmature/ROOT/base/pelvis" },
					{ "thigh.l", "HuntressArmature/ROOT/base/pelvis/thigh.l" },
					{ "calf.l", "HuntressArmature/ROOT/base/pelvis/thigh.l/calf.l" },
					{ "foot.l", "HuntressArmature/ROOT/base/pelvis/thigh.l/calf.l/foot.l" },
					{ "toe.l", "HuntressArmature/ROOT/base/pelvis/thigh.l/calf.l/foot.l/toe.l" },
					{ "thigh.r", "HuntressArmature/ROOT/base/pelvis/thigh.r" },
					{ "calf.r", "HuntressArmature/ROOT/base/pelvis/thigh.r/calf.r" },
					{ "foot.r", "HuntressArmature/ROOT/base/pelvis/thigh.r/calf.r/foot.r" },
					{ "toe.r", "HuntressArmature/ROOT/base/pelvis/thigh.r/calf.r/foot.r/toe.r" },
					{ "stomach", "HuntressArmature/ROOT/base/stomach" },
					{ "chest", "HuntressArmature/ROOT/base/stomach/chest" },
					{ "ClippingBlocker", "HuntressArmature/ROOT/base/stomach/chest/ClippingBlocker" },
					{ "head", "HuntressArmature/ROOT/base/stomach/chest/head" },
					{ "HuntressScarfArmature Detatched", "HuntressArmature/ROOT/base/stomach/chest/HuntressScarfArmature Detatched" },
					{ "ScarfBase Detatched", "HuntressArmature/ROOT/base/stomach/chest/HuntressScarfArmature Detatched/ScarfBase Detatched" },
					{ "Scarf", "HuntressArmature/ROOT/base/stomach/chest/HuntressScarfArmature Detatched/ScarfBase Detatched/Scarf" },
					{ "Scarf.004", "HuntressArmature/ROOT/base/stomach/chest/HuntressScarfArmature Detatched/ScarfBase Detatched/Scarf/Scarf.004" },
					{ "Scarf.002", "HuntressArmature/ROOT/base/stomach/chest/HuntressScarfArmature Detatched/ScarfBase Detatched/Scarf/Scarf.004/Scarf.002" },
					{ "Scarf.006", "HuntressArmature/ROOT/base/stomach/chest/HuntressScarfArmature Detatched/ScarfBase Detatched/Scarf/Scarf.004/Scarf.002/Scarf.006" },
					{ "Scarf.001", "HuntressArmature/ROOT/base/stomach/chest/HuntressScarfArmature Detatched/ScarfBase Detatched/Scarf/Scarf.004/Scarf.002/Scarf.006/Scarf.001" },
					{ "Scarf.005", "HuntressArmature/ROOT/base/stomach/chest/HuntressScarfArmature Detatched/ScarfBase Detatched/Scarf/Scarf.004/Scarf.002/Scarf.006/Scarf.001/Scarf.005" },
					{ "Scarf.003", "HuntressArmature/ROOT/base/stomach/chest/HuntressScarfArmature Detatched/ScarfBase Detatched/Scarf/Scarf.004/Scarf.002/Scarf.006/Scarf.001/Scarf.005/Scarf.003" },
					{ "Scarf.007", "HuntressArmature/ROOT/base/stomach/chest/HuntressScarfArmature Detatched/ScarfBase Detatched/Scarf/Scarf.004/Scarf.002/Scarf.006/Scarf.001/Scarf.005/Scarf.003/Scarf.007" },
					{ "upper_arm.l", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.l" },
					{ "lower_arm.l", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l" },
					{ "hand.l", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l" },
					{ "finger1.1.l", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger1.1.l" },
					{ "finger1.2.l", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger1.1.l/finger1.2.l" },
					{ "finger1.3.l", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger1.1.l/finger1.2.l/finger1.3.l" },
					{ "finger2.1.l", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger2.1.l" },
					{ "finger2.2.l", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger2.1.l/finger2.2.l" },
					{ "finger2.3.l", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger2.1.l/finger2.2.l/finger2.3.l" },
					{ "finger3.1.l", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger3.1.l" },
					{ "finger3.2.l", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger3.1.l/finger3.2.l" },
					{ "finger3.3.l", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger3.1.l/finger3.2.l/finger3.3.l" },
					{ "finger4.1.l", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger4.1.l" },
					{ "finger4.2.l", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger4.1.l/finger4.2.l" },
					{ "finger4.3.l", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/finger4.1.l/finger4.2.l/finger4.3.l" },
					{ "thumb.1.l", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/thumb.1.l" },
					{ "thumb.2.l", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/hand.l/thumb.1.l/thumb.2.l" },
					{ "upper_arm.r", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.r" },
					{ "lower_arm.r", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r" },
					{ "hand.r", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r" },
					{ "finger1.1.r", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger1.1.r" },
					{ "finger1.2.r", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger1.1.r/finger1.2.r" },
					{ "finger1.3.r", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger1.1.r/finger1.2.r/finger1.3.r" },
					{ "finger2.1.r", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger2.1.r" },
					{ "finger2.2.r", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger2.1.r/finger2.2.r" },
					{ "finger2.3.r", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger2.1.r/finger2.2.r/finger2.3.r" },
					{ "finger3.1.r", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger3.1.r" },
					{ "finger3.2.r", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger3.1.r/finger3.2.r" },
					{ "finger3.3.r", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger3.1.r/finger3.2.r/finger3.3.r" },
					{ "finger4.1.r", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger4.1.r" },
					{ "finger4.2.r", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger4.1.r/finger4.2.r" },
					{ "finger4.3.r", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger4.1.r/finger4.2.r/finger4.3.r" },
					{ "thumb.1.r", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/thumb.1.r" },
					{ "thumb.2.r", "HuntressArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/thumb.1.r/thumb.2.r" },
					{ "IKLegTarget.l", "HuntressArmature/ROOT/IKLegTarget.l" },
					{ "IKLegPole.l", "HuntressArmature/ROOT/IKLegTarget.l/IKLegPole.l" },
					{ "IKLegTarget.r", "HuntressArmature/ROOT/IKLegTarget.r" },
					{ "IKLegPole.r", "HuntressArmature/ROOT/IKLegTarget.r/IKLegPole.r" }
				}
			},
			{
				"MageBody",
				new Dictionary<string, string>
				{
					{ "MageArmature", "MageArmature" },
					{ "HeelRoll.l", "MageArmature/HeelRoll.l" },
					{ "IKLegPole.l", "MageArmature/HeelRoll.l/IKLegPole.l" },
					{ "ToeRoll.l", "MageArmature/HeelRoll.l/ToeRoll.l" },
					{ "FootRoll.l", "MageArmature/HeelRoll.l/ToeRoll.l/FootRoll.l" },
					{ "IKLegTarget.l", "MageArmature/HeelRoll.l/ToeRoll.l/FootRoll.l/IKLegTarget.l" },
					{ "IKFoot.l", "MageArmature/HeelRoll.l/ToeRoll.l/IKFoot.l" },
					{ "ToeControl.l", "MageArmature/HeelRoll.l/ToeRoll.l/ToeControl.l" },
					{ "IKToe.l", "MageArmature/HeelRoll.l/ToeRoll.l/ToeControl.l/IKToe.l" },
					{ "HeelRoll.r", "MageArmature/HeelRoll.r" },
					{ "IKLegPole.r", "MageArmature/HeelRoll.r/IKLegPole.r" },
					{ "ToeRoll.l.002", "MageArmature/HeelRoll.r/ToeRoll.l.002" },
					{ "FootRoll.r", "MageArmature/HeelRoll.r/ToeRoll.l.002/FootRoll.r" },
					{ "IKLegTarget.r", "MageArmature/HeelRoll.r/ToeRoll.l.002/FootRoll.r/IKLegTarget.r" },
					{ "IKFoot.r", "MageArmature/HeelRoll.r/ToeRoll.l.002/IKFoot.r" },
					{ "ToeControl.r", "MageArmature/HeelRoll.r/ToeRoll.l.002/ToeControl.r" },
					{ "IKToe.r", "MageArmature/HeelRoll.r/ToeRoll.l.002/ToeControl.r/IKToe.r" },
					{ "ROOT", "MageArmature/ROOT" },
					{ "base", "MageArmature/ROOT/base" },
					{ "IKArmTarget.l", "MageArmature/ROOT/base/IKArmTarget.l" },
					{ "IKArmPole.l", "MageArmature/ROOT/base/IKArmTarget.l/IKArmPole.l" },
					{ "IKArmTarget.r", "MageArmature/ROOT/base/IKArmTarget.r" },
					{ "IKArmPole.r", "MageArmature/ROOT/base/IKArmTarget.r/IKArmPole.r" },
					{ "pelvis", "MageArmature/ROOT/base/pelvis" },
					{ "ClothA.1.l", "MageArmature/ROOT/base/pelvis/ClothA.1.l" },
					{ "ClothA.2.l", "MageArmature/ROOT/base/pelvis/ClothA.1.l/ClothA.2.l" },
					{ "ClothA.3.l", "MageArmature/ROOT/base/pelvis/ClothA.1.l/ClothA.2.l/ClothA.3.l" },
					{ "ClothA.4.l", "MageArmature/ROOT/base/pelvis/ClothA.1.l/ClothA.2.l/ClothA.3.l/ClothA.4.l" },
					{ "ClothA.1.r", "MageArmature/ROOT/base/pelvis/ClothA.1.r" },
					{ "ClothA.2.r", "MageArmature/ROOT/base/pelvis/ClothA.1.r/ClothA.2.r" },
					{ "ClothA.3.r", "MageArmature/ROOT/base/pelvis/ClothA.1.r/ClothA.2.r/ClothA.3.r" },
					{ "ClothA.4.r", "MageArmature/ROOT/base/pelvis/ClothA.1.r/ClothA.2.r/ClothA.3.r/ClothA.4.r" },
					{ "ClothB.1.l", "MageArmature/ROOT/base/pelvis/ClothB.1.l" },
					{ "ClothB.2.l", "MageArmature/ROOT/base/pelvis/ClothB.1.l/ClothB.2.l" },
					{ "ClothB.3.l", "MageArmature/ROOT/base/pelvis/ClothB.1.l/ClothB.2.l/ClothB.3.l" },
					{ "ClothB.4.l", "MageArmature/ROOT/base/pelvis/ClothB.1.l/ClothB.2.l/ClothB.3.l/ClothB.4.l" },
					{ "ClothB.1.r", "MageArmature/ROOT/base/pelvis/ClothB.1.r" },
					{ "ClothB.2.r", "MageArmature/ROOT/base/pelvis/ClothB.1.r/ClothB.2.r" },
					{ "ClothB.3.r", "MageArmature/ROOT/base/pelvis/ClothB.1.r/ClothB.2.r/ClothB.3.r" },
					{ "ClothB.4.r", "MageArmature/ROOT/base/pelvis/ClothB.1.r/ClothB.2.r/ClothB.3.r/ClothB.4.r" },
					{ "ClothC.1.l", "MageArmature/ROOT/base/pelvis/ClothC.1.l" },
					{ "ClothC.2.l", "MageArmature/ROOT/base/pelvis/ClothC.1.l/ClothC.2.l" },
					{ "ClothC.3.l", "MageArmature/ROOT/base/pelvis/ClothC.1.l/ClothC.2.l/ClothC.3.l" },
					{ "ClothC.4.l", "MageArmature/ROOT/base/pelvis/ClothC.1.l/ClothC.2.l/ClothC.3.l/ClothC.4.l" },
					{ "ClothC.1.r", "MageArmature/ROOT/base/pelvis/ClothC.1.r" },
					{ "ClothC.2.r", "MageArmature/ROOT/base/pelvis/ClothC.1.r/ClothC.2.r" },
					{ "ClothC.3.r", "MageArmature/ROOT/base/pelvis/ClothC.1.r/ClothC.2.r/ClothC.3.r" },
					{ "ClothC.4.r", "MageArmature/ROOT/base/pelvis/ClothC.1.r/ClothC.2.r/ClothC.3.r/ClothC.4.r" },
					{ "ClothD.1", "MageArmature/ROOT/base/pelvis/ClothD.1" },
					{ "ClothD.2", "MageArmature/ROOT/base/pelvis/ClothD.1/ClothD.2" },
					{ "ClothD.3", "MageArmature/ROOT/base/pelvis/ClothD.1/ClothD.2/ClothD.3" },
					{ "ClothD.4", "MageArmature/ROOT/base/pelvis/ClothD.1/ClothD.2/ClothD.3/ClothD.4" },
					{ "ClothD.5", "MageArmature/ROOT/base/pelvis/ClothD.1/ClothD.2/ClothD.3/ClothD.4/ClothD.5" },
					{ "ClothD.6", "MageArmature/ROOT/base/pelvis/ClothD.1/ClothD.2/ClothD.3/ClothD.4/ClothD.5/ClothD.6" },
					{ "thigh.l", "MageArmature/ROOT/base/pelvis/thigh.l" },
					{ "calf.l", "MageArmature/ROOT/base/pelvis/thigh.l/calf.l" },
					{ "foot.l", "MageArmature/ROOT/base/pelvis/thigh.l/calf.l/foot.l" },
					{ "toe.l", "MageArmature/ROOT/base/pelvis/thigh.l/calf.l/foot.l/toe.l" },
					{ "thigh.r", "MageArmature/ROOT/base/pelvis/thigh.r" },
					{ "calf.r", "MageArmature/ROOT/base/pelvis/thigh.r/calf.r" },
					{ "foot.r", "MageArmature/ROOT/base/pelvis/thigh.r/calf.r/foot.r" },
					{ "toe.r", "MageArmature/ROOT/base/pelvis/thigh.r/calf.r/foot.r/toe.r" },
					{ "stomach", "MageArmature/ROOT/base/stomach" },
					{ "chest", "MageArmature/ROOT/base/stomach/chest" },
					{ "clavicle.l", "MageArmature/ROOT/base/stomach/chest/clavicle.l" },
					{ "upper_arm.l", "MageArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l" },
					{ "lower_arm.l", "MageArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l" },
					{ "hand.l", "MageArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l" },
					{ "finger1.1.l", "MageArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger1.1.l" },
					{ "finger1.2.l", "MageArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger1.1.l/finger1.2.l" },
					{ "finger1.3.l", "MageArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger1.1.l/finger1.2.l/finger1.3.l" },
					{ "finger2.1.l", "MageArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger2.1.l" },
					{ "finger2.2.l", "MageArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger2.1.l/finger2.2.l" },
					{ "finger2.3.l", "MageArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger2.1.l/finger2.2.l/finger2.3.l" },
					{ "finger3.1.l", "MageArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger3.1.l" },
					{ "finger3.2.l", "MageArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger3.1.l/finger3.2.l" },
					{ "finger3.3.l", "MageArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger3.1.l/finger3.2.l/finger3.3.l" },
					{ "finger4.1.l", "MageArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger4.1.l" },
					{ "finger4.2.l", "MageArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger4.1.l/finger4.2.l" },
					{ "finger4.3.l", "MageArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger4.1.l/finger4.2.l/finger4.3.l" },
					{ "GripControl.l", "MageArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/GripControl.l" },
					{ "finger1IKTarget.l", "MageArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/GripControl.l/finger1IKTarget.l" },
					{ "finger2IKTarget.l", "MageArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/GripControl.l/finger2IKTarget.l" },
					{ "finger3IKTarget.l", "MageArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/GripControl.l/finger3IKTarget.l" },
					{ "finger4IKTarget.l", "MageArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/GripControl.l/finger4IKTarget.l" },
					{ "thumbIKTarget.l", "MageArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/GripControl.l/thumbIKTarget.l" },
					{ "thumb.1.l", "MageArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/thumb.1.l" },
					{ "thumb.2.l", "MageArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/thumb.1.l/thumb.2.l" },
					{ "MuzzleLeft", "MageArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/MuzzleLeft" },
					{ "clavicle.r", "MageArmature/ROOT/base/stomach/chest/clavicle.r" },
					{ "upper_arm.r", "MageArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r" },
					{ "lower_arm.r", "MageArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r" },
					{ "hand.r", "MageArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r" },
					{ "finger1.1.r", "MageArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger1.1.r" },
					{ "finger1.2.r", "MageArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger1.1.r/finger1.2.r" },
					{ "finger1.3.r", "MageArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger1.1.r/finger1.2.r/finger1.3.r" },
					{ "finger2.1.r", "MageArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger2.1.r" },
					{ "finger2.2.r", "MageArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger2.1.r/finger2.2.r" },
					{ "finger2.3.r", "MageArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger2.1.r/finger2.2.r/finger2.3.r" },
					{ "finger3.1.r", "MageArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger3.1.r" },
					{ "finger3.2.r", "MageArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger3.1.r/finger3.2.r" },
					{ "finger3.3.r", "MageArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger3.1.r/finger3.2.r/finger3.3.r" },
					{ "finger4.1.r", "MageArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger4.1.r" },
					{ "finger4.2.r", "MageArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger4.1.r/finger4.2.r" },
					{ "finger4.3.r", "MageArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger4.1.r/finger4.2.r/finger4.3.r" },
					{ "GripControl.r", "MageArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/GripControl.r" },
					{ "finger1IKTarget.r", "MageArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/GripControl.r/finger1IKTarget.r" },
					{ "finger2IKTarget.r", "MageArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/GripControl.r/finger2IKTarget.r" },
					{ "finger3IKTarget.r", "MageArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/GripControl.r/finger3IKTarget.r" },
					{ "finger4IKTarget.r", "MageArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/GripControl.r/finger4IKTarget.r" },
					{ "thumbIKTarget.r", "MageArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/GripControl.r/thumbIKTarget.r" },
					{ "thumb.1.r", "MageArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/thumb.1.r" },
					{ "thumb.2.r", "MageArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/thumb.1.r/thumb.2.r" },
					{ "MuzzleRight", "MageArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/MuzzleRight" },
					{ "neck", "MageArmature/ROOT/base/stomach/chest/neck" },
					{ "head", "MageArmature/ROOT/base/stomach/chest/neck/head" },
					{ "Jets Right", "MageArmature/ROOT/base/stomach/chest/Jets Right" },
					{ "Jets Left", "MageArmature/ROOT/base/stomach/chest/Jets Left" },
					{ "JetsOn", "MageArmature/ROOT/base/stomach/chest/JetsOn" },
					{ "Fire", "MageArmature/ROOT/base/stomach/chest/JetsOn/Fire" },
					{ "JetsL", "MageArmature/ROOT/base/stomach/chest/JetsOn/JetsL" },
					{ "JetsR", "MageArmature/ROOT/base/stomach/chest/JetsOn/JetsR" },
					{ "FireRing", "MageArmature/ROOT/base/stomach/chest/JetsOn/FireRing" }
				}
			},
			{
				"MercBody",
				new Dictionary<string, string>
				{
					{ "MercArmature", "MercArmature" },
					{ "HeelRoll.l", "MercArmature/HeelRoll.l" },
					{ "IKLegPole.l", "MercArmature/HeelRoll.l/IKLegPole.l" },
					{ "ToeRoll.l", "MercArmature/HeelRoll.l/ToeRoll.l" },
					{ "FootRoll.l", "MercArmature/HeelRoll.l/ToeRoll.l/FootRoll.l" },
					{ "IKLegTarget.l", "MercArmature/HeelRoll.l/ToeRoll.l/FootRoll.l/IKLegTarget.l" },
					{ "IKFoot.l", "MercArmature/HeelRoll.l/ToeRoll.l/IKFoot.l" },
					{ "ToeControl.l", "MercArmature/HeelRoll.l/ToeRoll.l/ToeControl.l" },
					{ "IKToe.l", "MercArmature/HeelRoll.l/ToeRoll.l/ToeControl.l/IKToe.l" },
					{ "HeelRoll.r", "MercArmature/HeelRoll.r" },
					{ "IKLegPole.r", "MercArmature/HeelRoll.r/IKLegPole.r" },
					{ "ToeRoll.r", "MercArmature/HeelRoll.r/ToeRoll.r" },
					{ "FootRoll.r", "MercArmature/HeelRoll.r/ToeRoll.r/FootRoll.r" },
					{ "IKLegTarget.r", "MercArmature/HeelRoll.r/ToeRoll.r/FootRoll.r/IKLegTarget.r" },
					{ "IKFoot.r", "MercArmature/HeelRoll.r/ToeRoll.r/IKFoot.r" },
					{ "ToeControl.r", "MercArmature/HeelRoll.r/ToeRoll.r/ToeControl.r" },
					{ "IKToe.r", "MercArmature/HeelRoll.r/ToeRoll.r/ToeControl.r/IKToe.r" },
					{ "ROOT", "MercArmature/ROOT" },
					{ "base", "MercArmature/ROOT/base" },
					{ "IKArmTarget.l", "MercArmature/ROOT/base/IKArmTarget.l" },
					{ "IKArmPole.l", "MercArmature/ROOT/base/IKArmTarget.l/IKArmPole.l" },
					{ "IKArmTarget.r", "MercArmature/ROOT/base/IKArmTarget.r" },
					{ "IKArmPole.r", "MercArmature/ROOT/base/IKArmTarget.r/IKArmPole.r" },
					{ "pelvis", "MercArmature/ROOT/base/pelvis" },
					{ "thigh.l", "MercArmature/ROOT/base/pelvis/thigh.l" },
					{ "calf.l", "MercArmature/ROOT/base/pelvis/thigh.l/calf.l" },
					{ "foot.l", "MercArmature/ROOT/base/pelvis/thigh.l/calf.l/foot.l" },
					{ "toe.l", "MercArmature/ROOT/base/pelvis/thigh.l/calf.l/foot.l/toe.l" },
					{ "thigh.r", "MercArmature/ROOT/base/pelvis/thigh.r" },
					{ "calf.r", "MercArmature/ROOT/base/pelvis/thigh.r/calf.r" },
					{ "foot.r", "MercArmature/ROOT/base/pelvis/thigh.r/calf.r/foot.r" },
					{ "toe.r", "MercArmature/ROOT/base/pelvis/thigh.r/calf.r/foot.r/toe.r" },
					{ "stomach", "MercArmature/ROOT/base/stomach" },
					{ "chest", "MercArmature/ROOT/base/stomach/chest" },
					{ "clavicle.l", "MercArmature/ROOT/base/stomach/chest/clavicle.l" },
					{ "upper_arm.l", "MercArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l" },
					{ "lower_arm.l", "MercArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l" },
					{ "hand.l", "MercArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l" },
					{ "finger1.1.l", "MercArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger1.1.l" },
					{ "finger1.2.l", "MercArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger1.1.l/finger1.2.l" },
					{ "finger1.3.l", "MercArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger1.1.l/finger1.2.l/finger1.3.l" },
					{ "finger2.1.l", "MercArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger2.1.l" },
					{ "finger2.2.l", "MercArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger2.1.l/finger2.2.l" },
					{ "finger2.3.l", "MercArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger2.1.l/finger2.2.l/finger2.3.l" },
					{ "finger3.1.l", "MercArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger3.1.l" },
					{ "finger3.2.l", "MercArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger3.1.l/finger3.2.l" },
					{ "finger3.3.l", "MercArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger3.1.l/finger3.2.l/finger3.3.l" },
					{ "finger4.1.l", "MercArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger4.1.l" },
					{ "finger4.2.l", "MercArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger4.1.l/finger4.2.l" },
					{ "finger4.3.l", "MercArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger4.1.l/finger4.2.l/finger4.3.l" },
					{ "GripControl.l", "MercArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/GripControl.l" },
					{ "finger1IKTarget.l", "MercArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/GripControl.l/finger1IKTarget.l" },
					{ "finger2IKTarget.l", "MercArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/GripControl.l/finger2IKTarget.l" },
					{ "finger3IKTarget.l", "MercArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/GripControl.l/finger3IKTarget.l" },
					{ "finger4IKTarget.l", "MercArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/GripControl.l/finger4IKTarget.l" },
					{ "thumbIKTarget.l", "MercArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/GripControl.l/thumbIKTarget.l" },
					{ "thumb.1.l", "MercArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/thumb.1.l" },
					{ "thumb.2.l", "MercArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/thumb.1.l/thumb.2.l" },
					{ "clavicle.r", "MercArmature/ROOT/base/stomach/chest/clavicle.r" },
					{ "upper_arm.r", "MercArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r" },
					{ "lower_arm.r", "MercArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r" },
					{ "hand.r", "MercArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r" },
					{ "finger1.1.r", "MercArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger1.1.r" },
					{ "finger1.2.r", "MercArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger1.1.r/finger1.2.r" },
					{ "finger1.3.r", "MercArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger1.1.r/finger1.2.r/finger1.3.r" },
					{ "finger2.1.r", "MercArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger2.1.r" },
					{ "finger2.2.r", "MercArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger2.1.r/finger2.2.r" },
					{ "finger2.3.r", "MercArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger2.1.r/finger2.2.r/finger2.3.r" },
					{ "finger3.1.r", "MercArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger3.1.r" },
					{ "finger3.2.r", "MercArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger3.1.r/finger3.2.r" },
					{ "finger3.3.r", "MercArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger3.1.r/finger3.2.r/finger3.3.r" },
					{ "finger4.1.r", "MercArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger4.1.r" },
					{ "finger4.2.r", "MercArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger4.1.r/finger4.2.r" },
					{ "finger4.3.r", "MercArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger4.1.r/finger4.2.r/finger4.3.r" },
					{ "GripControl.r", "MercArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/GripControl.r" },
					{ "finger1IKTarget.r", "MercArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/GripControl.r/finger1IKTarget.r" },
					{ "finger2IKTarget.r", "MercArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/GripControl.r/finger2IKTarget.r" },
					{ "finger3IKTarget.r", "MercArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/GripControl.r/finger3IKTarget.r" },
					{ "finger4IKTarget.r", "MercArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/GripControl.r/finger4IKTarget.r" },
					{ "thumbIKTarget.r", "MercArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/GripControl.r/thumbIKTarget.r" },
					{ "thumb.1.r", "MercArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/thumb.1.r" },
					{ "thumb.2.r", "MercArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/thumb.1.r/thumb.2.r" },
					{ "neck", "MercArmature/ROOT/base/stomach/chest/neck" },
					{ "head", "MercArmature/ROOT/base/stomach/chest/neck/head" },
					{ "JiggleHair", "MercArmature/ROOT/base/stomach/chest/neck/head/JiggleHair" },
					{ "HeadCenter", "MercArmature/ROOT/base/stomach/chest/neck/head/HeadCenter" },
					{ "SwingCenter", "MercArmature/ROOT/base/stomach/chest/SwingCenter" },
					{ "SwordBase", "MercArmature/ROOT/base/stomach/chest/SwingCenter/SwordBase" },
					{ "Hitbox Sword", "MercArmature/ROOT/base/stomach/chest/SwingCenter/SwordBase/Hitbox Sword" },
					{ "Hitbox Sword Large", "MercArmature/ROOT/base/stomach/chest/SwingCenter/SwordBase/Hitbox Sword Large" },
					{ "SwordHandPlacement.l", "MercArmature/ROOT/base/stomach/chest/SwingCenter/SwordBase/SwordHandPlacement.l" },
					{ "SwordHandPlacement.r", "MercArmature/ROOT/base/stomach/chest/SwingCenter/SwordBase/SwordHandPlacement.r" },
					{ "SwordLength.1", "MercArmature/ROOT/base/stomach/chest/SwingCenter/SwordBase/SwordLength.1" },
					{ "SwordLength.2", "MercArmature/ROOT/base/stomach/chest/SwingCenter/SwordBase/SwordLength.1/SwordLength.2" },
					{ "SwordLength.3", "MercArmature/ROOT/base/stomach/chest/SwingCenter/SwordBase/SwordLength.1/SwordLength.2/SwordLength.3" },
					{ "SwordLength.4", "MercArmature/ROOT/base/stomach/chest/SwingCenter/SwordBase/SwordLength.1/SwordLength.2/SwordLength.3/SwordLength.4" },
					{ "SwordRotateControl", "MercArmature/ROOT/base/stomach/chest/SwingCenter/SwordBase/SwordRotateControl" },
					{ "PreDashEffect", "MercArmature/ROOT/base/stomach/chest/PreDashEffect" },
					{ "ContractingEnergy", "MercArmature/ROOT/base/stomach/chest/PreDashEffect/ContractingEnergy" },
					{ "FireEmission", "MercArmature/ROOT/base/stomach/chest/PreDashEffect/FireEmission" },
					{ "BrightRing", "MercArmature/ROOT/base/stomach/chest/PreDashEffect/BrightRing" }
				}
			},
			{
				"ToolbotBody",
				new Dictionary<string, string>
				{
					{ "ToolbotArmature", "ToolbotArmature" },
					{ "ROOT", "ToolbotArmature/ROOT" },
					{ "base", "ToolbotArmature/ROOT/base" },
					{ "hip", "ToolbotArmature/ROOT/base/hip" },
					{ "JiggleHandle.Hip", "ToolbotArmature/ROOT/base/hip/JiggleHandle.Hip" },
					{ "thigh.l", "ToolbotArmature/ROOT/base/hip/thigh.l" },
					{ "calf.l", "ToolbotArmature/ROOT/base/hip/thigh.l/calf.l" },
					{ "JiggleHandle.Leg.l", "ToolbotArmature/ROOT/base/hip/thigh.l/calf.l/JiggleHandle.Leg.l" },
					{ "mainWheel.l", "ToolbotArmature/ROOT/base/hip/thigh.l/calf.l/mainWheel.l" },
					{ "extraCalf.l", "ToolbotArmature/ROOT/base/hip/thigh.l/extraCalf.l" },
					{ "extraWheel.l", "ToolbotArmature/ROOT/base/hip/thigh.l/extraCalf.l/extraWheel.l" },
					{ "thigh.r", "ToolbotArmature/ROOT/base/hip/thigh.r" },
					{ "calf.r", "ToolbotArmature/ROOT/base/hip/thigh.r/calf.r" },
					{ "JiggleHandle.Leg.r", "ToolbotArmature/ROOT/base/hip/thigh.r/calf.r/JiggleHandle.Leg.r" },
					{ "mainWheel.r", "ToolbotArmature/ROOT/base/hip/thigh.r/calf.r/mainWheel.r" },
					{ "GenericFootstepDust", "ToolbotArmature/ROOT/base/hip/thigh.r/calf.r/mainWheel.r/GenericFootstepDust" },
					{ "extraCalf.r", "ToolbotArmature/ROOT/base/hip/thigh.r/extraCalf.r" },
					{ "extraWheel.r", "ToolbotArmature/ROOT/base/hip/thigh.r/extraCalf.r/extraWheel.r" },
					{ "IKArmTarget.l", "ToolbotArmature/ROOT/base/IKArmTarget.l" },
					{ "IKArmPole.l", "ToolbotArmature/ROOT/base/IKArmTarget.l/IKArmPole.l" },
					{ "IKArmTarget.r", "ToolbotArmature/ROOT/base/IKArmTarget.r" },
					{ "IKArmPole.r", "ToolbotArmature/ROOT/base/IKArmTarget.r/IKArmPole.r" },
					{ "IKHeadTarget", "ToolbotArmature/ROOT/base/IKHeadTarget" },
					{ "IKHeadPole", "ToolbotArmature/ROOT/base/IKHeadTarget/IKHeadPole" },
					{ "stomach", "ToolbotArmature/ROOT/base/stomach" },
					{ "chest", "ToolbotArmature/ROOT/base/stomach/chest" },
					{ "JiggleDrawer", "ToolbotArmature/ROOT/base/stomach/chest/JiggleDrawer" },
					{ "neckSpin", "ToolbotArmature/ROOT/base/stomach/chest/neckSpin" },
					{ "neckJoint.1", "ToolbotArmature/ROOT/base/stomach/chest/neckSpin/neckJoint.1" },
					{ "neckJoint.2", "ToolbotArmature/ROOT/base/stomach/chest/neckSpin/neckJoint.1/neckJoint.2" },
					{ "head", "ToolbotArmature/ROOT/base/stomach/chest/neckSpin/neckJoint.1/neckJoint.2/head" },
					{ "JiggleHandle.Head", "ToolbotArmature/ROOT/base/stomach/chest/neckSpin/neckJoint.1/neckJoint.2/head/JiggleHandle.Head" },
					{ "JiggleHat", "ToolbotArmature/ROOT/base/stomach/chest/neckSpin/neckJoint.1/neckJoint.2/head/JiggleHat" },
					{ "HeadCenter", "ToolbotArmature/ROOT/base/stomach/chest/neckSpin/neckJoint.1/neckJoint.2/head/HeadCenter" },
					{ "upper_arm.l", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.l" },
					{ "JiggleHandle.ToolArm", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.l/JiggleHandle.ToolArm" },
					{ "lower_arm.l", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l" },
					{ "toolbase", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/toolbase" },
					{ "grenade.base", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/toolbase/grenade.base" },
					{ "nailgun.base", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/toolbase/nailgun.base" },
					{ "JiggleHandle.Nailgun", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/toolbase/nailgun.base/JiggleHandle.Nailgun" },
					{ "nailgun.barrel", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/toolbase/nailgun.base/nailgun.barrel" },
					{ "nailgun.spinner", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/toolbase/nailgun.base/nailgun.spinner" },
					{ "saw.base", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/toolbase/saw.base" },
					{ "MuzzleBuzzsaw", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/toolbase/saw.base/MuzzleBuzzsaw" },
					{ "saw.spinner", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/toolbase/saw.base/saw.spinner" },
					{ "speargun.base", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/toolbase/speargun.base" },
					{ "speargun.arm.1.1", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/toolbase/speargun.base/speargun.arm.1.1" },
					{ "speargun.arm.1.2", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/toolbase/speargun.base/speargun.arm.1.1/speargun.arm.1.2" },
					{ "speargun.arm.2.1", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/toolbase/speargun.base/speargun.arm.2.1" },
					{ "speargun.arm.2.2", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/toolbase/speargun.base/speargun.arm.2.1/speargun.arm.2.2" },
					{ "speargun.spear", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/toolbase/speargun.base/speargun.spear" },
					{ "MuzzleSpear", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.l/lower_arm.l/toolbase/speargun.base/speargun.spear/MuzzleSpear" },
					{ "upper_arm.r", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.r" },
					{ "lower_arm.r", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r" },
					{ "hand.r", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r" },
					{ "finger.1.1.r", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger.1.1.r" },
					{ "finger.1.2.r", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger.1.1.r/finger.1.2.r" },
					{ "finger.2.1.r", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger.2.1.r" },
					{ "finger.2.2.r", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/finger.2.1.r/finger.2.2.r" },
					{ "thumb.1.r", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/thumb.1.r" },
					{ "thumb.2.r", "ToolbotArmature/ROOT/base/stomach/chest/upper_arm.r/lower_arm.r/hand.r/thumb.1.r/thumb.2.r" },
					{ "RackandPinion", "ToolbotArmature/ROOT/base/stomach/RackandPinion" },
					{ "IKFootTarget.l", "ToolbotArmature/ROOT/IKFootTarget.l" },
					{ "IKFootPole.l", "ToolbotArmature/ROOT/IKFootTarget.l/IKFootPole.l" },
					{ "IKFootTarget.r", "ToolbotArmature/ROOT/IKFootTarget.r" },
					{ "IKFootPole.r", "ToolbotArmature/ROOT/IKFootTarget.r/IKFootPole.r" },
					{ "IKTargetExtraWheel.l", "ToolbotArmature/ROOT/IKTargetExtraWheel.l" },
					{ "IKTargetExtraWheel.r", "ToolbotArmature/ROOT/IKTargetExtraWheel.r" },
					{ "tempHurtBox", "ToolbotArmature/ROOT/tempHurtBox" },
					{ "Hitbox", "ToolbotArmature/ROOT/Hitbox" }
				}
			},
			{
				"TreebotBody",
				new Dictionary<string, string>
				{
					{ "TreebotArmature", "TreebotArmature" },
					{ "ROOT", "TreebotArmature/ROOT" },
					{ "Base", "TreebotArmature/ROOT/Base" },
					{ "HeadBase", "TreebotArmature/ROOT/Base/HeadBase" },
					{ "Eye", "TreebotArmature/ROOT/Base/HeadBase/Eye" },
					{ "EyeControl", "TreebotArmature/ROOT/Base/HeadBase/Eye/EyeControl" },
					{ "PlatformBase", "TreebotArmature/ROOT/Base/PlatformBase" },
					{ "ArmPlatformBase", "TreebotArmature/ROOT/Base/PlatformBase/ArmPlatformBase" },
					{ "Antennae.1", "TreebotArmature/ROOT/Base/PlatformBase/ArmPlatformBase/Antennae.1" },
					{ "Antennae.005", "TreebotArmature/ROOT/Base/PlatformBase/ArmPlatformBase/Antennae.1/Antennae.005" },
					{ "Antennae.003", "TreebotArmature/ROOT/Base/PlatformBase/ArmPlatformBase/Antennae.1/Antennae.005/Antennae.003" },
					{ "Antennae.007", "TreebotArmature/ROOT/Base/PlatformBase/ArmPlatformBase/Antennae.1/Antennae.005/Antennae.003/Antennae.007" },
					{ "Antennae.002", "TreebotArmature/ROOT/Base/PlatformBase/ArmPlatformBase/Antennae.1/Antennae.005/Antennae.003/Antennae.007/Antennae.002" },
					{ "Antennae.006", "TreebotArmature/ROOT/Base/PlatformBase/ArmPlatformBase/Antennae.1/Antennae.005/Antennae.003/Antennae.007/Antennae.002/Antennae.006" },
					{ "Antennae.004", "TreebotArmature/ROOT/Base/PlatformBase/ArmPlatformBase/Antennae.1/Antennae.005/Antennae.003/Antennae.007/Antennae.002/Antennae.006/Antennae.004" },
					{ "Antennae.008", "TreebotArmature/ROOT/Base/PlatformBase/ArmPlatformBase/Antennae.1/Antennae.005/Antennae.003/Antennae.007/Antennae.002/Antennae.006/Antennae.004/Antennae.008" },
					{ "ArmRotatorJoint", "TreebotArmature/ROOT/Base/PlatformBase/ArmPlatformBase/ArmRotatorJoint" },
					{ "clavicle.l", "TreebotArmature/ROOT/Base/PlatformBase/ArmPlatformBase/ArmRotatorJoint/clavicle.l" },
					{ "shoulder.l", "TreebotArmature/ROOT/Base/PlatformBase/ArmPlatformBase/ArmRotatorJoint/clavicle.l/shoulder.l" },
					{ "IKTargetArm.l", "TreebotArmature/ROOT/Base/PlatformBase/ArmPlatformBase/ArmRotatorJoint/clavicle.l/shoulder.l/IKTargetArm.l" },
					{ "upperArm.l", "TreebotArmature/ROOT/Base/PlatformBase/ArmPlatformBase/ArmRotatorJoint/clavicle.l/shoulder.l/upperArm.l" },
					{ "lowerArm.l", "TreebotArmature/ROOT/Base/PlatformBase/ArmPlatformBase/ArmRotatorJoint/clavicle.l/shoulder.l/upperArm.l/lowerArm.l" },
					{ "hand.l", "TreebotArmature/ROOT/Base/PlatformBase/ArmPlatformBase/ArmRotatorJoint/clavicle.l/shoulder.l/upperArm.l/lowerArm.l/hand.l" },
					{ "WeaponPlatform", "TreebotArmature/ROOT/Base/PlatformBase/ArmPlatformBase/ArmRotatorJoint/clavicle.l/shoulder.l/upperArm.l/lowerArm.l/hand.l/WeaponPlatform" },
					{ "FlowerBase", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase" },
					{ "FlowerPetal1.1", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.1" },
					{ "FlowerPetal1.2", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.1/FlowerPetal1.2" },
					{ "FlowerPetal1.3", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.1/FlowerPetal1.2/FlowerPetal1.3" },
					{ "FlowerPetal1.4", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.1/FlowerPetal1.2/FlowerPetal1.3/FlowerPetal1.4" },
					{ "FlowerPetal1.002", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.002" },
					{ "FlowerPetal1.003", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.002/FlowerPetal1.003" },
					{ "FlowerPetal1.004", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.002/FlowerPetal1.003/FlowerPetal1.004" },
					{ "FlowerPetal1.005", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.002/FlowerPetal1.003/FlowerPetal1.004/FlowerPetal1.005" },
					{ "FlowerPetal1.006", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.006" },
					{ "FlowerPetal1.007", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.006/FlowerPetal1.007" },
					{ "FlowerPetal1.008", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.006/FlowerPetal1.007/FlowerPetal1.008" },
					{ "FlowerPetal1.009", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.006/FlowerPetal1.007/FlowerPetal1.008/FlowerPetal1.009" },
					{ "FlowerPetal1.010", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.010" },
					{ "FlowerPetal1.011", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.010/FlowerPetal1.011" },
					{ "FlowerPetal1.012", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.010/FlowerPetal1.011/FlowerPetal1.012" },
					{ "FlowerPetal1.013", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.010/FlowerPetal1.011/FlowerPetal1.012/FlowerPetal1.013" },
					{ "FlowerPetal1.014", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.014" },
					{ "FlowerPetal1.015", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.014/FlowerPetal1.015" },
					{ "FlowerPetal1.016", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.014/FlowerPetal1.015/FlowerPetal1.016" },
					{ "FlowerPetal1.017", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.014/FlowerPetal1.015/FlowerPetal1.016/FlowerPetal1.017" },
					{ "FlowerPetal1.018", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.018" },
					{ "FlowerPetal1.019", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.018/FlowerPetal1.019" },
					{ "FlowerPetal1.020", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.018/FlowerPetal1.019/FlowerPetal1.020" },
					{ "FlowerPetal1.021", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.018/FlowerPetal1.019/FlowerPetal1.020/FlowerPetal1.021" },
					{ "FlowerPetal1.022", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.022" },
					{ "FlowerPetal1.023", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.022/FlowerPetal1.023" },
					{ "FlowerPetal1.024", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.022/FlowerPetal1.023/FlowerPetal1.024" },
					{ "FlowerPetal1.025", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.022/FlowerPetal1.023/FlowerPetal1.024/FlowerPetal1.025" },
					{ "FlowerPetal1.030", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.030" },
					{ "FlowerPetal1.031", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.030/FlowerPetal1.031" },
					{ "FlowerPetal1.032", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.030/FlowerPetal1.031/FlowerPetal1.032" },
					{ "FlowerPetal1.033", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.030/FlowerPetal1.031/FlowerPetal1.032/FlowerPetal1.033" },
					{ "FlowerPetal1.034", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.034" },
					{ "FlowerPetal1.035", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.034/FlowerPetal1.035" },
					{ "FlowerPetal1.036", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.034/FlowerPetal1.035/FlowerPetal1.036" },
					{ "FlowerPetal1.037", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.034/FlowerPetal1.035/FlowerPetal1.036/FlowerPetal1.037" },
					{ "FlowerPetal1.038", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.038" },
					{ "FlowerPetal1.039", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.038/FlowerPetal1.039" },
					{ "FlowerPetal1.040", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.038/FlowerPetal1.039/FlowerPetal1.040" },
					{ "FlowerPetal1.041", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.038/FlowerPetal1.039/FlowerPetal1.040/FlowerPetal1.041" },
					{ "FlowerPetal1.042", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.042" },
					{ "FlowerPetal1.043", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.042/FlowerPetal1.043" },
					{ "FlowerPetal1.044", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.042/FlowerPetal1.043/FlowerPetal1.044" },
					{ "FlowerPetal1.045", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal1.042/FlowerPetal1.043/FlowerPetal1.044/FlowerPetal1.045" },
					{ "FlowerPetal2.001", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal2.001" },
					{ "FlowerPetal2.002", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal2.002" },
					{ "FlowerPetal2.003", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal2.003" },
					{ "FlowerPetal2.004", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal2.004" },
					{ "FlowerPetal2.005", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal2.005" },
					{ "FlowerPetal2.006", "TreebotArmature/ROOT/Base/PlatformBase/FlowerBase/FlowerPetal2.006" },
					{ "Thigh.Back.l", "TreebotArmature/ROOT/Base/PlatformBase/Thigh.Back.l" },
					{ "Calf.Back.l", "TreebotArmature/ROOT/Base/PlatformBase/Thigh.Back.l/Calf.Back.l" },
					{ "Foot.Back.l", "TreebotArmature/ROOT/Base/PlatformBase/Thigh.Back.l/Calf.Back.l/Foot.Back.l" },
					{ "Thigh.Back.r", "TreebotArmature/ROOT/Base/PlatformBase/Thigh.Back.r" },
					{ "Calf.Back.r", "TreebotArmature/ROOT/Base/PlatformBase/Thigh.Back.r/Calf.Back.r" },
					{ "Foot.Back.r", "TreebotArmature/ROOT/Base/PlatformBase/Thigh.Back.r/Calf.Back.r/Foot.Back.r" },
					{ "Thigh.Front.l", "TreebotArmature/ROOT/Base/PlatformBase/Thigh.Front.l" },
					{ "Calf.Front.l", "TreebotArmature/ROOT/Base/PlatformBase/Thigh.Front.l/Calf.Front.l" },
					{ "Foot.Front.l", "TreebotArmature/ROOT/Base/PlatformBase/Thigh.Front.l/Calf.Front.l/Foot.Front.l" },
					{ "Thigh.Front.r", "TreebotArmature/ROOT/Base/PlatformBase/Thigh.Front.r" },
					{ "Calf.Front.r", "TreebotArmature/ROOT/Base/PlatformBase/Thigh.Front.r/Calf.Front.r" },
					{ "Foot.Front.r", "TreebotArmature/ROOT/Base/PlatformBase/Thigh.Front.r/Calf.Front.r/Foot.Front.r" },
					{ "IKTargetLeg.Back.l", "TreebotArmature/ROOT/IKTargetLeg.Back.l" },
					{ "IKTargetLeg.Back.r", "TreebotArmature/ROOT/IKTargetLeg.Back.r" },
					{ "IKTargetLeg.Front.l", "TreebotArmature/ROOT/IKTargetLeg.Front.l" },
					{ "IKTargetLeg.Front.r", "TreebotArmature/ROOT/IKTargetLeg.Front.r" },
					{ "TempHurtbox", "TreebotArmature/ROOT/TempHurtbox" },
					{ "AimOriginMortar", "TreebotArmature/ROOT/AimOriginMortar" }
				}
			},
			{
				"LoaderBody",
				new Dictionary<string, string>
				{
					{ "LoaderArmature", "LoaderArmature" },
					{ "ROOT", "LoaderArmature/ROOT" },
					{ "base", "LoaderArmature/ROOT/base" },
					{ "IKArmTarget.l", "LoaderArmature/ROOT/base/IKArmTarget.l" },
					{ "IKArmPole.l", "LoaderArmature/ROOT/base/IKArmTarget.l/IKArmPole.l" },
					{ "IKArmTarget.r", "LoaderArmature/ROOT/base/IKArmTarget.r" },
					{ "IKArmPole.r", "LoaderArmature/ROOT/base/IKArmTarget.r/IKArmPole.r" },
					{ "mech.IKArmTarget.l", "LoaderArmature/ROOT/base/mech.IKArmTarget.l" },
					{ "mech.IKArmPole.l", "LoaderArmature/ROOT/base/mech.IKArmTarget.l/mech.IKArmPole.l" },
					{ "mech.IKArmTarget.r", "LoaderArmature/ROOT/base/mech.IKArmTarget.r" },
					{ "mech.IKArmPole.r", "LoaderArmature/ROOT/base/mech.IKArmTarget.r/mech.IKArmPole.r" },
					{ "pelvis", "LoaderArmature/ROOT/base/pelvis" },
					{ "thigh.l", "LoaderArmature/ROOT/base/pelvis/thigh.l" },
					{ "calf.l", "LoaderArmature/ROOT/base/pelvis/thigh.l/calf.l" },
					{ "foot.l", "LoaderArmature/ROOT/base/pelvis/thigh.l/calf.l/foot.l" },
					{ "toe.l", "LoaderArmature/ROOT/base/pelvis/thigh.l/calf.l/foot.l/toe.l" },
					{ "thigh.r", "LoaderArmature/ROOT/base/pelvis/thigh.r" },
					{ "calf.r", "LoaderArmature/ROOT/base/pelvis/thigh.r/calf.r" },
					{ "foot.r", "LoaderArmature/ROOT/base/pelvis/thigh.r/calf.r/foot.r" },
					{ "toe.r", "LoaderArmature/ROOT/base/pelvis/thigh.r/calf.r/foot.r/toe.r" },
					{ "stomach", "LoaderArmature/ROOT/base/stomach" },
					{ "chest", "LoaderArmature/ROOT/base/stomach/chest" },
					{ "clavicle.l", "LoaderArmature/ROOT/base/stomach/chest/clavicle.l" },
					{ "upper_arm.l", "LoaderArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l" },
					{ "lower_arm.l", "LoaderArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l" },
					{ "hand.l", "LoaderArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l" },
					{ "finger1.1.l", "LoaderArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger1.1.l" },
					{ "finger1.2.l", "LoaderArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger1.1.l/finger1.2.l" },
					{ "finger1.3.l", "LoaderArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger1.1.l/finger1.2.l/finger1.3.l" },
					{ "finger2.1.l", "LoaderArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger2.1.l" },
					{ "finger2.2.l", "LoaderArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger2.1.l/finger2.2.l" },
					{ "finger2.3.l", "LoaderArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger2.1.l/finger2.2.l/finger2.3.l" },
					{ "finger3.1.l", "LoaderArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger3.1.l" },
					{ "finger3.2.l", "LoaderArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger3.1.l/finger3.2.l" },
					{ "finger3.3.l", "LoaderArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger3.1.l/finger3.2.l/finger3.3.l" },
					{ "finger4.1.l", "LoaderArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger4.1.l" },
					{ "finger4.2.l", "LoaderArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger4.1.l/finger4.2.l" },
					{ "finger4.3.l", "LoaderArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/finger4.1.l/finger4.2.l/finger4.3.l" },
					{ "GripControl.l", "LoaderArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/GripControl.l" },
					{ "finger1IKTarget.l", "LoaderArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/GripControl.l/finger1IKTarget.l" },
					{ "finger2IKTarget.l", "LoaderArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/GripControl.l/finger2IKTarget.l" },
					{ "finger3IKTarget.l", "LoaderArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/GripControl.l/finger3IKTarget.l" },
					{ "finger4IKTarget.l", "LoaderArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/GripControl.l/finger4IKTarget.l" },
					{ "thumbIKTarget.l", "LoaderArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/GripControl.l/thumbIKTarget.l" },
					{ "thumb.1.l", "LoaderArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/thumb.1.l" },
					{ "thumb.2.l", "LoaderArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l/hand.l/thumb.1.l/thumb.2.l" },
					{ "clavicle.r", "LoaderArmature/ROOT/base/stomach/chest/clavicle.r" },
					{ "upper_arm.r", "LoaderArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r" },
					{ "lower_arm.r", "LoaderArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r" },
					{ "hand.r", "LoaderArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r" },
					{ "finger1.1.r", "LoaderArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger1.1.r" },
					{ "finger1.2.r", "LoaderArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger1.1.r/finger1.2.r" },
					{ "finger1.3.r", "LoaderArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger1.1.r/finger1.2.r/finger1.3.r" },
					{ "finger2.1.r", "LoaderArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger2.1.r" },
					{ "finger2.2.r", "LoaderArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger2.1.r/finger2.2.r" },
					{ "finger2.3.r", "LoaderArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger2.1.r/finger2.2.r/finger2.3.r" },
					{ "finger3.1.r", "LoaderArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger3.1.r" },
					{ "finger3.2.r", "LoaderArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger3.1.r/finger3.2.r" },
					{ "finger3.3.r", "LoaderArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger3.1.r/finger3.2.r/finger3.3.r" },
					{ "finger4.1.r", "LoaderArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger4.1.r" },
					{ "finger4.2.r", "LoaderArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger4.1.r/finger4.2.r" },
					{ "finger4.3.r", "LoaderArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/finger4.1.r/finger4.2.r/finger4.3.r" },
					{ "GripControl.r", "LoaderArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/GripControl.r" },
					{ "finger1IKTarget.r", "LoaderArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/GripControl.r/finger1IKTarget.r" },
					{ "finger2IKTarget.r", "LoaderArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/GripControl.r/finger2IKTarget.r" },
					{ "finger3IKTarget.r", "LoaderArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/GripControl.r/finger3IKTarget.r" },
					{ "finger4IKTarget.r", "LoaderArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/GripControl.r/finger4IKTarget.r" },
					{ "thumbIKTarget.r", "LoaderArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/GripControl.r/thumbIKTarget.r" },
					{ "thumb.1.r", "LoaderArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/thumb.1.r" },
					{ "thumb.2.r", "LoaderArmature/ROOT/base/stomach/chest/clavicle.r/upper_arm.r/lower_arm.r/hand.r/thumb.1.r/thumb.2.r" },
					{ "mech.base", "LoaderArmature/ROOT/base/stomach/chest/mech.base" },
					{ "mech.upper_arm.l", "LoaderArmature/ROOT/base/stomach/chest/mech.base/mech.upper_arm.l" },
					{ "mech.hydraulic.base.l", "LoaderArmature/ROOT/base/stomach/chest/mech.base/mech.upper_arm.l/mech.hydraulic.base.l" },
					{ "mech.hydraulic.piston.l", "LoaderArmature/ROOT/base/stomach/chest/mech.base/mech.upper_arm.l/mech.hydraulic.base.l/mech.hydraulic.piston.l" },
					{ "mech.lower_arm.l", "LoaderArmature/ROOT/base/stomach/chest/mech.base/mech.upper_arm.l/mech.lower_arm.l" },
					{ "mech.hand.l", "LoaderArmature/ROOT/base/stomach/chest/mech.base/mech.upper_arm.l/mech.lower_arm.l/mech.hand.l" },
					{ "mech.hand.end.l", "LoaderArmature/ROOT/base/stomach/chest/mech.base/mech.upper_arm.l/mech.lower_arm.l/mech.hand.l/mech.hand.end.l" },
					{ "mech.finger1.1.l", "LoaderArmature/ROOT/base/stomach/chest/mech.base/mech.upper_arm.l/mech.lower_arm.l/mech.hand.l/mech.hand.end.l/mech.finger1.1.l" },
					{ "mech.finger1.2.l", "LoaderArmature/ROOT/base/stomach/chest/mech.base/mech.upper_arm.l/mech.lower_arm.l/mech.hand.l/mech.hand.end.l/mech.finger1.1.l/mech.finger1.2.l" },
					{ "mech.finger1.3.l", "LoaderArmature/ROOT/base/stomach/chest/mech.base/mech.upper_arm.l/mech.lower_arm.l/mech.hand.l/mech.hand.end.l/mech.finger1.1.l/mech.finger1.2.l/mech.finger1.3.l" },
					{ "mech.finger2.1.l", "LoaderArmature/ROOT/base/stomach/chest/mech.base/mech.upper_arm.l/mech.lower_arm.l/mech.hand.l/mech.hand.end.l/mech.finger2.1.l" },
					{ "mech.finger2.2.l", "LoaderArmature/ROOT/base/stomach/chest/mech.base/mech.upper_arm.l/mech.lower_arm.l/mech.hand.l/mech.hand.end.l/mech.finger2.1.l/mech.finger2.2.l" },
					{ "mech.finger2.3.l", "LoaderArmature/ROOT/base/stomach/chest/mech.base/mech.upper_arm.l/mech.lower_arm.l/mech.hand.l/mech.hand.end.l/mech.finger2.1.l/mech.finger2.2.l/mech.finger2.3.l" },
					{ "mech.finger3.1.l", "LoaderArmature/ROOT/base/stomach/chest/mech.base/mech.upper_arm.l/mech.lower_arm.l/mech.hand.l/mech.hand.end.l/mech.finger3.1.l" },
					{ "mech.finger3.2.l", "LoaderArmature/ROOT/base/stomach/chest/mech.base/mech.upper_arm.l/mech.lower_arm.l/mech.hand.l/mech.hand.end.l/mech.finger3.1.l/mech.finger3.2.l" },
					{ "mech.finger3.3.l", "LoaderArmature/ROOT/base/stomach/chest/mech.base/mech.upper_arm.l/mech.lower_arm.l/mech.hand.l/mech.hand.end.l/mech.finger3.1.l/mech.finger3.2.l/mech.finger3.3.l" },
					{ "mech.GripControl.l", "LoaderArmature/ROOT/base/stomach/chest/mech.base/mech.upper_arm.l/mech.lower_arm.l/mech.hand.l/mech.hand.end.l/mech.GripControl.l" },
					{ "mech.finger1IKTarget.l", "LoaderArmature/ROOT/base/stomach/chest/mech.base/mech.upper_arm.l/mech.lower_arm.l/mech.hand.l/mech.hand.end.l/mech.GripControl.l/mech.finger1IKTarget.l" },
					{ "mech.finger2IKTarget.l", "LoaderArmature/ROOT/base/stomach/chest/mech.base/mech.upper_arm.l/mech.lower_arm.l/mech.hand.l/mech.hand.end.l/mech.GripControl.l/mech.finger2IKTarget.l" },
					{ "mech.finger3IKTarget.l", "LoaderArmature/ROOT/base/stomach/chest/mech.base/mech.upper_arm.l/mech.lower_arm.l/mech.hand.l/mech.hand.end.l/mech.GripControl.l/mech.finger3IKTarget.l" },
					{ "mech.thumbIKTarget.l", "LoaderArmature/ROOT/base/stomach/chest/mech.base/mech.upper_arm.l/mec