Core/Mapping/HandDetectionProfiles.Data.cs
// Hand/arm conventions from humanoid-retargeter 26084c96c3fc870aaf9a5bd798de063ce2fd62df.
// Generated from all 20 reference profiles; hierarchy and confidence checks live in HandDetectionProfiles.
namespace HumanoidHandRetargeter.Mapping;
internal static partial class HandDetectionProfiles
{
    internal static readonly Profile[] Catalog =
    [
        new("actorcore_cc", ["^CC_Base_"], [
            new("ClavicleL", "L_Clavicle"),
            new("ClavicleR", "R_Clavicle"),
            new("UpperArmL", "L_Upperarm"),
            new("UpperArmR", "R_Upperarm"),
            new("LowerArmL", "L_Forearm"),
            new("LowerArmR", "R_Forearm"),
            new("HandL", "L_Hand"),
            new("HandR", "R_Hand"),
            new("ThumbProxL", "L_Thumb1"),
            new("ThumbMidL", "L_Thumb2"),
            new("ThumbDistL", "L_Thumb3"),
            new("ThumbProxR", "R_Thumb1"),
            new("ThumbMidR", "R_Thumb2"),
            new("ThumbDistR", "R_Thumb3"),
            new("IndexProxL", "L_Index1"),
            new("IndexMidL", "L_Index2"),
            new("IndexDistL", "L_Index3"),
            new("IndexProxR", "R_Index1"),
            new("IndexMidR", "R_Index2"),
            new("IndexDistR", "R_Index3"),
            new("MiddleProxL", "L_Mid1"),
            new("MiddleMidL", "L_Mid2"),
            new("MiddleDistL", "L_Mid3"),
            new("MiddleProxR", "R_Mid1"),
            new("MiddleMidR", "R_Mid2"),
            new("MiddleDistR", "R_Mid3"),
            new("RingProxL", "L_Ring1"),
            new("RingMidL", "L_Ring2"),
            new("RingDistL", "L_Ring3"),
            new("RingProxR", "R_Ring1"),
            new("RingMidR", "R_Ring2"),
            new("RingDistR", "R_Ring3"),
            new("PinkyProxL", "L_Pinky1"),
            new("PinkyMidL", "L_Pinky2"),
            new("PinkyDistL", "L_Pinky3"),
            new("PinkyProxR", "R_Pinky1"),
            new("PinkyMidR", "R_Pinky2"),
            new("PinkyDistR", "R_Pinky3"),
        ]),
        new("advanced_skeleton", [], [
            new("ClavicleL", "Scapula_L"),
            new("ClavicleR", "Scapula_R"),
            new("UpperArmL", "Shoulder_L"),
            new("UpperArmR", "Shoulder_R"),
            new("LowerArmL", "Elbow_L"),
            new("LowerArmR", "Elbow_R"),
            new("HandL", "Wrist_L"),
            new("HandR", "Wrist_R"),
            new("ThumbProxL", "ThumbFinger1_L"),
            new("ThumbMidL", "ThumbFinger2_L"),
            new("ThumbDistL", "ThumbFinger3_L"),
            new("ThumbProxR", "ThumbFinger1_R"),
            new("ThumbMidR", "ThumbFinger2_R"),
            new("ThumbDistR", "ThumbFinger3_R"),
            new("IndexProxL", "IndexFinger1_L"),
            new("IndexMidL", "IndexFinger2_L"),
            new("IndexDistL", "IndexFinger3_L"),
            new("IndexProxR", "IndexFinger1_R"),
            new("IndexMidR", "IndexFinger2_R"),
            new("IndexDistR", "IndexFinger3_R"),
            new("MiddleProxL", "MiddleFinger1_L"),
            new("MiddleMidL", "MiddleFinger2_L"),
            new("MiddleDistL", "MiddleFinger3_L"),
            new("MiddleProxR", "MiddleFinger1_R"),
            new("MiddleMidR", "MiddleFinger2_R"),
            new("MiddleDistR", "MiddleFinger3_R"),
            new("RingProxL", "RingFinger1_L"),
            new("RingMidL", "RingFinger2_L"),
            new("RingDistL", "RingFinger3_L"),
            new("RingProxR", "RingFinger1_R"),
            new("RingMidR", "RingFinger2_R"),
            new("RingDistR", "RingFinger3_R"),
            new("PinkyProxL", "PinkyFinger1_L"),
            new("PinkyMidL", "PinkyFinger2_L"),
            new("PinkyDistL", "PinkyFinger3_L"),
            new("PinkyProxR", "PinkyFinger1_R"),
            new("PinkyMidR", "PinkyFinger2_R"),
            new("PinkyDistR", "PinkyFinger3_R"),
        ]),
        new("auto_rig_pro", [], [
            new("ClavicleL", "shoulder.l"),
            new("ClavicleR", "shoulder.r"),
            new("UpperArmL", "arm_stretch.l"),
            new("UpperArmR", "arm_stretch.r"),
            new("LowerArmL", "forearm_stretch.l"),
            new("LowerArmR", "forearm_stretch.r"),
            new("HandL", "hand.l"),
            new("HandR", "hand.r"),
            new("ThumbProxL", "c_thumb1.l"),
            new("ThumbMidL", "c_thumb2.l"),
            new("ThumbDistL", "c_thumb3.l"),
            new("ThumbProxR", "c_thumb1.r"),
            new("ThumbMidR", "c_thumb2.r"),
            new("ThumbDistR", "c_thumb3.r"),
            new("IndexProxL", "c_index1.l"),
            new("IndexMidL", "c_index2.l"),
            new("IndexDistL", "c_index3.l"),
            new("IndexProxR", "c_index1.r"),
            new("IndexMidR", "c_index2.r"),
            new("IndexDistR", "c_index3.r"),
            new("MiddleProxL", "c_middle1.l"),
            new("MiddleMidL", "c_middle2.l"),
            new("MiddleDistL", "c_middle3.l"),
            new("MiddleProxR", "c_middle1.r"),
            new("MiddleMidR", "c_middle2.r"),
            new("MiddleDistR", "c_middle3.r"),
            new("RingProxL", "c_ring1.l"),
            new("RingMidL", "c_ring2.l"),
            new("RingDistL", "c_ring3.l"),
            new("RingProxR", "c_ring1.r"),
            new("RingMidR", "c_ring2.r"),
            new("RingDistR", "c_ring3.r"),
            new("PinkyProxL", "c_pinky1.l"),
            new("PinkyMidL", "c_pinky2.l"),
            new("PinkyDistL", "c_pinky3.l"),
            new("PinkyProxR", "c_pinky1.r"),
            new("PinkyMidR", "c_pinky2.r"),
            new("PinkyDistR", "c_pinky3.r"),
        ]),
        new("biped", ["^Bip[A-Za-z0-9]+[ _]"], [
            new("ClavicleL", "L Clavicle"),
            new("ClavicleR", "R Clavicle"),
            new("UpperArmL", "L UpperArm"),
            new("UpperArmR", "R UpperArm"),
            new("LowerArmL", "L Forearm"),
            new("LowerArmR", "R Forearm"),
            new("HandL", "L Hand"),
            new("HandR", "R Hand"),
            new("ThumbProxL", "L Finger0"),
            new("ThumbMidL", "L Finger01"),
            new("ThumbDistL", "L Finger02"),
            new("ThumbProxR", "R Finger0"),
            new("ThumbMidR", "R Finger01"),
            new("ThumbDistR", "R Finger02"),
            new("IndexProxL", "L Finger1"),
            new("IndexMidL", "L Finger11"),
            new("IndexDistL", "L Finger12"),
            new("IndexProxR", "R Finger1"),
            new("IndexMidR", "R Finger11"),
            new("IndexDistR", "R Finger12"),
            new("MiddleProxL", "L Finger2"),
            new("MiddleMidL", "L Finger21"),
            new("MiddleDistL", "L Finger22"),
            new("MiddleProxR", "R Finger2"),
            new("MiddleMidR", "R Finger21"),
            new("MiddleDistR", "R Finger22"),
            new("RingProxL", "L Finger3"),
            new("RingMidL", "L Finger31"),
            new("RingDistL", "L Finger32"),
            new("RingProxR", "R Finger3"),
            new("RingMidR", "R Finger31"),
            new("RingDistR", "R Finger32"),
            new("PinkyProxL", "L Finger4"),
            new("PinkyMidL", "L Finger41"),
            new("PinkyDistL", "L Finger42"),
            new("PinkyProxR", "R Finger4"),
            new("PinkyMidR", "R Finger41"),
            new("PinkyDistR", "R Finger42"),
        ]),
        new("classic_bvh", [], [
            new("ClavicleL", "LeftCollar"),
            new("ClavicleR", "RightCollar"),
            new("UpperArmL", "LeftShoulder"),
            new("UpperArmR", "RightShoulder"),
            new("LowerArmL", "LeftElbow"),
            new("LowerArmR", "RightElbow"),
            new("HandL", "LeftWrist"),
            new("HandR", "RightWrist"),
        ]),
        new("daz_genesis", [], [
            new("ClavicleL", "lCollar"),
            new("ClavicleR", "rCollar"),
            new("UpperArmL", "lShldrBend"),
            new("UpperArmR", "rShldrBend"),
            new("LowerArmL", "lForearmBend"),
            new("LowerArmR", "rForearmBend"),
            new("HandL", "lHand"),
            new("HandR", "rHand"),
            new("ThumbProxL", "lThumb1"),
            new("ThumbMidL", "lThumb2"),
            new("ThumbDistL", "lThumb3"),
            new("ThumbProxR", "rThumb1"),
            new("ThumbMidR", "rThumb2"),
            new("ThumbDistR", "rThumb3"),
            new("IndexProxL", "lIndex1"),
            new("IndexMidL", "lIndex2"),
            new("IndexDistL", "lIndex3"),
            new("IndexProxR", "rIndex1"),
            new("IndexMidR", "rIndex2"),
            new("IndexDistR", "rIndex3"),
            new("MiddleProxL", "lMid1"),
            new("MiddleMidL", "lMid2"),
            new("MiddleDistL", "lMid3"),
            new("MiddleProxR", "rMid1"),
            new("MiddleMidR", "rMid2"),
            new("MiddleDistR", "rMid3"),
            new("RingProxL", "lRing1"),
            new("RingMidL", "lRing2"),
            new("RingDistL", "lRing3"),
            new("RingProxR", "rRing1"),
            new("RingMidR", "rRing2"),
            new("RingDistR", "rRing3"),
            new("PinkyProxL", "lPinky1"),
            new("PinkyMidL", "lPinky2"),
            new("PinkyDistL", "lPinky3"),
            new("PinkyProxR", "rPinky1"),
            new("PinkyMidR", "rPinky2"),
            new("PinkyDistR", "rPinky3"),
        ]),
        new("daz_poser", [], [
            new("ClavicleL", "lCollar"),
            new("ClavicleR", "rCollar"),
            new("UpperArmL", "lShldr"),
            new("UpperArmR", "rShldr"),
            new("LowerArmL", "lForeArm"),
            new("LowerArmR", "rForeArm"),
            new("HandL", "lHand"),
            new("HandR", "rHand"),
            new("ThumbProxL", "lThumb1"),
            new("ThumbMidL", "lThumb2"),
            new("ThumbDistL", "lThumb3"),
            new("ThumbProxR", "rThumb1"),
            new("ThumbMidR", "rThumb2"),
            new("ThumbDistR", "rThumb3"),
            new("IndexProxL", "lIndex1"),
            new("IndexMidL", "lIndex2"),
            new("IndexDistL", "lIndex3"),
            new("IndexProxR", "rIndex1"),
            new("IndexMidR", "rIndex2"),
            new("IndexDistR", "rIndex3"),
            new("MiddleProxL", "lMid1"),
            new("MiddleMidL", "lMid2"),
            new("MiddleDistL", "lMid3"),
            new("MiddleProxR", "rMid1"),
            new("MiddleMidR", "rMid2"),
            new("MiddleDistR", "rMid3"),
            new("RingProxL", "lRing1"),
            new("RingMidL", "lRing2"),
            new("RingDistL", "lRing3"),
            new("RingProxR", "rRing1"),
            new("RingMidR", "rRing2"),
            new("RingDistR", "rRing3"),
            new("PinkyProxL", "lPinky1"),
            new("PinkyMidL", "lPinky2"),
            new("PinkyDistL", "lPinky3"),
            new("PinkyProxR", "rPinky1"),
            new("PinkyMidR", "rPinky2"),
            new("PinkyDistR", "rPinky3"),
        ]),
        new("fight_night", [], [
            new("ClavicleL", "LeftShoulder"),
            new("ClavicleR", "RightShoulder"),
            new("UpperArmL", "LeftArm"),
            new("UpperArmR", "RightArm"),
            new("LowerArmL", "LeftForeArm"),
            new("LowerArmR", "RightForeArm"),
            new("HandL", "LeftHand"),
            new("HandR", "RightHand"),
            new("ThumbProxL", "LeftHandThumb1"),
            new("ThumbMidL", "LeftHandThumb2"),
            new("ThumbProxR", "RightHandThumb1"),
            new("ThumbMidR", "RightHandThumb2"),
            new("MiddleMetaL", "LeftInHandMiddle"),
            new("MiddleProxL", "LeftHandMiddle1"),
            new("MiddleMidL", "LeftHandMiddle2"),
            new("MiddleMetaR", "RightInHandMiddle"),
            new("MiddleProxR", "RightHandMiddle1"),
            new("MiddleMidR", "RightHandMiddle2"),
        ]),
        new("mixamo", ["^mixamorig[0-9]*:", "^mixamorig[0-9]*_"], [
            new("ClavicleL", "LeftShoulder"),
            new("ClavicleR", "RightShoulder"),
            new("UpperArmL", "LeftArm"),
            new("UpperArmR", "RightArm"),
            new("LowerArmL", "LeftForeArm"),
            new("LowerArmR", "RightForeArm"),
            new("HandL", "LeftHand"),
            new("HandR", "RightHand"),
            new("ThumbProxL", "LeftHandThumb1"),
            new("ThumbMidL", "LeftHandThumb2"),
            new("ThumbDistL", "LeftHandThumb3"),
            new("ThumbProxR", "RightHandThumb1"),
            new("ThumbMidR", "RightHandThumb2"),
            new("ThumbDistR", "RightHandThumb3"),
            new("IndexProxL", "LeftHandIndex1"),
            new("IndexMidL", "LeftHandIndex2"),
            new("IndexDistL", "LeftHandIndex3"),
            new("IndexProxR", "RightHandIndex1"),
            new("IndexMidR", "RightHandIndex2"),
            new("IndexDistR", "RightHandIndex3"),
            new("MiddleProxL", "LeftHandMiddle1"),
            new("MiddleMidL", "LeftHandMiddle2"),
            new("MiddleDistL", "LeftHandMiddle3"),
            new("MiddleProxR", "RightHandMiddle1"),
            new("MiddleMidR", "RightHandMiddle2"),
            new("MiddleDistR", "RightHandMiddle3"),
            new("RingProxL", "LeftHandRing1"),
            new("RingMidL", "LeftHandRing2"),
            new("RingDistL", "LeftHandRing3"),
            new("RingProxR", "RightHandRing1"),
            new("RingMidR", "RightHandRing2"),
            new("RingDistR", "RightHandRing3"),
            new("PinkyProxL", "LeftHandPinky1"),
            new("PinkyMidL", "LeftHandPinky2"),
            new("PinkyDistL", "LeftHandPinky3"),
            new("PinkyProxR", "RightHandPinky1"),
            new("PinkyMidR", "RightHandPinky2"),
            new("PinkyDistR", "RightHandPinky3"),
        ]),
        new("perception_neuron", [], [
            new("ClavicleL", "LeftShoulder"),
            new("ClavicleR", "RightShoulder"),
            new("UpperArmL", "LeftArm"),
            new("UpperArmR", "RightArm"),
            new("LowerArmL", "LeftForeArm"),
            new("LowerArmR", "RightForeArm"),
            new("HandL", "LeftHand"),
            new("HandR", "RightHand"),
            new("ThumbProxL", "LeftHandThumb1"),
            new("ThumbMidL", "LeftHandThumb2"),
            new("ThumbDistL", "LeftHandThumb3"),
            new("ThumbProxR", "RightHandThumb1"),
            new("ThumbMidR", "RightHandThumb2"),
            new("ThumbDistR", "RightHandThumb3"),
            new("IndexProxL", "LeftHandIndex1"),
            new("IndexMidL", "LeftHandIndex2"),
            new("IndexDistL", "LeftHandIndex3"),
            new("IndexProxR", "RightHandIndex1"),
            new("IndexMidR", "RightHandIndex2"),
            new("IndexDistR", "RightHandIndex3"),
            new("MiddleProxL", "LeftHandMiddle1"),
            new("MiddleMidL", "LeftHandMiddle2"),
            new("MiddleDistL", "LeftHandMiddle3"),
            new("MiddleProxR", "RightHandMiddle1"),
            new("MiddleMidR", "RightHandMiddle2"),
            new("MiddleDistR", "RightHandMiddle3"),
            new("RingProxL", "LeftHandRing1"),
            new("RingMidL", "LeftHandRing2"),
            new("RingDistL", "LeftHandRing3"),
            new("RingProxR", "RightHandRing1"),
            new("RingMidR", "RightHandRing2"),
            new("RingDistR", "RightHandRing3"),
            new("PinkyProxL", "LeftHandPinky1"),
            new("PinkyMidL", "LeftHandPinky2"),
            new("PinkyDistL", "LeftHandPinky3"),
            new("PinkyProxR", "RightHandPinky1"),
            new("PinkyMidR", "RightHandPinky2"),
            new("PinkyDistR", "RightHandPinky3"),
        ]),
        new("rigify", ["^DEF-"], [
            new("ClavicleL", "shoulder.L"),
            new("ClavicleR", "shoulder.R"),
            new("UpperArmL", "upper_arm.L"),
            new("UpperArmR", "upper_arm.R"),
            new("LowerArmL", "forearm.L"),
            new("LowerArmR", "forearm.R"),
            new("HandL", "hand.L"),
            new("HandR", "hand.R"),
            new("ThumbProxL", "thumb.01.L"),
            new("ThumbMidL", "thumb.02.L"),
            new("ThumbDistL", "thumb.03.L"),
            new("ThumbProxR", "thumb.01.R"),
            new("ThumbMidR", "thumb.02.R"),
            new("ThumbDistR", "thumb.03.R"),
            new("IndexProxL", "f_index.01.L"),
            new("IndexMidL", "f_index.02.L"),
            new("IndexDistL", "f_index.03.L"),
            new("IndexProxR", "f_index.01.R"),
            new("IndexMidR", "f_index.02.R"),
            new("IndexDistR", "f_index.03.R"),
            new("MiddleProxL", "f_middle.01.L"),
            new("MiddleMidL", "f_middle.02.L"),
            new("MiddleDistL", "f_middle.03.L"),
            new("MiddleProxR", "f_middle.01.R"),
            new("MiddleMidR", "f_middle.02.R"),
            new("MiddleDistR", "f_middle.03.R"),
            new("RingProxL", "f_ring.01.L"),
            new("RingMidL", "f_ring.02.L"),
            new("RingDistL", "f_ring.03.L"),
            new("RingProxR", "f_ring.01.R"),
            new("RingMidR", "f_ring.02.R"),
            new("RingDistR", "f_ring.03.R"),
            new("PinkyProxL", "f_pinky.01.L"),
            new("PinkyMidL", "f_pinky.02.L"),
            new("PinkyDistL", "f_pinky.03.L"),
            new("PinkyProxR", "f_pinky.01.R"),
            new("PinkyMidR", "f_pinky.02.R"),
            new("PinkyDistR", "f_pinky.03.R"),
        ]),
        new("rokoko_bvh", [], [
            new("ClavicleL", "LeftShoulder"),
            new("ClavicleL", "LeftCollar"),
            new("ClavicleR", "RightShoulder"),
            new("ClavicleR", "RightCollar"),
            new("UpperArmL", "LeftArm"),
            new("UpperArmL", "LeftUpperArm"),
            new("UpperArmR", "RightArm"),
            new("UpperArmR", "RightUpperArm"),
            new("LowerArmL", "LeftForeArm"),
            new("LowerArmL", "LeftLowerArm"),
            new("LowerArmR", "RightForeArm"),
            new("LowerArmR", "RightLowerArm"),
            new("HandL", "LeftHand"),
            new("HandR", "RightHand"),
        ]),
        new("sbox", [], [
            new("ClavicleL", "clavicle_L"),
            new("ClavicleR", "clavicle_R"),
            new("UpperArmL", "arm_upper_L"),
            new("UpperArmR", "arm_upper_R"),
            new("LowerArmL", "arm_lower_L"),
            new("LowerArmR", "arm_lower_R"),
            new("HandL", "hand_L"),
            new("HandR", "hand_R"),
            new("ThumbMetaL", "finger_thumb_meta_L"),
            new("ThumbProxL", "finger_thumb_0_L"),
            new("ThumbMidL", "finger_thumb_1_L"),
            new("ThumbDistL", "finger_thumb_2_L"),
            new("ThumbMetaR", "finger_thumb_meta_R"),
            new("ThumbProxR", "finger_thumb_0_R"),
            new("ThumbMidR", "finger_thumb_1_R"),
            new("ThumbDistR", "finger_thumb_2_R"),
            new("IndexMetaL", "finger_index_meta_L"),
            new("IndexProxL", "finger_index_0_L"),
            new("IndexMidL", "finger_index_1_L"),
            new("IndexDistL", "finger_index_2_L"),
            new("IndexMetaR", "finger_index_meta_R"),
            new("IndexProxR", "finger_index_0_R"),
            new("IndexMidR", "finger_index_1_R"),
            new("IndexDistR", "finger_index_2_R"),
            new("MiddleMetaL", "finger_middle_meta_L"),
            new("MiddleProxL", "finger_middle_0_L"),
            new("MiddleMidL", "finger_middle_1_L"),
            new("MiddleDistL", "finger_middle_2_L"),
            new("MiddleMetaR", "finger_middle_meta_R"),
            new("MiddleProxR", "finger_middle_0_R"),
            new("MiddleMidR", "finger_middle_1_R"),
            new("MiddleDistR", "finger_middle_2_R"),
            new("RingMetaL", "finger_ring_meta_L"),
            new("RingProxL", "finger_ring_0_L"),
            new("RingMidL", "finger_ring_1_L"),
            new("RingDistL", "finger_ring_2_L"),
            new("RingMetaR", "finger_ring_meta_R"),
            new("RingProxR", "finger_ring_0_R"),
            new("RingMidR", "finger_ring_1_R"),
            new("RingDistR", "finger_ring_2_R"),
            new("PinkyMetaL", "finger_pinky_meta_L"),
            new("PinkyProxL", "finger_pinky_0_L"),
            new("PinkyMidL", "finger_pinky_1_L"),
            new("PinkyDistL", "finger_pinky_2_L"),
            new("PinkyMetaR", "finger_pinky_meta_R"),
            new("PinkyProxR", "finger_pinky_0_R"),
            new("PinkyMidR", "finger_pinky_1_R"),
            new("PinkyDistR", "finger_pinky_2_R"),
        ]),
        new("smpl", ["^m_avg_", "^f_avg_"], [
            new("ClavicleL", "L_Collar"),
            new("ClavicleL", "left_collar"),
            new("ClavicleR", "R_Collar"),
            new("ClavicleR", "right_collar"),
            new("UpperArmL", "L_Shoulder"),
            new("UpperArmL", "left_shoulder"),
            new("UpperArmR", "R_Shoulder"),
            new("UpperArmR", "right_shoulder"),
            new("LowerArmL", "L_Elbow"),
            new("LowerArmL", "left_elbow"),
            new("LowerArmR", "R_Elbow"),
            new("LowerArmR", "right_elbow"),
            new("HandL", "L_Wrist"),
            new("HandL", "left_wrist"),
            new("HandR", "R_Wrist"),
            new("HandR", "right_wrist"),
        ]),
        new("smpl_x", ["^m_avg_", "^f_avg_"], [
            new("ClavicleL", "L_Collar"),
            new("ClavicleL", "left_collar"),
            new("ClavicleR", "R_Collar"),
            new("ClavicleR", "right_collar"),
            new("UpperArmL", "L_Shoulder"),
            new("UpperArmL", "left_shoulder"),
            new("UpperArmR", "R_Shoulder"),
            new("UpperArmR", "right_shoulder"),
            new("LowerArmL", "L_Elbow"),
            new("LowerArmL", "left_elbow"),
            new("LowerArmR", "R_Elbow"),
            new("LowerArmR", "right_elbow"),
            new("HandL", "L_Wrist"),
            new("HandL", "left_wrist"),
            new("HandR", "R_Wrist"),
            new("HandR", "right_wrist"),
            new("ThumbProxL", "left_thumb1"),
            new("ThumbMidL", "left_thumb2"),
            new("ThumbDistL", "left_thumb3"),
            new("ThumbProxR", "right_thumb1"),
            new("ThumbMidR", "right_thumb2"),
            new("ThumbDistR", "right_thumb3"),
            new("IndexProxL", "left_index1"),
            new("IndexMidL", "left_index2"),
            new("IndexDistL", "left_index3"),
            new("IndexProxR", "right_index1"),
            new("IndexMidR", "right_index2"),
            new("IndexDistR", "right_index3"),
            new("MiddleProxL", "left_middle1"),
            new("MiddleMidL", "left_middle2"),
            new("MiddleDistL", "left_middle3"),
            new("MiddleProxR", "right_middle1"),
            new("MiddleMidR", "right_middle2"),
            new("MiddleDistR", "right_middle3"),
            new("RingProxL", "left_ring1"),
            new("RingMidL", "left_ring2"),
            new("RingDistL", "left_ring3"),
            new("RingProxR", "right_ring1"),
            new("RingMidR", "right_ring2"),
            new("RingDistR", "right_ring3"),
            new("PinkyProxL", "left_pinky1"),
            new("PinkyMidL", "left_pinky2"),
            new("PinkyDistL", "left_pinky3"),
            new("PinkyProxR", "right_pinky1"),
            new("PinkyMidR", "right_pinky2"),
            new("PinkyDistR", "right_pinky3"),
        ]),
        new("soma_bvh", [], [
            new("ClavicleL", "LeftShoulder"),
            new("ClavicleR", "RightShoulder"),
            new("UpperArmL", "LeftArm"),
            new("UpperArmR", "RightArm"),
            new("LowerArmL", "LeftForeArm"),
            new("LowerArmR", "RightForeArm"),
            new("HandL", "LeftHand"),
            new("HandR", "RightHand"),
            new("ThumbProxL", "LeftHandThumb1"),
            new("ThumbMidL", "LeftHandThumb2"),
            new("ThumbDistL", "LeftHandThumb3"),
            new("ThumbProxR", "RightHandThumb1"),
            new("ThumbMidR", "RightHandThumb2"),
            new("ThumbDistR", "RightHandThumb3"),
            new("IndexMetaL", "LeftHandIndex1"),
            new("IndexProxL", "LeftHandIndex2"),
            new("IndexMidL", "LeftHandIndex3"),
            new("IndexDistL", "LeftHandIndex4"),
            new("IndexMetaR", "RightHandIndex1"),
            new("IndexProxR", "RightHandIndex2"),
            new("IndexMidR", "RightHandIndex3"),
            new("IndexDistR", "RightHandIndex4"),
            new("MiddleMetaL", "LeftHandMiddle1"),
            new("MiddleProxL", "LeftHandMiddle2"),
            new("MiddleMidL", "LeftHandMiddle3"),
            new("MiddleDistL", "LeftHandMiddle4"),
            new("MiddleMetaR", "RightHandMiddle1"),
            new("MiddleProxR", "RightHandMiddle2"),
            new("MiddleMidR", "RightHandMiddle3"),
            new("MiddleDistR", "RightHandMiddle4"),
            new("RingMetaL", "LeftHandRing1"),
            new("RingProxL", "LeftHandRing2"),
            new("RingMidL", "LeftHandRing3"),
            new("RingDistL", "LeftHandRing4"),
            new("RingMetaR", "RightHandRing1"),
            new("RingProxR", "RightHandRing2"),
            new("RingMidR", "RightHandRing3"),
            new("RingDistR", "RightHandRing4"),
            new("PinkyMetaL", "LeftHandPinky1"),
            new("PinkyProxL", "LeftHandPinky2"),
            new("PinkyMidL", "LeftHandPinky3"),
            new("PinkyDistL", "LeftHandPinky4"),
            new("PinkyMetaR", "RightHandPinky1"),
            new("PinkyProxR", "RightHandPinky2"),
            new("PinkyMidR", "RightHandPinky3"),
            new("PinkyDistR", "RightHandPinky4"),
        ]),
        new("ue_mannequin", [], [
            new("ClavicleL", "clavicle_l"),
            new("ClavicleR", "clavicle_r"),
            new("UpperArmL", "upperarm_l"),
            new("UpperArmR", "upperarm_r"),
            new("LowerArmL", "lowerarm_l"),
            new("LowerArmR", "lowerarm_r"),
            new("HandL", "hand_l"),
            new("HandR", "hand_r"),
            new("ThumbProxL", "thumb_01_l"),
            new("ThumbMidL", "thumb_02_l"),
            new("ThumbDistL", "thumb_03_l"),
            new("ThumbProxR", "thumb_01_r"),
            new("ThumbMidR", "thumb_02_r"),
            new("ThumbDistR", "thumb_03_r"),
            new("IndexMetaL", "index_metacarpal_l"),
            new("IndexProxL", "index_01_l"),
            new("IndexMidL", "index_02_l"),
            new("IndexDistL", "index_03_l"),
            new("IndexMetaR", "index_metacarpal_r"),
            new("IndexProxR", "index_01_r"),
            new("IndexMidR", "index_02_r"),
            new("IndexDistR", "index_03_r"),
            new("MiddleMetaL", "middle_metacarpal_l"),
            new("MiddleProxL", "middle_01_l"),
            new("MiddleMidL", "middle_02_l"),
            new("MiddleDistL", "middle_03_l"),
            new("MiddleMetaR", "middle_metacarpal_r"),
            new("MiddleProxR", "middle_01_r"),
            new("MiddleMidR", "middle_02_r"),
            new("MiddleDistR", "middle_03_r"),
            new("RingMetaL", "ring_metacarpal_l"),
            new("RingProxL", "ring_01_l"),
            new("RingMidL", "ring_02_l"),
            new("RingDistL", "ring_03_l"),
            new("RingMetaR", "ring_metacarpal_r"),
            new("RingProxR", "ring_01_r"),
            new("RingMidR", "ring_02_r"),
            new("RingDistR", "ring_03_r"),
            new("PinkyMetaL", "pinky_metacarpal_l"),
            new("PinkyProxL", "pinky_01_l"),
            new("PinkyMidL", "pinky_02_l"),
            new("PinkyDistL", "pinky_03_l"),
            new("PinkyMetaR", "pinky_metacarpal_r"),
            new("PinkyProxR", "pinky_01_r"),
            new("PinkyMidR", "pinky_02_r"),
            new("PinkyDistR", "pinky_03_r"),
        ]),
        new("valvebiped", ["^ValveBiped\\.Bip01_"], [
            new("ClavicleL", "L_Clavicle"),
            new("ClavicleR", "R_Clavicle"),
            new("UpperArmL", "L_UpperArm"),
            new("UpperArmR", "R_UpperArm"),
            new("LowerArmL", "L_Forearm"),
            new("LowerArmR", "R_Forearm"),
            new("HandL", "L_Hand"),
            new("HandR", "R_Hand"),
            new("ThumbProxL", "L_Finger0"),
            new("ThumbMidL", "L_Finger01"),
            new("ThumbDistL", "L_Finger02"),
            new("ThumbProxR", "R_Finger0"),
            new("ThumbMidR", "R_Finger01"),
            new("ThumbDistR", "R_Finger02"),
            new("IndexProxL", "L_Finger1"),
            new("IndexMidL", "L_Finger11"),
            new("IndexDistL", "L_Finger12"),
            new("IndexProxR", "R_Finger1"),
            new("IndexMidR", "R_Finger11"),
            new("IndexDistR", "R_Finger12"),
            new("MiddleProxL", "L_Finger2"),
            new("MiddleMidL", "L_Finger21"),
            new("MiddleDistL", "L_Finger22"),
            new("MiddleProxR", "R_Finger2"),
            new("MiddleMidR", "R_Finger21"),
            new("MiddleDistR", "R_Finger22"),
            new("RingProxL", "L_Finger3"),
            new("RingMidL", "L_Finger31"),
            new("RingDistL", "L_Finger32"),
            new("RingProxR", "R_Finger3"),
            new("RingMidR", "R_Finger31"),
            new("RingDistR", "R_Finger32"),
            new("PinkyProxL", "L_Finger4"),
            new("PinkyMidL", "L_Finger41"),
            new("PinkyDistL", "L_Finger42"),
            new("PinkyProxR", "R_Finger4"),
            new("PinkyMidR", "R_Finger41"),
            new("PinkyDistR", "R_Finger42"),
        ]),
        new("vrm", [], [
            new("ClavicleL", "J_Bip_L_Shoulder"),
            new("ClavicleR", "J_Bip_R_Shoulder"),
            new("UpperArmL", "J_Bip_L_UpperArm"),
            new("UpperArmR", "J_Bip_R_UpperArm"),
            new("LowerArmL", "J_Bip_L_LowerArm"),
            new("LowerArmR", "J_Bip_R_LowerArm"),
            new("HandL", "J_Bip_L_Hand"),
            new("HandR", "J_Bip_R_Hand"),
            new("ThumbProxL", "J_Bip_L_Thumb1"),
            new("ThumbMidL", "J_Bip_L_Thumb2"),
            new("ThumbDistL", "J_Bip_L_Thumb3"),
            new("ThumbProxR", "J_Bip_R_Thumb1"),
            new("ThumbMidR", "J_Bip_R_Thumb2"),
            new("ThumbDistR", "J_Bip_R_Thumb3"),
            new("IndexProxL", "J_Bip_L_Index1"),
            new("IndexMidL", "J_Bip_L_Index2"),
            new("IndexDistL", "J_Bip_L_Index3"),
            new("IndexProxR", "J_Bip_R_Index1"),
            new("IndexMidR", "J_Bip_R_Index2"),
            new("IndexDistR", "J_Bip_R_Index3"),
            new("MiddleProxL", "J_Bip_L_Middle1"),
            new("MiddleMidL", "J_Bip_L_Middle2"),
            new("MiddleDistL", "J_Bip_L_Middle3"),
            new("MiddleProxR", "J_Bip_R_Middle1"),
            new("MiddleMidR", "J_Bip_R_Middle2"),
            new("MiddleDistR", "J_Bip_R_Middle3"),
            new("RingProxL", "J_Bip_L_Ring1"),
            new("RingMidL", "J_Bip_L_Ring2"),
            new("RingDistL", "J_Bip_L_Ring3"),
            new("RingProxR", "J_Bip_R_Ring1"),
            new("RingMidR", "J_Bip_R_Ring2"),
            new("RingDistR", "J_Bip_R_Ring3"),
            new("PinkyProxL", "J_Bip_L_Little1"),
            new("PinkyMidL", "J_Bip_L_Little2"),
            new("PinkyDistL", "J_Bip_L_Little3"),
            new("PinkyProxR", "J_Bip_R_Little1"),
            new("PinkyMidR", "J_Bip_R_Little2"),
            new("PinkyDistR", "J_Bip_R_Little3"),
        ]),
        new("xsens_mvn", [], [
            new("ClavicleL", "LeftShoulder"),
            new("ClavicleR", "RightShoulder"),
            new("UpperArmL", "LeftUpperArm"),
            new("UpperArmR", "RightUpperArm"),
            new("LowerArmL", "LeftForeArm"),
            new("LowerArmR", "RightForeArm"),
            new("HandL", "LeftHand"),
            new("HandR", "RightHand"),
        ]),
    ];
}