{"version":3,"file":"./index.bundle.js","mappings":";;;;;;;;;AAAA,gHAA+C;;;;;;;;;;;;;;;;;;ACAY;AAC3D;AACA,iEAAe,iEAAiB,EAAC;;;;;;;;;;;;;;;;ACFjC,iEAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,yCAAyC;AAC1F;AACA;AACA;AACA;AACA,0BAA0B,+BAA+B,MAAM;AAC/D,mDAAmD,WAAW;AAC9D,oDAAoD,YAAY;AAChE;AACA;AACA;AACA,oCAAoC,gBAAgB;AACpD;AACA,0BAA0B;AAC1B,sDAAsD,UAAU;AAChE,wCAAwC,iBAAiB;AACzD;AACA;AACA,0BAA0B;AAC1B;AACA,wCAAwC,iBAAiB;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;ACxEA,iEAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,+BAA+B,MAAM;AAC/C;AACA,0CAA0C,gBAAgB;AAC1D,yCAAyC,aAAa;AACtD,0BAA0B,aAAa,IAAI,eAAe;AAC1D;AACA;AACA,0CAA0C,eAAe;AACzD,yCAAyC,YAAY,qBAAqB,kCAAkC;AAC5G,0BAA0B,YAAY,IAAI,cAAc;AACxD;AACA;AACA,0CAA0C,cAAc;AACxD,yCAAyC,WAAW,oBAAoB,iCAAiC;AACzG,0BAA0B,WAAW,IAAI,aAAa;AACtD;AACA;AACA;AACA,wBAAwB,UAAU;AAClC;AACA,wCAAwC,YAAY;AACpD;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;AC5E4C;AACH;AACzC;AACA;AACgC;AAChC;AACe;AACf;AACA,YAAY,iDAAO;AACnB,wCAAwC,iDAAO;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,sDAAW;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,eAAe,SAAS;AACxB,eAAe,SAAS;AACxB,eAAe,SAAS;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,YAAY,iDAAO;AACnB;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,SAAS;AACT,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,2DAAS;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;IC3PqBA;AACpB,iBAAc;AAAA;;AACb,SAAKC,mBAAL,GAA2B,EAA3B;AACA,SAAKC,gBAAL,GAAwB,EAAxB;AACA,SAAKC,uBAAL,GAA+B,CAA/B;AACA,SAAKC,cAAL,GAAsB,IAAtB;AACA,SAAKC,cAAL,GAAsB,KAAtB;AAEA,SAAKC,mBAAL,GAA2B,EAA3B;AACA,SAAKC,gBAAL,GAAwB,EAAxB;AACA,SAAKC,uBAAL,GAA+B,CAA/B;AACA,SAAKC,cAAL,GAAsB,IAAtB;AACA,SAAKC,cAAL,GAAsB,KAAtB;AAEA,SAAKC,gCAAL,GAAwC,GAAxC;AAEA,SAAKC,WAAL,GAAmB;AAClBC,MAAAA,EAAE,EAAE;AACHC,QAAAA,MAAM,EAAE,EADL;AAEHC,QAAAA,IAAI,EAAE;AAFH,OADc;AAKlBC,MAAAA,EAAE,EAAE;AACHF,QAAAA,MAAM,EAAE,EADL;AAEHC,QAAAA,IAAI,EAAE;AAFH,OALc;AASlBE,MAAAA,EAAE,EAAE;AACHH,QAAAA,MAAM,EAAE,EADL;AAEHC,QAAAA,IAAI,EAAE;AAFH,OATc;AAalBG,MAAAA,EAAE,EAAE;AACHJ,QAAAA,MAAM,EAAE,EADL;AAEHC,QAAAA,IAAI,EAAE;AAFH,OAbc;AAiBlBI,MAAAA,EAAE,EAAE;AACHL,QAAAA,MAAM,EAAE,EADL;AAEHC,QAAAA,IAAI,EAAE;AAFH;AAjBc,KAAnB;AAsBA;;;;WAED,gBAAO;AACN,WAAKK,aAAL;AACA,WAAKC,iBAAL;AACA,WAAKC,kBAAL;AACA,WAAKC,wBAAL;AACA,WAAKC,kBAAL;AACA,WAAKC,WAAL;AACA,WAAKC,oBAAL;AACA,WAAKC,aAAL;AACA,WAAKC,SAAL;AACA,WAAKC,QAAL;AACA,WAAKC,YAAL;AACA,WAAKC,eAAL;AACA,WAAKC,iBAAL;AACA,WAAKC,cAAL;AAEA,aAAO,IAAP;AACA;;;WAED,6BAAoB;AACnBC,MAAAA,MAAM,CAACC,gBAAP,CAAwB,QAAxB,EAAkC,KAAKC,MAAL,CAAYC,IAAZ,CAAiB,IAAjB,CAAlC,EAA0D;AACzDC,QAAAA,OAAO,EAAE;AADgD,OAA1D;AAGAC,MAAAA,QAAQ,CAACJ,gBAAT,CAA0B,QAA1B,EAAoC,KAAKK,MAAL,CAAYH,IAAZ,CAAiB,IAAjB,CAApC,EAA4D;AAC3DC,QAAAA,OAAO,EAAE;AADkD,OAA5D;AAIAC,MAAAA,QAAQ,CAACE,gBAAT,CAA0B,iBAA1B,EAA6CC,OAA7C,CAAqD,UAAAC,KAAK,EAAI;AAC7DA,QAAAA,KAAK,CAACR,gBAAN,CAAuB,SAAvB,EAAkC,UAAAS,CAAC,EAAI;AACtC,cAAIA,CAAC,CAACC,GAAF,CAAMC,WAAN,GAAoBC,MAApB,CAA2B,CAA3B,EAA8B,CAA9B,KAAoC,KAAxC,EAA+C;AAC9CJ,YAAAA,KAAK,CAACK,KAAN;AACA;AACD,SAJD;AAKA,OAND;AAQAC,MAAAA,KAAK,CAACC,IAAN,CAAWX,QAAQ,CAACE,gBAAT,CAA0B,GAA1B,CAAX,EAA2CU,MAA3C,CAAkD,UAAAC,CAAC;AAAA,eAAI,CAACA,CAAC,CAACC,YAAF,CAAe,MAAf,CAAL;AAAA,OAAnD,EAAgFX,OAAhF,CAAwF,UAAAU,CAAC,EAAI;AAC5F,YAAI,CAACA,CAAC,CAACC,YAAF,CAAe,UAAf,CAAL,EAAiC;AAChCD,UAAAA,CAAC,CAACE,YAAF,CAAe,UAAf,EAA2B,GAA3B;AACA;;AAEDF,QAAAA,CAAC,CAACjB,gBAAF,CAAmB,SAAnB,EAA8B,UAAAS,CAAC,EAAI;AAClC,cAAIA,CAAC,CAACC,GAAF,CAAMC,WAAN,GAAoBC,MAApB,CAA2B,CAA3B,EAA8B,CAA9B,KAAoC,KAAxC,EAA+C;AAC9CK,YAAAA,CAAC,CAACJ,KAAF;AACA;AACD,SAJD;AAKA,OAVD;AAWA;;;WAED,kBAAS;AAAA;;AACR,UAAMO,YAAY,GAAG,SAAfA,YAAe,GAAM;AAC1B,aAAK,IAAIC,CAAC,GAAG,CAAR,EAAWC,MAAM,GAAG,KAAI,CAACxD,mBAAL,CAAyBwD,MAAlD,EAA0DD,CAAC,GAAGC,MAA9D,EAAsED,CAAC,EAAvE,EAA2E;AAC1E,eAAI,CAACvD,mBAAL,CAAyBuD,CAAzB;AACA;AACD,OAJD;;AAKA,UAAI,KAAKpD,cAAL,KAAwB,IAA5B,EAAkC;AACjC;AACA;;AACDmD,MAAAA,YAAY;;AACZ,UAAI,KAAKlD,cAAT,EAAyB;AACxB,aAAKD,cAAL,GAAsBsD,UAAU,CAAC,YAAM;AACtC,eAAI,CAACtD,cAAL,GAAsB,IAAtB;AACAmD,UAAAA,YAAY;AACZ,SAH+B,EAG7B,KAAKlD,cAHwB,CAAhC;AAIA;AACD;AAED;AACD;AACA;;;;WACC,6BAAoBsD,IAApB,EAA0B;AAAA;;AACzB,WAAKzD,gBAAL,CAAsB,KAAKC,uBAA3B,IAAsDwD,IAAtD;AACA,WAAKxD,uBAAL,GAA+B,KAAKA,uBAAL,GAA+B,CAA9D,CAFyB,CAIzB;;AACA,WAAKF,mBAAL,GAA2B,EAA3B;AACA2D,MAAAA,MAAM,CAACC,IAAP,CAAY,KAAK3D,gBAAjB,EAAmCwC,OAAnC,CAA2C,UAAAG,GAAG,EAAI;AACjD,cAAI,CAAC5C,mBAAL,CAAyB6D,IAAzB,CAA8B,MAAI,CAAC5D,gBAAL,CAAsB2C,GAAtB,CAA9B;AACA,OAFD;AAIA,aAAO,KAAK1C,uBAAL,GAA+B,CAAtC;AACA;AAED;AACD;AACA;;;;WACC,+BAAsBwD,IAAtB,EAA4B;AAAA;;AAC3B,UAAI,KAAKzD,gBAAL,CAAsByD,IAAtB,CAAJ,EAAiC;AAChC;AACA,eAAO,KAAKzD,gBAAL,CAAsByD,IAAtB,CAAP,CAFgC,CAIhC;;AACA,aAAK1D,mBAAL,GAA2B,EAA3B;AACA2D,QAAAA,MAAM,CAACC,IAAP,CAAY,KAAK3D,gBAAjB,EAAmCwC,OAAnC,CAA2C,UAAAG,GAAG,EAAI;AACjD,gBAAI,CAAC5C,mBAAL,CAAyB6D,IAAzB,CAA8B,MAAI,CAAC5D,gBAAL,CAAsB2C,GAAtB,CAA9B;AACA,SAFD;AAIA,eAAO,IAAP;AACA,OAXD,MAWO;AACN;AACA,eAAO,KAAP;AACA;AACD;AAED;AACD;AACA;;;;WACC,kBAAS;AAAA;;AACR,UAAMU,YAAY,GAAG,SAAfA,YAAe,GAAM;AAC1B,aAAK,IAAIC,CAAC,GAAG,CAAR,EAAWC,MAAM,GAAG,MAAI,CAACnD,mBAAL,CAAyBmD,MAAlD,EAA0DD,CAAC,GAAGC,MAA9D,EAAsED,CAAC,EAAvE,EAA2E;AAC1E,gBAAI,CAAClD,mBAAL,CAAyBkD,CAAzB;AACA;AACD,OAJD;;AAKA,UAAI,KAAK/C,cAAL,KAAwB,IAA5B,EAAkC;AACjC;AACA;;AACD8C,MAAAA,YAAY;;AACZ,UAAI,KAAK7C,cAAT,EAAyB;AACxB,aAAKD,cAAL,GAAsBiD,UAAU,CAAC,YAAM;AACtC,gBAAI,CAACjD,cAAL,GAAsB,IAAtB;AACA8C,UAAAA,YAAY;AACZ,SAH+B,EAG7B,KAAK7C,cAHwB,CAAhC;AAIA;AACD;AAED;AACD;AACA;;;;WACC,6BAAoBiD,IAApB,EAA0B;AAAA;;AACzB,WAAKpD,gBAAL,CAAsB,KAAKC,uBAA3B,IAAsDmD,IAAtD;AACA,WAAKnD,uBAAL,GAA+B,KAAKA,uBAAL,GAA+B,CAA9D,CAFyB,CAIzB;;AACA,WAAKF,mBAAL,GAA2B,EAA3B;AACAsD,MAAAA,MAAM,CAACC,IAAP,CAAY,KAAKtD,gBAAjB,EAAmCmC,OAAnC,CAA2C,UAAAG,GAAG,EAAI;AACjD,cAAI,CAACvC,mBAAL,CAAyBwD,IAAzB,CAA8B,MAAI,CAACvD,gBAAL,CAAsBsC,GAAtB,CAA9B;AACA,OAFD;AAIA,aAAO,KAAKrC,uBAAL,GAA+B,CAAtC;AACA;AAED;AACD;AACA;;;;WACC,+BAAsBmD,IAAtB,EAA4B;AAAA;;AAC3B,UAAI,KAAKpD,gBAAL,CAAsBoD,IAAtB,CAAJ,EAAiC;AAChC;AACA,eAAO,KAAKpD,gBAAL,CAAsBoD,IAAtB,CAAP,CAFgC,CAIhC;;AACA,aAAKrD,mBAAL,GAA2B,EAA3B;AACAsD,QAAAA,MAAM,CAACC,IAAP,CAAY,KAAKtD,gBAAjB,EAAmCmC,OAAnC,CAA2C,UAAAG,GAAG,EAAI;AACjD,gBAAI,CAACvC,mBAAL,CAAyBwD,IAAzB,CAA8B,MAAI,CAACvD,gBAAL,CAAsBsC,GAAtB,CAA9B;AACA,SAFD;AAIA,eAAO,IAAP;AACA,OAXD,MAWO;AACN;AACA,eAAO,KAAP;AACA;AACD;AAED;AACD;AACA;;;;WACC,oCAA2B;AAAA;;AAC1B,WAAKkB,WAAL,GAAmB,IAAnB;AACA,WAAKC,WAAL,GAAmB9B,MAAM,CAAC+B,UAA1B;AACA,WAAKC,mBAAL,CAAyB,YAAM;AAC9B,YAAIhC,MAAM,CAAC+B,UAAP,KAAsB,MAAI,CAACD,WAA/B,EAA4C;AAC3CzB,UAAAA,QAAQ,CAAC4B,eAAT,CAAyBC,SAAzB,CAAmCC,GAAnC,CAAuC,mBAAvC;AACAC,UAAAA,YAAY,CAAC,MAAI,CAACP,WAAN,CAAZ;AAEA,gBAAI,CAACA,WAAL,GAAmBL,UAAU,CAAC,YAAM;AACnCnB,YAAAA,QAAQ,CAAC4B,eAAT,CAAyBC,SAAzB,CAAmCG,MAAnC,CAA0C,mBAA1C;AACA,WAF4B,EAE1B,MAAI,CAAC5D,gCAFqB,CAA7B;AAIA,gBAAI,CAACqD,WAAL,GAAmB9B,MAAM,CAAC+B,UAA1B;AACA;AACD,OAXD;AAYA;AAED;AACD;AACA;;;;WACC,8BAAqB;AACpB,UAAMO,UAAU,GAAG,SAAbA,UAAa,GAAM;AACxBjC,QAAAA,QAAQ,CAAC4B,eAAT,CAAyBM,KAAzB,CAA+BC,WAA/B,CAA2C,cAA3C,YAA8DxC,MAAM,CAACyC,WAArE;AACA,OAFD;;AAGA,WAAKT,mBAAL,CAAyBM,UAAzB;AACAA,MAAAA,UAAU;AACV;AAED;AACD;AACA;;;;WACC,yBAAgB;AACf;AACA,UAAII,OAAO,GAAI,CAAC,CAAC1C,MAAM,CAAC2C,GAAT,IAAgB,CAAC,CAACA,GAAG,CAACC,MAAvB,IAAkC,CAAC,CAAC5C,MAAM,CAAC6C,KAA3C,IAAoDC,SAAS,CAACC,SAAV,CAAoBC,OAApB,CAA4B,OAA5B,KAAwC,CAA1G,CAFe,CAIf;;AACA,UAAIC,SAAS,GAAG,OAAOC,cAAP,KAA0B,WAA1C;AAEA,UAAIC,QAAQ,GAAGnD,MAAM,CAAC8C,SAAP,CAAiBC,SAAjB,CAA2BK,KAA3B,CAAiC,SAAjC,CAAf;AAEA,UAAIC,MAAM,GAAGrD,MAAM,CAAC8C,SAAP,CAAiBC,SAAjB,CAA2BK,KAA3B,CAAiC,OAAjC,CAAb;AAEA,UAAIE,QAAQ,GAAGtD,MAAM,CAAC8C,SAAP,CAAiBC,SAAjB,CAA2BK,KAA3B,CAAiC,SAAjC,MAAgDpD,MAAM,CAAC8C,SAAP,CAAiBC,SAAjB,CAA2BK,KAA3B,CAAiC,SAAjC,KAA+CpD,MAAM,CAAC8C,SAAP,CAAiBC,SAAjB,CAA2BK,KAA3B,CAAiC,OAAjC,CAA/C,IAA4FpD,MAAM,CAAC8C,SAAP,CAAiBC,SAAjB,CAA2BK,KAA3B,CAAiC,QAAjC,CAA5I,CAAf,CAXe,CAaf;;AACA,UAAIG,IAAI;AAAG;AAAa,YAAK,IAAI,CAAC,CAAClD,QAAQ,CAACmD,YAA5C,CAde,CAgBf;;AACA,UAAIC,MAAM,GAAG,CAACF,IAAD,IAAS,CAAC,CAACvD,MAAM,CAAC0D,UAA/B,CAjBe,CAmBf;;AACA,UAAIC,QAAQ,GAAG,SAASC,IAAT,CAAcd,SAAS,CAACC,SAAxB,KAAsC,aAAaa,IAAb,CAAkBd,SAAS,CAACe,MAA5B,CAArD,CApBe,CAsBf;;AACA,UAAIC,OAAO,GAAG,CAACH,QAAQ,IAAIjB,OAAb,KAAyB,CAAC,CAAC1C,MAAM,CAAC+D,GAAhD;;AAEA,UAAIrB,OAAJ,EAAa;AACZrC,QAAAA,QAAQ,CAAC4B,eAAT,CAAyBC,SAAzB,CAAmCC,GAAnC,CAAuC,OAAvC;AACA;;AAED,UAAIc,SAAJ,EAAe;AACd5C,QAAAA,QAAQ,CAAC4B,eAAT,CAAyBC,SAAzB,CAAmCC,GAAnC,CAAuC,SAAvC;AACA;;AAED,UAAImB,QAAJ,EAAc;AACbjD,QAAAA,QAAQ,CAAC4B,eAAT,CAAyBC,SAAzB,CAAmCC,GAAnC,CAAuC,QAAvC;AACA;;AAED,UAAIgB,QAAJ,EAAc;AACb9C,QAAAA,QAAQ,CAAC4B,eAAT,CAAyBC,SAAzB,CAAmCC,GAAnC,CAAuC,QAAvC;AACA;;AAED,UAAIkB,MAAJ,EAAY;AACXhD,QAAAA,QAAQ,CAAC4B,eAAT,CAAyBC,SAAzB,CAAmCC,GAAnC,CAAuC,MAAvC;AACA;;AAED,UAAIoB,IAAJ,EAAU;AACTlD,QAAAA,QAAQ,CAAC4B,eAAT,CAAyBC,SAAzB,CAAmCC,GAAnC,CAAuC,IAAvC;AACA;;AAED,UAAIsB,MAAJ,EAAY;AACXpD,QAAAA,QAAQ,CAAC4B,eAAT,CAAyBC,SAAzB,CAAmCC,GAAnC,CAAuC,MAAvC;AACA;;AAED,UAAIwB,QAAJ,EAAc;AACbtD,QAAAA,QAAQ,CAAC4B,eAAT,CAAyBC,SAAzB,CAAmCC,GAAnC,CAAuC,QAAvC;AACA;;AAED,UAAI2B,OAAJ,EAAa;AACZzD,QAAAA,QAAQ,CAAC4B,eAAT,CAAyBC,SAAzB,CAAmCC,GAAnC,CAAuC,OAAvC;AACA;AACD;AAED;AACD;AACA;;;;WACC,8BAAqB;AACpB,UAAI6B,IAAI,GAAG,6BAAX;;AACA,UAAI3D,QAAQ,CAAC4D,aAAT,CAAuB,wBAAvB,CAAJ,EAAsD;AACrDD,QAAAA,IAAI,GAAG3D,QAAQ,CAAC4D,aAAT,CAAuB,wBAAvB,EAAiDC,OAAjD,CAAyDC,aAAhE;AACA;;AAED9D,MAAAA,QAAQ,CAACE,gBAAT,CAA0B,oBAA1B,EAAgDC,OAAhD,CAAwD,UAAAU,CAAC,EAAI;AAC5DA,QAAAA,CAAC,CAACE,YAAF,CAAe,OAAf,EAAwB,UAAGF,CAAC,CAACkD,YAAF,CAAe,OAAf,CAAH,cAA8BJ,IAA9B,EAAqCK,IAArC,GAA4CC,OAA5C,CAAoD,KAApD,EAA2D,GAA3D,CAAxB;AACA,OAFD;AAGA;AAED;AACD;AACA;;;;WACC,uBAAc;AACbjE,MAAAA,QAAQ,CAACE,gBAAT,CAA0B,GAA1B,EAA+BC,OAA/B,CAAuC,UAAAU,CAAC,EAAI;AAC3C,YAAIA,CAAC,CAACqD,IAAF,IAAU,CAACrD,CAAC,CAACC,YAAF,CAAe,KAAf,CAAf,EAAsC;AACrC,cAAID,CAAC,CAACsD,QAAF,IAAcC,QAAQ,CAACD,QAA3B,EAAqC;AACpCtD,YAAAA,CAAC,CAACE,YAAF,CAAe,KAAf,EAAsB,UAAtB;AACA;AACD;AACD,OAND;AAOA;AAED;AACD;AACA;;;;WACC,gCAAuB;AACtB;AACAL,MAAAA,KAAK,CAACC,IAAN,CAAWX,QAAQ,CAACE,gBAAT,CAA0B,OAA1B,CAAX,EAA+CU,MAA/C,CAAsD,UAAAC,CAAC;AAAA,eAAI,CAACA,CAAC,CAACqD,IAAP;AAAA,OAAvD,EAAoE/D,OAApE,CAA4E,UAAAU,CAAC,EAAI;AAChF;AACA,YAAIA,CAAC,CAACwD,aAAN,EAAqB;AACpBxD,UAAAA,CAAC,CAACwD,aAAF,CAAgBxC,SAAhB,CAA0BC,GAA1B,CAA8B,UAA9B;AACA;AACD,OALD,EAFsB,CAStB;;AACApB,MAAAA,KAAK,CAACC,IAAN,CAAWX,QAAQ,CAACE,gBAAT,CAA0B,SAA1B,CAAX,EAAiDU,MAAjD,CAAwD,UAAAC,CAAC;AAAA,eAAIA,CAAC,CAACyD,IAAF,IAAUzD,CAAC,CAACyD,IAAF,IAAU,EAApB,IAA0BzD,CAAC,CAACkD,YAAF,CAAe,MAAf,EAAuBvD,MAAvB,CAA8B,CAA9B,EAAiC,CAAjC,KAAuC,GAAjE,IAAwE,CAACK,CAAC,CAACgD,OAAF,CAAUU,QAAvF;AAAA,OAAzD,EAA0JpE,OAA1J,CAAkK,UAAAU,CAAC,EAAI;AACtKA,QAAAA,CAAC,CAACgD,OAAF,CAAUU,QAAV,GAAqB1D,CAAC,CAACyD,IAAvB;AACA,OAFD;AAGA;AAED;AACD;AACA;;;;WACC,wBAAe;AAAA;;AACd,UAAI3E,MAAM,CAAC4E,QAAX,EAAqB;AACpBvE,QAAAA,QAAQ,CAACE,gBAAT,CAA0B,kBAA1B,EAA8CC,OAA9C,CAAsD,UAAAqE,EAAE,EAAI;AAC3DA,UAAAA,EAAE,CAAC5E,gBAAH,CAAoB,OAApB,EAA6B,UAAAS,CAAC,EAAI;AACjC,gBAAMoE,MAAM,GAAGzE,QAAQ,CAAC4D,aAAT,CAAuBY,EAAE,CAACX,OAAH,CAAWU,QAAlC,CAAf;AAEA,gBAAMG,cAAc,GAAG,MAAI,CAACC,aAAL,CAAmBF,MAAnB,EAA2BG,GAA3B,IAAkCjF,MAAM,CAAC+B,UAAP,GAAoB,MAAI,CAACrD,WAAL,CAAiBK,EAArC,GAA0C,GAA1C,GAAgD,EAAlF,CAAvB;AACAiB,YAAAA,MAAM,CAAC4E,QAAP,CAAgB;AACfK,cAAAA,GAAG,EAAEF,cADU;AAEfG,cAAAA,QAAQ,EAAE;AAFK,aAAhB;AAIA,WARD;AASA,SAVD;AAWA;AACD;AAED;AACD;AACA;AACA;AACA;;;;WACC,gBAAOC,GAAP,EAAYC,GAAZ,EAAiB;AAChB,aAAOC,IAAI,CAACC,KAAL,CAAWD,IAAI,CAACE,MAAL,MAAiBH,GAAG,GAAGD,GAAN,GAAY,CAA7B,IAAkCA,GAA7C,CAAP;AACA;AAED;AACD;AACA;AACA;AACA;;;;WACC,uBAAcN,EAAd,EAAkB;AACjB,UAAMW,GAAG,GAAGX,EAAE,CAACY,qBAAH,EAAZ;AAEA,UAAMC,IAAI,GAAGrF,QAAQ,CAACqF,IAAtB;AACA,UAAMC,KAAK,GAAGtF,QAAQ,CAAC4B,eAAvB;AAEA,UAAM2D,SAAS,GAAG5F,MAAM,CAAC6F,WAAP,IAAsBF,KAAK,CAACC,SAA5B,IAAyCF,IAAI,CAACE,SAAhE;AACA,UAAME,UAAU,GAAG9F,MAAM,CAAC+F,WAAP,IAAsBJ,KAAK,CAACG,UAA5B,IAA0CJ,IAAI,CAACI,UAAlE;AAEA,UAAME,SAAS,GAAGL,KAAK,CAACK,SAAN,IAAmBN,IAAI,CAACM,SAAxB,IAAqC,CAAvD;AACA,UAAMC,UAAU,GAAGN,KAAK,CAACM,UAAN,IAAoBP,IAAI,CAACO,UAAzB,IAAuC,CAA1D;AAEA,UAAMhB,GAAG,GAAGO,GAAG,CAACP,GAAJ,GAAUW,SAAV,GAAsBI,SAAlC;AACA,UAAME,IAAI,GAAGV,GAAG,CAACU,IAAJ,GAAWJ,UAAX,GAAwBG,UAArC;AAEA,aAAO;AACNhB,QAAAA,GAAG,EAAEI,IAAI,CAACc,KAAL,CAAWlB,GAAX,CADC;AAENiB,QAAAA,IAAI,EAAEb,IAAI,CAACc,KAAL,CAAWD,IAAX;AAFA,OAAP;AAIA;;;WAED,2BAAkB;AAAA;;AACjB,WAAKE,oBAAL,GAA4B/F,QAAQ,CAAC4D,aAAT,CAAuB,cAAvB,CAA5B;;AAEA,UAAI,KAAKmC,oBAAT,EAA+B;AAC9B,YAAMC,MAAM,GAAG,KAAKD,oBAAL,CAA0BnC,aAA1B,CAAwC,QAAxC,CAAf;;AACA,YAAM3D,MAAM,GAAG,SAATA,MAAS,GAAM;AACpB,cAAID,QAAQ,CAAC4B,eAAT,CAAyB2D,SAAzB,GAAqC,GAAzC,EAA8C;AAC7C,kBAAI,CAACQ,oBAAL,CAA0BlE,SAA1B,CAAoCC,GAApC,CAAwC,QAAxC;AACA,WAFD,MAEO;AACN,kBAAI,CAACiE,oBAAL,CAA0BlE,SAA1B,CAAoCG,MAApC,CAA2C,QAA3C;AACA;AACD,SAND;;AAQA,aAAKiE,mBAAL,CAAyBhG,MAAM,CAACH,IAAP,CAAY,IAAZ,CAAzB;AAEAkG,QAAAA,MAAM,CAACpG,gBAAP,CAAwB,OAAxB,EAAiC,UAAAsG,SAAS,EAAI;AAC7C,gBAAI,CAACH,oBAAL,CAA0BlE,SAA1B,CAAoCC,GAApC,CAAwC,QAAxC;;AACAkE,UAAAA,MAAM,CAACG,IAAP;AACAxG,UAAAA,MAAM,CAAC4E,QAAP,CAAgB;AACfK,YAAAA,GAAG,EAAE,CADU;AAEfC,YAAAA,QAAQ,EAAE;AAFK,WAAhB;AAIA1D,UAAAA,UAAU,CAAC;AAAA,mBAAM,MAAI,CAAC4E,oBAAL,CAA0BlE,SAA1B,CAAoCG,MAApC,CAA2C,QAA3C,CAAN;AAAA,WAAD,EAA6D,IAA7D,CAAV;AACA,SARD;AASA;AACD;;;WAED,yBAAgB;AACf,UAAIhC,QAAQ,CAACE,gBAAT,CAA0B,aAA1B,EAAyCgB,MAA7C,EAAqD;AACpD,YAAI;AACH,yNAAgEkF,IAAhE,CAAqE,UAAA/F,CAAC,EAAI;AAEzEL,YAAAA,QAAQ,CAACE,gBAAT,CAA0B,aAA1B,EAAyCC,OAAzC,CAAiD,UAAAkG,MAAM,EAAI;AAC1DC,cAAAA,CAAC,CAACD,MAAD,CAAD,CAAUE,SAAV,CAAoB;AACnBC,gBAAAA,iBAAiB;AADE,eAApB;AAGA,aAJD;AAKA,WAPD;AAQA,SATD,CASE,OAAOnG,CAAP,EAAU;AACXoG,UAAAA,OAAO,CAACC,KAAR,CAAcrG,CAAd;AACA;AACD;AACD;AAED;AACD;AACA;;;;WACC,qBAAY;AACX,UAAIL,QAAQ,CAACE,gBAAT,CAA0B,sBAA1B,EAAkDgB,MAAlD,IAA4DlB,QAAQ,CAACE,gBAAT,CAA0B,qBAA1B,EAAiDgB,MAAjH,EAAyH;AACxH,YAAI;AACH,sMAA8DkF,IAA9D,CAAmE,UAAA/F,CAAC,EAAI;AACvE,gBAAMsG,KAAK,GAAGtG,CAAC,WAAf;AACAsG,YAAAA,KAAK,CAAC,sBAAD,CAAL;AAEA,gBAAI3G,QAAQ,CAACE,gBAAT,CAA0B,qBAA1B,EAAiDC,OAAjD,CAAyD,UAAAyG,MAAM,EAAI;AACrE,kBAAMnC,MAAM,GAAGzE,QAAQ,CAAC4D,aAAT,gCAA8CgD,MAAM,CAAC/C,OAAP,CAAegD,WAA7D,SAAf;;AACA,kBAAIpC,MAAJ,EAAY;AACXkC,gBAAAA,KAAK,CAACC,MAAD,EAAS;AACbE,kBAAAA,SAAS,EAAE,IADE;AAEbC,kBAAAA,OAAO,EAAEtC,MAAM,CAACuC,SAFH;AAGbC,kBAAAA,WAAW,EAAExC,MAAM,CAACvE,gBAAP,CAAwB,WAAxB,EAAqCgB,MAArC,GAA8C;AAH9C,iBAAT,CAAL;AAKA;AACD,aATE,CAAJ,EASI;AACJ,WAdD;AAeA,SAhBD,CAgBE,OAAOb,CAAP,EAAU;AACXoG,UAAAA,OAAO,CAACC,KAAR,CAAcrG,CAAd;AACA;AACD;AAED;AAED;AACD;AACA;;;;WACC,oBAAW;AAAA;;AACVL,MAAAA,QAAQ,CAACE,gBAAT,CAA0B,aAA1B,EAAyCC,OAAzC,CAAiD,UAAAqE,EAAE,EAAI;AACtDA,QAAAA,EAAE,CAAC5E,gBAAH,CAAoB,OAApB,EAA6B,YAAM;AAClC,cAAI;AACH,gBAAMsH,WAAW,GAAG1C,EAAE,CAACX,OAAH,CAAWsD,IAA/B;AACA,gBAAMC,KAAK,GAAGpH,QAAQ,CAACqH,aAAT,CAAuB,OAAvB,CAAd;AAEAD,YAAAA,KAAK,CAACE,IAAN,GAAa,MAAb;AACAF,YAAAA,KAAK,CAAClF,KAAN,CAAYqF,QAAZ,GAAuB,UAAvB;AACAH,YAAAA,KAAK,CAAClF,KAAN,CAAYsF,MAAZ,GAAqB,CAArB;AACAJ,YAAAA,KAAK,CAAClF,KAAN,CAAYuF,QAAZ,GAAuB,QAAvB;AACAL,YAAAA,KAAK,CAACM,KAAN,GAAcR,WAAd;AAEAlH,YAAAA,QAAQ,CAACqF,IAAT,CAAcsC,WAAd,CAA0BP,KAA1B;AACAA,YAAAA,KAAK,CAACf,MAAN;AACArG,YAAAA,QAAQ,CAAC4H,WAAT,CAAqB,MAArB;AACAR,YAAAA,KAAK,CAACS,UAAN,CAAiBC,WAAjB,CAA6BV,KAA7B;AACA,WAdD,CAcE,OAAO/G,CAAP,EAAU;AACX,mBAAI,CAAC0H,KAAL,CAAW,iCAAX,EAA8C,OAA9C;;AACAtB,YAAAA,OAAO,CAACC,KAAR,CAAcrG,CAAd;AACA;AACD,SAnBD;AAoBA,OArBD;AAsBA;;;WAED,6BAAoB;AAAA;;AACnB,WAAK2H,UAAL,GAAkBtH,KAAK,CAACC,IAAN,CAAWX,QAAQ,CAACE,gBAAT,CAA0B,cAA1B,CAAX,CAAlB;;AAEA,UAAI,KAAK8H,UAAL,CAAgB9G,MAApB,EAA4B;AAC3B,YAAI+G,aAAa,GAAG,EAApB;AAEAtI,QAAAA,MAAM,CAACC,gBAAP,CAAwB,aAAxB,EAAuC,UAAAS,CAAC,EAAI;AAC3C,iBAAI,CAAC2H,UAAL,CAAgB7H,OAAhB,CAAwB,UAAA+H,WAAW,EAAI;AACtC,gBAAIC,IAAI,GAAGnI,QAAQ,CAACqH,aAAT,CAAuB,MAAvB,CAAX;AACAc,YAAAA,IAAI,CAACnB,SAAL,GAAiBkB,WAAW,CAACrE,OAAZ,CAAoBuE,KAArC;AACAD,YAAAA,IAAI,CAACtG,SAAL,CAAeC,GAAf,CAAmB,WAAnB;AAEAmG,YAAAA,aAAa,CAAC1G,IAAd,CAAmB4G,IAAnB;AAEAD,YAAAA,WAAW,CAACP,WAAZ,CAAwBQ,IAAxB;AACA,WARD;AASA,SAVD;AAYAxI,QAAAA,MAAM,CAACC,gBAAP,CAAwB,YAAxB,EAAsC,UAAAS,CAAC,EAAI;AAC1C4H,UAAAA,aAAa,CAAC9H,OAAd,CAAsB,UAAAkI,YAAY,EAAI;AACrCA,YAAAA,YAAY,CAACrG,MAAb;AACA,WAFD;AAIAiG,UAAAA,aAAa,GAAG,EAAhB;AACA,SAND;AAOA;AACD;;;WAED,0BAAiB;AAChBjI,MAAAA,QAAQ,CAACE,gBAAT,CAA0B,YAA1B,EAAwCC,OAAxC,CAAgD,UAAAC,KAAK,EAAI;AACxDA,QAAAA,KAAK,CAACR,gBAAN,CAAuB,SAAvB,EAAkC,UAAAS,CAAC,EAAI;AAEtC,kBAAQA,CAAC,CAACC,GAAF,CAAMC,WAAN,EAAR;AACC,iBAAK,GAAL;AACCF,cAAAA,CAAC,CAACiI,cAAF;;AACD,iBAAK,OAAL;AACA,iBAAK,OAAL;AACClI,cAAAA,KAAK,CAACK,KAAN;AACA;AANF;AAQA,SAVD;AAWA,OAZD;AAaA;;;WAED,gCAAuB;AAAA;;AACtB,UAAM8H,KAAK,GAAG5I,MAAM,CAAC+B,UAArB;AACA,UAAMrD,WAAW,GAAGgD,MAAM,CAACC,IAAP,CAAY,KAAKjD,WAAjB,EAA8BmK,OAA9B,EAApB;AAEA,UAAIC,iBAAiB,GAAGpK,WAAW,CAACA,WAAW,CAAC6C,MAAZ,GAAqB,CAAtB,CAAnC;AAEA7C,MAAAA,WAAW,CAAC8B,OAAZ,CAAoB,UAAAuI,UAAU,EAAI;AACjC,YAAIH,KAAK,IAAI,OAAI,CAAClK,WAAL,CAAiBqK,UAAjB,EAA6BlK,IAA1C,EAAgD;AAC/CiK,UAAAA,iBAAiB,GAAGC,UAApB;AACA;AACD,OAJD;AAMA,aAAOD,iBAAP;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;ICziBmBE;AACpB,8BAAc;AAAA;;AACb,SAAKC,qBAAL,GAA6B,IAA7B;AACA,SAAKC,aAAL,GAAqB,IAArB;AACA,SAAKC,UAAL,GAAkB,IAAlB;AACA,SAAKC,eAAL,GAAuB,IAAvB;AACA,SAAKC,gBAAL,GAAwB,IAAxB;AAEA,SAAKC,IAAL;AACA,SAAKpJ,MAAL;AACA;;;;WAED,gBAAO;AAAA;;AACN,WAAK+I,qBAAL,GAA6B5I,QAAQ,CAAC4D,aAAT,CAAuB,iBAAvB,CAA7B;AACA,WAAKiF,aAAL,GAAqB7I,QAAQ,CAAC4D,aAAT,CAAuB,QAAvB,CAArB;AACA,WAAKsF,WAAL,GAAmBlJ,QAAQ,CAACE,gBAAT,CAA0B,aAA1B,CAAnB;AACA,WAAK6I,eAAL,GAAuB/I,QAAQ,CAAC4D,aAAT,CAAuB,kBAAvB,CAAvB;AACA,WAAKoF,gBAAL,GAAwBhJ,QAAQ,CAAC4D,aAAT,CAAuB,uBAAvB,CAAxB,CALM,CAON;AACA;;AACAjE,MAAAA,MAAM,CAACwJ,GAAP,CAAWlD,mBAAX,CAA+B,KAAKhG,MAAL,CAAYH,IAAZ,CAAiB,IAAjB,CAA/B,EATM,CAWN;;AACA,WAAKoJ,WAAL,CAAiB/I,OAAjB,CAAyB,UAAA6F,MAAM;AAAA,eAAIA,MAAM,CAACpG,gBAAP,CAAwB,OAAxB,EAAiC,KAAI,CAACwJ,UAAL,CAAgBtJ,IAAhB,CAAqB,KAArB,CAAjC,CAAJ;AAAA,OAA/B;AACA,WAAKiJ,eAAL,CAAqBnJ,gBAArB,CAAsC,OAAtC,EAA+C,KAAKyJ,SAAL,CAAevJ,IAAf,CAAoB,IAApB,CAA/C;AACA,WAAKkJ,gBAAL,CAAsBpJ,gBAAtB,CAAuC,OAAvC,EAAgD,KAAKyJ,SAAL,CAAevJ,IAAf,CAAoB,IAApB,CAAhD,EAdM,CAgBN;AACA;AACA;;AAEAH,MAAAA,MAAM,CAACC,gBAAP,CAAwB,SAAxB,EAAmC,UAAAS,CAAC,EAAI;AACvC,YAAIA,CAAC,CAACC,GAAF,CAAME,MAAN,CAAa,CAAb,EAAgB,CAAhB,EAAmBD,WAAnB,MAAoC,KAAxC,EAA+C;AAC9C,eAAI,CAAC8I,SAAL;AACA;AACD,OAJD;AAKA;;;WAED,sBAAa;AACZrJ,MAAAA,QAAQ,CAACqF,IAAT,CAAcxD,SAAd,CAAwByH,MAAxB,CAA+B,cAA/B;AACA;;;WAED,qBAAY;AACXtJ,MAAAA,QAAQ,CAACqF,IAAT,CAAcxD,SAAd,CAAwBG,MAAxB,CAA+B,cAA/B;AACA;;;WAED,kBAAS;AACR,WAAKuH,cAAL,GAAsB5J,MAAM,CAAC6F,WAA7B;AAEA,WAAKvF,MAAL;AACA;;;WAED,kBAAS;AACR,UAAIN,MAAM,CAAC6F,WAAP,GAAqB,KAAKoD,qBAAL,CAA2BY,YAApD,EAAkE;AACjExJ,QAAAA,QAAQ,CAACqF,IAAT,CAAcxD,SAAd,CAAwBC,GAAxB,CAA4B,YAA5B;AACA,OAFD,MAEO;AACN9B,QAAAA,QAAQ,CAACqF,IAAT,CAAcxD,SAAd,CAAwBG,MAAxB,CAA+B,YAA/B;AACA;AACD;;;WAED,gBAAO;AACN,WAAK6G,aAAL,CAAmBhH,SAAnB,CAA6BC,GAA7B,CAAiC,QAAjC;AACA;;;WAED,gBAAO;AACN,WAAK+G,aAAL,CAAmBhH,SAAnB,CAA6BG,MAA7B,CAAoC,QAApC;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;ICnEmByH;AACnB,gCAAc;AAAA;;AACZ,SAAKC,SAAL,GAAiB,EAAjB;AACA,SAAKC,MAAL,GAAc,EAAd;AACD;;;;WAED,gBAAO;AACL,WAAKC,aAAL;AAEA,aAAOC,OAAO,CAACC,GAAR,CAAY,KAAKJ,SAAjB,CAAP;AACD;;;WAED,yBAAgB;AACd,WAAKvJ,OAAL;AACA,WAAK4J,oBAAL;AACA,WAAKC,KAAL;AACA,WAAKC,eAAL;AACA,WAAKC,KAAL;AACA,WAAKC,OAAL;AACA,WAAKC,MAAL;AACA,WAAKpI,MAAL;AACA,WAAKqI,WAAL;AACD;;;WAED,mBAAU;AACR,UAAI1K,MAAM,CAAC2K,QAAP,IAAmB,CAACA,QAAQ,CAACC,SAAT,CAAmBpK,OAA3C,EAAoD;AAClDmK,QAAAA,QAAQ,CAACC,SAAT,CAAmBpK,OAAnB,GAA6BO,KAAK,CAAC6J,SAAN,CAAgBpK,OAA7C;AACA,aAAKwJ,MAAL,CAAYpI,IAAZ,CAAiB,SAAjB;AACD;AACF;;;WAED,gCAAuB;AACrB,UAAI,EAAE,0BAA0B5B,MAA5B,CAAJ,EAAyC;AACvC,aAAK+J,SAAL,CAAenI,IAAf,CAAoB,gQAApB;AACA,aAAKoI,MAAL,CAAYpI,IAAZ,CAAiB,sBAAjB;AACD;AACF;;;WAED,iBAAQ;AACN,UAAI,CAAC5B,MAAM,CAACqK,KAAZ,EAAmB;AACjB,aAAKN,SAAL,CAAenI,IAAf,CAAoB,0LAApB;AACA,aAAKoI,MAAL,CAAYpI,IAAZ,CAAiB,OAAjB;AACD;AACF;;;WAED,2BAAkB;AAChB,UAAI,OAAOiJ,eAAP,IAA0B,WAA9B,EAA2C;AACzC,aAAKd,SAAL,CAAenI,IAAf,CAAoB,0RAApB;AACA,aAAKoI,MAAL,CAAYpI,IAAZ,CAAiB,iBAAjB;AACD;AACF;;;WAED,iBAAQ;AACN,UAAI,EAAE,WAAW5B,MAAb,CAAJ,EAA0B;AACxB,aAAK+J,SAAL,CAAenI,IAAf,CAAoB,yNAApB;AACA,aAAKoI,MAAL,CAAYpI,IAAZ,CAAiB,OAAjB;AACD;AACF;;;WAED,mBAAU;AACR,UAAI,CAACkJ,OAAO,CAACF,SAAR,CAAkBG,OAAvB,EAAgC;AAC9BD,QAAAA,OAAO,CAACF,SAAR,CAAkBG,OAAlB,GAA4BD,OAAO,CAACF,SAAR,CAAkBI,iBAAlB,IAAuCF,OAAO,CAACF,SAAR,CAAkBK,qBAArF;AACA,aAAKjB,MAAL,CAAYpI,IAAZ,CAAiB,SAAjB;AACD;;AAED,UAAI,CAACkJ,OAAO,CAACF,SAAR,CAAkBJ,OAAvB,EAAgC;AAC9BM,QAAAA,OAAO,CAACF,SAAR,CAAkBJ,OAAlB,GAA4B,UAAUU,CAAV,EAAa;AACvC,cAAIrG,EAAE,GAAG,IAAT;;AACA,aAAG;AACD,gBAAIA,EAAE,CAACkG,OAAH,CAAWG,CAAX,CAAJ,EAAmB,OAAOrG,EAAP;AACnBA,YAAAA,EAAE,GAAGA,EAAE,CAACH,aAAH,IAAoBG,EAAE,CAACqD,UAA5B;AACD,WAHD,QAGSrD,EAAE,KAAK,IAAP,IAAeA,EAAE,CAACsG,QAAH,KAAgB,CAHxC;;AAIA,iBAAO,IAAP;AACD,SAPD;;AAQA,aAAKnB,MAAL,CAAYpI,IAAZ,CAAiB,SAAjB;AACD;AACF;;;WAED,kBAAS;AAAA;;AACP,OAAC,UAAAwJ,GAAG,EAAI;AACNA,QAAAA,GAAG,CAAC5K,OAAJ,CAAY,UAAU6K,IAAV,EAAgB;AAC1B,cAAIA,IAAI,CAACC,cAAL,CAAoB,QAApB,CAAJ,EAAmC;AACjC;AACD;;AACD5J,UAAAA,MAAM,CAAC6J,cAAP,CAAsBF,IAAtB,EAA4B,QAA5B,EAAsC;AACpCG,YAAAA,YAAY,EAAE,IADsB;AAEpCC,YAAAA,UAAU,EAAE,IAFwB;AAGpCC,YAAAA,QAAQ,EAAE,IAH0B;AAIpC3D,YAAAA,KAAK,EAAE,SAAS0C,MAAT,GAAkB;AACvB,kBAAIkB,MAAM,GAAG5K,KAAK,CAAC6J,SAAN,CAAgBgB,KAAhB,CAAsBC,IAAtB,CAA2BC,SAA3B,CAAb;AAAA,kBACEC,OAAO,GAAG1L,QAAQ,CAAC2L,sBAAT,EADZ;AAGAL,cAAAA,MAAM,CAACnL,OAAP,CAAe,UAAUyL,OAAV,EAAmB;AAChC,oBAAIC,MAAM,GAAGD,OAAO,YAAYE,IAAhC;AACAJ,gBAAAA,OAAO,CAAC/D,WAAR,CAAoBkE,MAAM,GAAGD,OAAH,GAAa5L,QAAQ,CAAC+L,cAAT,CAAwBC,MAAM,CAACJ,OAAD,CAA9B,CAAvC;AACD,eAHD;AAKA,mBAAK/D,UAAL,CAAgBoE,YAAhB,CAA6BP,OAA7B,EAAsC,IAAtC;AACD;AAdmC,WAAtC;AAgBD,SApBD;;AAqBA,aAAI,CAAC/B,MAAL,CAAYpI,IAAZ,CAAiB,QAAjB;AACD,OAvBD,EAuBG,CAACkJ,OAAO,CAACF,SAAT,EAAoB2B,aAAa,CAAC3B,SAAlC,EAA6C4B,YAAY,CAAC5B,SAA1D,CAvBH;AAwBD;;;WAED,kBAAS;AAAA;;AACP,OAAC,UAAAQ,GAAG,EAAI;AACNA,QAAAA,GAAG,CAAC5K,OAAJ,CAAY,UAAU6K,IAAV,EAAgB;AAC1B,cAAIA,IAAI,CAACC,cAAL,CAAoB,QAApB,CAAJ,EAAmC;AACjC;AACD;;AACD5J,UAAAA,MAAM,CAAC6J,cAAP,CAAsBF,IAAtB,EAA4B,QAA5B,EAAsC;AACpCG,YAAAA,YAAY,EAAE,IADsB;AAEpCC,YAAAA,UAAU,EAAE,IAFwB;AAGpCC,YAAAA,QAAQ,EAAE,IAH0B;AAIpC3D,YAAAA,KAAK,EAAE,SAAS1F,MAAT,GAAkB;AACvB,kBAAI,KAAK6F,UAAL,KAAoB,IAAxB,EAA8B;AAC5B;AACD;;AACD,mBAAKA,UAAL,CAAgBC,WAAhB,CAA4B,IAA5B;AACD;AATmC,WAAtC;AAWD,SAfD;;AAgBA,cAAI,CAAC6B,MAAL,CAAYpI,IAAZ,CAAiB,QAAjB;AACD,OAlBD,EAkBG,CAACkJ,OAAO,CAACF,SAAT,EAAoB2B,aAAa,CAAC3B,SAAlC,EAA6C4B,YAAY,CAAC5B,SAA1D,CAlBH;AAmBD;;;WAED,uBAAc;AACZ,UAAI,QAAQ6B,KAAR,2GAAQA,KAAR,OAAmB,QAAvB,EAAiC;AAAA,YACtBC,WADsB,GAC/B,SAASA,WAAT,CAAqBC,KAArB,EAA4BC,MAA5B,EAAoC;AAClCA,UAAAA,MAAM,GAAGA,MAAM,IAAI;AACjBC,YAAAA,OAAO,EAAE,KADQ;AAEjBC,YAAAA,UAAU,EAAE,KAFK;AAGjBC,YAAAA,MAAM,EAAExG;AAHS,WAAnB;AAKA,cAAIyG,GAAG,GAAG3M,QAAQ,CAAC4M,WAAT,CAAqB,aAArB,CAAV;AACAD,UAAAA,GAAG,CAACE,eAAJ,CAAoBP,KAApB,EAA2BC,MAAM,CAACC,OAAlC,EAA2CD,MAAM,CAACE,UAAlD,EAA8DF,MAAM,CAACG,MAArE;AACA,iBAAOC,GAAP;AACD,SAV8B;;AAY/BN,QAAAA,WAAW,CAAC9B,SAAZ,GAAwB5K,MAAM,CAACyM,KAAP,CAAa7B,SAArC;AAEA5K,QAAAA,MAAM,CAAC0M,WAAP,GAAqBA,WAArB;AACA1M,QAAAA,MAAM,CAACyM,KAAP,GAAeC,WAAf;AACA,aAAK1C,MAAL,CAAYpI,IAAZ,CAAiB,cAAjB;AACD;AACF;;;;;;;;;;;;;;;;AClJH;AACA;AACA;AACA;AAEA+E,CAAC,CAAC,YAAY;AACbA,EAAAA,CAAC,CAAC,YAAD,CAAD,CAAgBwG,WAAhB,CAA4B,OAA5B;AAEArG,EAAAA,OAAO,CAACsG,GAAR,CAAY,WAAZ;AACAC,EAAAA,IAAI,CAAC/D,IAAL;AAEAxC,EAAAA,OAAO,CAACsG,GAAR,CAAY,gBAAZ;AACAE,EAAAA,SAAS,CAAChE,IAAV;AAEAxC,EAAAA,OAAO,CAACsG,GAAR,CAAY,qBAAZ;AACAG,EAAAA,cAAc,CAACjE,IAAf;AAEAxC,EAAAA,OAAO,CAACsG,GAAR,CAAY,kBAAZ;AACAI,EAAAA,WAAW,CAAClE,IAAZ;AAEAxC,EAAAA,OAAO,CAACsG,GAAR,CAAY,gBAAZ;AACAK,EAAAA,SAAS,CAACnE,IAAV;AAEAxC,EAAAA,OAAO,CAACsG,GAAR,CAAY,aAAZ;AACAM,EAAAA,MAAM,CAACpE,IAAP;AAEAxC,EAAAA,OAAO,CAACsG,GAAR,CAAY,cAAZ;AACAO,EAAAA,OAAO,CAACrE,IAAR;AAEAxC,EAAAA,OAAO,CAACsG,GAAR,CAAY,oBAAZ;AACAQ,EAAAA,aAAa,CAACtE,IAAd;AAEAxC,EAAAA,OAAO,CAACsG,GAAR,CAAY,WAAZ;AACAS,EAAAA,IAAI,CAACvE,IAAL;AAEAxC,EAAAA,OAAO,CAACsG,GAAR,CAAY,qBAAZ;AACAU,EAAAA,cAAc,CAACxE,IAAf;AAEAxC,EAAAA,OAAO,CAACsG,GAAR,CAAY,oBAAZ;AACAW,EAAAA,aAAa,CAACzE,IAAd;AAEAxC,EAAAA,OAAO,CAACsG,GAAR,CAAY,iBAAZ;AACAY,EAAAA,UAAU,CAAC1E,IAAX;;AAGA,MAAI3C,CAAC,CAAC,aAAD,CAAD,CAAiBpF,MAAjB,GAA0B,CAA9B,EAAiC;AAChCuF,IAAAA,OAAO,CAACsG,GAAR,CAAY,iBAAZ;AACAa,IAAAA,UAAU,CAAC3E,IAAX;AACA;;AAGD,MAAI3C,CAAC,CAAC,MAAD,CAAD,CAAUpF,MAAV,GAAmB,CAAvB,EAA0B;AACzBuF,IAAAA,OAAO,CAACsG,GAAR,CAAY,iBAAZ;AACAc,IAAAA,UAAU,CAAC5E,IAAX;AACA,GAjDY,CAoDb;;;AAEAxC,EAAAA,OAAO,CAACsG,GAAR,CAAY,UAAZ;AACAe,EAAAA,GAAG,CAAC7E,IAAJ;AAEAxC,EAAAA,OAAO,CAACsG,GAAR,CAAY,oBAAZ;AACAgB,EAAAA,aAAa,CAAC9E,IAAd;AAEAxC,EAAAA,OAAO,CAACsG,GAAR,CAAY,KAAZ,EA5Da,CA8Db;;AACCtG,EAAAA,OAAO,CAACsG,GAAR,CAAY,cAAZ;AACAiB,EAAAA,OAAO,CAAC/E,IAAR,GAhEY,CAiEb;;AAEA,MAAI3C,CAAC,CAAC,MAAD,CAAD,CAAU2H,QAAV,CAAmB,cAAnB,CAAJ,EAAwC;AACvCxH,IAAAA,OAAO,CAACsG,GAAR,CAAY,iBAAZ;AACAmB,IAAAA,UAAU,CAACjF,IAAX;AACA;;AAEDxC,EAAAA,OAAO,CAACsG,GAAR,CAAY,SAAZ;AAEAzG,EAAAA,CAAC,CAAC,6CAAD,CAAD,CAAiD6H,EAAjD,CAAoD,OAApD,EAA6D,YAAY,CACxE;AACA,GAFD;AAGAC,EAAAA,SAAS,CAACnF,IAAV;AACA,CA9EA,CAAD;AAgFA,IAAI+D,IAAI,GAAG;AACV/D,EAAAA,IAAI,EAAE,gBAAY;AACjB3C,IAAAA,CAAC,CAAC,aAAD,CAAD,CAAiB6H,EAAjB,CAAoB,OAApB,EAA6B,YAAY;AACxC7H,MAAAA,CAAC,CAAC,MAAD,CAAD,CAAU+H,WAAV,CAAsB,UAAtB;AACA,KAFD;AAIA/H,IAAAA,CAAC,CAAC,yBAAD,CAAD,CAA6B6H,EAA7B,CAAgC,OAAhC,EAAyC,YAAY;AACpD,UAAI7H,CAAC,CAAC,KAAKhC,IAAN,CAAD,CAAapD,MAAb,GAAsB,CAA1B,EAA6B;AAC5BoF,QAAAA,CAAC,CAAC,YAAD,CAAD,CAAgBgI,OAAhB,CAAwB;AAAE/I,UAAAA,SAAS,EAAEe,CAAC,CAAC,KAAKhC,IAAN,CAAD,CAAaiK,MAAb,GAAsB3J;AAAnC,SAAxB,EAAkE,GAAlE;AAEA,eAAO,KAAP;AACA;AACD,KAND;AAOA;AAbS,CAAX;AAgBA,IAAIqI,SAAS,GAAG;AACfhE,EAAAA,IAAI,EAAE,gBAAY;AACjB3C,IAAAA,CAAC,CAAC,YAAD,CAAD,CAAgB6H,EAAhB,CAAmB,OAAnB,EAA4B,YAAY;AACvC7H,MAAAA,CAAC,CAAC,YAAD,CAAD,CAAgBgI,OAAhB,CAAwB;AAAE/I,QAAAA,SAAS,EAAEe,CAAC,CAAC,MAAD,CAAD,CAAUiI,MAAV,GAAmB3J;AAAhC,OAAxB,EAA+D,GAA/D;AACA,KAFD;AAGA;AALc,CAAhB;AAQA,IAAIwJ,SAAS,GAAG;AACfnF,EAAAA,IAAI,EAAE,gBAAY;AACjB,QAAI3C,CAAC,CAAC,iBAAD,CAAD,CAAqBpF,MAArB,GAA8B,CAAlC,EAAqC;AACpCoF,MAAAA,CAAC,CAAC,iBAAD,CAAD,CAAqBkI,IAArB,CAA0B,UAAUC,KAAV,EAAiBC,OAAjB,EAA0B;AACnDpI,QAAAA,CAAC,CAACoI,OAAD,CAAD,CAAWvE,OAAX,CAAmB,MAAnB,EAA2BgE,EAA3B,CAA8B,QAA9B,EAAwC,UAAU9N,CAAV,EAAa;AACpDsO,UAAAA,UAAU,CAACC,OAAX;;AACA,cAAItI,CAAC,CAAC,kCAAD,CAAD,CAAsCuI,GAAtC,MAA+C,EAAnD,EAAuD;AACtDxO,YAAAA,CAAC,CAACiI,cAAF;AACA;AACD,SALD;AAMA,OAPD;AAQA;AACD;AAZc,CAAhB;AAeA,IAAI4E,cAAc,GAAG;AACnBjE,EAAAA,IAAI,EAAE,gBAAY;AACjB,QAAI6F,KAAK,GAAG,CAAZ;AACAxI,IAAAA,CAAC,CAAC,eAAD,CAAD,CAAmB6H,EAAnB,CAAsB,OAAtB,EAA+B,UAAU9N,CAAV,EAAa;AAC3CA,MAAAA,CAAC,CAACiI,cAAF;;AAEA,UAAIhC,CAAC,CAAC,IAAD,CAAD,CAAQ2H,QAAR,CAAiB,SAAjB,CAAJ,EAAiC;AAChC,YAAIa,KAAK,GAAG,CAAZ,EAAe;AACdA,UAAAA,KAAK;AACL,SAFD,MAEO;AACN,iBAAO,KAAP;AACA;AACD,OAND,MAMO;AACN,YAAIA,KAAK,GAAG,CAAZ,EAAe;AACdA,UAAAA,KAAK;AACL,SAFD,MAEO;AACN,iBAAO,KAAP;AACA;AACD;;AAEDxI,MAAAA,CAAC,CAAC,MAAD,CAAD,CAAUwG,WAAV,CAAsB,qCAAtB,EAA6DiC,QAA7D,CAAsE,eAAeD,KAArF;AACA,KAlBD;AAmBA;AAtBkB,CAArB;AAyBC,IAAI3B,WAAW,GAAG;AACjBlE,EAAAA,IAAI,EAAE,gBAAY;AACjB,QAAI+F,QAAQ,GAAG1I,CAAC,CAAC,aAAD,CAAhB;AAEAA,IAAAA,CAAC,CAAC,yCAAD,CAAD,CAA6C6H,EAA7C,CAAgD,OAAhD,EAAyD,YAAY;AACpEa,MAAAA,QAAQ,CAAEA,QAAQ,CAACf,QAAT,CAAkB,MAAlB,CAAD,GAA8B,aAA9B,GAA8C,UAA/C,CAAR,CAAmE,MAAnE;AACA,KAFD;AAIA3H,IAAAA,CAAC,CAAC,4DAAD,CAAD,CAAgE6H,EAAhE,CAAmE,OAAnE,EAA4E,YAAY;AACvF7H,MAAAA,CAAC,CAAC,IAAD,CAAD,CAASA,CAAC,CAAC,IAAD,CAAD,CAAQ2H,QAAR,CAAiB,SAAjB,CAAD,GAAgC,aAAhC,GAAgD,UAAxD,EAAoE,SAApE;AAEAd,MAAAA,WAAW,CAAC8B,cAAZ;AACA,KAJD;AAKA,GAbgB;AAcjBA,EAAAA,cAAc,EAAE,0BAAY;AAC3B3I,IAAAA,CAAC,CAAC,6CAAD,CAAD,CAAiDwG,WAAjD,CAA6D,MAA7D;AAEA,QAAIoC,aAAa,GAAG,EAApB;AAEA5I,IAAAA,CAAC,CAAC,4DAAD,CAAD,CAAgEkI,IAAhE,CAAqE,YAAY;AAChF,UAAIlI,CAAC,CAAC,IAAD,CAAD,CAAQ2H,QAAR,CAAiB,SAAjB,CAAJ,EAAiC;AAChCiB,QAAAA,aAAa,CAAC3N,IAAd,CAAmB+E,CAAC,CAAC,IAAD,CAAD,CAAQ6I,IAAR,CAAa,SAAb,CAAnB;AACA;AACD,KAJD;;AAMA,QAAID,aAAa,CAAChO,MAAd,GAAuB,CAA3B,EAA8B;AAC7BoF,MAAAA,CAAC,CAAC,2BAAD,CAAD,CAA+B8I,IAA/B;;AAEA,WAAK,IAAIxO,MAAT,IAAmBsO,aAAnB,EAAkC;AACjC,YAAIG,GAAG,GAAGH,aAAa,CAACtO,MAAD,CAAvB;AACA0F,QAAAA,CAAC,CAAC,iEAAiE+I,GAAjE,GAAuE,IAAxE,CAAD,CAA+EN,QAA/E,CAAwF,MAAxF;AAEA,YAAIzI,CAAC,CAAC,2EAA2E+I,GAA3E,GAAiF,IAAlF,CAAD,CAAyFnO,MAAzF,GAAkG,CAAtG,EACCoF,CAAC,CAAC,2BAAD,CAAD,CAA+BgJ,IAA/B;AACD;;AACDhJ,MAAAA,CAAC,CAAC,0CAAD,CAAD,CAA8CyI,QAA9C,CAAuD,UAAvD;AACA,KAXD,MAWO;AACNzI,MAAAA,CAAC,CAAC,0CAAD,CAAD,CAA8CwG,WAA9C,CAA0D,UAA1D;AACAxG,MAAAA,CAAC,CAAC,2BAAD,CAAD,CAA+BgJ,IAA/B;AACA;AACD;AAxCgB,CAAlB;AA2CD,IAAI/B,aAAa,GAAG;AAClBtE,EAAAA,IAAI,EAAE,gBAAY;AACjB3C,IAAAA,CAAC,CAAC,qDAAD,CAAD,CAAyDiJ,MAAzD,CAAgE,YAAY;AAC3EjJ,MAAAA,CAAC,CAAC,oBAAD,CAAD,CAAwBkJ,MAAxB;AACA,KAFD;AAGA;AALiB,CAApB;AAQA,IAAIhC,IAAI,GAAG;AACTvE,EAAAA,IAAI,EAAE,gBAAY;AACjB3C,IAAAA,CAAC,CAAC,8BAAD,CAAD,CAAkC6H,EAAlC,CAAqC,OAArC,EAA8C,YAAY;AACzD7H,MAAAA,CAAC,CAAC,IAAD,CAAD,CAASA,CAAC,CAAC,IAAD,CAAD,CAAQ2H,QAAR,CAAiB,MAAjB,CAAD,GAA6B,aAA7B,GAA6C,UAArD,EAAiE,MAAjE;AACA3H,MAAAA,CAAC,CAAC,cAAD,CAAD,CAAmB,CAACA,CAAC,CAAC,IAAD,CAAD,CAAQ2H,QAAR,CAAiB,MAAjB,CAAF,GAA8B,aAA9B,GAA8C,UAAhE,EAA4E,MAA5E;AACA,KAHD;AAIA;AANQ,CAAX;AASA,IAAIb,SAAS,GAAG;AACdnE,EAAAA,IAAI,EAAE,gBAAY;AACjB,QAAI+F,QAAQ,GAAG1I,CAAC,CAAC,aAAD,CAAhB;AAEAA,IAAAA,CAAC,CAAC,uCAAD,CAAD,CAA2C6H,EAA3C,CAA8C,OAA9C,EAAuD,UAAU9N,CAAV,EAAa;AAEnE,UAAI2O,QAAQ,CAACf,QAAT,CAAkB,MAAlB,KAA6Be,QAAQ,CAACf,QAAT,CAAkB5N,CAAC,CAACoP,aAAF,CAAgB5L,OAAhB,CAAwByD,IAA1C,CAAjC,EAAkF;AACjF0H,QAAAA,QAAQ,CAAClC,WAAT,CAAqB,MAArB;AACA,OAFD,MAGK,IAAIkC,QAAQ,CAACf,QAAT,CAAkB,MAAlB,CAAJ,EAA+B;AACnC3H,QAAAA,CAAC,CAAC,uCAAD,CAAD,CAA2CkI,IAA3C,CAAgD,UAAUC,KAAV,EAAiB7N,MAAjB,EAAyB;AACxEoO,UAAAA,QAAQ,CAAClC,WAAT,CAAqBlM,MAAM,CAACiD,OAAP,CAAeyD,IAApC;AACA,SAFD;AAGAnG,QAAAA,UAAU,CAAC,YAAY;AACtB6N,UAAAA,QAAQ,CAACD,QAAT,CAAkB1O,CAAC,CAACoP,aAAF,CAAgB5L,OAAhB,CAAwByD,IAA1C;AACA,SAFS,EAEP,GAFO,CAAV;AAIA,OARI,MASA;AACJ0H,QAAAA,QAAQ,CAACD,QAAT,CAAkB,MAAlB;AACAC,QAAAA,QAAQ,CAACD,QAAT,CAAkB1O,CAAC,CAACoP,aAAF,CAAgB5L,OAAhB,CAAwByD,IAA1C;AACA;;AAED,UAAI0H,QAAQ,CAACf,QAAT,CAAkB,MAAlB,CAAJ,EAA+B,CAC9B;AACA,OAFD,MAEO;AACNe,QAAAA,QAAQ,CAAClC,WAAT,CAAqBzM,CAAC,CAACoP,aAAF,CAAgB5L,OAAhB,CAAwByD,IAA7C,EADM,CAEN;AACA;AACD,KAzBD;AA4BA8F,IAAAA,SAAS,CAACsC,gBAAV;AAEAtC,IAAAA,SAAS,CAACuC,iBAAV;AACA,GAnCa;AAoCdD,EAAAA,gBAAgB,EAAE,4BAAY;AAC7BpJ,IAAAA,CAAC,CAAC,gEAAD,CAAD,CAAoEsJ,MAApE,CAA2E,QAA3E;AACAtJ,IAAAA,CAAC,CAAC,gEAAD,CAAD,CAAoExG,IAApE,CAAyE,QAAzE,EAAmF,YAAY;AAC9F,UAAI+P,IAAI,GAAG,aAAX;AAAA,UACCC,IADD;AAAA,UAECC,OAAO,GAAG,EAFX;AAAA,UAGC/J,MAAM,GAAGM,CAAC,CAAC,2CAAD,CAHX;AAAA,UAICiB,QAJD;AAMAjB,MAAAA,CAAC,CAAC,wEAAD,CAAD,CAA4EkI,IAA5E,CAAiF,YAAY;AAC5F,YAAIwB,YAAY,GAAG1J,CAAC,CAAC,IAAD,CAApB;AACAyJ,QAAAA,OAAO,IAAKA,OAAO,IAAI,EAAZ,GAAkB,MAAMC,YAAY,CAACC,IAAb,CAAkB,MAAlB,CAAN,GAAkC,GAAlC,GAAwCC,kBAAkB,CAACF,YAAY,CAACnB,GAAb,EAAD,CAA5E,GAAmG,MAAMmB,YAAY,CAACC,IAAb,CAAkB,MAAlB,CAAN,GAAkC,GAAlC,GAAwCC,kBAAkB,CAACF,YAAY,CAACnB,GAAb,EAAD,CAAxK;AACA,OAHD;AAKAgB,MAAAA,IAAI,IAAIE,OAAR;AAEAzJ,MAAAA,CAAC,CAAC6J,GAAF,CAAMN,IAAN,EAAY,UAAU9I,OAAV,EAAmB;AAC9BT,QAAAA,CAAC,CAAC,iBAAD,CAAD,CAAqB8J,WAArB,CAAiC9J,CAAC,CAACS,OAAD,CAAD,CAAWsJ,IAAX,CAAgB,iBAAhB,CAAjC;AAEAjD,QAAAA,SAAS,CAACsC,gBAAV;AACAtC,QAAAA,SAAS,CAACuC,iBAAV,CAA4BE,IAA5B;AACA,OALD,EAd8F,CAqB9F;AACA,KAtBD;AAuBA,GA7Da;AA8DdS,EAAAA,oBAAoB,EAAE,gCAAY,CACjC;AACA;AACA;AACA;AACA;AACA,GApEa;AAqEdX,EAAAA,iBAAiB,EAAE,2BAAUE,IAAV,EAAgB;AAClCvJ,IAAAA,CAAC,CAAC,6BAAD,CAAD,CAAiCsJ,MAAjC;AACAtJ,IAAAA,CAAC,CAAC,6BAAD,CAAD,CAAiCxG,IAAjC,CAAsC,OAAtC,EAA+C,YAAY;AAE1D;AACA,UAAIyQ,OAAO,GAAG5Q,MAAM,CAAC6Q,cAAP,CAAsBC,oBAAtB,EAAd;AACAF,MAAAA,OAAO,CAAChP,IAAR,CAAasO,IAAb,EAJ0D,CAM1D;;AAEAvJ,MAAAA,CAAC,CAAC,aAAD,CAAD,CAAiBwG,WAAjB,CAA6B,MAA7B;AACAxG,MAAAA,CAAC,CAAC,uCAAD,CAAD,CAA2CkI,IAA3C,CAAgD,UAAUC,KAAV,EAAiB7N,MAAjB,EAAyB;AACxE0F,QAAAA,CAAC,CAAC,aAAD,CAAD,CAAiBwG,WAAjB,CAA6BlM,MAAM,CAACiD,OAAP,CAAeyD,IAA5C;AACA,OAFD,EAT0D,CAa1D;AACA;AACA;AACA;AACA;;AAEAhB,MAAAA,CAAC,CAAC6J,GAAF,CAAMN,IAAN,EAAY,UAAU9I,OAAV,EAAmB;AAC9B,YAAI2J,cAAc,GAAGpK,CAAC,CAACS,OAAD,CAAD,CAAWsJ,IAAX,CAAgB,+BAAhB,CAArB;AAAA,YACCM,WAAW,GAAGrK,CAAC,CAACS,OAAD,CAAD,CAAWsJ,IAAX,CAAgB,qDAAhB,CADf;AAAA,YAECO,QAAQ,GAAGtK,CAAC,CAAC,qDAAD,CAFb;;AAIA,YAAIA,CAAC,CAAC,+BAAD,CAAD,CAAmCpF,MAAnC,GAA4C,CAAhD,EAAmD;AAClD;AACA;AAEAoF,UAAAA,CAAC,CAAC,+BAAD,CAAD,CAAmCtE,MAAnC;AACA;;AAED,YAAI0O,cAAc,CAACxP,MAAf,GAAwB,CAA5B,EAA+B;AAC9BoF,UAAAA,CAAC,CAAC,yBAAD,CAAD,CAA6BwG,WAA7B,CAAyC,WAAzC;AACAxG,UAAAA,CAAC,CAAC,sCAAD,CAAD,CAA0CuK,MAA1C,CAAiDH,cAAjD,EAF8B,CAG9B;AACA;AACA;AACA,SAND,MAMO;AACNpK,UAAAA,CAAC,CAAC,yBAAD,CAAD,CAA6ByI,QAA7B,CAAsC,WAAtC;AACA;;AAED,YAAI4B,WAAW,CAACzP,MAAZ,GAAqB,CAAzB,EAA4B;AAC3B,cAAI0P,QAAQ,CAAC1P,MAAT,GAAkB,CAAtB,EAAyB;AACxB0P,YAAAA,QAAQ,CAACR,WAAT,CAAqBO,WAArB;AACA,WAFD,MAEO;AACNrK,YAAAA,CAAC,CAAC,uCAAD,CAAD,CAA2CwK,OAA3C,CAAmDH,WAAnD;AACA;AACD,SAND,MAMO;AACNC,UAAAA,QAAQ,CAAC5O,MAAT;AACA,SA9B6B,CAgC9B;AACA;AACA;AACA;AACA;AAEA;;AACA,OAvCD;AAyCA,aAAO,KAAP;AACA,KA7DD;AA8DA,GArIa;AAsId+O,EAAAA,YAAY,EAAE,wBAAY;AAEzBzK,IAAAA,CAAC,CAAC,2CAAD,CAAD,CAA+C6H,EAA/C,CAAkD,OAAlD,EAA2D,YAAY;AACtE,UAAI0B,IAAI,GAAGvJ,CAAC,CAAC,IAAD,CAAD,CAAQ2J,IAAR,CAAa,MAAb,CAAX;AAAA,UACCjK,MAAM,GAAGM,CAAC,CAAC,IAAD,CADX;AAGAA,MAAAA,CAAC,CAAC6J,GAAF,CAAMN,IAAN,EAAY,UAAU9I,OAAV,EAAmB;AAC9B,YAAIiK,GAAG,GAAGC,QAAQ,CAACpB,IAAI,CAACqB,KAAL,CAAW,WAAX,EAAwB,CAAxB,CAAD,CAAlB;AAAA,YACCC,QAAQ,GAAG7K,CAAC,CAACS,OAAD,CAAD,CAAWsJ,IAAX,CAAgB,+BAA+BW,GAAG,GAAG,CAArC,IAA0C,GAA1D,EAA+DI,OAA/D,EADZ;AAGAC,QAAAA,UAAU,CAACR,MAAX,CAAkBM,QAAlB;AACAG,QAAAA,aAAa,CAACC,MAAd;AAEApQ,QAAAA,UAAU,CAAC,YAAY;AACtBkQ,UAAAA,UAAU,CAACG,OAAX,CAAmB,UAAnB,EAA+BL,QAA/B;AACA,SAFS,EAEP,GAFO,CAAV;;AAIA,YAAI7K,CAAC,CAACS,OAAD,CAAD,CAAWsJ,IAAX,CAAgB,4CAAhB,EAA8DnP,MAA9D,GAAuE,CAA3E,EAA8E;AAC7E8E,UAAAA,MAAM,CAACiK,IAAP,CAAY,MAAZ,EAAoB3J,CAAC,CAACS,OAAD,CAAD,CAAWsJ,IAAX,CAAgB,4CAAhB,EAA8DJ,IAA9D,CAAmE,MAAnE,CAApB;AACA,SAFD,MAEO;AACNjK,UAAAA,MAAM,CAACoJ,IAAP;AACA;;AAED9I,QAAAA,CAAC,CAAC,4CAAD,CAAD,CAAgDuI,GAAhD,CAAoDmC,GAApD;AACA,OAlBD;AAoBA,aAAO,KAAP;AACA,KAzBD;AA2BA1K,IAAAA,CAAC,CAAC,4CAAD,CAAD,CAAgDuI,GAAhD,CAAoD,CAApD;AACA;AApKa,CAAhB;AAuKA,IAAIxB,MAAM,GAAG;AACXpE,EAAAA,IAAI,EAAE,gBAAY;AACjB3C,IAAAA,CAAC,CAAC,yCAAD,CAAD,CAA6CyI,QAA7C,CAAsD,QAAtD;AACAzI,IAAAA,CAAC,CAAC,0BAAD,CAAD,CAA8ByI,QAA9B,CAAuC,MAAvC;AAEAzI,IAAAA,CAAC,CAAC,+BAAD,CAAD,CAAmC6H,EAAnC,CAAsC,OAAtC,EAA+C,YAAY;AAC1D,UAAIsD,OAAO,GAAGnL,CAAC,CAAC,IAAD,CAAD,CAAQ2J,IAAR,CAAa,MAAb,CAAd,CAD0D,CAG1D;;AAEA,UAAI3J,CAAC,CAAC,IAAD,CAAD,CAAQoL,MAAR,CAAe,IAAf,EAAqBzD,QAArB,CAA8B,QAA9B,CAAJ,EAA6C;AAC5C3H,QAAAA,CAAC,CAAC,0BAAD,CAAD,CAA8ByI,QAA9B,CAAuC,MAAvC;AACA,OAFD,MAEO;AACNzI,QAAAA,CAAC,CAAC,0BAAD,CAAD,CAA8BwG,WAA9B,CAA0C,MAA1C;AACA;;AAEDxG,MAAAA,CAAC,CAAC,6BAAD,CAAD,CAAiCwG,WAAjC,CAA6C,QAA7C;AACA,UAAI6E,OAAO,GAAGrL,CAAC,CAAC,IAAD,CAAD,CAAQoL,MAAR,CAAe,IAAf,EAAqBjD,KAArB,EAAd;AAEAnI,MAAAA,CAAC,CAAC,uBAAD,CAAD,CAA2BkI,IAA3B,CAAgC,YAAY;AAC3ClI,QAAAA,CAAC,CAAC,IAAD,CAAD,CAAQ+J,IAAR,CAAa,cAAcsB,OAAd,GAAwB,GAArC,EAA0C5C,QAA1C,CAAmD,QAAnD;AACA,OAFD;AAIAzI,MAAAA,CAAC,CAAC,oBAAD,CAAD,CAAwBwG,WAAxB,CAAoC,MAApC;AACAxG,MAAAA,CAAC,CAAC,uBAAuBA,CAAC,CAAC,IAAD,CAAD,CAAQ2J,IAAR,CAAa,MAAb,CAAxB,CAAD,CAA+ClB,QAA/C,CAAwD,MAAxD;AAEAuC,MAAAA,aAAa,CAACC,MAAd;AAEA,aAAO,KAAP;AACA,KAxBD,EAJiB,CA8BjB;;AACA,QAAI5R,MAAM,CAACyE,QAAP,CAAgBE,IAAhB,IAAwB,EAA5B,EAAgC;AAC/B,UAAIsN,OAAO,GAAGjS,MAAM,CAACyE,QAAP,CAAgBF,IAA9B;AAAA,UACC2N,SAAS,GAAGD,OAAO,CAACE,SAAR,CAAkBF,OAAO,CAACjP,OAAR,CAAgB,GAAhB,IAAuB,CAAzC,CADb;AAGA2D,MAAAA,CAAC,CAAC,0BAAD,CAAD,CAA8BwG,WAA9B,CAA0C,QAA1C;AACAxG,MAAAA,CAAC,CAAC,oBAAD,CAAD,CAAwBwG,WAAxB,CAAoC,MAApC;AACAxG,MAAAA,CAAC,CAAC,cAAcuL,SAAd,GAA0B,IAA3B,CAAD,CAAkCH,MAAlC,GAA2C3C,QAA3C,CAAoD,QAApD;AACAzI,MAAAA,CAAC,CAAC,MAAMuL,SAAP,CAAD,CAAmB9C,QAAnB,CAA4B,MAA5B;AACA;AACD;AAzCU,CAAb;AA4CA,IAAIzB,OAAO,GAAG;AACZrE,EAAAA,IAAI,EAAE,gBAAY;AACjB3C,IAAAA,CAAC,CAAC,wBAAD,CAAD,CAA4B6H,EAA5B,CAA+B,OAA/B,EAAwC,YAAY;AAEnD,UAAI7H,CAAC,CAAC,MAAD,CAAD,CAAU2H,QAAV,CAAmB,KAAnB,KAA6B3H,CAAC,CAAC,IAAD,CAAD,CAAQ2H,QAAR,CAAiB,QAAjB,CAAjC,EAA6D,CAC5D;AACA;;AAED,UAAI3H,CAAC,CAAC,MAAD,CAAD,CAAU2H,QAAV,CAAmB,KAAnB,KAA6B3H,CAAC,CAAC,IAAD,CAAD,CAAQ2H,QAAR,CAAiB,WAAjB,CAAjC,EAAgE,CAC/D;AACA;;AAED,UAAI3H,CAAC,CAAC,MAAD,CAAD,CAAU2H,QAAV,CAAmB,KAAnB,KAA6B3H,CAAC,CAAC,IAAD,CAAD,CAAQ2H,QAAR,CAAiB,QAAjB,CAAjC,EAA6D,CAC5D;AACA;;AAED,UAAI3H,CAAC,CAAC,MAAD,CAAD,CAAU2H,QAAV,CAAmB,KAAnB,KAA6B3H,CAAC,CAAC,IAAD,CAAD,CAAQ2H,QAAR,CAAiB,MAAjB,CAAjC,EAA2D,CAC1D;AACA;;AAED,UAAI3H,CAAC,CAAC,IAAD,CAAD,CAAQ2H,QAAR,CAAiB,WAAjB,CAAJ,EAAmC,CAClC;AACA;;AAED,UAAI3H,CAAC,CAAC,IAAD,CAAD,CAAQ2H,QAAR,CAAiB,cAAjB,CAAJ,EAAsC,CACrC;AACA;;AAED,UAAI3H,CAAC,CAAC,IAAD,CAAD,CAAQ2H,QAAR,CAAiB,QAAjB,CAAJ,EAAgC,CAC/B;AACA;;AAID,UAAI3H,CAAC,CAAC,IAAD,CAAD,CAAQ2H,QAAR,CAAiB,kBAAjB,CAAJ,EAA0C,CACzC;AACA;;AAED,UAAI3H,CAAC,CAAC,IAAD,CAAD,CAAQ2H,QAAR,CAAiB,UAAjB,CAAJ,EAAkC,CACjC;AACA;;AAED,UAAI3H,CAAC,CAAC,IAAD,CAAD,CAAQ2H,QAAR,CAAiB,UAAjB,CAAJ,EAAkC,CACjC;AACA;;AAED,UAAI3H,CAAC,CAAC,IAAD,CAAD,CAAQ2H,QAAR,CAAiB,QAAjB,CAAJ,EAAgC,CAC/B;AACA;;AAID,UAAI4D,SAAS,GAAGvL,CAAC,CAAC,IAAD,CAAjB;AAAA,UACCyL,KAAK,GAAGF,SAAS,CAAC1C,IAAV,CAAe,IAAf,CADT;AAAA,UAEC6C,SAAS,GAAGH,SAAS,CAAC1C,IAAV,CAAe,YAAf,CAFb;AAAA,UAGC8C,QAAQ,GAAIJ,SAAS,CAAC5D,QAAV,CAAmB,QAAnB,CAHb;;AAKA,UAAI,OAAO8D,KAAP,IAAgB,WAApB,EAAiC;AAChCF,QAAAA,SAAS,CAAEI,QAAD,GAAa,aAAb,GAA6B,UAA9B,CAAT,CAAmD,QAAnD,EAA6DC,QAA7D,GAAwEpF,WAAxE,CAAoF,QAApF;AAEAxG,QAAAA,CAAC,CAAC,gBAAD,CAAD,CAAoBwG,WAApB,CAAgC,MAAhC;AAEAxG,QAAAA,CAAC,CAAC,kCAAkCyL,KAAlC,GAA0C,IAA3C,CAAD,CAAmDE,QAAD,GAAa,aAAb,GAA6B,UAA/E,EAA2F,MAA3F;AACA,OAND,MAMO,IAAI,OAAOD,SAAP,IAAoB,WAAxB,EAAqC;AAC3C1L,QAAAA,CAAC,CAAC,YAAD,CAAD,CAAgBgI,OAAhB,CAAwB;AACvB,uBAAchI,CAAC,CAAC,aAAa0L,SAAd,CAAD,CAA0BzD,MAA1B,GAAmC3J;AAD1B,SAAxB,EAEG,GAFH;AAGA,OAJM,MAIA;AACN,YAAI0B,CAAC,CAAC,IAAD,CAAD,CAAQ6L,QAAR,CAAiB,GAAjB,EAAsBjR,MAAtB,GAA+B,CAAnC,EAAsC;AACrC,cAAMuD,MAAM,GAAG6B,CAAC,CAAC,IAAD,CAAD,CAAQ6L,QAAR,CAAiB,GAAjB,EAAsBlC,IAAtB,CAA2B,QAA3B,CAAf;AACA,cAAMmC,GAAG,GAAG9L,CAAC,CAAC,IAAD,CAAD,CAAQ6L,QAAR,CAAiB,GAAjB,EAAsBlC,IAAtB,CAA2B,MAA3B,CAAZ;AAECxL,UAAAA,MAAM,KAAK,QAAZ,GAAwB9E,MAAM,CAAC0S,IAAP,CAAYD,GAAZ,CAAxB,GAA2CzS,MAAM,CAACyE,QAAP,CAAgBF,IAAhB,GAAuBkO,GAAlE;AACA;AACD;AAGD,KA3ED;AA6EA9L,IAAAA,CAAC,CAAC,8BAAD,CAAD,CAAkC6H,EAAlC,CAAqC,OAArC,EAA8C,YAAY;AACzD7H,MAAAA,CAAC,CAAC,gBAAD,CAAD,CAAoBwG,WAApB,CAAgC,MAAhC;AACAxG,MAAAA,CAAC,CAAC,wBAAD,CAAD,CAA4BwG,WAA5B,CAAwC,QAAxC;AACA,KAHD;AAKAxG,IAAAA,CAAC,CAAC,gCAAD,CAAD,CAAoC6H,EAApC,CAAuC,OAAvC,EAAgD,YAAY,CAC3D;AACA,KAFD;AAIA7H,IAAAA,CAAC,CAAC,wEAAD,CAAD,CAA4E6H,EAA5E,CAA+E,OAA/E,EAAwF,YAAY,CACnG;AACA,KAFD;AAGA,GA3FW;AA4FZP,EAAAA,UAAU,EAAE,sBAAY;AACvBtH,IAAAA,CAAC,CAAC,6CAAD,CAAD,CAAiD6H,EAAjD,CAAoD,OAApD,EAA6D,YAAY;AACxE,aAAO,KAAP;AACA,KAFD;AAGA;AAhGW,CAAd;AAmGA,IAAIN,UAAU,GAAG;AACf5E,EAAAA,IAAI,EAAE,gBAAY;AACjB,QAAIqJ,SAAS,CAACpR,MAAV,GAAmB,CAAvB,EAA0B;AACzB,UAAIqR,GAAG,GAAG,IAAIC,MAAM,CAACC,IAAP,CAAYC,GAAhB,CAAoB1S,QAAQ,CAAC2S,cAAT,CAAwB,KAAxB,CAApB,EAAoD;AAC7DC,QAAAA,IAAI,EAAE,EADuD;AAE7DC,QAAAA,MAAM,EAAE,IAAIL,MAAM,CAACC,IAAP,CAAYK,MAAhB,CAAuB,UAAvB,EAAmC,SAAnC,CAFqD;AAG7DC,QAAAA,SAAS,EAAEP,MAAM,CAACC,IAAP,CAAYO,SAAZ,CAAsBC;AAH4B,OAApD,CAAV;AAAA,UAKCC,UAAU,GAAG,IAAIV,MAAM,CAACC,IAAP,CAAYU,UAAhB,EALd;AAAA,UAMCC,MAND;AAAA,UAOCnS,CAPD;;AASA,WAAKA,CAAC,GAAG,CAAT,EAAYA,CAAC,GAAGqR,SAAS,CAACpR,MAA1B,EAAkCD,CAAC,EAAnC,EAAuC;AACtCmS,QAAAA,MAAM,GAAG,IAAIZ,MAAM,CAACC,IAAP,CAAYY,MAAhB,CAAuB;AAC/B9L,UAAAA,QAAQ,EAAE,IAAIiL,MAAM,CAACC,IAAP,CAAYK,MAAhB,CAAuBR,SAAS,CAACrR,CAAD,CAAT,CAAa,CAAb,CAAvB,EAAwCqR,SAAS,CAACrR,CAAD,CAAT,CAAa,CAAb,CAAxC,CADqB;AAE/BqS,UAAAA,IAAI,EAAE,iBAFyB;AAG/Bf,UAAAA,GAAG,EAAEA,GAH0B;AAI/BgB,UAAAA,MAAM,EAAEjB,SAAS,CAACrR,CAAD,CAAT,CAAa,CAAb,CAJuB;AAK/BmR,UAAAA,GAAG,EAAEE,SAAS,CAACrR,CAAD,CAAT,CAAa,CAAb;AAL0B,SAAvB,CAAT;AASAuR,QAAAA,MAAM,CAACC,IAAP,CAAYnG,KAAZ,CAAkBkH,WAAlB,CAA8BJ,MAA9B,EAAsC,OAAtC,EAAgD,UAAUA,MAAV,EAAkBnS,CAAlB,EAAqB;AACpE,iBAAO,YAAY;AAClBtB,YAAAA,MAAM,CAACyE,QAAP,CAAgBF,IAAhB,GAAuB,KAAKkO,GAA5B;AACA,WAFD;AAGA,SAJ8C,CAI5CgB,MAJ4C,EAIpCnS,CAJoC,CAA/C;AAMAuR,QAAAA,MAAM,CAACC,IAAP,CAAYnG,KAAZ,CAAkBkH,WAAlB,CAA8BJ,MAA9B,EAAsC,WAAtC,EAAoD,UAAUA,MAAV,EAAkBnS,CAAlB,EAAqB;AACxE,iBAAO,YAAY;AAClBiS,YAAAA,UAAU,CAACO,UAAX,CAAsBnB,SAAS,CAACrR,CAAD,CAAT,CAAa,CAAb,CAAtB;AACAiS,YAAAA,UAAU,CAACb,IAAX,CAAgBE,GAAhB,EAAqBa,MAArB;AACA9M,YAAAA,CAAC,CAAC,cAAD,CAAD,CAAkBoN,IAAlB,CAAuB,KAAvB,EAA8BtE,IAA9B;AACA,WAJD;AAKA,SANkD,CAMhDgE,MANgD,EAMxCnS,CANwC,CAAnD;AAQAuR,QAAAA,MAAM,CAACC,IAAP,CAAYnG,KAAZ,CAAkBkH,WAAlB,CAA8BJ,MAA9B,EAAsC,UAAtC,EAAmD,UAAUA,MAAV,EAAkBnS,CAAlB,EAAqB;AACvE,iBAAO,YAAY;AAClBiS,YAAAA,UAAU,CAACS,KAAX;AACA,WAFD;AAGA,SAJiD,CAI/CP,MAJ+C,EAIvCnS,CAJuC,CAAlD;AAKA;AACD;AACD;AA3Cc,CAAjB;AA6CC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,IAAI6M,GAAG,GAAG;AACR7E,EAAAA,IAAI,EAAE,gBAAY;AACjB3C,IAAAA,CAAC,CAAC,6BAAD,CAAD,CAAiC6H,EAAjC,CAAoC,OAApC,EAA6C,YAAY;AACxD7H,MAAAA,CAAC,CAAC,IAAD,CAAD,CAAQoL,MAAR,CAAe,IAAf,EAAsBpL,CAAC,CAAC,IAAD,CAAD,CAAQoL,MAAR,CAAe,IAAf,EAAqBzD,QAArB,CAA8B,MAA9B,CAAD,GAA0C,aAA1C,GAA0D,UAA/E,EAA2F,MAA3F;AACA,KAFD;AAIA3H,IAAAA,CAAC,CAAC,qBAAD,CAAD,CAAyB6H,EAAzB,CAA4B,OAA5B,EAAqC,YAAY;AAChD,UAAIyF,KAAK,GAAGtN,CAAC,CAAC,IAAD,CAAD,CAAQ2J,IAAR,CAAa,MAAb,CAAZ;AACA3J,MAAAA,CAAC,CAAC,YAAD,CAAD,CAAgBgI,OAAhB,CAAwB;AACvB,qBAAchI,CAAC,CAACsN,KAAD,CAAD,CAASrF,MAAT,GAAkB3J,GAAlB,GAAwB;AADf,OAAxB,EAEG,GAFH;AAGA,aAAO,KAAP;AACA,KAND;AAOA;AAbO,CAAV;AAgBA,IAAIoJ,OAAO,GAAG;AACZ/E,EAAAA,IAAI,EAAE,gBAAY;AACjB,QAAI3C,CAAC,CAAC,0BAAD,CAAD,CAA8BpF,MAA9B,GAAuC,CAA3C,EAA8C,CAC7C;AACA;AACD,GALW;AAMZ2S,EAAAA,WAAW,EAAE,uBAAY;AACxBvN,IAAAA,CAAC,CAAC,oBAAD,CAAD,CAAwBkL,OAAxB,CAAgC;AAC/BsC,MAAAA,WAAW,EAAE,YADkB;AAE/BC,MAAAA,YAAY,EAAE,YAFiB;AAG/BC,MAAAA,eAAe,EAAE;AAHc,KAAhC;AAKA,GAZW;AAaZC,EAAAA,QAAQ,EAAE,oBAAY;AACrB,QAAI5C,UAAU,GAAG/K,CAAC,CAAC,6BAAD,CAAD,CAAiCyI,QAAjC,CAA0C,MAA1C,EAAkDyC,OAAlD,CAA0D;AAC1EsC,MAAAA,WAAW,EAAE,YAD6D;AAE1EC,MAAAA,YAAY,EAAE,YAF4D;AAG1EC,MAAAA,eAAe,EAAE;AAHyD,KAA1D,CAAjB;AAMA1N,IAAAA,CAAC,CAAC,mCAAD,CAAD,CAAuC6H,EAAvC,CAA0C,OAA1C,EAAmD,YAAY;AAC9D,UAAI0B,IAAI,GAAGvJ,CAAC,CAAC,IAAD,CAAD,CAAQ2J,IAAR,CAAa,MAAb,CAAX;AAAA,UACCjK,MAAM,GAAGM,CAAC,CAAC,IAAD,CADX;AAGAA,MAAAA,CAAC,CAAC6J,GAAF,CAAMN,IAAN,EAAY,UAAU9I,OAAV,EAAmB;AAC9B,YAAIiK,GAAG,GAAGC,QAAQ,CAACpB,IAAI,CAACqB,KAAL,CAAW,WAAX,EAAwB,CAAxB,CAAD,CAAlB;AAAA,YACCC,QAAQ,GAAG7K,CAAC,CAACS,OAAD,CAAD,CAAWsJ,IAAX,CAAgB,+BAA+BW,GAAG,GAAG,CAArC,IAA0C,GAA1D,EAA+DI,OAA/D,EADZ;AAGAC,QAAAA,UAAU,CAACR,MAAX,CAAkBM,QAAlB;AACAG,QAAAA,aAAa,CAACC,MAAd;AAEApQ,QAAAA,UAAU,CAAC,YAAY;AACtBkQ,UAAAA,UAAU,CAACG,OAAX,CAAmB,UAAnB,EAA+BL,QAA/B;AACA,SAFS,EAEP,GAFO,CAAV;;AAIA,YAAI7K,CAAC,CAACS,OAAD,CAAD,CAAWsJ,IAAX,CAAgB,4CAAhB,EAA8DnP,MAA9D,GAAuE,CAA3E,EAA8E;AAC7E8E,UAAAA,MAAM,CAACiK,IAAP,CAAY,MAAZ,EAAoB3J,CAAC,CAACS,OAAD,CAAD,CAAWsJ,IAAX,CAAgB,4CAAhB,EAA8DJ,IAA9D,CAAmE,MAAnE,CAApB;AACA,SAFD,MAEO;AACNjK,UAAAA,MAAM,CAACoJ,IAAP;AACA;;AAED9I,QAAAA,CAAC,CAAC,4CAAD,CAAD,CAAgDuI,GAAhD,CAAoDmC,GAApD;AACA,OAlBD;AAoBA,aAAO,KAAP;AACA,KAzBD;AA2BA1K,IAAAA,CAAC,CAAC,4CAAD,CAAD,CAAgDuI,GAAhD,CAAoD,CAApD;AAEAvI,IAAAA,CAAC,CAAC,8BAAD,CAAD,CAAkC6H,EAAlC,CAAqC,QAArC,EAA+C,YAAY;AAC1D,UAAI0B,IAAJ;AAAA,UACCE,OAAO,GAAG,EADX;AAAA,UAEC/J,MAAM,GAAGM,CAAC,CAAC,mCAAD,CAFX;AAAA,UAGCiB,QAHD;AAKAjB,MAAAA,CAAC,CAAC,sCAAD,CAAD,CAA0CkI,IAA1C,CAA+C,YAAY;AAC1DuB,QAAAA,OAAO,IAAKA,OAAO,IAAI,EAAZ,GAAkB,MAAMzJ,CAAC,CAAC,IAAD,CAAD,CAAQuI,GAAR,EAAxB,GAAwCvI,CAAC,CAAC,IAAD,CAAD,CAAQuI,GAAR,EAAnD;AACA,OAFD;AAIAtH,MAAAA,QAAQ,GAAIjB,CAAC,CAAC,4CAAD,CAAD,CAAgDuI,GAAhD,MAAyD,EAA1D,GAAgEvI,CAAC,CAAC,4CAAD,CAAD,CAAgDuI,GAAhD,EAAhE,GAAwH,CAAnI;AAEAgB,MAAAA,IAAI,GAAG,sBAAsBE,OAAtB,GAAgC,YAAhC,GAA+CxI,QAAtD;AAEAjB,MAAAA,CAAC,CAAC6J,GAAF,CAAMN,IAAN,EAAY,UAAU9I,OAAV,EAAmB;AAC9B,YAAIiK,GAAG,GAAGC,QAAQ,CAACpB,IAAI,CAACqB,KAAL,CAAW,WAAX,EAAwB,CAAxB,CAAD,CAAlB;AAAA,YACCC,QAAQ,GAAG7K,CAAC,CAACS,OAAD,CAAD,CAAWsJ,IAAX,CAAgB,gCAAhB,CADZ;;AAGA,YAAI/J,CAAC,CAAC,gCAAD,CAAD,CAAoCpF,MAApC,GAA6C,CAAjD,EAAoD;AACnDmQ,UAAAA,UAAU,CAACG,OAAX,CAAmB,QAAnB,EAA6BlL,CAAC,CAAC,gCAAD,CAA9B;AACA+K,UAAAA,UAAU,CAACG,OAAX;AACA;;AAED,YAAIL,QAAQ,CAACjQ,MAAT,GAAkB,CAAtB,EAAyB;AACxBoF,UAAAA,CAAC,CAAC,0BAAD,CAAD,CAA8BwG,WAA9B,CAA0C,WAA1C;AACAuE,UAAAA,UAAU,CAACR,MAAX,CAAkBM,QAAlB;AACAG,UAAAA,aAAa,CAACC,MAAd;AACApQ,UAAAA,UAAU,CAAC,YAAY;AACtBkQ,YAAAA,UAAU,CAACG,OAAX,CAAmB,UAAnB,EAA+BL,QAA/B;AACA,WAFS,EAEP,GAFO,CAAV;AAGA,SAPD,MAOO;AACN7K,UAAAA,CAAC,CAAC,0BAAD,CAAD,CAA8ByI,QAA9B,CAAuC,WAAvC;AACA;;AAED,YAAIzI,CAAC,CAACS,OAAD,CAAD,CAAWsJ,IAAX,CAAgB,4CAAhB,EAA8DnP,MAA9D,GAAuE,CAA3E,EAA8E;AAC7E8E,UAAAA,MAAM,CAACsJ,IAAP,GAAcW,IAAd,CAAmB,MAAnB,EAA2B3J,CAAC,CAACS,OAAD,CAAD,CAAWsJ,IAAX,CAAgB,4CAAhB,EAA8DJ,IAA9D,CAAmE,MAAnE,CAA3B;AACA,SAFD,MAEO;AACNjK,UAAAA,MAAM,CAACoJ,IAAP;AACA;;AAED9I,QAAAA,CAAC,CAAC,4CAAD,CAAD,CAAgDuI,GAAhD,CAAoDmC,GAApD;AACA,OA3BD;AA4BA,KA1CD;AA2CA;AA5FW,CAAd;AA+FA,IAAIjD,aAAa,GAAG;AAClB9E,EAAAA,IAAI,EAAE,gBAAY;AACjB,QAAI,CAAC3C,CAAC,CAAC,mBAAD,CAAD,CAAuBpF,MAAxB,GAAiC,CAArC,EACCoF,CAAC,CAAC,mBAAD,CAAD,CAAuBtE,MAAvB;AAEDsE,IAAAA,CAAC,CAAC,mCAAD,CAAD,CAAuC6H,EAAvC,CAA0C,OAA1C,EAAmD,YAAY;AAC9D,UAAI7H,CAAC,CAAC,8BAAD,CAAD,CAAkC2H,QAAlC,CAA2C,MAA3C,CAAJ,EAAwD,CACvD;AACA,OAFD,MAEO,CACN;AACA;;AAED3H,MAAAA,CAAC,CAAC,mBAAD,CAAD,CAAwBA,CAAC,CAAC,8BAAD,CAAD,CAAkC2H,QAAlC,CAA2C,MAA3C,CAAD,GAAuD,aAAvD,GAAuE,UAA9F,EAA0G,MAA1G;AACA3H,MAAAA,CAAC,CAAC,8BAAD,CAAD,CAAmCA,CAAC,CAAC,8BAAD,CAAD,CAAkC2H,QAAlC,CAA2C,MAA3C,CAAD,GAAuD,aAAvD,GAAuE,UAAzG,EAAqH,MAArH;AACA,KATD;AAWA3H,IAAAA,CAAC,CAAC,yBAAD,CAAD,CAA6B6H,EAA7B,CAAgC,OAAhC,EAAyC,YAAY,CACpD;AACA,KAFD;AAIA7H,IAAAA,CAAC,CAAC,yBAAD,CAAD,CAA6B6H,EAA7B,CAAgC,OAAhC,EAAyC,YAAY,CACrD;AACC,KAFD;AAGA;AAvBiB,CAApB;AA0BA,IAAIP,UAAU,GAAG;AACf3E,EAAAA,IAAI,EAAE,gBAAY;AACjB3C,IAAAA,CAAC,CAAC,qCAAD,CAAD,CAAyCsJ,MAAzC,CAAgD,OAAhD;AACAtJ,IAAAA,CAAC,CAAC,qCAAD,CAAD,CAAyCxG,IAAzC,CAA8C,OAA9C,EAAuD,YAAY;AAClE,UAAIoU,SAAS,GAAG5N,CAAC,CAAC,yDAAD,CAAjB;AACA,UAAI6N,eAAe,GAAG7N,CAAC,CAAC,oDAAD,CAAvB;AAEA4N,MAAAA,SAAS,CAACpH,WAAV,CAAsB,MAAtB,EAA8BsE,OAA9B,GAAwCpP,MAAxC;AACAmS,MAAAA,eAAe,CAAC/C,OAAhB,GAA0BtE,WAA1B,CAAsC,aAAtC;AACAqH,MAAAA,eAAe,CAACpF,QAAhB,CAAyB,QAAzB,EAAmCjC,WAAnC,CAA+C,MAA/C;AAEAxG,MAAAA,CAAC,CAAC,gBAAD,CAAD,CAAoBwG,WAApB,CAAgC,MAAhC;AACAxG,MAAAA,CAAC,CAAC,wBAAD,CAAD,CAA4BwG,WAA5B,CAAwC,QAAxC;AAEAc,MAAAA,UAAU,CAAC3E,IAAX;AACA,KAZD;AAcA3C,IAAAA,CAAC,CAAC,YAAD,CAAD,CAAgBsJ,MAAhB,CAAuB,OAAvB;AACAtJ,IAAAA,CAAC,CAAC,YAAD,CAAD,CAAgBxG,IAAhB,CAAqB,OAArB,EAA8B,YAAY;AACzC,UAAI+P,IAAI,GAAGvJ,CAAC,CAAC,IAAD,CAAD,CAAQ2J,IAAR,CAAa,MAAb,CAAX;AAEA3J,MAAAA,CAAC,CAAC6J,GAAF,CAAMN,IAAN,EAAY,UAAU9I,OAAV,EAAmB;AAC9B,YAAIqN,OAAO,GAAG9N,CAAC,CAACS,OAAD,CAAD,CAAWsJ,IAAX,CAAgB,mDAAhB,CAAd;AAAA,YACCgE,KAAK,GAAG/N,CAAC,CAACS,OAAD,CAAD,CAAWsJ,IAAX,CAAgB,8BAAhB,CADT;AAGA/J,QAAAA,CAAC,CAAC,mDAAD,CAAD,CAAuDyI,QAAvD,CAAgE,MAAhE;AACAzI,QAAAA,CAAC,CAAC,oCAAD,CAAD,CAAwCuK,MAAxC,CAA+CuD,OAA/C;AACA9N,QAAAA,CAAC,CAAC,8BAAD,CAAD,CAAkC8J,WAAlC,CAA8CiE,KAA9C;AAEA/C,QAAAA,aAAa,CAACC,MAAd;AAEAjL,QAAAA,CAAC,CAAC,YAAD,CAAD,CAAgBgI,OAAhB,CAAwB;AACvB,uBAAchI,CAAC,CAAC,kBAAD,CAAD,CAAsBiI,MAAtB,GAA+B3J;AADtB,SAAxB,EAEG,GAFH;AAIAgJ,QAAAA,UAAU,CAAC3E,IAAX;AACA,OAfD;AAiBA,UAAIqL,WAAW,GAAGhO,CAAC,CAAC,qBAAD,CAAD,CAAyBpF,MAAzB,GAAkCoF,CAAC,CAAC,uBAAD,CAAD,CAA2BpF,MAA/E,CApByC,CAqBzC;;AAEA,aAAO,KAAP;AACA,KAxBD;AA0BAoF,IAAAA,CAAC,CAAC,wCAAD,CAAD,CAA4CsJ,MAA5C,CAAmD,OAAnD;AACAtJ,IAAAA,CAAC,CAAC,wCAAD,CAAD,CAA4CxG,IAA5C,CAAiD,OAAjD,EAA0D,YAAY;AACrE,UAAIyU,QAAQ,GAAGjO,CAAC,CAAC,IAAD,CAAhB;;AAEA,UAAIiO,QAAQ,CAACtG,QAAT,CAAkB,MAAlB,CAAJ,EAA+B;AAC9B3H,QAAAA,CAAC,CAAC,4DAA4DiO,QAAQ,CAAC9F,KAAT,KAAmB,CAA/E,CAAD,CAAD,CAAqF3B,WAArF,CAAiG,MAAjG,EAAyGsE,OAAzG,GAAmHpP,MAAnH;AACAuS,QAAAA,QAAQ,CAACnD,OAAT,GAAmBtE,WAAnB,CAA+B,aAA/B;AACAyH,QAAAA,QAAQ,CAACxF,QAAT,CAAkB,QAAlB,EAA4BjC,WAA5B,CAAwC,MAAxC;AACA;;AAEDxG,MAAAA,CAAC,CAAC,YAAD,CAAD,CAAgBgI,OAAhB,CAAwB;AACvB,qBAAchI,CAAC,CAAC,kBAAD,CAAD,CAAsBiI,MAAtB,GAA+B3J;AADtB,OAAxB,EAEG,GAFH;AAIAgJ,MAAAA,UAAU,CAAC3E,IAAX;AACA,KAdD;AAgBA3C,IAAAA,CAAC,CAAC,2EAAD,CAAD,CAA+EsJ,MAA/E,CAAsF,OAAtF;AACAtJ,IAAAA,CAAC,CAAC,2EAAD,CAAD,CAA+ExG,IAA/E,CAAoF,OAApF,EAA6F,YAAY;AACxG,UAAIwU,WAAW,GAAGhO,CAAC,CAAC,qBAAD,CAAD,CAAyBpF,MAAzB,GAAkCoF,CAAC,CAAC,uBAAD,CAAD,CAA2BpF,MAA/E,CADwG,CAExG;AACA,KAHD;AAIA;AAlEc,CAAjB;AAqEA,IAAIgN,UAAU,GAAG;AACfjF,EAAAA,IAAI,EAAE,gBAAY;AACjBtJ,IAAAA,MAAM,CAAC6U,qBAAP,GAA+B7U,MAAM,CAAC6U,qBAAP,IAAgC7U,MAAM,CAAC8U,wBAAvC,IAAmE9U,MAAM,CAAC+U,2BAA1E,IAAyG/U,MAAM,CAACgV,uBAAhH,IAA2I,UAAUC,CAAV,EAAa;AAAEzT,MAAAA,UAAU,CAACyT,CAAD,EAAI,OAAO,EAAX,CAAV;AAA0B,KAAnN;;AAEA,aAASC,WAAT,GAAuB;AACtB,UAAIC,SAAS,GAAGnV,MAAM,CAAC6F,WAAvB;AACA,UAAIuP,mBAAmB,GAAGzO,CAAC,CAAC,yBAAD,CAAD,CAA6BiI,MAA7B,EAA1B;AAEAjI,MAAAA,CAAC,CAAC,YAAD,CAAD,CAAiBwO,SAAS,GAAIC,mBAAmB,CAACnQ,GAApB,IAA2B0B,CAAC,CAAC,yBAAD,CAAD,CAA6B0O,WAA7B,KAA6C,EAAxE,CAAd,GAA8F,aAA9F,GAA8G,UAA9H,EAA0I,YAA1I;AACA;;AAEDrV,IAAAA,MAAM,CAACC,gBAAP,CAAwB,QAAxB,EAAkC,YAAY;AAC7C4U,MAAAA,qBAAqB,CAACK,WAAD,CAArB;AACA,KAFD,EAEG,KAFH;AAIAA,IAAAA,WAAW;AAEXvO,IAAAA,CAAC,CAAC,SAAD,CAAD,CAAa6H,EAAb,CAAgB,OAAhB,EAAyB,YAAY;AACpC7H,MAAAA,CAAC,CAAC,YAAD,CAAD,CAAgBgI,OAAhB,CAAwB;AACvB,qBAAchI,CAAC,CAAC,WAAD,CAAD,CAAeiI,MAAf,GAAwB3J,GAAxB,GAA8B;AADrB,OAAxB,EAEG,GAFH;AAIA,aAAO,KAAP;AACA,KAND;AAOA;AAxBc,CAAjB;AA2BA,IAAI8I,aAAa,GAAG;AAClBzE,EAAAA,IAAI,EAAE,gBAAY;AACjB3C,IAAAA,CAAC,CAAC,8BAAD,CAAD,CAAkC6H,EAAlC,CAAqC,OAArC,EAA8C,YAAY;AACzD,UAAI0D,SAAS,GAAGvL,CAAC,CAAC,IAAD,CAAjB;AAAA,UACCyL,KAAK,GAAGF,SAAS,CAAC1C,IAAV,CAAe,QAAf,CADT;AAGA0C,MAAAA,SAAS,CAAC9C,QAAV,CAAmB,QAAnB,EAA6BmD,QAA7B,GAAwCpF,WAAxC,CAAoD,QAApD;AAEAxG,MAAAA,CAAC,CAAC,kCAAD,CAAD,CAAsCwG,WAAtC,CAAkD,MAAlD;AAEAxG,MAAAA,CAAC,CAAC,4DAA4DyL,KAA5D,GAAoE,IAArE,CAAD,CAA4EhD,QAA5E,CAAqF,MAArF;AACA,KATD;AAUA;AAZiB,CAApB;AAgBA,IAAIpB,UAAU,GAAG;AACf1E,EAAAA,IAAI,EAAE,gBAAY;AACjB3C,IAAAA,CAAC,CAAC,sBAAD,CAAD,CAA0B6H,EAA1B,CAA6B,OAA7B,EAAsC,YAAY;AACjD,UAAI0D,SAAS,GAAGvL,CAAC,CAAC,IAAD,CAAjB;AAAA,UACCyL,KAAK,GAAGF,SAAS,CAAC1C,IAAV,CAAe,WAAf,CADT;AAGA0C,MAAAA,SAAS,CAAC9C,QAAV,CAAmB,QAAnB,EAA6BmD,QAA7B,GAAwCpF,WAAxC,CAAoD,QAApD;AAEAxG,MAAAA,CAAC,CAAC,wCAAD,CAAD,CAA4CwG,WAA5C,CAAwD,MAAxD;AAEAxG,MAAAA,CAAC,CAAC,iEAAiEyL,KAAjE,GAAyE,IAA1E,CAAD,CAAiFhD,QAAjF,CAA0F,MAA1F;AACA,KATD;AAUA;AAZc,CAAjB;AAeA,IAAIuC,aAAa,GAAG;AAClBC,EAAAA,MAAM,EAAE,kBAAY;AACnB,QAAI1G,CAAC,GAAGlL,MAAM,CAAC,UAAD,CAAN,IAAsB,EAA9B;AACAkL,IAAAA,CAAC,CAACoK,EAAF,CAAK,GAAL;AACA;AAJiB,CAApB;AAOA,IAAIC,YAAY,GAAG,KAAnB;AAEC,IAAIzH,cAAc,GAAG;AACpBxE,EAAAA,IAAI,EAAE,gBAAY;AACjBwE,IAAAA,cAAc,CAAC0H,YAAf;AAEA7O,IAAAA,CAAC,CAAC,eAAD,CAAD,CAAmB6H,EAAnB,CAAsB,OAAtB,EAA+B,YAAY;AAC1CV,MAAAA,cAAc,CAAC2H,UAAf;AACA,KAFD;AAGA,GAPmB;AASpBD,EAAAA,YAAY,EAAE,wBAAY;AACzB,QAAI7O,CAAC,CAAC,+BAAD,CAAD,CAAmCpF,MAAnC,GAA4C,CAAhD,EAAmD;AAClD,UAAImU,GAAG,GAAGrV,QAAQ,CAAC2S,cAAT,CAAwB,aAAxB,CAAV;;AACA0C,MAAAA,GAAG,CAACC,YAAJ,GAAmB,YAAY;AAC9BJ,QAAAA,YAAY,GAAG,IAAf;;AACA,YAAI,CAAC5O,CAAC,CAAC,eAAD,CAAD,CAAmB2H,QAAnB,CAA4B,SAA5B,CAAL,EAA6C;AAC5C3H,UAAAA,CAAC,CAAC,eAAD,CAAD,CAAmByI,QAAnB,CAA4B,SAA5B;AACA;AACD,OALD;AAMA;AACD,GAnBmB;AAqBpBqG,EAAAA,UAAU,EAAE,sBAAY;AACvB,QAAIG,OAAO,GAAGjP,CAAC,CAAC,+BAAD,CAAf;;AAEA,QAAIiP,OAAO,CAAC,CAAD,CAAP,CAAWC,KAAX,KAAqB,KAAzB,EAAgC;AAC/BD,MAAAA,OAAO,CAAC,CAAD,CAAP,CAAWC,KAAX,GAAmB,IAAnB;AACAlP,MAAAA,CAAC,CAAC,eAAD,CAAD,CAAmByI,QAAnB,CAA4B,OAA5B;AACA,KAHD,MAGO;AACNwG,MAAAA,OAAO,CAAC,CAAD,CAAP,CAAWC,KAAX,GAAmB,KAAnB;AACAlP,MAAAA,CAAC,CAAC,eAAD,CAAD,CAAmBwG,WAAnB,CAA+B,OAA/B;AACA;AACD;AA/BmB,CAArB;;;;;;;;;;ACn1BD;AACA;AACA;;AAEA;AACA;;AACA;AAEC,WAAU2I,CAAV,EAAa;AAAE;AACf;AACA;;AAEA,MAAI5K,CAAC,GAAGlL,MAAM,CAAC,UAAD,CAAN,IAAsB,EAA9B;AACAA,EAAAA,MAAM,CAAC,UAAD,CAAN,GAAqBkL,CAArB;;AACA,MAAIA,CAAC,CAAC,SAAD,CAAD,KAAiB3E,SAArB,EAAgC;AAAE2E,IAAAA,CAAC,CAAC,SAAD,CAAD,GAAe,KAAf;AAAuB;;AACzD,MAAIA,CAAC,CAAC,SAAD,CAAD,KAAiB3E,SAArB,EAAgC;AAAE2E,IAAAA,CAAC,CAAC,SAAD,CAAD,GAAe,KAAf;AAAuB;;AACzD,MAAIA,CAAC,CAAC,UAAD,CAAD,KAAkB3E,SAAtB,EAAiC;AAAE2E,IAAAA,CAAC,CAAC,UAAD,CAAD,GAAgB,IAAhB;AAAuB;;AAC1D,MAAIA,CAAC,CAAC,WAAD,CAAD,KAAmB3E,SAAvB,EAAkC;AAAE2E,IAAAA,CAAC,CAAC,WAAD,CAAD,GAAiB,GAAjB;AAAuB;;AAC3D,MAAIA,CAAC,CAAC,aAAD,CAAD,KAAqB3E,SAAzB,EAAoC;AAAE2E,IAAAA,CAAC,CAAC,aAAD,CAAD,GAAmB,EAAnB;AAAwB;;AAC9D,MAAIA,CAAC,CAAC,mBAAD,CAAD,KAA2B3E,SAA/B,EAA0C;AAAE2E,IAAAA,CAAC,CAAC,mBAAD,CAAD,GAAyB,EAAzB;AAA8B;;AAC1E,MAAIA,CAAC,CAAC,aAAD,CAAD,KAAqB3E,SAAzB,EAAoC;AAAE2E,IAAAA,CAAC,CAAC,aAAD,CAAD,GAAmB,CAAnB;AAAuB;;AAC7DA,EAAAA,CAAC,CAAC,SAAD,CAAD,GAAe,EAAf;;AAEA,MAAIkC,GAAG,GAAG,SAANA,GAAM,GAAY;AAAE,QAAIlC,CAAC,CAAC,SAAD,CAAD,IAAgB4K,CAAC,CAAChP,OAAlB,IAA6BgP,CAAC,CAAChP,OAAF,CAAUsG,GAA3C,EAAgD,IAAI;AAAE0I,MAAAA,CAAC,CAAChP,OAAF,CAAUsG,GAAV,CAAc2I,KAAd,CAAoBD,CAAC,CAAChP,OAAtB,EAA+BgF,SAA/B;AAA4C,KAAlD,CAAmD,OAAOpL,CAAP,EAAU,CAAG;AAAE,GAA1I;;AACAwK,EAAAA,CAAC,CAAC8K,aAAF,GAAkB,YAAY;AAC7B,QAAI,CAAC9K,CAAC,CAAC,SAAD,CAAF,IAAiBA,CAAC,CAAC+K,YAAvB,EAAqC;AACrC/K,IAAAA,CAAC,CAAC+K,YAAF,GAAiB,IAAjB;AAEA,QAAIC,IAAI,GAAG,IAAIC,KAAJ,EAAX;;AACAD,IAAAA,IAAI,CAACE,MAAL,GAAcF,IAAI,CAACG,OAAL,GAAe,YAAY;AACxCnL,MAAAA,CAAC,CAAC,MAAD,CAAD,GAAagL,IAAI,CAACrO,MAAL,IAAe,CAA5B;AACAqD,MAAAA,CAAC,CAAC+K,YAAF,GAAiB,KAAjB;;AACA,UAAI/K,CAAC,CAACoK,EAAN,EAAU;AAAEpK,QAAAA,CAAC,CAACoK,EAAF;AAAS;AACrB,KAJD;;AAKAY,IAAAA,IAAI,CAACI,GAAL,GAAW,iHAAX;AACA,GAXD,CAhBa,CA4Bb;;;AACApL,EAAAA,CAAC,CAAC8K,aAAF;;AAEA9K,EAAAA,CAAC,CAACqL,OAAF,GAAY,UAAUC,IAAV,EAAgBrG,IAAhB,EAAsBpI,KAAtB,EAA6B;AACxCoI,IAAAA,IAAI,GAAGA,IAAI,CAACvP,WAAL,EAAP;;AACA,QAAIuP,IAAI,IAAI,OAAZ,EAAqB;AAAEqG,MAAAA,IAAI,CAACC,SAAL,GAAiB1O,KAAjB;AAAyB,KAAhD,MACK,IAAIoI,IAAI,IAAI,UAAZ,EAAwB;AAAEqG,MAAAA,IAAI,CAACE,QAAL,GAAgB3O,KAAhB;AAAwB,KAAlD,MACA,IAAIoI,IAAI,IAAI,QAAZ,EAAsB;AAAEqG,MAAAA,IAAI,CAACG,MAAL,GAAc5O,KAAd;AAAsB,KAA9C,MACA;AACJyO,MAAAA,IAAI,CAACpV,YAAL,CAAkB+O,IAAlB,EAAwBpI,KAAxB;AACA;AAED,GATD;;AAUAmD,EAAAA,CAAC,CAAC,cAAD,CAAD,GAAoBA,CAAC,CAACqL,OAAtB;;AAEArL,EAAAA,CAAC,CAAC0L,QAAF,GAAa,UAAUC,CAAV,EAAa;AAAE,WAAOA,CAAC,KAAK,MAAN,IAAgBA,CAAC,KAAK,IAAtB,IAA8BA,CAAC,KAAKtQ,SAApC,IAAiDsQ,CAAC,KAAK,EAAvD,IAA6DA,CAAC,KAAK,KAA1E;AAAkF,GAA9G;;AACA3L,EAAAA,CAAC,CAAC,aAAD,CAAD,GAAmB,UAAUpG,MAAV,EAAkBgS,UAAlB,EAA8B;AAChD;AAEA,QAAI5H,GAAG,GAAG,OAAQlP,MAAM,CAAC+W,gBAAf,IAAoC,WAApC,IAAmD/W,MAAM,CAAC+W,gBAAP,CAAwBjS,MAAxB,EAAgC,IAAhC,EAAsCkS,gBAAtC,CAAuDF,UAAvD,CAA7D,CAHgD,CAKhD;AACA;;AACA,QAAI,CAAC5L,CAAC,CAAC0L,QAAF,CAAW1H,GAAX,CAAL,EAAsB;AACrB,aAAOA,GAAP;AACA;;AAED,QAAIpK,MAAM,CAACmS,YAAX,EAAyB;AACxB/H,MAAAA,GAAG,GAAGpK,MAAM,CAACmS,YAAP,CAAoBH,UAAU,CAACxS,OAAX,CAAmB,kBAAnB,EAAuC,UAAUpD,CAAV,EAAagW,CAAb,EAAgBC,CAAhB,EAAmB;AAAE,eAAOD,CAAC,GAAGC,CAAC,CAACC,WAAF,EAAX;AAA6B,OAAzF,CAApB,KAAmHtS,MAAM,CAACmS,YAAP,CAAoBH,UAApB,CAAzH;AACA;;AAED,WAAO5L,CAAC,CAAC0L,QAAF,CAAW1H,GAAX,IAAkB,IAAlB,GAAyBA,GAAhC;AACA,GAhBD;;AAkBAhE,EAAAA,CAAC,CAAC,cAAD,CAAD,GAAoB,UAAUpG,MAAV,EAAkBgS,UAAlB,EAA8B;AACjD,QAAI5H,GAAG,GAAGhE,CAAC,CAAC,aAAD,CAAD,CAAiBpG,MAAjB,EAAyBgS,UAAzB,CAAV;AAEA,QAAI5H,GAAG,KAAK,IAAR,IAAgBA,GAAG,KAAK,GAAxB,IAA+BA,GAAG,KAAK,CAA3C,EAA8C,OAAOA,GAAP,CAHG,CAKjD;;AACA,QAAIA,GAAG,CAACtD,KAAJ,CAAU,CAAC,CAAX,KAAiB,IAArB,EAA2B,OAAOyL,UAAU,CAACnI,GAAG,CAACtD,KAAJ,CAAU,CAAV,EAAa,CAAC,CAAd,CAAD,CAAjB,CANsB,CAQjD;;AACA,QAAI0L,IAAI,GAAGjX,QAAQ,CAACqH,aAAT,CAAuB,KAAvB,CAAX;AACA4P,IAAAA,IAAI,CAAC/U,KAAL,CAAWuF,QAAX,GAAsBwP,IAAI,CAAC/U,KAAL,CAAWgV,UAAX,GAAwB,QAA9C;AACAD,IAAAA,IAAI,CAAC/U,KAAL,CAAWiV,QAAX,GAAsB,MAAtB;AACA1S,IAAAA,MAAM,CAACoD,UAAP,CAAkBF,WAAlB,CAA8BsP,IAA9B;AACAA,IAAAA,IAAI,CAAC/U,KAAL,CAAWqG,KAAX,GAAmBsG,GAAnB;AACA,QAAIuI,MAAM,GAAGH,IAAI,CAACI,WAAlB;AACA5S,IAAAA,MAAM,CAACoD,UAAP,CAAkBC,WAAlB,CAA8BmP,IAA9B;AACA,WAAOG,MAAP;AACA,GAjBD;;AAmBAvM,EAAAA,CAAC,CAACyM,YAAF,GAAiB,UAAUC,QAAV,EAAoB;AACpC,QAAIC,KAAK,GAAG,EAAZ,CADoC,CAEpC;;AACA,SAAK,IAAIvW,CAAC,GAAGsW,QAAQ,CAACrW,MAAT,KAAoB,CAAjC,EAAoCD,CAAC,EAArC,GAA0C;AACzCuW,MAAAA,KAAK,CAACvW,CAAD,CAAL,GAAWsW,QAAQ,CAACtW,CAAD,CAAnB;AACA;;AACD,WAAOuW,KAAP;AACA,GAPD;AASG;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGC3M,EAAAA,CAAC,CAAC,WAAD,CAAD,GAAiB,UAAUuH,GAAV,EAAeqF,OAAf,EAAwBC,OAAxB,EAAiCC,QAAjC,EAA2C;AAC3D,QAAIC,CAAC,GAAG,+BAA+BC,IAA/B,CAAoCzF,GAApC,CAAR;AACA,QAAI0F,CAAC,GAAGF,CAAC,CAAC,CAAD,CAAD,IAAQ,EAAhB;AAEA,QAAIG,EAAE,GAAG,4BAAT;AACAD,IAAAA,CAAC,CAAC7T,OAAF,CAAU8T,EAAV,EAAcN,OAAd,EAL2D,CAKnC;;AAExB,QAAIO,IAAI,GAAG,MAAMF,CAAC,CAAC7T,OAAF,CAAU8T,EAAV,EAAcL,OAAd,EAAuBzT,OAAvB,CAA+B,wBAA/B,EAAyD,EAAzD,EAA6DA,OAA7D,CAAqE,MAArE,EAA6E,GAA7E,CAAjB;AAEA,WAAO,CAAC2T,CAAC,CAAC,CAAD,CAAD,IAAQ,EAAT,IAAeD,QAAQ,CAACK,IAAD,CAAvB,IAAiCJ,CAAC,CAAC,CAAD,CAAD,IAAQ,EAAzC,CAAP;AACA,GAVD,CAzGa,CAqHb;;;AACA/M,EAAAA,CAAC,CAAC,cAAD,CAAD,GAAoB,UAAUoN,YAAV,EAAwBC,WAAxB,EAAqCC,kBAArC,EAAyDC,eAAzD,EAA0E;AAC7F,QAAIjJ,IAAI,GAAG;AACV,cAAQtE,CAAC,CAAC,MAAD,CADC;AAEV,eAASoN,YAFC;AAGV,aAAOtY,MAAM,CAAC0Y,gBAAP,IAA2B,CAHxB;AAIV,aAAOH,WAJG;AAKV,iBAAWE;AALD,KAAX,CAD6F,CAQ7F;;AACA,QAAIE,YAAY,GAAGzN,CAAC,CAAC,MAAD,CAAD,GAAY,EAAZ,GAAiBA,CAAC,CAAC,mBAAD,CAArC;AACA,QAAI0N,WAAW,GAAG1N,CAAC,CAAC,MAAD,CAAD,GAAY,EAAZ,GAAiBA,CAAC,CAAC,aAAD,CAApC;AACAsE,IAAAA,IAAI,CAAC,SAAD,CAAJ,GAAkBA,IAAI,CAAC,KAAD,CAAJ,GAAc,IAAd,GAAqBmJ,YAArB,GAAoCC,WAAtD,CAX6F,CAa7F;;AACA,QAAIC,UAAU,GAAGP,YAAY,GAAG9I,IAAI,CAAC,KAAD,CAApC,CAd6F,CAe7F;;AACAA,IAAAA,IAAI,CAAC,gBAAD,CAAJ,GAAyBnK,IAAI,CAACF,GAAL,CAAS+F,CAAC,CAAC,UAAD,CAAV,EAAwB;AAChD7F,IAAAA,IAAI,CAACc,KAAL,EAAY;AACXd,IAAAA,IAAI,CAACyT,IAAL,CAAUD,UAAU,GAAG3N,CAAC,CAAC,WAAD,CAAxB,IAAyCA,CAAC,CAAC,WAAD,CAD3C,CACyD;AADzD,KADwB,CAAzB;AAOA,QAAIhK,CAAC,GAAGgK,CAAC,CAAC,uBAAD,CAAT;;AACA,QAAIhK,CAAC,IAAI,OAAQA,CAAR,KAAe,UAAxB,EAAoC;AACnCA,MAAAA,CAAC,CAACsO,IAAD,CAAD;AACA;;AACD,QAAIuJ,UAAU,GAAGvJ,IAAI,CAAC,gBAAD,CAArB;;AAEA,QAAIuJ,UAAU,GAAGP,kBAAjB,EAAqC;AACpC;AACA,UAAIQ,CAAC,GAAG,EAAR,CAFoC,CAExB;;AACZ,UAAI7B,CAAC,GAAG,EAAR,CAHoC,CAGxB;;AACZ,UAAI8B,MAAM,GAAG/N,CAAC,CAAC,WAAD,CAAD,CACZqN,WADY,EAEZ;AACA,gBAAUW,CAAV,EAAaC,CAAb,EAAgBC,CAAhB,EAAmBvC,CAAnB,EAAsB;AACrBmC,QAAAA,CAAC,CAACI,CAAC,CAACxY,WAAF,EAAD,CAAD,GAAqBiW,CAArB;AACA,OALW,EAMZ;AACA,gBAAUwC,CAAV,EAAaF,CAAb,EAAgBC,CAAhB,EAAmBvC,CAAnB,EAAsB;AAErB;AACA,YAAIM,CAAC,CAAClE,IAAF,KAAW1M,SAAf,EAA0B;AACzB4Q,UAAAA,CAAC,CAAClE,IAAF,GAASoE,UAAU,CAAC2B,CAAC,CAAC/F,IAAF,IAAU,CAAX,CAAnB;;AACA,cAAIqG,KAAK,CAACnC,CAAC,CAAClE,IAAH,CAAT,EAAmB;AAAEkE,YAAAA,CAAC,CAAClE,IAAF,GAAS,CAAT;AAAa;;AAClCkE,UAAAA,CAAC,CAACrB,CAAF,GAAM,CAACiD,UAAU,GAAG5B,CAAC,CAAClE,IAAhB,EAAsBsG,OAAtB,EAAN;AACA;;AACD,YAAIpC,CAAC,CAACqC,KAAF,KAAYjT,SAAhB,EAA2B;AAC1B,cAAIuP,CAAC,GAAGuB,UAAU,CAAC2B,CAAC,CAACpQ,KAAF,IAAWoQ,CAAC,CAAClD,CAAb,IAAkBkD,CAAC,CAACS,QAArB,CAAlB;AACA,cAAIC,CAAC,GAAGrC,UAAU,CAAC2B,CAAC,CAACnR,MAAF,IAAYmR,CAAC,CAACU,CAAd,IAAmBV,CAAC,CAACW,SAAtB,CAAlB;;AACA,cAAI,CAACL,KAAK,CAACxD,CAAD,CAAN,IAAa,CAACwD,KAAK,CAACI,CAAD,CAAnB,IAA0B5D,CAAC,GAAG,CAA9B,IAAmC4D,CAAC,GAAG,CAA3C,EAA8C;AAC7CvC,YAAAA,CAAC,CAACqC,KAAF,GAAU1D,CAAC,GAAG4D,CAAd;AACAvC,YAAAA,CAAC,CAACuC,CAAF,GAAM,CAAGX,UAAU,GAAG5B,CAAC,CAAClE,IAAhB,GAAwB6C,CAAzB,GAA8B4D,CAA/B,EAAkCH,OAAlC,EAAN;AACA,WAHD,MAGO;AACNpC,YAAAA,CAAC,CAACqC,KAAF,GAAU,QAAV;AACA;AACD;;AAED,YAAIJ,CAAC,CAAChW,KAAF,CAAQ,WAAR,KAAwBoM,IAAI,CAAC,MAAD,CAAhC,EAA0C;AAAE,iBAAO2J,CAAC,GAAG,aAAX;AAA2B;;AACvE,YAAIC,CAAC,CAAChW,KAAF,CAAQ,WAAR,CAAJ,EAA0B;AAAE,iBAAO+V,CAAC,GAAG,UAAJ,GAAiB3J,IAAI,CAAC,SAAD,CAA5B;AAA0C;;AAEtE,YAAI4J,CAAC,CAAChW,KAAF,CAAQ,uBAAR,CAAJ,EAAsC;AAAE,iBAAO+V,CAAC,GAAGC,CAAJ,GAAQ,GAAR,GAAcjC,CAAC,CAACrB,CAAvB;AAA2B;;AACnE,YAAIsD,CAAC,CAAChW,KAAF,CAAQ,yBAAR,CAAJ,EAAwC;AAAE,iBAAO+V,CAAC,GAAGC,CAAJ,GAAQ,GAAR,GAAcjC,CAAC,CAACuC,CAAvB;AAA2B;;AAErE,eAAOL,CAAP;AACA,OAjCW,EAkCZ;AACA,gBAAUlB,CAAV,EAAa;AAAE,eAAOA,CAAP;AAAW,OAnCd,CAAb;AAqCA,aAAO;AAAE,eAAOc,MAAT;AAAiB,4BAAoBF;AAArC,OAAP;AACA;;AACD,WAAO,IAAP;AACA,GAzED;;AA0EA7N,EAAAA,CAAC,CAAC,gBAAD,CAAD,GAAsB,UAAU0O,GAAV,EAAerB,WAAf,EAA4B;AACjD,QAAIsB,WAAW,GAAG3O,CAAC,CAAC,cAAD,CAAD,CAAkB0O,GAAlB,EAAuB,WAAvB,CAAlB;AACA,QAAIE,MAAM,GAAG5O,CAAC,CAAC,cAAD,CAAD,CAAkB2O,WAAlB,EACZtB,WADY,EAEZqB,GAAG,CAACxV,YAAJ,CAAiB,kBAAjB,IAAuC,CAF3B,EAGZwV,GAHY,CAAb;;AAKA,QAAIE,MAAJ,EAAY;AACXF,MAAAA,GAAG,CAACtD,GAAJ,GAAUwD,MAAM,CAAC,KAAD,CAAhB;AACA5O,MAAAA,CAAC,CAACqL,OAAF,CAAUqD,GAAV,EAAe,kBAAf,EAAmCE,MAAM,CAAC,kBAAD,CAAzC;;AACA,UAAI5O,CAAC,CAAC,YAAD,CAAL,EAAqB;AACpB,YAAI2O,WAAW,GAAGC,MAAM,CAAC,kBAAD,CAAxB,EAA8C;AAC7CF,UAAAA,GAAG,CAACrX,KAAJ,CAAUqG,KAAV,GAAkBsC,CAAC,CAAC,aAAD,CAAD,CAAiB0O,GAAjB,EAAsB,WAAtB,CAAlB;AACA1O,UAAAA,CAAC,CAACqL,OAAF,CAAUqD,GAAV,EAAe,qBAAf,EAAsC,IAAtC;AACA,SAHD,MAGO;AACNA,UAAAA,GAAG,CAACrX,KAAJ,CAAUqG,KAAV,GAAkB,MAAlB;AACA;AACD;;AACDsC,MAAAA,CAAC,CAAC,SAAD,CAAD,CAAatJ,IAAb,CAAkBgY,GAAlB;AACAxM,MAAAA,GAAG,CAAC,wBAAwB0M,MAAM,CAAC,KAAD,CAA/B,CAAH;AACA,KAbD,MAaO,IAAI5O,CAAC,CAAC,YAAD,CAAD,IAAmB0O,GAAG,CAACxV,YAAJ,CAAiB,qBAAjB,CAAvB,EAAgE;AACtE,UAAI2V,UAAU,GAAG1C,UAAU,CAACuC,GAAG,CAACxV,YAAJ,CAAiB,kBAAjB,CAAD,CAA3B;;AACA,UAAI,CAACkV,KAAK,CAACS,UAAD,CAAN,IAAsBF,WAAW,IAAIE,UAAzC,EAAqD;AACpDH,QAAAA,GAAG,CAACrX,KAAJ,CAAUqG,KAAV,GAAkB,MAAlB;AACAgR,QAAAA,GAAG,CAACI,eAAJ,CAAoB,qBAApB;AACA;AACD;AAED,GA5BD;;AA6BA9O,EAAAA,CAAC,CAACoK,EAAF,GAAO,UAAU2E,KAAV,EAAiB;AACvB,QAAI3Y,CAAJ,EAAO4Y,EAAP,EAAWC,CAAX,EAAcC,EAAd,EAAkBhB,CAAlB,EAAqBiB,EAArB;AAEA,QAAInP,CAAC,CAACoP,SAAF,GAAc,CAAlB,EAAqBxE,CAAC,CAAC1T,YAAF,CAAe8I,CAAC,CAACoP,SAAjB;AACrBpP,IAAAA,CAAC,CAACoP,SAAF,GAAc,CAAd;;AAEA,QAAIpP,CAAC,CAAC+K,YAAF,IAAkB/K,CAAC,CAAC,aAAD,CAAD,GAAmB,CAArC,IAA0C,CAACA,CAAC,CAACqP,YAAjD,EAA+D;AAC9DrP,MAAAA,CAAC,CAACqP,YAAF,GAAiB,IAAjB;AACAN,MAAAA,KAAK,GAAG/O,CAAC,CAAC,aAAD,CAAT;AACA;;AACD,QAAI+O,KAAK,IAAIA,KAAK,GAAG,CAArB,EAAwB;AACvB/O,MAAAA,CAAC,CAACoP,SAAF,GAAcxE,CAAC,CAACtU,UAAF,CAAa0J,CAAC,CAACoK,EAAf,EAAmB2E,KAAnB,CAAd;AACA;AACA;;AACD,QAAIO,SAAS,GAAG,IAAIC,IAAJ,GAAWC,OAAX,EAAhB;AAEA,QAAIC,SAAS,GAAG,CAAhB,CAhBuB,CAiBvB;;AACA,QAAIC,CAAC,GAAG1P,CAAC,CAACyM,YAAF,CAAe7B,CAAC,CAACzV,QAAF,CAAWwa,oBAAX,CAAgC,UAAhC,CAAf,CAAR;;AACA,SAAKvZ,CAAC,GAAG,CAAJ,EAAO4Y,EAAE,GAAGU,CAAC,CAACrZ,MAAnB,EAA2BD,CAAC,GAAG4Y,EAA/B,EAAmC5Y,CAAC,EAApC,EAAwC;AACvC,UAAIwZ,EAAE,GAAGF,CAAC,CAACtZ,CAAD,CAAV;;AACA,UAAIwZ,EAAE,CAAC1W,YAAH,CAAgB,eAAhB,MAAqC,IAAzC,EAA+C;AAE9C,YAAI2W,GAAG,GAAGjF,CAAC,CAACzV,QAAF,CAAWqH,aAAX,CAAyB,KAAzB,CAAV;AACA,YAAIsT,QAAQ,GAAIF,EAAE,CAACG,WAAH,IAAkBH,EAAE,CAACzT,SAArC;;AACA,YAAI,CAAC2T,QAAD,IAAaA,QAAQ,CAAC1W,OAAT,CAAiB,aAAjB,EAAgC,EAAhC,EAAoC/C,MAApC,KAA+C,CAAhE,EAAmE;AAClE;AACA,cAAIqY,GAAG,GAAG,IAAIzD,KAAJ,EAAV;;AACA,eAAK,IAAI+E,EAAE,GAAG,CAAd,EAAiBA,EAAE,GAAGJ,EAAE,CAACK,UAAH,CAAc5Z,MAApC,EAA4C2Z,EAAE,EAA9C,EAAkD;AACjD,gBAAIha,CAAC,GAAG4Z,EAAE,CAACK,UAAH,CAAcD,EAAd,CAAR;;AACA,gBAAIha,CAAC,IAAIA,CAAC,CAACka,SAAP,IAAoBla,CAAC,CAACiP,IAAF,CAAOnN,OAAP,CAAe,WAAf,MAAgC,CAAxD,EAA2D;AAC1DkI,cAAAA,CAAC,CAACqL,OAAF,CAAUqD,GAAV,EAAe1Y,CAAC,CAACiP,IAAF,CAAOvE,KAAP,CAAa,IAAI1K,CAAC,CAACiP,IAAF,CAAO5O,MAAxB,CAAf,EAAgDL,CAAC,CAAC6G,KAAlD;AACA;AACD;;AACDgT,UAAAA,GAAG,CAAC/S,WAAJ,CAAgB4R,GAAhB;AACA,SAVD,MAUO;AACN;AACAmB,UAAAA,GAAG,CAAC1T,SAAJ,GAAgB2T,QAAQ,CAAC1W,OAAT,CAAiB,sBAAjB,EAAyC,cAAzC,EACfA,OADe,CACP,OADO,EACE,GADF,EACOA,OADP,CACe,OADf,EACwB,GADxB,EAC6BA,OAD7B,CACqC,QADrC,EAC+C,GAD/C,CAAhB;AAEA,SAlB6C,CAmB9C;;;AACA,YAAI+W,WAAW,GAAGN,GAAG,CAACF,oBAAJ,CAAyB,KAAzB,CAAlB;;AACA,aAAKV,CAAC,GAAG,CAAJ,EAAOC,EAAE,GAAGiB,WAAW,CAAC9Z,MAA7B,EAAqC4Y,CAAC,GAAGC,EAAzC,EAA6CD,CAAC,EAA9C,EAAkD;AACjD,cAAImB,EAAE,GAAGD,WAAW,CAAClB,CAAD,CAApB;;AACA,cAAImB,EAAE,CAAChF,GAAH,KAAW,IAAX,IAAmBgF,EAAE,CAAChF,GAAH,CAAO/U,MAAP,GAAgB,CAAvC,EAA0C;AACzC2J,YAAAA,CAAC,CAACqL,OAAF,CAAU+E,EAAV,EAAc,UAAd,EAA0BA,EAAE,CAAChF,GAA7B;AACAgF,YAAAA,EAAE,CAAChF,GAAH,GAAS,EAAT;AACA;;AACDpL,UAAAA,CAAC,CAACqL,OAAF,CAAU+E,EAAV,EAAc,eAAd,EAA+B,IAA/B;AACAR,UAAAA,EAAE,CAAC5S,UAAH,CAAcoE,YAAd,CAA2BgP,EAA3B,EAA+BR,EAA/B;AACAH,UAAAA,SAAS;AACT,SA9B6C,CA+B9C;;;AACAG,QAAAA,EAAE,CAAC5S,UAAH,CAAcC,WAAd,CAA0B2S,EAA1B;AACA;AACD,KAvDsB,CAyDvB;;;AACA,QAAI,eAAe,OAAO5P,CAAC,CAAC,iBAAD,CAA3B,EAAgD;AAC/CA,MAAAA,CAAC,CAAC,iBAAD,CAAD;AACA,KA5DsB,CA8DvB;;;AACA,QAAIqQ,WAAW,GAAG,CAAlB;AACA,QAAIC,MAAM,GAAGtQ,CAAC,CAACyM,YAAF,CAAe7B,CAAC,CAACzV,QAAF,CAAWwa,oBAAX,CAAgC,KAAhC,CAAf,CAAb;;AACA,SAAKzB,CAAC,GAAG,CAAJ,EAAOiB,EAAE,GAAGmB,MAAM,CAACja,MAAxB,EAAgC6X,CAAC,GAAGiB,EAApC,EAAwCjB,CAAC,EAAzC,EAA6C;AAC5C,UAAIoC,MAAM,CAACpC,CAAD,CAAN,CAAUhV,YAAV,CAAuB,eAAvB,MAA4C,IAAhD,EAAsD;AACrD,YAAImU,WAAW,GAAGiD,MAAM,CAACpC,CAAD,CAAN,CAAUhV,YAAV,CAAuB,UAAvB,KAAsCoX,MAAM,CAACpC,CAAD,CAAN,CAAU9C,GAAlE;AACApL,QAAAA,CAAC,CAAC,gBAAD,CAAD,CAAoBsQ,MAAM,CAACpC,CAAD,CAA1B,EAA+Bb,WAA/B;AACAgD,QAAAA,WAAW;AACX;AACD;;AAEDlb,IAAAA,QAAQ,CAACE,gBAAT,CAA0B,wCAA1B,EAAoEC,OAApE,CAA4E,UAAAib,KAAK,EAAI;AACpFrO,MAAAA,GAAG,CAAC,gBAAD,CAAH;;AACA,UAAIqO,KAAK,CAACrX,YAAN,CAAmB,KAAnB,KAA6B,IAAjC,EAAuC;AACtC,YAAI6U,MAAM,GAAGwC,KAAK,CAACrX,YAAN,CAAmB,KAAnB,EAA0BE,OAA1B,CAAkC,eAAlC,kBAA4DmX,KAAK,CAACjR,OAAN,CAAc,iBAAd,EAAiCkR,WAA7F,EAAb;AACAzC,QAAAA,MAAM,GAAGA,MAAM,CAAC3U,OAAP,CAAe,gBAAf,mBAA2CmX,KAAK,CAACjR,OAAN,CAAc,iBAAd,EAAiCX,YAA5E,EAAT;AAEA4R,QAAAA,KAAK,CAACra,YAAN,CAAmB,KAAnB,EAA0B6X,MAA1B;AACAwC,QAAAA,KAAK,CAACra,YAAN,CAAmB,UAAnB,EAA+B6X,MAA/B;AACA;AACD,KATD;AAWA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;;AAGE,QAAI0C,OAAO,GAAGzQ,CAAC,CAAC,SAAD,CAAD,CAAaU,KAAb,EAAd;AACAV,IAAAA,CAAC,CAAC,SAAD,CAAD,CAAa3J,MAAb,GAAsB,CAAtB,CA/FuB,CAiGvB;;AACA,QAAI,CAACoa,OAAO,CAACpa,MAAR,GAAiB,CAAjB,IAAsB,CAAC2J,CAAC,CAAC0Q,WAA1B,KAA0C,eAAe,OAAO1Q,CAAC,CAAC,eAAD,CAArE,EAAwF;AACvFA,MAAAA,CAAC,CAAC,eAAD,CAAD,CAAmByQ,OAAnB;AACAzQ,MAAAA,CAAC,CAAC0Q,WAAF,GAAgB,IAAhB;AACA;;AAEDxO,IAAAA,GAAG,CAAC,wBAAwBuN,SAAxB,GAAoC,sCAApC,GAA6EY,WAA7E,GAA2F,mBAA3F,GAAiHI,OAAO,CAACpa,MAAzH,GAAkI,IAAlI,IAA0I,IAAIkZ,IAAJ,GAAWC,OAAX,KAAuBF,SAAjK,IAA8K,IAA/K,CAAH;AACA,GAxGD;;AA0GAtP,EAAAA,CAAC,CAAC,uBAAD,CAAD,GAA6BA,CAAC,CAACoK,EAA/B,CAvUa,CAwUb;;AACA,MAAIQ,CAAC,CAAC7V,gBAAN,EAAwB;AACvB6V,IAAAA,CAAC,CAAC7V,gBAAF,CAAmB,QAAnB,EAA6B,YAAY;AAAEiL,MAAAA,CAAC,CAACoK,EAAF,CAAK,GAAL;AAAY,KAAvD,EAAyD,KAAzD;AACAQ,IAAAA,CAAC,CAAC7V,gBAAF,CAAmB,kBAAnB,EAAuC,YAAY;AAClDiL,MAAAA,CAAC,CAACoK,EAAF,GADkD,CAElD;;AACAQ,MAAAA,CAAC,CAAC+F,mBAAF,CAAsB,MAAtB,EAA8B3Q,CAAC,CAACoK,EAAhC,EAAoC,KAApC;AACA,KAJD,EAIG,KAJH;AAKAQ,IAAAA,CAAC,CAAC7V,gBAAF,CAAmB,MAAnB,EAA2BiL,CAAC,CAACoK,EAA7B,EAAiC,KAAjC;AACA,GARD,MAQO,IAAIQ,CAAC,CAACgG,WAAN,EAAmB;AACzBhG,IAAAA,CAAC,CAACgG,WAAF,CAAc,QAAd,EAAwB5Q,CAAC,CAACoK,EAA1B;AACAQ,IAAAA,CAAC,CAACgG,WAAF,CAAc,UAAd,EAA0B,YAAY;AAAE5Q,MAAAA,CAAC,CAACoK,EAAF,CAAK,GAAL;AAAY,KAApD;AACA;AAED,CAtVA,EAsVCtV,MAtVD,CAAD;;;;;;;;;;ACRAA,MAAM,CAAC+b,QAAP,GAAkB;AACdC,EAAAA,OAAO,EAAE,KADK;AAEdC,EAAAA,OAAO,EAAE,IAFK;AAGdC,EAAAA,QAAQ,EAAE,IAHI;AAIdC,EAAAA,SAAS,EAAE,GAJG;AAKdC,EAAAA,WAAW,EAAE,EALC;AAMdC,EAAAA,iBAAiB,EAAE,EANL;AAOdC,EAAAA,WAAW,EAAE;AAPC,CAAlB;;;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,aAAa;AACb,IAAI;AACJ;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,MAAM;AACN,eAAe;AACf;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,0DAA0D;AAC1D;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;;AAEA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA,WAAW;AACX;;AAEA;AACA;AACA,wCAAwC,WAAW;AACnD;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,4BAA4B;AAC5B;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,UAAU;AACV;AACA;AACA;AACA;;AAEA;;AAEA,UAAU;AACV;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,qCAAqC,cAAc;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAM;AACN;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,iCAAiC,mBAAmB;AACpD;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,kBAAkB;;AAElB;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,yBAAyB,gBAAgB;AACzC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,aAAa;AACb;AACA;;AAEA;AACA,aAAa;AACb;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,KAAK;;AAEL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,+CAA+C,QAAQ;AACvD;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc;AACd;AACA;;AAEA,YAAY;AACZ;AACA;AACA;;AAEA,YAAY;AACZ;AACA;AACA;;AAEA,YAAY;AACZ;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA,+CAA+C,QAAQ;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,KAAK;;AAEL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA,QAAQ;AACR;AACA;;AAEA;AACA,KAAK;;AAEL;AACA,+CAA+C,QAAQ;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA,+CAA+C,QAAQ;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD;AACA;AACA;AACA;AACA,EAAE,KAA0B,oBAAoB,CAAE;AAClD;;AAEA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;AC3uBA;;;;;;;;;;;;;;;ACAA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEe;AACf;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,KAAK;AACL;AACA;;;;;;;;;;;;;;;AClCe;AACf;AACA;AACA;AACA;;;;;;;;;;;;;;;ACJA;AACA,kBAAkB,kBAAkB;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEe;AACf;AACA;AACA;AACA;;;;;;;;;;;;;;;ACde;AACf;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;;;;;ACdA;AACA;AACA;AACA,kBAAkB,sBAAsB;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,EAAE;AACtC,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,0BAA0B;;AAE1B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,kCAAkC;;AAElC;AACA;AACA;;AAEA;AACA;AACA,qEAAqE;AACrE;AACA;AACA,0CAA0C;AAC1C;AACA,uEAAuE;AACvE;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,6DAA6D;AAC7D;AACA,oBAAoB,oBAAoB;AACxC;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ;AACR;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA,WAAW;AACX;AACA,OAAO;AACP;AACA,6CAA6C;AAC7C,OAAO;AACP;AACA,6BAA6B;AAC7B;AACA,KAAK;AACL;AACA,oBAAoB,yCAAyC;AAC7D,mBAAmB;AACnB;AACA;AACA;;AAEA,mCAAmC,WAAW;AAC9C;;AAE0B;;;;;;;UCrI1B;UACA;;UAEA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;;UAEA;UACA;;UAEA;UACA;UACA;;UAEA;UACA;;;;;WCzBA;WACA;WACA;WACA;WACA;WACA,iCAAiC,WAAW;WAC5C;WACA;;;;;WCPA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA,sDAAsD;WACtD,sCAAsC,iEAAiE;WACvG;WACA;WACA;WACA;WACA;WACA;;;;;WCzBA;WACA;WACA;WACA;WACA,yCAAyC,wCAAwC;WACjF;WACA;WACA;;;;;WCPA;WACA;WACA;WACA;WACA;WACA;WACA;WACA,EAAE;WACF;;;;;WCRA;WACA;WACA;WACA;WACA;;;;;WCJA;WACA;WACA;WACA;WACA,GAAG;WACH;WACA;WACA,CAAC;;;;;WCPD;;;;;WCAA;WACA;WACA;WACA;WACA,uBAAuB,4BAA4B;WACnD;WACA;WACA;WACA,iBAAiB,oBAAoB;WACrC;WACA,mGAAmG,YAAY;WAC/G;WACA;WACA;WACA;WACA;;WAEA;WACA;WACA;WACA;WACA;WACA;;WAEA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA,mEAAmE,iCAAiC;WACpG;WACA;WACA;WACA;;;;;WCzCA;WACA;WACA;WACA,uDAAuD,iBAAiB;WACxE;WACA,gDAAgD,aAAa;WAC7D;;;;;WCNA;;;;;WCAA;;WAEA;WACA;WACA;WACA;WACA;WACA;;WAEA;WACA;WACA;WACA,iCAAiC;;WAEjC;WACA;WACA;WACA,KAAK;WACL,eAAe;WACf;WACA;WACA;;WAEA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;;WAEA;;WAEA;;WAEA;;WAEA;;WAEA;;WAEA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA,MAAM,qBAAqB;WAC3B;WACA;WACA;WACA;WACA;WACA;;WAEA;;WAEA;WACA;WACA;;;;;;;;;;;;;;;;;;;;;;;;;;;ACrFA;AACA;CAGA;;AACA;AACA;CAGA;;CAEA;AACA;AACA;;AAEA,yKAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AACGjc,UAAAA,QAAQ,CAAC4D,aAAT,CAAuB,MAAvB,EAA+B/B,SAA/B,CAAyCG,MAAzC,CAAgD,OAAhD;AAEM0H,UAAAA,SAHT,GAGqB,IAAID,6DAAJ,EAHrB;AAAA;AAAA,iBAISC,SAAS,CAACT,IAAV,EAJT;;AAAA;AAAA;AAOaE,UAAAA,GAPb,GAOmB,IAAI1L,4CAAJ,EAPnB;AAQO0L,UAAAA,GAAG,CAACrL,cAAJ,GAAqB,EAArB;AACAqL,UAAAA,GAAG,CAAChL,cAAJ,GAAqB,GAArB;AACAwB,UAAAA,MAAM,CAACwJ,GAAP,GAAaA,GAAb;AAEAA,UAAAA,GAAG,CAACgT,kBAAJ,GAAyBzS,SAAzB;AAEAP,UAAAA,GAAG,CAACiT,gBAAJ,GAAuB,IAAIzT,2DAAJ,EAAvB;AACAQ,UAAAA,GAAG,CAAC+S,iBAAJ,GAAwB,IAAIA,+EAAJ,EAAxB,CAfP,CAgBO;AACA;AACA;AAEC;;AACA,cAAIlc,QAAQ,CAAC4D,aAAT,CAAuB,iBAAvB,CAAJ,EAA+C;AAC3C,oOAAkFwC,IAAlF,CAAuF,UAAA/F,CAAC,EAAI;AACxF8I,cAAAA,GAAG,CAACkT,eAAJ,GAAsB,IAAIhc,CAAC,WAAL,EAAtB;AACH,aAFD;AAGH,WAzBT,CA0BO;AACA;AACA;AACA;AACA;;;AA9BP;AAAA,iBAgCa8I,GAAG,CAACF,IAAJ,EAhCb;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAkCOxC,UAAAA,OAAO,CAACC,KAAR;AAlCP;;AAAA;AAoCI;AAEDD,UAAAA,OAAO,CAACsG,GAAR;AACA/M,UAAAA,QAAQ,CAAC4B,eAAT,CAAyBC,SAAzB,CAAmCG,MAAnC,CAA0C,mBAA1C;;AAvCH;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAAD,K","sources":["webpack://amaris_2021/./node_modules/@babel/runtime/regenerator/index.js","webpack://amaris_2021/./node_modules/@humandigital-agency/consent-controller/index.js","webpack://amaris_2021/./node_modules/@humandigital-agency/consent-controller/src/html/cookiebar.js","webpack://amaris_2021/./node_modules/@humandigital-agency/consent-controller/src/html/form.js","webpack://amaris_2021/./node_modules/@humandigital-agency/consent-controller/src/js/consentController.js","webpack://amaris_2021/./werkenbij/scripts/app.js","webpack://amaris_2021/./werkenbij/scripts/controllers/header.js","webpack://amaris_2021/./werkenbij/scripts/controllers/polyfill.js","webpack://amaris_2021/./werkenbij/scripts/libraries/oldMain.js","webpack://amaris_2021/./werkenbij/scripts/libraries/slimmage.js","webpack://amaris_2021/./werkenbij/scripts/libraries/slimmageSettings.js","webpack://amaris_2021/./node_modules/regenerator-runtime/runtime.js","webpack://amaris_2021/external var \"$\"","webpack://amaris_2021/./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","webpack://amaris_2021/./node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack://amaris_2021/./node_modules/@babel/runtime/helpers/esm/createClass.js","webpack://amaris_2021/./node_modules/@babel/runtime/helpers/esm/typeof.js","webpack://amaris_2021/./node_modules/@humandigital-agency/consent-controller/node_modules/js-cookie/dist/js.cookie.mjs","webpack://amaris_2021/webpack/bootstrap","webpack://amaris_2021/webpack/runtime/compat get default export","webpack://amaris_2021/webpack/runtime/create fake namespace object","webpack://amaris_2021/webpack/runtime/define property getters","webpack://amaris_2021/webpack/runtime/ensure chunk","webpack://amaris_2021/webpack/runtime/get javascript chunk filename","webpack://amaris_2021/webpack/runtime/global","webpack://amaris_2021/webpack/runtime/hasOwnProperty shorthand","webpack://amaris_2021/webpack/runtime/load script","webpack://amaris_2021/webpack/runtime/make namespace object","webpack://amaris_2021/webpack/runtime/publicPath","webpack://amaris_2021/webpack/runtime/jsonp chunk loading","webpack://amaris_2021/./werkenbij/scripts/index.js"],"sourcesContent":["module.exports = require(\"regenerator-runtime\");\n","import ConsentController from './src/js/consentController';\r\n\r\nexport default ConsentController;\r\nexport {\r\n ConsentController,\r\n};","export default (props) => {\r\n let {\r\n title,\r\n textMobile,\r\n textDesktop,\r\n textButtonAgree,\r\n textButtonChange,\r\n allowChange,\r\n changeUrl,\r\n textButtonRefuse,\r\n allowRefuse,\r\n useModal,\r\n } = props;\r\n\r\n // Fallbacks, inheritances\r\n if (!textMobile && textDesktop) {\r\n textMobile = textDesktop;\r\n } else if (textMobile && !textDesktop) {\r\n textDesktop = textMobile;\r\n }\r\n\r\n if (!textButtonAgree) {\r\n textButtonAgree = `Akkoord`;\r\n }\r\n\r\n if (!textButtonChange) {\r\n textButtonChange = `Wijzigen`;\r\n }\r\n\r\n if (!textButtonRefuse) {\r\n textButtonRefuse = `Weigeren`;\r\n }\r\n\r\n if (allowChange === undefined) {\r\n allowChange = true;\r\n }\r\n\r\n if (allowRefuse === undefined) {\r\n allowRefuse = false;\r\n }\r\n\r\n const parentElement = document.createElement(`div`);\r\n parentElement.innerHTML = `\r\n
`;\r\n return parentElement.firstElementChild;\r\n}","export default (props) => {\r\n let {\r\n title,\r\n labelFunctional,\r\n textFunctional,\r\n labelAnalytics,\r\n textAnalytics,\r\n labelTracking,\r\n textTracking,\r\n labelSave,\r\n textSuccess,\r\n\r\n analyticsChecked,\r\n trackingChecked,\r\n } = props;\r\n\r\n // Fallbacks, inheritances\r\n if (!labelFunctional) {\r\n labelFunctional = `Functioneel`;\r\n }\r\n\r\n if (!labelAnalytics) {\r\n labelAnalytics = `Analytics`;\r\n }\r\n\r\n if (!labelTracking) {\r\n labelFunctional = `Tracking`;\r\n }\r\n\r\n if (analyticsChecked === undefined) {\r\n analyticsChecked = false;\r\n }\r\n\r\n if (trackingChecked === undefined) {\r\n trackingChecked = false;\r\n }\r\n\r\n if (!labelSave) {\r\n labelSave = `Opslaan`;\r\n }\r\n\r\n if (!textSuccess) {\r\n textSuccess = `Opgeslagen!`;\r\n }\r\n\r\n const functionalID = Date.now().toString(18) + Math.random().toString(18).substr(2);\r\n const analyticsID = Date.now().toString(18) + Math.random().toString(18).substr(2);\r\n const trackingID = Date.now().toString(18) + Math.random().toString(18).substr(2);\r\n\r\n const parentElement = document.createElement(`div`);\r\n parentElement.innerHTML = `\r\n `;\r\n return parentElement.firstElementChild;\r\n}","import Cookiebar from './../html/cookiebar';\r\nimport Consentform from './../html/form';\r\n// import Consentmodal from './../html/modal';\r\n\r\nimport Cookies from 'js-cookie';\r\n\r\nexport default class ConsentController {\r\n constructor() {\r\n if (Cookies.get('AVGPermissions')) {\r\n this.AVGCookie = JSON.parse(Cookies.get('AVGPermissions'));\r\n }\r\n this.configPromise = null;\r\n\r\n this.cookiebar = document.querySelector('.consent-cookiebar');\r\n if (!this.cookiebar) {\r\n this.createCookiebar();\r\n this.cookiebar = document.querySelector('.consent-cookiebar');\r\n }\r\n\r\n this.loadGTM();\r\n this.initCookiebar();\r\n this.initForm();\r\n }\r\n\r\n get functional() {\r\n if (this.AVGCookie === undefined) {\r\n return true;\r\n }\r\n return this.AVGCookie.Functional;\r\n }\r\n\r\n get analytics() {\r\n if (this.AVGCookie === undefined) {\r\n return false;\r\n }\r\n return this.AVGCookie.Analytics;\r\n }\r\n\r\n get tracking() {\r\n if (this.AVGCookie === undefined) {\r\n return false;\r\n }\r\n return this.AVGCookie.Tracking;\r\n }\r\n\r\n initCookiebar() {\r\n if (this.cookiebar) {\r\n this.cookiebar.querySelectorAll(`[data-agree]`).forEach(button => {\r\n button.addEventListener(`click`, this.agreeAll.bind(this));\r\n });\r\n this.cookiebar.querySelectorAll(`[data-refuse]`).forEach(button => {\r\n button.addEventListener(`click`, this.refuseAll.bind(this));\r\n });\r\n /* if (this.cookiebar.dataset.modal && this.cookiebar.dataset.modal == \"true\") {\r\n this.prepareConfigModal();\r\n } */\r\n }\r\n this.checkCookiebarState();\r\n }\r\n\r\n /**\r\n * Form should only be loaded on the page where the user can change their preferences\r\n */\r\n initForm() {\r\n document.querySelectorAll(`[data-consent-form]`).forEach(dataElement => {\r\n const data = dataElement.dataset;\r\n const props = {\r\n title: data.consentTitle,\r\n labelFunctional: data.consentLabelFunctional,\r\n textFunctional: dataElement.querySelector(`[data-consent-text-functional]`) ? dataElement.querySelector(`[data-consent-text-functional]`).innerHTML : ``,\r\n labelAnalytics: data.consentLabelAnalytics,\r\n textAnalytics: dataElement.querySelector(`[data-consent-text-analytics]`) ? dataElement.querySelector(`[data-consent-text-analytics]`).innerHTML : ``,\r\n labelTracking: data.consentLabelTracking,\r\n textTracking: dataElement.querySelector(`[data-consent-text-tracking]`) ? dataElement.querySelector(`[data-consent-text-tracking]`).innerHTML : ``,\r\n labelSave: data.consentLabelSave,\r\n textSuccess: data.consentSuccess,\r\n analyticsChecked: this.analytics,\r\n trackingChecked: this.tracking,\r\n };\r\n const consentform = Consentform(props);\r\n dataElement.parentElement.insertBefore(consentform, dataElement);\r\n dataElement.remove();\r\n\r\n consentform.querySelector(`[data-save]`).addEventListener(`click`, (e) => {\r\n e.preventDefault();\r\n this.update(\r\n consentform.querySelector(`[name=\"functional\"]`).checked,\r\n consentform.querySelector(`[name=\"analytics\"]`).checked,\r\n consentform.querySelector(`[name=\"tracking\"]`).checked,\r\n );\r\n this.checkCookiebarState();\r\n if (consentform.querySelector(`.successText`)) {\r\n consentform.querySelector(`.successText`).classList.add(`saved`);\r\n setTimeout(() => {\r\n consentform.querySelector(`.successText`).classList.remove(`saved`);\r\n }, 1500);\r\n }\r\n });\r\n });\r\n\r\n }\r\n\r\n /**\r\n * Handles saving cookie and updating GTM accordingly\r\n * @param {Boolean} functional \r\n * @param {Boolean} analytics \r\n * @param {Boolean} tracking \r\n */\r\n update(functional, analytics, tracking) {\r\n if (functional !== undefined && analytics !== undefined && tracking !== undefined) {\r\n this.AVGCookie = {\r\n Functional: functional,\r\n Analytics: analytics,\r\n\t\t\t Tracking: tracking,\r\n };\r\n\r\n // Google Consent v2\r\n const consent = this.consentDefaults;\r\n if (this.tracking) {\r\n consent.ad_personalization = `granted`;\r\n consent.ad_storage = `granted`;\r\n consent.ad_user_data = `granted`;\r\n consent.personalization_storage = `granted`;\r\n }\r\n\r\n if (this.analytics) {\r\n consent.analytics_storage = `granted`;\r\n }\r\n\r\n window.gtag(`consent`, `update`, consent);\r\n\r\n window.dataLayer.push({\r\n \"Analytics\": this.analytics,\r\n \"Tracking\": this.tracking,\r\n \"event\": \"ChangeCookieChoices\"\r\n });\r\n\r\n Cookies.set('AVGPermissions', JSON.stringify(this.AVGCookie), {\r\n expires: 99999\r\n });\r\n }\r\n }\r\n\r\n agreeAll() {\r\n this.update(true, true, true);\r\n this.checkCookiebarState();\r\n }\r\n\r\n refuseAll() {\r\n this.update(true, false, false);\r\n this.checkCookiebarState();\r\n }\r\n\r\n /* prepareConfigModal() {\r\n setTimeout(() => {\r\n if (this.cookiebar.classList.contains(`open`) && this.cookiebar.querySelector(`a[data-change][href]`)) {\r\n const configButton = this.cookiebar.querySelector(`a[data-change][href]`);\r\n const target = configButton.href;\r\n \r\n this.configPromise = fetch(target).then(response => {\r\n return response.text()\r\n }).then(htmlString => {\r\n const parser = new DOMParser();\r\n const DOM = parser.parseFromString(htmlString, `text/html`);\r\n if (DOM.querySelector(`[data-consent-form]`)) {\r\n // TODO\r\n }\r\n });\r\n }\r\n }, 500);\r\n } */\r\n\r\n checkCookiebarState() {\r\n if (!document.querySelector(`[data-consent-form]`)) {\r\n if (this.AVGCookie === undefined) {\r\n this.cookiebar.classList.add(`open`);\r\n this.cookiebar.setAttribute(`open`, `open`);\r\n } else {\r\n this.cookiebar.classList.remove(`open`);\r\n this.cookiebar.removeAttribute(`open`);\r\n }\r\n }\r\n }\r\n\r\n loadGTM() {\r\n window.dataLayer = window.dataLayer || [];\r\n window.gtag = function(){window.dataLayer.push(arguments)};\r\n\r\n this.setDefaultConsent();\r\n document.querySelectorAll('noscript[data-gtm-tag]').forEach(noscript => {\r\n (function (w, d, s, l, i) {\r\n w[l] = w[l] || [];\r\n w[l].push({\r\n 'gtm.start': new Date().getTime(),\r\n event: 'gtm.js'\r\n });\r\n var f = d.getElementsByTagName(s)[0],\r\n j = d.createElement(s),\r\n dl = l != 'dataLayer' ? '&l=' + l : '';\r\n j.async = true;\r\n j.src =\r\n 'https://www.googletagmanager.com/gtm.js?id=' + i + dl;\r\n f.parentNode.insertBefore(j, f);\r\n })\r\n (window, document, 'script', 'dataLayer', noscript.dataset.gtmTag);\r\n\t\t});\r\n }\r\n\r\n get consentDefaults() {\r\n return {\r\n ad_storage: `denied`,\r\n ad_user_data: `denied`,\r\n ad_personalization: `denied`,\r\n analytics_storage: `denied`,\r\n personalization_storage: `denied`,\r\n functionality_storage: `granted`,\r\n security_storage: `granted`,\r\n };\r\n }\r\n\r\n setDefaultConsent() {\r\n window.gtag(`consent`, `default`, this.consentDefaults);\r\n }\r\n\r\n /**\r\n * @description Creates and inserts a custom cookiebar based on a div with data on the webpage\r\n */\r\n createCookiebar() {\r\n const dataElement = document.querySelector(`[data-consent]`);\r\n if (dataElement) {\r\n const data = dataElement.dataset;\r\n const props = {\r\n title: data.consentTitle,\r\n textMobile: dataElement.querySelector(`[data-consent-text-mobile]`) ? dataElement.querySelector(`[data-consent-text-mobile]`).innerHTML : \"\",\r\n textDesktop: dataElement.querySelector(`[data-consent-text-desktop]`) ? dataElement.querySelector(`[data-consent-text-desktop]`).innerHTML : \"\",\r\n textButtonAgree: data.consentButtonAgree,\r\n textButtonChange: data.consentButtonChange,\r\n allowChange: data.consentAllowChange && data.consentAllowChange.toLowerCase() == \"true\",\r\n changeUrl: data.consentChangeUrl,\r\n textButtonRefuse: data.consentButtonRefuse,\r\n allowRefuse: data.consentAllowRefuse && data.consentAllowRefuse.toLowerCase() == \"true\",\r\n useModal: data.consentUseModal && data.consentUseModal.toLowerCase() == \"true\",\r\n };\r\n \r\n const cookiebar = Cookiebar(props);\r\n if (cookiebar) {\r\n dataElement.parentElement.insertBefore(cookiebar, dataElement);\r\n dataElement.remove();\r\n }\r\n }\r\n }\r\n}","export default class App {\r\n\tconstructor() {\r\n\t\tthis._resizeFunctionsArr = [];\r\n\t\tthis._resizeFunctions = {};\r\n\t\tthis._resizeFunctionsCounter = 0;\r\n\t\tthis._resizeTimeout = null;\r\n\t\tthis.resizeThrottle = false;\r\n\r\n\t\tthis._scrollFunctionsArr = [];\r\n\t\tthis._scrollFunctions = {};\r\n\t\tthis._scrollFunctionsCounter = 0;\r\n\t\tthis._scrollTimeout = null;\r\n\t\tthis.scrollThrottle = false;\r\n\r\n\t\tthis._resizeAnimationPreventerTimeout = 200;\r\n\r\n\t\tthis.breakpoints = {\r\n\t\t\txs: {\r\n\t\t\t\tgutter: 40,\r\n\t\t\t\tsize: 0,\r\n\t\t\t},\r\n\t\t\tsm: {\r\n\t\t\t\tgutter: 40,\r\n\t\t\t\tsize: 375,\r\n\t\t\t},\r\n\t\t\tmd: {\r\n\t\t\t\tgutter: 40,\r\n\t\t\t\tsize: 768,\r\n\t\t\t},\r\n\t\t\tlg: {\r\n\t\t\t\tgutter: 40,\r\n\t\t\t\tsize: 1224,\r\n\t\t\t},\r\n\t\t\txl: {\r\n\t\t\t\tgutter: 40,\r\n\t\t\t\tsize: 1818,\r\n\t\t\t},\r\n\t\t}\r\n\t}\r\n\r\n\tinit() {\r\n\t\tthis.detectBrowser();\r\n\t\tthis.setEventListeners();\r\n\t\tthis.fullHeightListener();\r\n\t\tthis.resizeAnimationPreventer();\r\n\t\tthis.addNewWindowTitles();\r\n\t\tthis.addNoOpener();\r\n\t\tthis.addAnchorEnhancement();\r\n\t\tthis.initSelectric();\r\n\t\tthis.initTippy();\r\n\t\tthis.initCopy();\r\n\t\tthis.initScrollTo();\r\n\t\tthis.initScrollToTop();\r\n\t\tthis.initPrintListener();\r\n\t\tthis.initLabelClick();\r\n\r\n\t\treturn true;\r\n\t}\r\n\r\n\tsetEventListeners() {\r\n\t\twindow.addEventListener('resize', this.resize.bind(this), {\r\n\t\t\tpassive: true\r\n\t\t});\r\n\t\tdocument.addEventListener('scroll', this.scroll.bind(this), {\r\n\t\t\tpassive: true\r\n\t\t});\r\n\r\n\t\tdocument.querySelectorAll('main form label').forEach(label => {\r\n\t\t\tlabel.addEventListener('keydown', e => {\r\n\t\t\t\tif (e.key.toLowerCase().substr(0, 3) == 'ent') {\r\n\t\t\t\t\tlabel.click();\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t});\r\n\r\n\t\tArray.from(document.querySelectorAll('a')).filter(a => !a.hasAttribute('href')).forEach(a => {\r\n\t\t\tif (!a.hasAttribute('tabindex')) {\r\n\t\t\t\ta.setAttribute('tabindex', '0');\r\n\t\t\t}\r\n\r\n\t\t\ta.addEventListener('keydown', e => {\r\n\t\t\t\tif (e.key.toLowerCase().substr(0, 3) == 'ent') {\r\n\t\t\t\t\ta.click();\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t});\r\n\t}\r\n\r\n\tresize() {\r\n\t\tconst runFunctions = () => {\r\n\t\t\tfor (let i = 0, length = this._resizeFunctionsArr.length; i < length; i++) {\r\n\t\t\t\tthis._resizeFunctionsArr[i]();\r\n\t\t\t}\r\n\t\t};\r\n\t\tif (this._resizeTimeout !== null) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\trunFunctions();\r\n\t\tif (this.resizeThrottle) {\r\n\t\t\tthis._resizeTimeout = setTimeout(() => {\r\n\t\t\t\tthis._resizeTimeout = null;\r\n\t\t\t\trunFunctions();\r\n\t\t\t}, this.resizeThrottle);\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * @param {function} func Function to be called on a resize event\r\n\t */\r\n\tregisterResizeEvent(func) {\r\n\t\tthis._resizeFunctions[this._resizeFunctionsCounter] = func;\r\n\t\tthis._resizeFunctionsCounter = this._resizeFunctionsCounter + 1;\r\n\r\n\t\t// Rebuild array of events\r\n\t\tthis._resizeFunctionsArr = [];\r\n\t\tObject.keys(this._resizeFunctions).forEach(key => {\r\n\t\t\tthis._resizeFunctionsArr.push(this._resizeFunctions[key]);\r\n\t\t});\r\n\r\n\t\treturn this._resizeFunctionsCounter - 1;\r\n\t}\r\n\r\n\t/**\r\n\t * @param {Number} func Function's ID to be removed from the resize functions\r\n\t */\r\n\tunregisterResizeEvent(func) {\r\n\t\tif (this._resizeFunctions[func]) {\r\n\t\t\t// Found\r\n\t\t\tdelete this._resizeFunctions[func];\r\n\r\n\t\t\t// Rebuild array of events\r\n\t\t\tthis._resizeFunctionsArr = [];\r\n\t\t\tObject.keys(this._resizeFunctions).forEach(key => {\r\n\t\t\t\tthis._resizeFunctionsArr.push(this._resizeFunctions[key]);\r\n\t\t\t});\r\n\r\n\t\t\treturn true;\r\n\t\t} else {\r\n\t\t\t// Not found\r\n\t\t\treturn false;\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * @description Fires all registered events for a scroll event in the document\r\n\t */\r\n\tscroll() {\r\n\t\tconst runFunctions = () => {\r\n\t\t\tfor (let i = 0, length = this._scrollFunctionsArr.length; i < length; i++) {\r\n\t\t\t\tthis._scrollFunctionsArr[i]();\r\n\t\t\t}\r\n\t\t};\r\n\t\tif (this._scrollTimeout !== null) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\trunFunctions();\r\n\t\tif (this.scrollThrottle) {\r\n\t\t\tthis._scrollTimeout = setTimeout(() => {\r\n\t\t\t\tthis._scrollTimeout = null;\r\n\t\t\t\trunFunctions();\r\n\t\t\t}, this.scrollThrottle);\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * @param {function} func Function to be called on a scroll event\r\n\t */\r\n\tregisterScrollEvent(func) {\r\n\t\tthis._scrollFunctions[this._scrollFunctionsCounter] = func;\r\n\t\tthis._scrollFunctionsCounter = this._scrollFunctionsCounter + 1;\r\n\r\n\t\t// Rebuild array of events\r\n\t\tthis._scrollFunctionsArr = [];\r\n\t\tObject.keys(this._scrollFunctions).forEach(key => {\r\n\t\t\tthis._scrollFunctionsArr.push(this._scrollFunctions[key]);\r\n\t\t});\r\n\r\n\t\treturn this._scrollFunctionsCounter - 1;\r\n\t}\r\n\r\n\t/**\r\n\t * @param {Number} func Function's ID to be removed from the scroll functions\r\n\t */\r\n\tunregisterScrollEvent(func) {\r\n\t\tif (this._scrollFunctions[func]) {\r\n\t\t\t// Found\r\n\t\t\tdelete this._scrollFunctions[func];\r\n\r\n\t\t\t// Rebuild array of events\r\n\t\t\tthis._scrollFunctionsArr = [];\r\n\t\t\tObject.keys(this._scrollFunctions).forEach(key => {\r\n\t\t\t\tthis._scrollFunctionsArr.push(this._scrollFunctions[key]);\r\n\t\t\t});\r\n\r\n\t\t\treturn true;\r\n\t\t} else {\r\n\t\t\t// Not found\r\n\t\t\treturn false;\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * @description Adds a 'preventAnimations' class to the html tag on resizing\r\n\t */\r\n\tresizeAnimationPreventer() {\r\n\t\tthis.resizeTimer = null;\r\n\t\tthis.windowWidth = window.innerWidth;\r\n\t\tthis.registerResizeEvent(() => {\r\n\t\t\tif (window.innerWidth !== this.windowWidth) {\r\n\t\t\t\tdocument.documentElement.classList.add('preventAnimations');\r\n\t\t\t\tclearTimeout(this.resizeTimer);\r\n\r\n\t\t\t\tthis.resizeTimer = setTimeout(() => {\r\n\t\t\t\t\tdocument.documentElement.classList.remove('preventAnimations');\r\n\t\t\t\t}, this._resizeAnimationPreventerTimeout);\r\n\r\n\t\t\t\tthis.windowWidth = window.innerWidth;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * @description Adds a CSS variable '--fullHeight' to the html tag that creates an 'accurate 100vh'\r\n\t */\r\n\tfullHeightListener() {\r\n\t\tconst fullHeight = () => {\r\n\t\t\tdocument.documentElement.style.setProperty('--fullHeight', `${window.innerHeight}px`);\r\n\t\t};\r\n\t\tthis.registerResizeEvent(fullHeight);\r\n\t\tfullHeight();\r\n\t}\r\n\r\n\t/**\r\n\t * @description Adds a browser-specific class to the html tag\r\n\t */\r\n\tdetectBrowser() {\r\n\t\t// Opera 8.0+\r\n\t\tlet isOpera = (!!window.opr && !!opr.addons) || !!window.opera || navigator.userAgent.indexOf(' OPR/') >= 0;\r\n\r\n\t\t// Firefox 1.0+\r\n\t\tlet isFirefox = typeof InstallTrigger !== 'undefined';\r\n\r\n\t\tlet isIphone = window.navigator.userAgent.match(/iPhone/i);\r\n\r\n\t\tlet isIpad = window.navigator.userAgent.match(/iPad/i);\r\n\r\n\t\tlet isSafari = window.navigator.userAgent.match(/Safari/i) && (window.navigator.userAgent.match(/iPhone/i) || window.navigator.userAgent.match(/iPad/i) || window.navigator.userAgent.match(/macOS/i));\r\n\r\n\t\t// Internet Explorer 6-11\r\n\t\tlet isIE = /*@cc_on!@*/ false || !!document.documentMode;\r\n\r\n\t\t// Edge 20+\r\n\t\tlet isEdge = !isIE && !!window.StyleMedia;\r\n\r\n\t\t// Chrome 1 - 71\r\n\t\tlet isChrome = /Chrome/.test(navigator.userAgent) && /Google Inc/.test(navigator.vendor);\r\n\r\n\t\t// Blink engine detection\r\n\t\tlet isBlink = (isChrome || isOpera) && !!window.CSS;\r\n\r\n\t\tif (isOpera) {\r\n\t\t\tdocument.documentElement.classList.add('opera');\r\n\t\t}\r\n\r\n\t\tif (isFirefox) {\r\n\t\t\tdocument.documentElement.classList.add('firefox');\r\n\t\t}\r\n\r\n\t\tif (isSafari) {\r\n\t\t\tdocument.documentElement.classList.add('safari');\r\n\t\t}\r\n\r\n\t\tif (isIphone) {\r\n\t\t\tdocument.documentElement.classList.add('iphone');\r\n\t\t}\r\n\r\n\t\tif (isIpad) {\r\n\t\t\tdocument.documentElement.classList.add('ipad');\r\n\t\t}\r\n\r\n\t\tif (isIE) {\r\n\t\t\tdocument.documentElement.classList.add('ie');\r\n\t\t}\r\n\r\n\t\tif (isEdge) {\r\n\t\t\tdocument.documentElement.classList.add('edge');\r\n\t\t}\r\n\r\n\t\tif (isChrome) {\r\n\t\t\tdocument.documentElement.classList.add('chrome');\r\n\t\t}\r\n\r\n\t\tif (isBlink) {\r\n\t\t\tdocument.documentElement.classList.add('blink');\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * @description Appends text to a tags that tells the user it'll open in a new tab/window. Add a tag with `data-new-window-text` property to change the appended text\r\n\t */\r\n\taddNewWindowTitles() {\r\n\t\tlet text = '(opent in een nieuw scherm)';\r\n\t\tif (document.querySelector('[data-new-window-text]')) {\r\n\t\t\ttext = document.querySelector('[data-new-window-text]').dataset.newWindowText;\r\n\t\t}\r\n\r\n\t\tdocument.querySelectorAll('a[target=\"_blank\"]').forEach(a => {\r\n\t\t\ta.setAttribute('title', `${a.getAttribute('title')} ${text}`.trim().replace(/ /g, \" \"));\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * @description Adds the attribute 'rel' set to 'noopener' on external links; This is for security reasons/best practices\r\n\t */\r\n\taddNoOpener() {\r\n\t\tdocument.querySelectorAll('a').forEach(a => {\r\n\t\t\tif (a.href && !a.hasAttribute('rel')) {\r\n\t\t\t\tif (a.hostname != location.hostname) {\r\n\t\t\t\t\ta.setAttribute('rel', 'noopener');\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * @description Makes sure anchored tags get a class for it, so offsetting scroll is possible. Also edit anchor links to get the [data-scroll-to] attribute\r\n\t */\r\n\taddAnchorEnhancement() {\r\n\t\t// Enhance anchors\r\n\t\tArray.from(document.querySelectorAll('a[id]')).filter(a => !a.href).forEach(a => {\r\n\t\t\t// Get parent element, add 'anchored' class\r\n\t\t\tif (a.parentElement) {\r\n\t\t\t\ta.parentElement.classList.add('anchored');\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\t// Enhance anchor links\r\n\t\tArray.from(document.querySelectorAll('a[href]')).filter(a => a.hash && a.hash != '' && a.getAttribute('href').substr(0, 1) == '#' && !a.dataset.scrollTo).forEach(a => {\r\n\t\t\ta.dataset.scrollTo = a.hash;\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * @description Scroll element into view\r\n\t */\r\n\tinitScrollTo() {\r\n\t\tif (window.scrollTo) {\r\n\t\t\tdocument.querySelectorAll('[data-scroll-to]').forEach(el => {\r\n\t\t\t\tel.addEventListener('click', e => {\r\n\t\t\t\t\tconst target = document.querySelector(el.dataset.scrollTo);\r\n\r\n\t\t\t\t\tconst scrollPosition = this.elementCoords(target).top - (window.innerWidth > this.breakpoints.md ? 200 : 80);\r\n\t\t\t\t\twindow.scrollTo({\r\n\t\t\t\t\t\ttop: scrollPosition,\r\n\t\t\t\t\t\tbehavior: 'smooth',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * @description Basic random number generator\r\n\t * @param {Number} min \r\n\t * @param {Number} max \r\n\t */\r\n\trandom(min, max) {\r\n\t\treturn Math.floor(Math.random() * (max - min + 1) + min);\r\n\t}\r\n\r\n\t/**\r\n\t * @description Retrieves absolute position of an element relative to the page\r\n\t * @param {HTMLElement} el \r\n\t * @returns {Object}\r\n\t */\r\n\telementCoords(el) {\r\n\t\tconst box = el.getBoundingClientRect();\r\n\r\n\t\tconst body = document.body;\r\n\t\tconst docEl = document.documentElement;\r\n\r\n\t\tconst scrollTop = window.pageYOffset || docEl.scrollTop || body.scrollTop;\r\n\t\tconst scrollLeft = window.pageXOffset || docEl.scrollLeft || body.scrollLeft;\r\n\r\n\t\tconst clientTop = docEl.clientTop || body.clientTop || 0;\r\n\t\tconst clientLeft = docEl.clientLeft || body.clientLeft || 0;\r\n\r\n\t\tconst top = box.top + scrollTop - clientTop;\r\n\t\tconst left = box.left + scrollLeft - clientLeft;\r\n\r\n\t\treturn {\r\n\t\t\ttop: Math.round(top),\r\n\t\t\tleft: Math.round(left)\r\n\t\t};\r\n\t}\r\n\r\n\tinitScrollToTop() {\r\n\t\tthis.scrollToTopContainer = document.querySelector('.scrollToTop');\r\n\r\n\t\tif (this.scrollToTopContainer) {\r\n\t\t\tconst button = this.scrollToTopContainer.querySelector('button');\r\n\t\t\tconst scroll = () => {\r\n\t\t\t\tif (document.documentElement.scrollTop > 400) {\r\n\t\t\t\t\tthis.scrollToTopContainer.classList.add('active');\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.scrollToTopContainer.classList.remove('active');\r\n\t\t\t\t}\r\n\t\t\t};\r\n\r\n\t\t\tthis.registerScrollEvent(scroll.bind(this));\r\n\r\n\t\t\tbutton.addEventListener('click', undefined => {\r\n\t\t\t\tthis.scrollToTopContainer.classList.add('moving');\r\n\t\t\t\tbutton.blur();\r\n\t\t\t\twindow.scrollTo({\r\n\t\t\t\t\ttop: 0,\r\n\t\t\t\t\tbehavior: 'smooth',\r\n\t\t\t\t});\r\n\t\t\t\tsetTimeout(() => this.scrollToTopContainer.classList.remove('moving'), 1500);\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tinitSelectric() {\r\n\t\tif (document.querySelectorAll('main select').length) {\r\n\t\t\ttry {\r\n\t\t\t\timport( /* webpackChunkName: \"modules/dropdown\" */ 'selectric').then(e => {\r\n\r\n\t\t\t\t\tdocument.querySelectorAll('main select').forEach(select => {\r\n\t\t\t\t\t\t$(select).selectric({\r\n\t\t\t\t\t\t\tarrowButtonMarkup: ``\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t} catch (e) {\r\n\t\t\t\tconsole.error(e);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * @description Tooltip library\r\n\t */\r\n\tinitTippy() {\r\n\t\tif (document.querySelectorAll('[data-tippy-content]').length || document.querySelectorAll('[data-tippy-source]').length) {\r\n\t\t\ttry {\r\n\t\t\t\timport( /* webpackChunkName: \"modules/tooltip\" */ 'tippy.js').then(e => {\r\n\t\t\t\t\tconst tippy = e.default;\r\n\t\t\t\t\ttippy('[data-tippy-content]');\r\n\r\n\t\t\t\t\tif (document.querySelectorAll('[data-tippy-source]').forEach(source => {\r\n\t\t\t\t\t\t\tconst target = document.querySelector(`[data-tippy-target=\"${source.dataset.tippySource}\"]`);\r\n\t\t\t\t\t\t\tif (target) {\r\n\t\t\t\t\t\t\t\ttippy(source, {\r\n\t\t\t\t\t\t\t\t\tallowHTML: true,\r\n\t\t\t\t\t\t\t\t\tcontent: target.innerHTML,\r\n\t\t\t\t\t\t\t\t\tinteractive: target.querySelectorAll('a, button').length > 0\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}));\r\n\t\t\t\t});\r\n\t\t\t} catch (e) {\r\n\t\t\t\tconsole.error(e);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * @description Makes tags with the data-copy property clickable, copies its content to the clipboard\r\n\t */\r\n\tinitCopy() {\r\n\t\tdocument.querySelectorAll('[data-copy]').forEach(el => {\r\n\t\t\tel.addEventListener('click', () => {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst copyContent = el.dataset.copy;\r\n\t\t\t\t\tconst input = document.createElement('input');\r\n\r\n\t\t\t\t\tinput.type = 'text';\r\n\t\t\t\t\tinput.style.position = 'absolute';\r\n\t\t\t\t\tinput.style.height = 0;\r\n\t\t\t\t\tinput.style.overflow = 'hidden';\r\n\t\t\t\t\tinput.value = copyContent;\r\n\r\n\t\t\t\t\tdocument.body.appendChild(input);\r\n\t\t\t\t\tinput.select();\r\n\t\t\t\t\tdocument.execCommand('copy');\r\n\t\t\t\t\tinput.parentNode.removeChild(input);\r\n\t\t\t\t} catch (e) {\r\n\t\t\t\t\tthis.toast('Something unexpected went wrong', 'error');\r\n\t\t\t\t\tconsole.error(e);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t});\r\n\t}\r\n\r\n\tinitPrintListener() {\r\n\t\tthis.printTexts = Array.from(document.querySelectorAll('[data-print]'));\r\n\r\n\t\tif (this.printTexts.length) {\r\n\t\t\tlet printElements = [];\r\n\r\n\t\t\twindow.addEventListener('beforeprint', e => {\r\n\t\t\t\tthis.printTexts.forEach(printParent => {\r\n\t\t\t\t\tlet span = document.createElement('span');\r\n\t\t\t\t\tspan.innerHTML = printParent.dataset.print;\r\n\t\t\t\t\tspan.classList.add('printText');\r\n\r\n\t\t\t\t\tprintElements.push(span);\r\n\r\n\t\t\t\t\tprintParent.appendChild(span);\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\twindow.addEventListener('afterprint', e => {\r\n\t\t\t\tprintElements.forEach(printElement => {\r\n\t\t\t\t\tprintElement.remove();\r\n\t\t\t\t});\r\n\r\n\t\t\t\tprintElements = [];\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tinitLabelClick() {\r\n\t\tdocument.querySelectorAll('label[for]').forEach(label => {\r\n\t\t\tlabel.addEventListener('keydown', e => {\r\n\r\n\t\t\t\tswitch (e.key.toLowerCase()) {\r\n\t\t\t\t\tcase ' ':\r\n\t\t\t\t\t\te.preventDefault();\r\n\t\t\t\t\tcase 'space':\r\n\t\t\t\t\tcase 'enter':\r\n\t\t\t\t\t\tlabel.click();\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t});\r\n\t}\r\n\r\n\tgetCurrentBreakpoint() {\r\n\t\tconst width = window.innerWidth;\r\n\t\tconst breakpoints = Object.keys(this.breakpoints).reverse();\r\n\r\n\t\tlet currentBreakpoint = breakpoints[breakpoints.length - 1];\r\n\r\n\t\tbreakpoints.forEach(breakpoint => {\r\n\t\t\tif (width <= this.breakpoints[breakpoint].size) {\r\n\t\t\t\tcurrentBreakpoint = breakpoint;\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\treturn currentBreakpoint;\r\n\t}\r\n}","export default class HeaderController {\r\n\tconstructor() {\r\n\t\tthis.floatingHeaderElement = null;\r\n\t\tthis.headerElement = null;\r\n\t\tthis.menuButton = null;\r\n\t\tthis.closeMenuButton = null;\r\n\t\tthis.flyoutBackground = null;\r\n\r\n\t\tthis.init();\r\n\t\tthis.resize();\r\n\t}\r\n\r\n\tinit() {\r\n\t\tthis.floatingHeaderElement = document.querySelector('.floatingHeader');\r\n\t\tthis.headerElement = document.querySelector('header');\r\n\t\tthis.menuButtons = document.querySelectorAll('.menuButton');\r\n\t\tthis.closeMenuButton = document.querySelector('.closeMenuButton');\r\n\t\tthis.flyoutBackground = document.querySelector('.flyoutMenuBackground');\r\n\r\n\t\t// Register events\r\n\t\t// window.app.registerResizeEvent(this.resize.bind(this));\r\n\t\twindow.app.registerScrollEvent(this.scroll.bind(this));\r\n\r\n\t\t// Click events\r\n\t\tthis.menuButtons.forEach(button => button.addEventListener('click', this.toggleMenu.bind(this)));\r\n\t\tthis.closeMenuButton.addEventListener('click', this.closeMenu.bind(this));\r\n\t\tthis.flyoutBackground.addEventListener('click', this.closeMenu.bind(this));\r\n\r\n\t\t// this.headerElement.querySelectorAll('.flyout ul button').forEach(button => {\r\n\t\t// \tbutton.addEventListener('click', this.toggleSubMenu.bind(this, button));\r\n\t\t// });\r\n\r\n\t\twindow.addEventListener('keydown', e => {\r\n\t\t\tif (e.key.substr(0, 3).toLowerCase() == 'esc') {\r\n\t\t\t\tthis.closeMenu();\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\ttoggleMenu() {\r\n\t\tdocument.body.classList.toggle('flyoutActive');\r\n\t}\r\n\r\n\tcloseMenu() {\r\n\t\tdocument.body.classList.remove('flyoutActive');\r\n\t}\r\n\r\n\tresize() {\r\n\t\tthis.previousScroll = window.pageYOffset;\r\n\r\n\t\tthis.scroll();\r\n\t}\r\n\r\n\tscroll() {\r\n\t\tif (window.pageYOffset > this.floatingHeaderElement.clientHeight) {\r\n\t\t\tdocument.body.classList.add('menuActive');\r\n\t\t} else {\r\n\t\t\tdocument.body.classList.remove('menuActive');\r\n\t\t}\r\n\t}\r\n\r\n\thide() {\r\n\t\tthis.headerElement.classList.add('hidden');\r\n\t}\r\n\r\n\tshow() {\r\n\t\tthis.headerElement.classList.remove('hidden');\r\n\t}\r\n}","export default class PolyfillController {\r\n constructor() {\r\n this.polyfills = [];\r\n this.loaded = [];\r\n }\r\n\r\n init() {\r\n this.loadPolyfills();\r\n\r\n return Promise.all(this.polyfills);\r\n }\r\n\r\n loadPolyfills() {\r\n this.forEach();\r\n this.intersectionObserver();\r\n this.fetch();\r\n this.abortController();\r\n this.proxy();\r\n this.closest();\r\n this.before();\r\n this.remove();\r\n this.customEvent();\r\n }\r\n\r\n forEach() {\r\n if (window.NodeList && !NodeList.prototype.forEach) {\r\n NodeList.prototype.forEach = Array.prototype.forEach;\r\n this.loaded.push('forEach');\r\n }\r\n }\r\n\r\n intersectionObserver() {\r\n if (!('IntersectionObserver' in window)) {\r\n this.polyfills.push(import( /* webpackChunkName: \"polyfills/intersectionobserver\" */ 'intersection-observer'));\r\n this.loaded.push('intersectionObserver');\r\n }\r\n }\r\n\r\n fetch() {\r\n if (!window.fetch) {\r\n this.polyfills.push(import( /* webpackChunkName: \"polyfills/fetch\" */ 'whatwg-fetch'));\r\n this.loaded.push('fetch');\r\n }\r\n }\r\n\r\n abortController() {\r\n if (typeof AbortController == 'undefined') {\r\n this.polyfills.push(import( /* webpackChunkName: \"polyfills/abortController\" */ 'abortcontroller-polyfill/dist/polyfill-patch-fetch'));\r\n this.loaded.push('abortController');\r\n }\r\n }\r\n \r\n proxy() {\r\n if (!('Proxy' in window)) {\r\n this.polyfills.push(import( /* webpackChunkName: \"polyfills/proxy\" */ 'es6-proxy-polyfill'));\r\n this.loaded.push('proxy');\r\n }\r\n }\r\n\r\n closest() {\r\n if (!Element.prototype.matches) {\r\n Element.prototype.matches = Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector;\r\n this.loaded.push('matches');\r\n }\r\n\r\n if (!Element.prototype.closest) {\r\n Element.prototype.closest = function (s) {\r\n var el = this;\r\n do {\r\n if (el.matches(s)) return el;\r\n el = el.parentElement || el.parentNode;\r\n } while (el !== null && el.nodeType === 1);\r\n return null;\r\n };\r\n this.loaded.push('closest');\r\n }\r\n }\r\n\r\n before() {\r\n (arr => {\r\n arr.forEach(function (item) {\r\n if (item.hasOwnProperty('before')) {\r\n return;\r\n }\r\n Object.defineProperty(item, 'before', {\r\n configurable: true,\r\n enumerable: true,\r\n writable: true,\r\n value: function before() {\r\n var argArr = Array.prototype.slice.call(arguments),\r\n docFrag = document.createDocumentFragment();\r\n\r\n argArr.forEach(function (argItem) {\r\n var isNode = argItem instanceof Node;\r\n docFrag.appendChild(isNode ? argItem : document.createTextNode(String(argItem)));\r\n });\r\n\r\n this.parentNode.insertBefore(docFrag, this);\r\n }\r\n });\r\n });\r\n this.loaded.push('before');\r\n })([Element.prototype, CharacterData.prototype, DocumentType.prototype]);\r\n }\r\n\r\n remove() {\r\n (arr => {\r\n arr.forEach(function (item) {\r\n if (item.hasOwnProperty('remove')) {\r\n return;\r\n }\r\n Object.defineProperty(item, 'remove', {\r\n configurable: true,\r\n enumerable: true,\r\n writable: true,\r\n value: function remove() {\r\n if (this.parentNode === null) {\r\n return;\r\n }\r\n this.parentNode.removeChild(this);\r\n }\r\n });\r\n });\r\n this.loaded.push('remove');\r\n })([Element.prototype, CharacterData.prototype, DocumentType.prototype]);\r\n }\r\n\r\n customEvent() {\r\n if (typeof (Event) === 'object') {\r\n function CustomEvent(event, params) {\r\n params = params || {\r\n bubbles: false,\r\n cancelable: false,\r\n detail: undefined\r\n };\r\n let evt = document.createEvent('CustomEvent');\r\n evt.initCustomEvent(event, params.bubbles, params.cancelable, params.detail);\r\n return evt;\r\n }\r\n\r\n CustomEvent.prototype = window.Event.prototype;\r\n\r\n window.CustomEvent = CustomEvent;\r\n window.Event = CustomEvent;\r\n this.loaded.push('Custom Event');\r\n }\r\n }\r\n}\r\n","/**\r\n * Apparently this old and rusty main.js file was still being used, but wasn't part of the new compiling process.\r\n * For the sake of trying to keep things working, implementing it this way\r\n */\r\n\r\n$(function () {\r\n\t$('html.no-js').removeClass('no-js');\r\n\r\n\tconsole.log(\"init menu\");\r\n\tmenu.init();\r\n\r\n\tconsole.log(\"init backToTop\");\r\n\tbackToTop.init();\r\n\r\n\tconsole.log(\"init changeFontSize\");\r\n\tchangeFontSize.init();\r\n\r\n\tconsole.log(\"init careFilters\");\r\n\tcareFilters.init();\r\n\r\n\tconsole.log(\"init vacancies\");\r\n\tvacancies.init();\r\n\r\n\tconsole.log(\"init tabNav\");\r\n\ttabNav.init();\r\n\r\n\tconsole.log(\"init topTabs\");\r\n\ttopTabs.init();\r\n\r\n\tconsole.log(\"init searchFilters\");\r\n\tsearchFilters.init();\r\n\r\n\tconsole.log(\"init read\");\r\n\tread.init();\r\n\r\n\tconsole.log(\"init werkenBijVideo\");\r\n\twerkenBijVideo.init();\r\n\r\n\tconsole.log(\"init tabbedContent\");\r\n\ttabbedContent.init();\r\n\r\n\tconsole.log(\"init workerTabs\");\r\n\tworkerTabs.init();\r\n\r\n\r\n\tif ($('.homeWidget').length > 0) {\r\n\t\tconsole.log(\"init homeWidget\");\r\n\t\thomeWidget.init();\r\n\t}\r\n\t\t\r\n\r\n\tif ($('#map').length > 0) {\r\n\t\tconsole.log(\"init serviceMap\");\r\n\t\tserviceMap.init();\r\n\t}\r\n\t\t\r\n\r\n\t//locationCarousel.init();\r\n\r\n\tconsole.log(\"init faq\");\r\n\tfaq.init();\r\n\r\n\tconsole.log(\"init contactFloaty\");\r\n\tcontactFloaty.init();\r\n\r\n\tconsole.log(\"joe\");\r\n\r\n\t//$(window).load(function () {\r\n\t\tconsole.log(\"init updates\");\r\n\t\tupdates.init();\r\n\t//});\r\n\r\n\tif ($('body').hasClass('landingsPage')) {\r\n\t\tconsole.log(\"init showButton\");\r\n\t\tshowButton.init();\r\n\t}\r\n\r\n\tconsole.log(\"joe joe\");\r\n\r\n\t$('section.moreServices ul.overviewBlocks li a').on('click', function () {\r\n\t\t//ga('send', 'event', 'DienstDetail', 'Gerelateerde diensten', 'Toon dienst');\r\n\t});\r\n\treCaptcha.init();\r\n});\r\n\r\nvar menu = {\r\n\tinit: function () {\r\n\t\t$('.toggleMenu').on('click', function () {\r\n\t\t\t$('body').toggleClass('showMenu');\r\n\t\t});\r\n\r\n\t\t$('header nav a[href*=\"#\"]').on('click', function () {\r\n\t\t\tif ($(this.hash).length > 0) {\r\n\t\t\t\t$('html, body').animate({ scrollTop: $(this.hash).offset().top }, 500);\r\n\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n}\r\n\r\nvar backToTop = {\r\n\tinit: function () {\r\n\t\t$('.backToTop').on('click', function () {\r\n\t\t\t$(\"html, body\").animate({ scrollTop: $(\"body\").offset().top }, 500);\r\n\t\t});\r\n\t}\r\n}\r\n\r\nvar reCaptcha = {\r\n\tinit: function () {\r\n\t\tif ($('div.g-recaptcha').length > 0) {\r\n\t\t\t$('div.g-recaptcha').each(function (index, element) {\r\n\t\t\t\t$(element).closest('form').on(\"submit\", function (e) {\r\n\t\t\t\t\tgrecaptcha.execute();\r\n\t\t\t\t\tif ($(\"input[name='recaptcha-response']\").val() == '') {\r\n\t\t\t\t\t\te.preventDefault();\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n}\r\n\r\nvar changeFontSize = {\r\n\t\tinit: function () {\r\n\t\t\tvar level = 0;\r\n\t\t\t$('.fontSize div').on('click', function (e) {\r\n\t\t\t\te.preventDefault;\r\n\r\n\t\t\t\tif ($(this).hasClass('smaller')) {\r\n\t\t\t\t\tif (level > 0) {\r\n\t\t\t\t\t\tlevel--;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (level < 2) {\r\n\t\t\t\t\t\tlevel++;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\t$('body').removeClass('biggerFont0 biggerFont1 biggerFont2').addClass('biggerFont' + level);\r\n\t\t\t});\r\n\t\t}\r\n\t};\r\n\r\n\tvar careFilters = {\r\n\t\tinit: function () {\r\n\t\t\tvar filterEl = $('div.filters');\r\n\r\n\t\t\t$('section.categorySearch span.showFilters').on('click', function () {\r\n\t\t\t\tfilterEl[(filterEl.hasClass('open')) ? 'removeClass' : 'addClass']('open');\r\n\t\t\t});\r\n\r\n\t\t\t$('section.categorySearch div.filters div.filtersHolder ul li').on('click', function () {\r\n\t\t\t\t$(this)[($(this).hasClass('checked')) ? 'removeClass' : 'addClass']('checked');\r\n\r\n\t\t\t\tcareFilters.filterOverview();\r\n\t\t\t});\r\n\t\t},\r\n\t\tfilterOverview: function () {\r\n\t\t\t$('section.categorySearch ul.overviewBlocks li').removeClass('show');\r\n\r\n\t\t\tvar activeFilters = [];\r\n\r\n\t\t\t$('section.categorySearch div.filters div.filtersHolder ul li').each(function () {\r\n\t\t\t\tif ($(this).hasClass('checked')) {\r\n\t\t\t\t\tactiveFilters.push($(this).data('city-id'));\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tif (activeFilters.length > 0) {\r\n\t\t\t\t$('section.categorySearch h2').hide();\r\n\r\n\t\t\t\tfor (var filter in activeFilters) {\r\n\t\t\t\t\tvar tag = activeFilters[filter];\r\n\t\t\t\t\t$('section.categorySearch ul.overviewBlocks li[data-city-ids*=\"' + tag + '\"]').addClass('show');\r\n\r\n\t\t\t\t\tif ($('section.categorySearch ul.overviewBlocks.locations li[data-city-ids*=\"' + tag + '\"]').length > 0)\r\n\t\t\t\t\t\t$('section.categorySearch h2').show();\r\n\t\t\t\t}\r\n\t\t\t\t$('section.categorySearch ul.overviewBlocks').addClass('filtered');\r\n\t\t\t} else {\r\n\t\t\t\t$('section.categorySearch ul.overviewBlocks').removeClass('filtered');\r\n\t\t\t\t$('section.categorySearch h2').show();\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\nvar searchFilters = {\r\n\t\tinit: function () {\r\n\t\t\t$('.searchHolder div.filter ul li input[type=checkbox]').change(function () {\r\n\t\t\t\t$('.searchHolder form').submit();\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\nvar read = {\r\n\t\tinit: function () {\r\n\t\t\t$('div.headerTools ul li.speech').on('click', function () {\r\n\t\t\t\t$(this)[($(this).hasClass('show')) ? 'removeClass' : 'addClass']('show');\r\n\t\t\t\t$('#browseAloud')[(!$(this).hasClass('show')) ? 'removeClass' : 'addClass']('show');\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\nvar vacancies = {\r\n\t\tinit: function () {\r\n\t\t\tvar filterEl = $('div.filters');\r\n\r\n\t\t\t$('section.introFilters span.showFilters').on('click', function (e) {\r\n\r\n\t\t\t\tif (filterEl.hasClass('open') && filterEl.hasClass(e.currentTarget.dataset.type)) {\r\n\t\t\t\t\tfilterEl.removeClass('open');\r\n\t\t\t\t}\r\n\t\t\t\telse if (filterEl.hasClass('open')) {\r\n\t\t\t\t\t$('section.introFilters span.showFilters').each(function (index, filter) {\r\n\t\t\t\t\t\tfilterEl.removeClass(filter.dataset.type);\r\n\t\t\t\t\t});\r\n\t\t\t\t\tsetTimeout(function () {\r\n\t\t\t\t\t\tfilterEl.addClass(e.currentTarget.dataset.type);\r\n\t\t\t\t\t}, 500);\r\n\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\tfilterEl.addClass('open');\r\n\t\t\t\t\tfilterEl.addClass(e.currentTarget.dataset.type);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (filterEl.hasClass('open')) {\r\n\t\t\t\t\t//ga('send', 'event', 'Vacature Filters', 'Werkenbij', 'show filters');\r\n\t\t\t\t} else {\r\n\t\t\t\t\tfilterEl.removeClass(e.currentTarget.dataset.type);\r\n\t\t\t\t\t//ga('send', 'event', 'Vacature Filters', 'Werkenbij', 'hide filters');\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\r\n\t\t\tvacancies.vacanciesFilters();\r\n\r\n\t\t\tvacancies.vacanciesOverview();\r\n\t\t},\r\n\t\tvacanciesFilters: function () {\r\n\t\t\t$('section.introFilters div.filters div.filtersHolder ul li input').unbind('change');\r\n\t\t\t$('section.introFilters div.filters div.filtersHolder ul li input').bind('change', function () {\r\n\t\t\t\tvar link = '/vacatures/',\r\n\t\t\t\t\tname,\r\n\t\t\t\t\tfilters = \"\",\r\n\t\t\t\t\tbutton = $('section.vacancyOverview a.showMore.button'),\r\n\t\t\t\t\tposition;\r\n\r\n\t\t\t\t$('section.introFilters div.filters div.filtersHolder ul li input:checked').each(function () {\r\n\t\t\t\t\tvar checkedInput = $(this);\r\n\t\t\t\t\tfilters += (filters != '') ? '&' + checkedInput.attr('name') + '=' + encodeURIComponent(checkedInput.val()) : '?' + checkedInput.attr('name') + '=' + encodeURIComponent(checkedInput.val());\r\n\t\t\t\t});\r\n\r\n\t\t\t\tlink += filters;\r\n\r\n\t\t\t\t$.get(link, function (content) {\r\n\t\t\t\t\t$('div.filtersForm').replaceWith($(content).find('div.filtersForm'));\r\n\r\n\t\t\t\t\tvacancies.vacanciesFilters();\r\n\t\t\t\t\tvacancies.vacanciesOverview(link);\r\n\t\t\t\t});\r\n\r\n\t\t\t\t//ga('send', 'event', 'Vacature Filters', 'Werkenbij', 'filteren');\r\n\t\t\t});\r\n\t\t},\r\n\t\tvacanciesMasonryInit: function () {\r\n\t\t\t//$('section.vacancyOverview ul.vacancies').masonry({\r\n\t\t\t//\tcolumnWidth: 'li.masItem',\r\n\t\t\t//\titemSelector: 'li.masItem',\r\n\t\t\t//\tpercentPosition: true\r\n\t\t\t//});\r\n\t\t},\r\n\t\tvacanciesOverview: function (link) {\r\n\t\t\t$('section.introFilters button').unbind();\r\n\t\t\t$('section.introFilters button').bind('click', function () {\r\n\r\n\t\t\t\t//Push search url from link in history\r\n\t\t\t\tlet history = window.HistoryLibrary.createBrowserHistory();\r\n\t\t\t\thistory.push(link);\r\n\r\n\t\t\t\t//ga('send', 'event', 'Vacature Filters', 'Werkenbij', 'click button');\r\n\r\n\t\t\t\t$('div.filters').removeClass('open');\r\n\t\t\t\t$('section.introFilters span.showFilters').each(function (index, filter) {\r\n\t\t\t\t\t$('div.filters').removeClass(filter.dataset.type);\r\n\t\t\t\t});\r\n\r\n\t\t\t\t//var vacancyGrid = $('section.vacancyOverview ul.vacancies').addClass('init').masonry({\r\n\t\t\t\t//\tcolumnWidth: 'li.masItem',\r\n\t\t\t\t//\titemSelector: 'li.masItem',\r\n\t\t\t\t//\tpercentPosition: true\r\n\t\t\t\t//});\r\n\r\n\t\t\t\t$.get(link, function (content) {\r\n\t\t\t\t\tvar vacanciesItems = $(content).find('section.vacancyOverview ul li'),\r\n\t\t\t\t\t\tusedFilters = $(content).find('section.vacancyOverview div.container > div.results'),\r\n\t\t\t\t\t\tresultEl = $('section.vacancyOverview div.container > div.results');\r\n\r\n\t\t\t\t\tif ($('section.vacancyOverview ul li').length > 0) {\r\n\t\t\t\t\t\t//vacancyGrid.masonry('remove', $('section.vacancyOverview ul li'));\r\n\t\t\t\t\t\t//vacancyGrid.masonry();\r\n\r\n\t\t\t\t\t\t$('section.vacancyOverview ul li').remove();\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (vacanciesItems.length > 0) {\r\n\t\t\t\t\t\t$('section.vacancyOverview').removeClass('noResults');\r\n\t\t\t\t\t\t$('section.vacancyOverview ul.vacancies').append(vacanciesItems);\r\n\t\t\t\t\t\t//setTimeout(function () {\r\n\t\t\t\t\t\t//\tvacancyGrid.masonry('appended', vacanciesItems);\r\n\t\t\t\t\t\t//}, 300);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\t$('section.vacancyOverview').addClass('noResults');\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (usedFilters.length > 0) {\r\n\t\t\t\t\t\tif (resultEl.length > 0) {\r\n\t\t\t\t\t\t\tresultEl.replaceWith(usedFilters);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t$('section.vacancyOverview div.container').prepend(usedFilters);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tresultEl.remove();\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t//if ($(content).find('section.vacancyOverview a.showMore.button').length > 0) {\r\n\t\t\t\t\t//\tbutton.show().attr('href', $(content).find('section.vacancyOverview a.showMore.button').attr('href'));\r\n\t\t\t\t\t//} else {\r\n\t\t\t\t\t//\tbutton.hide();\r\n\t\t\t\t\t//}\r\n\r\n\t\t\t\t\t//$('section.updateFilters input[name=position]').val(frm);\r\n\t\t\t\t});\r\n\r\n\t\t\t\treturn false;\r\n\t\t\t});\r\n\t\t},\r\n\t\tvacanciesMas: function () {\r\n\r\n\t\t\t$('section.vacancyOverview a.showMore.button').on('click', function () {\r\n\t\t\t\tvar link = $(this).attr('href'),\r\n\t\t\t\t\tbutton = $(this);\r\n\r\n\t\t\t\t$.get(link, function (content) {\r\n\t\t\t\t\tvar frm = parseInt(link.split(\"position=\")[1]),\r\n\t\t\t\t\t\tnewItems = $(content).find('section.updates ul li:eq(' + (frm - 1) + ')').nextAll();\r\n\r\n\t\t\t\t\tupdateGrid.append(newItems);\r\n\t\t\t\t\tslimmageTools.reload();\r\n\r\n\t\t\t\t\tsetTimeout(function () {\r\n\t\t\t\t\t\tupdateGrid.masonry('appended', newItems);\r\n\t\t\t\t\t}, 400);\r\n\r\n\t\t\t\t\tif ($(content).find('section.updates.overview a.showMore.button').length > 0) {\r\n\t\t\t\t\t\tbutton.attr('href', $(content).find('section.updates.overview a.showMore.button').attr('href'));\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tbutton.hide();\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t$('section.updateFilters input[name=position]').val(frm);\r\n\t\t\t\t});\r\n\r\n\t\t\t\treturn false;\r\n\t\t\t});\r\n\r\n\t\t\t$('section.updateFilters input[name=position]').val(0)\r\n\t\t}\r\n\t}\r\n\r\nvar tabNav = {\r\n\t\tinit: function () {\r\n\t\t\t$('section.tabNavigation ul li:first-child').addClass('active');\r\n\t\t\t$('section.tabContent:first').addClass('show');\r\n\r\n\t\t\t$('section.tabNavigation ul li a').on('click', function () {\r\n\t\t\t\tvar tabHash = $(this).attr('href');\r\n\r\n\t\t\t\t//ga('send', 'event', 'Amaris', 'Tabbladen', tabHash);\r\n\r\n\t\t\t\tif ($(this).parent('li').hasClass('active')) {\r\n\t\t\t\t\t$('section.tabNavigation ul').addClass('open');\r\n\t\t\t\t} else {\r\n\t\t\t\t\t$('section.tabNavigation ul').removeClass('open');\r\n\t\t\t\t}\r\n\r\n\t\t\t\t$('section.tabNavigation ul li').removeClass('active');\r\n\t\t\t\tvar liIndex = $(this).parent('li').index();\r\n\r\n\t\t\t\t$('section.tabNavigation').each(function () {\r\n\t\t\t\t\t$(this).find('ul li:eq(' + liIndex + ')').addClass('active');\r\n\t\t\t\t});\r\n\r\n\t\t\t\t$('section.tabContent').removeClass('show');\r\n\t\t\t\t$('section.tabContent' + $(this).attr('href')).addClass('show');\r\n\r\n\t\t\t\tslimmageTools.reload();\r\n\r\n\t\t\t\treturn false;\r\n\t\t\t});\r\n\r\n\t\t\t// open the right tab with tabcontent if the right hastag is used in the URI\r\n\t\t\tif (window.location.hash != '') {\r\n\t\t\t\tvar urlHash = window.location.href,\r\n\t\t\t\t\tactiveTab = urlHash.substring(urlHash.indexOf(\"#\") + 1);\r\n\r\n\t\t\t\t$('section.tabNavigation li').removeClass('active');\r\n\t\t\t\t$('section.tabContent').removeClass('show');\r\n\t\t\t\t$('a[href=\"#' + activeTab + '\"]').parent().addClass('active');\r\n\t\t\t\t$(\"#\" + activeTab).addClass(\"show\");\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\nvar topTabs = {\r\n\t\tinit: function () {\r\n\t\t\t$('section.topTasks ul li').on('click', function () {\r\n\r\n\t\t\t\tif ($('body').hasClass('ref') && $(this).hasClass('places')) {\r\n\t\t\t\t\t//ga('send', 'event', 'Toptasks', 'Verwijzers', 'Plaatsen');\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif ($('body').hasClass('ref') && $(this).hasClass('documents')) {\r\n\t\t\t\t\t//ga('send', 'event', 'Toptasks', 'Verwijzers', 'Documenten');\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif ($('body').hasClass('ref') && $(this).hasClass('doctor')) {\r\n\t\t\t\t\t//ga('send', 'event', 'Toptasks', 'Verwijzers', 'Specialist consulteren');\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif ($('body').hasClass('ref') && $(this).hasClass('home')) {\r\n\t\t\t\t\t//ga('send', 'event', 'Toptasks', 'Verwijzers', 'Zoeken hulp thuis');\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif ($(this).hasClass('recruiter')) {\r\n\t\t\t\t\t//ga('send', 'event', 'Toptasks', 'Werkenbij', 'Recruiter');\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif ($(this).hasClass('workAndLearn')) {\r\n\t\t\t\t\t//ga('send', 'event', 'Toptasks', 'Werkenbij', 'workAndLearn');\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif ($(this).hasClass('search')) {\r\n\t\t\t\t\t//ga('send', 'event', 'Toptasks', 'Werkenbij', 'Openen zoek baan');\r\n\t\t\t\t}\r\n\r\n\r\n\r\n\t\t\t\tif ($(this).hasClass('careWidgetButton')) {\r\n\t\t\t\t\t//ga('send', 'event', 'HomepageToptasks', 'Openen Toptaak', 'Openen zorg aanvragen');\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif ($(this).hasClass('question')) {\r\n\t\t\t\t\t//ga('send', 'event', 'HomepageToptasks', 'Openen Toptaak', 'Openen vraag stellen');\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif ($(this).hasClass('location')) {\r\n\t\t\t\t\t//ga('send', 'event', 'HomepageToptasks', 'Openen Toptaak', 'Openen locatie zoeken');\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif ($(this).hasClass('workBy')) {\r\n\t\t\t\t\t//ga('send', 'event', 'HomepageToptasks', 'Openen Toptaak', 'Openen werken bij');\r\n\t\t\t\t}\r\n\r\n\r\n\r\n\t\t\t\tvar activeTab = $(this),\r\n\t\t\t\t\ttabId = activeTab.data('id'),\r\n\t\t\t\t\tsectionId = activeTab.data('section-id'),\r\n\t\t\t\t\tisActive = (activeTab.hasClass('active'));\r\n\r\n\t\t\t\tif (typeof tabId != 'undefined') {\r\n\t\t\t\t\tactiveTab[(isActive) ? 'removeClass' : 'addClass']('active').siblings().removeClass('active');\r\n\r\n\t\t\t\t\t$('section.topTab').removeClass('show');\r\n\r\n\t\t\t\t\t$('section.topTab[data-tab-id*=\"' + tabId + '\"]')[(isActive) ? 'removeClass' : 'addClass']('show');\r\n\t\t\t\t} else if (typeof sectionId != 'undefined') {\r\n\t\t\t\t\t$('html, body').animate({\r\n\t\t\t\t\t\t'scrollTop': ($('section.' + sectionId).offset().top)\r\n\t\t\t\t\t}, 750);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif ($(this).children('a').length > 0) {\r\n\t\t\t\t\t\tconst target = $(this).children('a').attr(\"target\");\r\n\t\t\t\t\t\tconst url = $(this).children('a').attr('href');\r\n\r\n\t\t\t\t\t\t(target === \"_blank\") ? window.open(url) : window.location.href = url;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\r\n\t\t\t});\r\n\r\n\t\t\t$('section.topTab span.closeTab').on('click', function () {\r\n\t\t\t\t$('section.topTab').removeClass('show');\r\n\t\t\t\t$('section.topTasks ul li').removeClass('active');\r\n\t\t\t});\r\n\r\n\t\t\t$('body.ref ul.documentsList li a').on('click', function () {\r\n\t\t\t\t//ga('send', 'event', 'Toptasks', 'Verwijzers', 'Download document');\r\n\t\t\t});\r\n\r\n\t\t\t$('body.ref div.main section.contentTab.refHulp div.buttonHolder a.button').on('click', function () {\r\n\t\t\t\t//ga('send', 'event', 'Toptasks', 'Verwijzers', 'VerwijshulpButton');\r\n\t\t\t});\r\n\t\t},\r\n\t\thomeWidget: function () {\r\n\t\t\t$('section.homeWidget div.widgetStep .nextStep').on('click', function () {\r\n\t\t\t\treturn false;\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\nvar serviceMap = {\r\n\t\tinit: function () {\r\n\t\t\tif (locations.length > 0) {\r\n\t\t\t\tvar map = new google.maps.Map(document.getElementById('map'), {\r\n\t\t\t\t\tzoom: 10,\r\n\t\t\t\t\tcenter: new google.maps.LatLng(52.1561110, 5.3878270),\r\n\t\t\t\t\tmapTypeId: google.maps.MapTypeId.ROADMAP\r\n\t\t\t\t}),\r\n\t\t\t\t\tinfowindow = new google.maps.InfoWindow(),\r\n\t\t\t\t\tmarker,\r\n\t\t\t\t\ti;\r\n\r\n\t\t\t\tfor (i = 0; i < locations.length; i++) {\r\n\t\t\t\t\tmarker = new google.maps.Marker({\r\n\t\t\t\t\t\tposition: new google.maps.LatLng(locations[i][1], locations[i][2]),\r\n\t\t\t\t\t\ticon: '/img/marker.png',\r\n\t\t\t\t\t\tmap: map,\r\n\t\t\t\t\t\tzIndex: locations[i][3],\r\n\t\t\t\t\t\turl: locations[i][4]\r\n\t\t\t\t\t});\r\n\r\n\r\n\t\t\t\t\tgoogle.maps.event.addListener(marker, 'click', (function (marker, i) {\r\n\t\t\t\t\t\treturn function () {\r\n\t\t\t\t\t\t\twindow.location.href = this.url;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t})(marker, i));\r\n\r\n\t\t\t\t\tgoogle.maps.event.addListener(marker, 'mouseover', (function (marker, i) {\r\n\t\t\t\t\t\treturn function () {\r\n\t\t\t\t\t\t\tinfowindow.setContent(locations[i][0]);\r\n\t\t\t\t\t\t\tinfowindow.open(map, marker);\r\n\t\t\t\t\t\t\t$(\".gm-style-iw\").next(\"div\").hide();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t})(marker, i));\r\n\r\n\t\t\t\t\tgoogle.maps.event.addListener(marker, 'mouseout', (function (marker, i) {\r\n\t\t\t\t\t\treturn function () {\r\n\t\t\t\t\t\t\tinfowindow.close();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t})(marker, i));\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\t/*\r\nvar locationCarousel = {\r\n\t\tinit: function () {\r\n\t\t\t$('.owl-carousel').owlCarousel({\r\n\t\t\t\tnavigation: true,\r\n\t\t\t\tnav: true,\r\n\t\t\t\tnavText: ['', ''],\r\n\t\t\t\tdots: true,\r\n\t\t\t\titems: 1,\r\n\t\t\t\tloop: true\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\t*/\r\nvar faq = {\r\n\t\tinit: function () {\r\n\t\t\t$('ul.faqList li span.question').on('click', function () {\r\n\t\t\t\t$(this).parent('li')[($(this).parent('li').hasClass('open')) ? 'removeClass' : 'addClass']('open');\r\n\t\t\t});\r\n\r\n\t\t\t$('div.anchors ul li a').on('click', function () {\r\n\t\t\t\tvar point = $(this).attr('href');\r\n\t\t\t\t$('html, body').animate({\r\n\t\t\t\t\t'scrollTop': ($(point).offset().top - 60)\r\n\t\t\t\t}, 750);\r\n\t\t\t\treturn false;\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\nvar updates = {\r\n\t\tinit: function () {\r\n\t\t\tif ($('section.updates.overview').length > 0) {\r\n\t\t\t\t//updates.overview();\r\n\t\t\t}\r\n\t\t},\r\n\t\tmasonryInit: function () {\r\n\t\t\t$('section.updates ul').masonry({\r\n\t\t\t\tcolumnWidth: 'li.masItem',\r\n\t\t\t\titemSelector: 'li.masItem',\r\n\t\t\t\tpercentPosition: true\r\n\t\t\t});\r\n\t\t},\r\n\t\toverview: function () {\r\n\t\t\tvar updateGrid = $('section.updates.overview ul').addClass('init').masonry({\r\n\t\t\t\tcolumnWidth: 'li.masItem',\r\n\t\t\t\titemSelector: 'li.masItem',\r\n\t\t\t\tpercentPosition: true\r\n\t\t\t});\r\n\r\n\t\t\t$('section.updates a.showMore.button').on('click', function () {\r\n\t\t\t\tvar link = $(this).attr('href'),\r\n\t\t\t\t\tbutton = $(this);\r\n\r\n\t\t\t\t$.get(link, function (content) {\r\n\t\t\t\t\tvar frm = parseInt(link.split(\"position=\")[1]),\r\n\t\t\t\t\t\tnewItems = $(content).find('section.updates ul li:eq(' + (frm - 1) + ')').nextAll();\r\n\r\n\t\t\t\t\tupdateGrid.append(newItems);\r\n\t\t\t\t\tslimmageTools.reload();\r\n\r\n\t\t\t\t\tsetTimeout(function () {\r\n\t\t\t\t\t\tupdateGrid.masonry('appended', newItems);\r\n\t\t\t\t\t}, 400);\r\n\r\n\t\t\t\t\tif ($(content).find('section.updates.overview a.showMore.button').length > 0) {\r\n\t\t\t\t\t\tbutton.attr('href', $(content).find('section.updates.overview a.showMore.button').attr('href'));\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tbutton.hide();\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t$('section.updateFilters input[name=position]').val(frm);\r\n\t\t\t\t});\r\n\r\n\t\t\t\treturn false;\r\n\t\t\t});\r\n\r\n\t\t\t$('section.updateFilters input[name=position]').val(0)\r\n\r\n\t\t\t$('div.filters ul.tags li input').on('change', function () {\r\n\t\t\t\tvar link,\r\n\t\t\t\t\tfilters = '',\r\n\t\t\t\t\tbutton = $('section.updates a.showMore.button'),\r\n\t\t\t\t\tposition;\r\n\r\n\t\t\t\t$('div.filters ul.tags li input:checked').each(function () {\r\n\t\t\t\t\tfilters += (filters != '') ? ',' + $(this).val() : $(this).val();\r\n\t\t\t\t});\r\n\r\n\t\t\t\tposition = ($('section.updateFilters input[name=position]').val() != \"\") ? $('section.updateFilters input[name=position]').val() : 0;\r\n\r\n\t\t\t\tlink = '/updates/?filter=' + filters + '&position=' + position;\r\n\r\n\t\t\t\t$.get(link, function (content) {\r\n\t\t\t\t\tvar frm = parseInt(link.split(\"position=\")[1]),\r\n\t\t\t\t\t\tnewItems = $(content).find('section.updates.overview ul li');\r\n\r\n\t\t\t\t\tif ($('section.updates.overview ul li').length > 0) {\r\n\t\t\t\t\t\tupdateGrid.masonry('remove', $('section.updates.overview ul li'));\r\n\t\t\t\t\t\tupdateGrid.masonry();\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (newItems.length > 0) {\r\n\t\t\t\t\t\t$('section.updates.overview').removeClass('noResults');\r\n\t\t\t\t\t\tupdateGrid.append(newItems);\r\n\t\t\t\t\t\tslimmageTools.reload();\r\n\t\t\t\t\t\tsetTimeout(function () {\r\n\t\t\t\t\t\t\tupdateGrid.masonry('appended', newItems);\r\n\t\t\t\t\t\t}, 300);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\t$('section.updates.overview').addClass('noResults');\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif ($(content).find('section.updates.overview a.showMore.button').length > 0) {\r\n\t\t\t\t\t\tbutton.show().attr('href', $(content).find('section.updates.overview a.showMore.button').attr('href'));\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tbutton.hide();\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t$('section.updateFilters input[name=position]').val(frm);\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\nvar contactFloaty = {\r\n\t\tinit: function () {\r\n\t\t\tif (!$('div.floatyContent').length > 0)\r\n\t\t\t\t$('div.toggleContact').remove();\r\n\r\n\t\t\t$('div.openFloaty, div.toggleContact').on('click', function () {\r\n\t\t\t\tif ($('div.contactFloaty div.floaty').hasClass('open')) {\r\n\t\t\t\t\t//ga('send', 'event', 'Buttons', 'ContactFloaty', 'Verbergen Contactfloaty');\r\n\t\t\t\t} else {\r\n\t\t\t\t\t//ga('send', 'event', 'Buttons', 'ContactFloaty', 'Tonen Contactfloaty');\r\n\t\t\t\t}\r\n\r\n\t\t\t\t$('div.toggleContact')[($('div.contactFloaty div.floaty').hasClass('open')) ? 'removeClass' : 'addClass']('show');\r\n\t\t\t\t$('div.contactFloaty div.floaty')[($('div.contactFloaty div.floaty').hasClass('open')) ? 'removeClass' : 'addClass']('open');\r\n\t\t\t});\r\n\r\n\t\t\t$('div.floatyContent a.tel').on('click', function () {\r\n\t\t\t\t//ga('send', 'event', 'Buttons', 'ContactFloaty', 'Telefoonnummer');\r\n\t\t\t});\r\n\r\n\t\t\t$('div.floatyContent a.tel').on('click', function () {\r\n\t\t\t//\tga('send', 'event', 'Buttons', 'ContactFloaty', 'E-mailadres');\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\nvar homeWidget = {\r\n\t\tinit: function () {\r\n\t\t\t$('section.homeWidget span.closeWidget').unbind('click');\r\n\t\t\t$('section.homeWidget span.closeWidget').bind('click', function () {\r\n\t\t\t\tvar firstStep = $('section.homeWidget div.widgetSteps div.widgetStep#step1');\r\n\t\t\t\tvar firstStepMarker = $('section.homeWidget div.steps span.done:first-child');\r\n\r\n\t\t\t\tfirstStep.removeClass('done').nextAll().remove();\r\n\t\t\t\tfirstStepMarker.nextAll().removeClass('done active');\r\n\t\t\t\tfirstStepMarker.addClass('active').removeClass('done');\r\n\r\n\t\t\t\t$('section.topTab').removeClass('show');\r\n\t\t\t\t$('section.topTasks ul li').removeClass('active');\r\n\r\n\t\t\t\thomeWidget.init();\r\n\t\t\t});\r\n\r\n\t\t\t$('a.nextStep').unbind('click');\r\n\t\t\t$('a.nextStep').bind('click', function () {\r\n\t\t\t\tvar link = $(this).attr('href');\r\n\r\n\t\t\t\t$.get(link, function (content) {\r\n\t\t\t\t\tvar newStep = $(content).find('section.homeWidget div.widgetSteps div.widgetStep'),\r\n\t\t\t\t\t\tsteps = $(content).find('section.homeWidget div.steps');\r\n\r\n\t\t\t\t\t$('section.homeWidget div.widgetSteps div.widgetStep').addClass('done');\r\n\t\t\t\t\t$('section.homeWidget div.widgetSteps').append(newStep);\r\n\t\t\t\t\t$('section.homeWidget div.steps').replaceWith(steps);\r\n\r\n\t\t\t\t\tslimmageTools.reload();\r\n\r\n\t\t\t\t\t$('html, body').animate({\r\n\t\t\t\t\t\t'scrollTop': ($('section.topTasks').offset().top)\r\n\t\t\t\t\t}, 750);\r\n\r\n\t\t\t\t\thomeWidget.init();\r\n\t\t\t\t});\r\n\r\n\t\t\t\tvar clickInStep = $('div.steps span.done').length + $('div.steps span.active').length;\r\n\t\t\t\t//ga('send', 'event', 'HomepageToptasks', 'Klik in stap', 'Stap ' + clickInStep);\r\n\r\n\t\t\t\treturn false;\r\n\t\t\t});\r\n\r\n\t\t\t$('section.homeWidget div.steps span.done').unbind('click');\r\n\t\t\t$('section.homeWidget div.steps span.done').bind('click', function () {\r\n\t\t\t\tvar doneStep = $(this);\r\n\r\n\t\t\t\tif (doneStep.hasClass('done')) {\r\n\t\t\t\t\t$('section.homeWidget div.widgetSteps div.widgetStep#step' + (doneStep.index() + 1)).removeClass('done').nextAll().remove();\r\n\t\t\t\t\tdoneStep.nextAll().removeClass('done active');\r\n\t\t\t\t\tdoneStep.addClass('active').removeClass('done');\r\n\t\t\t\t}\r\n\r\n\t\t\t\t$('html, body').animate({\r\n\t\t\t\t\t'scrollTop': ($('section.topTasks').offset().top)\r\n\t\t\t\t}, 750);\r\n\r\n\t\t\t\thomeWidget.init();\r\n\t\t\t});\r\n\r\n\t\t\t$('section.homeWidget ul.services li a, section.homeWidget ul.locations li a').unbind('click');\r\n\t\t\t$('section.homeWidget ul.services li a, section.homeWidget ul.locations li a').bind('click', function () {\r\n\t\t\t\tvar clickInStep = $('div.steps span.done').length + $('div.steps span.active').length;\r\n\t\t\t\t//ga('send', 'event', 'HomepageToptasks', 'Klik in stap', 'Stap ' + clickInStep);\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\nvar showButton = {\r\n\t\tinit: function () {\r\n\t\t\twindow.requestAnimationFrame = window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || window.msRequestAnimationFrame || function (f) { setTimeout(f, 1000 / 60) }\r\n\r\n\t\t\tfunction checkIfShow() {\r\n\t\t\t\tvar scrolltop = window.pageYOffset;\r\n\t\t\t\tvar formHolderRowOffset = $('.formHolderRow .contour').offset();\r\n\r\n\t\t\t\t$('div.header')[(scrolltop < (formHolderRowOffset.top + ($('.formHolderRow .contour').outerHeight() - 85))) ? 'removeClass' : 'addClass']('showButton');\r\n\t\t\t}\r\n\r\n\t\t\twindow.addEventListener('scroll', function () {\r\n\t\t\t\trequestAnimationFrame(checkIfShow);\r\n\t\t\t}, false)\r\n\r\n\t\t\tcheckIfShow();\r\n\r\n\t\t\t$('.toForm').on('click', function () {\r\n\t\t\t\t$('html, body').animate({\r\n\t\t\t\t\t'scrollTop': ($('.colRight').offset().top - 100)\r\n\t\t\t\t}, 750);\r\n\r\n\t\t\t\treturn false;\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\nvar tabbedContent = {\r\n\t\tinit: function () {\r\n\t\t\t$('div.tabbedContent ul.tabs li').on('click', function () {\r\n\t\t\t\tvar activeTab = $(this),\r\n\t\t\t\t\ttabId = activeTab.data('tab-id');\r\n\r\n\t\t\t\tactiveTab.addClass('active').siblings().removeClass('active');\r\n\r\n\t\t\t\t$('div.tabbedContent div.tabContent').removeClass('show');\r\n\r\n\t\t\t\t$('div.tabbedContent div.tabContent[data-tab-content-id*=\"' + tabId + '\"]').addClass('show');\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\r\nvar workerTabs = {\r\n\t\tinit: function () {\r\n\t\t\t$('div.workerTabs ul li').on('click', function () {\r\n\t\t\t\tvar activeTab = $(this),\r\n\t\t\t\t\ttabId = activeTab.data('worker-id');\r\n\r\n\t\t\t\tactiveTab.addClass('active').siblings().removeClass('active');\r\n\r\n\t\t\t\t$('div.workerContent div.workerTabContent').removeClass('show');\r\n\r\n\t\t\t\t$('div.workerContent div.workerTabContent[data-worker-tab-id*=\"' + tabId + '\"]').addClass('show');\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\nvar slimmageTools = {\r\n\t\treload: function () {\r\n\t\t\tvar s = window['slimmage'] || {};\r\n\t\t\ts.cr(500);\r\n\t\t}\r\n\t}\r\n\r\nvar videoPlaying = false;\r\n\r\n\tvar werkenBijVideo = {\r\n\t\tinit: function () {\r\n\t\t\twerkenBijVideo.checkPlaying();\r\n\r\n\t\t\t$('.muteControls').on('click', function () {\r\n\t\t\t\twerkenBijVideo.toggleMute();\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tcheckPlaying: function () {\r\n\t\t\tif ($('.werkenBijHeader #headerVideo').length > 0) {\r\n\t\t\t\tvar vid = document.getElementById(\"headerVideo\");\r\n\t\t\t\tvid.ontimeupdate = function () {\r\n\t\t\t\t\tvideoPlaying = true;\r\n\t\t\t\t\tif (!$('.muteControls').hasClass('visible')) {\r\n\t\t\t\t\t\t$('.muteControls').addClass('visible');\r\n\t\t\t\t\t}\r\n\t\t\t\t};\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\ttoggleMute: function () {\r\n\t\t\tvar videoEl = $('.werkenBijHeader #headerVideo');\r\n\r\n\t\t\tif (videoEl[0].muted === false) {\r\n\t\t\t\tvideoEl[0].muted = true;\r\n\t\t\t\t$('.muteControls').addClass('muted');\r\n\t\t\t} else {\r\n\t\t\t\tvideoEl[0].muted = false;\r\n\t\t\t\t$('.muteControls').removeClass('muted');\r\n\t\t\t}\r\n\t\t}\r\n\t}","/**\r\n * @preserve Slimmage 0.4.1, use with ImageResizer. MIT/Apache2 dual licensed by Imazen \r\n */\r\n\r\n/* We often use string instead of dot notation to keep \r\n Closure Compiler's advanced mode from breaking APIs */\r\n/*jshint sub:true*/\r\n\r\n(function (w) { //w==window\r\n\t// Enable strict mode\r\n\t\"use strict\";\r\n\r\n\tvar s = window['slimmage'] || {};\r\n\twindow['slimmage'] = s;\r\n\tif (s['verbose'] === undefined) { s['verbose'] = false; }\r\n\tif (s['tryWebP'] === undefined) { s['tryWebP'] = false; }\r\n\tif (s['maxWidth'] === undefined) { s['maxWidth'] = 2048; }\r\n\tif (s['widthStep'] === undefined) { s['widthStep'] = 160; }\r\n\tif (s['jpegQuality'] === undefined) { s['jpegQuality'] = 90; }\r\n\tif (s['jpegRetinaQuality'] === undefined) { s['jpegRetinaQuality'] = 80; }\r\n\tif (s['webpTimeout'] === undefined) { s['webpTimeout'] = 0; }\r\n\ts['changed'] = [];\r\n\r\n\tvar log = function () { if (s['verbose'] && w.console && w.console.log) try { w.console.log.apply(w.console, arguments); } catch (e) { } };\r\n\ts.beginWebPTest = function () {\r\n\t\tif (!s['tryWebP'] || s._testingWebP) return;\r\n\t\ts._testingWebP = true;\r\n\r\n\t\tvar WebP = new Image();\r\n\t\tWebP.onload = WebP.onerror = function () {\r\n\t\t\ts['webp'] = (WebP.height == 2);\r\n\t\t\ts._testingWebP = false;\r\n\t\t\tif (s.cr) { s.cr(); }\r\n\t\t};\r\n\t\tWebP.src = 'data:image/webp;base64,UklGRjoAAABXRUJQVlA4IC4AAACyAgCdASoCAAIALmk0mk0iIiIiIgBoSygABc6WWgAA/veff/0PP8bA//LwYAAA';\r\n\t};\r\n\t//test for webp support ASAP\r\n\ts.beginWebPTest();\r\n\r\n\ts.setAttr = function (elem, name, value) {\r\n\t\tname = name.toLowerCase();\r\n\t\tif (name == \"class\") { elem.className = value; }\r\n\t\telse if (name == \"tabindex\") { elem.tabIndex = value; }\r\n\t\telse if (name == \"usemap\") { elem.useMap = value; }\r\n\t\telse {\r\n\t\t\telem.setAttribute(name, value);\r\n\t\t}\r\n\r\n\t};\r\n\ts['setAttribute'] = s.setAttr;\r\n\r\n\ts.is_blank = function (v) { return v === \"none\" || v === null || v === undefined || v === \"\" || v === false; };\r\n\ts['getCssValue'] = function (target, hyphenProp) {\r\n\t\t//See http://www.nathanaeljones.com/blog/2013/reading-max-width-cross-browser\r\n\r\n\t\tvar val = typeof (window.getComputedStyle) != \"undefined\" && window.getComputedStyle(target, null).getPropertyValue(hyphenProp);\r\n\r\n\t\t// Some browsers (IE8, Firefox 28) read \"none\" when not set. Others (IE6) respond with undefined. A value of\r\n\t\t// \"none\" is invalid and would cause an exception or be interpreted as \r\n\t\tif (!s.is_blank(val)) {\r\n\t\t\treturn val;\r\n\t\t}\r\n\r\n\t\tif (target.currentStyle) {\r\n\t\t\tval = target.currentStyle[hyphenProp.replace(/([a-z])\\-([a-z])/, function (a, b, c) { return b + c.toUpperCase(); })] || target.currentStyle[hyphenProp];\r\n\t\t}\r\n\r\n\t\treturn s.is_blank(val) ? null : val;\r\n\t};\r\n\r\n\ts['getCssPixels'] = function (target, hyphenProp) {\r\n\t\tvar val = s['getCssValue'](target, hyphenProp);\r\n\r\n\t\tif (val === null || val === \"0\" || val === 0) return val;\r\n\r\n\t\t//We can return pixels directly, but not other units\r\n\t\tif (val.slice(-2) == \"px\") return parseFloat(val.slice(0, -2));\r\n\r\n\t\t//Create a temporary sibling div to resolve units into pixels.\r\n\t\tvar temp = document.createElement(\"div\");\r\n\t\ttemp.style.overflow = temp.style.visibility = \"hidden\";\r\n\t\ttemp.style.cssFloat = \"none\";\r\n\t\ttarget.parentNode.appendChild(temp);\r\n\t\ttemp.style.width = val;\r\n\t\tvar pixels = temp.offsetWidth;\r\n\t\ttarget.parentNode.removeChild(temp);\r\n\t\treturn pixels;\r\n\t};\r\n\r\n\ts.nodesToArray = function (nodeList) {\r\n\t\tvar array = [];\r\n\t\t// iterate backwards ensuring that length is an UInt32\r\n\t\tfor (var i = nodeList.length >>> 0; i--;) {\r\n\t\t\tarray[i] = nodeList[i];\r\n\t\t}\r\n\t\treturn array;\r\n\t};\r\n\r\n /*\r\n No URI decoding/encoding is perfomed on keys or values. Caller's responsibility.\r\n\r\n vistor and mutator are applied to string.replace -> https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/replace#Specifying_a_function_as_a_parameter\r\n params:\r\n 1. entire pair, incl. (optional) & and = \r\n 2. '&' (if present)\r\n 3. key\r\n 4. value\r\n\r\n mutator's result is honored. Must return param 1, or provide valid replacement.\r\n \r\n injector(query) is responsible for adding additional pairs if required. \r\n It must not produce a malformatted query.\r\n */\r\n\ts['mutateUrl'] = function (url, visitor, mutator, injector) {\r\n\t\tvar m = /^([^?#]*)?(\\?([^#]*))?(#.*)?/.exec(url);\r\n\t\tvar q = m[3] || '';\r\n\r\n\t\tvar qr = /(^&*|&+)([^&=]*)=?([^&]*)/g;\r\n\t\tq.replace(qr, visitor); //read-only, to gather data\r\n\r\n\t\tvar newq = '?' + q.replace(qr, mutator).replace(/(?:^\\?*&*)|(?:[?&]+$)/g, \"\").replace(/&&+/g, \"&\");\r\n\r\n\t\treturn (m[1] || '') + injector(newq) + (m[4] || '');\r\n\t};\r\n\r\n\t//Expects virtual, not device pixel width\r\n\ts['getImageInfo'] = function (elementWidth, previousSrc, previousPixelWidth, previousElement) {\r\n\t\tvar data = {\r\n\t\t\t'webp': s['webp'],\r\n\t\t\t'width': elementWidth,\r\n\t\t\t'dpr': window.devicePixelRatio || 1,\r\n\t\t\t'src': previousSrc,\r\n\t\t\t'element': previousElement\r\n\t\t};\r\n\t\t//Determine quality percentage\r\n\t\tvar high_density = s['webp'] ? 65 : s['jpegRetinaQuality'];\r\n\t\tvar low_density = s['webp'] ? 78 : s['jpegQuality'];\r\n\t\tdata['quality'] = data['dpr'] > 1.49 ? high_density : low_density;\r\n\r\n\t\t//Calculate raw pixels using devicePixelRatio. Limit size to maxWidth.\r\n\t\tvar idealWidth = elementWidth * data['dpr'];\r\n\t\t//Minimize variants for caching improvements; round up to nearest multiple of widthStep\r\n\t\tdata['requestedWidth'] = Math.min(s['maxWidth'], //Limit size to maxWidth\r\n\t\t\tMath.round( //Round in case widthStep isn't an integer\r\n\t\t\t\tMath.ceil(idealWidth / s['widthStep']) * s['widthStep'] //Divide, ceiling, then multiply\r\n\t\t\t)\r\n\t\t);\r\n\r\n\r\n\t\tvar a = s['adjustImageParameters'];\r\n\t\tif (a && typeof (a) === \"function\") {\r\n\t\t\ta(data);\r\n\t\t}\r\n\t\tvar finalWidth = data['requestedWidth'];\r\n\r\n\t\tif (finalWidth > previousPixelWidth) {\r\n\t\t\t//Never request a smaller image once the larger one has already started loading\r\n\t\t\tvar u = {}; //For storing raw pairs\r\n\t\t\tvar c = {}; //For storing relevant parsed info\r\n\t\t\tvar newSrc = s['mutateUrl'](\r\n\t\t\t\tpreviousSrc,\r\n\t\t\t\t//Visitor\r\n\t\t\t\tfunction (_, d, k, v) {\r\n\t\t\t\t\tu[k.toLowerCase()] = v;\r\n\t\t\t\t},\r\n\t\t\t\t//Mutator\r\n\t\t\t\tfunction (p, d, k, v) {\r\n\r\n\t\t\t\t\t//Parse existing values so we can make educated calculations for width/height\r\n\t\t\t\t\tif (c.zoom === undefined) {\r\n\t\t\t\t\t\tc.zoom = parseFloat(u.zoom || 1);\r\n\t\t\t\t\t\tif (isNaN(c.zoom)) { c.zoom = 1; }\r\n\t\t\t\t\t\tc.w = (finalWidth / c.zoom).toFixed();\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (c.ratio === undefined) {\r\n\t\t\t\t\t\tvar w = parseFloat(u.width || u.w || u.maxwidth);\r\n\t\t\t\t\t\tvar h = parseFloat(u.height || u.h || u.maxheight);\r\n\t\t\t\t\t\tif (!isNaN(w) && !isNaN(h) && w > 0 && h > 0) {\r\n\t\t\t\t\t\t\tc.ratio = w / h;\r\n\t\t\t\t\t\t\tc.h = (((finalWidth / c.zoom) / w) * h).toFixed();\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tc.ratio = 'noclue';\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (k.match(/^format$/i) && data['webp']) { return d + \"format=webp\"; }\r\n\t\t\t\t\tif (k.match(/^quality/i)) { return d + \"quality=\" + data['quality']; }\r\n\r\n\t\t\t\t\tif (k.match(/^(w|width|maxwidth)$/i)) { return d + k + \"=\" + c.w; }\r\n\t\t\t\t\tif (k.match(/^(h|height|maxheight)$/i)) { return d + k + \"=\" + c.h; }\r\n\r\n\t\t\t\t\treturn p;\r\n\t\t\t\t},\r\n\t\t\t\t//Injector\r\n\t\t\t\tfunction (q) { return q; });\r\n\r\n\t\t\treturn { 'src': newSrc, 'data-pixel-width': finalWidth };\r\n\t\t}\r\n\t\treturn null;\r\n\t};\r\n\ts['adjustImageSrc'] = function (img, previousSrc) {\r\n\t\tvar cssMaxWidth = s['getCssPixels'](img, 'max-width');\r\n\t\tvar result = s['getImageInfo'](cssMaxWidth,\r\n\t\t\tpreviousSrc,\r\n\t\t\timg.getAttribute('data-pixel-width') | 0,\r\n\t\t\timg);\r\n\r\n\t\tif (result) {\r\n\t\t\timg.src = result['src'];\r\n\t\t\ts.setAttr(img, 'data-pixel-width', result['data-pixel-width']);\r\n\t\t\tif (s['enforceCss']) {\r\n\t\t\t\tif (cssMaxWidth < result['data-pixel-width']) {\r\n\t\t\t\t\timg.style.width = s['getCssValue'](img, 'max-width');\r\n\t\t\t\t\ts.setAttr(img, 'data-width-enforced', true);\r\n\t\t\t\t} else {\r\n\t\t\t\t\timg.style.width = 'auto';\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\ts['changed'].push(img);\r\n\t\t\tlog(\"Slimming: updating \" + result['src']);\r\n\t\t} else if (s['enforceCss'] && img.getAttribute('data-width-enforced')) {\r\n\t\t\tvar imageWidth = parseFloat(img.getAttribute('data-pixel-width'));\r\n\t\t\tif (!isNaN(imageWidth) && cssMaxWidth >= imageWidth) {\r\n\t\t\t\timg.style.width = 'auto';\r\n\t\t\t\timg.removeAttribute('data-width-enforced');\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t};\r\n\ts.cr = function (delay) {\r\n\t\tvar i, il, j, jl, k, kl;\r\n\r\n\t\tif (s.timeoutid > 0) w.clearTimeout(s.timeoutid);\r\n\t\ts.timeoutid = 0;\r\n\r\n\t\tif (s._testingWebP && s['webpTimeout'] > 0 && !s.webp_waiting) {\r\n\t\t\ts.webp_waiting = true;\r\n\t\t\tdelay = s['webpTimeout'];\r\n\t\t}\r\n\t\tif (delay && delay > 0) {\r\n\t\t\ts.timeoutid = w.setTimeout(s.cr, delay);\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tvar stopwatch = new Date().getTime();\r\n\r\n\t\tvar newImages = 0;\r\n\t\t//1. Copy images out of noscript tags, but hide 'src' attribute as data-src\r\n\t\tvar n = s.nodesToArray(w.document.getElementsByTagName(\"noscript\"));\r\n\t\tfor (i = 0, il = n.length; i < il; i++) {\r\n\t\t\tvar ns = n[i];\r\n\t\t\tif (ns.getAttribute(\"data-slimmage\") !== null) {\r\n\r\n\t\t\t\tvar div = w.document.createElement('div');\r\n\t\t\t\tvar contents = (ns.textContent || ns.innerHTML);\r\n\t\t\t\tif (!contents || contents.replace(/[\\s\\t\\r\\n]+/, \"\").length === 0) {\r\n\t\t\t\t\t//IE doesn't let us touch noscript, so we have to use attributes.\r\n\t\t\t\t\tvar img = new Image();\r\n\t\t\t\t\tfor (var ai = 0; ai < ns.attributes.length; ai++) {\r\n\t\t\t\t\t\tvar a = ns.attributes[ai];\r\n\t\t\t\t\t\tif (a && a.specified && a.name.indexOf(\"data-img-\") === 0) {\r\n\t\t\t\t\t\t\ts.setAttr(img, a.name.slice(9 - a.name.length), a.value);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tdiv.appendChild(img);\r\n\t\t\t\t} else {\r\n\t\t\t\t\t//noscript isn't part of DOM, so we have to recreate it, unescaping html, src->data-src \r\n\t\t\t\t\tdiv.innerHTML = contents.replace(/\\s+src\\s*=\\s*(['\"])/i, \" data-src=$1\").\r\n\t\t\t\t\t\treplace(/</g, '<').replace(/>/g, '>').replace(/&/g, '&');\r\n\t\t\t\t}\r\n\t\t\t\t//Clear source values before we add it back to the dom, ensure data-slimmage is set.\r\n\t\t\t\tvar childImages = div.getElementsByTagName(\"img\");\r\n\t\t\t\tfor (j = 0, jl = childImages.length; j < jl; j++) {\r\n\t\t\t\t\tvar ci = childImages[j];\r\n\t\t\t\t\tif (ci.src !== null && ci.src.length > 0) {\r\n\t\t\t\t\t\ts.setAttr(ci, \"data-src\", ci.src);\r\n\t\t\t\t\t\tci.src = \"\";\r\n\t\t\t\t\t}\r\n\t\t\t\t\ts.setAttr(ci, \"data-slimmage\", true);\r\n\t\t\t\t\tns.parentNode.insertBefore(ci, ns);\r\n\t\t\t\t\tnewImages++;\r\n\t\t\t\t}\r\n\t\t\t\t//2. Remove old noscript tags\r\n\t\t\t\tns.parentNode.removeChild(ns);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t//3. Let plugins inject custom behavior\r\n\t\tif ('function' === typeof s['beforeAdjustSrc']) {\r\n\t\t\ts['beforeAdjustSrc']();\r\n\t\t}\r\n\r\n\t\t//4. Find images with data-slimmage and run adjustImageSrc.\r\n\t\tvar totalImages = 0;\r\n\t\tvar images = s.nodesToArray(w.document.getElementsByTagName(\"img\"));\r\n\t\tfor (k = 0, kl = images.length; k < kl; k++) {\r\n\t\t\tif (images[k].getAttribute(\"data-slimmage\") !== null) {\r\n\t\t\t\tvar previousSrc = images[k].getAttribute(\"data-src\") || images[k].src;\r\n\t\t\t\ts['adjustImageSrc'](images[k], previousSrc);\r\n\t\t\t\ttotalImages++;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tdocument.querySelectorAll('.imageHolderUrh [data-slimmage=\"true\"]').forEach(image => {\r\n\t\t\tlog(\"updating ratio\");\r\n\t\t\tif (image.getAttribute('src') != null) {\r\n\t\t\t\tlet newSrc = image.getAttribute('src').replace(/width=([^&]*)/, `width=${image.closest('.imageHolderUrh').clientWidth}`);\r\n\t\t\t\tnewSrc = newSrc.replace(/height=([^&]*)/, `height=${image.closest('.imageHolderUrh').clientHeight}`);\r\n\r\n\t\t\t\timage.setAttribute('src', newSrc);\r\n\t\t\t\timage.setAttribute('data-src', newSrc);\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\t/* $('.imageHolderUrh [data-slimmage=\"true\"]').each(function () {\r\n\t\t\tconsole.log(\"updating ratio\");\r\n\t\t\tif ($(this).attr('src') != null) {\r\n\t\t\t\tvar newSrc = $(this).attr('src').replace(/width=([^&]*)/, \"width=\" + $(this).parents('.imageHolderUrh').width());\r\n\t\t\t\tnewSrc = newSrc.replace(/height=([^&]*)/, \"height=\" + $(this).parents('.imageHolderUrh').height());\r\n\r\n\t\t\t\t$(this).attr('src', newSrc).attr('data-src', newSrc);\r\n\t\t\t}\r\n\t\t}); */\r\n\r\n\t\tvar changed = s['changed'].slice();\r\n\t\ts['changed'].length = 0;\r\n\r\n\t\t//5. Callback when ready\r\n\t\tif ((changed.length > 0 || !s.readyCalled) && 'function' === typeof s['readyCallback']) {\r\n\t\t\ts['readyCallback'](changed);\r\n\t\t\ts.readyCalled = true;\r\n\t\t}\r\n\r\n\t\tlog(\"Slimmage: restored \" + newImages + \" images from noscript tags, checked \" + totalImages + \" images, changed \" + changed.length + \". \" + (new Date().getTime() - stopwatch) + \"ms\");\r\n\t};\r\n\r\n\ts['checkResponsiveImages'] = s.cr;\r\n\t// Run on resize and domready (w.load as a fallback)\r\n\tif (w.addEventListener) {\r\n\t\tw.addEventListener(\"resize\", function () { s.cr(500); }, false);\r\n\t\tw.addEventListener(\"DOMContentLoaded\", function () {\r\n\t\t\ts.cr();\r\n\t\t\t// Run once only\r\n\t\t\tw.removeEventListener(\"load\", s.cr, false);\r\n\t\t}, false);\r\n\t\tw.addEventListener(\"load\", s.cr, false);\r\n\t} else if (w.attachEvent) {\r\n\t\tw.attachEvent(\"onload\", s.cr);\r\n\t\tw.attachEvent(\"onresize\", function () { s.cr(500); });\r\n\t}\r\n\r\n}(window));\r\n","window.slimmage = {\r\n verbose: false,\r\n tryWebP: true,\r\n maxWidth: 2048,\r\n widthStep: 160,\r\n jpegQuality: 90,\r\n jpegRetinaQuality: 80,\r\n webpTimeout: 0\r\n};","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar runtime = (function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n return obj[key];\n }\n try {\n // IE 8 has a broken Object.defineProperty that only works on DOM objects.\n define({}, \"\");\n } catch (err) {\n define = function(obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n exports.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n IteratorPrototype[iteratorSymbol] = function () {\n return this;\n };\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;\n GeneratorFunctionPrototype.constructor = GeneratorFunction;\n GeneratorFunction.displayName = define(\n GeneratorFunctionPrototype,\n toStringTagSymbol,\n \"GeneratorFunction\"\n );\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n define(prototype, method, function(arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n exports.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n exports.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n define(genFun, toStringTagSymbol, \"GeneratorFunction\");\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n exports.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function(error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n AsyncIterator.prototype[asyncIteratorSymbol] = function () {\n return this;\n };\n exports.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList),\n PromiseImpl\n );\n\n return exports.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n define(Gp, toStringTagSymbol, \"Generator\");\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n Gp[iteratorSymbol] = function() {\n return this;\n };\n\n Gp.toString = function() {\n return \"[object Generator]\";\n };\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n exports.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n\n // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n return exports;\n\n}(\n // If this script is executing as a CommonJS module, use module.exports\n // as the regeneratorRuntime namespace. Otherwise create a new empty\n // object. Either way, the resulting object will be used to initialize\n // the regeneratorRuntime variable at the top of this file.\n typeof module === \"object\" ? module.exports : {}\n));\n\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n}\n","module.exports = $;","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\n\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n\n _next(undefined);\n });\n };\n}","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}","/*! js-cookie v3.0.5 | MIT */\n/* eslint-disable no-var */\nfunction assign (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n target[key] = source[key];\n }\n }\n return target\n}\n/* eslint-enable no-var */\n\n/* eslint-disable no-var */\nvar defaultConverter = {\n read: function (value) {\n if (value[0] === '\"') {\n value = value.slice(1, -1);\n }\n return value.replace(/(%[\\dA-F]{2})+/gi, decodeURIComponent)\n },\n write: function (value) {\n return encodeURIComponent(value).replace(\n /%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,\n decodeURIComponent\n )\n }\n};\n/* eslint-enable no-var */\n\n/* eslint-disable no-var */\n\nfunction init (converter, defaultAttributes) {\n function set (name, value, attributes) {\n if (typeof document === 'undefined') {\n return\n }\n\n attributes = assign({}, defaultAttributes, attributes);\n\n if (typeof attributes.expires === 'number') {\n attributes.expires = new Date(Date.now() + attributes.expires * 864e5);\n }\n if (attributes.expires) {\n attributes.expires = attributes.expires.toUTCString();\n }\n\n name = encodeURIComponent(name)\n .replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent)\n .replace(/[()]/g, escape);\n\n var stringifiedAttributes = '';\n for (var attributeName in attributes) {\n if (!attributes[attributeName]) {\n continue\n }\n\n stringifiedAttributes += '; ' + attributeName;\n\n if (attributes[attributeName] === true) {\n continue\n }\n\n // Considers RFC 6265 section 5.2:\n // ...\n // 3. If the remaining unparsed-attributes contains a %x3B (\";\")\n // character:\n // Consume the characters of the unparsed-attributes up to,\n // not including, the first %x3B (\";\") character.\n // ...\n stringifiedAttributes += '=' + attributes[attributeName].split(';')[0];\n }\n\n return (document.cookie =\n name + '=' + converter.write(value, name) + stringifiedAttributes)\n }\n\n function get (name) {\n if (typeof document === 'undefined' || (arguments.length && !name)) {\n return\n }\n\n // To prevent the for loop in the first place assign an empty array\n // in case there are no cookies at all.\n var cookies = document.cookie ? document.cookie.split('; ') : [];\n var jar = {};\n for (var i = 0; i < cookies.length; i++) {\n var parts = cookies[i].split('=');\n var value = parts.slice(1).join('=');\n\n try {\n var found = decodeURIComponent(parts[0]);\n jar[found] = converter.read(value, found);\n\n if (name === found) {\n break\n }\n } catch (e) {}\n }\n\n return name ? jar[name] : jar\n }\n\n return Object.create(\n {\n set,\n get,\n remove: function (name, attributes) {\n set(\n name,\n '',\n assign({}, attributes, {\n expires: -1\n })\n );\n },\n withAttributes: function (attributes) {\n return init(this.converter, assign({}, this.attributes, attributes))\n },\n withConverter: function (converter) {\n return init(assign({}, this.converter, converter), this.attributes)\n }\n },\n {\n attributes: { value: Object.freeze(defaultAttributes) },\n converter: { value: Object.freeze(converter) }\n }\n )\n}\n\nvar api = init(defaultConverter, { path: '/' });\n/* eslint-enable no-var */\n\nexport { api as default };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","var getProto = Object.getPrototypeOf ? (obj) => (Object.getPrototypeOf(obj)) : (obj) => (obj.__proto__);\nvar leafPrototypes;\n// create a fake namespace object\n// mode & 1: value is a module id, require it\n// mode & 2: merge all properties of value into the ns\n// mode & 4: return value when already ns object\n// mode & 16: return value when it's Promise-like\n// mode & 8|1: behave like require\n__webpack_require__.t = function(value, mode) {\n\tif(mode & 1) value = this(value);\n\tif(mode & 8) return value;\n\tif(typeof value === 'object' && value) {\n\t\tif((mode & 4) && value.__esModule) return value;\n\t\tif((mode & 16) && typeof value.then === 'function') return value;\n\t}\n\tvar ns = Object.create(null);\n\t__webpack_require__.r(ns);\n\tvar def = {};\n\tleafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)];\n\tfor(var current = mode & 2 && value; typeof current == 'object' && !~leafPrototypes.indexOf(current); current = getProto(current)) {\n\t\tObject.getOwnPropertyNames(current).forEach((key) => (def[key] = () => (value[key])));\n\t}\n\tdef['default'] = () => (value);\n\t__webpack_require__.d(ns, def);\n\treturn ns;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"./\" + chunkId + \".bundle.js\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","var inProgress = {};\nvar dataWebpackPrefix = \"amaris_2021:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.p = \"/scripts/werkenbij/\";","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t\"index\": 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = (event) => {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n// no on chunks loaded\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkamaris_2021\"] = self[\"webpackChunkamaris_2021\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","import './libraries/slimmageSettings';\r\nimport './libraries/slimmage';\r\nimport './libraries/oldMain';\r\n\r\n// App\r\nimport App from './app';\r\nimport PolyfillController from './controllers/polyfill';\r\nimport ConsentController from '@humandigital-agency/consent-controller';\r\n\r\n// Controllers\r\nimport HeaderController from './controllers/header';\r\n// import MediaController from './controllers/media';\r\n// import SliderController from './controllers/slider';\r\n// import GalleryController from './controllers/gallery';\r\n\r\n(async () => {\r\n document.querySelector('html').classList.remove('no-js');\r\n\r\n const polyfills = new PolyfillController();\r\n await polyfills.init();\r\n\r\n try {\r\n const app = new App();\r\n app.resizeThrottle = 10;\r\n app.scrollThrottle = 100;\r\n window.app = app;\r\n \r\n app.polyfillController = polyfills;\r\n \r\n app.headerController = new HeaderController();\r\n app.ConsentController = new ConsentController();\r\n // app.mediaController = new MediaController();\r\n // app.SliderController = new SliderController();\r\n // app.GalleryController = new GalleryController();\r\n\r\n //Modules\r\n if (document.querySelector('.shareContainer')) {\r\n import( /* webpackChunkName: \"modules/share\" */ './controllers/share/controller').then(e => {\r\n app.ShareController = new e.default();\r\n });\r\n }\r\n // if (document.querySelector('.readMoreContainer')) {\r\n // import( /* webpackChunkName: \"modules/readMore\" */ './controllers/readMore/controller').then(e => {\r\n // app.ReadMoreController = new e.default();\r\n // });\r\n // }\r\n\r\n await app.init();\r\n } catch(e) {\r\n console.error(`Something went wrong initializing the app`);\r\n throw e;\r\n };\r\n\r\n console.log(`App initialized`);\r\n document.documentElement.classList.remove('preventAnimations');\r\n\r\n})();"],"names":["App","_resizeFunctionsArr","_resizeFunctions","_resizeFunctionsCounter","_resizeTimeout","resizeThrottle","_scrollFunctionsArr","_scrollFunctions","_scrollFunctionsCounter","_scrollTimeout","scrollThrottle","_resizeAnimationPreventerTimeout","breakpoints","xs","gutter","size","sm","md","lg","xl","detectBrowser","setEventListeners","fullHeightListener","resizeAnimationPreventer","addNewWindowTitles","addNoOpener","addAnchorEnhancement","initSelectric","initTippy","initCopy","initScrollTo","initScrollToTop","initPrintListener","initLabelClick","window","addEventListener","resize","bind","passive","document","scroll","querySelectorAll","forEach","label","e","key","toLowerCase","substr","click","Array","from","filter","a","hasAttribute","setAttribute","runFunctions","i","length","setTimeout","func","Object","keys","push","resizeTimer","windowWidth","innerWidth","registerResizeEvent","documentElement","classList","add","clearTimeout","remove","fullHeight","style","setProperty","innerHeight","isOpera","opr","addons","opera","navigator","userAgent","indexOf","isFirefox","InstallTrigger","isIphone","match","isIpad","isSafari","isIE","documentMode","isEdge","StyleMedia","isChrome","test","vendor","isBlink","CSS","text","querySelector","dataset","newWindowText","getAttribute","trim","replace","href","hostname","location","parentElement","hash","scrollTo","el","target","scrollPosition","elementCoords","top","behavior","min","max","Math","floor","random","box","getBoundingClientRect","body","docEl","scrollTop","pageYOffset","scrollLeft","pageXOffset","clientTop","clientLeft","left","round","scrollToTopContainer","button","registerScrollEvent","undefined","blur","then","select","$","selectric","arrowButtonMarkup","console","error","tippy","source","tippySource","allowHTML","content","innerHTML","interactive","copyContent","copy","input","createElement","type","position","height","overflow","value","appendChild","execCommand","parentNode","removeChild","toast","printTexts","printElements","printParent","span","print","printElement","preventDefault","width","reverse","currentBreakpoint","breakpoint","HeaderController","floatingHeaderElement","headerElement","menuButton","closeMenuButton","flyoutBackground","init","menuButtons","app","toggleMenu","closeMenu","toggle","previousScroll","clientHeight","PolyfillController","polyfills","loaded","loadPolyfills","Promise","all","intersectionObserver","fetch","abortController","proxy","closest","before","customEvent","NodeList","prototype","AbortController","Element","matches","msMatchesSelector","webkitMatchesSelector","s","nodeType","arr","item","hasOwnProperty","defineProperty","configurable","enumerable","writable","argArr","slice","call","arguments","docFrag","createDocumentFragment","argItem","isNode","Node","createTextNode","String","insertBefore","CharacterData","DocumentType","Event","CustomEvent","event","params","bubbles","cancelable","detail","evt","createEvent","initCustomEvent","removeClass","log","menu","backToTop","changeFontSize","careFilters","vacancies","tabNav","topTabs","searchFilters","read","werkenBijVideo","tabbedContent","workerTabs","homeWidget","serviceMap","faq","contactFloaty","updates","hasClass","showButton","on","reCaptcha","toggleClass","animate","offset","each","index","element","grecaptcha","execute","val","level","addClass","filterEl","filterOverview","activeFilters","data","hide","tag","show","change","submit","currentTarget","vacanciesFilters","vacanciesOverview","unbind","link","name","filters","checkedInput","attr","encodeURIComponent","get","replaceWith","find","vacanciesMasonryInit","history","HistoryLibrary","createBrowserHistory","vacanciesItems","usedFilters","resultEl","append","prepend","vacanciesMas","frm","parseInt","split","newItems","nextAll","updateGrid","slimmageTools","reload","masonry","tabHash","parent","liIndex","urlHash","activeTab","substring","tabId","sectionId","isActive","siblings","children","url","open","locations","map","google","maps","Map","getElementById","zoom","center","LatLng","mapTypeId","MapTypeId","ROADMAP","infowindow","InfoWindow","marker","Marker","icon","zIndex","addListener","setContent","next","close","point","masonryInit","columnWidth","itemSelector","percentPosition","overview","firstStep","firstStepMarker","newStep","steps","clickInStep","doneStep","requestAnimationFrame","mozRequestAnimationFrame","webkitRequestAnimationFrame","msRequestAnimationFrame","f","checkIfShow","scrolltop","formHolderRowOffset","outerHeight","cr","videoPlaying","checkPlaying","toggleMute","vid","ontimeupdate","videoEl","muted","w","apply","beginWebPTest","_testingWebP","WebP","Image","onload","onerror","src","setAttr","elem","className","tabIndex","useMap","is_blank","v","hyphenProp","getComputedStyle","getPropertyValue","currentStyle","b","c","toUpperCase","parseFloat","temp","visibility","cssFloat","pixels","offsetWidth","nodesToArray","nodeList","array","visitor","mutator","injector","m","exec","q","qr","newq","elementWidth","previousSrc","previousPixelWidth","previousElement","devicePixelRatio","high_density","low_density","idealWidth","ceil","finalWidth","u","newSrc","_","d","k","p","isNaN","toFixed","ratio","maxwidth","h","maxheight","img","cssMaxWidth","result","imageWidth","removeAttribute","delay","il","j","jl","kl","timeoutid","webp_waiting","stopwatch","Date","getTime","newImages","n","getElementsByTagName","ns","div","contents","textContent","ai","attributes","specified","childImages","ci","totalImages","images","image","clientWidth","changed","readyCalled","removeEventListener","attachEvent","slimmage","verbose","tryWebP","maxWidth","widthStep","jpegQuality","jpegRetinaQuality","webpTimeout","ConsentController","polyfillController","headerController","ShareController"],"sourceRoot":""}