internal void FillVirtualGroupStates()
            {
                Dictionary <string, bool> tmpVGS = new Dictionary <string, bool>();

                foreach (AccTriggerInfo Part in CurOutfitTriggerInfo.Parts)
                {
                    if (Part.Kind >= 9)
                    {
                        if (!Part.Group.IsNullOrEmpty())
                        {
                            if (VirtualGroupStates.ContainsKey(Part.Group))
                            {
                                tmpVGS[Part.Group] = VirtualGroupStates[Part.Group];
                            }
                            else
                            {
                                tmpVGS[Part.Group] = true;
                            }
                        }
                    }
                }
                VirtualGroupStates = tmpVGS.ToDictionary(entry => entry.Key, entry => entry.Value);
            }
            internal void SyncAllAccToggle()
            {
                Logger.Log(DebugLogLevel, $"[SyncAllAccToggle][{ChaControl.chaFile.parameter?.fullname}] Fired!!");

                if ((MakerAPI.InsideMaker) && (!CharaMakerPreview.Value))
                {
#if DEBUG
                    Logger.LogInfo($"[SyncAllAccToggle][{ChaControl.chaFile.parameter?.fullname}] Disabled by config");
#endif
                    return;
                }
                if (!TriggerEnabled)
                {
                    Logger.Log(DebugLogLevel, $"[SyncAllAccToggle][{ChaControl.chaFile.parameter?.fullname}] TriggerEnabled false");
                    return;
                }

                foreach (AccTriggerInfo Part in CurOutfitTriggerInfo.Parts)
                {
                    if (MathfEx.RangeEqualOn(0, Part.Kind, 7))
                    {
                        int  state = ChaControl.fileStatus.clothesState[Part.Kind];
                        bool vis   = Part.State[state];
                        Logger.Log(DebugLogLevel, $"[SyncAllAccToggle][{ChaControl.chaFile.parameter?.fullname}][slot: {Part.Slot}][kind: {Part.Kind}][state: {state}][vis: {vis}]");
                        ChaControl.SetAccessoryState(Part.Slot, vis);
                    }
                    else if ((Part.Kind >= 9) && (!Part.Group.IsNullOrEmpty()))
                    {
                        bool vis = true;
                        if (VirtualGroupStates.ContainsKey(Part.Group))
                        {
                            vis = VirtualGroupStates[Part.Group] ? Part.State[0] : Part.State[3];
                        }
                        ChaControl.SetAccessoryState(Part.Slot, vis);
                    }
                }
            }