!function(s){s.ClassManager=class{constructor(){return this.isInit||(this.bodyDataSet=document.body.dataset,this.bodyClasslist=document.body.classList,this.INDWrapClasslist=s.INDWrap.classList,this.INDWrapDataset=s.INDWrap.dataset,this.docDataset=document.documentElement.dataset,this.excludes=["indRatio"],this.indREGEX=/^ind/g,this.storage={doc:[],body:[]},this.init()),this}init(){if(this.isInit)this.restore();else{let t=[`IND${s.isDesktop?"Desktop":"Mobile"}`,`IND${s?.browser?.name?.trim()||"chrome"}`,`INDlangdir${s.langDir.toUpperCase().trim()||s.langDir.toUpperCase().trim()}`,`IND${s.a11y.camelCase(`position-${s.menuPos||"left"}`).trim()}`];[...Array.from(this.bodyClasslist),...Array.from(this.INDWrapClasslist),...t].forEach(s=>{/^IND/g.test(s)&&!this.excludes.includes(s)&&this.add(s)}),this.isInit=!0}}restore(){this.bodyDataSet=document.body.dataset,this.bodyClasslist=document.body.classList,this.INDWrapClasslist=s.INDWrap.classList,this.INDWrapDataset=s.INDWrap.dataset;let t=[...this.storage.doc,...this.storage.body];t.length&&t.filter(s=>/^ind/.test(s.key)&&!this.excludes.includes(s.key)).forEach(s=>{s.root&&(this.docDataset[s.key]=s.value),this.bodyClasslist.add(s.value),this.INDWrapClasslist.add(s.value),this.bodyDataSet[s.key]=s.value,this.INDWrapDataset[s.key]=s.value})}add(t,a=!1){let e=this||s.classManager;if(!t)return;let i=e.parseATTR(t);a&&!e.isExistInArr(t,e.storage.doc)&&(e.storage.doc.push({key:i,value:t,root:!0}),e.docDataset[i]=t),e.isExistInArr(t,e.storage.body)||(e.storage.body.push({key:i,value:t}),e.bodyDataSet[i]=t,e.INDWrapDataset[i]=t,e.bodyClasslist.add(t),e.INDWrapClasslist.add(t))}remove(t,a=!1){let e=this||s.classManager;if(!t)return;let i=e.parseATTR(t);if(a){let r=e.storage.doc.findIndex(s=>s.key==i);r>=0&&(e.storage.doc.splice(r,1),delete e.docDataset[i])}let l=e.storage.body.findIndex(s=>s.key==i);l>=0&&e.storage.body.splice(l,1),delete e.bodyDataSet[i],delete e.INDWrapDataset[i],e.bodyClasslist.remove(t),e.INDWrapClasslist.remove(t)}parseATTR(s){return s.replace(/\-/g,"").toLowerCase()}isExistInArr(s,t){return t.findIndex(t=>s==t.value)>=0}},s.classManager?s.classManager.restore():(s.classManager=new s.ClassManager,s.a11y.classStorage=()=>s.classManager,s.classManager.init())}(interdeal);