public Statist TrackingAnimates(TrackingElement element)
        {
            CreateTrackingBehaviorIfNotExists();
            SettingElementTo(element, VRC_AnimatorTrackingControl.TrackingType.Animation);

            return(this);
        }
        private void SettingElementTo(TrackingElement element, VRC_AnimatorTrackingControl.TrackingType target)
        {
            switch (element)
            {
            case TrackingElement.Head:
                _tracking.trackingHead = target;
                break;

            case TrackingElement.LeftHand:
                _tracking.trackingLeftHand = target;
                break;

            case TrackingElement.RightHand:
                _tracking.trackingRightHand = target;
                break;

            case TrackingElement.Hip:
                _tracking.trackingHip = target;
                break;

            case TrackingElement.LeftFoot:
                _tracking.trackingLeftFoot = target;
                break;

            case TrackingElement.RightFoot:
                _tracking.trackingRightFoot = target;
                break;

            case TrackingElement.LeftFingers:
                _tracking.trackingLeftFingers = target;
                break;

            case TrackingElement.RightFingers:
                _tracking.trackingRightFingers = target;
                break;

            case TrackingElement.Eyes:
                _tracking.trackingEyes = target;
                break;

            case TrackingElement.Mouth:
                _tracking.trackingMouth = target;
                break;

            default:
                throw new ArgumentOutOfRangeException(nameof(element), element, null);
            }
        }