/// <summary>
        /// パス・トークンを指定すると ステートを返す。
        /// </summary>
        public static AnimatorState FetchState(AnimatorController ac, FullpathTokens ft)
        {
            AnimatorControllerLayer layer          = AconFetcher.FetchLayer_JustLayerName(ac, ft.LayerNameEndsWithoutDot);
            AnimatorStateMachine    currentMachine = layer.stateMachine;

            if (null == currentMachine)
            {
                throw new UnityException("Not found layer. nodes=[" + ft.StatemachinePath + "]");
            }

            // ステートマシンが途中にある場合、最後のステートマシンまで降りていく。
            if (0 < ft.StatemachineNamesEndsWithoutDot.Count)
            {
                currentMachine = FetchLeafMachine_ofState(currentMachine, ft.StatemachineNamesEndsWithoutDot);
                if (null == currentMachine)
                {
                    throw new UnityException("Not found node. currentMachine.name=[" + currentMachine.name + "] nodes=[" + ft.StatemachinePath + "]");
                }
            }

            return(FetchChildState_ofState(currentMachine, ft.StateName));
        }
        public static PositionRecord.PositionWrapper FetchPosition(AnimatorController ac, string layerNameEndsWithoutDot, List <string> statemachineNamesEndsWithoutDot, string propertyname_ofFullpath)
        {
            AnimatorControllerLayer layer = AconFetcher.FetchLayer_JustLayerName(ac, layerNameEndsWithoutDot);

            return(FetchPosition(ac, layer, statemachineNamesEndsWithoutDot, propertyname_ofFullpath));
        }