{"version":3,"file":"static/js/application.async.non-landing~b04cfc1b.1d55101d.chunk.js","mappings":"4QACA,SAGA,cAGA,QACA,oBAGA,YACA,IACA,KACA,YAUA,OANA,mCAGA,OAGA,SACA,CAyDA,OArDA,MAGA,MAGA,oBACA,UACA,2BAA0C,qBAE1C,EAGA,gBACA,iDACA,4CAAwD,iBAExD,sCAAiD,UACjD,EAOA,kBAEA,GADA,cACA,aACA,sDACA,0BAGA,GAFA,OACA,mCAAyC,wBACzC,2DAAgH,WAAmB,EAAGA,KAAK,KAAK,IAChJ,QACA,EAGA,gBACA,sBACA,WAA2B,gBAA0B,EACrD,WAAiC,QAAe,EAEhD,OADA,aACA,CACA,EAGA,kBAAsD,gDAA+D,EAGrH,OAIA,W,CAAA,mBClFAC,EAAOC,QAAP,gBAAAD,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,wBAAAA,EAAA,KAAAA,EAAA,6BAAAA,EAAA,4LAAAA,EAAA,kFCiHO,YAAqF,IAAD,IAA5DE,QAAAA,OAA4D,MAAlD,GAAkD,EAA9CC,EAA8C,EAA9CA,WAAYC,EAAkC,EAAlCA,iBAAoBC,EAAc,uDAAPC,EAAAA,QAAO,EAnD3F,SAAgCJ,GAC9B,IAAMK,EAAqB,CAAC,EACtBC,EAAgB,CAAC,EACjBC,EAAsB,CAAC,EAqB7B,OApBAC,EAAAA,QAAEC,KAAKT,GAAS,gBAAGU,EAAH,EAAGA,OAAH,OAAgBA,GAAO,SAACC,EAAMC,GAC5CN,EAAcK,GAAQC,EACtBP,EAAmBM,GAAQD,EACvBF,EAAAA,QAAEK,QAAQH,EAAOI,oBACnBP,EAAoBI,GAAQD,EAAOI,iBAEtC,GANe,IAYhBN,EAAAA,QAAEC,KAAKF,GAAqB,SAACO,EAAkBH,GAC7CH,EAAAA,QAAEC,KAAKK,GAAkB,SAACC,GACpBP,EAAAA,QAAEQ,IAAIV,EAAeS,IACvBT,EAAcK,GAAMM,KAAKF,EAE5B,GACF,IAEM,CACLV,mBAAAA,EACAC,cAAAA,EAEH,CAwB+CY,CAAuBlB,GAA7DK,EADiF,EACjFA,mBAAoBC,EAD6D,EAC7DA,cAKxBL,GAAcO,EAAAA,QAAEW,WAAWlB,EAAWmB,gBACxCnB,EAAWmB,cAAcd,GAE3B,IAAMe,EAlER,SAAoCf,GAClC,IAAMgB,EAnCR,SAAkBC,GAChB,IAAMC,EAAc,CAAC,EACfC,EAAc,CAAC,EACfC,EAAalB,EAAAA,QAAEmB,KAAKJ,GACpBD,EAAa,GAEnB,KAAOI,EAAWE,OAAS,GAAG,CAE5BC,EADiBH,EAAWI,MACZP,EAAOC,EAAaC,EAAaH,EAClD,CAED,OAAOA,CACR,CAuBoBS,CArBrB,SAA0BC,GACxB,IAAMT,EAAQ,CAAC,EAYf,OAVAf,EAAAA,QAAEwB,IAAIxB,EAAAA,QAAEyB,KAAKzB,EAAAA,QAAE0B,QAAQ1B,EAAAA,QAAE2B,OAAOH,MAAQ,SAACI,GACvCb,EAAMa,GAAO,EACd,IAED5B,EAAAA,QAAEC,KAAKuB,GAAK,SAACpB,EAAMD,GACjBH,EAAAA,QAAEC,KAAKG,GAAM,SAACwB,GACZb,EAAMa,GAAKnB,KAAKN,EACjB,GACF,IAEMY,CACR,CAO6Bc,EALTL,EAKsC1B,EAJlD,UAAEgC,UAAUN,GAAK,SAAApB,GAAI,OAAIJ,EAAAA,QAAE+B,QAAQ3B,EAAM,WAAY,SAAU,aAA1C,OAD9B,IAAqBoB,EAOnB,OAAOV,EAAWkB,OAAOhC,EAAAA,QAAEiC,WAAWjC,EAAAA,QAAEmB,KAAKrB,GAAgBgB,GAC9D,CA8DqBoB,CAA2BpC,GAE3CqC,EAAcxC,EAAKyC,QAAQ,CAAEC,OAAO,IAMxC,OAJArC,EAAAA,QAAEC,KAAKY,GAAa,SAACyB,GACnBH,EAAcA,EAAYI,IAAI1C,EAAmByC,GAClD,IAEMH,EAAYK,OAtCrB,SAAqC/C,EAAYD,EAASE,GAkBxD,OAjBAD,EAAWD,QAAU,CAAC,EAEtBQ,EAAAA,QAAEC,KAAKT,GAAS,YAAyB,IAAtBU,EAAqB,EAArBA,OAAQuC,EAAa,EAAbA,OACrBA,GACFvC,GAAO,SAACC,GACO,oBAATA,EACFV,EAAWD,QAAQkD,eAAiBD,EAEpChD,EAAWD,QAAQW,GAAQsC,CAE9B,GAEJ,KAGD,IAAAE,OAAMlD,EAAYC,GAEXD,CACR,CAmB2BmD,CAA4BnD,EAAYD,EAASE,GAC5E,EAlID,eACA,YAEA,4DAEA,SAAS2B,EAAMwB,EAAM9B,EAAOC,EAAaC,EAAaH,GACpD,IAAIE,EAAY6B,GAAhB,CAIA,GAAI5B,EAAY4B,GACd,MAAM,IAAIC,MAAJ,+CAAkDD,IAG1D5B,EAAY4B,IAAQ,EACpB7C,EAAAA,QAAEC,KAAKc,EAAM8B,IAAO,SAAAjB,GAAG,OAAIP,EAAMO,EAAKb,EAAOC,EAAaC,EAAaH,EAAhD,IACvBG,EAAY4B,IAAQ,EACpB7B,EAAY6B,IAAQ,EACpB/B,EAAWiC,QAAQF,EAVlB,CAWF,CA+GA,qB,mFFlID,SAGA,cAGA,QACA,oBAGA,YACA,IACA,KACA,YAUA,OANA,mCAGA,OAGA,SACA,CAyDA,OArDA,MAGA,MAGA,oBACA,UACA,2BAA0C,qBAE1C,EAGA,gBACA,iDACA,4CAAwD,iBAExD,sCAAiD,UACjD,EAOA,kBAEA,GADA,cACA,aACA,sDACA,0BAGA,GAFA,OACA,mCAAyC,wBACzC,2DAAgH,WAAmB,EAAGxD,KAAK,KAAK,IAChJ,QACA,EAGA,gBACA,sBACA,WAA2B,gBAA0B,EACrD,WAAiC,QAAe,EAEhD,OADA,aACA,CACA,EAGA,kBAAsD,gDAA+D,EAGrH,OAIA,U,CAAA,gNGlFA,qHCMO,gBAAsB,CAC3B2D,gDAAiDC,sBACjDC,+DAAgED,gCAChEE,8EAA+EF,uEAC/EG,+DAAgEH,qBAChEI,iEAAkEJ,mBAClEK,wEAAyEL,+EACzEM,gFAAiFN,mGACjFO,iEAAkEP,oBAClEQ,wEAAyER,8GACzES,oEAAqET,6FACrEU,wDAAyDV,QACzDW,0DAA2DX,UAC3DY,kCAAmCZ,mBACnCa,wCAAyCb,qKACzCc,sCAAuCd,wBACvCe,sCAAuCf,oDACvCgB,sCAAuChB,uDACvCiB,oCAAqCjB,oDACrCkB,qCAAsClB,aACtCmB,mBAAoBnB,SApBf,wB,wIJLP,SAGA,cAGA,QACA,oBAGA,YACA,IACA,KACA,YAUA,OANA,mCAGA,OAGA,SACA,CAyDA,OArDA,MAGA,MAGA,oBACA,UACA,2BAA0C,qBAE1C,EAGA,gBACA,iDACA,4CAAwD,iBAExD,sCAAiD,UACjD,EAOA,kBAEA,GADA,cACA,aACA,sDACA,0BAGA,GAFA,OACA,mCAAyC,wBACzC,2DAAgH,WAAmB,EAAG5D,KAAK,KAAK,IAChJ,QACA,EAGA,gBACA,sBACA,WAA2B,gBAA0B,EACrD,WAAiC,QAAe,EAEhD,OADA,aACA,CACA,EAGA,kBAAsD,gDAA+D,EAGrH,OAIA,U,CAAA,6GKlFA,aACA,YACA,YACA,QAEA,uSAAAgF,EAAA,EAAAA,EAAA,iBAAAA,IAAA,uBAAAA,GAAA,UAAAA,GAAA,GAAAA,EAAA,4XAEO,IAAMC,EAAgB,iBAF7B,MAGKC,eACAC,EAAAA,qBACAC,EAAAA,SACAC,EAAAA,SACAC,EAAAA,cAAqBC,sBACrBD,EAAAA,cAAqBE,6BACrBF,EAAAA,cAAqBG,iCAPnB,wCCPPxF,EAAOC,QAAP,gBAAAD,EAAA,GAAAA,EAAA,wBAAAA,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,uBAAAA,EAAA,KAAAA,EAAA,2BAAAA,EAAA,+QCEA,kHCIO,gBAAsB,CAC3B,YAAa2D,YACb,oBAAqBA,oBACrB,mBAAoBA,mBACpB,yBAA0BA,yBAC1B,6BAA8BA,6BAC9B,uBAAwBA,uBACxB,qCAAsCA,qCACtC,gBAAiBA,gBACjB,wBAAyBA,wBACzB,4CAA6CA,4CAC7C,oBAAqBA,oBACrB8B,OAAQ9B,SACR,oCAAqCA,oCACrC+B,8CAA+C/B,2SAC/CgC,uCAAwChC,sDACxCiC,yCAA0CjC,sDAC1CkC,uCAAwClC,iEACxCmC,0CAA2CnC,oCAC3CoC,mCAAoCpC,4BACpCqC,qCAAsCrC,8BACtCsC,2CAA4CtC,8HArBvC,qB,oPRLP,SAGA,cAGA,QACA,oBAGA,YACA,IACA,KACA,YAUA,OANA,mCAGA,OAGA,SACA,CAyDA,OArDA,MAGA,MAGA,oBACA,UACA,2BAA0C,qBAE1C,EAGA,gBACA,iDACA,4CAAwD,iBAExD,sCAAiD,UACjD,EAOA,kBAEA,GADA,cACA,aACA,sDACA,0BAGA,GAFA,OACA,mCAAyC,wBACzC,2DAAgH,WAAmB,EAAG5D,KAAK,KAAK,IAChJ,QACA,EAGA,gBACA,sBACA,WAA2B,gBAA0B,EACrD,WAAiC,QAAe,EAEhD,OADA,aACA,CACA,EAGA,kBAAsD,gDAA+D,EAGrH,OAIA,W,CAAA,kBSlFAC,EAAOC,QAAP,eAAAD,EAAA,GAAAA,EAAA,wBAAAA,EAAA,KAAAA,EAAA,6BAAAA,EAAA,8XCCA,SACA,kHCFA,MAaA,8bAbA,OACA,UACA,UACA,WACA,SACA,QACA,QACA,QACA,OACA,WACA,QAEA,SACA,4LAEA,MAAsCkG,EAAAA,UAA9BC,EAAF,EAAEA,aAAcC,EAAAA,EAAAA,YAsBTC,EAAe,YAAC,IAC3BC,EAkBI,EAlBJA,KACAC,EAiBI,EAjBJA,UACAC,EAgBI,EAhBJA,iBACAC,EAeI,EAfJA,eACAC,EAcI,EAdJA,YACAC,EAaI,EAbJA,oBACAC,EAYI,EAZJA,eACAC,EAWI,EAXJA,qBACAC,EAUI,EAVJA,eACAC,EASI,EATJA,kBACAC,EAQI,EARJA,gBACAC,EAOI,EAPJA,aACAC,EAMI,EANJA,kBACAC,EAKI,EALJA,cACAC,EAII,EAJJA,sBACAC,EAGI,EAHJA,wBACAC,EAEI,EAFJA,kBACAC,EACI,EADJA,yBAEMC,GAAa,IAAAC,UAAQ,kBAAM,IAAAC,iBAAgBpB,EAAMqB,EAAAA,QAApC,GAA8D,CAACrB,IAC5EsB,GAAa,IAAAH,UAAQ,kBAAM/G,EAAAA,QAAEmH,SAASlB,IAAwBA,EAAsB,CAAvE,GAA0E,CAACA,IACxFmB,GAAiC,IAAAL,UAAQ,kBAAM,IAAAM,2BAA0B,CAAEvB,iBAAAA,EAAkBE,YAAaC,GAAzE,GAAiG,CAACH,EAAkBG,IACrJqB,GAAa,IAAAP,UAAQ,kBAAM,IAAAQ,eAAc,CAAExB,eAAAA,EAAgBqB,+BAAAA,GAA9C,GAAiF,CAACA,EAAgCrB,IAE/HyB,EAAc,CAClBrH,KAAM,YACNsH,WAAY,CACVzB,YAAa,CACX0B,KAAM,SACNC,SAAUT,EACVU,cAAeC,EAAAA,sBACfC,QAASR,EAAWQ,QACpBC,QAAST,EAAWS,QACpBnC,KAAMkB,KAKNkB,GAAa,IAAAC,cAAaC,SAAAA,GAC9B9B,EAAe,CACb+B,OAAQD,EAAKE,KAAKpC,YAClBqC,QAASH,EAAKG,SAEjB,GAAE,CAACjC,IAuBEkC,EAAgB1C,EAAK2C,UAAUtF,cAAsBoD,EAAiB,WAAOT,EAAK2C,UAAUtF,eAAwB,IACpHuF,EAAoC,EAAAC,aAAaC,+BAA+B,CACpFC,QAAS,CAAEC,gBAAiB,CAAEC,QAAS7I,EAAAA,QAAE8I,KAAKlC,GAAmBmC,SAAAA,GAAQ,OAAIA,IAAatD,EAAauD,GAAhEhJ,KAAwE0F,EAAYuD,KAC3HC,UAAWrC,IAGPsC,KAAiCnD,GAAeA,EAAYqC,SAAWrC,EAAYmC,QAEzF,OACE,+BAAKiB,GAAG,sBAAsBvD,UAAWA,GACvC,wBAAC,EAAAwD,UAAD,CAAWC,MAAOhB,EAAec,GAAG,YAAYG,YAAY,aAAW,CAAE,qBAAsBrC,IAAeT,cAAeA,GAC3H,wBAAC,EAAA+C,2BAAD,CACEC,IAAG,UAAK1D,EAAe2D,IAApB,cAA6B3D,EAAe4D,KAC/CpD,aAAcA,EACdC,kBAAmBA,EACnBoD,gBAAiB,CACfC,MAAO,cACPzB,KAAM,CAAEpC,YAAaA,EAAcA,EAAYmC,OAAS,MACxD2B,OAAQtC,EACR5B,KAAMkB,EACNiD,eAzCaC,SAAAA,GAAM,OAAIhK,EAAAA,QAAEwB,IACjCwI,GACA,SAACC,EAAUR,GAAX,OAAmBnD,EAAgBmD,IAAQQ,CAFZjK,GAAjC,EA0CUgI,WAAAA,MAILd,GACC,wBAAC,EAAAgD,gBAAD,CAAiBrE,UAAU,gCACzB,wBAAC,EAAAsE,cAAD,CACEC,MAAO,CAAEjC,OAAQ,iCAAIvC,EAAKyE,eAAe/C,EAAWQ,QAASvB,KAC7D+D,SAAU1E,EAAK2C,UAAUtF,gJAIT,OAArB6C,IAA8B9F,EAAAA,QAAEuK,QAAQhE,IAjDvB,WACpB,IAAMiE,GAAkB,IAAAC,6BAA4B,CAClD7E,KAAAA,EAAM8E,KAAM5E,EAAkBE,YAAAA,EAAaO,aAAAA,IAE7C,OACE,wBAAC,EAAA8C,UAAD,CAAWD,GAAG,kBAAkB3C,cAAeA,GAC7C,+BAAKZ,UAAU,OACZD,EAAK2C,UAAUtF,QAAc,IAAEuH,EAAgBG,aAElD,+BAAK9E,UAAU,YACZD,EAAK2C,UAAUtF,oBAA0B,IAAEuH,EAAgBI,kBAInE,CAmC6DC,GAC1D,wBAAC,EAAAxB,UAAD,CACED,GAAG,gBACHE,MAAK,UAAK1D,EAAK2C,UAAUtF,uBAApB,YAAoD2C,EAAK2C,UAAUtF,kBACxEwD,cAAeA,EACfqE,eAAe,2CAEdpE,GACD,mCACGd,EAAK2C,UAAUtF,kCAElB,wBAAC,EAAA8H,OAAD,CACE3B,GAAG,uBACH4B,QAAS9E,EACT+E,SAAUC,SAAAA,GAAK,OAAI/E,EAAqB+E,EAAMC,OAAOH,QAHvD,EAIEI,UAAWjC,IAEZzC,GACD,gCAAMb,UAAU,uBACbK,EACGN,EAAK2C,UAAUtF,MACf2C,EAAK2C,UAAUtF,QAEpBkG,GAA+BjD,GAC9B,+BAAKL,UAAU,6BACZD,EAAK2C,UAAUtF,iWAIrB0D,GACD,wBAAC,EAAAuD,gBAAD,KACE,wBAAC,EAAAC,cAAD,CACEC,MAAO,CAAEiB,EAAGC,SAAAA,GAAI,OAAK,iCAAIA,EAAJ,GACrBhB,SAAU1E,EAAK2C,UAAUtF,0LAG5BuF,GACD,+BAAKY,GAAG,qCACN,wBAAC,EAAAc,gBAAD,KACE,wBAAC,EAAAC,cAAD,CACEC,MAAO,CACLmB,aAAc,6BAAGC,KAAMhG,EAAAA,UAAUiG,yBAA0BN,OAAO,SAASO,IAAI,uBAAuB9F,EAAK2C,UAAUtF,qBAEvHqH,SAAU1E,EAAK2C,UAAUtF,uMAMpC,EArJM,iBAuJP0C,EAAagG,UAAY,CACvB/F,KAAM,UAAUgG,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,KAAK5E,WAC1B6E,aAAcF,EAAAA,QAAUC,KAAK5E,WAC7BmD,eAAgBwB,EAAAA,QAAUC,KAAK5E,aAC9BA,WACHrB,UAAWgG,EAAAA,QAAUG,OACrB3F,kBAAmBwF,EAAAA,QAAUI,KAC7BnG,iBAAkB+F,EAAAA,QAAUK,OAC5BlG,YAAa,UAAU4F,MAAM,CAC3BvD,QAASwD,EAAAA,QAAUI,KACnB9D,OAAQ0D,EAAAA,QAAUM,UAAU,CAACN,EAAAA,QAAUK,OAAQL,EAAAA,QAAUG,WAE3D/F,oBAAqB4F,EAAAA,QAAUK,OAC/BhG,eAAgB2F,EAAAA,QAAUI,KAC1B7F,eAAgByF,EAAAA,QAAUC,KAC1B3F,qBAAsB0F,EAAAA,QAAUC,KAChC/F,eAAgB,UAAU6F,MAAM,CAC9BlC,IAAKmC,EAAAA,QAAUK,OACfvC,IAAKkC,EAAAA,QAAUK,SAEjB3F,aAAcsF,EAAAA,QAAUG,OACxB1F,gBAAiB,UAAUsF,MAAM,CAC/BlE,KAAMmE,EAAAA,QAAUG,OAChBpE,cAAeiE,EAAAA,QAAUG,OACzBI,MAAOP,EAAAA,QAAUG,SAEnBxF,kBAAmBqF,EAAAA,QAAUM,UAAU,CAACN,EAAAA,QAAUQ,YAAaR,EAAAA,QAAUS,SACzE7F,cAAeoF,EAAAA,QAAUG,OACzBtF,sBAAuBmF,EAAAA,QAAUI,KACjCtF,wBAAyBkF,EAAAA,QAAUI,KACnCrF,kBAAmBiF,EAAAA,QAAUU,QAAQV,EAAAA,QAAUG,QAC/CnF,yBAA0B,UAAU+E,MAAM,CACxCY,aAAcX,EAAAA,QAAUM,UAAU,CAACN,EAAAA,QAAUG,OAAQH,EAAAA,QAAUS,SAC/DG,yBAA0BZ,EAAAA,QAAUI,QAGxCtG,EAAa+G,aAAe,CAC1B7G,UAAW,GACXQ,mBAAmB,EACnBP,iBAAkB,KAClBS,aAAc,GACdE,cAAe,WACfD,kBAAmB,KACnBF,gBAAiB,CAAC,EAClBN,YAAa,CACXmC,OAAQ,KACRE,SAAS,GAEXpC,oBAAqB,EACrBC,gBAAgB,EAChBE,eAAgBpG,EAAAA,QAAE2M,KAClBxG,qBAAsBnG,EAAAA,QAAE2M,KACxB5G,eAAgB,CACd2D,IAAK,EACLC,IAAK,MAEPjD,uBAAuB,EACvBC,yBAAyB,EACzBC,kBAAmB,GACnBC,yBAA0B,CACxB2F,aAAc,KACdC,0BAA0B,GAzB9B9G,EAAAA,IAAAA,SAAAA,EAAAA,GCjOArG,EAAOC,QAAP,gBAAAD,EAAA,gLCCA,EDDA,GCCA,EDDA,OCCA,kCAEO,8BAAoC,YAAC,IAC1CsG,EACI,EADJA,KAAM8E,EACF,EADEA,KAAM1E,EACR,EADQA,YAAaO,EACrB,EADqBA,aAEzB,GAAIvG,EAAAA,QAAEuK,QAAQhE,GACZ,MAAO,CAAC,EAEV,IAAMqG,EAAgB5G,GAAeA,EAAYqC,QAAUzC,EAAKmG,aAAac,OAAO7G,EAAYmC,SAAW,EACrG2E,EAAmB,EAAAC,SAASC,iBAAiB,CAAEJ,cAAAA,EAAe9G,iBAAkB4E,EAAMuC,eAAgB,IAO5G,MALwB,CACtBtC,YAAY,GAAD,OAAK/E,EAAKyE,eAAeyC,EAAiBI,WAAa,EAAG3G,IACrEqE,iBAAiB,GAAD,OAAKhF,EAAKyE,eAAeyC,EAAiBK,eAAiB,EAAG5G,IAIjF,EAEM,wBAA8B,EAE9B,4BAAkC,YAAC,IAGT4B,EAF/BrC,EACI,EADJA,iBAAkBE,EACd,EADcA,YASZoH,EAAa,WACjB,IAAKpN,EAAAA,QAAEmH,SAASrB,KAAsB9F,EAAAA,QAAEmH,SAASnB,IAAgBA,EAAc,EAC7E,OAAOA,EAGT,IAAMqH,EAAgBC,KAAK3D,IAAI,EAAG7D,GAClC,OAAOE,GAAe,EAAIqH,EAC3B,CAPkB,GASnB,OAhB+BlF,EAgBFiF,EAfvBpN,EAAAA,QAAEmH,SAASgB,GACNoF,WAAWpF,EAAOqF,QAPM,IAS1BrF,CAaV,EAEM,gBAAsB,YAAC,IAC5BpC,EACI,EADJA,eAAgBqB,EACZ,EADYA,+BAEVF,EAAalH,EAAAA,QAAEmH,SAASC,IAAmCA,EAAiC,EAC9FU,EAAU/B,GAAkBA,EAAe2D,IAAM3D,EAAe2D,IAAM,EACpE3B,EAAUhC,GAAkBA,EAAe4D,IAAM5D,EAAe4D,SAAM8D,EAS5E,OAPIvG,IACFY,EAAUwF,KAAK3D,IAAI7B,EAASV,GACxBpH,EAAAA,QAAEmH,SAASY,IAAYD,EAAUC,IACnCD,EAAUC,IAIP,CAAED,QAAAA,EAASC,QAAAA,EACnB,CAfM,wHC5CP,cACA,UACA,SACA,4DAEA,IAAM2F,EAAoBC,SAAAA,GAAK,OAC7B,+BAAK9H,UAAU,eACb,wBAAC,EAAA+H,UAAD,CACE3C,SAAU0C,EAAM1C,SAChB4C,MAAOF,EAAME,QAEf,gCAAMhI,UAAU,uBAAuB8H,EAAMnH,mBAAqBmH,EAAMpH,cAN5E,EAUaiD,GAA6B,IAAAsE,YAAU,IAAAC,gBAAeL,IAA5D,+BAEPA,EAAkB/B,UAAY,CAC5BV,SAAUY,EAAAA,QAAUC,KAAK5E,WACzB2G,MAAOhC,EAAAA,QAAUG,OAAO9E,WACxBX,aAAcsF,EAAAA,QAAUG,OAAO9E,WAC/BV,kBAAmBqF,EAAAA,QAAUhJ,MAE/B6K,EAAkBhB,aAAe,CAC/BlG,kBAAmB,KADrBkH,EAAAA,IAAAA,SAAAA,EAAAA,GCvBApO,EAAOC,QAAP,gBAAAD,EAAA,GAAAA,EAAA,wBAAAA,EAAA,0FCAO,gBAAsB,CAC3B0O,6BAA8B/K,sCAC9BgL,gCAAiChL,qBACjCiL,mCAAoCjL,yBACpCkL,4BAA6BlL,uCAC7BmL,4BAA6BnL,wCAC7BoL,gCAAiCpL,+CACjCqL,kCAAmCrL,+BACnCsL,wCAAyCtL,gCACzCuL,eAAgBvL,YAChBwL,qBAAsBxL,mBACtByL,wBAAyBzL,sBACzB0L,UAAW1L,OACX2L,SAAU3L,KACV4L,UAAW5L,MACX6L,kBAAmB7L,gBACnB8L,wBAAyB9L,aACzB+L,sBAAuB/L,sLACvBgM,wEAAyEhM,kMACzEiM,yCAA0CjM,kBAC1CkM,+BAAgClM,8VAChCmM,6BAA8BnM,4IArBzB,mHCIA,wBAA8B,WAAH,MAAU,CAC1C,sCAAuC,CACrCoM,QAAS,eACTC,WAAY,QAGd,kCAAmC,CACjCC,UAAW,GAGb,uBAAwB,CACtBC,aAAc,OAGhB,yBAA0B,CACxBC,cAAe,MACfH,WAAY,QAGd,2BAA4B,CAC1BI,MAtBe,WAyBjB,uCAAwC,CACtCH,UAAW,IAGb,+CAAgD,CAC9CI,QAAS,MACTD,MAAO,UACPJ,WAAY,GA9BqB,CAA9B,mBCJPhQ,EAAOC,QAAP,cAAAD,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,sBAAAA,EAAA,GAAAA,EAAA,sBAAAA,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,sBAAAA,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,8B,mFlBCA,SAGA,cAGA,QACA,oBAGA,YACA,IACA,KACA,YAUA,OANA,mCAGA,OAGA,SACA,CAyDA,OArDA,MAGA,MAGA,oBACA,UACA,2BAA0C,qBAE1C,EAGA,gBACA,iDACA,4CAAwD,iBAExD,sCAAiD,UACjD,EAOA,kBAEA,GADA,cACA,aACA,sDACA,0BAGA,GAFA,OACA,mCAAyC,wBACzC,2DAAgH,WAAmB,EAAGD,KAAK,KAAK,IAChJ,QACA,EAGA,gBACA,sBACA,WAA2B,gBAA0B,EACrD,WAAiC,QAAe,EAEhD,OADA,aACA,CACA,EAGA,kBAAsD,gDAA+D,EAGrH,OAIA,W,CAAA,mNmBlFA,uHCMO,gBAAsB,CAC3BuQ,iBAAkB3M,MAMlB4M,kBAAmB5M,OAMnB6M,mBAAoB7M,SAMpB8M,iBAAkB9M,MAMlB+M,sBAAuB/M,MAMvBgN,mBAAoBhN,SAIpBiN,iBAAkBjN,MAMlBkN,iBAAkBlN,MAMlBmN,kBAAmBnN,OAMnBoN,iBAAkBpN,MAMlBqN,mBAAoBrN,SAMpBsN,sBAAuBtN,gBAMvBuN,sBAAuBvN,gBAMvBwN,iBAAkBxN,MAMlByN,qBAAsBzN,UAMtB0N,iBAAkB1N,MAMlB2N,oBAAqB3N,UAMrB4N,iBAAkB5N,MAMlB6N,kBAAmB7N,OAMnB8N,kBAAmB9N,UAMnB+N,iBAAkB/N,MAMlBgO,kBAAmBhO,YAMnBiO,iBAAkBjO,MAMlBkO,iBAAkBlO,MAMlBmO,iBAAkBnO,MAMlBoO,iBAAkBpO,MAMlBqO,sBAAuBrO,eAMvBsO,iBAAkBtO,MAMlBuO,kBAAmBvO,OAMnBwO,iBAAkBxO,MAMlByO,iBAAkBzO,MAMlB0O,iBAAkB1O,MAMlB2O,kBAAmB3O,OAMnB4O,0BAA2B5O,mGAM3B6O,iCAAkC7O,qGAMlC8O,iBAAkB9O,6BAMlB+O,qCAAsC/O,6BAMtCgP,mCAAoChP,iDAMpCiP,mCAAoCjP,0BAMpCkP,mCAAoClP,0BAMpCmP,iBAAkBnP,SAMlBoP,gBAAiBpP,KAMjBqP,iBAAkBrP,MAMlBsP,iBAAkBtP,MAMlBuP,UAAWvP,WACXwP,UAAWxP,WACXyP,qBAAsBzP,WACtB0P,eAAgB1P,aAChB2P,4BAA6B3P,2BAC7B4P,eAAgB5P,aAChB6P,mCAAoC7P,oCACpC8P,wCAAyC9P,0CACzC+P,gDAAiD/P,mDACjDgQ,+CAAgDhQ,oDAChDiQ,qDAAsDjQ,0DACtDkQ,gCAAiClQ,kCACjCmQ,mCAAoCnQ,0BACpCoQ,uCAAwCpQ,sGACxCqQ,0BAA2BrQ,gSAC3BsQ,kDAAmDtQ,MACnDuQ,kDAAmDvQ,KACnDwQ,sEAAuExQ,oSACvEyQ,sEAAuEzQ,4SACvE0Q,uCAAwC1Q,kDACxC2Q,gCAAiC3Q,0CACjC4Q,0BAA2B5Q,6DAM3B6Q,mCAAoC7Q,0EAMpC8Q,6BAA8B9Q,wDAM9B+Q,qDAAsD/Q,6GAMtDgR,yCAA0ChR,gGAM1CiR,0CAA2CjR,+GAM3CkR,yCAA0ClR,2CAM1CmR,yCAA0CnR,4GAM1CoR,iDAAkDpR,wHAMlDqR,0CAA2CrR,+FAM3CsR,6CAA8CtR,kGAM9CuR,4CAA6CvR,2HAM7CwR,0CAA2CxR,+FAM3CyR,0CAA2CzR,qGAM3C0R,0CAA2C1R,6FAM3C2R,2CAA4C3R,8FAM5C4R,gDAAiD5R,2FAMjD6R,0CAA2C7R,6FAM3C8R,2CAA4C9R,qJAM5C+R,wCAAyC/R,mHAMzCgS,8CAA+ChS,6GAM/CiS,uCAAwCjS,0FAMxCkS,wCAAyClS,6GAMzCmS,2CAA4CnS,sHAM5CoS,6CAA8CpS,mGAM9CqS,uCAAwCrS,6GAMxCsS,4CAA6CtS,oFAM7CuS,6CAA8CvS,2FAM9CwS,8CAA+CxS,iHAM/CyS,wCAAyCzS,8EAMzC0S,qCAAsC1S,yGAMtC2S,6BAA8B3S,+DAM9B4S,8BAA+B5S,gEAM/B6S,2BAA4B7S,0CAM5B8S,0BAA2B9S,kFAM3B+S,6BAA8B/S,yDAM9BgT,4BAA6BhT,2EAM7BiT,6BAA8BjT,sEAC9BkT,uDAAwDlT,gHAMxDmT,+DAAgEnT,oCAMhEoT,uDAAwDpT,6CAMxDqT,iBAAkBrT,kCAMlBsT,gCAAiCtT,qDAMjCuT,yCAA0CvT,wDAM1CwT,yBAA0BxT,eAC1ByT,iDAAkDzT,0FAClD0T,0CAA2C1T,4EAM3C2T,8BAA+B3T,0BAI/B4T,qCAAsC5T,iDACtC6T,wCAAyC7T,mCACzC8T,oCAAqC9T,2BACrC+T,mCAAoC/T,2BACpCgU,qCAAsChU,2BACtCiU,oCAAqCjU,2BACrCkU,mCAAoClU,+BACpCmU,kCAAmCnU,2BACnCoU,wCAAyCpU,+BACzCqU,wCAAyCrU,2BACzCsU,qCAAsCtU,6CACtCuU,qCAAsCvU,2BACtCwU,oCAAqCxU,iCACrCyU,oCAAqCzU,2BACrC0U,0CAA2C1U,2BAC3C2U,0CAA2C3U,2BAC3C4U,yCAA0C5U,2BAC1C6U,wCAAyC7U,mCACzC8U,sCAAuC9U,2BACvC+U,qCAAsC/U,qCACtCgV,kDAAmDhV,+EACnDiV,wCAAyCjV,2BACzCkV,uCAAwClV,2BACxCmV,qCAAsCnV,2BACtCoV,wCAAyCpV,2BACzCqV,oCAAqCrV,2BACrCsV,mCAAoCtV,2BACpCuV,sCAAuCvV,2BACvCwV,uCAAwCxV,2BACxCyV,sCAAuCzV,2BACvC0V,+BAAgC1V,oBAChC2V,+BAAgC3V,mBAChC4V,4BAA6B5V,iBAC7B6V,4BAA6B7V,iBAC7B8V,oBAAqB9V,OACrB+V,+BAAgC/V,oBAChCgW,qBAAsBhW,QACtBiW,wBAAyBjW,WACzBkW,uBAAwBlW,WACxBmW,0BAA2BnW,cAC3BoW,+BAAgCpW,qBAChCqW,wCAAyCrW,sBACzCsW,iCAAkCtW,sBAClCuW,+CAAgDvW,+BAChDwW,gDAAiDxW,+CACjDyW,gDAAiDzW,8CACjD0W,sCAAuC1W,eACvC2W,2BAA4B3W,8BAC5B4W,+CAAgD5W,4CAChD6W,+CAAgD7W,0CAChD8W,0BAA2B9W,gGAM3BiL,mCAAoCjL,yBACpC+W,6BAA8B/W,mDAC9BgX,qCAAsChX,sBACtCiX,4BAA6BjX,iBAC7BkX,4BAA6BlX,iBAC7BmX,gCAAiCnX,qBACjCoX,uBAAwBpX,oBACxBqX,SAAUrX,YACVsX,kBAAmBtX,sBACnBuX,cAAevX,WACfwX,wCAAyCxX,uEACzCyX,wCAAyCzX,6FACzC0X,yBAA0B1X,wBAC1B2X,uBAAwB3X,kBACxB4X,0CAA2C5X,sCAC3C6X,kCAAmC7X,+BACnC8X,kCAAmC9X,4BACnC+X,yBAA0B/X,aAI1BgY,2CAA4ChY,8EAC5CiY,6CAA8CjY,mHAC9CkY,4DAA6DlY,mEAC7DmY,2CAA4CnY,+FAC5CoY,yCAA0CpY,mHAC1CqY,0CAA2CrY,wHAC3CsY,0CAA2CtY,2FAC3CuY,2CAA4CvY,yHAC5CwY,2CAA4CxY,+DAC5CyY,kDAAmDzY,qDACnD0Y,2DAA4D1Y,mIAC5D2Y,6DAA8D3Y,kGAC9D4Y,6DAA8D5Y,qGAC9D6Y,6DAA8D7Y,gHAC9D8Y,6DAA8D9Y,4FAC9D+Y,0CAA2C/Y,2GAC3CgZ,2CAA4ChZ,iGAC5CiZ,6CAA8CjZ,oGAC9CkZ,uCAAwClZ,gGACxCmZ,yCAA0CnZ,wDAC1CoZ,wCAAyCpZ,+FACzCqZ,8CAA+CrZ,iGAC/CsZ,4CAA6CtZ,wFAC7CuZ,6CAA8CvZ,0FAC9CwZ,wCAAyCxZ,gGACzCyZ,wCAAyCzZ,oIACzC0Z,6CAA8C1Z,mHAC9C2Z,wCAAyC3Z,gGACzC4Z,2CAA4C5Z,kHAC5C6Z,0CAA2C7Z,2FAC3C8Z,2CAA4C9Z,6FAC5C+Z,6CAA8C/Z,2FAC9Cga,0CAA2Cha,oHAC3Cia,4CAA6Cja,kHAC7Cka,yCAA0Cla,qFAC1Cma,wCAAyCna,wDACzCoa,wCAAyCpa,qDACzCqa,6CAA8Cra,wFAC9Csa,uCAAwCta,qFACxCua,0CAA2Cva,sFAC3Cwa,yCAA0Cxa,qDAC1Cya,2CAA4Cza,0FAC5C0a,0CAA2C1a,8HAC3C2a,yCAA0C3a,qFAC1C4a,6BAA8B5a,qDAC9B6a,eAAgB7a,IAChB8a,uBAAwB9a,SACxB+a,sBAAuB/a,SACvBgb,sBAAuBhb,mBACvBib,iCAAkCjb,yBAClCkb,qCAAsClb,0EACtCmb,8CAA+Cnb,+EAC/Cob,4CAA6Cpb,2BAC7Cqb,kBAAmBrb,+BACnBsb,mBAAoBtb,wBACpB,0BAA2BA,0BAC3Bub,wCAAyCvb,0CACzCwb,wCAAyCxb,0CACzCyb,wCAAyCzb,8CACzC0b,yCAA0C1b,oCAC1C2b,uCAAwC3b,UACxC4b,sCAAuC5b,SACvC6b,sCAAuC7b,iBACvC8b,eAAgB9b,YAChB+b,mCAAoC/b,qBACpCgc,mCAAoChc,4BACpCqC,qCAAsCrC,8BACtCic,mDAAoDjc,8BACpDkc,kCAAmClc,uBACnCmc,+BAAgCnc,qGAChCoc,wCAAyCpc,0GACzCqc,sCAAuCrc,mBACvCsc,2CAA4Ctc,yFAC5Cuc,2CAA4Cvc,kFAC5Cwc,2CAA4Cxc,oCAC5Cyc,2CAA4Czc,6GAC5C0c,oBAAqB1c,qFACrB2c,yCAA0C3c,QAC1C4c,yCAA0C5c,UAC1C6c,yCAA0C7c,UAC1C8c,yCAA0C9c,WAC1C+c,kCAAmC/c,0DACnCgd,qCAAsChd,MACtCid,qCAAsCjd,KACtCkd,2CAA4Cld,gEAC5Cmd,2CAA4Cnd,oEAC5Cod,6BAA8Bpd,iEAC9Bqd,gCAAiCrd,MACjCsd,gCAAiCtd,KACjCud,iDAAkDvd,qEAClDwd,iDAAkDxd,4EAClDyd,sBAAuBzd,aACvB0d,wCAAyC1d,2GACzC2d,0BAA2B3d,qFAC3B4d,2CAA4C5d,oCAC5C6d,4BAA6B7d,wBAC7B8d,0BAA2B9d,gBAC3B+d,0BAA2B/d,qBAC3Bge,wBAAyBhe,aA1tBpB,wB,gPpBLP,SAGA,cAGA,QACA,oBAGA,YACA,IACA,KACA,YAUA,OANA,mCAGA,OAGA,SACA,CAyDA,OArDA,MAGA,MAGA,oBACA,UACA,2BAA0C,qBAE1C,EAGA,gBACA,iDACA,4CAAwD,iBAExD,sCAAiD,UACjD,EAOA,kBAEA,GADA,cACA,aACA,sDACA,0BAGA,GAFA,OACA,mCAAyC,wBACzC,2DAAgH,WAAmB,EAAG5D,KAAK,KAAK,IAChJ,QACA,EAGA,gBACA,sBACA,WAA2B,gBAA0B,EACrD,WAAiC,QAAe,EAEhD,OADA,aACA,CACA,EAGA,kBAAsD,gDAA+D,EAGrH,OAIA,W,CAAA,mBqBlFAC,EAAOC,QAAP,gBAAAD,EAAA,KAAAA,EAAA,6BAAAA,EAAA,oMAAAA,EAAA,2GCCA,WACA,EAaA,8bAbA,OACA,UACA,WAEA,QACA,OACA,SACA,QACA,QAEA,SACA,SACA,SACA,khBAEA,IAAQ4hB,EAAmB1b,EAAAA,UAAnB0b,eAEKC,EAAmB,YAAC,IAC/BC,EASI,EATJA,YACAC,EAQI,EARJA,UACAC,EAOI,EAPJA,iBACAC,EAMI,EANJA,YACA1b,EAKI,EALJA,UACAD,EAII,EAJJA,KACAqF,EAGI,EAHJA,SACAuW,EAEI,EAFJA,sBACAC,EACI,EADJA,WAEA,GAA4C,IAAAC,WAAS,GAArD,SAAOC,EAAD,KAAiBC,EAAjB,KACN,GAAwD,IAAAF,UAASF,GAF7D,SAEGK,EAAD,KAAuBC,EAAvB,KAEAC,EAAwBP,EAAwB,EAClDQ,EAAAA,iBAAiBC,mBACjBC,EAAAA,wBAAwBV,IAA0B,KACtD,GAAsC,IAAAE,UAASK,GAA/C,SAAOI,EAAD,KAAcC,EAAd,KACAC,GAAU,IAAAC,aAEhB,GAAwD,IAAAC,YAAUC,SAAAA,GAAM,OAAKnB,EAAY,EAAImB,EAAOC,QAAQC,KAAKrB,GAAasB,EAAAA,QAAQC,QAAQ,KAAtF,GAA8F,CAACvB,IAAzIwB,EAAR,EAAEza,KAAmC0a,EAAAA,EAATC,QAClC,GAA2C,IAAAR,YAAUC,SAAAA,GAAM,OAAI,IAAAQ,uBAAsBR,EAAQ,CAAES,WAAY3B,EAAkB4B,gBAAiB,CAAChC,EAAeiC,iBAAnH,GAAuI,CAAC7B,IAA3KlZ,KAAMgb,OAAmB,MAAG,CAAC,EAAD,EAC9BC,EAAmBR,GAAsBzB,EAEzCkC,GAAiB,IAAAvc,UAAQ,kBAAOsc,EAClC,CAAEE,QAASvjB,EAAAA,QAAEwjB,IAAIH,EAAkB,mBAAoBI,aAAczjB,EAAAA,QAAEwjB,IAAIH,EAAkB,gBAAiBK,eAAgB1jB,EAAAA,QAAEwjB,IAAIH,EAAkB,mBACtJ,IAFmB,GAEZ,CAACA,IAEZ,GAA0G,IAAAM,oBAAkBnB,SAAAA,GAAM,OAAIA,EAAOoB,uBAAuBphB,OAhCtK,oBAAA6B,EAAA,EAAAA,EAAA,iBAAAA,IAAA,uBAAAA,GAAA,UAAAA,GAAA,GAAAA,EAAA,oQAgCwI,EACpIid,iBAAAA,EAAkBD,UAAAA,EAAWE,YAAAA,GAAgB+B,GAD2D,GAEtG,CAAChC,EAAkBD,EAAWE,EAAa+B,IAF/C,IAAQlb,KAAQyb,QAAJ,MAA+B,CAAC,EAAtC,GAAUA,uBAAwCC,EAAlD,EAAyCC,QAA8CC,EAAAA,EAATjB,SAIpF,IAAAkB,YAAU,WACJb,EAAoBlC,EAAeiC,iBAAmBG,GAAkB/B,GAC1EuC,GAEH,GAAE,CAACvC,EAAauC,EAA4BR,EAAgBrY,EAAUmY,KAEvE,IAAAa,YAAU,WACJJ,IACF/B,OAAkDrU,IAA1B+T,GAAsC,IAAA0C,gCAA+BL,GAA0BrC,GAEvHI,EAAkBG,IAA0BC,EAAAA,iBAAiBC,oBAC7DG,EAAeL,GAGe,OAA1BA,GAEF9W,OAASwC,GAGd,GAAE,CAAC+T,EAAuBO,EAAuB9W,EAAU4Y,KAE5D,IAAAI,YAAU,WACJpC,GAAwBF,GAC1B1W,EAAS4W,EAEZ,GAAE,CAACF,EAAgB1W,EAAU4W,KAE9B,IAAAsC,kBAAgB,WAEV1C,GACFA,EAFqBqB,GAAYkB,EAIpC,GAAE,CAAClB,EAAUkB,EAAUvC,IAExB,IAAM2C,GAAmB,IAAAnc,cAAa4F,SAAAA,GACpCiU,EAAwBjU,EACzB,GAAE,IAEGwW,GAAmB,IAAAtd,UAAQ,WAC/B,GAAI8c,EAAwB,CAC1B,IAAMS,GAAmCtkB,EAAAA,QAAEuK,QAAQsZ,GACnD,OAAO,UAAEU,QAAQ,EACdD,GAAmC,CAAE7a,IAAKuY,EAAAA,iBAAiBwC,UAAWlZ,KAAM1F,EAAK2C,UAAUtF,0DAC5F,CAAEwG,IAAKuY,EAAAA,iBAAiBC,mBAAoB3W,KAAM1F,EAAK2C,UAAUtF,oCAA2CmI,UAAWkZ,GACvH,CACE7a,IAAK,WACL2B,UAAU,EACVqZ,cAAe,WAAF,OACX,wBAAC,EAAAC,qBAAD,CACEC,cAAed,EACfhC,qBAAsBA,EACtBF,eAAgBA,EAChByC,iBAAkBA,EAClBxe,KAAMA,GALR,GASJ,CAAE6D,IAAKuY,EAAAA,iBAAiB4C,WAAYtZ,KAAM1F,EAAK2C,UAAUtF,kBAE5D,CAED,MAAO,CACL,CACEwG,IAAKuY,EAAAA,iBAAiBwC,UACtBlZ,KAAM1F,EAAK2C,UAAUtF,cACrBwhB,cAAe,SAAC9W,EAAOkX,GAAR,OACb,mCACGA,EAAOlX,GACR,wBAAC,EAAAmX,UAAD,CACEC,MAAM,iDACN,aAAYnf,EAAK2C,UAAUtF,wBAJ/B,GASJ,CAAEwG,IAAKuY,EAAAA,iBAAiB4C,WAAYtZ,KAAM1F,EAAK2C,UAAUtF,iBAE5D,GAAE,CAAC0e,EAAgB/b,EAAMwe,EAAkBP,EAAwBhC,IAE9DmD,IAA0B,IAAA/c,cAAY,SAACgd,EAAIC,GAC/C,IAAIrX,EACJ,OAAQqX,EAAOzb,KACb,KAAKuY,EAAAA,iBAAiBC,mBACpBpU,EAAQgU,EACR,MACF,KAAKG,EAAAA,iBAAiBwC,UACpB3W,EAAQ,EACR,MACF,KAAKmU,EAAAA,iBAAiB4C,WACpB/W,EAAQ,KACR,MACF,QACEA,OAAQJ,EAEZ2U,EAAe8C,EAAOzb,KACtBmY,EAAkBsD,EAAOzb,MAAQuY,EAAAA,iBAAiBC,oBAClDhX,EAAS4C,EACV,GAAE,CAAC5C,EAAU4W,IAEd,OACE,gDACE,+BAAKhc,WAAW,aAAW,qBAAsBA,IAC/C,wBAAC,EAAAsf,MAAD,CAAO/b,GAAIgc,EAAAA,QAASzd,UAAQ,GAC1B,oCAAO/B,EAAK2C,UAAUtF,kCACtB,oCACE,wBAAC,EAAA6hB,UAAD,CACEC,MAAM,6DACN,aAAYnf,EAAK2C,UAAUtF,6CAIjC,wBAAC,EAAAoiB,YAAD,CACEC,eAAgBF,EAAAA,QAChBvf,UAAWwc,EAAQgC,iBACnBlC,YAAaA,EACboD,QAASlB,EACTpZ,SAAU+Z,MAKnB,EAzJM,qBA2JP7D,EAAiBxV,UAAY,CAC3B/F,KAAM,UAAUgG,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,KAAK5E,aACzBA,WACHka,YAAavV,EAAAA,QAAUD,MAAM,CAAC,GAC9ByV,UAAWxV,EAAAA,QAAUK,OACrBoV,iBAAkBzV,EAAAA,QAAUK,OAC5BqV,YAAa1V,EAAAA,QAAUG,OACvBnG,UAAWgG,EAAAA,QAAUG,OACrBf,SAAUY,EAAAA,QAAUC,KACpB0V,sBAAuB3V,EAAAA,QAAUK,OACjCuV,WAAY5V,EAAAA,QAAUC,MAGxBqV,EAAiBzU,aAAe,CAC9B0U,YAAa,KACbC,UAAW,KACXC,iBAAkB,KAClBC,YAAa,KACb1b,UAAW,GACXoF,SAAUjL,EAAAA,QAAE2M,KACZ6U,2BAAuB/T,EACvBgU,WAAYzhB,EAAAA,QAAE2M,KARhBwU,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,0BAAAA,EC5LA,cACA,EAEA,8bAFA,OACA,UACA,2LAEO,IAAMuD,EAAuB,YAAC,IACnCC,EAKI,EALJA,cACA9C,EAII,EAJJA,qBACAF,EAGI,EAHJA,eACAyC,EAEI,EAFJA,iBACAxe,EACI,EADJA,KAEM4f,EAAiB,CAAC,CACtB/b,KAAM,EACN6B,KAAM1F,EAAK2C,UAAUtF,gCAEjBwiB,EAAkBzlB,EAAAA,QAAEuK,QAAQoa,GAC9Ba,EACA,UAAEhkB,IAAImjB,GAAee,SAAAA,GAAY,MAAK,CACtCjc,IAAKic,EAAaC,IAClBra,KAAMoa,EAAaE,MAFc,IAK/BC,EAAgD,IAA3BJ,EAAgBrkB,OAAeqkB,EAAgB,GAAGhc,IAAM,KACnF,GAAsC,IAAAiY,UAASG,GAAwBgE,GAAvE,SAAO1D,EAAD,KAAcC,EAAd,KAEN,OACE,wBAAC,EAAA0D,SAAD,CACEC,YAAangB,EAAK2C,UAAUtF,0BAC5BsiB,QAASE,EACTra,UAAWuW,EACX1W,SAAU,SAACC,EAAOga,GAChB9C,EAAe8C,EAAOzb,KACtB2a,EAAiBc,EAAOzb,IACzB,EACD0Y,YAAaA,EACb6D,OAAQ,CAAEC,SAAU,CAAE3W,WAAY,MAGvC,EAlCM,yBAoCPoV,EAAqB/Y,UAAY,CAC/BgZ,cAAe,UAAUpY,QACvB,UAAUX,MAAM,CACd+Z,IAAK9Z,EAAAA,QAAUK,OAAOhF,WACtB0e,MAAO/Z,EAAAA,QAAUG,OAAO9E,cAE1BA,WACF2a,qBAAsBhW,EAAAA,QAAUK,OAChCyV,eAAgB9V,EAAAA,QAAUI,KAAK/E,WAC/Bkd,iBAAkBvY,EAAAA,QAAUC,KAAK5E,WACjCtB,KAAM,UAAUgG,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,KAAK5E,aACzBA,YAGLwd,EAAqBhY,aAAe,CAClCmV,qBAAsB,KADxB6C,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,QAAAA,EAAAA,wBAAAA,EAAAA,sBAAAA,ECxDO,IAAM1C,EAAmBkE,OAAOC,OAAO,CAC5ClE,mBAAoB,qBACpBuC,UAAW,YACXI,WAAY,eAHP,qBAMA,IAAM1C,EAA0BgE,OAAOC,OAAO,CACnD,EAAGnE,EAAiBwC,UACpB4B,KAAMpE,EAAiB4C,aAFlB,4BAKA,UAAgB,0BAAhB,4HCXP,6CAEO,iCAAuCf,SAAAA,GAAsB,OAAiD,IAA5C7jB,EAAAA,QAAEwjB,IAAIK,EAAwB,UAAkBA,EAAuB,GAAG8B,SAAMlY,CAAlJ,wGCFP,IAEa6U,GAAY,EAFzB,MAEyB+D,kBAAgB,iBAAO,CAC9ChC,iBAAkB,CAChB,UAAW,CACTiC,QAAS,GAEX,4BAA6B,CAC3BC,MAAO,OAET,yBAA0B,CACxBC,WAAY,MATuB,IAAlC,+BCFPlnB,EAAOC,QAAP,eAAAD,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,sBAAAA,EAAA,GAAAA,EAAA,sBAAAA,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,sBAAAA,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,8B,kF3BCA,SAGA,cAGA,QACA,oBAGA,YACA,IACA,KACA,YAUA,OANA,mCAGA,OAGA,SACA,CAyDA,OArDA,MAGA,MAGA,oBACA,UACA,2BAA0C,qBAE1C,EAGA,gBACA,iDACA,4CAAwD,iBAExD,sCAAiD,UACjD,EAOA,kBAEA,GADA,cACA,aACA,sDACA,0BAGA,GAFA,OACA,mCAAyC,wBACzC,2DAAgH,WAAmB,EAAGD,KAAK,KAAK,IAChJ,QACA,EAGA,gBACA,sBACA,WAA2B,gBAA0B,EACrD,WAAiC,QAAe,EAEhD,OADA,aACA,CACA,EAGA,kBAAsD,gDAA+D,EAGrH,OAIA,W,CAAA,mN4BlFA,uHCMO,gBAAsB,CAC3BonB,kDAAmDxjB,4GAMnDyjB,yDAA0DzjB,6GAM1D0jB,gEAAiE1jB,+HAMjE2jB,kBAAmB3jB,oCACnB4jB,4DAA6D5jB,4CAC7D6jB,8DAA+D7jB,4IAM/D8jB,yEAA0E9jB,sIAM1E+jB,4DAA6D/jB,4GAM7DgkB,iEAAkEhkB,0CAClEikB,mEAAoEjkB,6NAMpEkkB,sDAAuDlkB,6EAMvDmkB,+BAAgCnkB,WAChCokB,4BAA6BpkB,UAC7BqkB,wDAAyDrkB,sIAMzDskB,+DAAgEtkB,wJA5D3D,wB,mF7BLP,SAGA,cAGA,QACA,oBAGA,YACA,IACA,KACA,YAUA,OANA,mCAGA,OAGA,SACA,CAyDA,OArDA,MAGA,MAGA,oBACA,UACA,2BAA0C,qBAE1C,EAGA,gBACA,iDACA,4CAAwD,iBAExD,sCAAiD,UACjD,EAOA,kBAEA,GADA,cACA,aACA,sDACA,0BAGA,GAFA,OACA,mCAAyC,wBACzC,2DAAgH,WAAmB,EAAG5D,KAAK,KAAK,IAChJ,QACA,EAGA,gBACA,sBACA,WAA2B,gBAA0B,EACrD,WAAiC,QAAe,EAEhD,OADA,aACA,CACA,EAGA,kBAAsD,gDAA+D,EAGrH,OAIA,W,CAAA,mN8BlFA,uHCMO,gBAAsB,CAC3BmoB,qBAAsBvkB,kBACtB4V,4BAA6B5V,iBAC7B6V,4BAA6B7V,iBAC7B8V,oBAAqB9V,OACrB+V,+BAAgC/V,oBAChCgW,qBAAsBhW,QACtBiW,wBAAyBjW,WACzBkW,uBAAwBlW,WACxBmW,0BAA2BnW,cAC3BoW,+BAAgCpW,qBAChCiL,mCAAoCjL,yBACpC+W,6BAA8B/W,mDAC9BgX,qCAAsChX,sBACtCiX,4BAA6BjX,iBAC7BkX,4BAA6BlX,iBAC7BmX,gCAAiCnX,qBACjCoX,uBAAwBpX,oBAjBnB,wB,4Z/BLP,SAGA,cAGA,QACA,oBAGA,YACA,IACA,KACA,YAUA,OANA,mCAGA,OAGA,SACA,CAyDA,OArDA,MAGA,MAGA,oBACA,UACA,2BAA0C,qBAE1C,EAGA,gBACA,iDACA,4CAAwD,iBAExD,sCAAiD,UACjD,EAOA,kBAEA,GADA,cACA,aACA,sDACA,0BAGA,GAFA,OACA,mCAAyC,wBACzC,2DAAgH,WAAmB,EAAG5D,KAAK,KAAK,IAChJ,QACA,EAGA,gBACA,sBACA,WAA2B,gBAA0B,EACrD,WAAiC,QAAe,EAEhD,OADA,aACA,CACA,EAGA,kBAAsD,gDAA+D,EAGrH,OAIA,W,CAAA,kBSlFAC,EAAOC,QAAP,eAAAD,EAAA,GAAAA,EAAA,wBAAAA,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,sBAAAA,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,wBAAAA,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,sBAAAA,EAAA,GAAAA,EAAA,sBAAAA,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,sBAAAA,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,wBAAAA,EAAA,KAAAA,EAAA,6BAAAA,EAAA,g8BuBCA,SACA,SACA,SACA,SACA,SACA,SACA,qMACA,6SCRA,MAUA,8bAVA,OACA,UACA,UACA,SACA,OACA,SAEA,SACA,SACA,SACA,4LAEA,IAAMmoB,EAAsB,iBACtBC,EAAU,gBAAGC,EAAH,EAAGA,KAAM/hB,EAAT,EAASA,KAAT,OAAqB5F,EAAAA,QAAE4nB,SAASD,GAAQ/hB,EAAKiiB,UAAUF,GAAQA,CAA/D,EACRG,EAAuBtiB,EAAAA,UAAvBsiB,mBAEFC,EAAsB,YAAC,IAAEJ,EAA0B,EAA1BA,KAAMK,EAAoB,EAApBA,QAASpiB,EAAW,EAAXA,KACtCiI,EAAQ6Z,EAAQ,CAAEC,KAAAA,EAAM/hB,KAAAA,IAC9B,OAAO,IAAAqiB,aAAYpa,MAAW,IAAAqa,wBAAuB,CACnDF,SAAS,IAAAG,uBAAqB,IAAAF,aAAYD,IAAYA,EAAU,IAAII,KAASJ,EAAU,IAAII,MAC3Fva,OAAO,IAAAsa,sBAAqBta,IAE/B,EAEM,SAASwa,EAAT,GAAsB,IAC3BL,EAaC,EAbDA,QACAM,EAYC,EAZDA,QACAC,EAWC,EAXDA,UACAnd,EAUC,EAVDA,SACAod,EASC,EATDA,WACAC,EAQC,EARDA,UACA3e,EAOC,EAPDA,OACA4e,EAMC,EANDA,gBACAC,EAKC,EALDA,oBACAC,EAIC,EAJDA,aACAC,EAGC,EAHDA,iBACAC,EAEC,EAFDA,gBACAC,EACC,EADDA,YAEA,GAA6B,IAAAC,WAArBpjB,EAAF,EAAEA,KAAMkB,EAAAA,EAAAA,WACRmiB,GAAkB,IAAAliB,UAAQ,kBAAOgiB,EACnC,SAAClb,EAAOqb,GAAR,OACAnB,EAAoB,CAAEJ,KAAM9Z,EAAOma,QAAAA,EAASpiB,KAAAA,IACxC,CAACA,EAAK2C,UAAUtF,2BAChBimB,EAAiBrb,EAJyB,EAM9C,IANoB,GAMb,CAACjI,EAAMmjB,EAAaf,IAE/B,OAAIQ,EACK,oCAAOA,GAGZG,EAEA,+BAAK9iB,UAAS,UAAK4hB,EAAL,2BACZ,wBAAC,EAAA0B,oBAAD,CACEnB,QAASA,EACTM,QAASA,EACTC,UAAWA,EACXnd,SAAUA,EACVge,aAAc1B,EAAQ,CAAEC,KAAMc,EAAW7iB,KAAAA,IACzC8iB,gBAAiBK,GAAeL,EAChC5e,OAAQA,EACRmf,gBAAiBA,KAKrBL,EAEA,+BAAK/iB,UAAS,UAAK4hB,EAAL,yBACZ,wBAAC,EAAA4B,kBAAD,CACErB,QAASA,EACTM,QAASA,EACTC,UAAWA,EACXnd,SAAUA,EACVqd,UAAWK,IAAoBhB,EAAmBwB,iBAAmBb,EAAYf,EAAQ,CAAEC,KAAMc,EAAW7iB,KAAAA,IAC5G8iB,gBAAiBK,GAAeL,EAChC5e,OAAQA,EACR+e,iBAAkBA,EAClBC,gBAAiBA,EACjBG,gBAAiBA,KAMvB,+BAAKpjB,UAAW4hB,GACd,wBAAC,EAAA8B,iBAAD,CACE3jB,KAAMkB,EACNkhB,QAASA,EACTM,QAASkB,EAAAA,uBACTjB,UAAWA,EACXnd,SAAUA,EACVge,aAAc1B,EAAQ,CAAEC,KAAMc,EAAW7iB,KAAAA,IACzC8iB,gBAAiBK,GAAeL,EAChC5e,OAAQA,EACRmf,gBAAiBA,IAGxB,CAEDZ,EAAa1c,UAAY,CACvB4c,UAAW1c,EAAAA,QAAUC,KAAK5E,WAC1BkE,SAAUS,EAAAA,QAAUI,KACpB+b,QAASnc,EAAAA,QAAU4d,WAAWrB,MAC9BE,QAASzc,EAAAA,QAAU4d,WAAWrB,MAC9BI,WAAY3c,EAAAA,QAAUG,OACtB0c,gBAAiB7c,EAAAA,QAAUI,KAAK/E,WAChCuhB,UAAW5c,EAAAA,QAAUM,UAAU,CAACN,EAAAA,QAAU4d,WAAWrB,MAAOvc,EAAAA,QAAUG,OAAQH,EAAAA,QAAUK,SACxFpC,OAAQ,UAAU8B,MAAM,CACtBjE,SAAUkE,EAAAA,QAAUI,OAEtB4c,iBAAkBhd,EAAAA,QAAUI,KAC5B0c,oBAAqB9c,EAAAA,QAAUI,KAC/B2c,aAAc/c,EAAAA,QAAUI,KACxB6c,gBAAiBjd,EAAAA,QAAUG,OAC3B+c,YAAald,EAAAA,QAAUI,MAGzBoc,EAAa3b,aAAe,CAC1BtB,UAAU,EACVod,WAAY,KACZR,QAAS,IAAII,KACbE,QAAS,KACTG,UAAW,KACX3e,OAAQ,CACNpC,KAAM,SACNgiB,UAAU,EACV/hB,UAAU,GAEZkhB,kBAAkB,EAClBF,qBAAqB,EACrBC,cAAc,EACdE,gBAAiB,KACjBC,aAAa,EAffV,EAAAA,IAAAA,SAAAA,EAAAA,GCxHA/oB,EAAOC,QAAP,gBAAAD,EAAA,GAAAA,EAAA,wBAAAA,EAAA,oGCUA,EDVA,ECUA,8bDVA,OCCA,GASA,EATA,OASA,2BAPA,QACA,SACA,OACA,QACA,OAEA,SACA,yIAEA,IAAQqqB,EAAyBC,EAAAA,oBAAzBD,qBACAE,EAAkBrkB,EAAAA,UAAlBqkB,cAEFC,EACS,cADTA,EAEK,UAGEX,EAAsB,YAAC,IAClCnB,EAQI,EARJA,QACAM,EAOI,EAPJA,QACAC,EAMI,EANJA,UACAnd,EAKI,EALJA,SACAge,EAII,EAJJA,aACAV,EAGI,EAHJA,gBACA5e,EAEI,EAFJA,OACAmf,EACI,EADJA,gBAEA,GAA6B,IAAAD,WAArBpjB,EAAF,EAAEA,KAAMkB,EAAAA,EAAAA,WAERub,GAAU,IAAA0H,kBAAiBC,EAAAA,8BACjC,GAAsC,IAAAtI,WAAS,WAC7C,OAAIiI,EAAqBP,KAAkBA,EAClCU,EAEFA,CACR,IALD,SAAO3H,EAAD,KAAcC,EAAd,KAMA6H,EAAoB9H,IAAgB2H,EACpCI,EAA2BC,EAAAA,UAAUC,uBAAuBpC,EAAS,IAAII,MACzEiC,EAAwBH,EAA2BL,EAAgB7B,EACnEsC,EAAgB,UAAM1kB,EAAK2kB,WAAWvC,EAAS,CAAEwC,IAAKC,EAAAA,UAAgBC,sBACtEC,EAA0BhB,EAAqBP,KAAmBc,GAA4B/H,IAAgB2H,EAE9Gc,GAAgB,IAAA3iB,cAAY,YAAC,IAAE4F,EAAqB,EAArBA,MAAOxF,EAAc,EAAdA,QACtC8Z,IAAgB2H,GAClBvB,EAAU,CAAE1a,MAAAA,EAAOxF,QAAAA,GAEtB,GAAE,CAACkgB,EAAWpG,IAEToD,GAAU,IAAAxe,UAAQ,iBAAM,CAC5B,CAAE0C,IAAKqgB,EAA8Bxe,KAAM4e,EAA2BtkB,EAAK2C,UAAUtF,eAAlB,UAA4C2C,EAAK2C,UAAUtF,eAA3D,aAAoFqnB,EAApF,MACnE,CAAE7gB,IAAKqgB,EAA0Bxe,KAAM1F,EAAK2C,UAAUtF,qBACtD,CACEwG,IAAK,aACL2B,UAAU,EACVqZ,cAAe,WAAF,OACX,wBAAC,EAAA8E,iBAAD,CACE3jB,KAAMkB,EACNkhB,QAASA,EACTM,QAASA,EACTC,UAAWqC,EACXxf,SAAU6e,GAAqB7e,EAC/Bge,aAAcuB,EAA0B,KAAOvB,EAC/CV,gBAAiBA,EACjB5e,OAAQA,EACRmf,gBAAiBA,GATnB,GAPU,GAoBb,CAACiB,EAA0BtkB,EAAM0kB,EAAkBxjB,EAAYkhB,EAASM,EAASsC,EAAeX,EAAmB7e,EAAUuf,EAAyBvB,EAAcV,EAAiB5e,EAAQmf,IAE1L4B,GAA4B,IAAA5iB,cAAa6iB,SAAAA,GACzCA,IAAsBhB,GACxBvB,EAAU,CAAE1a,MAAOwc,EAAuBhiB,SAAS,GAEtD,GAAE,CAACkgB,EAAW8B,IAETrF,GAA0B,IAAA/c,cAAY,SAACiD,EAAOga,GAClD9C,EAAe8C,EAAOzb,KACtBohB,EAA0B3F,EAAOzb,IAClC,GAAE,CAACohB,IAOJ,OALA,IAAA5G,YAAU,WACR4G,EAA0B1I,EAE3B,GAAE,IAGD,wBAAC,EAAAkD,YAAD,CACExf,UAAWwc,EAAQ0I,oBACnB5I,YAAaA,EACboD,QAASA,EACTta,SAAU+Z,GAGf,EA7EM,wBA+EPmE,EAAoBxd,UAAY,CAC9B4c,UAAW1c,EAAAA,QAAUC,KAAK5E,WAC1BkE,SAAUS,EAAAA,QAAUI,KACpByc,gBAAiB7c,EAAAA,QAAUI,KAC3B+b,QAASnc,EAAAA,QAAU4d,WAAWrB,MAC9BE,QAASzc,EAAAA,QAAU4d,WAAWrB,MAC9BgB,aAAcvd,EAAAA,QAAU4d,WAAWrB,MACnCte,OAAQ,UAAU8B,MAAM,CACtBjE,SAAUkE,EAAAA,QAAUI,OAEtBgd,gBAAiBpd,EAAAA,QAAUC,MAG7Bqd,EAAoBzc,aAAe,CACjCtB,UAAU,EACV4c,QAAS,IAAII,KACbE,QAAS,KACTI,iBAAiB,EACjBU,aAAc,KACdtf,OAAQ,CAAE5C,YAAY,GACtB+hB,gBAAiB,KAPnBE,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,kCAAAA,EAAAA,+BAAAA,EAAAA,8CAAAA,EAAAA,6BAAAA,EAAAA,kBAAAA,EAAAA,gCAAAA,EChHA,YAEO,6BAAmC,WAAH,MAAU,CAC/C6B,WAAY,CACV1b,WAAY,GACZ,8BAA+B,CAC7BD,QAAS,OACT,oCAAqC,CACnCkX,MAAO,SAN2B,EAYnC,oBAA0B,WAAH,MAAU,CACtC0E,YAAa,CACX1E,MAAO,GACPjX,WAAY,GACZ4b,YAAa,GACbC,KAAM,YAERC,SAAU,CACR,SAAU,CACR1b,MAAO,UACP2b,SAAU,IAEZ,oBAAqB,CACnBC,MAAO,GACP/E,MAAO,KAET,sBAAuB,CACrBlX,QAAS,OACTkc,eAAgB,OAChBC,cAAe,MACfC,WAAY,SACZlF,MAAO,IACPmF,SAAU,OACVnc,UAAW,EACXC,aAAc,GAEhB,YAAa,CACXA,aAAc,EACd0b,YAAa,EACbG,SAAU,IAEZ,mBAAoB,CAClBM,WAAY,iBAhCe,EAqC1B,+BAAqC,WAAH,MAAU,CACjDZ,oBAAqB,CACnBzb,WAAY,GACZ,UAAW,CACTgX,QAAS,GAEX,4BAA6B,CAC3BC,MAAO,OACPqF,WAAY,UAEd,yBAA0B,CACxBpF,WAAY,KAEd,wBAAyB,CACvBqF,YAAa,KAdyB,EAmBrC,gDAAsD,WAAH,MAAU,CAClEC,0BAA2B,CACzBzc,QAAS,OACTmc,cAAe,MACfO,gBAAiBC,EAAAA,eAAeC,gBAChCC,OAAO,aAAD,OAAeF,EAAAA,eAAeG,cACpCR,WAAY,SAEZ,wBAAyB,CACvBrc,WAAY,OAGd,2BAA4B,CAC1B8c,OAAQ,UACRX,WAAY,UAGd,2BAA4B,CAC1Blc,UAAW,MACX2b,YAAa,QAGjBmB,qBAAsB,CACpB,qBAAsB,CACpBhB,SAAU,OACViB,IAAK,EACL5c,MAAOsc,EAAAA,eAAeG,eAG1BI,uBAAwB,CACtBC,OAAQ,QA9BiD,EAkCtD,iCAAuC,WAAH,MAAU,CACnDC,UAAW,CACT,wBAAyB,CACvBC,UAAW,cAGb,2BAA4B,CAC1BN,OAAQ,kBAGV,2BAA4B,CAC1BX,WAAY,eAGhBkB,QAAS,CACPtd,QAAS,OACTmc,cAAe,SACfoB,gBAAiB,aACjBC,IAAK,QAlBqC,EAsBvC,oCAA0C,WAAH,MAAU,CACtDJ,UAAW,CACTpd,QAAS,OACTmc,cAAe,MACfD,eAAgB,aAChBG,SAAU,OACVmB,IAAK,aAEPC,cAAe,CACbzB,SAAU,OACVO,WAAY,OACZpF,WAAY,OAXiC,CAA1C,8uBC9HP,aACA,SACA,SACA,SACA,SACA,2HCLA,WACA,WACA,UAEA,QACA,OACA,2DAEA,IAAQuG,EAAuBC,EAAAA,UAAvBD,mBACArC,EAAuBD,EAAAA,UAAvBC,mBAEFuC,EAAQ,CAACF,EAAmBG,+BAE3B,wBAA8B,YAAC,IACpCtnB,EAGI,EAHJA,KACAunB,EAEI,EAFJA,IACAC,EACI,EADJA,sBAEA,GAA0B,IAAA7K,YACxBC,SAAAA,GAAM,OAAK4K,GAAyB5K,GAAU5c,GAAQunB,EAAM,EACxD3K,EAAO6K,mBAAmBC,QAAQ,CAAEH,IAAAA,EAAKF,MAAAA,GAAS,CAClDM,YAAavtB,EAAAA,QAAE2M,OAEfgW,EAAAA,QAAQC,QAAQ,KALI,GAMxB,CAACuK,EAAKvnB,EAAMwnB,GACZ,CAAEI,cAAc,IAPVplB,EAAF,EAAEA,KAAM2a,EAAAA,EAAAA,QAed,MAAO,CACL0K,oBANyB,IAAA1mB,UACzB,kBAAMqB,GAAQA,EAAKhH,OAAS,GAAKwE,GAAQA,EAAKiiB,UAAUzf,EAAK,GAAGslB,qBAAsB,CAAElD,IAAKE,GADpE,GAEzB,CAACtiB,EAAMxC,IAKPmd,QAAAA,EAEH,CAxBM,yGCDA,YAA4B,IACjCnd,EAMC,EANDA,KACAwnB,EAKC,EALDA,sBACAO,EAIC,EAJDA,QACAC,EAGC,EAHDA,mBACAC,EAEC,EAFDA,cACAC,EACC,EADDA,2BAGEC,EAIEJ,EAJFI,UACUC,EAGRL,EAHFM,SACeC,EAEbP,EAFFQ,cACgBC,EACdT,EADFU,eAEIC,GAA2B,IAAAvnB,UAAQ,kBAAM,IAAAwnB,6BAA4B,CACzE3oB,KAAAA,EAAMwnB,sBAAAA,EAAuBO,QAAAA,EAASC,mBAAAA,EAAoBC,cAAAA,EAAeC,2BAAAA,GAD1C,GAGjC,CAACA,EAA4BloB,EAAM+nB,EAASC,EAAoBC,EAAeT,IAEzEoB,GAAU,IAAAznB,UAAQ,kBAAM,IAAA0nB,YA5BhC,oBAAApqB,EAAA,EAAAA,EAAA,iBAAAA,IAAA,uBAAAA,GAAA,UAAAA,GAAA,GAAAA,EAAA,oQA4BgC,EAAaiqB,yBAAAA,GAA6BX,GAAxD,GAAoE,CAACW,EAA0BX,IAE/G,GAA2C,IAAAe,0BAAyB,CAClE9oB,KAAAA,EACA0oB,yBAAAA,EACAjN,UAAW0M,EACXC,UAAAA,EACAQ,QAAAA,EACAN,cAAAA,IANMS,EAAF,EAAEA,sBAAuB5L,EAAAA,EAAAA,QASzB6L,GAAsB,IAAA7nB,UAAQ,kBAAM,IAAA8nB,wBAAuB,CAC/DP,yBAAAA,EAA0BK,sBAAAA,EAAuBH,QAAAA,EAASN,cAAAA,EAAeE,eAAAA,EAAgBJ,UAAAA,GAD/D,GAExB,CAACM,EAA0BE,EAASG,EAAuBT,EAAeE,EAAgBJ,IAExFc,GAAmB,IAAA/nB,UAAQ,kBAAM,IAAAgoB,qBAAoB,CAAET,yBAAAA,EAA0BK,sBAAAA,EAAuBC,oBAAAA,GAArF,GACvB,CAACN,EAA0BK,EAAuBC,IAE9CI,GAAyB,IAAAjoB,UAAQ,kBAAM,IAAAkoB,2BAA0B,CACrEb,eAAAA,EACAU,iBAAAA,EACAI,sBAAuBtB,EAAmBuB,EAAiBd,iBAH9B,GAK/B,CAACS,EAAkBlB,EAAoBQ,IAEjCgB,GAAiB,IAAAroB,UAAQ,kBAAM,IAAAsoB,yBAAwB,CAAEf,yBAAAA,EAA0BU,uBAAAA,EAAwBJ,oBAAAA,GAA1F,GACrB,CAACN,EAA0BM,EAAqBI,IAElD,MAAO,CACLjM,QAAAA,EACAuL,yBAAAA,EACAc,eAAAA,EACAT,sBAAAA,EACAW,gBAAiBR,EACjBS,WAAYX,EACZJ,QAAAA,EAEH,EApED,WACA,OACA,SACA,+VAOA,IAAQW,EAAqB3pB,EAAAA,UAArB2pB,gBA0DP,+GCzDM,YAAkC,IACvCvpB,EAMC,EANDA,KACA0oB,EAKC,EALDA,yBACAjN,EAIC,EAJDA,UACA2M,EAGC,EAHDA,UACAQ,EAEC,EAFDA,QACAN,EACC,EADDA,cAEMsB,GAAwB,IAAAzoB,UAAQ,oBAASunB,IAA6BmB,EAAAA,yBAAyBC,SAAW9pB,IAAQ,IAAA+pB,aAAY3B,IAAa,IAAA2B,aAAYnB,GAA/H,GAA0I,CAACF,EAA0BE,EAAS5oB,EAAMooB,IAC5M4B,GAAkB,IAAA7oB,UAAQ,kBAAOyoB,EAAwB5pB,EAAK2kB,WAAWyD,EAAW,CAAExD,IAAKE,IAAwB,IAAjG,GAAwG,CAAC8E,EAAuB5pB,EAAMooB,IACxJ6B,GAAgB,IAAA9oB,UAAQ,kBAAOyoB,EAAwB5pB,EAAK2kB,WAAWiE,EAAS,CAAEhE,IAAKE,IAAwB,IAA/F,GAAsG,CAAC8E,EAAuBhB,EAAS5oB,IACvJwD,GAAK,IAAArC,UAAQ,8BAAYsa,EAAZ,qBAAkCuO,EAAlC,mBAA4DC,EAA5D,yBAA0F3B,GAAiB,GAAnH,GAAyH,CAAC7M,EAAWwO,EAAeD,EAAiB1B,IAEhL,GAA0B,IAAA3L,YACxBC,SAAAA,GAAM,OAAKgN,GAAyBhN,EAChCA,EAAOsN,+BAA+BpN,KAAKtZ,EAAI,CAC/C2mB,OAAQ,CACN5C,IAAK9L,EACL2M,UAAW4B,EACXpB,QAASqB,EACT3B,cAAAA,GAEFX,YAAavtB,EAAAA,QAAE2M,OAEfgW,EAAAA,QAAQC,QAAQ,CAAC,EAXG,GAYxB,CAAC4M,EAAuBpmB,EAAIymB,EAAeD,EAAiB1B,EAAe7M,GAC3E,CAAEmM,cAAc,IAbVplB,EAAF,EAAEA,KAAM2a,EAAAA,EAAAA,QAgBd,OAAO,IAAAhc,UAAQ,iBAAO,CACpB4nB,sBAAuBvmB,GAAQA,EAAK4nB,sBACpCjN,QAAAA,EAFa,GAGX,CAAC3a,EAAM2a,GACZ,EA5CD,IAOA,EAPA,OACA,QACA,GAKA,EALA,OAKA,2BAJA,SACA,QACA,QAEA,SAEA,IAAQ2H,EAAuBD,EAAAA,UAAvBC,kBAmCP,qOC5CD,IAEQuF,EAFR,KAEwBzqB,UAAhByqB,YAED,sCAA4C,GAE5C,IAAMzG,EAAyB,IAAIpB,KAAK6H,EAAYC,cAAgB,IAAK,EAAG,GAA5E,2BAEA,yBAA+B,GAE/B,IAAMC,EAAuBjK,OAAOC,OAAO,CAChDiK,QAAS,UACTC,QAAS,UACTC,IAAK,MACLC,KAAM,SAJD,yBAOA,IAAMd,EAA2BvJ,OAAOC,OAAO,CACpDqK,WAAY,aACZC,WAAY,aACZC,WAAY,aACZC,WAAY,aACZC,aAAc,eACdlB,QAAS,YANJ,gHCjBP,8RCuBO,YAAqC,IAC1C9pB,EAMC,EANDA,KACA+nB,EAKC,EALDA,QACAC,EAIC,EAJDA,mBACAR,EAGC,EAHDA,sBACAS,EAEC,EAFDA,cACAC,EACC,EADDA,2BAEQC,EAAyCJ,EAAzCI,UAAW8C,EAA8BlD,EAA9BkD,SAAUC,EAAoBnD,EAApBmD,gBAG7B,IAAK1D,GAAyBU,IAA+BloB,KAAUmoB,EAAY,KAAOH,EAAmBuB,EAAiBlB,UAC5H,OAAOwB,EAAAA,yBAAyBC,QAGlC,GAAI7B,GAAiBD,EAAmBuB,EAAiBhB,eAAgB,CACvE,GAAI2C,IAAoBhJ,EAAmBiJ,WAAanD,EAAmBuB,EAAiB0B,UAC1F,OAAOpB,EAAAA,yBAAyBiB,WAElC,GAAII,IAAoBhJ,EAAmBkJ,WAAapD,EAAmBuB,EAAiB0B,UAC1F,OAAOpB,EAAAA,yBAAyBkB,WAElC,GAAIG,IAAoBhJ,EAAmBwB,kBAAoBsE,EAAmBuB,EAAiB8B,aACjG,OAAOxB,EAAAA,yBAAyBmB,YAhBnC,CAoBD,IAAK/C,GAAiBD,EAAmBuB,EAAiB0B,UACxD,OAAOK,EAAmBL,GAAYpB,EAAAA,yBAAyBe,WAAaf,EAAAA,yBAAyBgB,WAEvG,OAAOhB,EAAAA,yBAAyBC,OACjC,EDtDD,aCwDO,YAAoB,IACzBpB,EACC,EADDA,yBAA0BL,EACzB,EADyBA,SAAU4C,EACnC,EADmCA,SAAUI,EAC7C,EAD6CA,YAAa9C,EAC1D,EAD0DA,cAE3D,OAAQG,GACN,KAAKmB,EAAAA,yBAAyBe,WAC9B,KAAKf,EAAAA,yBAAyBiB,WAE9B,KAAKjB,EAAAA,yBAAyBgB,WAC9B,KAAKhB,EAAAA,yBAAyBkB,WAC5B,OAAOE,EACT,KAAKpB,EAAAA,yBAAyBmB,aAC5B,OAAOO,EAAqBlD,EAAUE,EAAe8C,GACvD,KAAKxB,EAAAA,yBAAyBC,QAC9B,QACE,OAEL,EDxED,yBC0EO,YAAgC,IACrCpB,EACC,EADDA,yBAA0BK,EACzB,EADyBA,sBAAuBH,EAChD,EADgDA,QAASN,EACzD,EADyDA,cAAeE,EACxE,EADwEA,eAAgBJ,EACxF,EADwFA,UAEzF,OAAQM,GACN,KAAKmB,EAAAA,yBAAyBe,WAC5B,OAAO7B,EAAwB,GAAKP,EAAiB,EAAI9gB,KAAK8jB,MAAMhD,EAAiBO,GAAyB0C,EAAAA,uBAAyB,EACzI,KAAK5B,EAAAA,yBAAyBgB,WAC5B,OAAO,IAAAa,iBAAgB,CAAEC,OAAO,IAAApJ,sBAAqB6F,GAAYwD,KAAK,IAAArJ,sBAAqBqG,KAC7F,KAAKiB,EAAAA,yBAAyBiB,WAC9B,KAAKjB,EAAAA,yBAAyBkB,WAC9B,KAAKlB,EAAAA,yBAAyBmB,aAC5B,OAAOa,EAAqBvD,GAC9B,KAAKuB,EAAAA,yBAAyBC,QAC9B,QACE,OAEL,ED1FD,sBC4FO,YAA6B,IAAEpB,EAAwE,EAAxEA,yBAA0BK,EAA8C,EAA9CA,sBAAuBC,EAAuB,EAAvBA,oBACrF,OAAQN,GACN,KAAKmB,EAAAA,yBAAyBgB,WAC9B,KAAKhB,EAAAA,yBAAyBiB,WAC9B,KAAKjB,EAAAA,yBAAyBkB,WAC9B,KAAKlB,EAAAA,yBAAyBmB,aAC5B,OAAO,UAAEc,SAAS/C,GAAyBgD,EAAa,CAAEC,YAAajD,EAAwBC,SAAyBnhB,EAC1H,KAAKgiB,EAAAA,yBAAyBe,WAC9B,KAAKf,EAAAA,yBAAyBC,QAC9B,QACE,OAEL,EDxGD,4BC0GO,YAAmC,IAAEtB,EAA2D,EAA3DA,eAAgBU,EAA2C,EAA3CA,iBAC1D,OADqG,EAAzBI,wBAC3C2C,EAAoBzD,IAAmBpuB,EAAAA,QAAE0xB,SAAS5C,IAAqBA,EAAmBV,CAC5H,ED5GD,0BC8GO,YAAiC,IACtCE,EACC,EADDA,yBAA0BU,EACzB,EADyBA,uBAAwBJ,EACjD,EADiDA,oBAE9CkD,EAAgB3B,EAAAA,qBAAqBI,KACzC,OAAQjC,GACN,KAAKmB,EAAAA,yBAAyBgB,WACxBzB,IACF8C,EAAgB3B,EAAAA,qBAAqBC,SAEvC,MACF,KAAKX,EAAAA,yBAAyBiB,WAC9B,KAAKjB,EAAAA,yBAAyBkB,WAC9B,KAAKlB,EAAAA,yBAAyBmB,aACxB5B,IACF8C,EAAgB3B,EAAAA,qBAAqBG,KAEvC,MACF,KAAKb,EAAAA,yBAAyBe,WACxB5B,GAAuByC,EAAAA,yBACzBS,EAAgB3B,EAAAA,qBAAqBE,SAGzC,KAAKZ,EAAAA,yBAAyBC,SAGhC,OAAOoC,CACR,EDxID,ICIA,EDJA,GCIA,EDJA,OCIA,2BAHA,QACA,OACA,SACA,SAEA,MAAiDtsB,EAAAA,UAAzCsiB,EAAF,EAAEA,mBAAoBqH,EAAAA,EAAAA,iBACpBsC,EAAyBhH,EAAAA,UAAzBgH,qBACR,EAAoD7H,EAAAA,oBAA5CiI,EAAF,EAAEA,oBAAqBX,EAAAA,EAAAA,mBACrBC,EAAyBhH,EAAAA,UAAzBgH,qBAED,SAASQ,EAAT,GAAsB,IAAEC,EAAmD,EAAnDA,YAAF,EAAqD,EAAtCG,SAAAA,OAAQ,MAAG,IAA1B,IAAqD,EAAtBC,eAAAA,OAAc,MAAG,IAC3E,GAAIJ,GAAeG,EACjB,OAAOA,EAET,IACME,EADQL,EAAYM,WAAWC,MAAM,KACzB,GAAG/wB,OACfgxB,EAAgBH,EAAMD,EAAiBC,EAAMD,EAAiB,EAE9DK,EAAU/kB,KAAKglB,IAAI,GAAIF,GAC7B,OAAO9kB,KAAKilB,KAAKX,EAAcS,GAAWA,CAC3C,CAmHA,oHCjIM,YAAuC,IAAEzsB,EAAwB,EAAxBA,KAAMwoB,EAAkB,EAAlBA,eACpD,GAAgC,IAAA1M,UAAS0M,GAAlCoE,EAAP,OAAM,GASN,OAP6C,IAAAvqB,cAAa4F,SAAAA,GACxD,OAAK7N,EAAAA,QAAEyyB,OAAO5kB,KAAW7N,EAAAA,QAAEyyB,OAAOD,IAA0B3kB,GAAS6kB,EAAsCF,EAClG5sB,EAAK2C,UAAUtF,wDAEjB,IACR,GAAE,CAAC2C,EAAM4sB,GAGX,EAlBD,IAGA,EAHA,OACA,GAEA,EAFA,OAEA,2BAEA,IAAQE,EAFR,KAEgDltB,UAAxCktB,mCAaP,sHClBD,WACA,WACA,UAEA,QACA,OACA,2DAEA,IAAQ3F,EAAuBC,EAAAA,UAAvBD,mBACArC,EAAuBD,EAAAA,UAAvBC,mBAED,2BAAiC,YAAC,IACvC9kB,EAKI,EALJA,KACAunB,EAII,EAJJA,IACAU,EAGI,EAHJA,cACA8E,EAEI,EAFJA,gBACAvF,EACI,EADJA,sBAEMH,GAAQ,IAAAlmB,UACZ,kBAAO8mB,EACH,CAACd,EAAmB6F,4BACpB,CAAC7F,EAAmB8F,uBAHZ,GAIZ,CAAChF,IAEH,GAA0B,IAAAtL,YACxBC,SAAAA,GAAM,OAAK4K,GAAyB5K,GAAU5c,IAAS+sB,GAAmBxF,EAAM,EAC5E3K,EAAO6K,mBAAmBC,QAAQ,CAAEH,IAAAA,EAAKF,MAAAA,GAAS,CAClDM,YAAavtB,EAAAA,QAAE2M,OAEfgW,EAAAA,QAAQC,QAAQ,KALI,GAMxB,CAACuK,EAAKvnB,EAAMwnB,EAAuBuF,EAAiB1F,GACpD,CAAEO,cAAc,IAPVplB,EAAF,EAAEA,KAAM2a,EAAAA,EAAAA,QAyCd,MAAO,CACL+P,4BAjCiC,IAAA/rB,UACjC,WACE,IAAKqB,IAASxC,EACZ,OAAO,KAGT,GAAoB,IAAhBwC,EAAKhH,OACP,MAAO,CAAE2xB,iBAAkB,MAG7B,MAII3qB,EAAK,GAHP2qB,EADI,EACJA,iBACA9E,EAFI,EAEJA,SAAU4C,EAFN,EAEMA,SAAUxC,EAFhB,EAEgBA,eACpB2E,EAHI,EAGJA,WAAYC,EAHR,EAGQA,gBAAiBC,EAHzB,EAGyBA,eAAgBC,EAHzC,EAGyCA,UAG/C,MAAO,CACLJ,iBAAAA,EAEA9E,SAAUA,GAAYroB,EAAKiiB,UAAUoG,EAAU,CAAEzD,IAAKE,IACtDmG,SAAUA,GAAYjrB,EAAKiiB,UAAUgJ,EAAU,CAAErG,IAAKE,IACtD2D,eAAgBA,GAAkB+E,OAAO/E,GAEzC2E,WAAAA,EACAC,gBAAiBA,GAAmBrtB,EAAKiiB,UAAUoL,EAAiB,CAAEzI,IAAKE,IAC3EwI,eAAgBA,GAAkBE,OAAOF,GACzCC,UAAAA,EAEH,GACD,CAAC/qB,EAAMxC,IAKPmd,QAAAA,EAEH,CA1DM,qGCXP,IAGA,EAHA,OACA,GAEA,EAFA,QAEA,2BADA,QACA,QAEO,UAAgB,WACrB,IAAMnd,GAAO,IAAAytB,YAAWC,EAAAA,aAGxB,MAAO,CAAExsB,YAFU,IAAAC,UAAQ,kBAAM,IAAAC,iBAAgBpB,EAAM,CAAC2tB,EAAAA,SAArC,GAAgE,CAAC3tB,IAE/DA,KAAAA,EACtB,CALM,0GCLP,MAYA,8bAZA,OACA,UACA,UACA,SACA,QACA,SACA,QACA,OACA,OAEA,SACA,SACA,4LAEA,MAA+DJ,EAAAA,UAAvDguB,EAAF,EAAEA,kBAAmBvD,EAArB,EAAqBA,YAAanI,EAAAA,EAAAA,mBAChCoJ,EAAuBtH,EAAAA,oBAAvBsH,mBAEFuC,EAAoB,CACxB1C,UAAW,EACX2C,WAAY,EACZC,0BAA2B,GAGvBC,EAAW,cACTxJ,EAA2BD,EAAAA,UAA3BC,uBAED,SAASf,EAAT,GAA2B,IAChCrB,EAUC,EAVDA,QACAM,EASC,EATDA,QACAC,EAQC,EARDA,UACAnd,EAOC,EAPDA,SACAqd,EAMC,EANDA,UACA3e,EAKC,EALDA,OACA4e,EAIC,EAJDA,gBACAG,EAGC,EAHDA,iBACAC,EAEC,EAFDA,gBACAG,EACC,EADDA,gBAEA,GAA6B,IAAAD,WAArBpjB,EAAF,EAAEA,KAAMkB,EAAAA,EAAAA,WACR+sB,EAAgB/K,IAAoBhB,EAAmBwB,iBAC7D,GAA0C,IAAA5H,UAAS,MAAnD,SAAOoS,EAAD,KAAgBC,EAAhB,KACN,GAAwB,IAAArS,UAASmS,GAAiB3C,EAAmBzI,GAAa,KAAOA,GAAzF,SAAOd,EAAD,KAAOqM,EAAP,KACN,GAAsC,IAAAtS,WAAS,GAA/C,SAAOuS,EAAD,KAAcC,EAAd,KACN,GAAsC,IAAAxS,UAASmS,EAAgBpL,EAAY,MAA3E,SAAO0L,EAAD,KAAcC,EAAd,KACN,GAAoD,IAAA1S,UAASmS,EAAgBpL,EAAY,MAAzF,SAAO4L,EAAD,KAAqBC,EAArB,KACAjS,GAAU,IAAA0H,kBAAiBwK,EAAAA,6BAEjC,IAAAtQ,YAAU,WACJ6P,IAAkBL,EAAkB1C,UACtCxI,EAAU,CAAE1a,MAAOoiB,EAAa5nB,SAAS,EAAMygB,gBAAiBhB,EAAmBiJ,YAC1E+C,IAAkBL,EAAkBC,WAC7CnL,EAAU,CAAE1a,MAAO8Z,GAAQ,IAAIS,KAAK,WAAY/f,QAAS4rB,EAAanL,gBAAiBhB,EAAmBkJ,YACjG8C,IAAkBL,EAAkBE,2BAC7CpL,EAAU,CAAE1a,MAAOsmB,EAAa9rB,QAASgsB,EAAoBvL,gBAAiBhB,EAAmBwB,kBAGpG,GAAE,CAAC3B,EAAMmM,EAAeK,EAAaE,EAAoBJ,KAE1D,IAAAhQ,YAAU,WAEJ6E,IAAoBhB,EAAmBwB,kBACzCyK,EAAiBN,EAAkBE,2BACnCS,EAAe3L,IACNK,IAAoBhB,EAAmBiJ,WAAaG,EAAmBzI,GAChFsL,EAAiBN,EAAkB1C,WACzB/wB,EAAAA,QAAEw0B,OAAO/L,IAInBuL,GAAQS,SAAAA,GAAO,OAAKrK,EAAuB3B,EAAWgM,GAAWA,EAAUhM,CAApE,IACPsL,EAAiBN,EAAkBC,cAJnCK,EAAiBN,EAAkB1C,WACnCiD,EAAQ,MAKX,GAAE,CAAClL,EAAiBL,IAErB,IAAMiM,IAAc,IAAAzsB,cAAY,YAAC,IAC/B0sB,EACI,EADJA,SAAUC,EACN,EADMA,eAAgBC,EACtB,EADsBA,SAEpB7pB,EAAU8oB,IAAkBa,EAClC,OACE,wBAAC,EAAAG,MAAD,CACEjvB,UAAS,UAAK+uB,EAAL,YAAuB5pB,GAAW,WAC3CI,SAAUA,EACVJ,QAASA,EACTC,SAAU,WAAF,OAAQ8oB,EAAiBY,EAAD,GAE/BE,EAEN,GAAE,CAACzpB,EAAU0oB,IAERiB,GAA4BjB,IAAkBL,EAAkBC,YAActoB,EAC9E4pB,GAAgClB,IAAkBL,EAAkBE,2BAA6BvoB,EACvG,OACE,wBAAC,UAAM6pB,SAAP,KACE,wBAACP,GAAD,CAAaE,eAAe,qBAAqBD,SAAUlB,EAAkB1C,WAC1EnrB,EAAK2C,UAAUtF,gBAGlB,wBAACyxB,GAAD,CAAaE,eAAe,aAAaD,SAAUlB,EAAkBC,YAClE9tB,EAAK2C,UAAUtF,oBAElB,+BAAK4C,UAAWwc,EAAQ2I,YACtB,wBAAC,EAAAzB,iBAAD,CACE9f,IAAKqqB,EACLluB,KAAMkB,EACNkhB,QAASA,EACTM,QAASA,EAAUkB,EAAAA,uBAAyBlB,EAAUkB,EAAAA,uBACtDjB,UAAW,YAAC,IAAE1a,EAAqB,EAArBA,MAAOxF,EAAc,EAAdA,QACnB6rB,EAAe7rB,GACf2rB,GAAQS,SAAAA,GAAO,OAAKrK,EAAuBvc,EAAO4mB,GAAWA,EAAU5mB,CAAhE,GACR,EACDzC,SAAU2pB,GACV3L,aAAczB,EACde,gBAAiBA,EACjB5e,OAAQA,EACRmf,gBAAiBA,KAGnBJ,GACF,wBAAC,UAAMoM,SAAP,KACE,wBAACP,GAAD,CAAaE,eAAe,aAAaD,SAAUlB,EAAkBE,2BAClE/tB,EAAK2C,UAAUtF,qBAElB,+BAAK4C,UAAWwc,EAAQ2I,YACtB,+BAAKnlB,UAAU,4BACb,+BAAKA,UAAU,kCACb,wBAAC,EAAAqvB,eAAD,CACErvB,UAAU,gBACVuF,SAAU4pB,GACVprB,gBAAiB,CACjB5B,WAAa6F,SAAAA,GACXumB,EAAevmB,EAAMzF,KAAKwrB,IAC1BU,EAAsBzmB,EAAMxF,QAC7B,EACDwB,MAAO+pB,EACPxrB,KAAK,EAAD,GAAKwrB,EAAWO,GACpBrqB,OAAQ0pB,EACR9K,gBAAAA,EACA9iB,KAAMkB,EACNquB,eAAgBH,OAIpB,8CAAUpvB,EAAK2C,UAAUtF,sBAMpC,CAEDomB,EAAkB1d,UAAY,CAC5B4c,UAAW1c,EAAAA,QAAUC,KAAK5E,WAC1BkE,SAAUS,EAAAA,QAAUI,KACpB+b,QAASnc,EAAAA,QAAU4d,WAAWrB,MAC9BE,QAASzc,EAAAA,QAAU4d,WAAWrB,MAC9BM,gBAAiB7c,EAAAA,QAAUI,KAAK/E,WAChCuhB,UAAW5c,EAAAA,QAAUM,UAAU,CAACN,EAAAA,QAAU4d,WAAWrB,MAAOvc,EAAAA,QAAUG,OAAQH,EAAAA,QAAUK,SACxFpC,OAAQ,UAAU8B,MAAM,CACtBjE,SAAUkE,EAAAA,QAAUI,OAEtB4c,iBAAkBhd,EAAAA,QAAUI,KAC5B6c,gBAAiBjd,EAAAA,QAAUG,OAC3Bid,gBAAiBpd,EAAAA,QAAUC,MAG7Bud,EAAkB3c,aAAe,CAC/BtB,UAAU,EACV4c,QAAS,IAAII,KACbE,QAAS,KACTG,UAAW,KACX3e,OAAQ,CACNpC,KAAM,SACNgiB,UAAU,EACV/hB,UAAU,GAEZkhB,kBAAkB,EAClBC,gBAAiB,KACjBG,gBAAiB,KAZnBI,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,iBAAAA,ECrKA,MASA,8bATA,OACA,UACA,UACA,SACA,OAEA,SACA,SACA,SACA,gbAAAhlB,EAAA,EAAAA,EAAA,iBAAAA,IAAA,uBAAAA,GAAA,UAAAA,GAAA,GAAAA,EAAA,4XAGA,IAAMuvB,EAAW,iBACjB,EAA4EpuB,EAAAA,UAApEguB,EAAF,EAAEA,kBAAmBrE,EAArB,EAAqBA,iBAAkBiG,EAAAA,EAAAA,2BACtC,SAASC,EAAT,GAA0B,IAC/B9M,EAYC,EAZDA,UACAnd,EAWC,EAXDA,SACAkqB,EAUC,EAVDA,4BACAC,EASC,EATDA,oBACA7M,EAQC,EARDA,gBACA8M,EAOC,EAPDA,gCACAC,EAMC,EANDA,eACAC,EAKC,EALDA,cACAtI,EAIC,EAJDA,sBACAuI,EAGC,EAHDA,sBACAC,EAEC,EAFDA,uBACAC,EACC,EADDA,sBAEA,GAA6B,IAAA7M,WAArBpjB,EAAF,EAAEA,KAAMkB,EAAAA,EAAAA,WAEZwnB,EAEEqH,EAFFrH,yBAA0BK,EAExBgH,EAFwBhH,sBAAuBS,EAE/CuG,EAF+CvG,eAAgBE,EAE/DqG,EAF+DrG,gBACxDwG,EACPH,EADF5S,QAEF,GAA4C,IAAArB,WAAS,GAArD,SAAOqU,EAAD,KAAiBC,EAAjB,KACAC,GAAuC,IAAAC,+BAA8B,CAAEtwB,KAAAA,EAAMwoB,eAAgBmH,IAC7FY,GAAkB,IAAApvB,UAAQ,WAC9B,IAAIqvB,EAAiBZ,EAAkCS,EAAqCV,GAAuB,KAEnH,OADAa,EAAiBp2B,EAAAA,QAAE4nB,SAASwO,GAAkB,CAACA,GAAkB,GAC1DV,GAAiBJ,GAA+B,GAAKC,GAAuBD,EAA5EI,CAA2G9vB,EAAK2C,UAAUtF,8BAAhB,SAAuDmzB,IAAkBA,CAC3L,GAAE,CAACxwB,EAAM8vB,EAAeF,EAAiCS,EAAsCX,EAA6BC,IACvHc,EAA0B,YAAC,IAC/BxoB,EACI,EADJA,MAAOxF,EACH,EADGA,QADwB,EAE3B,EADYiuB,YAAAA,OAAW,OAAG,EAE9B/N,EAAU,CACRqL,SAAUzE,EAAiBd,eAC3BxgB,MAAAA,EACAxF,QAAAA,IAEEiuB,GACF/N,EAAU,CACRqL,SAAUzE,EAAiBoH,yBAC3B1oB,MAAM,EAAD,KACA7N,EAAAA,QAAEwjB,IAAIqS,EAAuB,CAAC1G,EAAiBoH,4BAD/C,QAEFnB,EAA2BoB,sBAAuB,IAErDnuB,SAAS,GAGd,EAEKouB,GAA4B,IAAAxuB,aAChC,UAAEyuB,UACCC,SAAAA,GACCX,EAAkBW,EACnB,GACDf,GAEF,CAACA,IA2EH,OAxEA,IAAA3R,YAAU,WACJmJ,IACEgC,IAAmBe,EAAAA,qBAAqBI,KAC1CkG,GAA0B,IAE1BA,EAA0BG,SAC1BZ,GAAkB,IAGvB,GAAE,CAAC5G,EAAgBmG,EAAqBkB,EAA2BrJ,KAEpE,IAAAnJ,YAAU,WACJmJ,GAAyB0I,GAC3BvN,EAAU,CACRqL,SAAUzE,EAAiBoH,yBAC3B1oB,MAAO,CAAC,EACRxF,SAAS,GAId,GAAE,CAACytB,EAA0B1I,KAE9B,IAAAnJ,YAAU,WACJmJ,IAA0B0I,IACxBxH,IAA6BmB,EAAAA,yBAAyBe,WACpDlB,IAAoBtvB,EAAAA,QAAEwjB,IAAIqS,EAAuB,CAAC1G,EAAiBoH,yBAA0BnB,EAA2ByB,kBAC1HtO,EAAU,CACRqL,SAAUzE,EAAiBoH,yBAC3B1oB,MAAM,EAAD,OACFunB,EAA2ByB,gBAAkBvH,GAC7C8F,EAA2B0B,gBAAkBf,EAAiBR,OAAsB9nB,GACpF2nB,EAA2B2B,aAAc,GAE5C1uB,SAAS,IAEF0tB,IAAmB/1B,EAAAA,QAAEwjB,IAAIqS,EAAuB,CAAC1G,EAAiBoH,yBAA0BnB,EAA2B2B,eAChIxO,EAAU,CACRqL,SAAUzE,EAAiBoH,yBAC3B1oB,MAAM,EAAD,KACA7N,EAAAA,QAAEwjB,IAAIqS,EAAuB,CAAC1G,EAAiBoH,4BAD/C,UAEFnB,EAA2B0B,gBAAkBvB,GAC7CH,EAA2B2B,YAAchB,IAE5C1tB,SAAS,IAIJsmB,IAA0B3uB,EAAAA,QAAEwjB,IAAIqS,EAAuB,CAAC1G,EAAiBoH,yBAA0BnB,EAA2B4B,sBACvIzO,EAAU,CACRqL,SAAUzE,EAAiBoH,yBAC3B1oB,MAAM,EAAD,OACFunB,EAA2B4B,oBAAsBrI,GACjDyG,EAA2B0B,gBAAkBf,EAAiBR,OAAsB9nB,GACpF2nB,EAA2B2B,YAAchB,GAE5C1tB,SAAS,IAEF0tB,IAAmB/1B,EAAAA,QAAEwjB,IAAIqS,EAAuB,CAAC1G,EAAiBoH,yBAA0BnB,EAA2B2B,eAChIxO,EAAU,CACRqL,SAAUzE,EAAiBoH,yBAC3B1oB,MAAM,EAAD,OACFunB,EAA2B4B,oBAAsBrI,GACjDyG,EAA2B0B,gBAAkBvB,GAC7CH,EAA2B2B,YAAchB,GAE5C1tB,SAAS,IAKhB,GAAE,CAAC+kB,EAAuB0I,EAA0BC,EAAgBpH,EAAuBW,IAEvFmG,EAiCH,+BAAK5vB,UAAU,0BACb,wBAAC,EAAAoxB,sBAAD,CACE7rB,SAAUA,EACVwoB,SAAUA,EACVyC,wBAAyBA,EACzBd,oBAAqBA,EACrB7M,gBAAiBA,EACjByN,gBAAiBA,EACjBe,2BAA4BxB,EAC5BC,sBAAuBA,EACvBI,eAAgBA,KAzClB,gDACE,wBAAC,EAAAb,eAAD,CACE9pB,SAAUA,EACVxB,gBAAiB,CACf5B,WAAa6F,SAAAA,GAKX,OAJAwoB,EAAwB,CACtBxoB,MAAOA,EAAMzF,KAAKwrB,GAClBvrB,QAASwF,EAAMxF,UAEVwF,CACR,EACDhE,MAAO+pB,EACPxrB,KAAK,EAAD,GAAKwrB,EAAW2B,GACpBzrB,OAAQ0pB,EACR9K,gBAAAA,EACA9iB,KAAMkB,EACNqvB,gBAAAA,EACAgB,iBAAiB,EACjBD,2BAA4BxB,KAG/BK,GAAkB3G,IAAmBe,EAAAA,qBAAqBG,KACzD,wBAAC,EAAA8G,wBAAD,CACExxB,KAAMA,EACN0pB,gBAAiBA,EACjB+H,QAAS,WAAF,OAAQhB,EAAwB,CAAExoB,MAAOyhB,EAAiBgH,aAAa,GAAxC,IAmBjD,CAEDjB,EAAiB1pB,UAAY,CAC3B/F,KAAM,UAAUgG,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,KAAK5E,WAC1B6E,aAAcF,EAAAA,QAAUC,KAAK5E,aAC5BA,WACHowB,QAAS,UAAU1rB,MAAM,CACvBrD,UAAWsD,EAAAA,QAAUC,KAAK5E,aAE5BqhB,UAAW1c,EAAAA,QAAUC,KAAK5E,WAC1BkE,SAAUS,EAAAA,QAAUI,KACpBqpB,4BAA6BzpB,EAAAA,QAAUM,UAAU,CAC/CN,EAAAA,QAAUG,OACVH,EAAAA,QAAUK,SAEZqpB,oBAAqB1pB,EAAAA,QAAUM,UAAU,CACvCN,EAAAA,QAAUG,OACVH,EAAAA,QAAUK,SAEZwc,gBAAiB7c,EAAAA,QAAUI,KAC3BupB,gCAAiC3pB,EAAAA,QAAUI,KAC3CwpB,eAAgB5pB,EAAAA,QAAUI,KAC1BypB,cAAe7pB,EAAAA,QAAUI,KACzBmhB,sBAAuBvhB,EAAAA,QAAUI,KACjC0pB,sBAAuB,UAAU/pB,MAAM,CACrCwjB,eAAgBvjB,EAAAA,QAAUG,OAC1BsjB,gBAAiBzjB,EAAAA,QAAUK,SAE7B0pB,uBAAwB/pB,EAAAA,QAAUK,OAClC2pB,sBAAuBhqB,EAAAA,QAAUD,MAAM,CAAC,IAG1CypB,EAAiB3oB,aAAe,CAC9B4qB,QAAS,KACTlsB,UAAU,EACVkqB,6BAA8B,EAC9BC,oBAAqB,KACrBC,iCAAiC,EACjC9M,iBAAiB,EACjB+M,gBAAgB,EAChBC,eAAe,EACftI,uBAAuB,EACvBuI,sBAAuB,CAAC,EACxBC,uBAAwB,IACxBC,sBAAuB,KAZzBR,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,sBAAAA,EC5NA,MAYA,8bAZA,OACA,UACA,UACA,QACA,SACA,OACA,QACA,OAEA,SACA,SACA,SACA,4LAEA,MAA+C7vB,EAAAA,UAAvCguB,EAAF,EAAEA,kBAAmB+D,EAAAA,EAAAA,gBAC3B,EAAyD3N,EAAAA,oBAAjDiI,EAAF,EAAEA,oBAAqB2F,EAAAA,EAAAA,wBACvB/D,EAAoB,CACxBgE,UAAW,EACXC,UAAW,GAGN,SAAST,EAAT,GAA+B,IACpCrD,EASC,EATDA,SACAyC,EAQC,EARDA,wBACAjrB,EAOC,EAPDA,SACAmqB,EAMC,EANDA,oBACA7M,EAKC,EALDA,gBACAyN,EAIC,EAJDA,gBACAe,EAGC,EAHDA,2BACAvB,EAEC,EAFDA,sBACAI,EACC,EADDA,eAEA,GAA6B,IAAA/M,WAArBpjB,EAAF,EAAEA,KAAMkB,EAAAA,EAAAA,WACd,GAA0C,IAAA4a,UAAS,MAAnD,SAAOoS,EAAD,KAAgBC,EAAhB,KACN,GAA4C,IAAArS,UAASmQ,EAAoB2F,EAAwB,CAAEjC,oBAAAA,EAAqB3vB,KAAAA,KAAW,KAAO2vB,GAA1I,SAAOnH,EAAD,KAAiBuJ,EAAjB,KACN,GAA0D,IAAAjW,WAAS,GAAnE,SAAOwN,EAAD,KAAwB0I,EAAxB,KACAvV,GAAU,IAAA0H,kBAAiBwK,EAAAA,6BAEjC,IAAAtQ,YAAU,WACJ6P,IAAkBL,EAAkBgE,UACtCpB,EAAwB,CAAExoB,MAAO0pB,EAAiBlvB,SAAS,IAClDyrB,IAAkBL,EAAkBiE,WAC7CrB,EAAwB,CAAExoB,MAAOugB,EAAgB/lB,QAAS6mB,GAE7D,GAAE,CAACd,EAAgB0F,EAAe5E,KAEnC,IAAAjL,YAAU,aAE0BjkB,EAAAA,QAAE0xB,SAAS6D,IAAwBv1B,EAAAA,QAAE4nB,SAAS2N,KAChDv1B,EAAAA,QAAEyyB,OAAOqB,IAAmBjC,EAAoB2F,EAAwB,CAAEjC,oBAAAA,EAAqB3vB,KAAAA,KAC7HmuB,EAAiBN,EAAkBgE,YAEnCE,EAAkBpC,GAClBxB,EAAiBN,EAAkBiE,WAEtC,GAAE,CAACnC,IAEJ,IAAMsC,EAA0B/D,IAAkBL,EAAkBgE,UAC9DK,EAAwBhE,IAAkBL,EAAkBiE,WAAatsB,EAE7EgkB,EACEuG,EADFvG,eAAgBE,EACdqG,EADcrG,gBAAiBC,EAC/BoG,EAD+BpG,WAAYf,EAC3CmH,EAD2CnH,QAG/C,OACE,wBAAC,UAAMyG,SAAP,KACE,wBAAC,EAAAH,MAAD,CAAOjvB,UAAU,kBAAkBuF,SAAUA,EAAUJ,QAAS6sB,EAAyB5sB,SAAU,WAAF,OAAQ8oB,EAAiBN,EAAkBgE,UAAnB,GACtH7xB,EAAK2C,UAAUtF,aACf40B,GACC,wBAAC,EAAA3tB,gBAAD,KACE,mCACE,oCAAOtE,EAAK2C,UAAUtF,6CAK9B,wBAAC,EAAA6xB,MAAD,CAAOjvB,UAAU,eAAeuF,SAAUA,EAAUJ,QAAS8oB,IAAkBL,EAAkBiE,UAAWzsB,SAAU,WAAF,OAAQ8oB,EAAiBN,EAAkBiE,UAAnB,GACzI9xB,EAAK2C,UAAUtF,iBAElB,+BAAK4C,UAAWwc,EAAQ2I,YACtB,wBAAC,EAAAkK,eAAD,CACErvB,UAAU,YACVuF,SAAU0sB,EACVluB,gBAAiB,CACf5B,WAAa6F,SAAAA,GAGX,OAFA8pB,EAAkB9pB,EAAMzF,KAAKwrB,IAC7BgE,EAAyB/pB,EAAMxF,SACxBwF,CACR,EACDhE,MAAO+pB,EACPxrB,KAAK,EAAD,GAAKwrB,EAAWxF,GACpBtkB,OAAQ0pB,EACR9K,gBAAAA,EACA9iB,KAAMkB,EACNqvB,gBAAiB2B,EAAwB,GAAK3B,EAC9ChB,eAAgB2C,EAChBX,iBAAiB,EACjBD,2BAAAA,KAGHnB,GAAkB3G,IAAmBe,EAAAA,qBAAqBC,SACzD,wBAAC,EAAA2H,qBAAD,CACEnyB,KAAMA,EACNyxB,QAAS,WAAF,OAAQhB,EAAwB,CAAExoB,MAAOyhB,EAAiBgH,aAAa,GAFhF,EAGEhH,gBAAiBA,EACjBd,QAASA,IAEZuH,GAAkB3G,IAAmBe,EAAAA,qBAAqBE,SACzD,wBAAC,EAAA2H,4BAAD,CACEpyB,KAAMA,EACN2pB,WAAYA,KAIvB,CAED0H,EAAsBtrB,UAAY,CAChC0qB,wBAAyBxqB,EAAAA,QAAUC,KAAK5E,WACxCkE,SAAUS,EAAAA,QAAUI,KACpBspB,oBAAqB1pB,EAAAA,QAAUM,UAAU,CAACN,EAAAA,QAAUK,OAAQL,EAAAA,QAAUG,SACtE0c,gBAAiB7c,EAAAA,QAAUI,KAAK/E,WAChCivB,gBAAiBtqB,EAAAA,QAAUU,QAAQV,EAAAA,QAAUG,QAC7C4nB,SAAU/nB,EAAAA,QAAUG,OAAO9E,WAC3ByuB,sBAAuB,UAAU/pB,MAAM,CACrCwjB,eAAgBvjB,EAAAA,QAAUG,OAC1BsjB,gBAAiBzjB,EAAAA,QAAUK,OAC3BqjB,WAAY1jB,EAAAA,QAAUK,UAI1B+qB,EAAsBvqB,aAAe,CACnCtB,UAAU,EACVmqB,oBAAqB,KACrBY,gBAAiB,GACjBR,sBAAuB,CAAC,EAJ1BsB,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,OAAAA,eAAAA,EAAAA,0BAAAA,CAAAA,YAAAA,EAAAA,IAAAA,WAAAA,OAAAA,EAAAA,uBAAAA,IAAAA,OAAAA,eAAAA,EAAAA,uBAAAA,CAAAA,YAAAA,EAAAA,IAAAA,WAAAA,OAAAA,EAAAA,oBAAAA,IAAAA,OAAAA,eAAAA,EAAAA,8BAAAA,CAAAA,YAAAA,EAAAA,IAAAA,WAAAA,OAAAA,EAAAA,2BAAAA,IAAAA,OAAAA,eAAAA,EAAAA,0BAAAA,CAAAA,YAAAA,EAAAA,IAAAA,WAAAA,OAAAA,EAAAA,uBAAAA,IAAAA,OAAAA,eAAAA,EAAAA,wBAAAA,CAAAA,YAAAA,EAAAA,IAAAA,WAAAA,OAAAA,EAAAA,qBAAAA,IClIA,aACA,SACA,SACA,SACA,6HCJA,cACA,UAEA,QAEA,4DAEO,IAAMgB,EAA0B,gBACrCryB,EADqC,EACrCA,KACAyxB,EAFqC,EAErCA,QACA5J,EAHqC,EAGrCA,mBAHqC,OAKrC,wBAAC,EAAAyK,qCAAD,CAAsCtyB,KAAMA,EAAMyxB,QAASA,EAASxxB,UAAU,6BAC5E,wBAAC,EAAAsE,cAAD,CACEC,MAAO,CACLqjB,mBAAoB7nB,EAAK2kB,WAAWkD,GACpC0K,KAAM7sB,SAAAA,GAAI,OAAI,iCAAIA,EAAJ,GAEhBhB,SAAU1E,EAAK2C,UAAUtF,8GAXQ,EAAhC,4BAgBPg1B,EAAwBtsB,UAAY,CAClC/F,KAAM,UAAUgG,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,KAAK5E,WAC1BqjB,WAAY1e,EAAAA,QAAUC,KAAK5E,aAC1BA,WACHumB,mBAAoB5hB,EAAAA,QAAU4d,WAAWrB,MAAMlhB,WAC/CmwB,QAASxrB,EAAAA,QAAUC,MAGrBmsB,EAAwBvrB,aAAe,CACrC2qB,aAAS5pB,EADXwqB,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,0CAAAA,EChCA,cACA,UACA,UACA,WAEA,SACA,SACA,OACA,QAEA,6DAEA,IAAAG,eAAc,CACZC,MAAO,CACLC,SAAU,wBAAC,EAAAC,UAAD,CAAWC,MAAM,mBAIxB,IAAMN,EAAuC,YAAC,IACnDtyB,EAII,EAJJA,KACAyxB,EAGI,EAHJA,QACAxxB,EAEI,EAFJA,UACAgvB,EACI,EADJA,SAEMxS,GAAU,IAAA0H,kBAAiB0O,EAAAA,+CACjC,OACE,wBAAC,EAAAC,WAAD,CACE7yB,WAAW,aAAW,gCAAiCA,EAAWwc,EAAQyJ,2BAC1E6M,QACE34B,EAAAA,QAAEW,WAAW02B,IACX,wBAAC,EAAAuB,iBAAD,CAAkBC,QAASxB,EAASxxB,UAAWwc,EAAQkK,wBACpD3mB,EAAK2C,UAAUtF,UAItB61B,aAAW,EACXC,oBAAqB,CACnBC,SAAU,WACVnzB,WAAW,aAAW,gBAAiBwc,EAAQgK,wBAGhDwI,EAGN,EA1BM,yCA4BPqD,EAAqCvsB,UAAY,CAC/C/F,KAAM,UAAUgG,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,KAAK5E,aACzBA,WACHmwB,QAASxrB,EAAAA,QAAUC,KACnBjG,UAAWgG,EAAAA,QAAUG,OACrB6oB,SAAUhpB,EAAAA,QAAUhJ,KAAKqE,YAG3BgxB,EAAqCxrB,aAAe,CAClD2qB,aAAS5pB,EACT5H,eAAW4H,EAFbyqB,EAAAA,IAAAA,SAAAA,EAAAA,GCvDA54B,EAAOC,QAAP,gBAAAD,EAAA,GAAAA,EAAA,wBAAAA,EAAA,+GCCA,UAEA,QAEA,4DAEO,IAAMy4B,EAAuB,gBAClCnyB,EADkC,EAClCA,KACAyxB,EAFkC,EAElCA,QACA/H,EAHkC,EAGlCA,gBACAd,EAJkC,EAIlCA,QAJkC,OAMlC,wBAAC,EAAA0J,qCAAD,CAAsCtyB,KAAMA,EAAMyxB,QAASA,EAASxxB,UAAU,yBAC5E,wBAAC,EAAAsE,cAAD,CACEC,MAAO,CACLklB,gBAAiB1pB,EAAKqzB,cAAc3J,EAAiB,CAAE4J,sBAAuB,EAAGC,sBAAuB,IACxG3K,QAAS5oB,EAAK2kB,WAAWiE,IAE3BlkB,SAAU1E,EAAK2C,UAAUtF,uHAZK,EAA7B,yBAiBP80B,EAAqBpsB,UAAY,CAC/B/F,KAAM,UAAUgG,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,KAAK5E,WAC1B+xB,cAAeptB,EAAAA,QAAUC,KAAK5E,aAC7BA,WACHooB,gBAAiBzjB,EAAAA,QAAUK,OAAOhF,WAClCmwB,QAASxrB,EAAAA,QAAUC,KACnB0iB,QAAS3iB,EAAAA,QAAU4d,WAAWrB,MAAMlhB,YAGtC6wB,EAAqBrrB,aAAe,CAClC2qB,aAAS5pB,EADXsqB,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,iCAAAA,EClCA,cACA,UAEA,QAEA,4DAEO,IAAMC,EAA8B,gBACzCpyB,EADyC,EACzCA,KACA2pB,EAFyC,EAEzCA,WAFyC,OAIzC,wBAAC,EAAA2I,qCAAD,CAAsCtyB,KAAMA,EAAMC,UAAU,iCACzD0pB,EAAa,EACV3pB,EAAK2C,UAAUtF,4DACf,wBAAC,EAAAkH,cAAD,CACEC,MAAO,CACPmlB,WAAYA,EAAW2C,YAEvB5nB,SAAU1E,EAAK2C,UAAUtF,iFAXQ,EAApC,gCAiBP+0B,EAA4BrsB,UAAY,CACtC/F,KAAM,UAAUgG,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,KAAK5E,aACzBA,WACHqoB,WAAY1jB,EAAAA,QAAUK,OAAOhF,WAJ/B8wB,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,6BAAAA,ECxBA,cACA,UAEA,QAEA,4DAEO,IAAMZ,EAA0B,gBACrCxxB,EADqC,EACrCA,KACAyxB,EAFqC,EAErCA,QACA/H,EAHqC,EAGrCA,gBAHqC,OAKrC,wBAAC,EAAA4I,qCAAD,CAAsCtyB,KAAMA,EAAMyxB,QAASA,EAASxxB,UAAU,6BAC5E,wBAAC,EAAAsE,cAAD,CACEC,MAAO,CACLklB,gBAAiB1pB,EAAKqzB,cAAc3J,EAAiB,CAAE4J,sBAAuB,EAAGC,sBAAuB,KAE1G7uB,SAAU1E,EAAK2C,UAAUtF,4FAVQ,EAAhC,4BAePm0B,EAAwBzrB,UAAY,CAClC/F,KAAM,UAAUgG,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,KAAK5E,WAC1B+xB,cAAeptB,EAAAA,QAAUC,KAAK5E,aAC7BA,WACHooB,gBAAiBzjB,EAAAA,QAAUK,OAAOhF,WAClCmwB,QAASxrB,EAAAA,QAAUC,MAGrBsrB,EAAwB1qB,aAAe,CACrC2qB,aAAS5pB,EADX2pB,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,2BAAAA,EC/BA,cACA,UACA,WAEA,OACA,OACA,QAEA,SACA,SACA,4DAEA,MAAoDxN,EAAAA,oBAA5CsH,EAAF,EAAEA,mBAAoBW,EAAAA,EAAAA,oBACpBuH,EAA6B5zB,EAAAA,UAA7B4zB,yBAEKC,EAAwB,YAAC,IACpCzzB,EAII,EAJJA,KACAyxB,EAGI,EAHJA,QACAiC,EAEI,EAFJA,oBACA7V,EACI,EADJA,aAEMpB,GAAU,IAAA0H,kBAAiBwP,EAAAA,gCAG/BtL,EAEEqL,EAFFrL,SAAU4C,EAERyI,EAFQzI,SAAUxC,EAElBiL,EAFkBjL,eACpB4E,EACEqG,EADFrG,gBAAiBC,EACfoG,EADepG,eAAgBC,EAC/BmG,EAD+BnG,UAG7B1rB,EAAawrB,EACf,CACA,CAAEppB,MAAOjE,EAAK2C,UAAUtF,qBAA4B4K,MAAOjI,EAAK2kB,WAAW0I,IAC3E,CAAEppB,MAAOjE,EAAK2C,UAAUtF,mBAA0B4K,MAAOjI,EAAK2C,UAAUtF,gBACxE,CAAE4G,MAAOjE,EAAK2C,UAAUtF,oBAA2B4K,MAAOjI,EAAKyE,eAAe6oB,EAAgBzP,IAC9F,CAAE5Z,MAAOjE,EAAK2C,UAAUtF,aAAoB4K,MAAOjI,EAAK2C,UAAU6wB,EAAyBjG,MACzF,CACF,CAAEtpB,MAAOjE,EAAK2C,UAAUtF,cAAqB4K,MAAOjI,EAAK2kB,WAAW0D,IACpE,CAAEpkB,MAAOjE,EAAK2C,UAAUtF,YAAmB4K,MAAOqjB,EAAmBL,GAAYjrB,EAAK2C,UAAUtF,eAAuB2C,EAAK2kB,WAAWsG,IACvI,CAAEhnB,MAAOjE,EAAK2C,UAAUtF,UAAiB4K,MAAOgkB,EAAoBxD,GAAkBzoB,EAAK2C,UAAUtF,aAAqB2C,EAAKyE,eAAegkB,EAAgB5K,KAGlK,OACE,wBAAC,EAAAyU,qCAAD,CAAsCtyB,KAAMA,EAAMyxB,QAASA,EAASxxB,WAAW,aAAW,yBAA0Bwc,EAAQoK,YAC1H,+BAAK5mB,WAAW,aAAW,iCAAkCwc,EAAQsK,UACnE,gCAAM9mB,UAAU,sCAAsCD,EAAK2C,UAAUtF,qGACrE,wBAAC,EAAAu2B,yBAAD,CAA0B/xB,WAAYA,KAI7C,EAjCM,0BAmCP4xB,EAAsB1tB,UAAY,CAChC/F,KAAM,UAAUgG,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,KAAK5E,WAC1BqjB,WAAY1e,EAAAA,QAAUC,KAAK5E,aAC1BA,WACHmwB,QAASxrB,EAAAA,QAAUC,KACnBwtB,oBAAqBztB,EAAAA,QAAUD,MAAM,CAAC,GAAG1E,WACzCuc,aAAc5X,EAAAA,QAAUG,OAAO9E,YAGjCmyB,EAAsB3sB,aAAe,CACnC2qB,aAAS5pB,EADX4rB,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,8BAAAA,EC5DA,cACA,UACA,WAEA,OAEA,4DAEO,IAAMG,EAA2B,YAAC,IACvC/xB,EACI,EADJA,WAEM4a,GAAU,IAAA0H,kBAAiB0P,EAAAA,mCAE3BC,EAAejyB,EAAWjG,KAAI,gBAAGqI,EAAH,EAAGA,MAAOgE,EAAV,EAAUA,MAAV,OAClC,+BAAKpE,IAAKI,EAAOhE,UAAU,gBACzB,+BAAKA,UAAU,sBAAsBgE,GACrC,+BAAKhE,WAAW,aAAW,qBAAsBwc,EAAQyK,gBAAiBjf,GAH1C,IAOpC,OACE,+BAAKhI,WAAW,aAAW,4BAA6Bwc,EAAQoK,YAC7DiN,EAGN,EAjBM,6BAmBPF,EAAyB7tB,UAAY,CACnClE,WAAY,UAAU8E,QAAQ,UAAUX,MAAM,CAC5C/B,MAAOgC,EAAAA,QAAUG,OAAO9E,WACxB2G,MAAOhC,EAAAA,QAAUG,OAAO9E,cACtBA,WAJNsyB,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,qBAAAA,EC3BA,MAOA,8bAPA,OACA,UACA,WACA,SACA,OACA,OACA,SACA,4LAEA,IAAM5F,EAAW,uBACTJ,EAAsBhuB,EAAAA,UAAtBguB,kBACAmG,EAAe/P,EAAAA,oBAAf+P,WAED,SAASC,EAAT,GAA8B,IACnCrR,EAKC,EALDA,UACAnd,EAIC,EAJDA,SACAyuB,EAGC,EAHDA,2BACAC,EAEC,EAFDA,gBACAC,EACC,EADDA,0BAEA,GAA6B,IAAA/Q,WAArBpjB,EAAF,EAAEA,KAAMkB,EAAAA,EAAAA,WACRub,GAAU,IAAA0H,kBAAiBiQ,EAAAA,mBAC3BC,GAA+B,IAAAlzB,UAAQ,kBAAM4yB,EAAW,CAAE/zB,KAAAA,EAAMiI,MAAOgsB,GAAxC,GAAuE,CAACj0B,EAAMi0B,IAG7GK,EAAiB,UAAML,EAAN,YAAoCC,GAsB3D,OAVA,IAAA7V,YAAU,kBACR,WACEsE,EAAU,CACR1a,MAAO,KACPxF,SAAS,GAEZ,CANH,GAQE,IAGA,wBAAC,EAAA6sB,eAAD,CACEzrB,IAAKywB,EACL9uB,SAAUA,EACVvF,WAAW,aAAWwc,EAAQ4I,YAAa,2BAC3CrhB,gBAAiB,CACfuwB,UA1BkB,SAACtsB,EAAOqb,GAC9B,OAJsBrb,SAAAA,GAAK,OAAI8rB,EAAW,CAAE/zB,KAAAA,EAAMiI,MAAOisB,IAAqB,GAAqC,IAAhCH,EAAW,CAAE/zB,KAAAA,EAAMiI,MAAAA,GALvG,CASKusB,CAAgBvsB,GACX,CAACjI,EAAK2C,UAAUtF,gDANgB4K,SAAAA,GAAK,OAAIosB,EAA+B,GAAKN,EAAW,CAAE/zB,KAAAA,EAAMiI,MAAAA,KAAYosB,CAAvH,CAQMI,CAAmCxsB,GAC9B,CAACjI,EAAK2C,UAAUtF,+DAElBimB,EAAiBrb,EACzB,EAmBK7F,WAAa6F,SAAAA,GAKX,OAJA0a,EAAU,CACR1a,MAAOA,EAAMzF,KAAKwrB,GAClBvrB,QAASwF,EAAMxF,UAEVwF,CACR,EACDhE,MAAO+pB,EACPxrB,KAAK,EAAD,GAAKwrB,EAAWmG,GACpBjwB,OAAQ0pB,EACR9K,iBAAiB,EACjB9iB,KAAMkB,EACNqwB,iBAAiB,IAGxB,CAEDyC,EAAqBjuB,UAAY,CAC/B4c,UAAW1c,EAAAA,QAAUC,KAAK5E,WAC1BkE,SAAUS,EAAAA,QAAUI,KACpB4tB,2BAA4BhuB,EAAAA,QAAUM,UAAU,CAC9CN,EAAAA,QAAUG,OACVH,EAAAA,QAAUK,SAEZ4tB,gBAAiBjuB,EAAAA,QAAUM,UAAU,CACnCN,EAAAA,QAAUG,OACVH,EAAAA,QAAUK,SAEZ6tB,0BAA2BluB,EAAAA,QAAUM,UAAU,CAC7CN,EAAAA,QAAUG,OACVH,EAAAA,QAAUK,UAId0tB,EAAqBltB,aAAe,CAClCtB,UAAU,EACVyuB,2BAA4B,KAC5BC,gBAAiB,IACjBC,0BAA2B,IAJ7BH,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,SAAAA,ECxFA,cACA,UAEA,OACA,QACA,QACA,OACA,SACA,SACA,4DAEA,IAAQrC,EAAoB/xB,EAAAA,UAApB+xB,gBAED,SAAS+C,EAAT,GAAkB,IACvB10B,EAWC,EAXDA,KACAW,EAUC,EAVDA,aACAuzB,EASC,EATDA,gBACAS,EAQC,EARDA,mBACAC,EAOC,EAPDA,oBACAC,EAMC,EANDA,qBACAV,EAKC,EALDA,0BACAW,EAIC,EAJDA,6BACArE,EAGC,EAHDA,wBACAsE,EAEC,EAFDA,yBACAd,EACC,EADDA,2BAEMxX,GAAU,IAAA0H,kBAAiBiQ,EAAAA,mBAEjC,OACE,+BAAKn0B,UAAWwc,EAAQ+I,UACtB,+BAAKvlB,UAAU,OAAOD,EAAK2C,UAAUtF,kDACjCw3B,GACA,+BAAK50B,UAAU,oBACf,wBAAC,EAAA0yB,UAAD,CAAWC,MAAM,mBACf,wBAAC,EAAAruB,cAAD,CACEC,MAAO,CACLwwB,mBAAoB,wBAAC,EAAAC,iBAAD,CAClBzvB,SAAUmvB,EACVT,gBAAiBA,EACjBvR,UAAWiS,EACXT,0BAA2BA,EAC3BF,2BAA4BA,KAGhCvvB,SAAU1E,EAAK2C,UAAUtF,gEAI9B03B,GACD,+BAAK90B,UAAU,oBACb,wBAAC,EAAA0yB,UAAD,CAAWC,MAAM,mBACjB,wBAAC,EAAAruB,cAAD,CACEC,MAAO,CACL0wB,eAAgB,wBAAC,EAAAlB,qBAAD,CACdrR,UAAW8N,EACXjrB,SAAUsvB,EACVb,2BAA4BA,EAC5BC,gBAAiBA,EACjBC,0BAA2BA,IAE7BxzB,aAAAA,GAEF+D,SAAU1E,EAAK2C,UAAUtF,0DAKpC,CAEDq3B,EAAS3uB,UAAY,CACnB/F,KAAM,UAAUgG,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,KAAK5E,WAC1B6E,aAAcF,EAAAA,QAAUC,KAAK5E,aAC5BA,WACHX,aAAcsF,EAAAA,QAAUG,OAAO9E,WAC/B4yB,gBAAiBjuB,EAAAA,QAAUM,UAAU,CACnCN,EAAAA,QAAUG,OACVH,EAAAA,QAAUK,SAEZquB,mBAAoB1uB,EAAAA,QAAUI,KAC9BuuB,oBAAqB3uB,EAAAA,QAAUC,KAC/B2uB,qBAAsB5uB,EAAAA,QAAUI,KAChC8tB,0BAA2BluB,EAAAA,QAAUM,UAAU,CAC7CN,EAAAA,QAAUG,OACVH,EAAAA,QAAUK,SAEZwuB,6BAA8B7uB,EAAAA,QAAUI,KACxCoqB,wBAAyBxqB,EAAAA,QAAUC,KACnC6uB,yBAA0B9uB,EAAAA,QAAUI,KACpC4tB,2BAA4BhuB,EAAAA,QAAUM,UAAU,CAC9CN,EAAAA,QAAUG,OACVH,EAAAA,QAAUK,UAIdouB,EAAS5tB,aAAe,CACtBotB,gBAAiB,KACjBS,oBAAoB,EACpBC,oBAAqB,KACrBC,sBAAsB,EACtBV,0BAA2B,KAC3BW,8BAA8B,EAC9BrE,wBAAyB,KACzBsE,0BAA0B,EAC1Bd,2BAA4BtC,EAT9B+C,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,iBAAAA,EC/FA,MAOA,8bAPA,OACA,UACA,WACA,SACA,OACA,OACA,SACA,4LAEA,IAAM1G,EAAW,aACjB,EAA+CpuB,EAAAA,UAAvCguB,EAAF,EAAEA,kBAAmB+D,EAAAA,EAAAA,gBACnBoC,EAAe/P,EAAAA,oBAAf+P,WAED,SAASkB,EAAT,GAA0B,IAC/BtS,EAKC,EALDA,UACAnd,EAIC,EAJDA,SACA0uB,EAGC,EAHDA,gBACAC,EAEC,EAFDA,0BACAF,EACC,EADDA,2BAEMxX,GAAU,IAAA0H,kBAAiBiQ,EAAAA,mBACjC,GAA6B,IAAAhR,WAArBpjB,EAAF,EAAEA,KAAMkB,EAAAA,EAAAA,WAORozB,EAAiB,UAAMH,EAAN,YAAmCF,GAsB1D,OAVA,IAAA5V,YAAU,kBACR,WACEsE,EAAU,CACR1a,MAAO,KACPxF,SAAS,GAEZ,CANH,GAQE,IAGA,wBAAC,EAAA6sB,eAAD,CACEzrB,IAAKywB,EACL9uB,SAAUA,EACVvF,WAAW,aAAWwc,EAAQ4I,YAAa,sBAC3CrhB,gBAAiB,CACfuwB,UA1BkB,SAACtsB,EAAOqb,GAC9B,OAJuBrb,SAAAA,GAAK,OAAI8rB,EAAW,CAAE/zB,KAAAA,EAAMiI,MAAAA,IAAW,EAAhE,CAIMktB,CAAiBltB,GACZ,CAACjI,EAAK2C,UAAUtF,4DATC4K,SAAAA,GAAK,OAC/B8rB,EAAW,CAAE/zB,KAAAA,EAAMiI,MAAOksB,IAA+B,GACtDJ,EAAW,CAAE/zB,KAAAA,EAAMiI,MAAOgsB,MAAkCtC,GAC5B,IAAhCoC,EAAW,CAAE/zB,KAAAA,EAAMiI,MAAAA,GAHxB,CAWMmtB,CAAoBntB,GACf,CAACjI,EAAK2C,UAAUtF,oDAElBimB,EAAiBrb,EACzB,EAmBK7F,WAAa6F,SAAAA,GAKX,OAJA0a,EAAU,CACR1a,MAAOA,EAAMzF,KAAKwrB,GAClBvrB,QAASwF,EAAMxF,UAEVwF,CACR,EACDhE,MAAO+pB,EACPxrB,KAAK,EAAD,GAAKwrB,EAAWkG,GACpBhwB,OAAQ0pB,EACR9K,iBAAiB,EACjB9iB,KAAMkB,EACNqwB,iBAAiB,IAIxB,CAED0D,EAAiBlvB,UAAY,CAC3B4c,UAAW1c,EAAAA,QAAUC,KAAK5E,WAC1BkE,SAAUS,EAAAA,QAAUI,KACpB6tB,gBAAiBjuB,EAAAA,QAAUM,UAAU,CACnCN,EAAAA,QAAUG,OACVH,EAAAA,QAAUK,SAEZ6tB,0BAA2BluB,EAAAA,QAAUM,UAAU,CAC7CN,EAAAA,QAAUG,OACVH,EAAAA,QAAUK,SAEZ2tB,2BAA4BhuB,EAAAA,QAAUM,UAAU,CAC9CN,EAAAA,QAAUG,OACVH,EAAAA,QAAUK,UAId2uB,EAAiBnuB,aAAe,CAC9BtB,UAAU,EACV0uB,gBAAiB,IACjBC,0BAA2B,IAC3BF,2BAA4B,KAJ9BgB,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,mBAAAA,EC5FA,IAQA,EARA,EAQA,8bARA,OACA,GAOA,EAPA,OAOA,2BALA,QACA,QACA,OACA,QACA,OACA,yIAEA,IAAQlB,EAAe/P,EAAAA,oBAAf+P,WAED,SAASsB,EAAT,GAA4B,IACjCr1B,EAOC,EAPDA,KACAW,EAMC,EANDA,aACAuzB,EAKC,EALDA,gBACAW,EAIC,EAJDA,qBACAV,EAGC,EAHDA,0BACAY,EAEC,EAFDA,yBACAd,EACC,EADDA,2BAEMxX,GAAU,IAAA0H,kBAAiBiQ,EAAAA,mBAC3BC,GAA+B,IAAAlzB,UAAQ,kBAAM4yB,EAAW,CAAE/zB,KAAAA,EAAMiI,MAAOgsB,GAAxC,GAAuE,CAACj0B,EAAMi0B,IAC7GqB,GAA0B,IAAAn0B,UAC9B,kBAAMkzB,EAA+B,GAAKN,EAAW,CAAE/zB,KAAAA,EAAMiI,MAAOksB,KAAgCE,CADtE,GAE9B,CAACF,EAA2Bn0B,EAAMq0B,IAGpC,OACE,+BAAKp0B,UAAWwc,EAAQ+I,UACtB,+BAAKvlB,UAAU,OACb,wBAAC,EAAAsE,cAAD,CACEC,MAAO,CACL+wB,KAAM7vB,SAAAA,GAAI,OAAI,iCAAIA,EAAJ,GAEhBhB,SAAU1E,EAAK2C,UAAUtF,mKAG1Bw3B,GACD,+BAAK50B,UAAU,oBACb,wBAAC,EAAA0yB,UAAD,CAAWC,MAAM,mBAChB5yB,EAAK2C,UAAUtF,4DAAmE,CAAE23B,mBAAoBd,KAE1Ga,GACD,+BAAK90B,UAAU,oBACb,wBAAC,EAAA0yB,UAAD,CAAWC,MAAM,mBAChB5yB,EAAK2C,UAAUtF,sDAA6D,CAAE63B,eAAgBf,EAA2BxzB,aAAAA,KAE3H20B,GACD,wBAAC,EAAAE,mBAAD,KACGx1B,EAAK2C,UAAUtF,6FAIzB,CAEDg4B,EAAmBtvB,UAAY,CAC7B/F,KAAM,UAAUgG,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,KAAK5E,WAC1B6E,aAAcF,EAAAA,QAAUC,KAAK5E,aAC5BA,WACHX,aAAcsF,EAAAA,QAAUG,OAAO9E,WAC/B4yB,gBAAiBjuB,EAAAA,QAAUM,UAAU,CACnCN,EAAAA,QAAUG,OACVH,EAAAA,QAAUK,SAEZuuB,qBAAsB5uB,EAAAA,QAAUI,KAChC8tB,0BAA2BluB,EAAAA,QAAUM,UAAU,CAC7CN,EAAAA,QAAUG,OACVH,EAAAA,QAAUK,SAEZyuB,yBAA0B9uB,EAAAA,QAAUI,MAGtCgvB,EAAmBvuB,aAAe,CAChCotB,gBAAiB,KACjBW,sBAAsB,EACtBV,0BAA2B,KAC3BY,0BAA0B,EAJ5BM,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,mBAAAA,EC1EO,gBAAsB,CAC3B,aAAch4B,aACd,iBAAkBA,iBAClBo4B,2BAA4Bp4B,gDAC5Bq4B,qCAAsCr4B,+JACtCs4B,gCAAiCt4B,4DACjCu4B,+BAAgCv4B,sDAChCw4B,oCAAqCx4B,gBACrCy4B,8DAA+Dz4B,iLAC/D04B,8DAA+D14B,yJAC/D24B,wDAAyD34B,uDACzD44B,mCAAoC54B,yBACpC64B,qCAAsC74B,0DACtC84B,uCAAwC94B,kDACxC+4B,iDAAkD/4B,8CAClDg5B,sDAAuDh5B,6DACvDi5B,4CAA6Cj5B,4BAC7Ck5B,iDAAkDl5B,mBAClDm5B,kCAAmCn5B,cACnCo5B,kCAAmCp5B,eACnCq5B,mCAAoCr5B,kBACpCs5B,wDAAyDt5B,wCACzDu5B,kCAAmCv5B,YACnCw5B,wDAAyDx5B,2FACzDy5B,wBAAyBz5B,6CACzBgL,gCAAiChL,qBACjCiL,mCAAoCjL,yBACpC+K,6BAA8B/K,sCAC9BoL,gCAAiCpL,+CACjCqL,kCAAmCrL,+BACnC+W,6BAA8B/W,yDA9BzB,6HCAP,cACA,UAEA,QACA,2DAEO,IAAM05B,EAAkC,YAAC,IAC9C/2B,EAII,EAJJA,KACAg3B,EAGI,EAHJA,sBACAC,EAEI,EAFJA,WACAC,EACI,EADJA,WAEMC,EAAyB,wBAAC,EAAAC,KAAD,CAAMxxB,KAAMoxB,EAAuBzxB,OAAO,UAAUvF,EAAK2C,UAAUtF,+CAClG,OACE,+BAAK4C,UAAU,2BACb,wBAAC,EAAAsE,cAAD,CACEC,MAAO,CAAE2yB,uBAAAA,EAAwBD,WAAAA,GACjCxyB,SAAUuyB,EAAaj3B,EAAK2C,UAAUtF,0JAAkK2C,EAAK2C,UAAUtF,oLAI9N,EAfM,oCAiBP05B,EAAgChxB,UAAY,CAC1C/F,KAAM,UAAUgG,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,KAAK5E,WAC1B6E,aAAcF,EAAAA,QAAUC,KAAK5E,WAC7BqjB,WAAY1e,EAAAA,QAAUC,KAAK5E,aAC1BA,WACH41B,WAAYjxB,EAAAA,QAAUG,OAAO9E,WAC7B01B,sBAAuB/wB,EAAAA,QAAUG,OAAO9E,WACxC21B,WAAYhxB,EAAAA,QAAUI,MAGxB0wB,EAAgCjwB,aAAe,CAC7CmwB,YAAY,EADdF,EAAAA,GAAAA,SAAAA,EAAAA,GClCAr9B,EAAOC,QAAP,cAAAD,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,8B,oWjECA,SAGA,cAGA,QACA,oBAGA,YACA,IACA,KACA,YAUA,OANA,mCAGA,OAGA,SACA,CAyDA,OArDA,MAGA,MAGA,oBACA,UACA,2BAA0C,qBAE1C,EAGA,gBACA,iDACA,4CAAwD,iBAExD,sCAAiD,UACjD,EAOA,kBAEA,GADA,cACA,aACA,sDACA,0BAGA,GAFA,OACA,mCAAyC,wBACzC,2DAAgH,WAAmB,EAAGD,KAAK,KAAK,IAChJ,QACA,EAGA,gBACA,sBACA,WAA2B,gBAA0B,EACrD,WAAiC,QAAe,EAEhD,OADA,aACA,CACA,EAGA,kBAAsD,gDAA+D,EAGrH,OAIA,W,CAAA,kBSlFAC,EAAOC,QAAP,eAAAD,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,wBAAAA,EAAA,GAAAA,EAAA,sBAAAA,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,wBAAAA,EAAA,GAAAA,EAAA,sBAAAA,EAAA,GAAAA,EAAA,sBAAAA,EAAA,GAAAA,EAAA,sBAAAA,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,wBAAAA,EAAA,GAAAA,EAAA,wBAAAA,EAAA,KAAAA,EAAA,6BAAAA,EAAA,gtByDCA,SAEA,SACA,SACA,SACA,SACA,SAEA,43BAEO,IAAMiF,EAAa,OACrB04B,EAAAA,eACAC,EAAAA,eAFE,qCCXP59B,EAAOC,QAAP,gBAAAD,EAAA,0FCAO,gBAAsB,CAC3B69B,sCAAuCl6B,cACvCm6B,WAAYn6B,QACZo6B,cAAep6B,SACfq6B,qBAAsBr6B,UACtBmB,mBAAoBnB,SACpBs6B,iBAAkBt6B,OAClBu6B,iBAAkBv6B,OAClBw6B,kCAAmCx6B,cACnCy6B,kEAAmEz6B,+BACnE06B,iEAAkE16B,iHAClE26B,4DAA6D36B,mBAC7D46B,kEAAmE56B,mCACnE66B,qEAAsE76B,sIACtE86B,uDAAwD96B,mIACxD+6B,wDAAyD/6B,uDACzDg7B,qCAAsCh7B,iBACtCi7B,+BAAgCj7B,SAChCk7B,iCAAkCl7B,8BAClCm7B,gCAAiCn7B,QACjCo7B,qCAAsCp7B,yLACtCq7B,oCAAqCr7B,eACrCs7B,sCAAuCt7B,yMACvCu7B,gCAAiCv7B,WACjCw7B,mEAAoEx7B,yBACpEy7B,kCAAmCz7B,aACnC07B,uCAAwC17B,YACxC27B,6CAA8C37B,aAC9C47B,yCAA0C57B,SAC1C67B,0CAA2C77B,6MAC3C87B,+CAAgD97B,yMAChD+7B,kCAAmC/7B,aACnCg8B,8CAA+Ch8B,0BAC/Ci8B,6BAA8Bj8B,0BAC9Bk8B,4CAA6Cl8B,+BAC7Cm8B,kCAAmCn8B,aACnCo8B,YAAap8B,QACbq8B,UAAWr8B,aACXy5B,wBAAyBz5B,6CACzBgL,gCAAiChL,qBACjCiL,mCAAoCjL,yBACpC+K,6BAA8B/K,sCAC9BoL,gCAAiCpL,+CACjCqL,kCAAmCrL,+BACnC+W,6BAA8B/W,yDAE9Bs8B,uCAAwCt8B,uCACxCu8B,oCAAqCv8B,4BACrCw8B,sCAAuCx8B,+BACvCy8B,mCAAoCz8B,+BACpC08B,sCAAuC18B,kBACvC28B,oCAAqC38B,0BACrC48B,uCAAwC58B,mBACxC68B,iCAAkC78B,aAClC88B,kCAAmC98B,kCACnC+8B,uCAAwC/8B,kBACxCg9B,kCAAmCh9B,YACnCi9B,iDAAkDj9B,iBAClDk9B,+CAAgDl9B,UAChDm9B,iDAAkDn9B,YAClDo9B,8CAA+Cp9B,SAC/Cq9B,gEAAiEr9B,6DACjEs9B,kCAAmCt9B,cACnCu9B,8BAA+Bv9B,QAC/Bw4B,oCAAqCx4B,gBACrCw9B,+CAAgDx9B,oFAChDy9B,4CAA6Cz9B,4BAC7C09B,kCAAmC19B,aACnC29B,sCAAuC39B,iBACvC49B,sCAAuC59B,kBACvC69B,mCAAoC79B,cACpC89B,wCAAyC99B,oBACzC+9B,2DAA4D/9B,+IAC5D24B,wDAAyD34B,uDACzDg+B,4CAA6Ch+B,6WAC7Ci+B,0CAA2Cj+B,qMAC3Ck+B,uDAAwDl+B,qCACxDm+B,qDAAsDn+B,kCACtDo+B,oDAAqDp+B,+MA9EhD,qGCAP,MAUA,8bAVA,OACA,UACA,UACA,QACA,SACA,OAEA,SACA,SACA,SACA,4LAEA,MAA+D2mB,EAAAA,oBAAvD0X,EAAF,EAAEA,UAAWpQ,EAAb,EAAaA,mBAAoBW,EAAAA,EAAAA,oBAEhC,SAAS0P,EAAT,GAAsB,IAC3BC,EAUC,EAVDA,UACA74B,EASC,EATDA,QACA84B,EAQC,EARDA,WACAC,EAOC,EAPDA,aACAC,EAMC,EANDA,gBACAC,EAKC,EALDA,gBACAC,EAIC,EAJDA,qBACAC,EAGC,EAHDA,qBACAC,EAEC,EAFDA,sBACAC,EACC,EADDA,YAEMC,GAAY,IAAAC,UACVt8B,GAAS,IAAAojB,WAATpjB,KACR,GAA4C,IAAA8b,UAAS8f,GAArD,SAAOW,EAAD,KAAiBC,EAAjB,KACN,GAA4D,IAAA1gB,WAAS,GAArE,SAAO2gB,EAAD,KAAyBC,EAAzB,KACAC,GAAsB,IAAAC,sBAAqB,CAAEL,eAAAA,EAAgBT,aAAAA,EAAcE,gBAAAA,KACjF,IAAA3d,YAAU,kBAAMge,EAAUQ,SAAWR,EAAUQ,QAAQC,gBAAvD,GAAyE,IAEzE,IAAMz3B,GAAW,IAAAhD,cAAY,YAAC,IAAE06B,EAAY,EAAZA,MAC9BP,EAAkBO,GAClBL,EAA0BpR,EAAmByR,EAAM9R,WAAagB,EAAoB8Q,EAAMtU,gBAC3F,GAAE,IAWGuU,EAAkB,WAAH,OAAStB,EAAU,CACtC1T,mBAAoBuU,EAAevU,mBACnCiV,uBAAwB,CACtBC,aAAa,EACbC,cAAetB,EACfxT,UAAU,EACV4C,WAAY7wB,EAAAA,QAAEw0B,OAAOgN,EAAU3Q,WAAa7wB,EAAAA,QAAEw0B,OAAO2N,EAAetR,WAAa7wB,EAAAA,QAAEgjC,QAAQxB,EAAU3Q,SAASoS,eAAgBd,EAAetR,SAASoS,iBACtJ5U,gBAAgB,EAChB6U,cAAc,EACdC,YAAa1B,EACb2B,eAAgB3B,EAChB4B,SAAS,IAXb,EAeA,OACE,+BAAKx9B,UAAU,uCAAuCy9B,IAAKrB,GACzD,+BAAKp8B,UAAU,iBACb,+BAAKA,UAAU,eACb,sCAAS67B,EACL97B,EAAK2C,UAAUtF,gCACf2C,EAAK2C,UAAUtF,8BAIvB,+BAAK4C,UAAU,cACb,+BAAKA,UAAU,cACb,+BAAKA,UAAU,MACZ67B,EAAY,UACR97B,EAAK2C,UAAUtF,0LADP,KAEX2C,EAAK2C,UAAUtF,0MAAgNsgC,QAAQ,MAAO39B,EAAK2C,UAAUtF,SAC/P,wBAAC,EAAAugC,SAAD,CAAUC,MAAM,YAAY79B,EAAK2C,UAAUtF,iBAG/C,wBAAC,EAAAygC,WAAD,CACE99B,KAAMA,EACN+9B,cAAe14B,EACfpF,UAAU,mBACV+9B,WAAYpC,EACZW,eAAgBA,EAChB0B,oBAAqBlC,EACrBF,WAAYA,EACZc,oBAAqBA,EACrBuB,aAAc,CAACn7B,GACfo7B,4BAA6BrC,EAC7BlM,iCAAkCkM,EAClCM,YAAaA,KAGjB,+BAAKn8B,UAAU,eACZ27B,EAAUwC,YAAc,wBAAC,EAAA95B,gBAAD,KAAkBtE,EAAK2C,UAAUtF,qIACzDo/B,GACD,wBAAC,EAAAn4B,gBAAD,CAAiBrE,UAAU,6BAA6BD,EAAK2C,UAAUtF,iNACvE,iCACE4K,MAAOjI,EAAK2C,UAAUtF,QACtBmG,GAAG,uBACHvD,UAAS,0BAAqB+8B,IAAoB,GAAK,YACvDl7B,KAAK,SACLmxB,QApEoB,WAE1B,IAAMoL,EAAqC9B,EAAegB,aAAehB,EAAeiB,eAEpF3B,IAAewC,EACjBlC,EAAsBn8B,EAAK2C,UAAUtF,yDAErC6+B,EAAqBK,EAExB,EA4DO/2B,UAAWw3B,MAEb,iCACE/0B,MAAOjI,EAAK2C,UAAUtF,UACtBmG,GAAG,uBACHvD,UAAU,kBACV6B,KAAK,SACLmxB,QAASgJ,KAKlB,CAEDN,EAAa51B,UAAY,CACvB61B,UAAW0C,EAAAA,mBACXzC,WAAY51B,EAAAA,QAAUI,KACtBy1B,aAAc71B,EAAAA,QAAUI,KACxB41B,qBAAsBh2B,EAAAA,QAAUC,KAAK5E,WACrC46B,qBAAsBj2B,EAAAA,QAAUC,KAChC61B,gBAAiB91B,EAAAA,QAAUG,OAC3B+1B,sBAAuBl2B,EAAAA,QAAUC,KACjCnD,QAASw7B,EAAAA,wBACTvC,gBAAiB,UAAUh2B,MAAM,CAC/BmiB,UAAWliB,EAAAA,QAAUI,KACrB82B,aAAcl3B,EAAAA,QAAUI,KACxBgiB,SAAUpiB,EAAAA,QAAUI,KACpB4kB,SAAUhlB,EAAAA,QAAUI,KACpBoiB,eAAgBxiB,EAAAA,QAAUI,KAC1Bi3B,aAAcr3B,EAAAA,QAAUI,KACxBk3B,YAAat3B,EAAAA,QAAUI,KACvBm3B,eAAgBv3B,EAAAA,QAAUI,KAC1Bo3B,QAASx3B,EAAAA,QAAUI,OAErB+1B,YAAaoC,EAAAA,sBAGf7C,EAAa70B,aAAe,CAC1B80B,UAAW6C,EAAAA,UACX5C,YAAY,EACZC,cAAc,EACdC,gBAAiB,GACjBh5B,QAAS,CAAC,EACVm5B,qBAAsB9hC,EAAAA,QAAE2M,KACxBo1B,sBAAuB/hC,EAAAA,QAAE2M,KACzBi1B,gBAAiB0C,EAAAA,2BACjBtC,YAAa,CAAC,EAThBT,EAAAA,IAAAA,SAAAA,EAAAA,GC/IAjiC,EAAOC,QAAP,gBAAAD,EAAA,sFCGA,EDHA,ECGA,8bDHA,OCCA,GAEA,EAFA,OAEA,2BADA,SACA,6XAAA+E,EAAA,EAAAA,EAAA,iBAAAA,IAAA,uBAAAA,GAAA,UAAAA,GAAA,GAAAA,EAAA,4XAEA,MAIIkgC,EAAAA,kBAHFC,EADI,EACJA,UACAF,EAFI,EAEJA,2BACAG,EAAAA,EAAAA,wBAEF,EAIIC,EAAAA,iBAHFR,EADI,EACJA,mBACAS,EAFI,EAEJA,oCACAR,EAAAA,EAAAA,wBAEK,SAAST,EAAW/1B,GACzB,IACEg2B,EAyBEh2B,EAzBFg2B,cACA99B,EAwBE8H,EAxBF9H,UACA+9B,EAuBEj2B,EAvBFi2B,WACAlb,EAsBE/a,EAtBF+a,gBACAmb,EAqBEl2B,EArBFk2B,oBACAe,EAoBEj3B,EApBFi3B,iBACAC,EAmBEl3B,EAnBFk3B,cACAC,EAkBEn3B,EAlBFm3B,gBACAf,EAiBEp2B,EAjBFo2B,2BACAtC,EAgBE9zB,EAhBF8zB,WACAsD,EAeEp3B,EAfFo3B,yBACAC,EAcEr3B,EAdFq3B,qBACAlB,EAaEn2B,EAbFm2B,aACAvB,EAYE50B,EAZF40B,oBACA/M,EAWE7nB,EAXF6nB,gCACAwM,EAUEr0B,EAVFq0B,YACAnU,EASElgB,EATFkgB,cACAoX,EAQEt3B,EARFs3B,mBACAC,EAOEv3B,EAPFu3B,eACAC,EAMEx3B,EANFw3B,kBACAC,EAKEz3B,EALFy3B,qBACAhY,EAIEzf,EAJFyf,sBACoBiY,EAGlB13B,EAHF8f,mBACAqF,EAEEnlB,EAFFmlB,2BACAhF,EACEngB,EADFmgB,2BAEI9F,GAAU,IAAAjhB,UAAQ,kBAAO69B,aAA4Bxc,MAAQwc,GAAoB,IAAIxc,KAASwc,EAAmB,IAAIxc,IAA3G,GAAoH,CAACwc,IAC/HnX,GAAqB,IAAA1mB,UAAQ,kBAAOs+B,aAAuCjd,MAAQid,EAA8Brd,EAAUA,EAAUqd,CAAhH,GAA8I,CAACrd,EAASqd,IACnL,GAA4C,IAAA3jB,WAAS,2BAAY8iB,GAAc72B,EAAMw0B,gBAAhC,IAAgDvU,mBAAoB6W,GAA7E,IAA5C,SAAOtC,EAAD,KAAiBC,EAAjB,KASN,OAPA,IAAAne,YAAU,WACR0f,EAAc,CACZhB,MAAOR,GAGV,GAAE,CAACA,IAGF,+BAAKt8B,UAAWA,GACd,+BAAKA,UAAU,2CACb,wBAAC,EAAAy/B,kBAAD,CACE1B,WAAYA,EACZzB,eAAgBA,EAChB2B,aAAcA,EACd1B,kBAAmBA,EACnB1Z,kBAAiBsc,KAAgCtc,EACjDmb,oBAAqBA,EACrBe,iBAAkB5c,EAClB6c,cAAeA,EACfC,gBAAiBA,EACjBrD,WAAYA,EACZsC,2BAA4BA,EAC5BgB,yBAA0BA,EAC1BxC,oBAAqBA,EACrB/M,gCAAiCA,EACjCwM,YAAaA,EACbnU,cAAeA,EACfoX,mBAAoBA,EACpBC,eAAgBA,EAChBC,kBAAmBA,EACnBC,qBAAsBA,EACtBhY,sBAAuBA,EACvBK,mBAAoBA,EACpBqF,2BAA4BA,EAC5BhF,2BAA4BA,KAKrC,CAED4V,EAAW/3B,UAAY,CACrBg4B,cAAe93B,EAAAA,QAAUC,KAAK5E,WAC9BrB,UAAWgG,EAAAA,QAAUG,OACrB44B,iBAAkB/4B,EAAAA,QAAU4d,WAAWrB,MACvCM,gBAAiB7c,EAAAA,QAAUM,UAAU,CACnCN,EAAAA,QAAUI,KACVJ,EAAAA,QAAUK,SAEZ03B,WAAY/3B,EAAAA,QAAUS,OACtBu3B,oBAAqBh4B,EAAAA,QAAUhJ,KAC/BgiC,cAAeh5B,EAAAA,QAAUG,OACzB+3B,2BAA4Bl4B,EAAAA,QAAUI,KACtCw1B,WAAY51B,EAAAA,QAAUI,KACtBs2B,oBAAqBoC,EACrBK,qBAAsBn5B,EAAAA,QAAUI,KAChCk2B,eAAgB+B,EAChBJ,aAAcj4B,EAAAA,QAAUU,QAAQ43B,GAChCY,yBAA0Bl5B,EAAAA,QAAUI,KACpCupB,gCAAiC3pB,EAAAA,QAAUI,KAC3C+1B,YAAaoC,EAAAA,qBACbvW,cAAehiB,EAAAA,QAAUI,KACzBg5B,mBAAoBM,EAAAA,0BACpBL,eAAgBr5B,EAAAA,QAAUI,KAC1Bk5B,kBAAmBt5B,EAAAA,QAAUI,KAC7Bm5B,qBAAsBv5B,EAAAA,QAAUC,KAChCg5B,gBAAiBj5B,EAAAA,QAAUI,KAC3BmhB,sBAAuBvhB,EAAAA,QAAUI,KACjCwhB,mBAAoB5hB,EAAAA,QAAU4d,WAAWrB,MACzC0K,2BAA4BjnB,EAAAA,QAAUD,MAAM,CAAC,GAC7CkiB,2BAA4BjiB,EAAAA,QAAUI,MAGxCy3B,EAAWh3B,aAAe,CACxB7G,UAAW,UACX+9B,WAAY,KACZzB,eAAgBqC,EAChBV,aAAc,GACdc,iBAAkB,KAClBf,oBAAqB,KACrBnb,iBAAiB,EACjBmc,cAAe,KACfC,iBAAiB,EACjBrD,YAAY,EACZsC,4BAA4B,EAC5BgB,0BAA0B,EAC1BC,sBAAsB,EACtBzC,oBAAqB+B,EACrB9O,iCAAiC,EACjCwM,YAAa,CAAC,EACdnU,eAAe,EACfoX,mBAAoB,GACpBC,gBAAgB,EAChBC,mBAAmB,EACnBC,qBAAsB,KACtBhY,uBAAuB,EACvBK,mBAAoB,KACpBqF,2BAA4B,KAC5BhF,4BAA4B,EAzB9B4V,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,kBAAAA,ECxHA,MA8BA,8bA9BA,OACA,UACA,UAEA,SACA,QACA,SACA,SASA,OACA,SACA,QAEA,SAKA,SACA,SACA,SACA,SACA,SACA,gbAAAr/B,EAAA,EAAAA,EAAA,iBAAAA,IAAA,uBAAAA,GAAA,UAAAA,GAAA,GAAAA,EAAA,4XAEA,IAAQs1B,EAAe/P,EAAAA,oBAAf+P,WAER,EAGIn0B,EAAAA,UAFFguB,EADI,EACJA,kBAAmB1L,EADf,EACeA,mBAAoB0d,EADnC,EACmCA,oBAAqBrW,EADxD,EACwDA,iBAAkBiG,EAD1E,EAC0EA,2BAC9EnF,EAAAA,EAAAA,YAEF,EAAkDsU,EAAAA,kBAA1CC,EAAF,EAAEA,UAAWF,EAAAA,EAAAA,2BACnB,EAIII,EAAAA,iBAHFR,EADI,EACJA,mBACAS,EAFI,EAEJA,oCACAR,EAAAA,EAAAA,wBAEF,EAAyDha,EAAAA,UAAjDgH,EAAF,EAAEA,qBAAsB/G,EAAAA,EAAAA,uBAEvB,SAASkb,EAAT,GAA2B,IAChC1B,EAuBC,EAvBDA,WACAzB,EAsBC,EAtBDA,eACAzZ,EAqBC,EArBDA,gBACAmb,EAoBC,EApBDA,oBACAe,EAmBC,EAnBDA,iBACAC,EAkBC,EAlBDA,cACAzC,EAiBC,EAjBDA,kBACA2B,EAgBC,EAhBDA,2BACAgB,EAeC,EAfDA,yBACAtD,EAcC,EAdDA,WACA5T,EAaC,EAbDA,cACA0U,EAYC,EAZDA,oBACAuB,EAWC,EAXDA,aACAtO,EAUC,EAVDA,gCACAyP,EASC,EATDA,mBACAC,EAQC,EARDA,eACAC,EAOC,EAPDA,kBACAC,EAMC,EANDA,qBACAN,EAKC,EALDA,gBACA1X,EAIC,EAJDA,sBACAK,EAGC,EAHDA,mBACAqF,EAEC,EAFDA,2BACAhF,EACC,EADDA,2BAEA,GAA6B,IAAA9E,WAArBpjB,EAAF,EAAEA,KAAMkB,EAAAA,EAAAA,WACd,GAA2D,IAAA2+B,wBAAuBtD,GAA1ExH,EAAF,EAAEA,yBAA0BF,EAAAA,EAAAA,qBAC5BiL,GAAeR,IAAmBrX,IAAkB4M,GAAwBE,GAE5EgL,IAAiB,IAAA19B,cAAY,YAAC,IAClC2rB,EACI,EADJA,SAAU/lB,EACN,EADMA,MAAOxF,EACb,EADaA,QADiB,EAE9B,EADsBu9B,eAAAA,OAAc,MAAG,CAAC,EADV,EACa9c,EAC3C,EAD2CA,gBAEzC+c,EAAU,KAAMjS,EAAW/lB,GAC3Bi4B,EAAmB,KAAMlS,EAAWvrB,GACpC09B,EAA2B,CAAC,EAGlC,OAAQnS,GACN,KAAKzE,EAAiBlB,SAChB5lB,IAAW,IAAA4f,aAAYka,EAAetR,YAAa,IAAA5I,aAAYpa,KAAU,IAAA8hB,aAAY9hB,IAAS,IAAA8hB,aAAYwS,EAAetR,YAC3HiV,EAAoBjV,UAAW,EAC/BgV,EAAWhV,SAAW,GAClBhD,IACFgY,EAAW/U,gBAAkB,KAC7B+U,EAAW5U,YAAc,KACzB6U,EAAoBhV,iBAAkB,EACtCgV,EAAoB7U,aAAc,IAGtC,MACF,KAAK9B,EAAiB0B,SACpB,GAAIhD,EAAe,CACjB,IAAMmY,EAAoCld,IAAoBhB,EAAmBwB,iBACjFuc,EAAW/U,gBAAkBhI,EAC7B+c,EAAW5U,YAAc+U,EAAoCn4B,EAAQ,GACrEg4B,EAAWhV,SAAYmV,EAA4C,KAARn4B,EAC3Di4B,EAAoBhV,gBAAkBzoB,EACtCy9B,EAAoB7U,cAAc+U,GAAoC39B,EACtEy9B,EAAoBjV,UAAYmV,GAAoC39B,CACrE,MAAUA,IAAW,IAAA4f,aAAYka,EAAelU,YAAa,IAAAhG,aAAYpa,IAAUA,EAAQs0B,EAAelU,WACzG4X,EAAWhV,SAAWsR,EAAelU,UAEvC,MACF,KAAKkB,EAAiBpB,UACpB8X,EAAW/C,YAAc8C,EAAeK,mBACxCJ,EAAWK,2BAA6BN,EAAeM,2BACvDL,EAAWM,aAAeP,EAAeO,aACrC/Y,IACF2Y,EAAyB5W,EAAiBiX,6BAA+B,KACzEL,EAAyB5W,EAAiBoH,0BAA4B,MAExE,MACF,KAAKpH,EAAiBoH,yBACtB,KAAKpH,EAAiBiX,4BACtB,KAAKjX,EAAiBkX,0BAChBjZ,IACF2Y,EAAyBnS,GAAY/lB,EACrCg4B,EAAWjS,QAAYnmB,GAO7B20B,GAAkBkE,SAAAA,GAAK,gBAClBA,GACAT,GAFkB,IAGrBjY,mBAAmB,EAAD,KACb0Y,EAAM1Y,oBACNkY,GAELS,sBAAsB,EAAD,KAChBD,EAAMC,uBACNR,IATU,GAYlB,GAAE,CAAC5D,EAAelU,SAAUkU,EAAetR,SAAUhD,EAAeuU,EAAmBhV,KAExF,IAAA1L,WAAS,WACFqjB,GAAoD,IAAxBjB,EAAa1iC,QAC5CukC,GAAe,CACb/R,SAAUzE,EAAiBpB,UAC3BlgB,MAAOi2B,EAAa,GAAG/V,UACvB1lB,SAAS,EACTu9B,eAAgB9B,EAAa,IAGlC,IACD,IAAM0C,IAAmB,IAAAv+B,cAAY,YAAC,IAAE4F,EAAqB,EAArBA,MAAOxF,EAAc,EAAdA,QACzCsxB,EAAW,CAAE/zB,KAAAA,EAAMiI,MAAAA,IAAW,IAAMs3B,GAAqBnlC,EAAAA,QAAEW,WAAWykC,IACxEA,GAAqB,GAEvBO,GAAe,CAAE/R,SAAUzE,EAAiBsX,WAAY54B,MAAAA,EAAOxF,QAAAA,GAChE,GAAE,CAACzC,EAAMu/B,EAAmBQ,GAAgBP,IAEvCsB,IAA6B,IAAAz+B,cAAY,YAAC,IAAE4F,EAAqB,EAArBA,MAAOxF,EAAc,EAAdA,QACnDsxB,EAAW,CAAE/zB,KAAAA,EAAMiI,MAAAA,IAAW,IAAMs3B,GAAqBnlC,EAAAA,QAAEW,WAAWykC,IACxEA,GAAqB,GAEvBO,GAAe,CAAE/R,SAAUzE,EAAiByK,qBAAsB/rB,MAAAA,EAAOxF,QAAAA,GAC1E,GAAE,CAACzC,EAAMu/B,EAAmBQ,GAAgBP,IAEvCvR,GAAgBhG,GAAiBsU,EAAehT,EAAiB2B,mBAAqBhJ,EAAmBwB,iBACzGqd,GAAwB,gBAE5B/S,EAF4B,EAE5BA,SAF6B,EAAD,EAElBgT,eAAAA,OAAc,MAAG1R,EAAAA,eAFE,IAAD,EAEe2R,WAAAA,OAAU,OAFxB,EAEkCC,EAFnC,EAEmCA,WAFnC,OAI5B,wBAAC,EAAAC,iBAAD,CAAkBnT,SAAUA,EAAUhuB,KAAMA,EAAMihC,WAAYA,EAAYG,cAAevF,EAAYqF,WAAYA,GAC/G,wBAACF,EAAD,CACEx7B,UAAWm3B,EAAoB3O,GAC/BhqB,gBAAiB,CACf5B,WAAa6F,SAAAA,GAMX,OALA83B,GAAe,CACb/R,SAAAA,EACA/lB,MAAOA,EAAMzF,KAAKwrB,GAClBvrB,QAASwF,EAAMxF,UAEVwF,CACR,EACDhE,MAAO+pB,EACPxrB,KAAM+5B,EACNr4B,OAAQ0pB,EACR9K,gBAAAA,EACA9iB,KAAMkB,KApBgB,EA0BxBmgC,GAAqB,YAAC,IAAEp5B,EAA0C,EAA1CA,MAAOxF,EAAmC,EAAnCA,QAAT,EAA4C,EAA1BiuB,YAAAA,OAAW,OAAG,EAC1DqP,GAAe,CACb/R,SAAUzE,EAAiBlB,SAC3BpgB,MAAAA,EACAxF,SAAUk6B,EAAoBpT,EAAiBlB,WAAa5lB,IAE1DiuB,GACFqP,GAAe,CACb/R,SAAUzE,EAAiBiX,4BAC3Bv4B,MAAM,EAAD,KACA7N,EAAAA,QAAEwjB,IAAI2e,EAAgB,CAAChT,EAAiBoX,sBAAuBpX,EAAiBiX,+BADhF,QAEFhR,EAA2BoB,sBAAuB,IAErDnuB,SAAS,GAGd,EAEK6+B,MAAiC9Z,IACjCU,GACDyU,EAAoBpT,EAAiBlB,WACrCjuB,EAAAA,QAAEw0B,OAAO/G,IACT0U,EAAevU,mBAAmBuB,EAAiBlB,YACnD,IAAA0B,aAAYwS,EAAehT,EAAiBlB,YAAa,IAAA0B,aAAYlC,IAEpEkI,IAAwB,IAAAwR,oBAAmB,CAC/CvhC,KAAAA,EACAwnB,sBAAAA,EACAO,QAASwU,EACTvU,mBAAoBuU,EAAevU,mBACnCC,cAAAA,EACAC,2BAAAA,IAGIsZ,MAA+Bha,IAC/BptB,EAAAA,QAAEuK,QAAQuoB,IACXA,EAA2BC,iBAAmB,GAC9CoP,EAAehT,EAAiBgX,eA4GrC,OAxEA,IAAAliB,YAAU,WACJmJ,GAAyBptB,EAAAA,QAAEw0B,OAAO/G,KAC/BrD,EAAuBqD,EAAoBztB,EAAAA,QAAEwjB,IAAI2e,EAAgB,CAAChT,EAAiBoX,sBAAuBpX,EAAiBiX,4BAA6BhR,EAA2BiS,sBAU5KrnC,EAAAA,QAAEwjB,IAAI2e,EAAgB,CAAChT,EAAiBoX,sBAAuBpX,EAAiBiX,4BAA6BhR,EAA2B2B,eAClJ4O,GAAe,CACb/R,SAAUzE,EAAiBiX,4BAC3Bv4B,MAAM,EAAD,KACA7N,EAAAA,QAAEwjB,IAAI2e,EAAgB,CAAChT,EAAiBoX,sBAAuBpX,EAAiBiX,+BADhF,UAEFhR,EAA2BkS,mBAAqBnF,EAAehT,EAAiBlB,WAChFmH,EAA2B2B,YAAcmQ,KAE5C7+B,SAAS,IAjBXs9B,GAAe,CACb/R,SAAUzE,EAAiBiX,4BAC3Bv4B,MAAM,EAAD,OACFunB,EAA2BiS,mBAAqB5Z,GAChD2H,EAA2BkS,mBAAqBJ,GAA8B/E,EAAehT,EAAiBlB,eAAYxgB,GAC1H2nB,EAA2B2B,YAAcmQ,IAE5C7+B,SAAS,IAehB,GAAE,CAAC+kB,EAAuBK,EAAoByZ,MAE/C,IAAAjjB,YAAU,WACR,GAAImJ,IAA0BptB,EAAAA,QAAEwjB,IAAI2e,EAAgB,CAAChT,EAAiBoX,sBAAuBpX,EAAiBkX,0BAA2BjR,EAA2BoB,uBAClK,GAAI1D,EAA4B,CAC9B,IACEE,EAEEF,EAFFE,WAAYC,EAEVH,EAFUG,gBAAiBC,EAE3BJ,EAF2BI,eAAgBC,EAE3CL,EAF2CK,UAC7ClF,EACE6E,EADF7E,SAAU4C,EACRiC,EADQjC,SAAUxC,EAClByE,EADkBzE,eAElB+Y,GACFzB,GAAe,CACb/R,SAAUzE,EAAiBkX,0BAC3Bx4B,MAAM,EAAD,aACFunB,EAA2BmS,UAAYtZ,GAAYgF,GACnDmC,EAA2BoS,QAAU3W,GACrCuE,EAA2B/G,eAAiBA,GAAkB6E,GAC9DkC,EAA2BjH,cAAgBgF,GAC3CiC,EAA2BpC,WAAaA,GACxCoC,EAA2B2B,aAAc,GAE5C1uB,SAAS,IAEFyqB,EAA2B3D,EAAiB4D,mBACrD4S,GAAe,CACb/R,SAAUzE,EAAiBkX,0BAC3Bx4B,MAAM,EAAD,aACFunB,EAA2BmS,UAAYtZ,GAAYgF,GACnDmC,EAA2BoS,QAAU3W,GACrCuE,EAA2B/G,eAAiBA,GAAkB6E,GAC9DkC,EAA2BjH,cAAgBgF,GAC3CiC,EAA2BpC,WAAaA,GACxCoC,EAA2B2B,aAAc,GAE5C1uB,SAAS,GAGd,MAAWyqB,GAA+BsU,IACzCzB,GAAe,CACb/R,SAAUzE,EAAiBkX,0BAC3Bx4B,WAAOJ,EACPpF,SAAS,GAKhB,GAAE,CAAC+kB,EAAuB0F,EAA4BsU,KAGrD,+BAAKvhC,UAAU,mBACZgoB,GACC,wBAAC,EAAAkZ,iBAAD,CAAkBnT,SAAUzE,EAAiBsY,KAAM7hC,KAAMA,GACvD,wBAAC,EAAA8hC,mBAAD,CACEz8B,SAAU06B,GACVv6B,UAAWm3B,EAAoBpT,EAAiBsY,MAChDE,WAAYxF,EAAehT,EAAiBsY,MAC5C/e,gBAAiBA,EACjBuc,mBAAoBA,EACpB5jB,UAAW8gB,EAAehT,EAAiBpB,cAGhDgW,GAA8BD,EAAa1iC,OAAS,GAAK0iC,EAAa,GAAG/V,YAAcoU,EAAehT,EAAiBpB,YACtH,wBAAC,EAAAgZ,iBAAD,CAAkBnT,SAAUzE,EAAiB2T,YAAal9B,KAAMA,EAAMohC,cAAevF,GACnF,oCAAOqC,EAAa,GAAGmC,qBAE1BlB,GACC,wBAAC,EAAAgC,iBAAD,CAAkBnT,SAAUzE,EAAiBpB,UAAWnoB,KAAMA,GAC5D,wBAAC,EAAAgiC,oBAAD,CACEhiC,KAAMA,EACNiiC,iBAAkB1F,EAAehT,EAAiBpB,WAClD+V,aAAcA,EACd74B,SAAU06B,GACVv6B,UAAWm3B,EAAoBpT,EAAiBpB,aAEjDqZ,IACC,wBAAC,EAAA/N,sBAAD,CACEzzB,KAAMA,EACNyxB,QAvIyB,WACnC,GAAIxJ,EAAe,CACjB,IACEmF,EACEF,EADFE,WAAYC,EACVH,EADUG,gBAAiBC,EAC3BJ,EAD2BI,eAAgBC,EAC3CL,EAD2CK,UAE1CgP,EAAehT,EAAiBsY,OACnC9B,GAAe,CAAE/R,SAAUzE,EAAiBsY,KAAM55B,MAAOmlB,EAAY3qB,SAAS,IAEhFs9B,GAAe,CAAE/R,SAAUzE,EAAiBlB,SAAUpgB,MAAOolB,EAAiB5qB,SAAS,IACvFs9B,GAAe,CACb/R,SAAUzE,EAAiB0B,SAAUhjB,MAAOoiB,EAAanH,gBAAiBhB,EAAmBiJ,UAAW1oB,SAAS,IAEnHs9B,GAAe,CAAE/R,SAAUzE,EAAiBd,eAAgBxgB,MAAOqlB,EAAgB7qB,SAAS,IAC5Fs9B,GAAe,CAAE/R,SAAUzE,EAAiBhB,cAAetgB,MAAOslB,EAAW9qB,SAAS,GACvF,KAAM,CACL,IAAQ4lB,EAAuC6E,EAAvC7E,SAAU4C,EAA6BiC,EAA7BjC,SAAUxC,EAAmByE,EAAnBzE,eAC5BsX,GAAe,CAAE/R,SAAUzE,EAAiBlB,SAAUpgB,MAAOogB,EAAU5lB,SAAS,IAChFs9B,GAAe,CAAE/R,SAAUzE,EAAiB0B,SAAUhjB,MAAOgjB,EAAUxoB,SAAS,IAChFs9B,GAAe,CAAE/R,SAAUzE,EAAiBd,eAAgBxgB,MAAOwgB,EAAgBhmB,SAAS,GAC7F,CAED,IAAQ0qB,EAAqBD,EAArBC,iBACR4S,GAAe,CAAE/R,SAAUzE,EAAiB4D,iBAAkBllB,MAAOklB,EAAkB1qB,SAAS,IAChGs9B,GAAe,CACb/R,SAAUzE,EAAiBkX,0BAC3Bx4B,MAAM,EAAD,KACA7N,EAAAA,QAAEwjB,IAAI2e,EAAgB,CAAChT,EAAiBoX,sBAAuBpX,EAAiBkX,6BADhF,QAEFjR,EAA2BoB,sBAAuB,IAErDnuB,SAAS,GAEZ,EAyGWixB,oBAAqBxG,EACrBrP,aAAc0e,EAAehT,EAAiBgX,iBAItD,wBAAC,EAAAY,iBAAD,CAAkBnT,SAAU/F,EAAgBsB,EAAiB8D,gBAAkB9D,EAAiBlB,SAAUroB,KAAMA,EAAMohC,cAAevF,GACnI,wBAAC,EAAApZ,aAAD,CACEI,UAAW0Z,EAAehT,EAAiBlB,UAC3CjG,QAAS4c,EACTpc,WAAYqc,EACZtc,UAAW0e,GACXte,oBAAqBmc,EACrB15B,UAAWm3B,EAAoBpT,EAAiBlB,UAChDvF,gBAAiBA,EACjB5e,OAAQ0pB,EAAkB/rB,WAAW0nB,EAAiBlB,YAEvDiZ,IACC,wBAAC,EAAAjP,wBAAD,CACEryB,KAAMA,EACNyxB,QAAS,WAAF,OAAQ4P,GAAmB,CAAEp5B,MAAO4f,EAAoB6I,aAAa,GAF9E,EAGE7I,mBAAoBA,KAIzBI,GACC,wBAAC,EAAAkZ,iBAAD,CAAkBnT,SAAUzE,EAAiBhB,cAAevoB,KAAMA,EAAMkiC,WAAW,GACjF,wBAAC,EAAAC,qBAAD,CACEniC,KAAMA,EACNoiC,UAAW7F,EAAehT,EAAiBhB,eAC3CljB,SAAU06B,GACVv6B,UAAWm3B,EAAoBpT,EAAiBhB,kBAGtD,wBAAC,EAAA4Y,iBAAD,CAAkBnT,SAAU/F,EAAgBsB,EAAiB8Y,cAAgB9Y,EAAiB0B,SAAUjrB,KAAMA,EAAMohC,cAAevF,GACjI,wBAAC,EAAApZ,aAAD,CACEI,UAAWoF,GAAiBgG,GAAgBsO,EAAehT,EAAiB8B,aAAekR,EAAehT,EAAiB0B,UAC3H7I,SAAS,IAAAkgB,sBAAqB,CAAE/F,eAAAA,EAAgBtU,cAAAA,EAAe+W,iBAAAA,IAC/Drc,UAAW,gBAAG1a,EAAH,EAAGA,MAAOxF,EAAV,EAAUA,QAASygB,EAAnB,EAAmBA,gBAAnB,OACT6c,GAAe,CACb/R,SAAUzE,EAAiB0B,SAC3BhjB,MAAAA,EACAxF,SAAUk6B,EAAoBpT,EAAiB0B,WAAaxoB,EAC5DygB,gBAAAA,GALO,EAQX1d,UAAWm3B,EAAoBpT,EAAiB0B,UAChDnI,gBAAiBA,EACjB5e,OAAQ0pB,EAAkB/rB,WAAW0nB,EAAiB0B,UACtDjI,cAAe6Y,EACf5Y,iBAAkBgF,EAClB/E,gBAAiBqZ,EAAehT,EAAiB2B,iBACjDxI,QAASuF,EAAgBsD,EAAqBgR,EAAelU,SAAUkU,EAAehU,cAAe,IAAM,KAC3GpF,YAAaoZ,EAAeqD,sBAAwBA,EAAoB2C,WAG5E,wBAAC,EAAApB,iBAAD,CAAkBnT,SAAU/F,EAAgBsB,EAAiB+D,eAAiB/D,EAAiBd,eAAgBzoB,KAAMA,EAAMohC,cAAevF,EAAYqF,WAAYjD,GAChK,wBAAC,EAAAxO,iBAAD,CACEjqB,UAAWm3B,EAAoBpT,EAAiBd,gBAChDiH,4BAA6BsO,EAAaA,EAAWzU,EAAiBd,iBAAmB,EACzFkH,oBAAqB4M,EAAehT,EAAiBd,gBACrD9F,UAAWod,GACXjd,gBAAiBA,EACjB8M,gCAAiCA,EACjCC,gBAAiBgM,IAAe5T,EAChC6H,cAAeyM,EAAeqD,sBAAwBA,EAAoB4C,SAC1Ehb,sBAAuBA,EACvBuI,sBAAuBA,GACvBE,sBAAuBsM,EAAehT,EAAiBoX,0BAG1Db,IACC,wBAAC,EAAAqB,iBAAD,CAAkBnT,SAAUzE,EAAiBmL,SAAU10B,KAAMA,EAAMohC,cAAevF,GAC/EU,EAAehT,EAAiB+W,6BAA+B/D,EAAehT,EAAiB+W,4BAA4BmC,UAC1H,wBAAC,EAAApN,mBAAD,CACEr1B,KAAMA,EACNW,aAAc47B,EAAehT,EAAiBgX,cAC9CrM,gBAAiBqI,EAAehT,EAAiB+W,4BAA4B/W,EAAiBsX,YAC9FhM,qBAAsBA,EACtBV,0BAA2BoI,EAAehT,EAAiB+W,4BAA4B/W,EAAiByK,sBACxGe,yBAA0BA,EAC1Bd,2BAA4BsI,EAAehT,EAAiBd,kBAE9D,wBAAC,EAAAiM,SAAD,CACE10B,KAAMA,EACNW,aAAc47B,EAAehT,EAAiBgX,cAC9CrM,gBAAiBqI,EAAehT,EAAiBsX,aAAe,EAChEjM,oBAAqBgM,GACrB/L,qBAAsBA,EACtBV,0BAA2BoI,EAAehT,EAAiByK,uBAAyB,EACpFvD,wBAAyBqQ,GACzB/L,yBAA0BA,EAC1Bd,2BAA4BsI,EAAehT,EAAiBd,mBAGnEsY,GAAsB,CAAE/S,SAAUzE,EAAiB+T,aAAc2D,YAAY,KAC5EpF,GAAckF,GAAsB,CAAE/S,SAAUzE,EAAiB4T,aAAc8D,YAAY,IAC5FpF,GAAckF,GAAsB,CAAE/S,SAAUzE,EAAiBgU,cACjE1B,GAAckF,GAAsB,CAAE/S,SAAUzE,EAAiBiU,iBACjEuD,GAAsB,CAAE/S,SAAUzE,EAAiBkU,QAASuD,eAAgB0B,EAAAA,SAAUzB,YAAY,IAGxG,CAEDvB,EAAkB35B,UAAY,CAC5Bi4B,WAAY/3B,EAAAA,QAAUS,OACtB81B,kBAAmBv2B,EAAAA,QAAUC,KAAK5E,WAClCi7B,eAAgB+B,EAChBW,cAAeh5B,EAAAA,QAAUG,OACzB44B,iBAAkB/4B,EAAAA,QAAU4d,WAAWrB,MACvCM,gBAAiB7c,EAAAA,QAAUI,KAC3B43B,oBAAqBh4B,EAAAA,QAAUhJ,KAC/BkhC,2BAA4Bl4B,EAAAA,QAAUI,KACtCw1B,WAAY51B,EAAAA,QAAUI,KACtBs2B,oBAAqBoC,EACrBb,aAAcj4B,EAAAA,QAAUU,QAAQ43B,GAChCY,yBAA0Bl5B,EAAAA,QAAUI,KACpCupB,gCAAiC3pB,EAAAA,QAAUI,KAAK/E,WAChD2mB,cAAehiB,EAAAA,QAAUI,KAAK/E,WAC9B+9B,mBAAoBM,EAAAA,0BACpBL,eAAgBr5B,EAAAA,QAAUI,KAC1Bk5B,kBAAmBt5B,EAAAA,QAAUI,KAC7Bm5B,qBAAsBv5B,EAAAA,QAAUC,KAChCg5B,gBAAiBj5B,EAAAA,QAAUI,KAC3BmhB,sBAAuBvhB,EAAAA,QAAUI,KACjCwhB,mBAAoB5hB,EAAAA,QAAU4d,WAAWrB,MACzC0K,2BAA4BjnB,EAAAA,QAAUD,MAAM,CAAC,GAC7CkiB,2BAA4BjiB,EAAAA,QAAUI,MAGxCq5B,EAAkB54B,aAAe,CAC/Bk3B,WAAY,KACZzB,eAAgBqC,EAChBI,iBAAkB,IAAIxc,KACtByb,oBAAqB,KACrBnb,iBAAiB,EACjBmc,cAAe,KACfd,4BAA4B,EAC5BtC,YAAY,EACZsD,0BAA0B,EAC1BxC,oBAAqB+B,EACrBR,aAAc,GACdmB,mBAAoB,GACpBC,gBAAgB,EAChBC,mBAAmB,EACnBC,qBAAsB,KACtBN,iBAAiB,EACjB1X,uBAAuB,EACvBK,mBAAoB,KACpBqF,2BAA4B,KAC5BhF,4BAA4B,EApB9BwX,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,YAAAA,EAAAA,qBAAAA,EAAAA,sBAAAA,EAAAA,iBAAAA,EAAAA,qBAAAA,EAAAA,0BAAAA,EAAAA,wBAAAA,EAAAA,oCAAAA,EAAAA,mBAAAA,EAAAA,kBAAAA,EAAAA,2BAAAA,EAAAA,wBAAAA,EAAAA,eAAAA,ECnfA,cACA,UACA,uSAAAjhC,EAAA,EAAAA,EAAA,iBAAAA,IAAA,uBAAAA,GAAA,UAAAA,GAAA,GAAAA,EAAA,4XAEA,MAFA,KAEqEmB,UAA7D+iC,EAAF,EAAEA,qBAAsBC,EAAxB,EAAwBA,iBAAkBrZ,EAAAA,EAAAA,iBAGnCqV,EAAY,CACvBzW,UAAW,KACXM,eAAgB,KAChBJ,SAAU,GACV4C,SAAU,GACVqS,aAAc,GACdH,aAAc,GACdI,YAAa,GACbC,eAAgB,GAChBC,QAAS,GACTW,YAAY,GAVP,cAaA,IAAMS,EAA0B,CACrC1W,WAAW,EACXM,gBAAgB,EAChBJ,UAAU,EACV4C,UAAU,EACVkS,cAAc,EACdG,cAAc,EACdC,aAAa,EACbC,gBAAgB,EAChBC,SAAS,GATJ,4BAYA,IAAMiB,EAA6B,CACxCvW,WAAW,EACXgV,cAAc,EACd9U,UAAU,EACV4C,UAAU,EACVxC,gBAAgB,EAChB6U,cAAc,EACdC,aAAa,EACbC,gBAAgB,EAChBC,SAAS,EACToE,MAAM,EACNtZ,eAAe,GAXV,+BAcA,IAAMoW,EAAoB,CAC/BC,UAAAA,EACAC,wBAAAA,EACAH,2BAAAA,GAHK,sBAMA,IAAMJ,EAAqB,UAAUt4B,MAAM,CAChDmiB,UAAWliB,EAAAA,QAAUK,OACrBs8B,iBAAkB38B,EAAAA,QAAU48B,MAAMzoC,EAAAA,QAAE2B,OAAO6mC,IAC3CE,OAAQ78B,EAAAA,QAAU48B,MAAMzoC,EAAAA,QAAE2B,OAAO4mC,IACjCxF,aAAcl3B,EAAAA,QAAUG,OACxBiiB,SAAUpiB,EAAAA,QAAUM,UAAU,CAACN,EAAAA,QAAU4d,WAAWrB,MAAOvc,EAAAA,QAAUG,SACrE6kB,SAAUhlB,EAAAA,QAAUM,UAAU,CAACN,EAAAA,QAAU4d,WAAWrB,MAAOvc,EAAAA,QAAUG,SACrEqiB,eAAgBxiB,EAAAA,QAAUM,UAAU,CAClCN,EAAAA,QAAUG,OACVH,EAAAA,QAAUK,SAEZg3B,aAAcr3B,EAAAA,QAAUG,OACxBm3B,YAAat3B,EAAAA,QAAUM,UAAU,CAC/BN,EAAAA,QAAUG,OACVH,EAAAA,QAAUK,SAEZk3B,eAAgBv3B,EAAAA,QAAUG,OAC1Bq3B,QAASx3B,EAAAA,QAAUG,OACnBg4B,WAAYn4B,EAAAA,QAAUI,OAlBjB,uBAqBA,IAAM04B,EAAsC,UAAU/4B,MAAM,CACjEmiB,UAAWliB,EAAAA,QAAUI,KACrB82B,aAAcl3B,EAAAA,QAAUI,KACxBgiB,SAAUpiB,EAAAA,QAAUI,KACpB4kB,SAAUhlB,EAAAA,QAAUI,KACpBoiB,eAAgBxiB,EAAAA,QAAUI,KAC1Bi3B,aAAcr3B,EAAAA,QAAUI,KACxBk3B,YAAat3B,EAAAA,QAAUI,KACvBm3B,eAAgBv3B,EAAAA,QAAUI,KAC1Bo3B,QAASx3B,EAAAA,QAAUI,OATd,wCAYA,IAAMk4B,EAA0B,UAAUv4B,MAAM,CACrDq6B,mBAAoBp6B,EAAAA,QAAUG,OAC9B+hB,UAAWliB,EAAAA,QAAUK,SAFhB,4BAKA,IAAMq5B,EAA4B15B,EAAAA,QAAUU,QAAQV,EAAAA,QAAUD,MACnEC,EAAAA,QAAUG,OAAO9E,WACjB2E,EAAAA,QAAUU,QAAQV,EAAAA,QAAUG,QAAQ9E,aAF/B,8BAKA,IAAMk9B,EAAuBv4B,EAAAA,QAAUD,MAAM,CAAC,GAA9C,yBAEA,IAAM84B,EAAmB,CAC9BR,mBAAAA,EACAS,oCAAAA,EACAR,wBAAAA,GAHK,qBAMA,IAAMwE,EAAqB,OAC7BxZ,GAD6B,IAEhC2T,YAAa,cACb/U,UAAW,YACXM,eAAgB,SAChBJ,SAAU,YACV4C,SAAU,UACVkS,aAAc,YACdG,aAAc,gBACdG,QAAS,QACTuF,SAAU,WACVzF,YAAa,cACbC,eAAgB,mBAZX,0BAeA,IAAMyF,EAAuB,CAClCF,sBAAAA,GADK,yBAIA,cAAoB,CACzBG,MAAO,QACPC,OAAQ,SACRC,UAAW,YACXC,OAAQ,SACRC,UAAW,YACXC,IAAK,MANA,4GCzHP,MAKA,8bALA,OACA,UACA,UACA,QACA,OACA,4LAEA,IAAQha,EAAqB3pB,EAAAA,UAArB2pB,iBAEFia,EAAoB,YAAC,IACrBzgC,EADuBk/B,EAAqC,EAArCA,iBAAkB/D,EAAmB,EAAnBA,aAK7C,OAHI+D,GAAoB/D,IACtBn7B,EAAU,UAAE0gC,UAAUvF,EAAc,CAAE/V,UAAW8Z,KAE5Cl/B,GAAW3I,EAAAA,QAAEspC,MAAMxF,IAAiB,CAAC,CAC7C,EAEM,SAAS8D,EAAT,GAA6B,IAClChiC,EAKC,EALDA,KACAiiC,EAIC,EAJDA,iBACA/D,EAGC,EAHDA,aACA74B,EAEC,EAFDA,SACAG,EACC,EADDA,SAEA,GAA4C,IAAAsW,UAAS0nB,EAAkB,CAAEvB,iBAAAA,EAAkB/D,aAAAA,KAA3F,SAAO8B,EAAD,KAAiB2D,EAAjB,KACAC,GAAa,IAAAziC,UAAQ,kBAAM+8B,GAAgB,UAAEtiC,IAAIsiC,GAAcn7B,SAAAA,GAAO,MAAK,CAC/ES,GAAIT,EAAQolB,UACZlgB,MAAOlF,EAAQs9B,mBACfwD,eAAgB9gC,EAAQ+gC,eACxBC,2BAA4BhhC,EAAQu9B,2BACpC3/B,aAAcoC,EAAQw9B,aALoD,GAAzD,GAMd,CAACrC,IAYN,OATA,IAAA7f,YAAU,WACRhZ,EAAS,CACP2oB,SAAUzE,EAAiBpB,UAC3BlgB,MAAO+3B,EAAe7X,UACtB1lB,SAAS,EACTu9B,eAAAA,GAEH,GAAE,CAAC4D,EAAY5D,IAGd,+BAAK//B,UAAS,oCAA+B+/B,EAAe8D,eAAiB,8BAAgC,KAC3G,wBAAC,EAAA5jB,SAAD,CACE8jB,eAAgB,UAAEP,UAAUG,EAAY,CAAEpgC,GAAIw8B,EAAe7X,aAAgB,CAAC,EAC9EtI,gBAAiB+jB,EACjBK,SAAUC,SAAAA,GAAY,OAAIP,EAAkB,CAC1Cxb,UAAW+b,EAAa1gC,GACxB68B,mBAAoB6D,EAAaj8B,MACjC67B,eAAgBI,EAAaL,eAC7BvD,2BAA4B4D,EAAaH,2BACzCxD,aAAc2D,EAAavjC,cAR/B,EAUE6E,SAAUA,EACV2+B,WAAYC,SAAAA,GAAO,OAAIA,GAAWA,EAAQn8B,KAAAA,IAE3C+3B,EAAe8D,gBAChB,+BAAK7jC,UAAU,yBACb,iCAAOuD,GAAG,oCAAoCvD,UAAU,oCAAoCokC,MAAO,CAAEC,MAAO,UACzGtkC,EAAK2C,UAAUtF,4BAIzB,CAED2kC,EAAoBj8B,UAAY,CAC9B/F,KAAM,UAAUgG,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,KAAK5E,WAC1B6E,aAAcF,EAAAA,QAAUC,KAAK5E,aAC5BA,WACH2gC,iBAAkBh8B,EAAAA,QAAUK,OAC5BjB,SAAUY,EAAAA,QAAUC,KAAK5E,WACzB48B,aAAcj4B,EAAAA,QAAUU,QAAQ43B,EAAAA,yBAChC/4B,SAAUS,EAAAA,QAAUI,MAGtB27B,EAAoBl7B,aAAe,CACjCtB,UAAU,EACVy8B,iBAAkB,KAClB/D,aAAc,GAHhB8D,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,uBAAAA,EAAAA,qBAAAA,EAAAA,4BAAAA,EC/EA,IAEA,EAFA,GAEA,EAFA,OAEA,2BADA,OACA,QAEA,MAA+Dhe,EAAAA,oBAAvD0X,EAAF,EAAEA,UAAWpQ,EAAb,EAAaA,mBAAoBW,EAAAA,EAAAA,oBACvC,EAEIrsB,EAAAA,UADFsiB,EADI,EACJA,mBAAoBqH,EAAAA,EAAAA,iBAEdgC,EAAyBhH,EAAAA,UAAzBgH,qBAED,yBAA+B,YAAC,IAAEgZ,EAA2D,EAA3DA,wBAAyBC,EAAkC,EAAlCA,WAAYzX,EAAsB,EAAtBA,gBACtE0X,EAAeF,EAAwBrZ,kBAAoBhJ,EAAmBwB,iBAC9EghB,GAA4BD,KAC9BrqC,EAAAA,QAAEw0B,OAAO4V,EAAWvZ,WACtB7wB,EAAAA,QAAEw0B,OAAO2V,EAAwBtZ,WACjC7wB,EAAAA,QAAEgjC,QAAQmH,EAAwBtZ,SAASoS,eAAgBmH,EAAWvZ,SAASoS,iBAEjF,OAAO3B,EAAU,CACf1T,mBAAoBuc,EAAwBvc,mBAC5CiV,uBAAwB,CACtB9U,WAAY4E,EACZoQ,cAAc,EACd9U,UAAU,EACV4C,SAAUyZ,EACVjc,gBAAgB,EAChB6U,cAAc,EACdG,SAAS,EACToE,MAAM,EACNtZ,eAAe,EACf2C,iBAAiB,EACjBG,YAAaoZ,IAGlB,EAEM,uBAA6B,YAAC,IAAElI,EAAsD,EAAtDA,eAAgBtU,EAAsC,EAAtCA,cAAe+W,EAAuB,EAAvBA,iBACpE,OAAI/W,EACKsD,EAAqBgR,EAAelU,SAAUkU,EAAehU,cAAe,GAE9EnuB,EAAAA,QAAEw0B,OAAO2N,EAAelU,WAAakU,EAAelU,SAAW2W,EAAmBzC,EAAelU,SAAW2W,CACpH,EAEM,yBAA+BzC,SAAAA,GAAc,MAAK,CACvD1H,sBAAuBvJ,EAAmBiR,EAAehT,EAAiB0B,WAC1E8J,0BAA2B9I,EAAoBsQ,EAAehT,EAAiBd,mBAAqB6C,EAAmBiR,EAAehT,EAAiB0B,WAFrG,CAA7C,oHC1CP,cACA,UACA,UACA,QACA,OACA,4DAEA,IAAQ1B,EAAqB3pB,EAAAA,UAArB2pB,iBACAwZ,EAA0BE,EAAAA,qBAA1BF,sBAEF4B,GAAY,yBACfpb,EAAiBlB,SAAWhrB,cAC5BksB,EAAiB0B,SAAW5tB,YAC5BksB,EAAiBd,eAAiBprB,UAClCksB,EAAiB+T,aAAejgC,kBAChCksB,EAAiB4T,aAAe9/B,cAChCksB,EAAiBkU,QAAUpgC,SAC3BksB,EAAiBgU,YAAclgC,gBAC/BksB,EAAiBiU,eAAiBngC,aAClCksB,EAAiB2T,YAAc7/B,WAC/BksB,EAAiBpB,UAAY9qB,WAVX,cAWlBksB,EAAiBsY,KAAOxkC,eACxBksB,EAAiBhB,cAAgBlrB,aACjCksB,EAAiB8D,gBAAkBhwB,qBACnCksB,EAAiB8Y,cAAgBhlC,mBACjCksB,EAAiB+D,eAAiBjwB,oBAClCksB,EAAiBmL,SAAWr3B,gCAGzBunC,EAAY,mBACfrb,EAAiBlB,SAAW,+BAC5BkB,EAAiB0B,SAAW,8BAC5B1B,EAAiBd,eAAiB,6BAClCc,EAAiB+T,aAAe,yBAChC/T,EAAiB4T,aAAe,gCAChC5T,EAAiBsY,KAAO,+BACxBtY,EAAiBhB,cAAgB,8BACjCwa,EAAsBrO,SAAW,6BAGvByM,EAAmB,gBAC9BnT,EAD8B,EAC9BA,SACAhuB,EAF8B,EAE9BA,KAF+B,EAAD,EAG9BihC,WAAAA,OAAU,OAHqB,IAAD,EAI9BC,WAAAA,OAAU,MAAG,KAJkB,IAAD,EAK9BE,cAAAA,OAAa,OALkB,EAM/BnS,EAN8B,EAM9BA,SAN8B,OAQ9B,+BAAKhvB,UAAS,wBAAmB8iC,EAAsB/U,IAAaA,IAClE,wBAAC,EAAA6W,oBAAD,CACEnhC,MAAOihC,EAAa3W,IAAb2W,GAAAA,OAA6B3kC,EAAK2C,UAAUgiC,EAAa3W,KAAzD2W,OAAsE1D,EAAU,WAAOjhC,EAAK2C,UAAUtF,eAAwB,IACrIsG,WAAU,wBAAmBo/B,EAAsB/U,IACnD9oB,eAAgBk8B,EAAgB,GAAKwD,EAAa5W,GAClD8W,kBAAmB5D,GAElBjS,GAfyB,EAAzB,qBAmBPkS,EAAiBp7B,UAAY,CAC3BioB,SAAU/nB,EAAAA,QAAUG,OAAO9E,WAC3BtB,KAAM,UAAUgG,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,OAEvB+oB,SAAUhpB,EAAAA,QAAUhJ,KACpBikC,WAAYj7B,EAAAA,QAAUhJ,KACtBmkC,cAAen7B,EAAAA,QAAUI,KACzB46B,WAAYh7B,EAAAA,QAAUI,MAGxB86B,EAAiBr6B,aAAe,CAC9B9G,KAAM,CACJ2C,UAAWvI,EAAAA,QAAE2M,MAEfq6B,eAAe,EACfH,YAAY,EACZC,WAAY,KACZjS,SAAU,KAPZkS,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,mBAAAA,ECtEA,MAOA,8bAPA,OACA,UACA,UACA,SACA,OAEA,SACA,4LAEA,MAAgDvhC,EAAAA,UAAxCguB,EAAF,EAAEA,kBAAmBrE,EAAAA,EAAAA,iBAEpB,SAASuY,EAAT,GAA4B,IACjCz8B,EAMC,EANDA,SACAG,EAKC,EALDA,SACAu8B,EAIC,EAJDA,WACAjf,EAGC,EAHDA,gBACArH,EAEC,EAFDA,UACA4jB,EACC,EADDA,mBAEA,GAA6B,IAAAjc,WAArBpjB,EAAF,EAAEA,KAAMkB,EAAAA,EAAAA,WACd,GAA6B,IAAA4a,UAASimB,GAA/BgD,EAAP,OAAM,GACAC,GAAqB,IAAA7jC,UAAQ,WACjC,IAAM8jC,EAA6B7qC,EAAAA,QAAE0iB,KAAKuiB,GAAoB6F,SAAAA,GAAiB,OAAI9qC,EAAAA,QAAEK,QAAQyqC,EAAkBzpB,GAA5ErhB,IAC7B+qC,EAAkCF,EAA6BA,EAA2BxpB,GAAa,GAG7G,OAAOrhB,EAAAA,QAAE+B,QAAQgpC,EAAiCJ,EACnD,GAAE,CAACtpB,EAAW4jB,EAAoB0F,IAC7BK,GAAqB,IAAA/iC,cACzB9H,SAAAA,GAAI,OAAIH,EAAAA,QAAE8I,KAAK8hC,GAAoBK,SAAAA,GAAS,OAAIjrC,EAAAA,QAAE4nB,SAASqjB,IAAcjrC,EAAAA,QAAE4nB,SAASznB,IAAS8qC,EAAUC,gBAAkB/qC,EAAK+qC,aAAtHlrC,GADiB,GAEzB,CAAC4qC,IAEGO,GAAkB,IAAApkC,UAAQ,kBAAMikC,EAAmBrD,EAAjC,GAA8C,CAACqD,EAAoBrD,IAE3F,OACE,wBAAC,EAAAzS,eAAD,CACE9pB,SAAUA,EACVxB,gBAAiB,CACf5B,WAAY,YAAC,IAAEK,EAAwD,EAAxDA,QAA0CwF,EAAc,EAA/CzF,KAAS+mB,EAAiBsY,MAChDx8B,EAAS,CACP2oB,SAAUzE,EAAiBsY,KAC3B55B,MAAAA,EACAxF,QAASA,IAAY2iC,EAAmBn9B,IAE3C,EACDhE,MAAOslB,EAAiBsY,KACxBr/B,KAAK,EAAD,GAAK+mB,EAAiBsY,KAAOE,GACjC79B,OAAQ0pB,EACR9K,gBAAAA,EACA9iB,KAAMkB,EACNqvB,iBAAkB/qB,GAAY+/B,EAAkB,CAACvlC,EAAK2C,UAAUtF,yCAAiD,KAGxH,CAEDykC,EAAmB/7B,UAAY,CAC7Bg8B,WAAY97B,EAAAA,QAAUG,OACtBf,SAAUY,EAAAA,QAAUC,KAAK5E,WACzBkE,SAAUS,EAAAA,QAAUI,KACpByc,gBAAiB7c,EAAAA,QAAUI,KAAK/E,WAChC+9B,mBAAoBM,EAAAA,0BACpBlkB,UAAWxV,EAAAA,QAAUK,QAGvBw7B,EAAmBh7B,aAAe,CAChCtB,UAAU,EACVu8B,WAAY,KACZ1C,mBAAoB,GACpB5jB,UAAW,KAJbqmB,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,aAAAA,EChEA,IAGA,EAHA,OACA,GAEA,EAFA,QAEA,2BADA,QACA,QAEO,UAAgB,WACrB,IAAM9hC,GAAO,IAAAytB,YAAWC,EAAAA,aAClBxsB,GAAa,IAAAC,UAAQ,kBAAM,IAAAC,iBAAgBpB,EAAM,CAAC2tB,EAAAA,SAArC,GAAgE,CAAC3tB,IAEpF,MAAO,CAAEA,KAAAA,EAAMkB,WAAAA,EAChB,CALM,6GCJP,MAKA,8bALA,OACA,UACA,UACA,QACA,QACA,mLAEA,IAAQqoB,EAFR,KAE6BnC,UAArBmC,iBAER,EAA6D1E,EAAAA,UAArD2gB,EAAF,EAAEA,uBAAwBhS,EAAAA,EAAAA,yBAC1BiS,EAAgBrrC,EAAAA,QAAEmB,KAAKiqC,GACvBE,EAAmBtrC,EAAAA,QAAEurC,OAAOH,GAAwBA,EAAuBI,SAE1E,SAASzD,EAAT,GAA8B,IACnCniC,EAIC,EAJDA,KACAoiC,EAGC,EAHDA,UACA/8B,EAEC,EAFDA,SACAG,EACC,EADDA,SAEMqgC,GAAgB,IAAA1kC,UAAQ,kBAAM,UAAEvF,IAAI6pC,GAAeK,SAAAA,GAAI,MAAK,CAChEtiC,GAAIsiC,EACJ79B,MAAOjI,EAAK2C,UAAU6wB,EAAyBsS,IAFY,GAAvC,GAGjB,CAAC9lC,IAEA+lC,GAAmB,IAAA5kC,UAAQ,iBAAO,CAAEqC,GAAI4+B,GAAasD,EAA1B,GAA+C,CAACtD,IAWjF,OARA,IAAA/jB,YAAU,WACRhZ,EAAS,CACP2oB,SAAUzE,EAAiBhB,cAC3BtgB,MAAO89B,EAAiBviC,GACxBf,SAAS,GAEZ,GAAE,IAGD,+BAAKxC,UAAU,2CACb,wBAAC,EAAAigB,SAAD,CACE8jB,eAAgB5pC,EAAAA,QAAEqpC,UAAUoC,EAAeE,IAAqB,CAAC,EACjElmB,gBAAiBgmB,EACjB5B,SAAW+B,SAAAA,GACT3gC,EAAS,CACP2oB,SAAUzE,EAAiBhB,cAC3BtgB,MAAO+9B,EAAKxiC,GACZf,SAAS,GAEZ,EACD+C,SAAUA,EACV2+B,WAAYC,SAAAA,GAAO,OAAIA,GAAWA,EAAQn8B,KAAAA,IAGjD,CAEDk6B,EAAqBp8B,UAAY,CAC/B/F,KAAM,UAAUgG,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,KAAK5E,aACzBA,WACH8gC,UAAWn8B,EAAAA,QAAUG,OACrBf,SAAUY,EAAAA,QAAUC,KAAK5E,WACzBkE,SAAUS,EAAAA,QAAUI,MAGtB87B,EAAqBr7B,aAAe,CAClCtB,UAAU,EACV48B,UAAW,KAFbD,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,qBClDO,YAA8B,MAAwD,EAAtD5F,eAAAA,OAAc,MAAG,CAAC,EAApB,EAAuBT,EAAiC,EAAjCA,aAAcE,EAAmB,EAAnBA,gBAClEiK,EAA8B1J,EAAeuG,SAAWH,EAAqBJ,QACnF,GAA2B,IAAAzmB,UAASygB,EAAetR,UAA5Cib,EAAP,OAAM,GACN,GAAsD,IAAApqB,WAAS,WAC7D,GAAIggB,EACF,OAAO4C,EAAAA,2BAGT,IAAMyH,EAA4BF,EAA2B,KAAM1c,EAAiBd,gBAAkB2d,EAAY7J,IAAoB,CAAC,EAEvI,OAAO,EAAP,OACKmC,EAAAA,4BACA1C,GACAmK,EAEN,IAZD,SAAOxJ,EAAD,KAAsB0J,EAAtB,KAyBN,OAXA,IAAAhoB,YAAU,YACHyd,GAAgBoK,IAAqB3J,EAAetR,UAAYgb,IAC9DG,EAAY7J,IACf8J,GAAuBC,SAAAA,GAAsB,cACxCA,GADwC,QAE1C/c,EAAiBd,gBAAiB,GAFf,IAM3B,GAAE,CAACyd,EAAkB3J,EAAetR,SAAU6Q,EAAcS,EAAgB0J,IAEtEtJ,CACR,EA1CD,IAMA,EANA,OACA,GAKA,EALA,OAKA,2BAJA,OACA,SACA,SAEA,6PAAAl+B,EAAA,EAAAA,EAAA,iBAAAA,IAAA,uBAAAA,GAAA,UAAAA,GAAA,GAAAA,EAAA,4XAEA,MAAmDmB,EAAAA,UAA3C+iC,EAAF,EAAEA,qBAAsBpZ,EAAAA,EAAAA,iBAExB6c,EAAc7J,SAAAA,GAAc,OAAIniC,EAAAA,QAAEmsC,SAAShK,KAAmB,IAAAla,aAAYka,EAAetR,WAC7FsR,EAAetR,UAAW,IAAAlB,aAAY,IAAIvH,KAD5C,CAgCC,+GC1CD,MAcA,8bAdA,OACA,UACA,UACA,QACA,OACA,SACA,OACA,SACA,QAEA,SACA,SACA,SACA,SACA,yQAAA/jB,EAAA,EAAAA,EAAA,iBAAAA,IAAA,iBAAAA,GAAA,wGAEA,MAA+DulB,EAAAA,oBAAvD0X,EAAF,EAAEA,UAAWpQ,EAAb,EAAaA,mBAAoBW,EAAAA,EAAAA,oBAEjCua,EAAS,YAAC,IACd5K,EAWI,EAXJA,UACAsC,EAUI,EAVJA,aACAjH,EASI,EATJA,WACAlK,EAQI,EARJA,gBACAkS,EAOI,EAPJA,cACAD,EAMI,EANJA,iBACAhI,EAKI,EALJA,sBACAyP,EAII,EAJJA,gBACA1K,EAGI,EAHJA,gBACA2K,EAEI,EAFJA,eACAxH,EACI,EADJA,gBAEQl/B,GAAS,IAAAojB,WAATpjB,KACA2mC,EAAqBF,EAArBE,iBACR,GAA4C,IAAA7qB,UAAS8f,GAArD,SAAOW,EAAD,KAAiBC,EAAjB,KACN,GAA4D,IAAA1gB,WAAS,GAArE,SAAO2gB,EAAD,KAAyBC,EAAzB,KACAC,GAAsB,IAAAC,sBAAqB,CAAEL,eAAAA,EAAgBT,cAAc,IAuBjF,OACE,wBAAC,UAAMzM,SAAP,KACE,+BAAKpvB,UAAU,cACb,+BAAKA,UAAU,iBACZ0mC,GAAoB3mC,EAAK2C,UAAUtF,0MACpC,wBAAC,EAAAugC,SAAD,CAAUC,MAAM,YAAY79B,EAAK2C,UAAUtF,iBAG/C,wBAAC,EAAAygC,WAAD,CACEI,aAAcA,EACdj+B,UAAU,mBACV08B,oBAAqBA,EACrBJ,eAAgBA,EAChB4C,0BAA2BpS,EAC3BgR,cApCW,YAAC,IAAEhB,EAAY,EAAZA,MAClBP,EAAkBO,GAClBL,EAA0BpR,EAAmByR,EAAM9R,WAAagB,EAAoB8Q,EAAMtU,iBAC1Fie,EAAe,CACbnK,eAAgBQ,EAChB6J,kBAAmBlL,EAAU,CAC3B1T,mBAAoB+U,EAAM/U,mBAC1BiV,uBAAwB,CACtB9U,WAAY4E,EACZuQ,cAAc,EACdG,SAAS,EACTF,aAAa,EACbJ,cAAc,EACd9U,UAAWjuB,EAAAA,QAAE4nB,SAASid,GACtBzB,gBAAgB,EAChB/U,gBAAgB,EAChBwC,UAAU,MAIjB,EAiBKgU,cAAeA,EACfD,iBAAkBA,EAClBf,oBAAqBlC,EACrBmD,gBAAiBA,IAElBzC,GAA0B,wBAAC,EAAAn4B,gBAAD,CAAiBrE,UAAU,6BAA6BD,EAAK2C,UAAUtF,iNAChGjD,EAAAA,QAAE4nB,SAASgV,IACb,wBAAC,EAAAD,gCAAD,CAAiC/2B,KAAMA,EAAMi3B,WAAYA,EAAYC,WAAYl3B,EAAK2C,UAAUtF,QAAe25B,sBAAuBA,IAI3I,EAEDwP,EAAOzgC,UAAY,CACjB61B,UAAW,UAAU51B,MAAM,CACzB6gC,iBAAkB5gC,EAAAA,QAAUK,SAE9B43B,aAAcj4B,EAAAA,QAAUU,QAAQ43B,EAAAA,yBAAyBj9B,WACzD21B,WAAYhxB,EAAAA,QAAUI,KAAK/E,WAC3ByrB,gBAAiB9mB,EAAAA,QAAUI,KAAK/E,WAChC29B,cAAeh5B,EAAAA,QAAUG,OACzB44B,iBAAkB/4B,EAAAA,QAAU4d,WAAWrB,MACvCwU,sBAAuB/wB,EAAAA,QAAUG,OACjCqgC,gBAAiB,UAAUzgC,MAAM,CAC/B2gC,iBAAkB1gC,EAAAA,QAAUhJ,KAC5B6pC,kBAAmB7gC,EAAAA,QAAUG,SAE/B21B,gBAAiB91B,EAAAA,QAAUG,OAC3BsgC,eAAgBzgC,EAAAA,QAAUC,KAAK5E,WAC/B49B,gBAAiBj5B,EAAAA,QAAUI,MAG7BmgC,EAAO1/B,aAAe,CACpB80B,UAAW,CAAC,EACZqD,cAAe,KACfD,iBAAkB,KAClBhI,sBAAuB,KACvB+E,gBAAiB,GACjB0K,gBAAiB,CAAC,EAClBvH,iBAAiB,GAGZ,IAAM6H,EAAqBh/B,SAAAA,GAChC,IACEm0B,EAIEn0B,EAJFm0B,qBACAD,EAGEl0B,EAHFk0B,qBACA+K,EAEEj/B,EAFFi/B,OAGMF,EADJ/+B,EADF0+B,gBAEMK,kBACR,GAAsC,IAAAhrB,UAAS,CAAC,GAAhD,SAAOmrB,EAAD,KAAcP,EAAd,KACE1mC,GAAS,IAAAojB,WAATpjB,KAeFyc,GAAU,IAAA0H,kBAAiB+iB,EAAAA,4BAEjC,OACE,+BAAKjnC,UAAU,WACb,wBAAC,EAAAknC,MAAD,CACElnC,UAAWwc,EAAQ2qB,QACnBC,qBAAsBrnC,EAAK2C,UAAUtF,UACrCiqC,WAAYR,GAAqB9mC,EAAK2C,UAAUtF,QAChDkqC,kBAAgB,EAChBC,gBAAc,EACdR,OAAQA,EACRS,UAAWxL,EACXyL,sBAzBwB,WAC5B,IAAQnL,EAA4C0K,EAA5C1K,eAAF,EAA8C0K,EAA5BL,iBAAAA,OAAgB,OAAG,EAC3C,OACE,mCACE,+BAAK3mC,UAAU,iBACb,wBAAC,EAAA0nC,cAAD,CAAe1U,QAAS,WAAF,OAAQiJ,EAAqBK,EAAnD,EAAoE/2B,SAAUohC,GAC3E5mC,EAAK2C,UAAUtF,SAElB,wBAAC,EAAAuqC,cAAD,CAAe3U,QAAS,WAAF,OAAQgJ,GAAoB,GAAKj8B,EAAK2C,UAAUtF,YAI7E,EAcKwqC,WAAY,CAAE5nC,UAAWwc,EAAQqrB,UAEjC,wBAACtB,EAAD,KAAYz+B,EAAZ,CAAmB2+B,eAAgBA,MAI1C,EA3CM,sBA6CPK,EAAkBhhC,UAAY,CAC5Bm2B,qBAAsBj2B,EAAAA,QAAUC,KAAK5E,WACrC26B,qBAAsBh2B,EAAAA,QAAUC,KAAK5E,WACrC0lC,OAAQ/gC,EAAAA,QAAUI,KAClBu1B,UAAW,UAAU51B,MAAM,CACzB6gC,iBAAkB5gC,EAAAA,QAAUK,SAE9B43B,aAAcj4B,EAAAA,QAAUU,QAAQ43B,EAAAA,yBAChCtH,WAAYhxB,EAAAA,QAAUI,KACtB0mB,gBAAiB9mB,EAAAA,QAAUI,KAC3B44B,cAAeh5B,EAAAA,QAAUG,OACzB44B,iBAAkB/4B,EAAAA,QAAU4d,WAAWrB,MACvCwU,sBAAuB/wB,EAAAA,QAAUG,OACjCqgC,gBAAiB,UAAUzgC,MAAM,CAC/B2gC,iBAAkB1gC,EAAAA,QAAUhJ,KAC5B6pC,kBAAmB7gC,EAAAA,QAAUG,SAE/B21B,gBAAiB91B,EAAAA,QAAUG,QAG7B2gC,EAAkBjgC,aAAe,CAC/BkgC,QAAQ,EACRpL,UAAW,CAAC,EACZsC,aAAc,GACdjH,YAAY,EACZlK,iBAAiB,EACjBkS,cAAe,KACfD,iBAAkB,KAClByH,gBAAiB,CAAC,EAClBzP,sBAAuB,KACvB+E,gBAAiB,GAVnBgL,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,iBAAAA,EAAAA,2BAAAA,EAAAA,sBAAAA,EAAAA,qBAAAA,EClLA,iSAAAtoC,EAAA,EAAAA,EAAA,iBAAAA,IAAA,uBAAAA,GAAA,UAAAA,GAAA,GAAAA,EAAA,4XAEA,IAAMspC,EAAa,UAWZ,kBAAwB,gBAAGC,EAAH,EAAGA,QAAH,MAAkB,CAC/Cr+B,UAAW,GACXoc,WAAY,SAEZ,uBAAwB,CACtBpF,MAAO,QAET,mBAAoB,CAClB2E,YAAa,GACb7b,QAAS,eACTI,cAAe,OAEjB,qBAAsB,CACpBD,aAAc,GACd,2CAA4C,CAC1C+W,MAAO,kBACPiG,OAAQ,IAGV,gBAAiB,CACfhd,aAAc,EACd,eAAgB,CACdq+B,UAAW,IAGb,cAAe,CACbtnB,MAAO,SAIX,YAAa,CACX,gBAAiB,CACfiG,OAAQ,IAEV,mBAAoB,CAClBA,OAAQ,MAId,sCAAsC,EAAtC,CACEjG,MAAO,KAjDuB,CAChC,wBAAyB,CACvBiG,OAAQ,GACR,2CAA4C,CAC1Cjd,UAAW,MAgDf,cAAe,CACbgX,MAAO,IAET,wBAAyB,CACvBqF,WAAY,OACZnc,cAAe,UAEjB,iCAAkC,CAChC8W,MAAO,KAET,WAAY,CACVA,MAAO,KAET,kBAAmB,CACjB2F,OAAQ,OACR4hB,WAAY,OACZp+B,MAAO1P,EAAAA,QAAE+tC,OAAOH,EAAS,iBAE3B,2BAA4B,CAC1Bl+B,MAAOi+B,GA9DoB,EAkExB,IAAMK,EAAwB,WAAH,MAAU,CAC1C,gBAAgB,EAAhB,GACEx+B,aAAc,EACd,gBAAiB,CACf,cAAe,EAEf,QAAS,CACP6b,SAAU,GACV7E,WAAY,IACZoF,WAAY,MAGhB,aAAc,CACZ,gBAAiB,CACfpc,aAAc,EAEd,cAAe,CACb+W,MAAO,OACPsF,YAAa,GAGf,eAAgB,CACdW,OAAQ,KAIZ,YAAa,CACX,gBAAiB,CACfA,OAAQ,IAEV,mBAAoB,CAClBA,OAAQ,IAEV,qBAAsB,CACpBjd,UAAW,OA7Ga,CAChC,wBAAyB,CACvBid,OAAQ,GACR,2CAA4C,CAC1Cjd,UAAW,MAwEf,IAwCE,+BAAgC,CAC9B,WAAY,CACV0+B,aAAc,WACdC,UAAW,SAGb,yBAA0B,CACxB3nB,MAAO,sBAKb,sBAAsB,EAAtB,GACE,uBAAwB,CACtBA,MAAO,SAlIqB,CAChC,wBAAyB,CACvBiG,OAAQ,GACR,2CAA4C,CAC1Cjd,UAAW,MA4Hf,IAME,mBAAoB,CAClB2b,YAAa,GACb3E,MAAO,kBACPiG,OAAQ,cACRqhB,UAAW,IACXr+B,aAAc,GACdoc,WAAY,OAEZ,8BAA+B,CAC7BsiB,UAAW,SAIf,qBAAsB,CACpB1+B,aAAc,GAEd,uBAAwB,CACtB+W,MAAO,kBACPiG,OAAQ,IAGV,iCAAkC,CAChCZ,WAAY,QAGd,iCAAkC,CAChCse,MAAO,SAGT,iCAAkC,CAChC1d,OAAQ,IACR,aAAc,CACZnd,QAAS,UACTmd,OAAQ,MAIZ,oDAAqD,CACnDld,WAAY,KAIhB,cAAe,CACbkd,OAAQ,GACRjd,WAAY,GACZC,aAAc,IAGhB,2BAA4B,CAC1BE,MAAOi+B,EACP/hB,WAAY,UAIhB,iBAAkB,CAChB,gBAAiB,GAEjB,UAAW,CACTrc,UAAW,IAGb,+BAAgC,CAC9BA,UAAW,IAzHoB,EAA9B,0BA8HA,6BAAmC,WAAH,MAAU,CAC/C,UAAW,CACT,6BAA8B,CAC5B4+B,SAAU,oBACVC,OAAQ,oBAGZV,QAAS,CACPU,OAAQ,mBAGVpB,QAAQ,EAAD,KACFgB,KADE,IAEL,mBAAoB,CAClBznB,MAAO,IACPhX,UAAW,GACX8+B,UAAW,SACX,sBAAuB,CACrB,2BAA4B,CAC1B9nB,MAAO,IACP,qBAAsB,CACpBjX,WAAY,EACZ,yCAA0C,CACxCiX,MAAO,OACP,WAAY,CACVA,MAAO,OACP2nB,UAAW,OACXD,aAAc,WACdtiB,WAAY,SACZ2iB,SAAU,SACV,WAAY,CACV/nB,MAAO,KACP4nB,SAAU,WACVI,KAAM,QAGV,yBAA0B,CACxBhoB,MAAO,OACPioB,SAAU,gBAId,yBAA0B,CACxBC,UAAW,KAGb,mBAAoB,CAClB,yBAA0B,CACxBloB,MAAO,YAOjB,0BAA2B,CACzBhX,UAAW,GACXC,aAAc,GACdgX,WAAY,SACZ6E,SAAU,GACVO,WAAY,QAGd,qBAAsB,CACpB8iB,UAAW,oBACX,mBAAoB,CAClBn/B,UAAW,GAEX,WAAY,CACV2b,YAAa,MAKnB,gBAAiB,CACf1E,WAAY,SACZ6E,SAAU,GACVO,WAAY,OACZ,eAAgB,CACdtc,WAAY,OA/EoB,EAsFnC,mBAAyB,WAAH,MAAU,CACrCq/B,QAAQ,EAAD,KACFX,KADE,IAEL,uCAAwC,CACtC1+B,WAAY,GAEd,mBAAoB,CAClB,yCAA0C,CACxCiX,MAAO,OACP,WAAY,CACVA,MAAO,OACP2nB,UAAW,OACXD,aAAc,WACdtiB,WAAY,SACZ2iB,SAAU,SACVziB,YAAa,EACb,WAAY,CACVtF,MAAO,KACP4nB,SAAU,WACVI,KAAM,QAGV,yBAA0B,CACxBhoB,MAAO,kBACPioB,SAAU,iBAIhB,0BAA2B,CACzBj/B,UAAW,GACXC,aAAc,GACdgX,WAAY,SACZ6E,SAAU,GACVO,WAAY,QAEd,mCAAoC,CAClCrc,UAAW,KApCe,CAAzB,6GCrSP,MAYA,8bAZA,OACA,UACA,UACA,SACA,SACA,OACA,QAEA,SACA,SACA,SACA,SACA,mPAAAlL,EAAA,0CAAAA,EAAA,0BAAAA,EAAA,EAAAA,EAAA,SAAAA,IAAA,IAAAA,GAAA,uHAAAA,EAAA,EAAAA,EAAA,SAAAA,IAAA,IAAAA,GAAA,2UAAAA,EAAA,EAAAA,EAAA,iBAAAA,IAAA,uBAAAA,GAAA,UAAAA,GAAA,GAAAA,EAAA,4XAEA,SAASuqC,EAAT,GAA6B,IAC3BxE,EAaC,EAbDA,WACA1I,EAYC,EAZDA,aACAG,EAWC,EAXDA,qBACAC,EAUC,EAVDA,qBACAgC,EASC,EATDA,aACA+K,EAQC,EARDA,wBACAjS,EAOC,EAPDA,sBACAC,EAMC,EANDA,WACAmF,EAKC,EALDA,YACArP,EAIC,EAJDA,gBACAmc,EAGC,EAHDA,gBACA7J,EAEC,EAFDA,mBACA7X,EACC,EADDA,sBAEM2hB,GAAa,IAAA7M,UACXt8B,GAAS,IAAAojB,WAATpjB,KAER,GAA8D,IAAA8b,WADtC,WAAH,OAAG,OAAY0oB,GAAZ,IAAwBrc,UAAWX,GAAyBuF,EAAkBmc,EAAkB1E,EAAWrc,WAAnI,IACA,SAAOoc,EAAD,KAA0B6E,EAA1B,KACA3sB,GAAU,IAAA0H,kBAAiBklB,EAAAA,kBACzBxhB,GAAuB,IAAAyhB,uBAAsB,CAAEtpC,KAAAA,EAAMunB,IAAKgd,EAAwBpc,UAAWX,sBAAAA,IAA7FK,mBAC4B0hB,GAAsC,IAAAC,0BAAyB,CACjGxpC,KAAAA,EAAMunB,IAAKgd,EAAwBpc,UAAWF,eAAe,EAAM8E,gBAAAA,EAAiBvF,sBAAAA,IAD9E0F,2BAGFA,GAA6B,IAAA/rB,UACjC,kBAAQ/G,EAAAA,QAAEwjB,IAAI2rB,EAAmC,oBAAsB,GAAKhF,EAAwBpX,mBAAqBoc,EAAkCpc,iBACvJ,CAAEA,iBAAkB,MAASoc,CAFA,GAGjC,CAACA,EAAmChF,EAAwBpX,mBAExDjF,GAA6B,IAAA/mB,UACjC,kBAAOojC,EAAwBpX,iBAAmB,IAAOJ,GAA6E,OAA1D3yB,EAAAA,QAAEwjB,IAAIsP,EAA4B,mBAD7E,GAEjC,CAACA,EAA4BH,EAAiBwX,EAAwBpX,oBAExE,IAAA9O,YAAU,YACH4qB,GAA2BE,EAAWtM,SACzCsM,EAAWtM,QAAQC,gBAEtB,GAAE,CAACmM,IAEJ,IAAIQ,EAAoBzpC,EAAK2C,UAAUtF,QACnCy+B,EACF2N,EAAoBzpC,EAAK2C,UAAUtF,UAC1B4rC,IACTQ,EAAoBzpC,EAAK2C,UAAUtF,UAErC,IAAM2/B,GAAkB,IAAA0M,wBAAuB,CAAEnF,wBAAAA,EAAyBC,WAAAA,EAAYzX,gBAAAA,IACtF,OACE,+BAAK9sB,UAAS,kDAA6Cwc,EAAQssB,SAAWrL,IAAKyL,IAC9EF,GACH,+BAAKhpC,UAAU,iBACb,+BAAKA,UAAU,eACb,sCAAS67B,EACL97B,EAAK2C,UAAUtF,sCACf2C,EAAK2C,UAAUtF,sCAIvB,+BAAK4C,UAAU,cACb,+BAAKA,UAAU,cACb,+BAAKA,UAAU,MACZ67B,GAAgBmN,EACfjpC,EAAK2C,UAAUtF,+WACf2C,EAAK2C,UAAUtF,sMACjB,wBAAC,EAAAugC,SAAD,CAAUC,MAAM,YAAY79B,EAAK2C,UAAUtF,iBAG/C,wBAAC,EAAAygC,WAAD,CACEE,WAAYwG,EACZzG,cAAe,gBAAGhB,EAAH,EAAGA,MAAH,OAAeqM,EAA2BrM,EAA1C,EACf98B,UAAU,mBACVs8B,eAAgBgI,EAChB5H,oBAAmB,OACd+B,EAAAA,4BADc,IAEjBvW,UAAW8gB,GAA2BnN,EACtCzT,SAAU4gB,GAA2BnN,EACrCvT,cAAe0gB,GAA2BnN,IAE5CoC,aAAcA,EACdiB,0BAA2BpS,EAC3B6C,iCAAkCkM,EAClCM,YAAaA,EACbiD,mBAAoBA,EACpBpX,eAAa,EACbT,sBAAuBA,EACvBK,mBAAoBA,EACpBqF,2BAA4BA,EAC5BhF,2BAA4BA,KAG9B9tB,EAAAA,QAAE4nB,SAASgV,IACX,wBAAC,EAAAD,gCAAD,CAAiC/2B,KAAMA,EAAMi3B,WAAYA,EAAYC,WAAYuS,EAAmBzS,sBAAuBA,IAE7H,+BAAK/2B,UAAU,eACb,iCACEgI,MAAOwhC,EACPjmC,GAAG,uBACHvD,UAAS,0BAAqB+8B,EAAkB,GAAK,YACrDl7B,KAAK,SACLmxB,QAAS,WAAF,OAAQiJ,EAAqBqI,EALtC,EAME/+B,UAAWw3B,IAEb,iCACE/0B,MAAOjI,EAAK2C,UAAUtF,UACtBmG,GAAG,uBACHvD,UAAU,kBACV6B,KAAK,SACLmxB,QAASgJ,KAKlB,CAED+M,EAAoBjjC,UAAY,CAC9By+B,WAAYlG,EAAAA,mBACZxC,aAAc71B,EAAAA,QAAUI,KACxB41B,qBAAsBh2B,EAAAA,QAAUC,KAAK5E,WACrC46B,qBAAsBj2B,EAAAA,QAAUC,KAChCg4B,aAAcj4B,EAAAA,QAAUU,QAAQ43B,EAAAA,yBAChC0K,wBAAyBhjC,EAAAA,QAAUI,KACnC2wB,sBAAuB/wB,EAAAA,QAAUG,OACjC6wB,WAAYhxB,EAAAA,QAAUI,KACtB+1B,YAAaoC,EAAAA,qBACbzR,gBAAiB9mB,EAAAA,QAAUI,KAC3B6iC,gBAAiBjjC,EAAAA,QAAUK,OAC3B+4B,mBAAoBM,EAAAA,0BACpBnY,sBAAuBvhB,EAAAA,QAAUI,MAGnC2iC,EAAoBliC,aAAe,CACjC09B,WAAY/F,EAAAA,UACZ3C,cAAc,EACdI,qBAAsB9hC,EAAAA,QAAE2M,KACxBm3B,aAAc,GACd+K,yBAAyB,EACzBjS,sBAAuB,KACvBC,YAAY,EACZmF,YAAa,CAAC,EACdrP,iBAAiB,EACjBmc,qBAAiBrhC,EACjBw3B,mBAAoB,GACpB7X,uBAAuB,GAGlB,IAAMmiB,EAAkB,YAAC,IAAE/sB,EAAsB,EAAtBA,OAAWgtB,EAAW,OAChDC,GAAoB,IAAApc,YAAWqc,EAAAA,iBAC/BC,EAAgBntB,GAAUitB,EAEhC,OAAKE,EAKH,wBAAC,EAAAC,wBAAD,CAAyBD,cAAeA,GACtC,wBAACf,EAAwBY,IALpB,wBAACZ,EAAwBY,EAQnC,EAbM,oBAePD,EAAgB5jC,UAAY,CAC1B6W,OAAQ3W,EAAAA,QAAUD,MAAM,CAAC,IAG3B2jC,EAAgB7iC,aAAe,CAC7B8V,OAAQ,KADV+sB,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,qBAAAA,EChLA,MAYA,8bAZA,OACA,UACA,UACA,SACA,SACA,OACA,QAEA,SACA,SACA,SACA,SACA,4LAEO,SAASM,EAAT,GAA8B,IACnCzF,EAQC,EARDA,WACAvI,EAOC,EAPDA,qBACAC,EAMC,EANDA,qBACAlF,EAKC,EALDA,sBACAC,EAIC,EAJDA,WACAmF,EAGC,EAHDA,YACA4K,EAEC,EAFDA,OACA9I,EACC,EADDA,aAEMiL,GAAa,IAAA7M,UACXt8B,GAAS,IAAAojB,WAATpjB,KACFyc,GAAU,IAAA0H,kBAAiB+iB,EAAAA,6BACjC,IAAA7oB,YAAU,kBAAM8qB,EAAWtM,SAAWsM,EAAWtM,QAAQC,gBAAzD,GAA2E,IAC3E,OAAsC,IAAAhhB,UAAS,CAAC,GAAhD,SAAOmrB,EAAD,KAAcP,EAAd,KACA+C,EAAoBzpC,EAAK2C,UAAUtF,QAezC,OACE,+BAAK4C,UAAU,sBACb,wBAAC,EAAAknC,MAAD,CACElnC,UAAWwc,EAAQ2qB,QACnBC,qBAAsBrnC,EAAK2C,UAAUtF,UACrCiqC,WAAYtnC,EAAK2C,UAAUtF,QAC3BkqC,kBAAgB,EAChBC,gBAAc,EACdR,OAAQA,EACRS,UAAWxL,EACXyL,sBAxBwB,WAC5B,IAAQnD,EAAoD0C,EAApD1C,wBAAyB2F,EAA2BjD,EAA3BiD,uBACjC,OACE,mCACE,+BAAKjqC,UAAU,iBACb,wBAAC,EAAA0nC,cAAD,CAAe1U,QAAS,WAAF,OAAQiJ,EAAqBqI,EAAnD,EAA6E/+B,SAAU0kC,EAAwBjqC,UAAU,kBACtHwpC,GAEH,wBAAC,EAAA7B,cAAD,CAAe3U,QAAS,WAAF,OAAQgJ,GAA9B,EAAsDh8B,UAAU,kBAAkBD,EAAK2C,UAAUtF,YAIxG,EAaKwqC,WAAY,CAAE5nC,UAAWwc,EAAQqrB,UAEjC,+BAAK7nC,UAAU,sCACb,+BAAKA,UAAU,cACb,+BAAKA,UAAU,iBACZD,EAAK2C,UAAUtF,sMAChB,wBAAC,EAAAugC,SAAD,CAAUC,MAAM,YAAY79B,EAAK2C,UAAUtF,iBAG/C,+BAAK4C,UAAU,cACb,wBAAC,EAAA69B,WAAD,CACE99B,KAAMA,EACN+9B,cAAe,YAAC,IAAEhB,EAAY,EAAZA,MAChB2J,EAAe,CACbnC,wBAAyBxH,EACzBmN,yBAAyB,IAAAR,wBAAuB,CAAEnF,wBAAyBxH,EAAOyH,WAAAA,EAAYzX,iBAAiB,KAElH,EACD9sB,UAAU,mBACVs8B,eAAgBiI,EAChB7H,oBAAqB+B,EAAAA,2BACrBR,aAAcA,EACd9B,YAAaA,EACbnU,eAAa,EACbkW,4BAA0B,MAI9B/jC,EAAAA,QAAE4nB,SAASgV,IACX,wBAAC,EAAAD,gCAAD,CAAiC/2B,KAAMA,EAAMi3B,WAAYA,EAAYC,WAAYuS,EAAmBzS,sBAAuBA,KAKpI,CAEDiT,EAAqBlkC,UAAY,CAC/By+B,WAAYlG,EAAAA,mBACZrC,qBAAsBh2B,EAAAA,QAAUC,KAAK5E,WACrC46B,qBAAsBj2B,EAAAA,QAAUC,KAChC8wB,sBAAuB/wB,EAAAA,QAAUG,OACjC6wB,WAAYhxB,EAAAA,QAAUI,KACtB+1B,YAAaoC,EAAAA,qBACbwI,OAAQ/gC,EAAAA,QAAUI,KAClB63B,aAAcj4B,EAAAA,QAAUU,QAAQ43B,EAAAA,0BAGlC0L,EAAqBnjC,aAAe,CAClC09B,WAAY/F,EAAAA,UACZvC,qBAAsB9hC,EAAAA,QAAE2M,KACxBiwB,sBAAuB,KACvBC,YAAY,EACZmF,YAAa,CAAC,EACd4K,QAAQ,EACR9I,aAAc,GAPhB+L,EAAAA,GAAAA,SAAAA,EAAAA,GnBvGAvwC,EAAOC,QAAP,eAAAD,EAAA,GAAAA,EAAA,sBAAAA,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,8B,+djECA,SAGA,cAGA,QACA,oBAGA,YACA,IACA,KACA,YAUA,OANA,mCAGA,OAGA,SACA,CAyDA,OArDA,MAGA,MAGA,oBACA,UACA,2BAA0C,qBAE1C,EAGA,gBACA,iDACA,4CAAwD,iBAExD,sCAAiD,UACjD,EAOA,kBAEA,GADA,cACA,aACA,sDACA,0BAGA,GAFA,OACA,mCAAyC,wBACzC,2DAAgH,WAAmB,EAAGD,KAAK,KAAK,IAChJ,QACA,EAGA,gBACA,sBACA,WAA2B,gBAA0B,EACrD,WAAiC,QAAe,EAEhD,OADA,aACA,CACA,EAGA,kBAAsD,gDAA+D,EAGrH,OAIA,W,CAAA,kBqFlFAC,EAAOC,QAAP,eAAAD,EAAA,GAAAA,EAAA,wBAAAA,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,sBAAAA,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,wBAAAA,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,sBAAAA,EAAA,GAAAA,EAAA,sBAAAA,EAAA,GAAAA,EAAA,sBAAAA,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,wBAAAA,EAAA,GAAAA,EAAA,wBAAAA,EAAA,GAAAA,EAAA,wBAAAA,EAAA,GAAAA,EAAA,wBAAAA,EAAA,KAAAA,EAAA,6BAAAA,EAAA,qaCCA,SAEA,SACA,SACA,gsBAEO,IAAMiF,EAAa,OACrBwrC,EAAAA,eACAC,EAAAA,eAFE,qCCPP1wC,EAAOC,QAAP,gBAAAD,EAAA,0FCAO,gBAAsB,CAC3B,wBAAyB2D,wBACzBgtC,yBAA0BhtC,eAC1BitC,sBAAuBjtC,WACvBktC,0BAA2BltC,SAC3BmtC,yBAA0BntC,OAC1BotC,kBAAmBptC,SACnBmB,mBAAoBnB,SACpBu6B,iBAAkBv6B,OAClBqtC,cAAertC,aACf26B,4DAA6D36B,mBAC7D66B,qEAAsE76B,sIACtEo+B,oDAAqDp+B,+MACrDstC,yBAA0BttC,cAC1B48B,uCAAwC58B,mBACxC68B,iCAAkC78B,aAClC88B,kCAAmC98B,kCACnCutC,gCAAiCvtC,WACjC+8B,uCAAwC/8B,kBACxCg9B,kCAAmCh9B,YACnCi9B,iDAAkDj9B,iBAClDk9B,+CAAgDl9B,UAChDm9B,iDAAkDn9B,YAClDo9B,8CAA+Cp9B,SAC/Cq9B,gEAAiEr9B,6DACjEs9B,kCAAmCt9B,cACnCu9B,8BAA+Bv9B,QAC/B09B,kCAAmC19B,aACnC29B,sCAAuC39B,iBACvC69B,mCAAoC79B,cACpCwtC,kCAAmCxtC,aACnCytC,yBAA0BztC,YAC1B0tC,2CAA4C1tC,iCAC5C2tC,sDAAuD3tC,kRACvD4tC,4CAA6C5tC,YAC7Cw7B,mEAAoEx7B,yBACpE6tC,gDAAiD7tC,kCACjD8tC,2CAA4C9tC,OAC5C+tC,8CAA+C/tC,4BAC/C67B,0CAA2C77B,6MAC3Cg8B,8CAA+Ch8B,0BAC/CguC,sDAAuDhuC,yRACvDiuC,4CAA6CjuC,YAC7CkuC,iCAAkCluC,QAClCmuC,iCAAkCnuC,WAClCouC,mCAAoCpuC,aACpCquC,QAASruC,aACTsuC,2BAA4BtuC,sCA/CvB,6GCAP,MAiBA,8bAjBA,OACA,UACA,UACA,WACA,SACA,SACA,SACA,QACA,OACA,OACA,QACA,SACA,QACA,QAEA,YACA,SACA,gbAAAoB,EAAA,EAAAA,EAAA,iBAAAA,IAAA,uBAAAA,GAAA,UAAAA,GAAA,GAAAA,EAAA,4XAEA,IAAMgnC,EAAgBrrC,EAAAA,QAAEmB,KAAKqE,EAAAA,UAAU4lC,wBACvC,EAA8DoG,EAAAA,UAAtDC,EAAF,EAAEA,8BAA+B1kB,EAAAA,EAAAA,mBACjC2kB,EAAaD,EAA8B1e,iBAC3C4e,EAAgB,CAAC,YAAa,WAAY,WAAY,iBAAkB,UAAW,eAAgB,eAAgB,eACnHC,EAAmB,CAAC,cAAe,kBAAmB,gBAAiB,QAEtE,SAASC,EAAT,GAA8B,IACnCC,EASC,EATDA,gBACAC,EAQC,EARDA,oBACAlQ,EAOC,EAPDA,qBACAmQ,EAMC,EANDA,qBACAnV,EAKC,EALDA,WACAiH,EAIC,EAJDA,aACAmO,EAGC,EAHDA,OACAjQ,EAEC,EAFDA,YACApF,EACC,EADDA,sBAEMh3B,GAAO,IAAAytB,YAAWC,EAAAA,aACxB,GAA8B,IAAA5R,UAAS,MAAvC,SAAOwwB,EAAD,KAAUC,EAAV,KACN,GAAgD,IAAAzwB,WAAS,GAAzD,SAAO0wB,EAAD,KAAmBC,EAAnB,KACN,GAA0C,IAAA3wB,UAAS,IAAnD,SAAO4wB,EAAD,KAAgBC,EAAhB,KACN,GAA8B,IAAA7wB,UAASowB,GAAvC,SAAOU,EAAD,KAAUC,EAAV,KACN,GAA8D,IAAA/wB,UAAS1hB,EAAAA,QAAE2M,MAAzE,SAAO+lC,EAAD,KAA0BC,EAA1B,KACAC,GAAc,IAAA7rC,UAAQ,kBAAM/G,EAAAA,QAAE8I,KAAKgpC,GAAiBe,SAAAA,GAAE,OAAI7yC,EAAAA,QAAE8yC,SAASC,EAAAA,2BAA4BF,EAAG9lB,mBAAxE/sB,GAAd,GAA4G,CAAC8xC,IAC3HzvB,GAAU,IAAA0H,kBAAiBipB,EAAAA,8BAC3BC,GAAkBrtC,EAAK2C,UAAUtF,SAEjCiwC,IAAmB,IAAAnsC,UAAQ,kBAAM,IAAIosC,EAAAA,QAAW,CACpDC,IAAKtB,EACLlsC,KAAAA,EACA8rC,WAAAA,EACA2B,eAAgBrzC,EAAAA,QAAE8I,KAAKgpC,GAAiBe,SAAAA,GAAE,OAAI7yC,EAAAA,QAAE8yC,SAASQ,EAAAA,6BAA8BT,EAAG9lB,mBAA1E/sB,IAChB4yC,YAAAA,EACA9O,aAAAA,IACCjf,QAPsB,GAOZ,CAACitB,EAAiBlsC,EAAMgtC,EAAa9O,IAE5CyP,IAAqB,IAAAtrC,cAAY,kBAAM8pC,EAAoBO,EAAtC,GAAsD,CAACA,EAAeP,IAE3FyB,GAAaprC,SAAAA,GACjB,IAAMqrC,EAAS,UAAEjyC,IAAIgxC,GAAUkB,SAAAA,GAC7B,OAAIA,EAAIhC,KAAgBQ,EAAQR,GACvB,EAAP,SACKgC,GACA1zC,EAAAA,QAAE2zC,KAAKvrC,EAAMupC,IACb3xC,EAAAA,QAAE2zC,KAAKvrC,EAAMwpC,IAHlB,IAIE3J,cAAe7/B,EAAKyoB,SAAW,IAAIzI,KAAKhgB,EAAKyoB,UAAY,KACzDoC,gBAAiB7qB,EAAK6lB,SAAW,IAAI7F,KAAKhgB,EAAK6lB,UAAY,KAC3DiF,eAAgB9qB,EAAKimB,eACrB2E,WAAY5qB,EAAKq/B,KACjBmM,eAAgBC,SAASzrC,EAAK6oB,YAAa,KAAO,GAClDkC,UAAW/qB,EAAK+lB,gBAGbulB,CACR,IACDjB,EAAWgB,GACXpB,GAAoB,GACpBK,EAAwB,CAAEoB,OAAQL,EAAQM,YAAa7B,EAAQR,KAC/DO,EAAO+B,MAAMC,EAAAA,oBAAoBC,QAAShC,EAAQnf,iBACnD,EA4DD,OACE,wBAAC,UAAMkC,SAAP,KACE,+BAAKpvB,WAAW,aAAW,+BAAgC,QAASwc,EAAQ8xB,uBAxCzEjC,EAIDlyC,EAAAA,QAAE8yC,SAASC,EAAAA,2BAA4Bb,EAAQnlB,oBAE/C,wBAAC,EAAA4f,kBAAD,CACEnL,UAAW0Q,EACXpQ,qBAAsB0R,GACtB3R,qBAAsB,WAAF,OAAQwQ,GAAoB,EAHlD,EAIEzF,OAAQwF,EACRtO,aAAcA,EACdjH,WAAYA,EACZD,sBAAuBA,EACvByP,gBAAiB,CACfE,iBAAkBxf,EAAmB8F,yBAA2Bqf,EAAQnlB,mBACtEnnB,EAAK2C,UAAUtF,mRACf2C,EAAK2C,UAAUtF,2RAEnB0+B,gBAAiB3hC,EAAAA,QAAEwjB,IAAI0uB,EAAST,EAA8BtL,gBAKlE,wBAAC,EAAA0J,qBAAD,CACEhT,WAAYA,EACZuN,WAAY8H,EACZpQ,qBAAsB0R,GACtB3R,qBAAsB,WAAF,OAAQwQ,GAAoB,EAJlD,EAKEzF,OAAQwF,EACRtO,aAAcA,EACdmO,OAAQA,EACRrV,sBAAuBA,EACvBoF,YAAaA,IAhCR,KAyCL,+BAAKn8B,UAAU,cAEX+sC,GACA,+BAAK/sC,UAAU,cACb,+BAAKA,UAAU,iBACZD,EAAK2C,UAAUtF,8MAChB,wBAAC,EAAAugC,SAAD,CAAUC,MAAM,YAAY79B,EAAK2C,UAAUtF,iBAIjD,+BAAK4C,UAAU,cACb,+BAAKA,UAAU,MACZD,EAAK2C,UAAUtF,yCAGnBuvC,GAAW,wBAAC,EAAA4B,wBAAD,CACVC,SAAUnB,GACVoB,cAAe,CACbC,GAAI,CACFC,sBAAuB,YAAC,IAAEC,EAAiC,EAAjCA,SAAUC,EAAuB,EAAvBA,iBAClCvC,EAAWsC,GACXpC,GAAoB,GACpBM,GAA2B,kBAAM+B,CAAP,IAC1BzC,EAAO+B,MAAMC,EAAAA,oBAAoBU,QAASF,EAAS1hB,iBACpD,EACD6hB,mBAAoB,YAAC,IAAEC,EAAkB,EAAlBA,YACrBtC,EAAiBsC,EAClB,MAKLjC,GACA,wBAAC,UAAM3d,SAAP,KACG4H,GACC,wBAAC,EAAA3yB,gBAAD,KACE,wBAAC,EAAAC,cAAD,CACEC,MAAO,CACL6oC,gBAAkB,iCAAIA,KAExB3oC,SAAU1E,EAAK2C,UAAUtF,0IAI/B,wBAAC,EAAA05B,gCAAD,CAAiC/2B,KAAMA,EAAMi3B,WAAYA,EAAYC,WAAYmW,GAAiBrW,sBAAuBA,KAzGnI,+BAAK/2B,UAAU,eACb,kCACEA,UAAU,gCACVuF,WAAYknC,GAAiBA,EAAclxC,OAAS,GACpDy3B,QAAS0a,IACTN,IAEF,kCAAQptC,UAAU,sCAAsC6B,KAAK,SAASmxB,QAASgJ,GAAwBj8B,EAAK2C,UAAUtF,WACrH2vC,GACD,wBAAC,UAAM3d,SAAP,KACE,kCAAQpvB,UAAU,WAAWgzB,QAASmZ,GACnCpsC,EAAK2C,UAAUtF,qBAElB,+BAAK4C,UAAU,uBAoGtB,CAEDgsC,EAAqBlmC,UAAY,CAC/BkxB,WAAYhxB,EAAAA,QAAUI,KAAK/E,WAC3B4qC,gBAAiB,UAAUvlC,QAAQ,UAAUX,MAAM,CACjDmnB,iBAAkBlnB,EAAAA,QAAUK,OAC5B8mB,WAAYnnB,EAAAA,QAAUG,OACtBmnB,UAAWtnB,EAAAA,QAAU48B,MAAM4C,GAAenkC,WAC1C4pB,gBAAiBjlB,EAAAA,QAAU48B,MAAMzoC,EAAAA,QAAE2B,OAAOmzC,EAAAA,mBAC1ClB,eAAgB/nC,EAAAA,QAAUM,UAAU,CAClCN,EAAAA,QAAUG,OACVH,EAAAA,QAAUK,SAEZ6hB,UAAWliB,EAAAA,QAAUK,OAAOhF,WAC5B47B,YAAaj3B,EAAAA,QAAUG,OAAO9E,WAC9B+rB,gBAAiBpnB,EAAAA,QAAU4d,WAAWrB,MAAMlhB,WAC5C+gC,cAAep8B,EAAAA,QAAU4d,WAAWrB,MACpC2sB,sBAAuBlpC,EAAAA,QAAUG,OAAO9E,WACxC8tC,oBAAqBnpC,EAAAA,QAAUG,OAC/BknB,eAAgBrnB,EAAAA,QAAUM,UAAU,CAClCN,EAAAA,QAAUG,OACVH,EAAAA,QAAUK,SAEZ+oC,cAAeppC,EAAAA,QAAUG,OACzBkpC,UAAWrpC,EAAAA,QAAUG,OACrBmpC,MAAOtpC,EAAAA,QAAUG,UAEnB+lC,oBAAqBlmC,EAAAA,QAAUC,KAAK5E,WACpC26B,qBAAsBh2B,EAAAA,QAAUC,KAAK5E,WACrC8qC,qBAAsBnmC,EAAAA,QAAUC,KAAK5E,WACrC48B,aAAc,UAAUv3B,QAAQ,UAAUX,MAAM,CAC9Cq6B,mBAAoBp6B,EAAAA,QAAUG,OAC9B+hB,UAAWliB,EAAAA,QAAUK,UAEvB+lC,OAAQ,UAAUrmC,MAAM,CACtBooC,MAAOnoC,EAAAA,QAAUC,OAEnBk2B,YAAan2B,EAAAA,QAAUD,MAAM,CAAC,GAC9BgxB,sBAAuB/wB,EAAAA,QAAUG,OAAO9E,YAG1C2qC,EAAqBnlC,aAAe,CAClColC,gBAAiB,GACjBhO,aAAc,GACdmO,OAAQ,CACN+B,MAAOh0C,EAAAA,QAAE2M,MAEXq1B,YAAa,CAAC,EANhB6P,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,aAAAA,EC3OA,cACA,WACA,SACA,SACA,QACA,SACA,gTAAAxtC,EAAA,EAAAA,EAAA,iBAAAA,IAAA,uBAAAA,GAAA,UAAAA,GAAA,GAAAA,EAAA,gYAEqB8uC,EAAN,qGACbiC,WACE,MAAO,CACL,iBAAkB,oBAErB,kCAEDC,SAAkBnqC,GAAQ,IAAD,OAEvB,GADoBA,EAAMoqC,eAAiB,CAAC,GAApCC,SACsC,CAAC,EAAvCC,EAAF,EAAEA,SAAcC,EAAAA,EAAJrsC,GACZA,EAAKyqC,SAAS4B,EAAU,IAC9B,OAAQD,GACN,KAAKE,EAAAA,eAAeC,KAClBC,KAAKC,QAAQ,wBAAyB,CACpCpB,SAAU,UAAEpL,UAAUuM,KAAKE,SAASC,MAAMC,QAAhC,KAA4CJ,KAAKlE,WAAatoC,GAAMqsC,IAC9Ef,iBAAkB,YAAC,IAAEZ,EAA0B,EAA1BA,OAAQC,EAAkB,EAAlBA,YACrBkC,EAAQ,CACZC,WAAY,CACVxuC,KAAM,SACNU,KAAM0rC,EACNpC,WAAY,EAAKA,aAGrB,EAAKoE,SAASG,MAAMA,GACpB,EAAKH,SAASK,UAAUpC,EACzB,IAEH,MACF,KAAK2B,EAAAA,eAAeU,OAClBR,KAAKC,QAAQ,0BAA2B,CAAEQ,aAAcZ,IAK7D,8BAEDa,WACE,IAAMzB,EAAce,KAAKE,SAASxD,gBAClCsD,KAAKC,QAAQ,qBAAsB,CACjChB,YAAAA,GAEH,2BAED0B,SAAW5oC,GAAQ,IAAD,OAEdylC,EACEzlC,EADFylC,IAAK1B,EACH/jC,EADG+jC,WADD,EAEF/jC,EADe6oC,qBAAAA,OAAoB,OADjC,EAC0C5wC,EAC5C+H,EAD4C/H,KAEhDgwC,KAAKlE,WAAaA,EAElB,IAAQoE,GAAa,IAAAW,cAAa,CAChCh3C,WAAW,EAAD,CACRi3C,aAAc,CAAC,QAAS,iBAAkB,eAC1CR,WAAY,CACVxuC,KAAM,SACNU,KAAMgrC,EACN1B,WAAYkE,KAAKlE,YAEnBiF,SAAS,IAAAC,iBAAA,OACJjpC,GADI,IAEPwjB,qBAAsBhH,EAAAA,UAAUgH,wBAElC0lB,GAAIjB,KAAKiB,IACNL,EAAuB,CAAEM,UAAW,CAAEC,WAAY,WAAF,OAAQ,KAAW,CAAC,GAEzEv3C,QAAS,CAAC,CACRU,OAAQ82C,EAAAA,gBACRv0C,OAAQ,CACN6I,KAAM1F,EAAK2C,UAAUtF,mBAlBnB6yC,SAuBRF,KAAKE,SAAWA,EAChBF,KAAKE,SAASvB,GAAG,aAAa,kBAAM,EAAK+B,eAAzC,GACD,uBAEDzxB,WAEE,OADA+wB,KAAKE,SAASjxB,SACP+wB,IACR,KA/EY,CAAyBqB,EAAAA,QAASC,MAAlC,+BCRf53C,EAAOC,QAAP,gBAAAD,EAAA,GAAAA,EAAA,wBAAAA,EAAA,qFCsBO,YAAyB,IAC9BsG,EASC,EATDA,KACAurB,EAQC,EARDA,qBACAugB,EAOC,EAPDA,WAH8B,EAU7B,EAND2B,eAAAA,OAAc,OAJgB,IAU7B,EALDT,YAAAA,OAAW,OALmB,IAU7B,EAJD9O,aAAAA,OAAY,MAAG,CAAC,EANc,IAU7B,EAHD0S,qBAAAA,OAAoB,OAPU,IAU7B,EAFD7jB,gBAAAA,OAAe,OARe,EAS9BkS,EACC,EADDA,cAEMsS,EAAqB,CAAC,CAC1Bh3C,KAAMsxC,EAA8Bve,eACpCkkB,MAAOxxC,EAAK2C,UAAUtF,oBACtBo0C,SAAU,CACR7zB,IAAK8zB,SAAAA,GAAO,OAAIC,EAA2B,CAAE3xC,KAAAA,EAAMiI,MAAOypC,EAAQ7F,EAA8Bve,iBAAtD,IAE3C,CACD/yB,KAAMsxC,EAA8Bze,WACpCokB,MAAOxxC,EAAK2C,UAAUtF,gBACrB,CACD9C,KAAMsxC,EAA8Bte,UACpCikB,MAAOxxC,EAAK2C,UAAUtF,aACtBo0C,SAAU,CACR7zB,IAAM8zB,SAAAA,GACJ,IAAME,EAAmBpe,EAAyBke,EAAQ7F,EAA8Bte,YACxF,OAAOqkB,EAAmB5xC,EAAK2C,UAAUivC,QAAoB/pC,CAC9D,IAhBsB,GAmBzBtN,KAAMsxC,EAA8Bxe,iBACjCwkB,GApBsB,GAsBzBt3C,KAAMsxC,EAA8BxJ,eACjCwP,GAvBsB,GAyBzBt3C,KAAMsxC,EAA8BmC,gBACjC6D,GA1BsB,GA4BzBt3C,KAAMsxC,EAA8B3gB,iBACjC2mB,IAGCC,EAAkB,CAAC,CAAC,CACxBv3C,KAAMsxC,EAA8BpjB,eACpC+oB,MAAOxxC,EAAK2C,UAAUtF,UACtBo0C,SAAU,CACR7zB,IAAK8zB,SAAAA,GAAO,OAAIC,EAA2B,CAAE3xC,KAAAA,EAAMiI,MAAOypC,EAAQ7F,EAA8BpjB,iBAAtD,KAE1C,CAAC,CACHluB,KAAMsxC,EAA8BtL,aACpCiR,MAAOxxC,EAAK2C,UAAUtF,cACpB,CAAC,CACH9C,KAAMsxC,EAA8B1kB,mBACpCqqB,MAAOxxC,EAAK2C,UAAUtF,QACtBo0C,SAAU,CACR7zB,IAAM8zB,SAAAA,GACJ,OAAQA,EAAQ7F,EAA8B1kB,qBAC5C,KAAKA,EAAmB8F,uBACtB,OAAOjtB,EAAK2C,UAAUtF,aACxB,KAAK8pB,EAAmB4qB,qBACtB,OAAO/xC,EAAK2C,UAAUtF,aACxB,QACE,OAAO,KAEZ,MAIL,MAAM,CAAC,GACL9C,KAAMsxC,EAA8B1jB,WACjC0pB,GAFE,GAILt3C,KAAMsxC,EAA8B1e,kBACjC0kB,IALE,SAOJ9kB,EAAkB,GAAK,CAAC,CACzBxyB,KAAMsxC,EAA8B3O,YACpCsU,MAAOxxC,EAAK2C,UAAUtF,gBACtBo0C,SAAU,CACR7zB,IAAM8zB,SAAAA,GACJ,OAAIt3C,EAAAA,QAAE4nB,SAAS0vB,EAAQ7F,EAA8B3O,cAC5CwU,EAAQ7F,EAA8B3O,cAE/B,UAAEuG,UAAUvF,EAAc,CAAE/V,UAAWupB,EAAQ7F,EAA8B1jB,cAAiB,CAAC,GAChGkY,kBAChB,MAjBE,CAoBP,CACE9lC,KAAMsxC,EAA8BmG,cACpCR,MAAOxxC,EAAK2C,UAAUtF,cACtBo0C,SAAU,CACR7zB,IAAM8zB,SAAAA,GACJ,GAAIzS,EACF,OAAOA,EAET,IAAM7W,EAAYH,EAAcypB,GAAWA,EAAQ7F,EAA8Bxe,iBAAmBqkB,EAAQ7F,EAA8BxjB,UAC1I,OAAItE,EAAqBqE,GAChBpoB,EAAK2C,UAAUtF,eAEjB+qB,EAAYpoB,EAAK2kB,WAAWyD,GAAa,EACjD,IAEF,CACD7tB,KAAMsxC,EAA8BoG,YACpCT,MAAOxxC,EAAK2C,UAAUtF,YACtBqH,SAAUwtC,EAAAA,QACVT,SAAU,CACR7zB,IAAK8zB,SAAAA,GAAO,aAAI,UAAES,SAAS,CACzBnyC,KAAAA,EACAurB,qBAAAA,EACA2jB,iBAAAA,EAAAA,iBACAkD,0BAA2BnqB,EAAcypB,GACzCW,6BAAAA,IACCj4C,EAAAA,EAAAA,SAAE2zC,KAAF3zC,MAAAA,EAAAA,CAAOs3C,GAAPt3C,OAAAA,EAAmBk4C,EAAAA,uBAPd,EAQRzuC,IAAKyuC,EAAAA,uBA/CF,EAkDH7E,EAAkB8D,EAAqB,IAlDpC,EAmDHvE,EAAe8E,EAAgB,GAAK,IAnDjC,EAoDH9E,GAAe4D,EAAwBkB,EAAgB,GAAK,IApDzD,CAqDP,CACEv3C,KAAMsxC,EAA8BwD,cACpCmC,MAAOxxC,EAAK2C,UAAUtF,kBACtBo0C,SAAU,CACR7zB,IAAK8zB,SAAAA,GAAO,OAAIA,EAAQ7F,EAA8BwD,gBAAkBqC,EAAQ7F,EAA8BvO,aAA/B,IAEhF,CACD/iC,KAAMsxC,EAA8ByD,UACpCkC,MAAOxxC,EAAK2C,UAAUtF,cACtBo0C,SAAU,CACR7zB,IAAK8zB,SAAAA,GAAO,OAAIA,EAAQ7F,EAA8ByD,YAAcoC,EAAQ7F,EAA8B1O,aAA/B,IAE5E,CACD5iC,KAAMsxC,EAA8B0D,MACpCiC,MAAOxxC,EAAK2C,UAAUtF,SACtBo0C,SAAU,CACR7zB,IAAK8zB,SAAAA,GAAO,OAAIA,EAAQ7F,EAA8B0D,QAAUmC,EAAQ7F,EAA8BpO,QAA/B,KArEpE,EAwEHuP,GAAe4D,EAAwBkB,EAAgB,GAAK,IAxEzD,CAyEP,CACEv3C,KAAMsxC,EAA8B0G,OACpCf,MAAOxxC,EAAK2C,UAAUtF,UACtBqH,SAAU8tC,EAAAA,QACVf,SAAU,CACR7zB,IAAK8zB,SAAAA,GAAO,aAAI,UAAES,SAAS,CACzBnyC,KAAAA,EAAM8rC,WAAAA,EAAYgE,eAAAA,EAAAA,eAAgB2C,mBAAoB7B,IACrDx2C,EAAAA,EAAAA,SAAE2zC,KAAF3zC,MAAAA,EAAAA,CAAOs3C,GAAPt3C,OAAAA,EAAmBs4C,EAAAA,oBAAnBt4C,CAAuC0xC,KAHlC,EAIRjoC,IAAK6uC,EAAAA,sBAGV,ED/KD,cCCA,OACA,QAEA,SACA,YACA,mTAAAj0C,EAAA,EAAAA,EAAA,iBAAAA,IAAA,uBAAAA,GAAA,UAAAA,GAAA,GAAAA,EAAA,4XAEA,MAA8DmB,EAAAA,UAAtDisC,EAAF,EAAEA,8BAA+B1kB,EAAAA,EAAAA,mBAC/BqM,EAA6B3O,EAAAA,UAA7B2O,yBACR,EAA8FxP,EAAAA,oBAAtF2uB,EAAF,EAAEA,8BAA+BN,EAAjC,EAAiCA,6BAA8BtuB,EAAAA,EAAAA,qBAC/D8tB,EAAoB,CACxBe,YAAa,SACbC,YAAa,UAGf,SAASlB,EAAT,GAAoC,IAAE3xC,EAAe,EAAfA,KAAMiI,EAAS,EAATA,MAC1C,OAAO0qC,EAA8B,CAAEhjB,oBAAqB1nB,EAAOjI,KAAAA,GACpE,CAED,IAAMioB,EAAgBypB,SAAAA,GAAO,OAAIt3C,EAAAA,QAAE8yC,SAASQ,EAAAA,6BAA8BgE,EAAQ7F,EAA8B1kB,oBAAhH,CA2JC,gSC/KD,IAEA,EAFA,KAE8DvnB,UAAtDisC,EAAF,EAAEA,8BAA+B1kB,EAAAA,EAAAA,mBAE1BurB,EAAqB,CAChC7G,EAA8B1e,kBADzB,uBAIA,IAAMmlB,EAAsB,CACjCzG,EAA8BmC,eAC9BnC,EAA8Bxe,gBAC9Bwe,EAA8BxJ,cAC9BwJ,EAA8Bte,UAC9Bse,EAA8B3gB,gBAC9B2gB,EAA8B5gB,UANzB,wBASA,mBAAyB,CAC9BG,UAAW,YACXD,UAAW,YACXzH,iBAAkB,oBAGb,iBAAuB,CAC5BqsB,KAAM,UACNS,OAAQ,aAGH,sBAA4B,CACjCsC,SAAU,2BACVC,UAAW,eACXhE,QAAS,kBACTT,QAAS,mBAGJ,IAAMnB,EAA6B,CAAChmB,EAAmB8F,uBAAwB9F,EAAmB4qB,sBAAlG,+BACA,IAAMrE,EAA+B,CAACvmB,EAAmB6F,4BAAzD,iCAEP,IAAMgmB,EAAqB,WACdC,EAAuB,CAClCzoB,QAASwoB,EACTE,SAAS,GAAD,OAAKF,EAAL,aACRG,kBAAkB,GAAD,OAAKH,EAAL,sBACjBI,qBAAqB,GAAD,OAAKJ,EAAL,yBACpBK,uBAAuB,GAAD,OAAKL,EAAL,4BALjB,yBAQA,aAAmB,CACxB31C,OACAA,SACAA,cAHK,sBC/CP,IAAIi2C,EAAMC,EAAQ,KAOlB75C,EAAOC,QALP,SAAkB65C,GAAS,IAAoCC,EAAhCC,EAAW,GAAqCC,EAAmBH,GAAU,CAAC,EAIwJ,OAJpJ,SAAUn2C,EAAM4K,GAAQyrC,EAAWA,6FAAqJJ,EAAIM,KAAK,gBAAiB3rC,EAAM6nC,eAAeC,MAAM,GAAM,GAAMuD,EAAIM,KAAK,UAAW3rC,EAAMA,EAAM6jC,aAAa,GAAM,GAAS,IAAYwH,EAAIO,OAAO,OAASJ,EAAaxrC,EAAMjI,KAAK2C,UAAUtF,EAAK,UAAY,GAAKo2C,GAAe,YACzgBxrC,EAAMwqC,oBACViB,EAAWA,0BAA0DJ,EAAIM,KAAK,gBAAiB3rC,EAAM6nC,eAAeU,QAAQ,GAAM,GAAM8C,EAAIM,KAAK,UAAW3rC,EAAMA,EAAM6jC,aAAa,GAAM,GAAS,IAAYwH,EAAIO,OAAO,OAASJ,EAAaxrC,EAAMjI,KAAK2C,UAAUtF,EAAK,YAAc,GAAKo2C,GAAe,aAE7SC,GAAsB,aAJ2F,EAI7CI,KAAK9D,KAAK,SAAU2D,EAAgBA,EAAgBt2C,KAAmB,qBAAPA,KAAmBA,UAAKwK,EAAU,UAAW8rC,EAAgBA,EAAgB1rC,MAAqB,qBAARA,MAAoBA,WAAMJ,GAAoB6rC,CAAU,CACtRh6C,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GCPA,IAAI45C,EAAMC,EAAQ,KAgBlB75C,EAAOC,QAdP,SAAkB65C,GAAS,IAAoCC,EAAhCC,EAAW,GAAqCC,EAAmBH,GAAU,CAAC,EAauF,OAbnF,SAAUn2C,EAAM4K,GACjIyrC,EAD8IzrC,EAAMmqC,yBACzIsB,EAAW,SAAsBJ,EAAIO,OAAO,OAASJ,EAAaxrC,EAAMoqC,6BAA6B,CAAEryC,KAAMiI,EAAMjI,KAAM+zC,aAAc9rC,EAAMgjB,YAAe,GAAKwoB,GAAe,UAGrLxrC,EAAMijB,iBAAmBjjB,EAAMijB,iBAAmBjjB,EAAMinC,iBAAiB9jB,UAI1EnjB,EAAMijB,iBAAmBjjB,EAAMinC,iBAAiBxrB,iBAC1CgwB,EAAW,SAAsBJ,EAAIO,OAAO,OAASJ,EAAaxrC,EAAMjI,KAAK2kB,WAAW1c,EAAMsjB,qBAAqBtjB,EAAMolB,gBAAiBplB,EAAMslB,UAAWtlB,EAAM+lC,kBAAoB,GAAKyF,GAAe,UAGzMC,EAAW,SAAsBJ,EAAIO,OAAO,OAASJ,EAAaxrC,EAAMjI,KAAK2C,UAAUtF,EAAK,iBAAmB,GAAKo2C,GAAe,UAPnIC,EAAW,SAAsBJ,EAAIO,OAAO,OAASJ,EAAaxrC,EAAMo6B,cAAgBp6B,EAAMjI,KAAK2kB,WAAW1c,EAAMo6B,eAAiB,IAAM,GAAKoR,GAAe,SALzD,EAa9GK,KAAK9D,KAAK,SAAU2D,EAAgBA,EAAgBt2C,KAAmB,qBAAPA,KAAmBA,UAAKwK,EAAU,UAAW8rC,EAAgBA,EAAgB1rC,MAAqB,qBAARA,MAAoBA,WAAMJ,GAAoB6rC,CAAU,CACrNh6C,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,2BAAAA,EAAAA,yBAAAA,EAAAA,kCAAAA,ECfA,iQAAA+E,EAAA,EAAAA,EAAA,iBAAAA,IAAA,uBAAAA,GAAA,UAAAA,GAAA,GAAAA,EAAA,4XAEO,+BAAqC,WAAH,MAAU,CACjD8vC,qBAAsB,CACpB,mBAAoB,CAClB5kC,UAAW,IAGb,iBAAkB,CAChB,UAAW,CACTA,UAAW,gBAGb,cAAe,CACb2c,OAAQ,OACR4hB,WAAY,OACZp+B,MAAO,UACP8c,OAAQ,IAGV,oBAAqB,CACnB2hB,SAAU,YAGZ,mBAAoB,CAClB7+B,WAAY,IAGd,mBAAoB,CAClB6+B,SAAU,WACVC,OAAQ,KACR7nB,MAAO,IACPD,QAAS,GACTyF,gBAAiB,OACjBG,OAAQ,oBACR0tB,aAAc,EACdxtB,OAAQ,EACRmiB,KAAM,GAEN,+BAAgC,CAC9BhoB,MAAO,OACPiG,OAAQ,KAGV,UAAW,CACTnd,QAAS,SAIb,2CAA4C,CAC1CE,UAAW,KAIf,gBAAiB,CACf,eAAgB,CACdC,aAAc,KAtDsB,EA4DrC,2BAAiC,WAAH,MAAU,CAC7CqqC,iBAAiB,EAAD,MACX,IAAA7L,0BADW,IAEd,yBAA0B,CACxB9hB,OAAQ,OACR4hB,WAAY,OACZp+B,MAAO,UACPH,UAAW,GACXC,aAAc,IAGhB,iBAAkB,CAChB4c,OAAQ,eACRP,YAAa,eACbiuB,cAAe,eACfpL,UAAW,gCAGb,kEAAmE,CACjEA,UAAW,oBACXqL,aAAc,qBAGhB,0BAA2B,CACzB1uB,SAAU,GACVO,WAAY,QAGd,2BAA4B,CAC1B,gBAAiB,CACfrc,UAAW,EACXC,aAAc,IAGhB,mBAAoB,CAClBk/B,UAAW,oBACXrjB,SAAU,GACV2uB,WAAY,GACZzqC,UAAW,KAIf,sBAAuB,CACrB,2BAA4B,CAE1B,qBAAsB,CACpBD,YAAa,IAGf,yCAA0C,CACxCiX,MAAO,OACP,WAAY,CACVA,MAAO,OACP2nB,UAAW,OACX1nB,WAAY,MACZ,WAAY,CACV0jB,MAAO,UAGX,yBAA0B,CACxB3jB,MAAO,kBACPioB,SAAU,kBAMlB,mCAAoC,CAClCj/B,UAAW,KApEuB,EAyEjC,6BAAmC,WAAH,MAAU,CAC/C0qC,mBAAoB,CAClB,yBAA0B,CACxBzzB,WAAY,UAGd,gBAAiB,CACf,eAAgB,CACdhX,aAAc,EAEd,OAAQ,CACN0qC,cAAe,OACf7qC,QAAS,SACT8qC,aAAc,GAEhB,UAAW,CACTtuB,YAAa,EACbuuB,WAAY,qBAjBoB,CAAnC,kICtIP,MAkBA,8bAlBA,OACA,UACA,UACA,WACA,SACA,SACA,SACA,OACA,OACA,SACA,QACA,QACA,QACA,QAEA,YACA,SACA,SACA,mPAAA/1C,EAAA,0CAAAA,EAAA,0BAAAA,EAAA,EAAAA,EAAA,SAAAA,IAAA,IAAAA,GAAA,uHAAAA,EAAA,EAAAA,EAAA,SAAAA,IAAA,IAAAA,GAAA,2UAAAA,EAAA,EAAAA,EAAA,iBAAAA,IAAA,uBAAAA,GAAA,UAAAA,GAAA,GAAAA,EAAA,4XAEA,MAA+DulB,EAAAA,oBAAvD0X,EAAF,EAAEA,UAAWpQ,EAAb,EAAaA,mBAAoBW,EAAAA,EAAAA,oBACvC,EAAyCrsB,EAAAA,UAAjC+xB,EAAF,EAAEA,gBAAiBtH,EAAAA,EAAAA,YACnBoqB,EAAyB/W,SAAAA,GAAG,OAAIA,EAAIb,SAAWa,EAAIb,QAAQC,gBAAjE,EAEa4X,EAAoB,YAAC,IAAExO,EAAmC,EAAnCA,iBAAkByO,EAAiB,EAAjBA,WACpD,GAAIzO,IAAqB7b,EACvB,OAAO6b,EAET,IAAM0O,EAAiB,IAAIpyB,KAAK0jB,EAAiB2O,WAEjD,OADAD,EAAexmB,QAAQwmB,EAAe9yB,UAAY6yB,GAC3CC,CACR,EAED,SAASE,EAAT,GAA8B,IAC5B5Y,EAUC,EAVDA,qBACAD,EASC,EATDA,qBACAhF,EAQC,EARDA,WACAiH,EAOC,EAPDA,aACAnR,EAMC,EANDA,gBACAmc,EAKC,EALDA,gBACAlS,EAIC,EAJDA,sBACA8I,EAGC,EAHDA,aACAtY,EAEC,EAFDA,sBACA6kB,EACC,EADDA,OAEM0I,EAAkB,WAAH,MAAU,CAAE5sB,UAAWX,GAAyBuF,EAAkBmc,OAAkBrhC,EAAjF,EAClBmtC,GAAY,IAAA1Y,UACZD,GAAY,IAAAC,UACZt8B,GAAO,IAAAytB,YAAWC,EAAAA,aACxB,GAA8B,IAAA5R,UAAS,IAAvC,SAAOm5B,EAAD,KAAUC,EAAV,KACN,GAA4B,IAAAp5B,UAAS,CAAC,GAAtC,SAAOq5B,EAAD,KAASC,EAAT,KACN,GAA0B,IAAAt5B,UAASi5B,GAAnC,SAAOhY,EAAD,KAAQsY,EAAR,KACN,GAAkD,IAAAv5B,UAAS,GAA3D,SAAOw5B,EAAD,KAAoBC,GAApB,KACN,IAAgD,IAAAz5B,WAAS,GAAzD,WAAO0wB,GAAD,MAAmBC,GAAnB,MACN,IAA8C,IAAA3wB,WAAS,GAAvD,WAAOgH,GAAD,MAAkB0yB,GAAlB,MACN,IAAgD,IAAA15B,WAAS,GAAzD,WAAO25B,GAAD,MAAmBC,GAAnB,MAEN,IAA4D,IAAA55B,WAAS,GAArE,WAAO2gB,GAAD,MAAyBC,GAAzB,MACAjgB,IAAU,IAAA0H,kBAAiBwxB,EAAAA,0BACLC,IAA8B,IAAAtM,uBAAsB,CAAEtpC,KAAAA,EAAMunB,IAAKwV,EAAM5U,UAAWX,sBAAAA,IAAtGK,mBAC4B0hB,IAAsC,IAAAC,0BAAyB,CACjGxpC,KAAAA,EAAMunB,IAAKwV,EAAM5U,UAAWF,eAAe,EAAO8E,gBAAAA,EAAiBvF,sBAAAA,IAD7D0F,2BAGFrF,IAAqB,IAAA1mB,UAAQ,kBAAM,IAAA00C,wBAAuB,CAAED,0BAAAA,GAA2Bn6B,UAAWshB,EAAM5U,UAAW8sB,QAAAA,GAA9F,GAA0G,CAACA,EAASlY,EAAM5U,UAAWytB,KAC1J1oB,IAA6B,IAAA/rB,UAAQ,kBAAM,IAAA20C,gCAA+B,CAAEvM,kCAAAA,GAAmCwM,sBAAuBhZ,EAAM5P,iBAAkB8nB,QAAAA,GAAjI,GAA6I,CAAC1L,GAAmC0L,EAASlY,EAAM5P,mBAC7NjF,IAA6B,IAAA/mB,UACjC,kBAAO47B,EAAM5P,iBAAmB,IAAOJ,GAA6E,OAA1D3yB,EAAAA,QAAEwjB,IAAIsP,GAA4B,mBAD3D,GAEjC,CAACA,GAA4BH,EAAiBgQ,EAAM5P,mBAEhD6oB,IAAuB,IAAA70C,UAC3B,kBAAO2+B,KAAkB/C,EAAMuD,4BAA8BvD,EAAMuD,2BAA2B2V,SADnE,GAE3B,CAAClZ,EAAMuD,2BAA4BR,IAE/B7C,IAAyB,IAAA97B,UAAQ,iBAAO,CAC5CgnB,WAAY4E,EACZoQ,cAAc,EACd9U,UAAU,EACV4C,UAAU,EACVxC,gBAAgB,EAChB6U,cAAc,EACdG,SAAS,EACToD,WAAYmV,GACZhiB,qBAAsBgiB,GATe,GAUnC,CAACjpB,EAAiBipB,KAEhB1I,IAAmB,IAAAnsC,UAAQ,kBAAM,IAAIosC,EAAAA,QAAW,CACpDC,IAAKyH,EACLj1C,KAAAA,EACA8rC,WAAY,KACZ8E,sBAAsB,EACtB7jB,gBAAAA,EACA0gB,gBAAgB,EAChBT,aAAa,EACb9O,aAAAA,IACCjf,QATsB,GASZ,CAACif,EAAcl+B,EAAMi1C,EAASloB,IAErCmpB,IAAiB,IAAA7zC,cAAY,YAAC,IAAE4qC,EAAS,EAATA,GAOpC,OAAInN,GAAgBmN,EAAGjZ,qBAAuB,IACzCiZ,EAAGxkB,iBAAmBkJ,GAAoBsb,EAAGhiB,WAAaZ,GAAe4iB,EAAGpM,WAAa,GAErF,EAAP,KACKzmC,EAAAA,QAAE+7C,KAAKlJ,EAAI,0BADhB,IAEExkB,eAAgBwkB,EAAGjZ,qBACnB/I,SAAUypB,EAAkB,CAAExO,iBAAkB+G,EAAGhiB,SAAU0pB,WAAY1H,EAAGpM,aAC5EpD,QAASz9B,EAAK2C,UAAUtF,+BACxB+4C,UAAU,IAGP,CAAC,CACT,GAAE,CAACp2C,EAAM8/B,IAEV,IAAkD,IAAAhkB,WAAS,GAA3D,WAAOyjB,GAAD,MAAoBC,GAApB,MAEA6W,IAAkB,IAAAh0C,cAAY,WAClC,IAAMmjB,EAAW0wB,GAAe,CAAEjJ,GAAIlQ,IAClC+C,IAAiB1lC,EAAAA,QAAEuK,QAAQ6gB,MAC7B,IAAA8wB,iBAAgB,CACdjK,OAAAA,EAAQkK,aAActD,EAAAA,qBAAqBC,SAAUnW,MAAAA,EAAOvX,SAAAA,EAAU+Z,kBAAAA,KAExEC,IAAqB,IAEvBtD,EAAqB,CACnBsa,eAAgBp8C,EAAAA,QAAEq8C,MAChBxB,EACA,CAAClY,IACA3iC,EAAAA,QAAEuK,QAAQ6gB,IAAa,CAACA,KAG9B,GAAE,CAACyvB,EAAS1V,GAAmB8M,EAAQtP,EAAO+C,EAAc5D,EAAsBga,KAE7EQ,IAA0B,IAAAr0C,cAAaG,SAAAA,GAC3C0yC,GAAWyB,SAAAA,GAAM,OAAIv8C,EAAAA,QAAEwB,IAAI+6C,GAAQ1J,SAAAA,GAAE,cAAUA,GAAOA,EAAGzpC,KAAOhB,EAAKgB,GAAKhB,EAAO,CAAC,EAA7DpI,GAAX,IACVqyC,IAAoB,EACrB,GAAE,KAEH,IAAApuB,YAAU,kBAAMq3B,IAAqBha,EAAU,CAAE1T,mBAAoB+U,EAAM/U,mBAAoBiV,uBAAAA,KAA/F,GAA2H,CAACgY,EAAQz5C,OAAQyhC,GAAwBF,EAAM/U,qBAuC1K,OACE,wBAAC,UAAMqH,SAAP,KACE,+BAAKpvB,WAAW,aAAW,uBAAwB,QAAS,kBAAmB,UAAWwc,GAAQw3B,kBAAmBvW,IAAKsX,GACxH,wBAAC,EAAAjO,kBAAD,CACE/mC,KAAMA,EACN47B,UAAWuZ,EACXjZ,qBAAsBwa,GACtBza,qBAAsB,WAAF,OAAQwQ,IAAoB,EAJlD,EAKEzF,OAAQwF,GACRtO,aAAcA,EACdjH,WAAYA,EACZlK,gBAAiBA,EACjBiK,sBAAuBA,IAEzB,+BAAK/2B,UAAU,yBACb,+BAAKA,UAAU,iBACb,+BAAKA,UAAU,eACb,sCAASD,EAAK2C,UAAUtF,8BAG5B,+BAAK4C,UAAU,cACb,+BAAKA,UAAU,cACb,+BAAKA,UAAU,iBACZD,EAAK2C,UAAUtF,8MAChB,wBAAC,EAAAugC,SAAD,CAAUC,MAAM,YAAY79B,EAAK2C,UAAUtF,kBAG7CjD,EAAAA,QAAEuK,QAAQswC,IAAY,wBAAC,EAAAzG,wBAAD,CACtBC,SAAUnB,GACVoB,cAAe,CACbC,GAAI,CACFC,sBAAuB,YAAC,IAAEC,EAAe,EAAfA,SACpB/O,IACF,IAAAwW,iBAAgB,CACdjK,OAAAA,EACAkK,aAActD,EAAAA,qBAAqBG,qBACnCrW,MAAO8R,EAASuH,cAAWvuC,EAAYgnC,EACvCrpB,SAAUqpB,EAASuH,SAAWvH,OAAWhnC,IAI7CutC,EAAUvG,GACVpC,IAAoB,EACrB,EACDmK,wBAAyB,YAAC,IAAEnG,EAAmB,EAAnBA,aAC1ByE,GAAYyB,SAAAA,GACV,IAAME,EAAaz8C,EAAAA,QAAE0iB,KAAK65B,GAAQ1J,SAAAA,GAAE,OAAIA,EAAGzpC,KAAOitC,CAA/Br2C,IASnB,OARI0lC,GAAgB+W,IAClB,IAAAP,iBAAgB,CACdjK,OAAAA,EACAkK,aAActD,EAAAA,qBAAqBI,uBACnCtW,MAAO8Z,EAAWT,cAAWvuC,EAAYgvC,EACzCrxB,SAAUqxB,EAAWT,SAAWS,OAAahvC,IAG1CzN,EAAAA,QAAE08C,OAAOH,GAAQ1J,SAAAA,GAAE,OAAIA,EAAGzpC,KAAOitC,CAAjCr2C,GACR,GACF,MAIP,+BAAK6F,UAAU,gBAAgBy9B,IAAKrB,GAAW,IAAEr8B,EAAK2C,UAAUtF,oCAChE,wBAAC,EAAAygC,WAAD,CACEj6B,IAAKyxC,EACLr1C,UAAU,mBACV89B,cAAe,YAAC,IAASgZ,EAAoB,EAA3Bha,MAChBsY,EAAS0B,GACTra,GAA0BpR,EAAmByrB,EAAc9rB,WAAagB,EAAoB8qB,EAActuB,gBAC3G,EACD8T,eAAgBQ,EAChBja,gBAAiBA,GACjBqc,0BAA2BpS,EAC3BmR,aAAcA,EACdsX,mBAAoBA,GACpBlW,eAAgBQ,EAChBP,kBAAmBA,GACnBC,qBAAsBA,GACtBhY,sBAAuBA,EACvBK,mBAAoBA,GACpBqF,2BAA4BA,GAC5BhF,2BAA4BA,KAE7BuU,IACC,wBAAC,EAAAn4B,gBAAD,CAAiBrE,UAAU,6BAA6BD,EAAK2C,UAAUtF,kNAvHjF,+BAAK4C,UAAU,eACb,wBAAC,EAAA+2C,OAAD,CACE/2C,UAAU,sBACVgzB,QAAS,WACP,GAAIyI,EAAU,CAAE1T,mBAAoB+U,EAAM/U,mBAAoBiV,uBAAAA,KAA2B,CACvF,IAAMzX,EAAW0wB,GAAe,CAAEjJ,GAAIlQ,IACtCmY,GAAWyB,SAAAA,GAAM,OAAI,UAAEF,MACrBE,EACA,CAAC,EAAD,KAAM5Z,GAAN,IAAav5B,GAAIpJ,EAAAA,QAAE68C,SAAS,uBAC3B78C,EAAAA,QAAEuK,QAAQ6gB,IAAa,CAAC,EAAD,KAAMA,GAAN,IAAgBhiB,GAAIpJ,EAAAA,QAAE68C,SAAS,sBAH/C,IAKNnX,IAAiB1lC,EAAAA,QAAEuK,QAAQ6gB,MAC7B,IAAA8wB,iBAAgB,CACdjK,OAAAA,EAAQkK,aAActD,EAAAA,qBAAqBE,kBAAmBpW,MAAAA,EAAOvX,SAAAA,EAAU+Z,kBAAAA,KAEjFC,IAAqB,IAGvBgW,IAAmB,GACnBD,IAAqB2B,SAAAA,GAAM,OAAIA,EAAS,CAApB,IACpB7B,EAASN,KACTN,EAAuBO,EACxB,MACCQ,IAAmB,GACnBf,EAAuBpY,EAE1B,EACD8a,SAAS,QAET,wBAAC,EAAAxkB,UAAD,CAAWC,MAAM,SAAS4e,MAAOxxC,EAAK2C,UAAUtF,oCAC/C2C,EAAK2C,UAAUtF,mCAElB,wBAAC,EAAA05B,gCAAD,CAAiC/2B,KAAMA,EAAMi3B,WAAYA,EAAYC,WAAYl3B,EAAK2C,UAAUtF,QAAe25B,sBAAuBA,MA2FpI,+BAAK/2B,UAAU,gBACb,kCAAQA,UAAU,gCAAgCuF,SAAUiwC,GAAkBxiB,QAASojB,IAAkBr2C,EAAK2C,UAAUtF,SACxH,kCAAQ4C,UAAU,sCAAsCgzB,QAASgJ,GAAuBj8B,EAAK2C,UAAUtF,aAKhH,CA1PM,sBA4PPy3C,EAAqB/uC,UAAY,CAC/Bm2B,qBAAsBj2B,EAAAA,QAAUC,KAAK5E,WACrC26B,qBAAsBh2B,EAAAA,QAAUC,KAAK5E,WACrCyrB,gBAAiB9mB,EAAAA,QAAUI,KAAK/E,WAChC4nC,gBAAiBjjC,EAAAA,QAAUK,OAC3B2wB,WAAYhxB,EAAAA,QAAUI,KAAK/E,WAC3B48B,aAAc,UAAUv3B,QAAQ,UAAUX,MAAM,CAC9Cq6B,mBAAoBp6B,EAAAA,QAAUG,OAAO9E,WACrC6mB,UAAWliB,EAAAA,QAAUK,OAAOhF,WAC5BwiC,eAAgB79B,EAAAA,QAAUI,QAE5B2wB,sBAAuB/wB,EAAAA,QAAUG,OAAO9E,WACxCw+B,aAAc75B,EAAAA,QAAUI,KACxBmhB,sBAAuBvhB,EAAAA,QAAUI,KACjCgmC,OAAQ,UAAUrmC,MAAM,CACtBooC,MAAOnoC,EAAAA,QAAUC,QAIrB4uC,EAAqBhuC,aAAe,CAClCoiC,qBAAiBrhC,EACjBq2B,aAAc,GACd4B,cAAc,EACdtY,uBAAuB,EACvB6kB,OAAQ,CACN+B,MAAO,OAIJ,IAAMgJ,EAAmB,YAAC,IAAEx6B,EAAsB,EAAtBA,OAAWgtB,EAAW,OACjDC,GAAoB,IAAApc,YAAWqc,EAAAA,iBAC/BC,EAAgBntB,GAAUitB,EAEhC,OAAKE,EAKH,wBAAC,EAAAC,wBAAD,CAAyBD,cAAeA,GACtC,wBAAC+K,EAAyBlL,IALrB,wBAACkL,EAAyBlL,EAQpC,EAbM,qBAePwN,EAAiBrxC,UAAY,CAC3B6W,OAAQ3W,EAAAA,QAAUD,MAAM,CAAC,IAG3BoxC,EAAiBtwC,aAAe,CAC9B8V,OAAQ,KADVw6B,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,+BAAAA,EAAAA,uBAAAA,EAAAA,qBAAAA,ECtUA,IAEA,EAFA,GAEA,EAFA,OAEA,kCAEA,IAAQ9rB,EAAuBtH,EAAAA,oBAAvBsH,mBACR,EAA0C1rB,EAAAA,UAAlCyqB,EAAF,EAAEA,YAAad,EAAAA,EAAAA,iBAEd,kBAAwB,YAAC,IAC9B8iB,EACI,EADJA,OAAQkK,EACJ,EADIA,aAAcxZ,EAClB,EADkBA,MAAOvX,EACzB,EADyBA,SAAU+Z,EACnC,EADmCA,kBAEvC,GAAK8M,GAAWjyC,EAAAA,QAAEW,WAAWsxC,EAAO+B,OAApC,CAGA,IAAMiJ,EAAU,CACd9vB,IAAMwV,GAASA,EAAM5U,WAAe3C,GAAYA,EAAS2C,UACzDC,UAAW2U,GAASA,EAAM1U,SAC1BO,QAASmU,GAASA,EAAM9R,SACxBqsB,OAAQva,GAASA,EAAMtU,eACvB8uB,UAAWxa,GAASA,EAAM8D,WAC1B2W,aAAcza,GAASA,EAAM/I,qBAC7ByjB,gBAAiBjyB,GAAYA,EAAS6C,SACtCqvB,cAAelyB,GAAYA,EAASyF,SACpC0sB,aAAcnyB,GAAYA,EAASiD,eACnC8W,kBAAAA,GAEF8M,EAAO+B,MAAM,CAAEmI,aAAAA,EAAcc,QAAAA,GAb5B,CAcF,EAEM,yBAA+B,YAAC,IAAEzB,EAAoD,EAApDA,0BAA2Bn6B,EAAyB,EAAzBA,UAAWw5B,EAAc,EAAdA,QAC7E,GAAI76C,EAAAA,QAAEw0B,OAAOgnB,IAA8Bn6B,EAAY,IAAMrhB,EAAAA,QAAEuK,QAAQswC,GAAU,CAC/E,IAAM2C,EAAiB,IAAIp1B,KAAKozB,EAA0Bf,WAC1D+C,EAAexpB,QAAQwpB,EAAe91B,UAAY,GAElD,IAAM+1B,EAAgB,UAAEC,MAAM7C,GAC3B6B,QAAO7J,SAAAA,GAAE,OAAIzf,OAAOyf,EAAG9kB,aAAeqF,OAAO/R,EAD1B,IAEnBs8B,QACC,SAACC,EAAgB/K,GACf,OAAI3hB,EAAmB0sB,IAAmB1sB,EAAmB2hB,EAAGhiB,UACvDZ,EAGF2tB,EAAiB/K,EAAGhiB,SAAW+sB,EAAiB/K,EAAGhiB,QAC3D,GACD2sB,GAED3vC,QAEH,GAAIqjB,EAAmBusB,GACrB,OAAO,KAGT,IAAMhwB,EAAqB,IAAIrF,KAAKq1B,EAAchD,WAElD,OADAhtB,EAAmBuG,QAAQvG,EAAmB/F,UAAY,GACnD+F,CACR,CAED,OAAO+tB,CACR,EAEM,iCAAuC,YAAC,IAAErM,EAAwE,EAAxEA,kCAAmCwM,EAAqC,EAArCA,sBAAuBd,EAAc,EAAdA,QACzG,OAAI76C,EAAAA,QAAEwjB,IAAI2rB,EAAmC,oBAAsB,GAC9D,UAAEzsB,KAAF,MACGyM,EAAiB4D,iBAAmB4oB,IAAAA,OAAAA,EAA4Bd,KACpEhI,SAAAA,GAAE,OAAIA,EAAG1jB,EAAiB4D,oBAAsBoc,EAAkCpc,gBAFjF,IAII,CAAEA,iBAAkB,MAGtBoc,CACR,CAVM,2GC3DP,MAaA,8bAbA,OACA,UACA,UACA,WACA,SACA,SACA,SACA,OACA,QACA,QACA,QAEA,YACA,gbAAA9qC,EAAA,EAAAA,EAAA,iBAAAA,IAAA,uBAAAA,GAAA,UAAAA,GAAA,GAAAA,EAAA,4XAEO,SAASw5C,EAAT,GAA4B,IACjC1b,EAOC,EAPDA,eACA2b,EAMC,EANDA,QACAna,EAKC,EALDA,cACAkB,EAIC,EAJDA,cACAD,EAGC,EAHDA,iBACAhI,EAEC,EAFDA,sBACAkI,EACC,EADDA,gBAEA,GAAgD,IAAApjB,WAAS,GAAzD,SAAO0wB,EAAD,KAAmBC,EAAnB,KACAhwB,GAAU,IAAA0H,kBAAiBg0B,EAAAA,4BAC3Bn4C,GAAO,IAAAytB,YAAWC,EAAAA,aAElB4f,GAAmB,IAAAnsC,UAAQ,kBAAM,IAAIosC,EAAAA,QAAW,CACpDC,IAAK,CAACjR,GACNv8B,KAAAA,EACA8rC,WAAY,KACZ8E,sBAAsB,EACtBnD,gBAAgB,EAChBT,aAAa,EACbjgB,iBAAiB,EACjBkS,cAAAA,IACChgB,QATsB,GASZ,CAACggB,EAAej/B,EAAMu8B,KAenC,IAAAle,YAAU,WACJke,GAAkBA,EAAelU,UAAYkU,EAAetR,UAAYsR,EAAe9T,gBAAkBruB,EAAAA,QAAEg+C,YAAY7b,EAAevU,qBACxI+V,EAAc,CACZxB,eAAe,EAAD,GACZvU,mBAAoB,CAClBsV,cAAc,EACdG,SAAS,EACTN,cAAc,EACd9U,UAAU,EACVI,gBAAgB,EAChBwC,UAAU,IAETsR,GATS,IAUZ9T,eAAgB,UAAEqD,SAASyQ,EAAe9T,gBAAkBzoB,EAAKqzB,cAAckJ,EAAe9T,eAAgB,CAAE6K,sBAAuB,EAAGC,sBAAuB,IAAOgJ,EAAe9T,kBAK9L,GAAE,IAEH,IAAM4vB,GAAUj+C,EAAAA,QAAEuK,QAAQ43B,IAAmBniC,EAAAA,QAAEmsC,SAAShK,EAAevU,oBACvE,OACE,wBAAC,UAAMqH,SAAP,KACE,+BAAKpvB,WAAW,aAAW,8BAA+B,QAASwc,EAAQ43B,qBACzE,wBAAC,EAAAtN,kBAAD,CACEnL,UAAWxhC,EAAAA,QAAE+7C,KAAK5Z,EAAgB,sBAClCL,qBAvCW15B,SAAAA,GACjB,IAAMu6B,EAAK,OAAQR,GAAmB/5B,GACtCu7B,EAAc,CACZxB,eAAe,EAAD,KACTQ,GADS,IAEZtU,eAAgB,UAAEqD,SAASiR,EAAMtU,gBAAkBzoB,EAAKqzB,cAAc0J,EAAMtU,eAAgB,CAAE6K,sBAAuB,EAAGC,sBAAuB,IAAOwJ,EAAMtU,eAC5JwC,UAAU,IAAA5I,aAAY0a,EAAM9R,UAAY8R,EAAM9R,SAAW,KACzD5C,UAAU,IAAAhG,aAAY0a,EAAM1U,UAAY0U,EAAM1U,SAAW,SAG7DokB,GAAoB,EACrB,EA6BOxQ,qBAAsB,WAAF,OAAQwQ,GAAoB,EAHlD,EAIEzF,OAAQwF,EACRzf,iBAAe,EACfkS,cAAeA,EACfD,iBAAkBA,EAClBhI,sBAAuBA,EACvByP,gBAAiB,CACfK,kBAAmB9mC,EAAK2C,UAAUtF,6BAClCspC,iBAAkBzH,GAAoB,wBAAC,EAAA36B,cAAD,CACpCC,MAAO,CAAEiB,EAAGC,SAAAA,GAAI,OAAK,iCAAIA,EAAJ,GACrBhB,SAAU1E,EAAK2C,UAAUtF,8IAG7B6hC,gBAAiBA,IAElBmZ,GAAU,wBAAC,EAAA7J,wBAAD,CACTC,SAAUnB,EACVoB,cAAe,CACbC,GAAI,CACFC,sBAAuB,WACrBnC,GAAoB,EACrB,EACDmK,wBAAyB,WACvBsB,GACD,OAILG,GACF,wBAAC,EAAArB,OAAD,CAAQ/2C,UAAU,sBAAsBgzB,QAAS,WAAF,OAAQwZ,GAAoB,EAA3E,EAAkF0K,SAAS,QACzF,wBAAC,EAAAxkB,UAAD,CAAWC,MAAM,SAAS4e,MAAOxxC,EAAK2C,UAAUtF,+BAC/C2C,EAAK2C,UAAUtF,+BAKzB,CAED46C,EAAmBlyC,UAAY,CAC7Bw2B,eAAgB,UAAUv2B,MAAM,CAC9BmiB,UAAWliB,EAAAA,QAAUK,OACrBs8B,iBAAkB38B,EAAAA,QAAUK,OAC5Bw8B,OAAQ78B,EAAAA,QAAUK,OAClB62B,aAAcl3B,EAAAA,QAAUG,OACxBiiB,SAAUpiB,EAAAA,QAAUM,UAAU,CAACN,EAAAA,QAAU4d,WAAWrB,MAAOvc,EAAAA,QAAUG,SACrE6kB,SAAUhlB,EAAAA,QAAUM,UAAU,CAACN,EAAAA,QAAU4d,WAAWrB,MAAOvc,EAAAA,QAAUG,SACrEqiB,eAAgBxiB,EAAAA,QAAUM,UAAU,CAClCN,EAAAA,QAAUG,OACVH,EAAAA,QAAUK,SAEZg3B,aAAcr3B,EAAAA,QAAUG,OACxBm3B,YAAat3B,EAAAA,QAAUM,UAAU,CAC/BN,EAAAA,QAAUG,OACVH,EAAAA,QAAUK,SAEZk3B,eAAgBv3B,EAAAA,QAAUG,OAC1Bq3B,QAASx3B,EAAAA,QAAUG,OACnBg4B,WAAYn4B,EAAAA,QAAUI,OAExB03B,cAAe93B,EAAAA,QAAUC,KAAK5E,WAC9B42C,QAASjyC,EAAAA,QAAUC,KACnB+4B,cAAeh5B,EAAAA,QAAUG,OACzB44B,iBAAkB/4B,EAAAA,QAAU4d,WAAWrB,MACvCwU,sBAAuB/wB,EAAAA,QAAUG,OAAO9E,WACxC49B,gBAAiBj5B,EAAAA,QAAUI,MAG7B4xC,EAAmBnxC,aAAe,CAChCoxC,QAAS,KACT3b,eAAgB,CAAC,EACjB0C,cAAe,KACfD,iBAAkB,KAClBE,iBAAiB,EALnB+Y,EAAAA,GAAAA,SAAAA,EAAAA,GlClJAv+C,EAAOC,QAAP,cAAAD,EAAA,GAAAA,EAAA,uBAAAA,EAAA,GAAAA,EAAA,8B,mFjECA,SAGA,cAGA,QACA,oBAGA,YACA,IACA,KACA,YAUA,OANA,mCAGA,OAGA,SACA,CAyDA,OArDA,MAGA,MAGA,oBACA,UACA,2BAA0C,qBAE1C,EAGA,gBACA,iDACA,4CAAwD,iBAExD,sCAAiD,UACjD,EAOA,kBAEA,GADA,cACA,aACA,sDACA,0BAGA,GAFA,OACA,mCAAyC,wBACzC,2DAAgH,WAAmB,EAAGD,KAAK,KAAK,IAChJ,QACA,EAGA,gBACA,sBACA,WAA2B,gBAA0B,EACrD,WAAiC,QAAe,EAEhD,OADA,aACA,CACA,EAGA,kBAAsD,gDAA+D,EAGrH,OAIA,W,CAAA,mNoGlFA,uHCMO,gBAAsB,CAC3B6+C,2CAA4Cj7C,qBAM5Ck7C,mCAAoCl7C,mBAMpCm7C,4CAA6Cn7C,gBAM7Co7C,mDAAoDp7C,eAMpDq7C,qCAAsCr7C,iBACtCs7C,qCAAsCt7C,6HACtCu7C,0CAA2Cv7C,6BAM3Cw7C,wCAAyCx7C,YACzCy7C,oCAAqCz7C,8HAlChC,wB,oLrGLP,SAGA,cAGA,QACA,oBAGA,YACA,IACA,KACA,YAUA,OANA,mCAGA,OAGA,SACA,CAyDA,OArDA,MAGA,MAGA,oBACA,UACA,2BAA0C,qBAE1C,EAGA,gBACA,iDACA,4CAAwD,iBAExD,sCAAiD,UACjD,EAOA,kBAEA,GADA,cACA,aACA,sDACA,0BAGA,GAFA,OACA,mCAAyC,wBACzC,2DAAgH,WAAmB,EAAG5D,KAAK,KAAK,IAChJ,QACA,EAGA,gBACA,sBACA,WAA2B,gBAA0B,EACrD,WAAiC,QAAe,EAEhD,OADA,aACA,CACA,EAGA,kBAAsD,gDAA+D,EAGrH,OAIA,W,CAAA,iB2BlFAC,EAAOC,QAAP,eAAAD,EAAA,GAAAA,EAAA,sBAAAA,EAAA,GAAAA,EAAA,sBAAAA,EAAA,GAAAA,EAAA,wBAAAA,EAAA,KAAAA,EAAA,6BAAAA,EAAA,gZ2ECA,SACA,sHCFA,cACA,UACA,WACA,UACA,QACA,0DAEA,IAAMq/C,EAAQ,MAERC,EAAmB,gBACvBC,EADuB,EACvBA,mBAAoBj5C,EADG,EACHA,KAAMk5C,EADH,EACGA,SAAU9c,EADb,EACaA,YADb,OAGtB8c,EACG9+C,EAAAA,QAAEwB,IAAIq9C,GAAoBE,SAAAA,GAAE,OAAIC,EAAAA,aAAaC,SAASF,EAAIn5C,EAAMo8B,EAAhEhiC,IACAg/C,EAAAA,aAAaE,WAAWL,EAAoBj5C,EAAMo8B,EAL/B,EAOnBmd,EAAgB,kBAAe,CACnCC,YADoB,EAAGx5C,KACL2C,UAAUtF,aAC5BmG,GAAI,KAFgB,EAKf,SAASi2C,EAAT,GAA+B,IACpCR,EAUC,EAVDA,mBACAS,EASC,EATDA,aACAC,EAQC,EARDA,WACA35C,EAOC,EAPDA,KACAk5C,EAMC,EANDA,SACAU,EAKC,EALDA,WACAC,EAIC,EAJDA,cACAC,EAGC,EAHDA,WACA1d,EAEC,EAFDA,YAToC,EAWnC,EADD2d,aAAAA,OAAY,OAAG,EAETC,EAAkB5d,GAAeA,EAAY6d,SAAW7d,EAAY6d,QAAQC,OAE9EC,EAAMP,EAAaX,EAAqBD,EAAiB,CAC3DC,mBAAAA,EAAoBj5C,KAAAA,EAAMk5C,SAAAA,EAAU9c,YAAAA,IAElCyd,IACFM,EAAG,CAAIZ,EAAc,CAAEv5C,KAAAA,KAAjB,SAA6Bm6C,KAEjCJ,GACFI,EAAIt/C,KAAK,CAAE2I,GAAIu1C,EAAOqB,GAAIrB,EAAOsB,KAAM,IAIzC,IAAIC,EAAYlgD,EAAAA,QAAEyyB,OAAO6sB,GAAgB,CAAC,EAAIt/C,EAAAA,QAAEspC,MAAMyW,GAElDJ,GAA+B,IAAfI,EAAI3+C,SACtB8+C,EAAY,CAAC,GA8Bf,OACE,wBAAC,EAAAp6B,SAAD,CACE1c,GAAG,cACHwgC,eAAgB,UAAEP,UAAU0W,EAAK,CAAE32C,GAAIk2C,KAAmBY,EAC1Dz6B,gBAAiBs6B,EACjBlW,SAAU0V,EACVxV,WAlCcgV,SAAAA,GAChB,OAAIA,EAAG31C,KAAOu1C,EAEV,gCAAM94C,WAAW,aAAW,cAC1B,oCAAOD,EAAK2C,UAAUtF,oBAIpBy8C,EACN,gCAAM75C,WAAW,aAAW,YAAa,CAAE,YAAak5C,EAAGoB,UAAY,CAAE,aAAcpB,EAAGqB,WAAa,CAAE,aAAcR,GAAmBZ,EAAAA,aAAaqB,gBAAgBtB,KAAQ,sBAAcA,EAAG31C,MAC5L21C,EAAGoB,UAAYpB,EAAGqB,WAAcR,GAAmBZ,EAAAA,aAAaqB,gBAAgBtB,KAAS,gCAAMl5C,UAAU,0BAC3G,oCAAOk5C,EAAGK,YAAY,KACtB,oCAAOL,EAAGuB,YAERV,GAAmBZ,EAAAA,aAAaqB,gBAAgBtB,IAAO,gCAAMl5C,UAAU,oBAAmB,IAAED,EAAK2C,UAAUtF,aAI/G,gCAAM4C,WAAW,aAAW,YAAa,CAAE,YAAak5C,EAAGoB,UAAY,CAAE,aAAcP,GAAmBZ,EAAAA,aAAaqB,gBAAgBtB,KAAQ,sBAAcA,EAAG31C,KAC9J,oCAAO21C,EAAGK,YAAY,KACtB,gCAAMv5C,WAAW,aAAW,CAAE,aAAck5C,EAAGqB,aAAerB,EAAGuB,YAE/DV,GAAmBZ,EAAAA,aAAaqB,gBAAgBtB,IAAO,gCAAMl5C,UAAU,oBAAmB,IAAED,EAAK2C,UAAUtF,YAIlH,GAWF,CAEDo8C,EAAsB1zC,UAAY,CAChCkzC,mBAAoB,UAAUtyC,QAAQ,UAAUX,MAAM,CACpDo0C,GAAIn0C,EAAAA,QADgD,UAElD3E,WACJo4C,aAAczzC,EAAAA,QAAUM,UAAU,CAChCN,EAAAA,QAAUK,OACVL,EAAAA,QAAU48B,MAAM,CAACkW,MAEnBY,WAAY1zC,EAAAA,QAAUC,KAAK5E,WAC3BtB,KAAM,UAAUgG,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,KAAK5E,aACzBA,WACH43C,SAAUjzC,EAAAA,QAAUI,KACpBuzC,WAAY3zC,EAAAA,QAAUI,KACtBwzC,cAAe5zC,EAAAA,QAAUI,KACzByzC,WAAY7zC,EAAAA,QAAUI,KACtB+1B,YAAan2B,EAAAA,QAAUD,MAAM,CAAC,GAC9B+zC,aAAc9zC,EAAAA,QAAUI,MAG1BozC,EAAsB3yC,aAAe,CACnC4yC,kBAAc7xC,EACdqxC,UAAU,EACVU,YAAY,EACZC,eAAe,EACfC,YAAY,EACZ1d,YAAa,CAAC,EACd2d,cAAc,EAPhBN,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,mBAAAA,EC5GO,gBAAsB,CAC3B,WAAYp8C,WACZs9C,KAAMt9C,OACNu9C,WAAYv9C,aACZ,mBAAoBA,mBACpBw9C,SAAUx9C,WACV,cAAeA,cACfy9C,IAAKz9C,MACL,gBAAiBA,gBACjB09C,IAAK19C,MACL,gBAAiBA,gBACjB,yBAA0BA,yBAC1B,uCAAqCA,uCACrC,0BAA2BA,0BAC3B,2DAA4DA,2DAC5D,mBAAoBA,mBACpB,mBAAoBA,mBACpB,6CAA8CA,6CAC9C,mBAAoBA,mBACpB,8CAA+CA,8CAC/C,8BAA+BA,8BAC/B,oBAAqBA,oBACrB,wCAAyCA,wCACzC,qBAAsBA,qBACtB,sCAAuCA,sCACvC,yCAA0CA,yCAC1C29C,OAAQ39C,SACR,gBAAiBA,gBACjB,iBAAkBA,iBAClB,YAAaA,YACb,MAAOA,MACPysB,QAASzsB,UA/BJ,mCCFP,oPAAAoB,EAAA,EAAAA,EAAA,iBAAAA,IAAA,uBAAAA,GAAA,UAAAA,GAAA,GAAAA,EAAA,4XDEO,2ECEA,IAAMw8C,EAAgB,OAJ7B,MAKKC,gBADwB,IAE3B,eAAgB,CACd,8BAA+B,CAC7BpxC,MAAO,WAGT,gBAAiB,CACfA,MAAO,WAGT,sBAAuB,CACrBA,MAAO,WAGT,YAAa,CACXA,MAAO,UACP2b,SAAU,GACVe,OAAQ,aAGV,+BAAgC,CAC9B,yCAA0C,CACxC1c,MAAO,eAvBR,uCCJPpQ,EAAOC,QAAP,cAAAD,EAAA,GAAAA,EAAA,8B,mF1GCA,SAGA,cAGA,QACA,oBAGA,YACA,IACA,KACA,YAUA,OANA,mCAGA,OAGA,SACA,CAyDA,OArDA,MAGA,MAGA,oBACA,UACA,2BAA0C,qBAE1C,EAGA,gBACA,iDACA,4CAAwD,iBAExD,sCAAiD,UACjD,EAOA,kBAEA,GADA,cACA,aACA,sDACA,0BAGA,GAFA,OACA,mCAAyC,wBACzC,2DAAgH,WAAmB,EAAGD,KAAK,KAAK,IAChJ,QACA,EAGA,gBACA,sBACA,WAA2B,gBAA0B,EACrD,WAAiC,QAAe,EAEhD,OADA,aACA,CACA,EAGA,kBAAsD,gDAA+D,EAGrH,OAIA,W,CAAA,mN2GlFA,uHCQO,gBAAsB,CAC3B,wFAAyF4D,wFAGzF,6EAA8EA,6EAG9E,mFAAoFA,mFAGpF,+GAAgHA,+GAGhH,wFAAyFA,wFAGzF,4DAA6DA,4DAG7D,8IAA+IA,8IAG/I,8NAA+NA,8NAG/N,8IAA+IA,8IAG/I,oKAAgKA,oKAGhK,kGAAmGA,kGAGnG,yFAA0FA,yFAG1F,kBAAmBA,kBAGnB,yBAA0BA,yBAG1B,sFAAuFA,sFAGvF89C,KAAM99C,OAGN,aAAcA,aAGd,wGAAyGA,wGApDpG,wB,oJ5GPP,SAGA,cAGA,QACA,oBAGA,YACA,IACA,KACA,YAUA,OANA,mCAGA,OAGA,SACA,CAyDA,OArDA,MAGA,MAGA,oBACA,UACA,2BAA0C,qBAE1C,EAGA,gBACA,iDACA,4CAAwD,iBAExD,sCAAiD,UACjD,EAOA,kBAEA,GADA,cACA,aACA,sDACA,0BAGA,GAFA,OACA,mCAAyC,wBACzC,2DAAgH,WAAmB,EAAG5D,KAAK,KAAK,IAChJ,QACA,EAGA,gBACA,sBACA,WAA2B,gBAA0B,EACrD,WAAiC,QAAe,EAEhD,OADA,aACA,CACA,EAGA,kBAAsD,gDAA+D,EAGrH,OAIA,W,CAAA,iB2BlFAC,EAAOC,QAAP,cAAAD,EAAA,GAAAA,EAAA,sBAAAA,EAAA,GAAAA,EAAA,sBAAAA,EAAA,GAAAA,EAAA,wBAAAA,EAAA,KAAAA,EAAA,6BAAAA,EAAA,4akFCA,iKCDA,MAIA,8bAJA,OACA,UACA,UACA,OACA,8aAAA+E,EAAA,EAAAA,EAAA,iBAAAA,IAAA,uBAAAA,GAAA,UAAAA,GAAA,GAAAA,EAAA,ycAAAA,EAAA,EAAAA,EAAA,iBAAAA,IAAA,iBAAAA,GAAA,wGAEA,MAA8EmB,EAAAA,UAAtEw7C,EAAF,EAAEA,gBAAiBC,EAAnB,EAAmBA,uBAAwBC,EAAAA,EAAAA,yBACzCC,EAA6BnC,EAAAA,aAA7BmC,yBACFC,EAAkB,CACtBx7C,KAAM,UAAUgG,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,KAAK5E,aACzBA,WACHrB,UAAWgG,EAAAA,QAAUG,OACrBq1C,sBAAuBx1C,EAAAA,QAAUC,KAAK5E,YAGxC,SAASo6C,EAAT,GAA+B,IAC7B17C,EAMC,EANDA,KACAC,EAKC,EALDA,UACA07C,EAIC,EAJDA,WACAC,EAGC,EAHDA,eACAH,EAEC,EAFDA,sBACAI,EACC,EADDA,cAEMC,EAAM1hD,EAAAA,QAAE2hD,aAAaH,EAAgBC,EAAgBR,EAAyBC,GAC9Ej2C,GAAW,IAAAhD,cAAaiD,SAAAA,GAC5B,IAAM02C,EAAQH,EAAgB5N,SAAS3oC,EAAMC,OAAO0C,MAAO,IAAM3C,EAAMC,OAAO0C,MAC9EwzC,EAAsBO,EACvB,GAAE,CAACH,EAAeJ,IAEnB,GAAIrhD,EAAAA,QAAEuK,QAAQm3C,GACZ,OAAO,KAET,IAAMG,EAAqBJ,EAAgB,EAAI,GAE/C,OACE,wBAAC,EAAAK,OAAD,CACEj8C,UAAWA,EACXgI,MAAO7N,EAAAA,QAAE8yC,SAAS4O,EAAKH,GAAcA,EAAaM,EAClD52C,SAAUA,GAEV,kCAAQ4C,MAAOg0C,EAAmBE,QAAM,GAAEn8C,EAAK2C,UAAUtF,cACxDjD,EAAAA,QAAEwB,IAAIkgD,GAAKM,SAAAA,GAAE,OACZ,kCAAQv4C,IAAKu4C,EAAIn0C,MAAOm0C,GAAqBb,EAAhBM,EAAyCO,EAAqChB,EAAgBgB,GAAjDp8C,GAD3E5F,IAIN,CAEDshD,EAAsB31C,UAAY,CAChC/F,KAAM,UAAUgG,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,KAAK5E,aACzBA,WACHrB,UAAWgG,EAAAA,QAAUG,OACrBu1C,WAAY11C,EAAAA,QAAUM,UAAU,CAACN,EAAAA,QAAUK,OAAQL,EAAAA,QAAUG,SAC7Dw1C,eAAgB31C,EAAAA,QAAUU,QAAQV,EAAAA,QAAUM,UAAU,CAACN,EAAAA,QAAUK,OAAQL,EAAAA,QAAUG,UAAU9E,WAC7Fm6C,sBAAuBx1C,EAAAA,QAAUC,KAAK5E,WACtCu6C,cAAe51C,EAAAA,QAAUI,KAAK/E,YAGhCo6C,EAAsB50C,aAAe,CACnC7G,UAAW,cACX07C,gBAAY9zC,GAGP,IAAMw0C,EAA8Bt0C,SAAAA,GAAK,OAC9C,wBAAC2zC,EAAD,KACM3zC,EADN,CAEE8zC,eAAa,IAHV,kCAMPQ,EAA4Bt2C,UAA5Bs2C,EAAAA,EAAAA,CAAAA,EACKb,GADLa,CAAAA,EAAAA,CAEEV,WAAY11C,EAAAA,QAAUK,OACtBs1C,eAAgB31C,EAAAA,QAAUU,QAAQV,EAAAA,QAAUK,UAG9C+1C,EAA4Bv1C,aAAe,CACzC60C,gBAAY9zC,EACZ+zC,eAAgBP,GAGX,IAAMiB,EAAgCv0C,SAAAA,GAAK,OAChD,wBAAC2zC,EAAD,KACM3zC,EADN,CAEE8zC,eAAe,IAHZ,oCAOPS,EAA8Bv2C,UAA9Bu2C,EAAAA,EAAAA,CAAAA,EACKd,GADLc,CAAAA,EAAAA,CAEEX,WAAY11C,EAAAA,QAAUG,OACtBw1C,eAAgB31C,EAAAA,QAAUU,QAAQV,EAAAA,QAAUG,UAG9Ck2C,EAA8Bx1C,aAAe,CAC3C60C,gBAAY9zC,EACZ+zC,eAAgBN,EAFlBgB,EAAAA,IAAAA,SAAAA,EAAAA,EAAAA,GAAAA,aAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,IAAAA,EAAAA,mBAAAA,EC5FO,gBAAsB,CAC3B,YAAaj/C,YACb,oBAAqBA,oBACrB,kBAAmBA,kBACnBk/C,OAAQl/C,SAJH,kBCFP3D,EAAOC,QAAP,sB,oGhHCA,SAGA,cAGA,QACA,oBAGA,YACA,IACA,KACA,YAUA,OANA,mCAGA,OAGA,SACA,CAyDA,OArDA,MAGA,MAGA,oBACA,UACA,2BAA0C,qBAE1C,EAGA,gBACA,iDACA,4CAAwD,iBAExD,sCAAiD,UACjD,EAOA,kBAEA,GADA,cACA,aACA,sDACA,0BAGA,GAFA,OACA,mCAAyC,wBACzC,2DAAgH,WAAmB,EAAGF,KAAK,KAAK,IAChJ,QACA,EAGA,gBACA,sBACA,WAA2B,gBAA0B,EACrD,WAAiC,QAAe,EAEhD,OADA,aACA,CACA,EAGA,kBAAsD,gDAA+D,EAGrH,OAIA,W,CAAA,mNiHlFA,ozBCQO,IAAMkF,EAAa,SDR1B,uCCSK69C,SADqB,IAExBC,0BAA2Bp/C,4BAC3B2L,SAAU3L,KACV4L,UAAW5L,MACXq/C,+BAAgCr/C,mBAChCs/C,gCAAiCt/C,gMACjCu/C,qCAAsCv/C,uBACtCw/C,iDAAkDx/C,oDAClDkM,+BAAgClM,8VAChCy/C,cAAez/C,gGACf0/C,mBAAoB1/C,mKACpB2/C,qCAAsC3/C,iIAMtC4/C,2CAA4C5/C,oIAC5C6/C,uCAAwC7/C,kBACxC8/C,sDAAuD9/C,4BACvDuL,eAAgBvL,cArBX,qCCRP3D,EAAOC,QAAP,sB,mFnHCA,SAGA,cAGA,QACA,oBAGA,YACA,IACA,KACA,YAUA,OANA,mCAGA,OAGA,SACA,CAyDA,OArDA,MAGA,MAGA,oBACA,UACA,2BAA0C,qBAE1C,EAGA,gBACA,iDACA,4CAAwD,iBAExD,sCAAiD,UACjD,EAOA,kBAEA,GADA,cACA,aACA,sDACA,0BAGA,GAFA,OACA,mCAAyC,wBACzC,2DAAgH,WAAmB,EAAGF,KAAK,KAAK,IAChJ,QACA,EAGA,gBACA,sBACA,WAA2B,gBAA0B,EACrD,WAAiC,QAAe,EAEhD,OADA,aACA,CACA,EAGA,kBAAsD,gDAA+D,EAGrH,OAIA,Y,CAAA,sNoHlFA,yHCMO,gBAAsB,CAC3Bq9B,wBAAyBz5B,6CACzB+/C,0BAA2B//C,sBAI3BggD,wBAAyBhgD,oJAMzBigD,gCAAiCjgD,oHACjCkgD,gCAAiClgD,iOAMjCmgD,gCAAiCngD,sDAnB5B,wB,oGrHLP,SAGA,cAGA,QACA,oBAGA,YACA,IACA,KACA,YAUA,OANA,mCAGA,OAGA,SACA,CAyDA,OArDA,MAGA,MAGA,oBACA,UACA,2BAA0C,qBAE1C,EAGA,gBACA,iDACA,4CAAwD,iBAExD,sCAAiD,UACjD,EAOA,kBAEA,GADA,cACA,aACA,sDACA,0BAGA,GAFA,OACA,mCAAyC,wBACzC,2DAAgH,WAAmB,EAAG5D,KAAK,KAAK,IAChJ,QACA,EAGA,gBACA,sBACA,WAA2B,gBAA0B,EACrD,WAAiC,QAAe,EAEhD,OADA,aACA,CACA,EAGA,kBAAsD,gDAA+D,EAGrH,OAIA,W,CAAA,mNsHlFA,8yBCQO,IAAMkF,EAAa,ODR1B,OCSKC,qBADqB,IAExB0J,mCAAoCjL,yBACpC+W,6BAA8B/W,yDAC9BogD,6BAA8BpgD,uDAC9BgX,qCAAsChX,wBALjC,qCjHRP3D,EAAOC,QAAP,sB,oJNCE,IAAI+jD,EAAmB,CAAC,EAGxB,SAAS,EAAoBC,GAG5B,GAAGD,EAAiBC,GACnB,OAAOD,EAAiBC,GAAUhkD,QAGnC,IAAID,EAASgkD,EAAiBC,GAAY,CACzCl/C,EAAGk/C,EACHC,GAAG,EACHjkD,QAAS,CAAC,GAUX,OANAkkD,EAAQF,GAAU7J,KAAKp6C,EAAOC,QAASD,EAAQA,EAAOC,QAAS,GAG/DD,EAAOkkD,GAAI,EAGJlkD,EAAOC,OACf,CAyDA,OArDA,EAAoBmkD,EAAID,EAGxB,EAAoBE,EAAIL,EAGxB,EAAoBM,EAAI,SAASrkD,EAASY,EAAM0jD,GAC3C,EAAoBC,EAAEvkD,EAASY,IAClC+lB,OAAO69B,eAAexkD,EAASY,EAAM,CAAE6jD,YAAY,EAAMxgC,IAAKqgC,GAEhE,EAGA,EAAoBI,EAAI,SAAS1kD,GACX,qBAAX2kD,QAA0BA,OAAOC,aAC1Cj+B,OAAO69B,eAAexkD,EAAS2kD,OAAOC,YAAa,CAAEt2C,MAAO,WAE7DqY,OAAO69B,eAAexkD,EAAS,aAAc,CAAEsO,OAAO,GACvD,EAOA,EAAoBu2C,EAAI,SAASv2C,EAAOw2C,GAEvC,GADU,EAAPA,IAAUx2C,EAAQ,EAAoBA,IAC/B,EAAPw2C,EAAU,OAAOx2C,EACpB,GAAW,EAAPw2C,GAA8B,kBAAVx2C,GAAsBA,GAASA,EAAMy2C,WAAY,OAAOz2C,EAChF,IAAI02C,EAAKr+B,OAAO1jB,OAAO,MAGvB,GAFA,EAAoByhD,EAAEM,GACtBr+B,OAAO69B,eAAeQ,EAAI,UAAW,CAAEP,YAAY,EAAMn2C,MAAOA,IACtD,EAAPw2C,GAA4B,iBAATx2C,EAAmB,IAAI,IAAIpE,KAAOoE,EAAO,EAAoB+1C,EAAEW,EAAI96C,EAAK,SAASA,GAAO,OAAOoE,EAAMpE,EAAM,EAAEpK,KAAK,KAAMoK,IAC9I,OAAO86C,CACR,EAGA,EAAoBC,EAAI,SAASllD,GAChC,IAAIukD,EAASvkD,GAAUA,EAAOglD,WAC7B,WAAwB,OAAOhlD,EAAgB,OAAG,EAClD,WAA8B,OAAOA,CAAQ,EAE9C,OADA,EAAoBskD,EAAEC,EAAQ,IAAKA,GAC5BA,CACR,EAGA,EAAoBC,EAAI,SAASx3C,EAAQ+qC,GAAY,OAAOnxB,OAAOu+B,UAAUC,eAAehL,KAAKptC,EAAQ+qC,EAAW,EAGpH,EAAoBsN,EAAI,GAIjB,EAAoB,EAAoBC,EAAI,E,gOwHlFrD,U,4GCAA,cACA,UACA,QACA,QAEA,W,mDAEA,SAASC,EAAeC,EAAQC,GAC9B,MAAQ,GAAED,UAAeE,KAAKC,mBAAmBC,KAAKC,UAAUJ,KAAgBxhB,QAAQ,OAAQ,KAAKA,QAAQ,MAAO,MACrH,CAGD,SAAS6hB,EAAWL,GAClB,IAAIliD,EAAO+yC,KAAKyP,SACIrlD,EAAAA,QAAEslD,MAAMP,GAAet7C,MACrC5G,GAAQA,EAAKgyB,UAAY70B,EAAAA,QAAEulD,IAAI1iD,EAAKgyB,SAAU,CAAEzrB,GAAIK,OACtD5G,EAAO7C,EAAAA,QAAEqpC,UAAUxmC,EAAKgyB,SAAU,CAAEzrB,GAAIK,IACjC5G,EAAK2iD,iBAMI5P,KAAK6P,SAASC,WAAWX,KAC3CnP,KAAKC,QAAQ,WAAYkP,GACzBnP,KAAK6P,SAASE,OAAO,CAAEZ,iBAE1B,CAGD,SAASa,EAAUb,GACZ/kD,EAAAA,QAAEgjC,QAAQ4S,KAAKiQ,kBAAmBd,KACrCnP,KAAKiQ,kBAAoBd,EACzBnP,KAAK6P,SAAS5gC,OAAO,CACnBihC,SAAU,KACRlQ,KAAK6P,SAASM,IAAIvM,KAAK,wBAAyBqL,EAAejP,KAAK6P,SAASr8C,GAAI27C,GAAjF,KAKNnP,KAAK6P,SAASO,uBAAuB,CAAEjB,gBACxC,CAGD,SAASkB,IAEP,GAAIrQ,KAAKsQ,oBAAsBtQ,KAAKsQ,mBAAmB9kD,OAAS,EAAG,CAEjE,MAAM2jD,EAAenP,KAAKsQ,mBAAmBlQ,QAG7C,KAAO+O,EAAa3jD,OAAS,IAAMw0C,KAAK6P,SAASC,WAAW1lD,EAAAA,QAAEmmD,QAAQpB,KACpEA,EAAazjD,MAGfskD,EAAUlM,KAAK9D,KAAMmP,EACtB,MAECa,EAAUlM,KAAK9D,KAAMA,KAAK6P,SAASW,6BAA6B,GAEnE,CAED,SAASC,EAAiBhB,GACxB,OAAIA,EACKrlD,EAAAA,QAAE+3C,SAAS,CAChBljB,SAAU70B,EAAAA,QAAEwB,IAAI6jD,EAASxwB,UAAU,CAAChnB,EAAOy4C,IAAUtmD,EAAAA,QAAE+3C,SAAS,CAC9DwO,KAAM,CACJC,QAASnB,EAASxwB,SAASzzB,OAC3BqlD,SAAUH,EAAQ,IAEnBD,EAAiBx4C,OACnBw3C,GAGEA,CACR,CAMM,MAAMqB,UAA2BzP,EAAAA,QAASC,KAQ/CX,UAAAA,CAAWhxB,EAAU,CAAC,GACpBqwB,KAAKyP,SAAWgB,EAAiB9gC,EAAQ8/B,UACzCzP,KAAK6P,SAAW,IAAIkB,EAAAA,oBAAoB,CACtCtB,SAAUzP,KAAKyP,SACfx/C,UAAW,iBACXuD,GAAImc,EAAQu/B,QAAU9kD,EAAAA,QAAE68C,SAAS,cACjC+J,WAAY,CACVC,KAAM,OACNC,SAAU,GAGZC,aAAc/mD,EAAAA,QAAEgnD,QAAQC,EAAAA,SAAkBrb,GAAQ5rC,EAAAA,QAAE+3C,SAAS,CAC3DmP,SAAUlnD,EAAAA,QAAEgjC,QACV4I,EAAKmZ,aACL/kD,EAAAA,QAAEspC,MAAMsM,KAAKsQ,mBAAoBta,EAAKmZ,aAAa3jD,SAErD+lD,QAASnnD,EAAAA,QAAEgjC,QAAQ4I,EAAKmZ,aAAcnP,KAAKiQ,mBAC3CuB,YAAapnD,EAAAA,QAAEW,WAAW4kB,EAAQ8hC,cAAgB9hC,EAAQ8hC,aAAazb,GAAQ,KAC/ExiC,GAAIy7C,EAAejP,KAAK6P,SAASr8C,GAAIwiC,EAAKmZ,eACzCnZ,KAEHwJ,OAAQ,CACNkS,MAAO,IAAMrB,EAAQvM,KAAK9D,MAC1B,mBAAoB2R,GAAK3R,KAAK4R,UAAUD,GACxCE,QAASF,GAAK3R,KAAK6R,QAAQF,KAGhC,CAQD1iC,MAAAA,EAAO,SAAEihC,GAAa,CAAC,GAGrB,OAFAlQ,KAAKmQ,IAAI2B,QACT9R,KAAKmQ,IAAI4B,OAAO/R,KAAK6P,SAAS5gC,OAAO,CAAEihC,aAAYC,KAC5CnQ,IACR,CAUDgS,MAAAA,CAAOriC,GACAvlB,EAAAA,QAAEgjC,QAAQ4S,KAAKsQ,mBAAoB3gC,EAAQw/B,gBACzCnP,KAAK6P,SAASC,WAAW1lD,EAAAA,QAAEmmD,QAAQ5gC,EAAQw/B,gBAC9CK,EAAW1L,KAAK9D,KAAM51C,EAAAA,QAAEmmD,QAAQ5gC,EAAQw/B,eAG1CnP,KAAKsQ,mBAAqB3gC,EAAQw/B,aAClCa,EAAUlM,KAAK9D,KAAMrwB,EAAQw/B,cAC7BnP,KAAK6P,SAAS5gC,OAAO7kB,EAAAA,QAAE+7C,KAAKx2B,EAAS,YAGlCA,EAAQsiC,QACXjS,KAAKC,QAAQ,WAAYtwB,EAAQw/B,aAEpC,CASD+C,MAAAA,CAAOviC,GAEL,OADAqwB,KAAKyP,SAAWgB,EAAiB9gC,EAAQ8/B,UAClCzP,KAAK6P,SAASqC,OAAO9nD,EAAAA,QAAE+3C,SAAS,CAAEsN,SAAUzP,KAAKyP,UAAY9/B,GACrE,CAODiiC,SAAAA,CAAUD,GACR,MAAMxC,EAAenP,KAAKmS,EAAER,EAAEjS,eAAeltC,KAAK,gBAE9CwtC,KAAKmS,EAAER,EAAEp8C,QAAQ68C,SAAS,sBACxBpS,KAAKmS,EAAER,EAAEp8C,QAAQ68C,SAAS,YAC5BpS,KAAK6P,SAASwC,SAAS,CAAElD,iBAEzBK,EAAW1L,KAAK9D,KAAMmP,IAGxBa,EAAUlM,KAAK9D,KAAMmP,GACrBnP,KAAKgS,OAAO,CAAE7C,iBACdK,EAAW1L,KAAK9D,KAAMmP,GAEzB,CAQD0C,OAAAA,CAAQF,GACN,IAAIxC,EAEJ,OAAQwC,EAAEW,OACR,KAAKC,EAAAA,QAAQC,MACb,KAAKD,EAAAA,QAAQE,MACXzS,KAAKgS,OAAO,CAAE7C,aAAcnP,KAAKiQ,oBACjCT,EAAW1L,KAAK9D,KAAMA,KAAKiQ,mBAC3B,MACF,KAAKsC,EAAAA,QAAQG,UACP1S,KAAK6P,SAASC,WAAW9P,KAAKiQ,mBAChCjQ,KAAK6P,SAASwC,SAAS,CAAElD,aAAcnP,KAAKiQ,oBACnCjQ,KAAKiQ,kBAAkBzkD,OAAS,GAEzCwkD,EAAUlM,KAAK9D,KAAM51C,EAAAA,QAAEmmD,QAAQvQ,KAAKiQ,oBAEtC,MACF,KAAKsC,EAAAA,QAAQI,WACP3S,KAAK6P,SAASC,WAAW9P,KAAKiQ,oBAEhCd,EAAenP,KAAK6P,SAASW,6BAA6BxQ,KAAK6P,SAC5D+C,8BAA8B5S,KAAKiQ,mBAAqB,GAEvDd,GAAgBA,EAAa3jD,OAASw0C,KAAKiQ,kBAAkBzkD,QAC/DwkD,EAAUlM,KAAK9D,KAAMmP,IAGvBK,EAAW1L,KAAK9D,KAAMA,KAAKiQ,mBAE7B,MACF,KAAKsC,EAAAA,QAAQM,QACX1D,EAAenP,KAAK6P,SAASW,6BAA6BxQ,KAAK6P,SAC5D+C,8BAA8B5S,KAAKiQ,mBAAqB,GAEvDd,GAAgBA,EAAa3jD,OAAS,GACxCwkD,EAAUlM,KAAK9D,KAAMmP,GAEvB,MACF,KAAKoD,EAAAA,QAAQO,UACX3D,EAAenP,KAAK6P,SAASW,6BAA6BxQ,KAAK6P,SAC5D+C,8BAA8B5S,KAAKiQ,mBAAqB,GAEvDd,GAAgBA,EAAa3jD,OAAS,GACxCwkD,EAAUlM,KAAK9D,KAAMmP,GAEvB,MACF,QACE,OAGJwC,EAAEoB,gBACH,E,sC9FpPHrpD,EAAOC,QAAU,C,gB+FAjBD,EAAOC,QAAUqpD,C,gBCAjBtpD,EAAOC,QAAUspD,C,gBCAjBvpD,EAAOC,QAAUupD,C,kBCAjB,IAAI5P,EAAMC,EAAQ,IAqBlB75C,EAAOC,QAnBP,SAAkB65C,GAAS,IAAoCC,EAAhCC,EAAW,GAAqCC,EAAmBH,GAAU,CAAC,EAkBkvC,OAlB9uC,SAAU2P,EAAS7D,EAAMqB,EAAMa,EAAa4B,EAAUC,EAAUzD,EAAah6C,EAAMpC,EAAI89C,EAAUC,EAASpC,EAAcz5C,GAAOguC,EAAWA,EAAW,SAA2BJ,EAAIgQ,MAAMhQ,EAAIv2C,MAAM,CAAC,CAAC,MAASu2C,EAAI72B,QAAQ,CAAC,YAAY6kC,EAAW,SAAW,GAAGC,EAAU,QAAU,GAAG6B,GAAsB,IAAK,EAAC,GAAM,GAAK,GAAK,IAAO,KAAQ9P,EAAIO,OAAOjuC,GAAc,gBAAgB,UAAa,EAAE,KAAQ,WAAW,GAAM0tC,EAAIO,OAAOrwC,GAAI,eAAgB8vC,EAAIO,OAAO8M,EAAKC,SAAS,gBAAiBtN,EAAIO,OAAO8M,EAAKE,UAAU,gBAAiBvN,EAAIO,OAAOsP,EAAQ5B,GAASj1B,YAAY,qBAAsBgnB,EAAIO,OAAOyL,EAAKC,UAAUJ,KAAgBS,EAAc,CAAC,gBAAiBuD,EAAQE,GAAU/2B,YAAc,CAAC,KAAK,GAAS,IACh0B,IAAK,IAAI7tB,EAAI,EAAGA,EAAI0gD,EAAa3jD,OAAQiD,IAEzCi1C,GAAsB,6BAEjByP,EAAQvD,KACblM,EAAWA,EAAW,QAAgBJ,EAAIM,KAAK,QAASN,EAAI72B,QAAQ,CAAC,qBAAqB0mC,EAAQE,GAAY,WAAa,aAAc,EAAC,GAAM,KAAQ,GAAO,GAAS,YAEnK7B,EACL9N,GAAuB,OAASD,EAAa+N,GAAe,GAAK/N,EAGjEC,EAAWA,EAAW,2BAA0CJ,EAAIO,OAAO,OAASJ,EAAa/tC,GAAQ,GAAK+tC,GAAe,UAE7H,IAASh1C,EAAI,EAAGA,EAAI0gD,EAAa3jD,OAAQiD,IAEzCi1C,GAAsB,UAEtBA,GAAsB,WAlB2F,EAkB/CI,KAAK9D,KAAK,YAAa2D,EAAgBA,EAAgBwP,QAAyB,qBAAVA,QAAsBA,aAAQt7C,EAAU,SAAU8rC,EAAgBA,EAAgB2L,KAAmB,qBAAPA,KAAmBA,UAAKz3C,EAAU,SAAU8rC,EAAgBA,EAAgBgN,KAAmB,qBAAPA,KAAmBA,UAAK94C,EAAU,gBAAiB8rC,EAAgBA,EAAgB6N,YAAiC,qBAAdA,YAA0BA,iBAAY35C,EAAU,aAAc8rC,EAAgBA,EAAgByP,SAA2B,qBAAXA,SAAuBA,cAASv7C,EAAU,aAAc8rC,EAAgBA,EAAgB0P,SAA2B,qBAAXA,SAAuBA,cAASx7C,EAAU,gBAAiB8rC,EAAgBA,EAAgBiM,YAAiC,qBAAdA,YAA0BA,iBAAY/3C,EAAU,SAAU8rC,EAAgBA,EAAgB/tC,KAAmB,qBAAPA,KAAmBA,UAAKiC,EAAU,OAAQ8rC,EAAgBA,EAAgBnwC,GAAe,qBAALA,GAAiBA,QAAGqE,EAAU,aAAc8rC,EAAgBA,EAAgB2N,SAA2B,qBAAXA,SAAuBA,cAASz5C,EAAU,YAAa8rC,EAAgBA,EAAgB4N,QAAyB,qBAAVA,QAAsBA,aAAQ15C,EAAU,iBAAkB8rC,EAAgBA,EAAgBwL,aAAmC,qBAAfA,aAA2BA,kBAAat3C,EAAU,SAAU8rC,EAAgBA,EAAgBjuC,KAAmB,qBAAPA,KAAmBA,UAAKmC,GAAoB6rC,CAAU,C,gBCpBh3Ch6C,EAAOC,QAAU4pD,C,6J9HCf,IAAI7F,EAAmB,CAAC,EAGxB,SAAS,EAAoBC,GAG5B,GAAGD,EAAiBC,GACnB,OAAOD,EAAiBC,GAAUhkD,QAGnC,IAAID,EAASgkD,EAAiBC,GAAY,CACzCl/C,EAAGk/C,EACHC,GAAG,EACHjkD,QAAS,CAAC,GAUX,OANAkkD,EAAQF,GAAU7J,KAAKp6C,EAAOC,QAASD,EAAQA,EAAOC,QAAS,GAG/DD,EAAOkkD,GAAI,EAGJlkD,EAAOC,OACf,CAyDA,OArDA,EAAoBmkD,EAAID,EAGxB,EAAoBE,EAAIL,EAGxB,EAAoBM,EAAI,SAASrkD,EAASY,EAAM0jD,GAC3C,EAAoBC,EAAEvkD,EAASY,IAClC+lB,OAAO69B,eAAexkD,EAASY,EAAM,CAAE6jD,YAAY,EAAMxgC,IAAKqgC,GAEhE,EAGA,EAAoBI,EAAI,SAAS1kD,GACX,qBAAX2kD,QAA0BA,OAAOC,aAC1Cj+B,OAAO69B,eAAexkD,EAAS2kD,OAAOC,YAAa,CAAEt2C,MAAO,WAE7DqY,OAAO69B,eAAexkD,EAAS,aAAc,CAAEsO,OAAO,GACvD,EAOA,EAAoBu2C,EAAI,SAASv2C,EAAOw2C,GAEvC,GADU,EAAPA,IAAUx2C,EAAQ,EAAoBA,IAC/B,EAAPw2C,EAAU,OAAOx2C,EACpB,GAAW,EAAPw2C,GAA8B,kBAAVx2C,GAAsBA,GAASA,EAAMy2C,WAAY,OAAOz2C,EAChF,IAAI02C,EAAKr+B,OAAO1jB,OAAO,MAGvB,GAFA,EAAoByhD,EAAEM,GACtBr+B,OAAO69B,eAAeQ,EAAI,UAAW,CAAEP,YAAY,EAAMn2C,MAAOA,IACtD,EAAPw2C,GAA4B,iBAATx2C,EAAmB,IAAI,IAAIpE,KAAOoE,EAAO,EAAoB+1C,EAAEW,EAAI96C,EAAK,SAASA,GAAO,OAAOoE,EAAMpE,EAAM,EAAEpK,KAAK,KAAMoK,IAC9I,OAAO86C,CACR,EAGA,EAAoBC,EAAI,SAASllD,GAChC,IAAIukD,EAASvkD,GAAUA,EAAOglD,WAC7B,WAAwB,OAAOhlD,EAAgB,OAAG,EAClD,WAA8B,OAAOA,CAAQ,EAE9C,OADA,EAAoBskD,EAAEC,EAAQ,IAAKA,GAC5BA,CACR,EAGA,EAAoBC,EAAI,SAASx3C,EAAQ+qC,GAAY,OAAOnxB,OAAOu+B,UAAUC,eAAehL,KAAKptC,EAAQ+qC,EAAW,EAGpH,EAAoBsN,EAAI,GAIjB,EAAoB,EAAoBC,EAAI,E,yM+HlFrD,I,EAAA,G,EAAA,O,oWCAA,cACA,OACA,UACA,WACA,W,wnBAIA,IAAMwE,EAAS,CAAC,QAAS,UAAW,OAAQ,gBAG5C,SAASC,EAAcC,GACrB,OAAOA,GAHY,cAIpB,CAED,SAASC,EAASC,EAAaF,GAC7B,OAAOE,EAAYD,SAAZ,gBAA8BF,EAAcC,GAA5C,KACR,CAQD,SAASG,EAAMxM,EAASqM,GAAmB,kCAAT/jC,EAAS,iCAATA,EAAS,kBACzCqwB,KAAK8T,QAAU9T,KAAK+T,KAAL,MAAA/T,KAAA,CAAU,CACvBqH,QAAAA,EACAqM,MAAAA,EACAM,aAAa,GACZhU,KAAK8T,SAJO,OAIKnkC,IAEpBqwB,KAAKiU,KAAK,YAAY,WACpBC,OAAOC,SAAS,EAAG,EACpB,IAEDC,aAAapU,KAAKqU,cAElBrU,KAAKqU,aAAeC,YAAW,WAC7B,EAAKC,QAAQ,EAAKT,QACnB,GAAE,IACJ,C,IAKKU,E,4cAII,oEAAJ,CAAC,EAAG,IAFNC,qBAAAA,OAEM,SADNzkD,EACM,EADNA,KAEA5F,EAAAA,QAAEC,KAAKmpD,GAAQ,SAACE,GACd,IAAMgB,EAjCZ,SAA0BhB,EAAOe,EAAsBzkD,GAGrD,OAAO,IAFgB,UAAV0jD,GAAqBe,EAAuBE,EAAAA,QAAoBC,EAAAA,SAE7D,CAAElB,MAAAA,EAAO1jD,KAAAA,GAC1B,CA6B2B6kD,CAAiBnB,EAAOe,EAAsBzkD,GAEpE,EAAK8kD,SAAL,gBAAuBpB,EAAvB,KAAiCgB,GAEjC,EAAKK,SAASL,EAAe,UAAU,SAACM,GACtC,EAAK/U,QAAQ,SAAU+U,EACxB,GACF,GACF,G,mCAgBC,OAAOJ,EAAAA,QAAcK,OACtB,G,2BAyBIC,GAA+B,IAAxB1hD,EAAwB,uDAAnBwsC,KAAKmV,aAEpB,OADAnV,KAAKxrC,MAAM4gD,IAAI5hD,EAAIigD,EAAcyB,EAAMxB,QAChCC,EAAS3T,KAAMkV,EAAMxB,OAAOK,KAAKmB,EAAO1hD,EAChD,G,8BAOOA,GACNmgD,EAAS3T,KAAMA,KAAKxrC,MAAMoZ,IAAIpa,IAAK+gD,QAAQ/gD,EAC5C,G,mCAMY,WACXpJ,EAAAA,QAAEC,KAAKmpD,GAAQ,SAAAE,GAAK,OAAIC,EAAS,EAAMD,GAAO2B,YAA1B,GACrB,G,gCAUShO,EAAS7zC,GAAgB,2BAATmc,EAAS,iCAATA,EAAS,kBACjC,OAAOqwB,KAAK+T,KAAL,MAAA/T,KAAA,CAAU,CACfqH,QAAAA,EACAqM,MAAO,SACNlgD,GAHI,OAGGmc,GACX,G,kCAUW03B,EAAS7zC,GAAgB,2BAATmc,EAAS,iCAATA,EAAS,kBACnC,OAAOqwB,KAAK+T,KAAL,MAAA/T,KAAA,CAAU,CACfqH,QAAAA,EACAqM,MAAO,WACNlgD,GAHI,OAGGmc,GACX,G,+BAUQ03B,EAAS7zC,GAAgB,2BAATmc,EAAS,iCAATA,EAAS,kBAChC,OAAOqwB,KAAK+T,KAAL,MAAA/T,KAAA,CAAU,CACfqH,QAAAA,EACAqM,MAAO,QACNlgD,GAHI,OAGGmc,GACX,G,uCAUgB03B,EAAS7zC,GAAgB,2BAATmc,EAAS,iCAATA,EAAS,kBACxC,OAAOqwB,KAAK+T,KAAL,MAAA/T,KAAA,CAAU,CACfqH,QAAAA,EACAqM,MAAO,gBACNlgD,GAHI,OAGGmc,GACX,G,iCAOU03B,GAAqB,2BAAT13B,EAAS,iCAATA,EAAS,kBAC9BkkC,EAAM/P,KAAN,MAAA+P,EAAK,CAAM7T,KAAMqH,EAAS,SAArB,OAAiC13B,GACvC,G,mCAOY03B,GAAqB,2BAAT13B,EAAS,iCAATA,EAAS,kBAChCkkC,EAAM/P,KAAN,MAAA+P,EAAK,CAAM7T,KAAMqH,EAAS,WAArB,OAAmC13B,GACzC,G,gCAOS03B,GAAqB,2BAAT13B,EAAS,iCAATA,EAAS,kBAC7BkkC,EAAM/P,KAAN,MAAA+P,EAAK,CAAM7T,KAAMqH,EAAS,QAArB,OAAgC13B,GACtC,G,wCAOiB03B,GAAqB,2BAAT13B,EAAS,iCAATA,EAAS,kBACrCkkC,EAAM/P,KAAN,MAAA+P,EAAK,CAAM7T,KAAMqH,EAAS,gBAArB,OAAwC13B,GAC9C,G,+BA3JC,OAAO,kBAAM,aAAS,CAAE6jC,OAAAA,GAAjB,CACR,I,iCAlBuB8B,EAAAA,mB,EAqLXd,E,2BrGnOf9qD,EAAOC,QAAU4rD,C,gBsGAjB7rD,EAAOC,QAAU6rD,C,0UCAjB,cACA,OACA,UACA,W,6hCAEQC,EAAgCC,EAAAA,QAAhCD,WAAYE,EAAoBD,EAAAA,QAApBC,gBAWCf,E,6cAGhB,IADDlB,EACC,EADDA,MAEA1T,KAAKmQ,IAAIvM,KAAK,CACZ,aAAc8P,IAEhB1T,KAAK4V,UACN,G,iCAQ6C,oEAAJ,CAAC,EAAG,IAAnCC,SAAAA,OAAmC,MAAxB,GAAwB,MAApBC,OAAAA,OAAoB,MAAX,CAAC,EAAU,EAa5C,OAZA1rD,EAAAA,QAAEC,KAAKwrD,GAAU,SAACE,GAChBJ,EAAgB,EAAD,gBAAgBI,EAAhB,KAA4BC,EAAAA,QAAW,CAAC,EAAG,CACxDC,OAAQ,WACN,EAAKhW,QAAQ,SAAU,CACrBzsC,GAAIuiD,EACJb,MAAOY,EAAOC,KAEhB,EAAKxB,QAAQwB,EACd,IACAH,SAASE,EAAOC,GACpB,IAED,4CAAsB,CACpBF,SAAAA,GAEH,G,iCAOU,0DACDA,SAAAA,OADC,MACU,GADV,EAGT,MAAO,CACLA,SAAAA,EACAC,OAAQ1rD,EAAAA,QAAEsM,OAAOm/C,EAAUzrD,EAAAA,QAAEwB,IAAIiqD,GAAU,SAAAhiD,GAAG,OAAI,EAAK8/C,SAAL,gBAAuB9/C,EAAvB,MAA+BqiD,UAAnC,KAEjD,G,2BAQIhB,EAAO1hD,GAAI,MAIVwsC,KAAKkW,WAFPL,EAFY,EAEZA,SACAC,EAHY,EAGZA,OAWF,OARA9V,KAAK4V,SAAS,CAEZC,SAAUzrD,EAAAA,QAAEq8C,MAAMoP,EAAU,CAACriD,IAC7BsiD,OAAQ1rD,EAAAA,QAAE+3C,SAAF,KACL3uC,EAAK0hD,GACLY,KAGEtiD,CACR,G,8BAEOuiD,GAAS,IAEbF,EACE7V,KAAKkW,WADPL,SAGFJ,EAAWzV,KAAM,CACf6V,SAAUzrD,EAAAA,QAAE+B,QAAQ0pD,EAAUE,IAEjC,G,mCAEY,WAETF,EACE7V,KAAKkW,WADPL,SAGFzrD,EAAAA,QAAEC,KAAKwrD,GAAU,SAAAriD,GAAE,OAAI,EAAK+gD,QAAQ/gD,EAAjB,GACpB,G,gCAGC,MAAO,qBACR,G,iCAGC,MAAO,CACLy9C,KAAM,QAET,G,8BAGC,MAAO,IACR,G,+BAGC,OAAOv8C,EAAAA,OACR,I,iCAxDC,OAAOtK,EAAAA,QAAE68C,SAAS,SACnB,I,iCAlDwCqO,EAAAA,mB,qVChB3C,cACA,OACA,UACA,U,i6BAEA,IAAMa,EAAkB,CACtBjpD,MAAO,eACPkpD,QAAS,gBACTC,aAAc,gBACdC,KAAM,cAGaN,E,ycAsBjBhW,KAAKmQ,IAAIoG,UACT,0CACD,G,iCAtBC,MAAO,CACLtF,KAAM,WAET,G,8BAGC,MAAO,IACR,G,6BAEY,WACX,MAAO,CACL,uBAAwB,kBAAM,EAAKiF,WAAWM,OAAOtG,UAA7B,EACxB,sBAAuB,WACrB,EAAKjQ,QAAQ,UACb,EAAKwW,QACN,EAEJ,G,+BAQC,OAAO,YAED,IADJjiD,EACI,EADJA,MACI,EASAA,EAPFk/C,MAAAA,OAFE,MAEM,eAFN,IASAl/C,EANFkiD,QAAAA,OAHE,SAIFC,EAKEniD,EALFmiD,eAJE,EASAniD,EAJFoiD,KAAAA,OALE,MAKKC,EAAAA,QALL,IASAriD,EAHFw/C,YAAAA,OANE,MAMsB,UAAVN,EANZ,EAOFrM,EAEE7yC,EAFF6yC,QACAmP,EACEhiD,EADFgiD,OAEIpD,EAAWuD,GAAkBR,EAAgBzC,GAEnD,OAAO,aAAS,CACdN,SAAAA,EACAM,MAAAA,EACAgD,QAAAA,EACAE,KAAMxsD,EAAAA,QAAEW,WAAW6rD,GAAQA,EAAKpiD,GAASoiD,EACzC5C,YAAAA,EACA3M,QAAAA,EACAmP,OAAAA,GAEH,CACF,M,8BAnDoClB,EAAAA,mB,6BCZvC,IAAIhS,EAAMC,EAAQ,GAelB75C,EAAOC,QAbP,SAAkB65C,GAAS,IAAoCC,EAAhCC,EAAW,GAAqCC,EAAmBH,GAAU,CAAC,EAY4iB,OAZxiB,SAAUgT,EAAQpD,EAAUY,EAAa0C,EAASE,EAAMvP,GAAU3D,EAAWA,EAAW,OAAeJ,EAAIM,KAAK,QAASN,EAAI72B,QAAQ,CAAC,QAAQ2mC,GAAW,EAAC,GAAM,KAAQ,GAAO,GAAlG1P,iBAC1LgT,IACJhT,GAAuB,OAASD,EAAamT,GAAQ,GAAKnT,GAE1DC,EAAWA,EAAW,6DAAuF,OAASD,EAAa4D,GAAW,GAAK5D,GAAc,UAC7J+S,IACJ9S,EAAWA,EAAW,+DAAgFJ,EAAIO,OAAO,OAASJ,EAAa+S,EAAOnP,SAAW,GAAK5D,GAAe,aAE7KC,GAAsB,SAClBsQ,IACJtQ,GAAsB,qFAEtBA,GAAsB,QAZ2F,EAYjEI,KAAK9D,KAAK,WAAY2D,EAAgBA,EAAgB6S,OAAuB,qBAATA,OAAqBA,YAAO3+C,EAAU,aAAc8rC,EAAgBA,EAAgByP,SAA2B,qBAAXA,SAAuBA,cAASv7C,EAAU,gBAAiB8rC,EAAgBA,EAAgBqQ,YAAiC,qBAAdA,YAA0BA,iBAAYn8C,EAAU,YAAa8rC,EAAgBA,EAAgB+S,QAAyB,qBAAVA,QAAsBA,aAAQ7+C,EAAU,SAAU8rC,EAAgBA,EAAgBiT,KAAmB,qBAAPA,KAAmBA,UAAK/+C,EAAU,YAAa8rC,EAAgBA,EAAgB0D,QAAyB,qBAAVA,QAAsBA,aAAQxvC,GAAoB6rC,CAAU,C,gBNd1qBh6C,EAAOC,QAAU,C,kBOAP45C,EAAQ,GAGlB75C,EAAOC,QADP,SAAkB65C,GAAS,IAAIE,EAAW,GAA2I,OAA3GA,GAAsB,sDAAsG,C,kBCFtM,IAAIJ,EAAMC,EAAQ,GAoBlB75C,EAAOC,QAlBP,SAAkB65C,GAAS,IAAIE,EAAW,GAAqCC,EAAmBH,GAAU,CAAC,EAiBF,OAjBM,SAAUhvC,IAC1H,WACC,IAAIsiD,EAAQtiD,EAAMqhD,SAClB,GAAI,iBAAmBiB,EAAMtrD,OACzB,IAAK,IAAIurD,EAAa,EAAGC,EAAMF,EAAMtrD,OAAQurD,EAAaC,EAAKD,IAAc,CAC3E,IAAIhB,EAAUe,EAAMC,GAC5BrT,EAAWA,EAAW,OAAeJ,EAAIM,KAAK,WAAY,SAAWmS,EAAU,KAAK,GAAM,GAAS,SAC5F,KACE,CACDiB,EAAM,EACV,IAAK,IAAID,KAAcD,EAAO,CAC5BE,IACIjB,EAAUe,EAAMC,GAC1BrT,EAAWA,EAAW,OAAeJ,EAAIM,KAAK,WAAY,SAAWmS,EAAU,KAAK,GAAM,GAAS,SAC9F,CACF,CAdF,GAeEjS,KAAK9D,KAhByG,EAiB/G8D,KAAK9D,KAAK,UAAW2D,EAAgBA,EAAgBnvC,MAAqB,qBAARA,MAAoBA,WAAMqD,GAAoB6rC,CAAU,C,0UCnB5H,MACA,cACA,UACA,W,q6BAKqBiR,E,8cAIhB,IAFDjB,EAEC,EAFDA,MACA1jD,EACC,EADDA,KAEAgwC,KAAKhwC,KAAOA,EACZgwC,KAAKiX,WAAa7sD,EAAAA,QAAE68C,SAAS,mBAC7B,8CAAiB,CAAEyM,MAAAA,GACpB,G,+BAGC,OAAOh/C,EAAAA,OACR,M,8BAZ4CkgD,EAAAA,S,2BCR/ClrD,EAAOC,QAAUutD,C,kBCAjB,IAAI5T,EAAMC,EAAQ,GAiDlB75C,EAAOC,QA/CP,SAAkB65C,GAAS,IAAoCC,EAAhCC,EAAW,GAAqCC,EAAmBH,GAAU,CAAC,EA8CuL,OA9CnL,SAAUvsC,EAAQzC,EAAO2iD,GAAO,GAA8B,IAA1B3iD,EAAMqhD,SAASrqD,OACpKk4C,EAAWA,EAAW,OAAeJ,EAAIM,KAAK,WAAY,SAAWpvC,EAAMqhD,SAAS,GAAK,KAAK,GAAM,GAAS,eAG7G,GAAIrhD,EAAMqhD,SAASrqD,OAAS,EAAG,CAC/B,IAAI4rD,EAAiB,IAAMD,EAAKF,WAC5BI,EAAmB7iD,EAAMqhD,SAASzV,QAAQkX,UAC9C5T,EAAWA,gCAAsDJ,EAAIM,KAAK,KAAMuT,EAAKF,YAAY,GAAM,GAA5FvT,gHAA0PJ,EAAIM,KAAK,OAAQwT,GAAgB,GAAM,GAAM,mCAAuC9T,EAAIM,KAAK,aAAcuT,EAAKnnD,KAAK2C,UAAU,sCAAsC,GAAM,GAAS,iHAExb,WACC,IAAImkD,EAAQO,EACZ,GAAI,iBAAmBP,EAAMtrD,OACzB,IAAK,IAAIklD,EAAQ,EAAGsG,EAAMF,EAAMtrD,OAAQklD,EAAQsG,EAAKtG,IAAS,CAC9CoG,EAAMpG,GAC5BhN,EAAWA,EAAW,OAAcJ,EAAIM,KAAK,QAASN,EAAI72B,QAAQ,CAAW,IAAVikC,EAAc,SAAW,IAAK,EAAC,KAAQ,GAAO,GAAMpN,EAAIM,KAAK,cAAewT,GAAgB,GAAM,GAAM9T,EAAIM,KAAK,gBAAiB3sC,EAAOy5C,IAAQ,GAAM,IAAS,IAAYpN,EAAIO,OAAO,OAASJ,EAAa0T,EAAKnnD,KAAK2C,UAAU,2BAA4B,CAAE4kD,KAAM7G,EAAM,EAAG8G,MAAOH,EAAiB7rD,UAAa,GAAKi4C,GAAe,OACnY,KACE,CACDuT,EAAM,EACV,IAAK,IAAItG,KAASoG,EAAO,CACvBE,IACcF,EAAMpG,GAC1BhN,EAAWA,EAAW,OAAcJ,EAAIM,KAAK,QAASN,EAAI72B,QAAQ,CAAW,IAAVikC,EAAc,SAAW,IAAK,EAAC,KAAQ,GAAO,GAAMpN,EAAIM,KAAK,cAAewT,GAAgB,GAAM,GAAM9T,EAAIM,KAAK,gBAAiB3sC,EAAOy5C,IAAQ,GAAM,IAAS,IAAYpN,EAAIO,OAAO,OAASJ,EAAa0T,EAAKnnD,KAAK2C,UAAU,2BAA4B,CAAE4kD,KAAM7G,EAAM,EAAG8G,MAAOH,EAAiB7rD,UAAa,GAAKi4C,GAAe,OACrY,CACF,CAdF,EAeEK,KAAK9D,MAER0D,EAAWA,2CAAgFJ,EAAIM,KAAK,OAAQwT,GAAgB,GAAM,GAAM,mCAAuC9T,EAAIM,KAAK,aAAcuT,EAAKnnD,KAAK2C,UAAU,kCAAkC,GAAM,GAAS,mIAE1Q,WACC,IAAImkD,EAAQO,EACZ,GAAI,iBAAmBP,EAAMtrD,OACzB,IAAK,IAAIklD,EAAQ,EAAGsG,EAAMF,EAAMtrD,OAAQklD,EAAQsG,EAAKtG,IAAS,CAC5D,IAAIqF,EAAUe,EAAMpG,GAC5BhN,EAAWA,EAAW,OAAeJ,EAAIM,KAAK,QAASN,EAAI72B,QAAQ,CAAC,OAAiB,IAAVikC,EAAc,SAAW,IAAK,EAAC,GAAM,KAAQ,GAAO,GAAS,QAAqBpN,EAAIM,KAAK,WAAY,SAAWmS,EAAU,KAAK,GAAM,GAAS,eACpN,KACE,CACDiB,EAAM,EACV,IAAK,IAAItG,KAASoG,EAAO,CACvBE,IACIjB,EAAUe,EAAMpG,GAC1BhN,EAAWA,EAAW,OAAeJ,EAAIM,KAAK,QAASN,EAAI72B,QAAQ,CAAC,OAAiB,IAAVikC,EAAc,SAAW,IAAK,EAAC,GAAM,KAAQ,GAAO,GAAS,QAAqBpN,EAAIM,KAAK,WAAY,SAAWmS,EAAU,KAAK,GAAM,GAAS,eACtN,CACF,CAdF,EAeEjS,KAAK9D,MAER0D,GAAsB,cACrB,CA9CgH,EA8C9GI,KAAK9D,KAAK,WAAY2D,EAAgBA,EAAgB1sC,OAAuB,qBAATA,OAAqBA,YAAOY,EAAU,UAAW8rC,EAAgBA,EAAgBnvC,MAAqB,qBAARA,MAAoBA,WAAMqD,EAAU,SAAU8rC,EAAgBA,EAAgBwT,KAAmB,qBAAPA,KAAmBA,UAAKt/C,GAAoB6rC,CAAU,C,kBChDrT,IAAIJ,EAAMC,EAAQ,GAsBlB75C,EAAOC,QApBP,SAAkB65C,GAAS,IAAIE,EAAW,GAAqCC,EAAmBH,GAAU,CAAC,EAmBoE,OAnBhE,SAAUgQ,GAAS9P,GAAsB,6CAEzJ,WACC,IAAIoT,EAAQtD,EACZ,GAAI,iBAAmBsD,EAAMtrD,OACzB,IAAK,IAAIurD,EAAa,EAAGC,EAAMF,EAAMtrD,OAAQurD,EAAaC,EAAKD,IAAc,CAC3E,IAAIrD,EAAQoD,EAAMC,GAC1BrT,EAAWA,EAAW,2BAA+CJ,EAAIM,KAAK,WAAY,SAAW8P,EAAQ,KAAK,GAAM,GAAS,cAC1H,KACE,CACDsD,EAAM,EACV,IAAK,IAAID,KAAcD,EAAO,CAC5BE,IACItD,EAAQoD,EAAMC,GACxBrT,EAAWA,EAAW,2BAA+CJ,EAAIM,KAAK,WAAY,SAAW8P,EAAQ,KAAK,GAAM,GAAS,cAC5H,CACF,CAdF,EAeE5P,KAAK9D,MAER0D,GAAsB,aAnB2F,EAmB7CI,KAAK9D,KAAK,WAAY2D,EAAgBA,EAAgB6P,OAAuB,qBAATA,OAAqBA,YAAO37C,GAAoB6rC,CAAU,C,yH1IpBhM,IAAIgK,EAAmB,CAAC,EAGxB,SAAS,EAAoBC,GAG5B,GAAGD,EAAiBC,GACnB,OAAOD,EAAiBC,GAAUhkD,QAGnC,IAAID,EAASgkD,EAAiBC,GAAY,CACzCl/C,EAAGk/C,EACHC,GAAG,EACHjkD,QAAS,CAAC,GAUX,OANAkkD,EAAQF,GAAU7J,KAAKp6C,EAAOC,QAASD,EAAQA,EAAOC,QAAS,GAG/DD,EAAOkkD,GAAI,EAGJlkD,EAAOC,OACf,CAyDA,OArDA,EAAoBmkD,EAAID,EAGxB,EAAoBE,EAAIL,EAGxB,EAAoBM,EAAI,SAASrkD,EAASY,EAAM0jD,GAC3C,EAAoBC,EAAEvkD,EAASY,IAClC+lB,OAAO69B,eAAexkD,EAASY,EAAM,CAAE6jD,YAAY,EAAMxgC,IAAKqgC,GAEhE,EAGA,EAAoBI,EAAI,SAAS1kD,GACX,qBAAX2kD,QAA0BA,OAAOC,aAC1Cj+B,OAAO69B,eAAexkD,EAAS2kD,OAAOC,YAAa,CAAEt2C,MAAO,WAE7DqY,OAAO69B,eAAexkD,EAAS,aAAc,CAAEsO,OAAO,GACvD,EAOA,EAAoBu2C,EAAI,SAASv2C,EAAOw2C,GAEvC,GADU,EAAPA,IAAUx2C,EAAQ,EAAoBA,IAC/B,EAAPw2C,EAAU,OAAOx2C,EACpB,GAAW,EAAPw2C,GAA8B,kBAAVx2C,GAAsBA,GAASA,EAAMy2C,WAAY,OAAOz2C,EAChF,IAAI02C,EAAKr+B,OAAO1jB,OAAO,MAGvB,GAFA,EAAoByhD,EAAEM,GACtBr+B,OAAO69B,eAAeQ,EAAI,UAAW,CAAEP,YAAY,EAAMn2C,MAAOA,IACtD,EAAPw2C,GAA4B,iBAATx2C,EAAmB,IAAI,IAAIpE,KAAOoE,EAAO,EAAoB+1C,EAAEW,EAAI96C,EAAK,SAASA,GAAO,OAAOoE,EAAMpE,EAAM,EAAEpK,KAAK,KAAMoK,IAC9I,OAAO86C,CACR,EAGA,EAAoBC,EAAI,SAASllD,GAChC,IAAIukD,EAASvkD,GAAUA,EAAOglD,WAC7B,WAAwB,OAAOhlD,EAAgB,OAAG,EAClD,WAA8B,OAAOA,CAAQ,EAE9C,OADA,EAAoBskD,EAAEC,EAAQ,IAAKA,GAC5BA,CACR,EAGA,EAAoBC,EAAI,SAASx3C,EAAQ+qC,GAAY,OAAOnxB,OAAOu+B,UAAUC,eAAehL,KAAKptC,EAAQ+qC,EAAW,EAGpH,EAAoBsN,EAAI,GAIjB,EAAoB,EAAoBC,EAAI,G,mB2BlFrDtlD,EAAOC,QAAU,C,ubgHAjB,YACA,O,oHCDA,I,EAAA,G,EAAA,O,2BACA,Q,0BAEuC,EAAG8tD,eAAgB,CAAC,KAOzD,MAAMC,EAAmB7pB,IACvB,GAAIzjC,EAAAA,QAAEuK,QAAQk5B,GACZ,MAAO,CAAC,EAGV,MAAMh6B,EAAMzJ,EAAAA,QAAEmB,KAAKsiC,GAAO,GACpB8pB,EAAcvtD,EAAAA,QAAE2B,OAAO8hC,GAAO,GAC9B+pB,EAAWxtD,EAAAA,QAAEmB,KAAKosD,GAAa,GAC/BE,EAAcztD,EAAAA,QAAE2B,OAAO4rD,GAAa,GACpC1/C,EAAQ7N,EAAAA,QAAE4nB,SAAS6lC,GAAeA,EAAcA,EAAY,GAAGlqB,QAAQ,cAAe,MAG5F,MAAO,CACLmqB,MAAOjkD,EACPkkD,SAAUC,EAAAA,gBAAgBJ,GAAUt7B,WACpC27B,OAAQhgD,EAAMigD,OAHhB,EAiDIC,EAAuBC,IAC3B,GAAIhuD,EAAAA,QAAEuK,QAAQyjD,GACZ,MAAO,CAAC,EAF+B,MAKjCN,EAA4BM,EAA5BN,MAAOC,EAAqBK,EAArBL,SAAUE,EAAWG,EAAXH,OAEzB,MAAO,CACL,CAACH,GAAQ,CACP,CAACO,EAAAA,kBAAkBN,IAAY3tD,EAAAA,QAAEQ,IAAI6sD,EAAaK,GAAS,CAAE,QAAOA,KAASG,MAAaA,GAF9F,EAwCF,MAAO,CACLP,kBACAY,mCA7EyC,CAACzqB,GAC1C0qB,oBAAoBb,GAClB,CAAC,KACH,IAAIc,EAAY,GAEhB,IAAKpuD,EAAAA,QAAEmsC,SAAS1I,IAAUzjC,EAAAA,QAAEK,QAAQojC,GAClC,MAAM3gC,MAAM,kCAGd,OAAI9C,EAAAA,QAAEuK,QAAQk5B,IAAWA,EAAM4qB,MAAQruD,EAAAA,QAAEuK,QAAQk5B,EAAM4qB,MAC9CD,GAIPA,EADE3qB,EAAM4qB,KACIruD,EAAAA,QAAEwB,IAAIiiC,EAAM4qB,KAAMF,GAElB,CAACA,EAAkB1qB,IAG1BzjC,EAAAA,QAAE0B,QAAQ0sD,GAAjB,EA2DAL,sBACAO,mCAvByC,CAACC,GAC1CC,wBAAwBT,GACtB,CAAC,KACH,IAAK/tD,EAAAA,QAAEK,QAAQkuD,GACb,MAAMzrD,MAAM,gCAGd,OAAQyrD,EAAWntD,QACjB,KAAK,EACH,MAAO,CAAC,EACV,KAAK,EACH,OAAOotD,EAAsBD,EAAW,IAC1C,QACE,MAAO,CACLF,KAAMruD,EAAAA,QAAEwB,IAAI+sD,EAAYC,IAP9B,EAYF,C,gICtHF,I,EAAA,G,EAAA,O,2BAEO,MAAMZ,EAAkB,CAC7Ba,IAAK,EACLC,KAAM,EACNC,UAAW,EACXC,KAAM,EACNC,gBAAiB,EACjBC,IAAK,EACLC,IAAK,G,oBAGA,MAAMd,EAAoBjuD,EAAAA,QAAEurC,OAAOqiB,G,6O7IXxC,IAAItK,EAAmB,CAAC,EAGxB,SAAS,EAAoBC,GAG5B,GAAGD,EAAiBC,GACnB,OAAOD,EAAiBC,GAAUhkD,QAGnC,IAAID,EAASgkD,EAAiBC,GAAY,CACzCl/C,EAAGk/C,EACHC,GAAG,EACHjkD,QAAS,CAAC,GAUX,OANAkkD,EAAQF,GAAU7J,KAAKp6C,EAAOC,QAASD,EAAQA,EAAOC,QAAS,GAG/DD,EAAOkkD,GAAI,EAGJlkD,EAAOC,OACf,CAyDA,OArDA,EAAoBmkD,EAAID,EAGxB,EAAoBE,EAAIL,EAGxB,EAAoBM,EAAI,SAASrkD,EAASY,EAAM0jD,GAC3C,EAAoBC,EAAEvkD,EAASY,IAClC+lB,OAAO69B,eAAexkD,EAASY,EAAM,CAAE6jD,YAAY,EAAMxgC,IAAKqgC,GAEhE,EAGA,EAAoBI,EAAI,SAAS1kD,GACX,qBAAX2kD,QAA0BA,OAAOC,aAC1Cj+B,OAAO69B,eAAexkD,EAAS2kD,OAAOC,YAAa,CAAEt2C,MAAO,WAE7DqY,OAAO69B,eAAexkD,EAAS,aAAc,CAAEsO,OAAO,GACvD,EAOA,EAAoBu2C,EAAI,SAASv2C,EAAOw2C,GAEvC,GADU,EAAPA,IAAUx2C,EAAQ,EAAoBA,IAC/B,EAAPw2C,EAAU,OAAOx2C,EACpB,GAAW,EAAPw2C,GAA8B,kBAAVx2C,GAAsBA,GAASA,EAAMy2C,WAAY,OAAOz2C,EAChF,IAAI02C,EAAKr+B,OAAO1jB,OAAO,MAGvB,GAFA,EAAoByhD,EAAEM,GACtBr+B,OAAO69B,eAAeQ,EAAI,UAAW,CAAEP,YAAY,EAAMn2C,MAAOA,IACtD,EAAPw2C,GAA4B,iBAATx2C,EAAmB,IAAI,IAAIpE,KAAOoE,EAAO,EAAoB+1C,EAAEW,EAAI96C,EAAK,SAASA,GAAO,OAAOoE,EAAMpE,EAAM,EAAEpK,KAAK,KAAMoK,IAC9I,OAAO86C,CACR,EAGA,EAAoBC,EAAI,SAASllD,GAChC,IAAIukD,EAASvkD,GAAUA,EAAOglD,WAC7B,WAAwB,OAAOhlD,EAAgB,OAAG,EAClD,WAA8B,OAAOA,CAAQ,EAE9C,OADA,EAAoBskD,EAAEC,EAAQ,IAAKA,GAC5BA,CACR,EAGA,EAAoBC,EAAI,SAASx3C,EAAQ+qC,GAAY,OAAOnxB,OAAOu+B,UAAUC,eAAehL,KAAKptC,EAAQ+qC,EAAW,EAGpH,EAAoBsN,EAAI,GAIjB,EAAoB,EAAoBC,EAAI,G,oB8IlFrDtlD,EAAOC,QAAU4rD,C,gBCAjB7rD,EAAOC,QAAU6rD,C,+BpHAjB9rD,EAAOC,QAAU,C,4BqHAjBD,EAAOC,QAAUyvD,C,0BCAjB1vD,EAAOC,QAAU0vD,C,gBCAjB3vD,EAAOC,QAAU2vD,C,yHCAjB,2JACA,0J,gFCDA,2JACA,2JACA,2JACA,2JACA,2JACA,0J,iICLA,M,uSAAA,OAEA,QACA,QAEA,Q,iVAMO,MAAMC,EAA2C,I,IAAA,SAAEt6B,EAAF,YAAYu6B,GAAW,EAAKC,EAAS,IAArC,4BACtD,MAAMzpD,GAAO,IAAAytB,YAAW,EAAAC,cAElB,MAAEg8B,IAAU,IAAAC,kBACZC,EAAYF,EAAMG,QAAQ,EAAAC,YAAYC,UAAYL,EAAMG,QAAQ,EAAAC,YAAYE,UAC5EC,EAAWP,EAAMG,QAAQ,EAAAC,YAAYI,QACrCC,EAAqBP,EAAY5pD,EAAK2C,UAAU,cAAsB3C,EAAK2C,UAAU,aAE3F,OACE,wBAAC,EAAAynD,UAAS,eAACC,SAAUT,GAAaK,EAAUT,YAAaA,GAAeW,GAAwBV,GAC7Fx6B,EAFL,E,gBAMFs6B,EAAYziD,aAAe,CACzB0iD,YAAa,IAOR,MAAMc,EAA2C,I,IAAA,SAAEr7B,EAAF,YAAYu6B,GAAW,EAAKC,EAAS,IAArC,4BACtD,MAAMzpD,GAAO,IAAAytB,YAAW,EAAAC,cAElB,MAAEg8B,IAAU,IAAAC,kBACZM,EAAWP,EAAMG,QAAQ,EAAAC,YAAYI,QAE3C,OACE,wBAAC,EAAAE,UAAS,eAACC,SAAUJ,EAAUT,YAAaA,GAAexpD,EAAK2C,UAAU,cAAwB8mD,GAC/Fx6B,EAFL,E,gBAMFq7B,EAAYxjD,aAAe,CACzB0iD,YAAa,IAOR,MAAMe,EAA8C,I,IAAA,SAAEt7B,EAAF,YAAYu6B,GAAW,EAAKC,EAAS,IAArC,4BACzD,MAAMzpD,GAAO,IAAAytB,YAAW,EAAAC,cAElB,MAAEg8B,IAAU,IAAAC,kBACZC,EAAYF,EAAMG,QAAQ,EAAAC,YAAYC,UAAYL,EAAMG,QAAQ,EAAAC,YAAYE,UAElF,OACE,wBAAC,EAAAI,UAAS,eAACC,SAAUT,EAAWJ,YAAaA,GAAexpD,EAAK2C,UAAU,eAAyB8mD,GACjGx6B,EAFL,E,gBAMFs7B,EAAYzjD,aAAe,CACzB0iD,YAAa,G,gBClEf9vD,EAAOC,QAAU6wD,C,qGCAjB,I,EAAA,G,EAAA,O,2BACA,OAMA,QAEA,MAAMC,GAAuB,IAAAC,YAAW,CACtCC,OAAQ,OAAF,sBACJlhD,QAAS,OACTmc,cAAe,MACfE,SAAU,QACP,EAAA8kC,WAAW3jC,IAAI,QAAM,CACxB,WAAY,CACV2hB,SAAU,mBAcHiiB,EAA2C9iD,I,MACtD,MAAM,eACJ+iD,EADI,aAEJC,EAFI,iBAGJC,GACEjjD,EACE0U,EAAUguC,IAEhB,OACE,+BAAKxqD,WAAW,IAAAgrD,cAAa,oBAAqBxuC,EAAQkuC,OAAqB,QAAb,EAAA5iD,EAAM0U,eAAO,eAAEyuC,OAC/E,wBAAC,EAAAC,WAAU,CAACj0B,WAAY4zB,EAAgBtlD,SAAUulD,IAClD,wBAAC,EAAAK,aAAY,CAACl0B,WAAY8zB,IAH9B,E,gBAQFH,EAAY/jD,aAAe,CACzBgkD,oBAAgBjjD,EAChBkjD,cAAc,EACdC,sBAAkBnjD,E,mHCjDpB,M,uSAAA,OACA,QACA,OACA,QAOO,MAAMsjD,EAAwC,EAAGj0B,aAAY1xB,WAAU6lD,iBAC5E,MAAMrrD,GAAO,IAAAytB,YAAW,EAAAC,cAElB,MAAEg8B,EAAF,KAAS4B,IAAS,IAAA3B,kBAClB4B,EAAa7B,EAAMG,QAAQ,EAAAC,YAAYE,WAAaN,EAAMG,QAAQ,EAAAC,YAAYC,UAAYL,EAAMG,QAAQ,EAAAC,YAAYI,QAEpHsB,GAAgB,IAAAnpD,cAAY,KAChCipD,EAAK,EAAAG,YAAYC,KAAjB,GACC,CAACJ,IAEJ,OACE,wBAAC,EAAAtU,OAAM,CACLqU,WAAYA,GAAc,UAC1B7lD,SAAUA,GAAY+lD,EACtBt4B,QAASu4B,EACTvrD,UAAU,oBAETi3B,GAAcl3B,EAAK2C,UAAU,QAPlC,E,eAWFwoD,EAAWrkD,aAAe,CACxBowB,gBAAYrvB,EACZrC,UAAU,GAOL,MAAM4lD,EAA4C,EAAGl0B,aAAYm0B,iBACtE,MAAMrrD,GAAO,IAAAytB,YAAW,EAAAC,cAElB,MAAEg8B,EAAF,KAAS4B,IAAS,IAAA3B,kBAClB4B,EAAa7B,EAAMG,QAAQ,EAAAC,YAAYE,WAAaN,EAAMG,QAAQ,EAAAC,YAAYC,UAAYL,EAAMG,QAAQ,EAAAC,YAAYI,QAEpHyB,GAAkB,IAAAtpD,cAAY,KAClCipD,EAAK,EAAAG,YAAYG,OAAjB,GACC,CAACN,IAEJ,OACE,wBAAC,EAAAtU,OAAM,CACLqU,WAAYA,GAAc,YAC1B7lD,SAAU+lD,EACVt4B,QAAS04B,EACT1rD,UAAU,sBAETi3B,GAAcl3B,EAAK2C,UAAU,UAPlC,E,iBAWFyoD,EAAatkD,aAAe,CAC1BowB,gBAAYrvB,E,sGC9Dd,I,EAAA,G,EAAA,Q,2BACA,E,uSAAA,OACA,QACA,OAUA,Q,eAiB0DE,IACxD,MAAM/H,GAAO,IAAAytB,YAAW,EAAAC,cAClB,MAAEg8B,EAAF,KAAS4B,IAAS,IAAA3B,kBAClBkC,EAAanC,EAAMG,QAAQ,EAAAC,YAAYgC,WACvCC,GAAY,IAAA5qD,UAAQ,IAAO,UAAEpG,WAAWgN,EAAMlL,QAAUkL,EAAMlL,OAAS,IAAMkL,EAAMlL,QAAS,CAACkL,EAAMlL,UAEnG,UACJoD,EAAY,KADR,MAEJuxC,EAAQ,KAFJ,QAGJznC,EAAU,KAHN,YAIJiiD,EAAc,KAJV,UAKJC,EAAY,KALR,YAMJC,EAAc,KANV,WAOJC,EAAa,MACXJ,EAAUF,IAAe,CAAC,EAExBO,GAAY,IAAA/pD,cAAY,KACxB6pD,GACFA,IAEFZ,EAAK,EAAAG,YAAYY,eAAjB,GACC,CAACH,EAAaZ,IAEXgB,GAAW,IAAAjqD,cAAY,KACvB8pD,GACFA,IAEFb,EAAK,EAAAG,YAAYc,aAAjB,GACC,CAACJ,EAAYb,IAEhB,OACE,wBAAC,EAAAkB,OAAM,CAACC,KAAMZ,GACZ,wBAAC,EAAAa,cAAa,CAACzsD,WAAW,IAAAgrD,cAAa,qBAAsBhrD,IAC3D,wBAAC,EAAA0sD,WAAU,KACT,wBAAC,EAAAC,YAAW,KAAEpb,GAASxxC,EAAK2C,UAAU,mCACtC,wBAAC,EAAAkqD,cAAa,KACX9iD,GAAW/J,EAAK2C,UAAU,iDAE7B,wBAAC,EAAAmqD,cAAa,KACZ,wBAAC,EAAA9V,OAAM,CACLqU,WAAW,UACXprD,UAAU,iBACVgzB,QAASm5B,GAERJ,GAAehsD,EAAK2C,UAAU,QAEjC,wBAAC,EAAAq0C,OAAM,CACLqU,WAAW,YACXprD,UAAU,gBACVgzB,QAASq5B,GAERL,GAAajsD,EAAK2C,UAAU,UArBzC,C,uGC5DF,I,EAAA,G,EAAA,Q,2BACA,E,uSAAA,OAGA,QACA,OAUA,Q,gBAiB4DoF,IAC1D,MAAM/H,GAAO,IAAAytB,YAAW,EAAAC,cAClB,MAAEg8B,EAAF,KAAS4B,IAAS,IAAA3B,kBAClBoD,EAA0BrD,EAAMG,QAAQ,EAAAC,YAAYkD,YACpDjB,GAAY,IAAA5qD,UAAQ,IAAO,UAAEpG,WAAWgN,EAAMlL,QAAUkL,EAAMlL,OAAS,IAAMkL,EAAMlL,QAAS,CAACkL,EAAMlL,UAEnG,oBACJowD,GAAsB,EADlB,UAEJhtD,EAAY,KAFR,MAGJuxC,EAAQ,KAHJ,QAIJznC,EAAU,KAJN,YAKJiiD,EAAc,KALV,UAMJC,EAAY,KANR,YAOJC,EAAc,KAPV,WAQJC,EAAa,MACXJ,EAAUgB,IAA4B,CAAC,EAErCX,GAAY,IAAA/pD,cAAY,KACxB6pD,GACFA,IAEFZ,EAAK,EAAAG,YAAYyB,aAAjB,GACC,CAAChB,EAAaZ,IAEXgB,GAAW,IAAAjqD,cAAY,KACvB8pD,GACFA,IAEFb,EAAK,EAAAG,YAAY0B,WAAjB,GACC,CAAChB,EAAYb,IAQhB,OANA,IAAAjtC,YAAU,KACJ4uC,GAAuBF,GACzBX,GACD,GACA,CAACa,EAAqBb,EAAWW,IAGlC,wBAAC,EAAAP,OAAM,CAACC,KAAMM,IAA4BE,GACxC,wBAAC,EAAAP,cAAa,CAACzsD,WAAW,IAAAgrD,cAAa,sBAAuBhrD,IAC5D,wBAAC,EAAA0sD,WAAU,KACT,wBAAC,EAAAC,YAAW,KAAEpb,GAASxxC,EAAK2C,UAAU,iDACtC,wBAAC,EAAAkqD,cAAa,KACX9iD,GAAW/J,EAAK2C,UAAU,wDAE7B,wBAAC,EAAAmqD,cAAa,KACZ,wBAAC,EAAA9V,OAAM,CACLqU,WAAW,UACXprD,UAAU,yBACVgzB,QAASm5B,GAERJ,GAAehsD,EAAK2C,UAAU,sBAEjC,wBAAC,EAAAq0C,OAAM,CACLqU,WAAW,YACXprD,UAAU,wBACVgzB,QAASq5B,GAERL,GAAajsD,EAAK2C,UAAU,cArBzC,C,kHCrEF,M,uSAAA,OACA,QACA,QACA,QACA,OAOA,QAEA,MAAMyqD,GAAoB,IAAA1C,YAAW,CACnC2C,MAAO,OAAF,sBACHxkB,UAAW,OACXp/B,QAAS,OACTmc,cAAe,MACfD,eAAgB,gBAChBE,WAAY,SACZM,gBAAiB,EAAAmnC,OAAOC,yBACrB,EAAA3C,WAAWlqC,QAAQ,OAAQ,SAC3B,EAAAkqC,WAAW3jC,IAAI,QAEpBuqB,MAAO,CACL/rB,SAAU,EAAA6nC,OAAOE,gBACjB5sC,WAAY,EAAA0sC,OAAOG,eACnBznC,WAAY,EAAAsnC,OAAOI,mBAErB,UAAW,CACTjoC,SAAU,EAAA6nC,OAAOK,gBACjB3nC,WAAY,EAAAsnC,OAAOM,mBAErB,UAAW,CACTnoC,SAAU,EAAA6nC,OAAOK,gBACjB3nC,WAAY,EAAAsnC,OAAOM,qB,WAY2B7lD,I,MAChD,MAAM0U,EAAU2wC,IACVS,GAAc,IAAAC,sBACd,KAAExC,IAAS,IAAA3B,kBACXgC,GAAkB,IAAAtpD,cAAY,KAClCipD,EAAK,EAAAG,YAAYG,OAAjB,GACC,CAACN,IAEJ,OAAKvjD,EAAMypC,MAKT,+BAAKvxC,WAAW,IAAAgrD,cAAa,YAAaxuC,EAAQ4wC,MAAoB,QAAb,EAAAtlD,EAAM0U,eAAO,eAAEyuC,OACtE,+BAAKjrD,WAAW,IAAAgrD,cAAa,gBAAiBxuC,EAAQ+0B,MAAO/0B,EAAQ,SAAD,OAAUoxC,MAAkB9lD,EAAMypC,QACpGzpC,EAAMgmD,iBAEJ,wBAAC,EAAA/W,OAAM,CACL/2C,UAAU,yBACVorD,WAAW,SACXzE,KAAM,wBAAC,EAAAoH,iBAAgB,MACvB/6B,QAAS04B,KAZV,IAGT,E,gBAgBqD5jD,I,MACrD,MAAM,KAAEujD,IAAS,IAAA3B,kBACXgC,GAAkB,IAAAtpD,cAAY,KAClCipD,EAAK,EAAAG,YAAYG,OAAjB,GACC,CAACN,IAEJ,OAAKvjD,EAAMypC,MAKT,wBAAC,EAAAyc,kBAAiB,CAChBhuD,WAAW,IAAAgrD,cAAa,kBAAgC,QAAb,EAAAljD,EAAM0U,eAAO,eAAEyuC,MAC1D1E,OAAQz+C,EAAMgmD,qBAAkBlmD,EAC9B,wBAAC,EAAAmvC,OAAM,CACL/2C,UAAU,yBACVorD,WAAW,SACXzE,KAAM,wBAAC,EAAAoH,iBAAgB,MACvB/6B,QAAS04B,KAIZ5jD,EAAMypC,OAfF,IAGT,C,gBCrFF93C,EAAOC,QAAUu0D,C,gBCAjBx0D,EAAOC,QAAUw0D,C,gFCAjB,2JACA,0J,sGCDA,I,EAAA,G,EAAA,O,2BACA,OAOA,MAAMC,GAAwB,IAAA1D,YAAW,CACvC2D,WAAY,CACV5kD,QAAS,OACTmc,cAAe,SACfgB,OAAQ,OACRjG,MAAO,QAET2tC,cAAe,CACb1nC,OAAQ,OACRnd,QAAS,OACTmc,cAAe,UAEjB2oC,iBAAkB,OAAF,oCACd9kD,QAAS,OACTmc,cAAe,SACfO,gBAAiB,EAAAmnC,OAAOC,yBACrB,EAAA3C,WAAWrlC,KAAK,IAChB,EAAAqlC,WAAWliB,SAAS,SACpB,EAAAkiB,WAAWlqC,QAAQ,MAAO,SAE/B8tC,gBAAiB,CAAC,I,eAcqC,EAAGre,YAC1D,MAAM,QACJse,EAAU,UAAMp/B,SADZ,SAEJq/B,EAFI,QAGJ3nC,EAHI,OAIJ4nC,EAJI,aAKJC,EALI,cAMJC,GACE1e,EACE1zB,EAAU2xC,IAEhB,OACE,+BAAKnuD,WAAW,IAAAgrD,cAAa,cAAexuC,EAAQ4xC,aAClD,wBAACI,EAAO,KACN,+BAAKxuD,UAAWwc,EAAQ6xC,eACrBI,GAAY,wBAACA,EAAQ,MACtB,+BAAKzuD,UAAWwc,EAAQ8xC,kBACtB,wBAACxnC,EAAO,OAET4nC,GAEC,+BAAK1uD,WAAW,IAAAgrD,cAAa,mBAAoBxuC,EAAQ+xC,kBACvD,wBAACG,EAAM,SAKdC,GAAgB,wBAACA,EAAY,MAC7BC,GAAiB,wBAACA,EAAa,MAjBpC,C,uGCrDF,M,uSAAA,OACA,QACA,OAIA,Q,iVAOA,MAAMC,GAAyB,IAAApE,YAAW,CACxCqE,YAAa,CAAC,I,gBAgB4C,I,IAAA,MAC1D5e,EAD0D,OACnDnJ,EADmD,UAC3C/mC,GAAS,EAAKwpD,EAAS,IADoB,gCAG1D,MAAM,QACJgF,EAAU,UAAMp/B,SADZ,SAEJq/B,EAFI,QAGJ3nC,EAHI,OAIJ4nC,EAJI,aAKJC,EALI,cAMJC,GACE1e,EACE1zB,EAAUqyC,KACV,KAAExD,IAAS,IAAA3B,kBAQjB,OANA,IAAAtrC,YAAU,KACJ2oB,GACFskB,EAAK,EAAAG,YAAYuD,KAClB,GACA,CAAChoB,EAAQskB,IAGV,wBAAC,EAAA2D,OAAM,eACLhvD,WAAW,IAAAgrD,cAAa,eAAgBxuC,EAAQsyC,YAAa9uD,GAC7DwsD,KAAMzlB,EACNkoB,UAAU,QACV3mB,SAAS,OACLkhB,GAEHiF,GAEC,wBAAC,EAAAS,aAAY,KACX,wBAACT,EAAQ,OAGb,wBAAC,EAAAU,WAAU,KACT,wBAACX,EAAO,KACN,wBAAC1nC,EAAO,MACP6nC,GAAgB,wBAACA,EAAY,MAC7BC,GAAiB,wBAACA,EAAa,QAGnCF,GAEC,wBAAC,EAAAU,aAAY,KACX,wBAACV,EAAM,OAxBf,C,qIhKjDA,IAAIjR,EAAmB,CAAC,EAGxB,SAAS,EAAoBC,GAG5B,GAAGD,EAAiBC,GACnB,OAAOD,EAAiBC,GAAUhkD,QAGnC,IAAID,EAASgkD,EAAiBC,GAAY,CACzCl/C,EAAGk/C,EACHC,GAAG,EACHjkD,QAAS,CAAC,GAUX,OANAkkD,EAAQF,GAAU7J,KAAKp6C,EAAOC,QAASD,EAAQA,EAAOC,QAAS,GAG/DD,EAAOkkD,GAAI,EAGJlkD,EAAOC,OACf,CAyDA,OArDA,EAAoBmkD,EAAID,EAGxB,EAAoBE,EAAIL,EAGxB,EAAoBM,EAAI,SAASrkD,EAASY,EAAM0jD,GAC3C,EAAoBC,EAAEvkD,EAASY,IAClC+lB,OAAO69B,eAAexkD,EAASY,EAAM,CAAE6jD,YAAY,EAAMxgC,IAAKqgC,GAEhE,EAGA,EAAoBI,EAAI,SAAS1kD,GACX,qBAAX2kD,QAA0BA,OAAOC,aAC1Cj+B,OAAO69B,eAAexkD,EAAS2kD,OAAOC,YAAa,CAAEt2C,MAAO,WAE7DqY,OAAO69B,eAAexkD,EAAS,aAAc,CAAEsO,OAAO,GACvD,EAOA,EAAoBu2C,EAAI,SAASv2C,EAAOw2C,GAEvC,GADU,EAAPA,IAAUx2C,EAAQ,EAAoBA,IAC/B,EAAPw2C,EAAU,OAAOx2C,EACpB,GAAW,EAAPw2C,GAA8B,kBAAVx2C,GAAsBA,GAASA,EAAMy2C,WAAY,OAAOz2C,EAChF,IAAI02C,EAAKr+B,OAAO1jB,OAAO,MAGvB,GAFA,EAAoByhD,EAAEM,GACtBr+B,OAAO69B,eAAeQ,EAAI,UAAW,CAAEP,YAAY,EAAMn2C,MAAOA,IACtD,EAAPw2C,GAA4B,iBAATx2C,EAAmB,IAAI,IAAIpE,KAAOoE,EAAO,EAAoB+1C,EAAEW,EAAI96C,EAAK,SAASA,GAAO,OAAOoE,EAAMpE,EAAM,EAAEpK,KAAK,KAAMoK,IAC9I,OAAO86C,CACR,EAGA,EAAoBC,EAAI,SAASllD,GAChC,IAAIukD,EAASvkD,GAAUA,EAAOglD,WAC7B,WAAwB,OAAOhlD,EAAgB,OAAG,EAClD,WAA8B,OAAOA,CAAQ,EAE9C,OADA,EAAoBskD,EAAEC,EAAQ,IAAKA,GAC5BA,CACR,EAGA,EAAoBC,EAAI,SAASx3C,EAAQ+qC,GAAY,OAAOnxB,OAAOu+B,UAAUC,eAAehL,KAAKptC,EAAQ+qC,EAAW,EAGpH,EAAoBsN,EAAI,GAIjB,EAAoB,EAAoBC,EAAI,G,wHiKlFrD,2JACA,0J,mBjBDAtlD,EAAOC,QAAUyvD,C,mBkBAjB1vD,EAAOC,QAAU21D,C,qIlKCf,IAAI5R,EAAmB,CAAC,EAGxB,SAAS,EAAoBC,GAG5B,GAAGD,EAAiBC,GACnB,OAAOD,EAAiBC,GAAUhkD,QAGnC,IAAID,EAASgkD,EAAiBC,GAAY,CACzCl/C,EAAGk/C,EACHC,GAAG,EACHjkD,QAAS,CAAC,GAUX,OANAkkD,EAAQF,GAAU7J,KAAKp6C,EAAOC,QAASD,EAAQA,EAAOC,QAAS,GAG/DD,EAAOkkD,GAAI,EAGJlkD,EAAOC,OACf,CAyDA,OArDA,EAAoBmkD,EAAID,EAGxB,EAAoBE,EAAIL,EAGxB,EAAoBM,EAAI,SAASrkD,EAASY,EAAM0jD,GAC3C,EAAoBC,EAAEvkD,EAASY,IAClC+lB,OAAO69B,eAAexkD,EAASY,EAAM,CAAE6jD,YAAY,EAAMxgC,IAAKqgC,GAEhE,EAGA,EAAoBI,EAAI,SAAS1kD,GACX,qBAAX2kD,QAA0BA,OAAOC,aAC1Cj+B,OAAO69B,eAAexkD,EAAS2kD,OAAOC,YAAa,CAAEt2C,MAAO,WAE7DqY,OAAO69B,eAAexkD,EAAS,aAAc,CAAEsO,OAAO,GACvD,EAOA,EAAoBu2C,EAAI,SAASv2C,EAAOw2C,GAEvC,GADU,EAAPA,IAAUx2C,EAAQ,EAAoBA,IAC/B,EAAPw2C,EAAU,OAAOx2C,EACpB,GAAW,EAAPw2C,GAA8B,kBAAVx2C,GAAsBA,GAASA,EAAMy2C,WAAY,OAAOz2C,EAChF,IAAI02C,EAAKr+B,OAAO1jB,OAAO,MAGvB,GAFA,EAAoByhD,EAAEM,GACtBr+B,OAAO69B,eAAeQ,EAAI,UAAW,CAAEP,YAAY,EAAMn2C,MAAOA,IACtD,EAAPw2C,GAA4B,iBAATx2C,EAAmB,IAAI,IAAIpE,KAAOoE,EAAO,EAAoB+1C,EAAEW,EAAI96C,EAAK,SAASA,GAAO,OAAOoE,EAAMpE,EAAM,EAAEpK,KAAK,KAAMoK,IAC9I,OAAO86C,CACR,EAGA,EAAoBC,EAAI,SAASllD,GAChC,IAAIukD,EAASvkD,GAAUA,EAAOglD,WAC7B,WAAwB,OAAOhlD,EAAgB,OAAG,EAClD,WAA8B,OAAOA,CAAQ,EAE9C,OADA,EAAoBskD,EAAEC,EAAQ,IAAKA,GAC5BA,CACR,EAGA,EAAoBC,EAAI,SAASx3C,EAAQ+qC,GAAY,OAAOnxB,OAAOu+B,UAAUC,eAAehL,KAAKptC,EAAQ+qC,EAAW,EAGpH,EAAoBsN,EAAI,GAIjB,EAAoB,EAAoBC,EAAI,I,2HmKlFrD,2J,4GCAA,M,uSAAA,OACA,OAMA,MAAMuQ,GAAoB,IAAA7E,YAAW,CACnCQ,KAAM,CACJ,WAAU,iBACL,EAAAN,WAAW5W,aAAa,gDAG/Bwb,YAAa,CACX,UAAW,CAAErpC,gBAAiB,EAAAmnC,OAAOmC,8BACrC,WAAY,CAAEtpC,gBAAiB,EAAAmnC,OAAOoC,iCAExCC,aAAc,CAAExpC,gBAAiB,EAAAmnC,OAAOmC,8BACxCG,gBAAiB,OAAF,sCACV,EAAAhF,WAAWiF,YAAY,EAAAvC,OAAOwC,mBAC9B,EAAAlF,WAAWmF,YAAY,UACvB,EAAAnF,WAAWoF,YAAY,EAAA1C,OAAO2C,uBAEnCC,uBAAwB,OAAF,wBACjB,EAAAtF,WAAWoF,YAAY,EAAA1C,OAAO2C,uBAAqB,CACtD,UAAW,EAAArF,WAAWoF,YAAY,EAAA1C,OAAO6C,2BACzC,WAAY,EAAAvF,WAAWoF,YAAY,EAAA1C,OAAO8C,+BAE5CC,wBAAyB,OAAF,UAClB,EAAAzF,WAAWoF,YAAY,EAAA1C,OAAOgD,+BAexBC,EAA6D,EACxEtwD,YAAWuwD,OAAMnF,aAAY7lD,WAAUirD,WAAUC,cAAaC,YAAW1hC,WAAUgV,eAEnF,MAAMxnB,EAAU8yC,KACTqB,EAAaC,IAAkB,IAAA/0C,WAAS,GAEzCg1C,EAAqC,WAAfzF,GAA2BoF,EAEjDM,GAAwB,IAAA1uD,cAAY,EAAG4sB,SAAU+hC,KAChDN,EAGH,wBAAC,EAAAO,QAAO,CACNC,aAAa,cACbC,QAASP,EACT7mD,QAAS2mD,GAERM,GARsBA,GAW1B,CAACJ,EAAaF,IAEjB,OACE,wBAAC,EAAAU,KAAI,CACHnxD,WAAW,IAAAgrD,cACT,kBACAxuC,EAAQyuC,KACR1lD,EAAWiX,EAAQkzC,aAAelzC,EAAQ+yC,YAC1CsB,GAAuBr0C,EAAQmzC,gBAC/BkB,IAAwBtrD,EAAWiX,EAAQ4zC,wBAA0B5zC,EAAQyzC,wBAC7EjwD,GAEFuwD,KAAMA,EACNnF,WAAYA,EACZgG,eACE,wBAACN,EAAqB,KACpB,wBAAC,EAAA7hC,MAAK,cACQyhC,EACZvrD,QAASqrD,EACTjrD,SAAUA,EACVH,SAAU,IAAM4+B,OAItBqtB,aAAc,IAAMT,GAAe,GACnCU,aAAc,IAAMV,GAAe,GACnC59B,QAAS,KAAOztB,GAAYy+B,KAE3BhV,EA1BL,E,mBA+BFshC,EAAezpD,aAAe,CAC5B7G,eAAW4H,EACX2oD,KAAM,SACNnF,WAAY,UACZ7lD,UAAU,EACVirD,cAAU5oD,EACV6oD,iBAAa7oD,EACbo8B,cAAUp8B,E,kBtBxGZnO,EAAOC,QAAU4rD,C,kBCAjB7rD,EAAOC,QAAU6rD,C,gJ/ICf,IAAI9H,EAAmB,CAAC,EAGxB,SAAS,EAAoBC,GAG5B,GAAGD,EAAiBC,GACnB,OAAOD,EAAiBC,GAAUhkD,QAGnC,IAAID,EAASgkD,EAAiBC,GAAY,CACzCl/C,EAAGk/C,EACHC,GAAG,EACHjkD,QAAS,CAAC,GAUX,OANAkkD,EAAQF,GAAU7J,KAAKp6C,EAAOC,QAASD,EAAQA,EAAOC,QAAS,GAG/DD,EAAOkkD,GAAI,EAGJlkD,EAAOC,OACf,CAyDA,OArDA,EAAoBmkD,EAAID,EAGxB,EAAoBE,EAAIL,EAGxB,EAAoBM,EAAI,SAASrkD,EAASY,EAAM0jD,GAC3C,EAAoBC,EAAEvkD,EAASY,IAClC+lB,OAAO69B,eAAexkD,EAASY,EAAM,CAAE6jD,YAAY,EAAMxgC,IAAKqgC,GAEhE,EAGA,EAAoBI,EAAI,SAAS1kD,GACX,qBAAX2kD,QAA0BA,OAAOC,aAC1Cj+B,OAAO69B,eAAexkD,EAAS2kD,OAAOC,YAAa,CAAEt2C,MAAO,WAE7DqY,OAAO69B,eAAexkD,EAAS,aAAc,CAAEsO,OAAO,GACvD,EAOA,EAAoBu2C,EAAI,SAASv2C,EAAOw2C,GAEvC,GADU,EAAPA,IAAUx2C,EAAQ,EAAoBA,IAC/B,EAAPw2C,EAAU,OAAOx2C,EACpB,GAAW,EAAPw2C,GAA8B,kBAAVx2C,GAAsBA,GAASA,EAAMy2C,WAAY,OAAOz2C,EAChF,IAAI02C,EAAKr+B,OAAO1jB,OAAO,MAGvB,GAFA,EAAoByhD,EAAEM,GACtBr+B,OAAO69B,eAAeQ,EAAI,UAAW,CAAEP,YAAY,EAAMn2C,MAAOA,IACtD,EAAPw2C,GAA4B,iBAATx2C,EAAmB,IAAI,IAAIpE,KAAOoE,EAAO,EAAoB+1C,EAAEW,EAAI96C,EAAK,SAASA,GAAO,OAAOoE,EAAMpE,EAAM,EAAEpK,KAAK,KAAMoK,IAC9I,OAAO86C,CACR,EAGA,EAAoBC,EAAI,SAASllD,GAChC,IAAIukD,EAASvkD,GAAUA,EAAOglD,WAC7B,WAAwB,OAAOhlD,EAAgB,OAAG,EAClD,WAA8B,OAAOA,CAAQ,EAE9C,OADA,EAAoBskD,EAAEC,EAAQ,IAAKA,GAC5BA,CACR,EAGA,EAAoBC,EAAI,SAASx3C,EAAQ+qC,GAAY,OAAOnxB,OAAOu+B,UAAUC,eAAehL,KAAKptC,EAAQ+qC,EAAW,EAGpH,EAAoBsN,EAAI,GAIjB,EAAoB,EAAoBC,EAAI,I,2HqKlFrD,2J,qpGCAA,yMACA,aA0BA,SACA,SACA,SACA,Q,oBC9BAtlD,EAAOC,QAAU63D,C,oBCAjB93D,EAAOC,QAAU83D,C,oGCAjB,M,uSAAA,OACA,SAEA,S,SAE+C1pD,IAC7C,MAAM,OACJlL,EADI,SAEJoyB,GACElnB,EAEE2pD,GAAe,IAAAvwD,UAAQ,IAAM,+BAC9B,EAAAwwD,eACA90D,IACD,CAACA,KAEC,OAAEoiB,GAAWyyC,EAEnB,OACE,wBAAC,SAAc,CAAC70D,OAAQ60D,GACrBziC,GAAYhQ,EAAOpiB,GAFxB,C,2GClBF,I,EAAA,G,EAAA,O,2BACA,SAEO,MAAM80D,EAAgB,CAC3B1yC,OAASpiB,GAAW,wBAAC,EAAA+0D,uBAAsB,iBAAK/0D,K,qICJlD,I,EAAA,G,EAAA,O,2BACA,SACA,S,yBAWuCA,GACrC,wBAAC,EAAAg1D,gBAAe,CAACntD,SAAU,EAAAotD,iBACzB,wBAAC,EAAAC,OAAM,eAACjwD,KAAK,SAASkwD,UAAW,EAAAC,aAAiBp1D,EAAOq1D,cACzD,wBAAC,EAAAH,OAAM,eAACjwD,KAAK,UAAUkwD,UAAW,EAAAzI,aAAiB1sD,EAAOs1D,eAC1D,wBAAC,EAAAJ,OAAM,eAACjwD,KAAK,WAAWkwD,UAAW,EAAAI,UAAcv1D,EAAOw1D,gBACxD,wBAAC,EAAAN,OAAM,eAACjwD,KAAK,UAAUkwD,UAAW,EAAAM,SAAaz1D,EAAO01D,eACtD,wBAAC,EAAAR,OAAM,CAACjwD,KAAK,gBAAgBkwD,UAAW,EAAAQ,gBACxC,wBAAC,EAAAT,OAAM,eAACjwD,KAAK,eAAekwD,UAAW,EAAAS,cAAkB51D,EAAO61D,oBAChE,wBAAC,EAAAX,OAAM,eAACjwD,KAAK,SAASkwD,UAAW,EAAAW,iBAAqB91D,EAAO+1D,cAC7D,wBAAC,EAAAb,OAAM,eAACjwD,KAAK,eAAekwD,UAAW,EAAAa,oBAAwBh2D,EAAOi2D,oB,6GCtB1E,I,EAAA,G,EAAA,O,2BACA,SACA,S,mWAEwE/qD,IACtE,MAAM,SACJrD,GAEEqD,EADC0hD,EAAS,EACV1hD,EAHE,cAKN,OACE,wBAAC,kBAAuB,eACtBrD,SAAUA,GAAY,EAAAotD,iBAClBrI,GAHR,C,8GCVF,M,uSAAA,OACA,SAEA,S,mBAEiC1hD,IAC/B,MAAMgrD,GAAc,IAAA5xD,UAAQ,IAAM,+BAC7B,EAAAwwD,eACA5pD,IACD,CAACA,IAEL,OACE,wBAAC,mBAAwB,iBACnBgrD,GAFR,C,kB/BXFr5D,EAAOC,QAAU4rD,C,wG9ICf,IAAI7H,EAAmB,CAAC,EAGxB,SAAS,EAAoBC,GAG5B,GAAGD,EAAiBC,GACnB,OAAOD,EAAiBC,GAAUhkD,QAGnC,IAAID,EAASgkD,EAAiBC,GAAY,CACzCl/C,EAAGk/C,EACHC,GAAG,EACHjkD,QAAS,CAAC,GAUX,OANAkkD,EAAQF,GAAU7J,KAAKp6C,EAAOC,QAASD,EAAQA,EAAOC,QAAS,GAG/DD,EAAOkkD,GAAI,EAGJlkD,EAAOC,OACf,CAyDA,OArDA,EAAoBmkD,EAAID,EAGxB,EAAoBE,EAAIL,EAGxB,EAAoBM,EAAI,SAASrkD,EAASY,EAAM0jD,GAC3C,EAAoBC,EAAEvkD,EAASY,IAClC+lB,OAAO69B,eAAexkD,EAASY,EAAM,CAAE6jD,YAAY,EAAMxgC,IAAKqgC,GAEhE,EAGA,EAAoBI,EAAI,SAAS1kD,GACX,qBAAX2kD,QAA0BA,OAAOC,aAC1Cj+B,OAAO69B,eAAexkD,EAAS2kD,OAAOC,YAAa,CAAEt2C,MAAO,WAE7DqY,OAAO69B,eAAexkD,EAAS,aAAc,CAAEsO,OAAO,GACvD,EAOA,EAAoBu2C,EAAI,SAASv2C,EAAOw2C,GAEvC,GADU,EAAPA,IAAUx2C,EAAQ,EAAoBA,IAC/B,EAAPw2C,EAAU,OAAOx2C,EACpB,GAAW,EAAPw2C,GAA8B,kBAAVx2C,GAAsBA,GAASA,EAAMy2C,WAAY,OAAOz2C,EAChF,IAAI02C,EAAKr+B,OAAO1jB,OAAO,MAGvB,GAFA,EAAoByhD,EAAEM,GACtBr+B,OAAO69B,eAAeQ,EAAI,UAAW,CAAEP,YAAY,EAAMn2C,MAAOA,IACtD,EAAPw2C,GAA4B,iBAATx2C,EAAmB,IAAI,IAAIpE,KAAOoE,EAAO,EAAoB+1C,EAAEW,EAAI96C,EAAK,SAASA,GAAO,OAAOoE,EAAMpE,EAAM,EAAEpK,KAAK,KAAMoK,IAC9I,OAAO86C,CACR,EAGA,EAAoBC,EAAI,SAASllD,GAChC,IAAIukD,EAASvkD,GAAUA,EAAOglD,WAC7B,WAAwB,OAAOhlD,EAAgB,OAAG,EAClD,WAA8B,OAAOA,CAAQ,EAE9C,OADA,EAAoBskD,EAAEC,EAAQ,IAAKA,GAC5BA,CACR,EAGA,EAAoBC,EAAI,SAASx3C,EAAQ+qC,GAAY,OAAOnxB,OAAOu+B,UAAUC,eAAehL,KAAKptC,EAAQ+qC,EAAW,EAGpH,EAAoBsN,EAAI,GAIjB,EAAoB,EAAoBC,EAAI,I,2H8KlFrD,2J,kxBCCO,MAAMgU,EAA+B,CAC1CC,kCAAmC51D,qBACnC61D,iCAAkC71D,gBAClC81D,yBAA0B91D,mBAC1B+1D,wBAAyB/1D,4BACzBg2D,kDAAmDh2D,gBACnDi2D,wCAAyCj2D,cACzCk2D,2CAA4Cl2D,eAC5Cm2D,yBAA0Bn2D,cAC1Bo2D,0CAA2Cp2D,4BAC3Cq2D,+CAAgDr2D,4C,iCAG3C,MAAMs2D,EAA4B,EAAH,CACpCC,aAAcv2D,wBACdw2D,YAAax2D,uBACby2D,2BAA4Bz2D,yEAC5B02D,0BAA2B12D,sFAC3B22D,4BAA6B32D,iBAC7B42D,iCAAkC52D,qBAClC62D,8BAA+B72D,4BAC/B82D,uBAAwB92D,qBACxB+2D,yBAA0B/2D,cAC1Bg3D,mCAAoCh3D,wBACpCi3D,kCAAmCj3D,WACnCk3D,uBAAwBl3D,gBACxBm3D,sBAAuBn3D,UACvBo3D,qBAAsBp3D,WACtBq3D,sCAAuCr3D,mBACvCs3D,sCAAuCt3D,mBACvCu3D,uCAAwCv3D,WACxCw3D,uCAAwCx3D,WACxCy3D,2BAA4Bz3D,OAC5B03D,2BAA4B13D,OAC5B23D,0BAA2B33D,YAC3B43D,0BAA2B53D,YAC3B63D,+BAAgC73D,YAChC83D,+BAAgC93D,YAChC+3D,8BAA+B/3D,UAC/Bg4D,8BAA+Bh4D,UAC/Bi4D,kCAAmCj4D,gBACnCk4D,kCAAmCl4D,gBACnCm4D,4BAA6Bn4D,QAC7Bo4D,4BAA6Bp4D,QAC7Bq4D,iCAAkCr4D,mBAClCs4D,iCAAkCt4D,mBAClCu4D,6BAA8Bv4D,yBAC9Bw4D,6BAA8Bx4D,yBAC9By4D,iCAAkCz4D,mBAClC04D,iCAAkC14D,mBAClC24D,qCAAsC34D,8BACtC44D,qCAAsC54D,8BACtC64D,mBAAoB74D,OACpB84D,yCAA0C94D,yBAC1C+4D,yCAA0C/4D,yBAC1Cg5D,gDAAiDh5D,iCACjDi5D,gDAAiDj5D,iCACjDk5D,8BAA+Bl5D,+BAC/Bm5D,8BAA+Bn5D,qGAC/Bo5D,iCAAkCp5D,qCAClCq5D,iCAAkCr5D,yFAClCs5D,gCAAiCt5D,kCACjCu5D,gCAAiCv5D,2GACjCw5D,sCAAuCx5D,oBACvCy5D,sCAAuCz5D,gFACvC05D,gCAAiC15D,qBACjC25D,gCAAiC35D,iFACjC45D,+BAAgC55D,4BAChC65D,+BAAgC75D,8DAChC85D,6BAA8B95D,UAC9B+5D,6BAA8B/5D,gFAC9Bg6D,0BAA2Bh6D,yBAC3Bi6D,0BAA2Bj6D,4DAC3Bk6D,qCAAsCl6D,kBACtCm6D,qCAAsCn6D,uFACtCo6D,qCAAsCp6D,kBACtCq6D,qCAAsCr6D,oDACtCs6D,qCAAsCt6D,0BACtCu6D,qCAAsCv6D,0BACtCw6D,kCAAmCx6D,yBACnCy6D,kCAAmCz6D,yBACnC06D,wCAAyC16D,2BACzC26D,wCAAyC36D,2BACzC46D,+BAAgC56D,wBAChC66D,kBAAmB76D,OACnB86D,iCAAkC96D,eAClC+6D,mCAAoC/6D,sBACpCg7D,6BAA8Bh7D,SAC9Bi7D,wBAAyBj7D,cACzBk7D,sCAAuCl7D,2BACvCm7D,4CAA6Cn7D,yBAC7Co7D,oDAAqDp7D,uBACrDq7D,mDAAoDr7D,eACpDs7D,yBAA0Bt7D,qCACvB21D,G,8BAGE,MAAM4F,EAAuB,CAClCC,eAAgBx7D,qBAChBy7D,iBAAkBz7D,UAClB07D,2BAA4B17D,qBAC5B27D,2BAA4B37D,OAC5B47D,gCAAiC57D,oEACjC67D,gCAAiC77D,yBACjC87D,2BAA4B97D,uCAC5B+7D,uBAAwB/7D,0IACxBg8D,6BAA8Bh8D,SAC9Bi8D,sBAAuBj8D,gBACvBiL,mCAAoCjL,kB,yBAG/B,MAAMk8D,EAAyB,CACpClxD,gCAAiChL,qBACjCiL,mCAAoCjL,iBACpC+W,6BAA8B/W,mDAC9BogD,6BAA8BpgD,+CAC9BgX,qCAAsChX,oCACtCqL,kCAAmCrL,+BACnC+K,6BAA8B/K,sCAC9BkL,4BAA6BlL,uCAC7BmL,4BAA6BnL,wCAC7BoL,gCAAiCpL,+CACjCm8D,0BAA2Bn8D,yCAC3Bo8D,8BAA+Bp8D,8DAC/Bq8D,+BAAgCr8D,oCAChCs8D,iCAAkCt8D,2BAClCu8D,8CAA+Cv8D,6BAC/Cw8D,sCAAuCx8D,qCACvCy8D,6CAA8Cz8D,0DAC9C08D,qCAAsC18D,4C,2BAGjC,MAAM28D,EAAyB,CACpCC,uBAAwB58D,OACxB68D,yBAA0B78D,SAC1B88D,wCAAyC98D,gDACzC+8D,mDAAoD/8D,2BACpDg9D,qBAAsBh9D,sC,2BAGjB,MAAMi9D,EAA+B,CAC1CC,0BAA2Bl9D,WAC3Bm9D,wBAAyBn9D,SACzBo9D,uBAAwBp9D,QACxBq9D,4BAA6Br9D,eAC7Bs9D,+BAAgCt9D,uBAChCu9D,6BAA8Bv9D,cAC9Bw9D,yCAA0Cx9D,mDAC1Cy9D,mCAAoCz9D,oEACpC09D,+BAAgC19D,2DAChC29D,8BAA+B39D,gBAC/B49D,wCAAyC59D,6EACzC69D,mCAAoC79D,qBACpC89D,qCAAsC99D,6DACtC+9D,oCAAqC/9D,sBACrCg+D,+BAAgCh+D,8DAChCi+D,4BAA6Bj+D,uEAC7Bk+D,2BAA4Bl+D,sEAC5Bm+D,kCAAmCn+D,0DACnCo+D,kCAAmCp+D,gC,iCAG9B,MAAMq+D,EAA4B,CACvCC,4BAA6Bt+D,WAC7Bu+D,0BAA2Bv+D,SAC3Bw+D,yBAA0Bx+D,QAC1By+D,yBAA0Bz+D,oBAC1B0+D,+BAAgC1+D,cAChC2+D,2CAA4C3+D,mDAC5C4+D,+CAAgD5+D,gJAChD6+D,oCAAqC7+D,oCACrCs9D,+BAAgCt9D,uBAChCy9D,mCAAoCz9D,oEACpC09D,+BAAgC19D,2DAChC29D,8BAA+B39D,gBAC/B49D,wCAAyC59D,6EACzC69D,mCAAoC79D,qBACpC89D,qCAAsC99D,6DACtC+9D,oCAAqC/9D,sBACrCg+D,+BAAgCh+D,8DAChCi+D,4BAA6Bj+D,uEAC7Bk+D,2BAA4Bl+D,sEAC5Bm+D,kCAAmCn+D,0DACnC8+D,oCAAqC9+D,uCACrC+oD,QAAS/oD,UACT++D,4BAA6B/+D,+KAC7Bg/D,4BAA6Bh/D,4H,8BAGxB,MAAMi/D,EAAgC,CAC3CC,iBAAkBl/D,QAClBm/D,yBAA0Bn/D,kDAC1Bo/D,4BAA6Bp/D,uGAC7Bq/D,2BAA4Br/D,gCAC5Bs/D,2BAA4Bt/D,kDAC5Bu/D,2BAA4Bv/D,kEAC5Bw/D,gCAAiCx/D,+CACjCy/D,6BAA8Bz/D,qBAC9B0/D,+BAAgC1/D,yB,kCAG3B,MAAM2/D,EAAoB,KAE5BrJ,EACAiF,EACAW,EACAS,EACAM,EACAoB,EACAY,G,oP/KjNH,IAAI5e,EAAmB,CAAC,EAGxB,SAAS,EAAoBC,GAG5B,GAAGD,EAAiBC,GACnB,OAAOD,EAAiBC,GAAUhkD,QAGnC,IAAID,EAASgkD,EAAiBC,GAAY,CACzCl/C,EAAGk/C,EACHC,GAAG,EACHjkD,QAAS,CAAC,GAUX,OANAkkD,EAAQF,GAAU7J,KAAKp6C,EAAOC,QAASD,EAAQA,EAAOC,QAAS,GAG/DD,EAAOkkD,GAAI,EAGJlkD,EAAOC,OACf,CAyDA,OArDA,EAAoBmkD,EAAID,EAGxB,EAAoBE,EAAIL,EAGxB,EAAoBM,EAAI,SAASrkD,EAASY,EAAM0jD,GAC3C,EAAoBC,EAAEvkD,EAASY,IAClC+lB,OAAO69B,eAAexkD,EAASY,EAAM,CAAE6jD,YAAY,EAAMxgC,IAAKqgC,GAEhE,EAGA,EAAoBI,EAAI,SAAS1kD,GACX,qBAAX2kD,QAA0BA,OAAOC,aAC1Cj+B,OAAO69B,eAAexkD,EAAS2kD,OAAOC,YAAa,CAAEt2C,MAAO,WAE7DqY,OAAO69B,eAAexkD,EAAS,aAAc,CAAEsO,OAAO,GACvD,EAOA,EAAoBu2C,EAAI,SAASv2C,EAAOw2C,GAEvC,GADU,EAAPA,IAAUx2C,EAAQ,EAAoBA,IAC/B,EAAPw2C,EAAU,OAAOx2C,EACpB,GAAW,EAAPw2C,GAA8B,kBAAVx2C,GAAsBA,GAASA,EAAMy2C,WAAY,OAAOz2C,EAChF,IAAI02C,EAAKr+B,OAAO1jB,OAAO,MAGvB,GAFA,EAAoByhD,EAAEM,GACtBr+B,OAAO69B,eAAeQ,EAAI,UAAW,CAAEP,YAAY,EAAMn2C,MAAOA,IACtD,EAAPw2C,GAA4B,iBAATx2C,EAAmB,IAAI,IAAIpE,KAAOoE,EAAO,EAAoB+1C,EAAEW,EAAI96C,EAAK,SAASA,GAAO,OAAOoE,EAAMpE,EAAM,EAAEpK,KAAK,KAAMoK,IAC9I,OAAO86C,CACR,EAGA,EAAoBC,EAAI,SAASllD,GAChC,IAAIukD,EAASvkD,GAAUA,EAAOglD,WAC7B,WAAwB,OAAOhlD,EAAgB,OAAG,EAClD,WAA8B,OAAOA,CAAQ,EAE9C,OADA,EAAoBskD,EAAEC,EAAQ,IAAKA,GAC5BA,CACR,EAGA,EAAoBC,EAAI,SAASx3C,EAAQ+qC,GAAY,OAAOnxB,OAAOu+B,UAAUC,eAAehL,KAAKptC,EAAQ+qC,EAAW,EAGpH,EAAoBsN,EAAI,GAIjB,EAAoB,EAAoBC,EAAI,I,oBgLlFrDtlD,EAAOC,QAAUspD,C,mBCAjBvpD,EAAOC,QAAUupD,C,oB5FAjBxpD,EAAOC,QAAU,C,mB6FAjBD,EAAOC,QAAUsjE,C,kBpCAjBvjE,EAAOC,QAAU4rD,C,mB7IAjB7rD,EAAOC,QAAU,C,0SkLAjB,aACA,Q,wGCAA,M,uSAAA,OACA,WACA,WACA,WACA,UACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,S,mDAEA,SAASujE,GAA4B,QACnCzgD,EADmC,UAEnCxc,EAFmC,SAGnCk9D,EAHmC,aAInCC,EAJmC,gBAKnCt6C,EALmC,sBAMnCu6C,EANmC,SAOnCt7D,EAPmC,SAQnCu7D,EARmC,UASnC/oC,EATmC,iBAUnCgpC,EAVmC,qBAWnCC,EAXmC,kBAYnCC,EAZmC,gBAanCC,IACC,MACO/6D,GAAc,IAAAg7D,wBAAdh7D,UACFi7D,GAAiB,IAAAv7D,cAAYw7D,IAAQ,IAAAC,yBAAwB,CACjED,OACAR,wBACAU,oCAAqCp7D,EAAUq7D,EAAAA,SAASvlD,6CACxD4K,gBAAiBkR,KACf,CAAC8oC,EAAuB16D,EAAW4xB,IAPtC,GAgBG,IAAA0pC,aAAY,CACdb,eACAr7D,WACAo7D,WACAS,mBAVAM,EAVD,EAUCA,kBACAC,EAXD,EAWCA,OACAC,EAZD,EAYCA,iBACAC,EAbD,EAaCA,UACAC,EAdD,EAcCA,oBACAC,EAfD,EAeCA,YAQIC,EAAmB,EAAGX,OAAMp7D,UAASg8D,oBACzCH,GAAoB,GACpB,MAAMI,EAAc,IAAIR,GAAmB,IAAAS,cAAa,CACtDd,OACAp7D,UACA86D,mBACAkB,gBACAtB,SAAUe,KAEZK,EAAYG,GACZL,GAAU,EAAV,EAGIO,EAAwB,EAC5Bp7D,KAAIq6D,OAAMp7D,UAASg8D,oBAEnB,MAAM/d,EAAQtmD,EAAAA,QAAEykE,UAAUX,EAAmB,CAAE16D,OACzCk7D,EAActkE,EAAAA,QAAE+B,QAAQ+hE,EAAmBA,EAAkBxd,IAC7Doe,GAAU,IAAAH,cAAa,CAC3Bd,OACAp7D,UACA86D,mBACAkB,gBACAtB,SAAUuB,IAEZA,EAAYK,OAAOre,EAAO,EAAGoe,GAC7BP,EAAYG,GACZL,GAAU,EAAV,EAGIW,EAAoBC,IACxB,MAAMP,EAActkE,EAAAA,QAAE08C,OAAOonB,GAAmB,EAAG16D,QAASy7D,IAAWz7D,IACvE+6D,EAAYG,GACe,IAAvBA,EAAYljE,QACd8iE,GAAoB,GAEtBD,GAAU,EAAV,EAgEF,OACE,+BAAKp+D,WAAW,aAAW,wBAAyBwc,EAAQyiD,WAAYj/D,IA9D7C7F,EAAAA,QAAEwB,IAAIsiE,GAAmBiB,GACpD,wBAAC,EAAAC,eAAD,CACEv7D,IAAKs7D,EAAS37D,GACdvD,UAAU,aACVuC,KAAM28D,EACNE,SAAUL,EACV5B,aAAcwB,EACdvB,sBAAuBA,EACvB9oC,UAAWqpC,EACXH,kBAAmBA,EACnBC,gBAAiBA,MAIeU,GAClC,wBAAC,EAAAgB,eAAD,CACEv7D,IAAKy7D,EAAAA,kBACLr/D,UAAU,YACVuC,MAAM,IAAAm8D,cAAa,CAAEn7D,GAAI87D,EAAAA,kBAAmB78D,SAAS,IACrD26D,aAAcoB,EACdnB,sBAAuBA,EACvB9oC,UAAWqpC,EACXH,kBAAmBA,EACnBC,gBAAiBA,IAIS,MAC5B,MAAM6B,EAAiBnB,EAAmB,EAAI,EACxCoB,EAAyBplE,EAAAA,QAAE+tC,OAAO+1B,EAAmB,WAAa,EAExE,OAAOZ,EAAW,GAAMiC,EAAiBC,EAAyBlC,CAAlE,EAG+BmC,IAC/B,wBAAC,EAAAzoB,OAAD,CACExxC,SAAU44D,KAAqB,IAAAsB,aAAYxB,GAC3CjrC,QAAS,IAAMqrC,GAAoB,GACnCr+D,UAAU,uBAEV,wBAAC,EAAA0yB,UAAD,CAAW1yB,UAAU,2BAA2B2yB,MAAM,WACtD,gCAAM3yB,UAAU,4BAA4B0C,EAAUq7D,EAAAA,SAAS3lD,yBAIxC,MACzB,MAMMomD,EAAgB,IANSN,GAAUr7C,EACrC1oB,EAAAA,QAAEukB,QAAQ,GACT,IAAAghD,iBAAgB,CAAEC,KAAM1B,EAAmBn8D,cAAeY,EAAUq7D,EAAAA,SAAS1lD,oCAE9E,MAEgDklD,GAEpD,OAAQpjE,EAAAA,QAAEuK,QAAQ85D,IAChB,+BAAKx+D,UAAU,+BACb,wBAAC,EAAA4/D,cAAD,CAAeC,SAAUrB,IAF7B,EAYGsB,GAGN,CAED7C,EAA4Bn3D,UAAY,CACtC0W,QAASxW,EAAAA,QAAUD,MAAM,CACvBk5D,WAAYj5D,EAAAA,QAAUG,SACrB9E,WACH67D,SAAUl3D,EAAAA,QAAUU,QAAQV,EAAAA,QAAUD,MAAM,CAC1CxC,GAAIyC,EAAAA,QAAUG,OACdozC,YAAavzC,EAAAA,QAAUG,OACvBy3D,KAAM53D,EAAAA,QAAUD,MAAM,CAAC,MAEzBo3D,aAAcn3D,EAAAA,QAAUC,KAAK5E,WAC7B+7D,sBAAuBp3D,EAAAA,QAAUU,QAAQV,EAAAA,QAAUG,QACnDrE,SAAUkE,EAAAA,QAAUI,KACpByc,gBAAiB7c,EAAAA,QAAUI,KAC3Bi3D,SAAUr3D,EAAAA,QAAUK,OACpBrG,UAAWgG,EAAAA,QAAUG,OACrBmuB,UAAWtuB,EAAAA,QAAUC,KACrBq3D,iBAAkBt3D,EAAAA,QAAUI,KAC5Bm3D,qBAAsBv3D,EAAAA,QAAUU,QAAQV,EAAAA,QAAUG,QAClDq3D,kBAAmBx3D,EAAAA,QAAUG,OAC7Bs3D,gBAAiBz3D,EAAAA,QAAUG,QAG7B82D,EAA4Bp2D,aAAe,CACzC7G,UAAW,GACXk9D,SAAU,GACVG,SAAU,GACV/oC,UAAWn6B,EAAAA,QAAE2M,KACbs2D,sBAAuB,GACvBt7D,UAAU,EACV+gB,iBAAiB,EACjBy6C,kBAAkB,EAClBC,qBAAsB,GACtBC,kBAAmB,GACnBC,gBAAiB,WAGnB,MAAMsC,EAA0Bj4D,GAC9B,wBAAC,EAAAk4D,0BAAD,CAA2BjgE,KAAM+H,EAAM/H,KAAMkgE,cAAen4D,EAAMm4D,eAChE,wBAAChD,EAAgCn1D,IAIrCi4D,EAAwBj6D,UAAY,CAClC/F,KAAMiG,EAAAA,QAAUD,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,KAAK5E,aACzBA,WACH4+D,cAAeC,EAAAA,qBAGjBH,EAAwBl5D,aAAe,CACrCo5D,cAAe,CAAC,GAGX,MAAME,GAAa,aAAYC,EAAAA,iBAAZ,CAA8BL,G,kCCxNxDtmE,EAAOC,QAAU2mE,C,uGCAjB,M,uSAAA,OACA,UACA,WACA,WACA,SACA,SACA,SACA,S,2KAEO,SAASlB,GAAe,KAC7B58D,EAD6B,UAE7BvC,EAF6B,SAG7Bo/D,EAH6B,aAI7BjC,EAJ6B,sBAK7BC,EAL6B,UAM7B9oC,EAN6B,kBAO7BkpC,EAP6B,gBAQ7BC,IACC,MACO/6D,GAAc,IAAAg7D,wBAAdh7D,UACFu8D,GAAa,IAAA5iC,QAAO,MAFzB,EAMG95B,GAAQ,CAAC,EANZ,IAICC,QAAAA,OAJD,aAKCg8D,cAAAA,OALD,MAKiB,GALjB,EAsBKt+C,GAAc,IAAAhf,UAAQ,IAAOs8D,GAAqB,IAAK,CAACA,IAC9D,OACE,+BAAKx9D,WAAW,aAAW,kBAAmBA,EAAW,CAAE,qBAAsBwC,IAAY,eAAcD,EAAKgB,IAC9G,+BAAKvD,UAAU,cACb,gCAAMA,UAAU,sCACbuC,EAAKg3C,aAAer5B,GAEvB,wBAAC,EAAA62B,OAAD,CAAQ/2C,UAAU,0BAA0Bk3C,SAAUumB,EAAiBzqC,QApBtD,IAAMisC,EAAWriC,QAAQ0jC,SAoBuD59D,EAAUq7D,EAAAA,SAAS7lD,yBAErG,OAAd3V,EAAKq7D,MACJ,wBAAC,EAAA7mB,OAAD,CACEG,SAAS,OACTl3C,UAAU,yBACVgzB,QAAS,IAAMosC,EAAS78D,EAAKgB,IAC7B,aAAYb,EAAUq7D,EAAAA,SAAS5lD,wBAE/B,wBAAC,EAAAua,UAAD,CAAW1yB,UAAU,8BAA8B2yB,MAAM,cACzD,gCAAM3yB,UAAU,+BAA+B0C,EAAUq7D,EAAAA,SAAS5lD,yBAItE,iCACE5U,GAAK,SAAQhB,EAAKgB,KAClB1B,KAAK,OACLuD,SAnCiB,EAAGE,QAAUi7D,aACpC,MAAM3C,EAAO2C,EAAM,GACXh9D,EAAOhB,EAAPgB,GACR45D,E,uUAAa,CAAD,CACV55D,KACAq6D,QACGtpC,EAAUspC,IAHf,EAiCMngC,IAAKwhC,EACL76B,MAAO,CAAE56B,QAAS,QAClBg3D,OAAQpD,EAAsBqD,KAAK,SAGrCtmE,EAAAA,QAAEuK,QAAQ85D,IACV,+BAAKx+D,UAAU,qBACb,wBAAC,EAAA4/D,cAAD,CAAeC,SAAUrB,KAKlC,CAEDW,EAAet4D,aAAe,CAC5B7G,UAAW,GACXo/D,SAAUjlE,EAAAA,QAAE2M,KACZ02D,kBAAmB,GACnBC,gBAAiB,WAGnB0B,EAAer5D,UAAY,CACzBvD,KAAMyD,EAAAA,QAAUD,MAAM,CACpBxC,GAAIyC,EAAAA,QAAUG,OACdozC,YAAavzC,EAAAA,QAAUG,OACvBy3D,KAAM53D,EAAAA,QAAUD,MAAM,CAAC,GACvBvD,QAASwD,EAAAA,QAAUI,KACnBo4D,cAAex4D,EAAAA,QAAUU,QAAQV,EAAAA,QAAUG,UAC1C9E,WACH87D,aAAcn3D,EAAAA,QAAUC,KAAK5E,WAC7BizB,UAAWtuB,EAAAA,QAAUC,KAAK5E,WAC1B+7D,sBAAuBp3D,EAAAA,QAAUU,QAAQV,EAAAA,QAAUG,QAAQ9E,WAC3DrB,UAAWgG,EAAAA,QAAUG,OACrBi5D,SAAUp5D,EAAAA,QAAUC,KACpBu3D,kBAAmBx3D,EAAAA,QAAUG,OAC7Bs3D,gBAAiBz3D,EAAAA,QAAUG,O,kKCpG7B,I,EAAA,E,uSAAA,OACA,G,EAAA,Q,2BACA,SACA,SAEO,MAAMu6D,GAAoB,IAAAC,eAAc,CAAC,G,6CAEZ,KAAM,IAAAnzC,YAAWkzC,GAE9C,MAAMV,EAA4B,EACvChxC,WACAjvB,OACAkgE,oBAEA,MAAMv9D,GAAY,IAAAN,cAChBwB,IAAO,IAAAlB,WAAgB,CAAEu9D,gBAAelgE,OAAM6D,SAC9C,CAAC7D,EAAMkgE,IAGT,OACE,wBAACS,EAAkBE,SAAnB,CAA4B54D,MAAO,CAAEtF,cAClCssB,EAFL,E,8BAOFgxC,EAA0Bl6D,UAAY,CACpCkpB,SAAUhpB,EAAAA,QAAUhJ,KAAKqE,WACzBtB,KAAMiG,EAAAA,QAAUD,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,KAAK5E,aACzBA,WACH4+D,cAAeC,EAAAA,oBAAoB7+D,W,4NC/BrC,gBACA,UACA,QACA,S,mDAEO,MAAMw/D,EAAoB,CAACC,EAAaC,KAC7C,IAAIC,EAAY,EACZC,EAAWH,EACf,MAAMI,EAAcC,EAAAA,QAAKC,QAAQN,GAC3BO,EAAeF,EAAAA,QAAKG,SAASR,EAAaI,GAEhD,MAAkD,IAA3CH,EAAoBQ,QAAQN,IACjCD,GAAa,EACbC,EAAY,GAAEI,KAAgBL,KAAaE,IAG7C,OAAOD,CAAP,E,gDAWqC,EACrCrD,OACAR,wBAAwB,GACxBU,sCACA16C,kBAAkBjpB,EAAAA,QAAE2M,SAEpB,MAAM03D,EAAgB,GAEtB,GAAIZ,EAAM,CAhBW,EAAC4D,EAAUpE,MAC5BjjE,EAAAA,QAAEuK,QAAQ04D,KAIqE,IAA5EjjE,EAAAA,QAAEonE,QAAQnE,EAAuB+D,EAAAA,QAAKC,QAAQI,GAAUn8B,eAYxDo8B,CAAe7D,EAAKtjE,KAAM8iE,IAC7BoB,EAAc5jE,KAAKkjE,GAGrB,MAAM4D,EAAuBt+C,EAAgBw6C,GACxCzjE,EAAAA,QAAEuK,QAAQg9D,IACblD,EAAc5jE,KAAK8mE,EAEtB,CAED,MAAO,CAAEl/D,QAAkC,IAAzBg8D,EAAcjjE,OAAcijE,gBAA9C,E,eAG0B,EAC1Bj7D,MAAK,IAAAo+D,gBACL/D,OAAO,KACPp7D,WAAU,EACV86D,oBAAmB,EACnBkB,gBAAgB,GAChBtB,WAAW,IACT,CAAC,KAPuB,CAQ1B35D,KACAg2C,YAAa+jB,EAAmBuD,EAAkBjD,EAAKtjE,KAAM4iE,EAASvhE,KAAI,EAAG49C,iBAAkBA,KAAgBp/C,EAAAA,QAAE+tC,OAAO01B,EAAM,OAAQ,IACtIA,OACAY,gBACAh8D,Y,cAGyBm9D,GAAQxlE,EAAAA,QAAEslD,MAAMkgB,GAAM,EAAGn9D,aAAcA,I,kBAEnC,EAAGm9D,OAAM79D,eAClCA,KACK69D,GAAOA,EAAKpkE,QAAUqmE,EAAAA,U,wBAMI1E,GAAY7d,KAAKC,UAAUnlD,EAAAA,QAAE0nE,MAAM3E,EAAU,O,YAEzD,EAAG+C,gBAAelgE,OAAM6D,UAC/C,MAAMk+D,GAAe,IAAAnkD,KAAIsiD,EAAer8D,GACxC,OAAOzJ,EAAAA,QAAE4nB,SAAS+/C,GAAgBA,EAAe/hE,EAAK2C,UAAUkB,EAAhE,C,oBC9EFnK,EAAOC,QAAUqoE,C,kJCAQ,E,oBAEQ,iB,WAET,CACtB7pD,uBAAwB,yBACxBC,sBAAuB,wBACvBC,sBAAuB,wBACvBC,iCAAkC,mCAClCG,4CAA6C,8CAC7CwpD,kEAAmE,oEACnEC,uBAAwB,yB,iHCX1B,eACA,UACA,S,mDAEO,MAAM/B,EAAsBl6D,EAAAA,QAAUD,MAAM5L,EAAAA,QAAE8B,UACnD8hE,EAAAA,UACA,IAAM/3D,EAAAA,QAAUG,U,wJCNc,CAC9B84D,WAAY,CACV,qBAAsB,CACpB,gBAAiB,CACfz1D,QAAS,OACToc,WAAY,UAEd,uBAAwB,CACtBlc,UAAW,IAGf,uBAAwB,CACtB,2BAA4B,CAC1BqmD,YAAa,UACblmD,MAAO,UACPqc,gBAAiB,YAGrB,2BAA4B,CAC1BZ,KAAM,WACNzb,MAAO,UACPwb,YAAa,MACbojB,SAAU,SACVL,aAAc,YAEhB,6BAA8B,CAC5B9iB,KAAM,YAER,4BAA6B,CAC3BA,KAAM,WACNe,OAAQ,OACRiiB,SAAU,WACV3hB,OAAQ,GACRhG,WAAY,SACZnX,QAAS,OACToc,WAAY,SACZ/b,MAAO,UACP,SAAU,CACRwb,YAAa,EACb7b,QAAS,QACTuc,WAAY,GAEd,UAAW,CACTlc,MAAO,WAET,iBAAkB,CAChBJ,WAAY,IAGhB,+BAAgC,CAC9BC,UAAW,EACX2c,OAAQ,OACRH,gBAAiB,yBACjBF,YAAa,EACbxc,QAAS,OACToc,WAAY,SACZ,iBAAkB,CAChBs8C,eAAgB,aAElB,8BAA+B,CAC7B78C,YAAa,EACbU,WAAY,EACZU,IAAK,GAEP,8BAA+B,CAC7B9F,WAAY,UAEd,oBAAqB,CACnB9W,MAAO,UACP,UAAW,CACTA,MAAO,c,yGCrEjB,I,EAAA,OACA,G,EAAA,O,2BACA,S,83BAEA,MAAMs4D,EAAoC,CAACjF,EAAUS,IAAmBxjE,EAAAA,QAAEwB,IAAIuhE,GAAW,IAAD,IAAGU,EAAH,EAAGA,KAAH,O,uUAAA,kBAEnFD,EAAeC,GAFoE,CAGtFA,QAHsF,I,cAM7D,EACzBD,iBAAgBR,eAAcr7D,WAAUo7D,eACpC,WACwB,IAAArhD,WAAS,GADjC,GACGqiD,EADH,KACWE,EADX,UAE8C,IAAAviD,WAAS,IAAMsmD,EAAkCjF,EAAUS,KAFzG,GAEGM,EAFH,KAEsBmE,EAFtB,UAG4C,IAAAvmD,WAAS,IAAM1hB,EAAAA,QAAEuK,QAAQw4D,KAHrE,GAGGiB,EAHH,KAGqBE,EAHrB,KAKEC,GAAc,IAAAl8D,cAAY,CAACq8D,EAAa4D,GAAqB,KACjED,EAAqBC,EACjBF,EAAkC1D,EAAad,GAC/Cc,EAFJ,GAGC,CAACd,IAOJ,OALA,IAAAv/C,YAAU,KACR,MAAM5b,GAAU,IAAAi9D,aAAYxB,KAAsB,IAAAyB,iBAAgB,CAAEC,KAAM1B,EAAmBn8D,aAC7Fq7D,EAAa,CAAED,SAAU/iE,EAAAA,QAAEwB,IAAIsiE,GAAmBL,GAAQzjE,EAAAA,QAAE+7C,KAAK0nB,EAAM,mBAAmBp7D,WAA1F,GACC,CAACy7D,EAAmBd,EAAcr7D,IAE9B,CACLm8D,oBACAC,SACAC,mBACAC,YACAC,sBACAC,cANF,C,kBlK7BF7kE,EAAOC,QAAU,C,wK3BCf,IAAI+jD,EAAmB,CAAC,EAGxB,SAAS,EAAoBC,GAG5B,GAAGD,EAAiBC,GACnB,OAAOD,EAAiBC,GAAUhkD,QAGnC,IAAID,EAASgkD,EAAiBC,GAAY,CACzCl/C,EAAGk/C,EACHC,GAAG,EACHjkD,QAAS,CAAC,GAUX,OANAkkD,EAAQF,GAAU7J,KAAKp6C,EAAOC,QAASD,EAAQA,EAAOC,QAAS,GAG/DD,EAAOkkD,GAAI,EAGJlkD,EAAOC,OACf,CAyDA,OArDA,EAAoBmkD,EAAID,EAGxB,EAAoBE,EAAIL,EAGxB,EAAoBM,EAAI,SAASrkD,EAASY,EAAM0jD,GAC3C,EAAoBC,EAAEvkD,EAASY,IAClC+lB,OAAO69B,eAAexkD,EAASY,EAAM,CAAE6jD,YAAY,EAAMxgC,IAAKqgC,GAEhE,EAGA,EAAoBI,EAAI,SAAS1kD,GACX,qBAAX2kD,QAA0BA,OAAOC,aAC1Cj+B,OAAO69B,eAAexkD,EAAS2kD,OAAOC,YAAa,CAAEt2C,MAAO,WAE7DqY,OAAO69B,eAAexkD,EAAS,aAAc,CAAEsO,OAAO,GACvD,EAOA,EAAoBu2C,EAAI,SAASv2C,EAAOw2C,GAEvC,GADU,EAAPA,IAAUx2C,EAAQ,EAAoBA,IAC/B,EAAPw2C,EAAU,OAAOx2C,EACpB,GAAW,EAAPw2C,GAA8B,kBAAVx2C,GAAsBA,GAASA,EAAMy2C,WAAY,OAAOz2C,EAChF,IAAI02C,EAAKr+B,OAAO1jB,OAAO,MAGvB,GAFA,EAAoByhD,EAAEM,GACtBr+B,OAAO69B,eAAeQ,EAAI,UAAW,CAAEP,YAAY,EAAMn2C,MAAOA,IACtD,EAAPw2C,GAA4B,iBAATx2C,EAAmB,IAAI,IAAIpE,KAAOoE,EAAO,EAAoB+1C,EAAEW,EAAI96C,EAAK,SAASA,GAAO,OAAOoE,EAAMpE,EAAM,EAAEpK,KAAK,KAAMoK,IAC9I,OAAO86C,CACR,EAGA,EAAoBC,EAAI,SAASllD,GAChC,IAAIukD,EAASvkD,GAAUA,EAAOglD,WAC7B,WAAwB,OAAOhlD,EAAgB,OAAG,EAClD,WAA8B,OAAOA,CAAQ,EAE9C,OADA,EAAoBskD,EAAEC,EAAQ,IAAKA,GAC5BA,CACR,EAGA,EAAoBC,EAAI,SAASx3C,EAAQ+qC,GAAY,OAAOnxB,OAAOu+B,UAAUC,eAAehL,KAAKptC,EAAQ+qC,EAAW,EAGpH,EAAoBsN,EAAI,GAIjB,EAAoB,EAAoBC,EAAI,I,oBgLlFrDtlD,EAAOC,QAAUspD,C,kBlCAjBvpD,EAAOC,QAAU4rD,C,oBgDAjB7rD,EAAOC,QAAU4oE,C,oBCAjB7oE,EAAOC,QAAU6oE,C,sPCAjB,yMACA,Y,sQCDA,cACA,YACA,SACA,S,mDAEA,IAEIn2B,EAFAo2B,EAAoB,6BACpBC,EAAkB,E,YAcJ,EAChBC,WACAC,cACAC,yBAEAJ,EAAoBE,GAAYF,EAChCC,EAAkBE,GAAeF,EACjCr2B,EAASw2B,CAAT,E,aAGiB,KAAnB,EAmBA,MAAM5jD,EAAUimC,IACa4d,SAASC,cAAcN,IAGhDO,EAAAA,QAAS/jD,OACP,wBAAC,EAAAgkD,eAAD,CACE/d,MAAOA,EACPwd,gBAAiBA,EACjBG,mBAAoBx2B,EACpBxoC,KAAK,IAAAq/D,sBAEPJ,SAASC,cAAcN,GAI3B,EAGIhc,EAAS,IAAMxnC,I,aAMF,KACjBwnC,GAAQ,E,UAOM,KACdA,GAAQ,EAQV,MAAM1C,EAAOmB,GAASjmC,EAAOimC,G,qBAOX7N,GAAW0M,EAAK,CAChC1M,UACAqM,MAAO,U,cAQWrM,GAAW0M,EAAK,CAClC1M,UACAqM,MAAO,Y,WAQQrM,GAAW0M,EAAK,CAC/B1M,UACAqM,MAAO,S,mBAQgBrM,GAAW0M,EAAK,CACvC1M,UACAqM,MAAO,iB,aAQWrM,IAClBp4B,EAAO,CACLo4B,UACAqM,MAAO,SAFT,E,eAWoBrM,IACpBp4B,EAAO,CACLo4B,UACAqM,MAAO,WAFT,E,YAWiBrM,IACjBp4B,EAAO,CACLo4B,UACAqM,MAAO,QAFT,E,oBAWyBrM,IACzBp4B,EAAO,CACLo4B,UACAqM,MAAO,gBAFT,C,4GC9KF,cACA,UACA,WACA,SACA,S,2XAEA,MACMyf,EACK,UADLA,EAEI,SAFJA,EAGK,UAGJ,MAAMF,UAAuBG,EAAAA,QAAMC,UACxCC,WAAAA,CAAYv7D,GACVw7D,MAAMx7D,GADW,mBAoBR,CAACjG,EAAM0hE,KAChB,MAAMC,EAAc,kBAAkB3hE,IAChCu1C,EAAUj9C,EAAAA,QAAE29C,OAChByrB,GACA,CAACE,EAAMC,IAAU,GAAED,KAAQC,KAC1B,GAAE3zB,KAAKjoC,MAAMm9C,MAAMxB,SAAUtpD,EAAAA,QAAE4nB,SAASguB,KAAKjoC,MAAMm9C,MAAM7N,SAAWrH,KAAKjoC,MAAMm9C,MAAM7N,QAAU,kBAGlGrH,KAAKjoC,MAAM86D,mBAAmBz0B,MAAMq1B,EAAYpsB,EAAhD,IA5BiB,sBA+BL,KACRrH,KAAK0Z,MAAMka,aACb5zB,KAAK6zB,SAASV,GACVnzB,KAAK8zB,SACP1f,aAAapU,KAAK8zB,SAGhB9zB,KAAKjoC,MAAM26D,gBAAkB,IAC/B1yB,KAAK8zB,QAAUxf,YAAW,KACxBtU,KAAKuU,SAAQ,EAAb,GACCvU,KAAKjoC,MAAM26D,kBAEjB,IA3CgB,kBA8CT,CAACqB,GAAU,KACfA,GACF/zB,KAAK6zB,SAASV,GAGhBnzB,KAAK4V,SAAS,CAAEge,YAAY,GAA5B,IAnDiB,wBAsDFI,IACfh0B,KAAK6zB,SAASV,EAAgB,CAACa,GAA/B,IArDA,MAAMC,EAAcj0B,KAAKjoC,MAAMm9C,OAASlV,KAAKjoC,MAAMm9C,MAAM7N,QACzDrH,KAAK0Z,MAAQ,CAAEka,WAAYxpE,EAAAA,QAAE4nB,SAASiiD,IAAgBb,EAAAA,QAAMc,eAAeD,GAC5E,CAEDE,iBAAAA,GACEn0B,KAAKo0B,aACN,CAEDC,kBAAAA,GACEr0B,KAAKo0B,aACN,CAEDE,oBAAAA,GACMt0B,KAAK8zB,SACP1f,aAAapU,KAAK8zB,QAErB,CAwCD7kD,MAAAA,GACE,OACE,mCACI+wB,KAAK0Z,MAAMka,YACX,+BAAK3jE,UAAU,mBACb,wBAAC,EAAAskE,MAAD,MACM,IAAAC,eAAcx0B,KAAKjoC,MAAMm9C,OAD/B,CAEEzd,UAAWuI,KAAKuU,QAChBkgB,gBAAiBz0B,KAAK00B,kBAMjC,E,mBAGHzB,EAAel9D,UAAY,CACzBm/C,MAAOj/C,EAAAA,QAAUD,MAAM,CACrBqxC,QAASpxC,EAAAA,QAAUM,UAAU,CAC3BN,EAAAA,QAAUG,OACVH,EAAAA,QAAUm+B,UAEZsf,MAAOz9C,EAAAA,QAAUG,SAEnBs8D,gBAAiBz8D,EAAAA,QAAUK,OAC3Bu8D,mBAAoB58D,EAAAA,QAAUD,MAAM,CAClCooC,MAAOnoC,EAAAA,QAAUC,QAIrB+8D,EAAen8D,aAAe,CAC5Bo+C,MAAO,CACL7N,aAASxvC,EACT67C,MAAO,gBAETgf,gBAAiB,EACjBG,mBAAoB,CAClBz0B,MAAOh0C,EAAAA,QAAE2M,M,8HC9Gb,I,EAAA,G,EAAA,O,2BAMA,MAAM49D,EAAe,CACnBznE,MAAO,UACPkpD,QAAS,UACTC,aAAc,eACdC,KAAM,gB,gBAGqBpB,GAAS9qD,EAAAA,QAAEwqE,OAAO1f,EAAO,CAAExB,MAAOihB,EAAazf,EAAMxB,OAAS,kB,mBAE3D,IAAMtpD,EAAAA,QAAE68C,SAAS,mB,kBxKfjDv9C,EAAOC,QAAU,C,iJ3BCf,IAAI+jD,EAAmB,CAAC,EAGxB,SAAS,EAAoBC,GAG5B,GAAGD,EAAiBC,GACnB,OAAOD,EAAiBC,GAAUhkD,QAGnC,IAAID,EAASgkD,EAAiBC,GAAY,CACzCl/C,EAAGk/C,EACHC,GAAG,EACHjkD,QAAS,CAAC,GAUX,OANAkkD,EAAQF,GAAU7J,KAAKp6C,EAAOC,QAASD,EAAQA,EAAOC,QAAS,GAG/DD,EAAOkkD,GAAI,EAGJlkD,EAAOC,OACf,CAyDA,OArDA,EAAoBmkD,EAAID,EAGxB,EAAoBE,EAAIL,EAGxB,EAAoBM,EAAI,SAASrkD,EAASY,EAAM0jD,GAC3C,EAAoBC,EAAEvkD,EAASY,IAClC+lB,OAAO69B,eAAexkD,EAASY,EAAM,CAAE6jD,YAAY,EAAMxgC,IAAKqgC,GAEhE,EAGA,EAAoBI,EAAI,SAAS1kD,GACX,qBAAX2kD,QAA0BA,OAAOC,aAC1Cj+B,OAAO69B,eAAexkD,EAAS2kD,OAAOC,YAAa,CAAEt2C,MAAO,WAE7DqY,OAAO69B,eAAexkD,EAAS,aAAc,CAAEsO,OAAO,GACvD,EAOA,EAAoBu2C,EAAI,SAASv2C,EAAOw2C,GAEvC,GADU,EAAPA,IAAUx2C,EAAQ,EAAoBA,IAC/B,EAAPw2C,EAAU,OAAOx2C,EACpB,GAAW,EAAPw2C,GAA8B,kBAAVx2C,GAAsBA,GAASA,EAAMy2C,WAAY,OAAOz2C,EAChF,IAAI02C,EAAKr+B,OAAO1jB,OAAO,MAGvB,GAFA,EAAoByhD,EAAEM,GACtBr+B,OAAO69B,eAAeQ,EAAI,UAAW,CAAEP,YAAY,EAAMn2C,MAAOA,IACtD,EAAPw2C,GAA4B,iBAATx2C,EAAmB,IAAI,IAAIpE,KAAOoE,EAAO,EAAoB+1C,EAAEW,EAAI96C,EAAK,SAASA,GAAO,OAAOoE,EAAMpE,EAAM,EAAEpK,KAAK,KAAMoK,IAC9I,OAAO86C,CACR,EAGA,EAAoBC,EAAI,SAASllD,GAChC,IAAIukD,EAASvkD,GAAUA,EAAOglD,WAC7B,WAAwB,OAAOhlD,EAAgB,OAAG,EAClD,WAA8B,OAAOA,CAAQ,EAE9C,OADA,EAAoBskD,EAAEC,EAAQ,IAAKA,GAC5BA,CACR,EAGA,EAAoBC,EAAI,SAASx3C,EAAQ+qC,GAAY,OAAOnxB,OAAOu+B,UAAUC,eAAehL,KAAKptC,EAAQ+qC,EAAW,EAGpH,EAAoBsN,EAAI,GAIjB,EAAoB,EAAoBC,EAAI,I,oBgLlFrDtlD,EAAOC,QAAUspD,C,kBlCAjBvpD,EAAOC,QAAU4rD,C,4NsDAjB,Y,4GCAA,eACA,UACA,U,mDAEO,MAAMsf,UAAuBzB,EAAAA,QAAM0B,cACxCX,iBAAAA,GACMjgB,OAAO6gB,cAAgB3qE,EAAAA,QAAEW,WAAWmpD,OAAO6gB,aAAaC,UAC1D9gB,OAAO6gB,aAAaC,SAEvB,CAED/lD,MAAAA,GACE,OACE,+BACEgmD,WAAYj1B,KAAKjoC,MAAMm9D,WACvB7gC,MAAO,CAAE56B,QAAS,SAGvB,E,mBAGHo7D,EAAe9+D,UAAY,CACzBm/D,WAAYj/D,EAAAA,QAAUG,OAAO9E,W,kB1KtB/B5H,EAAOC,QAAU,C,6J3BCf,IAAI+jD,EAAmB,CAAC,EAGxB,SAAS,EAAoBC,GAG5B,GAAGD,EAAiBC,GACnB,OAAOD,EAAiBC,GAAUhkD,QAGnC,IAAID,EAASgkD,EAAiBC,GAAY,CACzCl/C,EAAGk/C,EACHC,GAAG,EACHjkD,QAAS,CAAC,GAUX,OANAkkD,EAAQF,GAAU7J,KAAKp6C,EAAOC,QAASD,EAAQA,EAAOC,QAAS,GAG/DD,EAAOkkD,GAAI,EAGJlkD,EAAOC,OACf,CAyDA,OArDA,EAAoBmkD,EAAID,EAGxB,EAAoBE,EAAIL,EAGxB,EAAoBM,EAAI,SAASrkD,EAASY,EAAM0jD,GAC3C,EAAoBC,EAAEvkD,EAASY,IAClC+lB,OAAO69B,eAAexkD,EAASY,EAAM,CAAE6jD,YAAY,EAAMxgC,IAAKqgC,GAEhE,EAGA,EAAoBI,EAAI,SAAS1kD,GACX,qBAAX2kD,QAA0BA,OAAOC,aAC1Cj+B,OAAO69B,eAAexkD,EAAS2kD,OAAOC,YAAa,CAAEt2C,MAAO,WAE7DqY,OAAO69B,eAAexkD,EAAS,aAAc,CAAEsO,OAAO,GACvD,EAOA,EAAoBu2C,EAAI,SAASv2C,EAAOw2C,GAEvC,GADU,EAAPA,IAAUx2C,EAAQ,EAAoBA,IAC/B,EAAPw2C,EAAU,OAAOx2C,EACpB,GAAW,EAAPw2C,GAA8B,kBAAVx2C,GAAsBA,GAASA,EAAMy2C,WAAY,OAAOz2C,EAChF,IAAI02C,EAAKr+B,OAAO1jB,OAAO,MAGvB,GAFA,EAAoByhD,EAAEM,GACtBr+B,OAAO69B,eAAeQ,EAAI,UAAW,CAAEP,YAAY,EAAMn2C,MAAOA,IACtD,EAAPw2C,GAA4B,iBAATx2C,EAAmB,IAAI,IAAIpE,KAAOoE,EAAO,EAAoB+1C,EAAEW,EAAI96C,EAAK,SAASA,GAAO,OAAOoE,EAAMpE,EAAM,EAAEpK,KAAK,KAAMoK,IAC9I,OAAO86C,CACR,EAGA,EAAoBC,EAAI,SAASllD,GAChC,IAAIukD,EAASvkD,GAAUA,EAAOglD,WAC7B,WAAwB,OAAOhlD,EAAgB,OAAG,EAClD,WAA8B,OAAOA,CAAQ,EAE9C,OADA,EAAoBskD,EAAEC,EAAQ,IAAKA,GAC5BA,CACR,EAGA,EAAoBC,EAAI,SAASx3C,EAAQ+qC,GAAY,OAAOnxB,OAAOu+B,UAAUC,eAAehL,KAAKptC,EAAQ+qC,EAAW,EAGpH,EAAoBsN,EAAI,GAIjB,EAAoB,EAAoBC,EAAI,I,qBsMlFrDtlD,EAAOC,QAAUwrE,C,oBCAjBzrE,EAAOC,QAAUyrE,C,kBzDAjB1rE,EAAOC,QAAU4rD,C,0H0DEjB,2J,gmBCAA,aACA,SACA,SACA,SACA,Q,kHCJA,IAKa8f,GAAuB,EALpC,KAKoCzE,eAA6B,CAAC,G,4HCF5D,WACJ,OAAO,IAAAnzC,YAAW,EAAA43C,qBACnB,EALD,WACA,Q,6GCOM,SAAiCC,GACrC,IAAMC,GAAa,IAAAC,iBACbC,GAAsB,IAAAnpC,SAAO,GAC7BopC,GAAmB,IAAAppC,SAAO,IAEhC,IAAAxgB,WAAS,WACP,UAAEqsB,OAAOo9B,EAAY,YACjBD,IACF,UAAEn9B,OAAOo9B,EAAY,iBACrBE,EAAoB5oC,SAAU,EAEjC,KAED,IAAAxe,YAAU,YAC4B,IAAhConD,EAAoB5oC,UACtB,UAAEsL,OAAOo9B,EAAY,iBACrBE,EAAoB5oC,SAAU,EAEjC,GAAE,CAAC0oC,KAEJ,IAAAlnD,YAAU,YACH,UAAET,IAAI2nD,EAAY,YAAcD,GACnC,UAAEn9B,OAAOo9B,EAAY,OAExB,GAAE,CAACD,EAAWC,IAEXD,IAA0C,IAA7BI,EAAiB7oC,UAChC,UAAEsL,OAAOo9B,EAAY,cACrBG,EAAiB7oC,SAAU,EAE9B,EAvCD,I,EAAA,G,EAAA,O,2BACA,OACA,Q,yGCoBM,SAAkD8oC,EAAoChmD,GAClF,IAAAplB,EAAkBolB,EAAd,KAAEimD,EAAYjmD,EAAL,QAEfkmD,EAAM,UAAMC,YAAkC,SAAC/9D,EAAO21B,GAC1D,IARaqoC,EASPC,GADiB,IAAAR,iBACgBS,YAAY1rE,EAAM,CAAEqrE,QAAgB,OAAPA,QAAO,IAAPA,GAAAA,IAGpE,OAZaG,EAUL,WAAM,OAAAC,EAAA,eAA+B,GAT/C,IAAAlqD,UAASiqD,GAYL,wBAAC,EAAAV,qBAAqBxE,SAAQ,CAAC54D,MAAO+9D,GACpC,wBAACL,EAAgB,GAACjoC,IAAKA,GAAS31B,EAAY,CAAEw9D,WAAYS,KAG/D,IAKD,OAHA,aAAqBH,EAAKF,GAC1BE,EAAIrsB,YAAc,qBAAqB0sB,EAAeP,GAAiB,IAEhEE,CACR,EAxCD,I,EAAA,E,uSAAA,OACA,SACA,SACA,G,EAAA,S,+OACQK,EAAmB,EAAQ,KAAb,c,qGCehB,SAA8CP,EAAoChmD,QAAA,IAAAA,IAAAA,EAAA,IAC9E,IAAAwmD,EAAmCxmD,EAA1B,UAAE4lD,EAAwB5lD,EAAd,WAAEimD,EAAYjmD,EAAL,QAEhCkmD,EAAM,UAAMC,YAAkC,SAAC/9D,EAAO21B,GAC1D,IAAM0oC,GAAoB,IAAAZ,iBACpBQ,GAAkB,IAAA7kE,UAAQ,WAC9B,YAAc0G,IAAds+D,OAA0Bt+D,EAAYu+D,EAAkBH,YAAYE,EAAW,CAAEP,QAAgB,OAAPA,QAAO,IAAPA,GAAAA,GAAmB,GAAE,CAACO,EAAWP,IAE7H,YAAmB/9D,IAAf09D,EACK,wBAACI,EAAgB,GAACjoC,IAAKA,GAAS31B,EAAY,CAAEw9D,WAAYA,UAG3C19D,IAApBm+D,EACK,wBAACL,EAAgB,GAACjoC,IAAKA,GAAS31B,EAAY,CAAEw9D,WAAYa,KAIjE,wBAAC,EAAAf,qBAAqBxE,SAAQ,CAAC54D,MAAO+9D,GACpC,wBAACL,EAAgB,GAACjoC,IAAKA,GAAS31B,EAAY,CAAEw9D,WAAYS,KAG/D,IAKD,OAHA,aAAqBH,EAAKF,GAC1BE,EAAIrsB,YAAc,kBAAkB0sB,EAAeP,GAAiB,IAE7DE,CACR,EA9CD,I,EAAA,E,uSAAA,OACA,G,EAAA,S,2BACA,SACA,S,oNAEQK,EAAmB,EAAQ,KAAb,c,kBnLPtBxsE,EAAOC,QAAU,C,iM3BCf,IAAI+jD,EAAmB,CAAC,EAGxB,SAAS,EAAoBC,GAG5B,GAAGD,EAAiBC,GACnB,OAAOD,EAAiBC,GAAUhkD,QAGnC,IAAID,EAASgkD,EAAiBC,GAAY,CACzCl/C,EAAGk/C,EACHC,GAAG,EACHjkD,QAAS,CAAC,GAUX,OANAkkD,EAAQF,GAAU7J,KAAKp6C,EAAOC,QAASD,EAAQA,EAAOC,QAAS,GAG/DD,EAAOkkD,GAAI,EAGJlkD,EAAOC,OACf,CAyDA,OArDA,EAAoBmkD,EAAID,EAGxB,EAAoBE,EAAIL,EAGxB,EAAoBM,EAAI,SAASrkD,EAASY,EAAM0jD,GAC3C,EAAoBC,EAAEvkD,EAASY,IAClC+lB,OAAO69B,eAAexkD,EAASY,EAAM,CAAE6jD,YAAY,EAAMxgC,IAAKqgC,GAEhE,EAGA,EAAoBI,EAAI,SAAS1kD,GACX,qBAAX2kD,QAA0BA,OAAOC,aAC1Cj+B,OAAO69B,eAAexkD,EAAS2kD,OAAOC,YAAa,CAAEt2C,MAAO,WAE7DqY,OAAO69B,eAAexkD,EAAS,aAAc,CAAEsO,OAAO,GACvD,EAOA,EAAoBu2C,EAAI,SAASv2C,EAAOw2C,GAEvC,GADU,EAAPA,IAAUx2C,EAAQ,EAAoBA,IAC/B,EAAPw2C,EAAU,OAAOx2C,EACpB,GAAW,EAAPw2C,GAA8B,kBAAVx2C,GAAsBA,GAASA,EAAMy2C,WAAY,OAAOz2C,EAChF,IAAI02C,EAAKr+B,OAAO1jB,OAAO,MAGvB,GAFA,EAAoByhD,EAAEM,GACtBr+B,OAAO69B,eAAeQ,EAAI,UAAW,CAAEP,YAAY,EAAMn2C,MAAOA,IACtD,EAAPw2C,GAA4B,iBAATx2C,EAAmB,IAAI,IAAIpE,KAAOoE,EAAO,EAAoB+1C,EAAEW,EAAI96C,EAAK,SAASA,GAAO,OAAOoE,EAAMpE,EAAM,EAAEpK,KAAK,KAAMoK,IAC9I,OAAO86C,CACR,EAGA,EAAoBC,EAAI,SAASllD,GAChC,IAAIukD,EAASvkD,GAAUA,EAAOglD,WAC7B,WAAwB,OAAOhlD,EAAgB,OAAG,EAClD,WAA8B,OAAOA,CAAQ,EAE9C,OADA,EAAoBskD,EAAEC,EAAQ,IAAKA,GAC5BA,CACR,EAGA,EAAoBC,EAAI,SAASx3C,EAAQ+qC,GAAY,OAAOnxB,OAAOu+B,UAAUC,eAAehL,KAAKptC,EAAQ+qC,EAAW,EAGpH,EAAoBsN,EAAI,GAIjB,EAAoB,EAAoBC,EAAI,I,oBgLlFrDtlD,EAAOC,QAAUspD,C,kO+BAjB,a,4ICCA,M,uSAAA,OACA,WACA,UACA,SACA,UACA,SACA,S,qcAOA,MAAMj1B,EAAW,OACJq4C,EAA2B,EAAGp+D,QAAOma,cAC/C,IAAAC,aAAYD,KACb,IAAAC,aAAYpa,IACZma,EAAQkkD,uBAAyBr+D,EAAMq+D,sBACvClkD,EAAUna,EAAQma,EAAUna,EAEvB,SAAS0b,GAAiB,KAC/B3jB,EAD+B,QAE/B0iB,EAF+B,QAG/BN,EAH+B,UAI/BO,EAJ+B,SAK/Bnd,EAL+B,aAM/Bge,EAN+B,gBAO/BV,EAP+B,OAQ/B5e,EAR+B,gBAS/Bmf,IAEA,MAAMkjD,GAAoB,IAAAjqC,UADzB,KAE+C,IAAAxgB,WAAS,GAFxD,GAEM0qD,EAFN,KAEwBC,EAFxB,UAG6C,IAAA3qD,UAAS,IAHtD,GAGMyU,EAHN,KAGuBm2C,EAHvB,UAKiD,IAAA5qD,WAAS,KACxD,IAAAuG,aAAYmB,GAAgBxjB,EAAK2kB,WAAWnB,GAAgB,OAN9D,GAKMmjD,EALN,KAKyBC,EALzB,KAOKC,GAAe,IAAA1lE,UAAQ,KAAM,IAAAohB,sBAAqBG,SAAY7a,GAAW,CAAC6a,IAC1EokD,GAAe,IAAA3lE,UAAQ,KAAM,IAAAohB,sBAAqBH,SAAYva,GAAW,CAACua,IAC1E2kD,GAAoB,IAAA5lE,UAAQ,KAChC,MAAM4gB,GAAO,IAAAQ,sBAAqBiB,GAElC,OAAI,IAAAlB,wBAAuB,CAAEF,QAAS0kD,EAAcpkD,QAASmkD,EAAc5+D,MAAO8Z,IACzEA,GAEF,IAAAQ,sBAAqBH,EAA5B,GACC,CAACykD,EAAcC,EAAc1kD,EAASoB,IACnCwjD,GAAe,IAAA3kE,cAAY,KAC9BmD,GAAYihE,GAAoBQ,IAAaA,KAAW,CAACzhE,IAS5D,OAPA,IAAA6Y,YAAU,IAAMuoD,GAAsBM,GAChC9sE,EAAAA,QAAEw0B,OAAOpL,GACJppB,EAAAA,QAAE+sE,MAAM3jD,EAAa4jD,WAAaF,EAAuBlnE,EAAK2kB,WAAWnB,GAE3E,QACL,CAACxjB,EAAMwjB,IAGT,+BACEvjB,UAAU,qBACVy9B,IAAK6oC,EACLc,OAAS1lB,IACH4kB,EAAkB1pC,UAAY0pC,EAAkB1pC,QAAQqQ,SAASyU,EAAE2lB,gBACrEb,GAAoB,EACrB,GAGH,+BAAKxmE,UAAU,wBACb,+BAAKA,UAAU,cACb,wBAAC,EAAAqvB,eAAD,CACE9pB,SAAUA,EACVytB,QAAS+zC,EACThjE,gBAAiB,CACfuwB,UAAWlR,EACXjhB,WAAa6F,IACX,MAAMs/D,EAAUvnE,EAAKiiB,UAAUha,EAAMzF,KAAKwrB,IAAa,KAAO,IAAIxL,KAAK,gBACjEglD,GAAgB,IAAAllD,wBAAuB,CAC3Cra,OAAO,IAAAsa,sBAAqBglD,GAC5BnlD,QAAS0kD,EACTpkD,QAASmkD,IAWX,OARAH,EAAoBc,IACjBv/D,EAAMw/D,UAAW3kD,GAAqBtd,EAEvC,GADA,CAACxF,EAAK2C,UAAU,qCAElBggB,EAAU,CACR1a,MAAOo+D,EAAyB,CAAEp+D,MAAOs/D,EAASnlD,YAClD3f,QAASrI,EAAAA,QAAEuK,QAAQsD,EAAM63D,WAAa0H,IAEjCv/D,CAAP,EAEFhE,MAAO+pB,EACPxrB,KAAM,CAAE,CAACwrB,GAAW24C,GACpBziE,OAAQ,CAAErC,WAAY,CAAE,CAACmsB,GAAW9pB,IACpCqsB,kBACAzN,kBACA9iB,OACAuvB,eAAgB/pB,EAChB+rB,iBAAiB,MAIvB,gCACEtxB,UAAU,yBACV,cAAY,OACZgzB,QAAS+zC,EACTU,WAAY/lB,GAAKA,EAAEW,QAAUC,EAAAA,QAAQC,OAASwkB,IAC9C9lB,SAAS,OAGXslB,GACF,+BAAKvmE,UAAU,kBAAkBihD,SAAS,KACxC,wBAAC,EAAAymB,oBAAD,CACEjlD,QAASmkD,EACTzkD,QAAS0kD,EACTc,sBAAsB,IAAAC,qBACtBC,qBAAqB,IAAAD,qBACrBE,OAAO,IAAAF,qBACPG,cAAejB,EACfvjD,aAAcujD,EACdkB,aAAelmD,IACb0kD,GAAoB,GACpB9jD,EAAU,CACR1a,MAAOo+D,EAAyB,CAC9Bp+D,MAAOjI,EAAKiiB,UAAUjiB,EAAKkoE,gBAAgBnmD,IAC3CK,YAEF3f,SAAS,GALX,EAQFzC,KAAMA,EACNmoE,sBAAoB,KAK7B,C,6BAEDxkD,EAAiB5d,UAAY,CAC3B/F,KAAMiG,EAAAA,QAAUD,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,KAAK5E,WAC1B6E,aAAcF,EAAAA,QAAUC,KAAK5E,WAC7B8mE,kBAAmBniE,EAAAA,QAAUC,KAAK5E,aACjCA,WACHqhB,UAAW1c,EAAAA,QAAUC,KAAK5E,WAC1BkE,SAAUS,EAAAA,QAAUI,KACpByc,gBAAiB7c,EAAAA,QAAUI,KAC3B+b,QAASnc,EAAAA,QAAU4d,WAAWrB,MAC9BE,QAASzc,EAAAA,QAAU4d,WAAWrB,MAC9BgB,aAAcvd,EAAAA,QAAU4d,WAAWrB,MACnCte,OAAQ+B,EAAAA,QAAUD,MAAM,CACtBjE,SAAUkE,EAAAA,QAAUI,OAEtBgd,gBAAiBpd,EAAAA,QAAUC,MAG7Byd,EAAiB7c,aAAe,CAC9BtB,UAAU,EACV4c,QAAS,IAAII,KACbE,QAAS,KACTI,iBAAiB,EACjBU,aAAc,KACdtf,OAAQ,CAAE5C,YAAY,GACtB+hB,gBAAiB,K,qBCrKnB3pB,EAAOC,QAAU0uE,C,oBtFAjB3uE,EAAOC,QAAU,C,oBuFAjBD,EAAOC,QAAU2uE,C,oBCAjB5uE,EAAOC,QAAU4uE,C,kBrEAjB7uE,EAAOC,QAAU4rD,C,kBnHAjB7rD,EAAOC,QAAU,C,qL3BCf,IAAI+jD,EAAmB,CAAC,EAGxB,SAAS,EAAoBC,GAG5B,GAAGD,EAAiBC,GACnB,OAAOD,EAAiBC,GAAUhkD,QAGnC,IAAID,EAASgkD,EAAiBC,GAAY,CACzCl/C,EAAGk/C,EACHC,GAAG,EACHjkD,QAAS,CAAC,GAUX,OANAkkD,EAAQF,GAAU7J,KAAKp6C,EAAOC,QAASD,EAAQA,EAAOC,QAAS,GAG/DD,EAAOkkD,GAAI,EAGJlkD,EAAOC,OACf,CAyDA,OArDA,EAAoBmkD,EAAID,EAGxB,EAAoBE,EAAIL,EAGxB,EAAoBM,EAAI,SAASrkD,EAASY,EAAM0jD,GAC3C,EAAoBC,EAAEvkD,EAASY,IAClC+lB,OAAO69B,eAAexkD,EAASY,EAAM,CAAE6jD,YAAY,EAAMxgC,IAAKqgC,GAEhE,EAGA,EAAoBI,EAAI,SAAS1kD,GACX,qBAAX2kD,QAA0BA,OAAOC,aAC1Cj+B,OAAO69B,eAAexkD,EAAS2kD,OAAOC,YAAa,CAAEt2C,MAAO,WAE7DqY,OAAO69B,eAAexkD,EAAS,aAAc,CAAEsO,OAAO,GACvD,EAOA,EAAoBu2C,EAAI,SAASv2C,EAAOw2C,GAEvC,GADU,EAAPA,IAAUx2C,EAAQ,EAAoBA,IAC/B,EAAPw2C,EAAU,OAAOx2C,EACpB,GAAW,EAAPw2C,GAA8B,kBAAVx2C,GAAsBA,GAASA,EAAMy2C,WAAY,OAAOz2C,EAChF,IAAI02C,EAAKr+B,OAAO1jB,OAAO,MAGvB,GAFA,EAAoByhD,EAAEM,GACtBr+B,OAAO69B,eAAeQ,EAAI,UAAW,CAAEP,YAAY,EAAMn2C,MAAOA,IACtD,EAAPw2C,GAA4B,iBAATx2C,EAAmB,IAAI,IAAIpE,KAAOoE,EAAO,EAAoB+1C,EAAEW,EAAI96C,EAAK,SAASA,GAAO,OAAOoE,EAAMpE,EAAM,EAAEpK,KAAK,KAAMoK,IAC9I,OAAO86C,CACR,EAGA,EAAoBC,EAAI,SAASllD,GAChC,IAAIukD,EAASvkD,GAAUA,EAAOglD,WAC7B,WAAwB,OAAOhlD,EAAgB,OAAG,EAClD,WAA8B,OAAOA,CAAQ,EAE9C,OADA,EAAoBskD,EAAEC,EAAQ,IAAKA,GAC5BA,CACR,EAGA,EAAoBC,EAAI,SAASx3C,EAAQ+qC,GAAY,OAAOnxB,OAAOu+B,UAAUC,eAAehL,KAAKptC,EAAQ+qC,EAAW,EAGpH,EAAoBsN,EAAI,GAIjB,EAAoB,EAAoBC,EAAI,G,oB2BlFrDtlD,EAAOC,QAAU,C,mBqJAjBD,EAAOC,QAAU,C,kBlCAjBD,EAAOC,QAAU,C,kBCAjBD,EAAOC,QAAU,C,mBkCAjBD,EAAOC,QAAU,C,6VmCAjB,YACA,O,uHCAA,eACA,WACA,UACA,WACA,WACA,OACA,QAEA,QACA,Q,mDAEO,MAAM6uE,EAA6B,EACxCxoE,OACAyoE,iBACAC,iBAEA,MAAMtoD,GAAS,IAAAuoD,uBAEGC,EACdH,EADFI,eAAiCC,EAC/BL,EAD+BK,gBAAiBC,EAChDN,EADgDM,qBAAsBzhC,EACtEmhC,EADsEnhC,WAEpE0hC,GAAmB5uE,EAAAA,QAAEuK,QAAQmkE,GAC7BG,EAAU,WAYhB,OAAKD,GAAoBJ,GAAoBG,EAK3C,iDACIC,GAAmBJ,IACnB,+BAAK3oE,WAAW,aAAW,yBAA0BmgB,EAAO8oD,YAC1D,+BACE1lE,GAAIylE,EACJhpE,WAAW,aAAW,oBAAqBmgB,EAAOoxB,OAClD23B,wBAAyB,CACvBC,OAAQ9hC,GAActnC,EAAK2C,UAAUtF,6BAGzC,+BAAK4C,UAAU,sBAAsBghD,KAAK,QAAQ,kBAAiBgoB,GAChED,GACD,wBAAC,EAAAhyB,OAAD,CACE/2C,WAAW,aAAW,8BAA+BmgB,EAAOipD,cAC5Dhe,WAAW,SACXzE,KAAM,wBAAC,EAAA0iB,kBAAD,MACNr2C,QA1BM,KAChBy1C,EAAWt6B,MAAM,6CACjB,aAAE,uBAAuBmyB,OAAzB,GA0BWvgE,EAAK2C,UAAU4mE,EAAAA,wBAAwBC,0BAGzCZ,GACD,wBAAC,EAAA5xB,OAAD,CACE/2C,WAAW,aAAW,8BAA+BmgB,EAAOipD,cAC5Dhe,WAAW,SACXzE,KAAM,wBAAC,EAAA6iB,iBAAD,MACNx2C,QAzCM,KAChBy1C,EAAWt6B,MAAM,mCACjB,aAAE,yBAAyBmyB,OAA3B,GAyCWvgE,EAAK2C,UAAU4mE,EAAAA,wBAAwBG,yBAM/CX,GACC,+BAAK9oE,WAAW,aAAW,gCAAiCmgB,EAAO8oD,YACjE,+BACEjpE,WAAW,aAAW,0CAA2CmgB,EAAOoxB,OACxE23B,wBAAyB,CACvBC,OAAQppE,EAAK2C,UAAUtF,iDACpBsgC,QAAQ,6BAA+B,MAAKorC,EAAqBzhC,qBAGvEyhC,EAAqBN,eAAe7sE,KAAK0jB,IACxC,MAAMqqD,EAAarqD,EAAO5Z,MAAQ1F,EAAK2C,UAAUtF,mBACjD,OACE,wBAAC,EAAA25C,OAAD,CACEnzC,IAAK8lE,EACLte,WAAW,SACXp4B,QAAS3T,EAAO2T,QAChB2zB,KAAM,wBAAC,EAAA0iB,kBAAD,MACNrpE,WAAW,aAAW,mCAAoCmgB,EAAOipD,eAEhEM,EARL,MAjDD,IAGT,E,+BAgEFnB,EAA2BziE,UAAY,CACrC/F,KAAMiG,EAAAA,QAAUD,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,OACpB5E,WACHonE,WAAYziE,EAAAA,QAAUD,MAAM,CAC1BooC,MAAOnoC,EAAAA,QAAUC,OAEnBuiE,eAAgBxiE,EAAAA,QAAUD,MAAM,CAC9B6iE,eAAgB5iE,EAAAA,QAAUI,KAC1ByiE,gBAAiB7iE,EAAAA,QAAUG,OAC3BkhC,WAAYrhC,EAAAA,QAAUG,OACtB2iE,qBAAsB9iE,EAAAA,QAAUD,MAAM,CACpCshC,WAAYrhC,EAAAA,QAAUG,OACtBqiE,eAAgBxiE,EAAAA,QAAUU,QAAQV,EAAAA,QAAUD,MAAM,CAChDN,KAAMO,EAAAA,QAAUM,UAAU,CACxBN,EAAAA,QAAUG,OACVH,EAAAA,QAAUm+B,UAEZnR,QAAShtB,EAAAA,QAAUC,YAGtB5E,YAGLknE,EAA2B1hE,aAAe,CACxC4hE,WAAY,CAAEt6B,MAAOh0C,EAAAA,QAAE2M,M,mBC/HzBrN,EAAOC,QAAUiwE,C,8KCAjB,I,EAAA,G,EAAA,O,2BAEO,MAAMC,EAAgBzG,EAAAA,QAAMM,MAAK,IACtC,+BAAK/iD,MAAM,KAAKiG,OAAO,KAAKkjD,QAAQ,YAAYC,KAAK,OAAOC,MAAM,8BAChE,gCAAMhsB,EAAE,8TAA8T+rB,KAAK,oB,kBAIxU,MAAME,EAAW7G,EAAAA,QAAMM,MAAK,IACjC,+BAAK/iD,MAAM,KAAKiG,OAAO,KAAKkjD,QAAQ,YAAYC,KAAK,OAAOC,MAAM,8BAChE,gCAAMhsB,EAAE,upCAAupC+rB,KAAK,oB,aAIjqC,MAAMT,EAAoBlG,EAAAA,QAAMM,MAAK,IAC1C,+BAAK/iD,MAAM,KAAKiG,OAAO,KAAKkjD,QAAQ,YAAYC,KAAK,OAAOC,MAAM,8BAChE,gCAAMhsB,EAAE,ypDAAypD+rB,KAAK,oB,sBAInqD,MAAMN,EAAmBrG,EAAAA,QAAMM,MAAK,IACzC,+BAAK/iD,MAAM,KAAKiG,OAAO,KAAKkjD,QAAQ,YAAYC,KAAK,OAAOC,MAAM,8BAChE,gCAAMhsB,EAAE,+vCAA+vC+rB,KAAK,oB,qBAIzwC,MAAMG,EAAkB9G,EAAAA,QAAMM,MAAK,IACxC,+BAAKqG,KAAK,eAAe,cAAY,OAAOppD,MAAM,KAAKiG,OAAO,KAAKkjD,QAAQ,YAAYE,MAAM,8BAC3F,gCAAMhsB,EAAE,oXAAoX+rB,KAAK,oB,iKC5B9V,CACrCL,qBAAsBrsE,kBACtBmsE,wBAAyBnsE,kC,gHCF3B,WAEO,MAAMsrE,GAAsB,IAAAje,YAAW,CAC5Cwe,UAAW,CACTz/D,QAAS,OACTmc,cAAe,SACfC,WAAY,UAEd2rB,MAAO,CACL/rB,SAAU6nC,EAAAA,OAAO6c,gBACjBrgE,MAAOwjD,EAAAA,OAAO8c,yBAEhBf,aAAc,CACZ5jD,SAAU6nC,EAAAA,OAAO6c,mB,uICbrB,eACA,WACA,E,uSAAA,OACA,WACA,OACA,QAEA,Q,qcAEO,MAAME,EAAsB,EACjCrqE,OACAyoE,iBACA6B,kBACA5B,aACA6B,wBACI,WAC4B,IAAAzuD,UAASyuD,GADrC,GACGlnB,EADH,KACamnB,EADb,KAGc5B,EACdH,EADFI,eAAiCC,EAC/BL,EAD+BK,gBAAiBC,EAChDN,EADgDM,qBAAsBzhC,EACtEmhC,EADsEnhC,WAEpE0hC,GAAmB5uE,EAAAA,QAAEuK,QAAQmkE,GAiB7B2B,EAAgB,CACpBC,SAAU1qE,EAAK2C,UAAU4mE,EAAAA,wBAAwBG,sBACjDiB,YAAa3qE,EAAK2C,UAAU4mE,EAAAA,wBAAwBC,0BAGtD,OAAKR,GAAoBJ,GAAoBG,EAK3C,wBAAC,EAAA6B,KAAD,CACEC,YAAaP,EACb7d,KAAMpJ,EACNynB,aA5BiB,CAACnpB,EAAGn/C,KACvBgoE,EAAYhoE,EAAKiqD,MACjBic,EAAWt6B,MAAO,qBAAoBiV,EAAW,SAAW,+BAA5D,EA2BEpjD,UAAU,0BAEV,wBAAC,EAAA8qE,YAAD,CAAaC,0BAAwB,GACnC,wBAAC,EAAAC,WAAD,CACEhrE,UAAU,oCACVorD,WAAW,cACXzE,KAAM,wBAAC,EAAAqjB,SAAD,MACNiB,SAAU,wBAAC,EAAArB,cAAD,OAET7pE,EAAK2C,UAAUtF,gBAIpB,wBAAC,EAAA8tE,YAAD,KACE,wBAAC,EAAAC,SAAD,MACIxC,GAAmBI,IACnB,wBAAC,EAAAqC,UAAD,KACE,wBAAC,EAAAC,gBAAD,KAAkBhkC,GAActnC,EAAK2C,UAAUtF,eAC9CurE,GACC,wBAAC,EAAA2C,SAAD,CACEtrE,UAAU,8BACV2mD,KAAM,wBAAC,EAAA6iB,iBAAD,MACNx2C,QA9CE,KAChBy1C,EAAWt6B,MAAM,wCACjB,aAAE,yBAAyBmyB,OAA3B,EA6Cc5P,UAAW8Z,EAAcC,UAExBD,EAAcC,UAGlB1B,GACC,wBAAC,EAAAuC,SAAD,CACEtrE,UAAU,8BACV2mD,KAAM,wBAAC,EAAA0iB,kBAAD,MACNr2C,QAnDE,KAChBy1C,EAAWt6B,MAAM,kDACjB,aAAE,uBAAuBmyB,OAAzB,EAkDc,kBAAiBkK,EAAcE,aAE9BF,EAAcE,cAItB5B,GACC,iDACIC,GAAmBJ,IAAoB,wBAAC,EAAA4C,QAAD,MACzC,wBAAC,EAAAH,UAAD,KACE,wBAAC,EAAAC,gBAAD,KACGvC,EAAqBzhC,YAEvByhC,EAAqBN,eAAe7sE,KAAK0jB,IAC1C,MAAMqqD,EAAarqD,EAAO5Z,MAAQ1F,EAAK2C,UAAUtF,mBACjD,OACE,wBAAC,EAAAkuE,SAAD,CACE3kB,KAAM,wBAAC,EAAAsjB,gBAAD,MACNrmE,IAAK8lE,EACL1pE,UAAU,qCACVgzB,QAAS3T,EAAO2T,QAChB,kBAAiB3T,EAAO5Z,MAEvBikE,EARL,SAxDL,IAGT,E,wBA0EFU,EAAoBtkE,UAAY,CAC9B/F,KAAMiG,EAAAA,QAAUD,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,OACpB5E,WACHgpE,gBAAiBrkE,EAAAA,QAAUG,OAC3BsiE,WAAYziE,EAAAA,QAAUD,MAAM,CAC1BooC,MAAOnoC,EAAAA,QAAUC,OAEnBuiE,eAAgBxiE,EAAAA,QAAUD,MAAM,CAC9B6iE,eAAgB5iE,EAAAA,QAAUI,KAC1ByiE,gBAAiB7iE,EAAAA,QAAUG,OAC3BkhC,WAAYrhC,EAAAA,QAAUG,OACtB2iE,qBAAsB9iE,EAAAA,QAAUD,MAAM,CACpCshC,WAAYrhC,EAAAA,QAAUG,OACtBqiE,eAAgBxiE,EAAAA,QAAUU,QAAQV,EAAAA,QAAUD,MAAM,CAChDN,KAAMO,EAAAA,QAAUM,UAAU,CACxBN,EAAAA,QAAUG,OACVH,EAAAA,QAAUm+B,UAEZnR,QAAShtB,EAAAA,QAAUC,YAGtB5E,WACHipE,kBAAmBtkE,EAAAA,QAAUI,MAG/BgkE,EAAoBvjE,aAAe,CACjCwjE,gBAAiB,cACjBC,mBAAmB,EACnB7B,WAAY,CAAEt6B,MAAOh0C,EAAAA,QAAE2M,M,wN1NpJvB,IAAI22C,EAAmB,CAAC,EAGxB,SAAS,EAAoBC,GAG5B,GAAGD,EAAiBC,GACnB,OAAOD,EAAiBC,GAAUhkD,QAGnC,IAAID,EAASgkD,EAAiBC,GAAY,CACzCl/C,EAAGk/C,EACHC,GAAG,EACHjkD,QAAS,CAAC,GAUX,OANAkkD,EAAQF,GAAU7J,KAAKp6C,EAAOC,QAASD,EAAQA,EAAOC,QAAS,GAG/DD,EAAOkkD,GAAI,EAGJlkD,EAAOC,OACf,CAyDA,OArDA,EAAoBmkD,EAAID,EAGxB,EAAoBE,EAAIL,EAGxB,EAAoBM,EAAI,SAASrkD,EAASY,EAAM0jD,GAC3C,EAAoBC,EAAEvkD,EAASY,IAClC+lB,OAAO69B,eAAexkD,EAASY,EAAM,CAAE6jD,YAAY,EAAMxgC,IAAKqgC,GAEhE,EAGA,EAAoBI,EAAI,SAAS1kD,GACX,qBAAX2kD,QAA0BA,OAAOC,aAC1Cj+B,OAAO69B,eAAexkD,EAAS2kD,OAAOC,YAAa,CAAEt2C,MAAO,WAE7DqY,OAAO69B,eAAexkD,EAAS,aAAc,CAAEsO,OAAO,GACvD,EAOA,EAAoBu2C,EAAI,SAASv2C,EAAOw2C,GAEvC,GADU,EAAPA,IAAUx2C,EAAQ,EAAoBA,IAC/B,EAAPw2C,EAAU,OAAOx2C,EACpB,GAAW,EAAPw2C,GAA8B,kBAAVx2C,GAAsBA,GAASA,EAAMy2C,WAAY,OAAOz2C,EAChF,IAAI02C,EAAKr+B,OAAO1jB,OAAO,MAGvB,GAFA,EAAoByhD,EAAEM,GACtBr+B,OAAO69B,eAAeQ,EAAI,UAAW,CAAEP,YAAY,EAAMn2C,MAAOA,IACtD,EAAPw2C,GAA4B,iBAATx2C,EAAmB,IAAI,IAAIpE,KAAOoE,EAAO,EAAoB+1C,EAAEW,EAAI96C,EAAK,SAASA,GAAO,OAAOoE,EAAMpE,EAAM,EAAEpK,KAAK,KAAMoK,IAC9I,OAAO86C,CACR,EAGA,EAAoBC,EAAI,SAASllD,GAChC,IAAIukD,EAASvkD,GAAUA,EAAOglD,WAC7B,WAAwB,OAAOhlD,EAAgB,OAAG,EAClD,WAA8B,OAAOA,CAAQ,EAE9C,OADA,EAAoBskD,EAAEC,EAAQ,IAAKA,GAC5BA,CACR,EAGA,EAAoBC,EAAI,SAASx3C,EAAQ+qC,GAAY,OAAOnxB,OAAOu+B,UAAUC,eAAehL,KAAKptC,EAAQ+qC,EAAW,EAGpH,EAAoBsN,EAAI,GAIjB,EAAoB,EAAoBC,EAAI,K,oBgLlFrDtlD,EAAOC,QAAUspD,C,mBCAjBvpD,EAAOC,QAAUupD,C,oB5FAjBxpD,EAAOC,QAAU,C,mOsIAjB,a,2LCAA,a,6eCAA,cACA,UACA,UACA,S,0GCHA,M,uSAAA,OACA,WACA,WACA,SACA,QACA,SACA,UACA,UACA,UACA,UACA,U,mDAEO,SAAS8xE,GAAiB,UAC/BxrE,EAD+B,KAE/BD,EAF+B,YAG/B0rE,EAH+B,eAI/BC,EAJ+B,SAK/BC,EAL+B,cAM/Bl/B,EAN+B,qBAO/Bm/B,EAP+B,SAQ/BC,EAR+B,MAS/BC,EAT+B,YAU/BC,EAV+B,SAW/BC,EAX+B,QAY/Bx6C,EAZ+B,kBAa/By6C,IAEA,MAAMzvD,GAAU,IAAA0H,kBAAiBgoD,EAAAA,2BAC3BC,GAAmB,IAAAjrE,UAAQ,KAAM,IAAAkrE,kBAAiB,CAAET,WAAUl/B,mBAAkB,CAACk/B,EAAUl/B,IAGjG,OACE,wBAAC,EAAA0d,UAAD,CACEC,SAAUshB,EACVniB,YAAaxpD,EAAK2C,UAAUtF,cAC5Bof,QAAS,CACP6vD,iBAAkB,iBAClBC,iBAAkB,sBAGpB,+BAAKtsE,WAAW,aAAW,oBAAqBA,IAC7C4rE,GACC,+BAAK5rE,WAAW,aAAW,sBAAuBwc,EAAQ+vD,oBACvDxsE,EAAK2C,UAAUtF,wEAGlBsuE,GACA,+BAAK1rE,WAAW,aAAW,cAAewc,EAAQgwD,aAChD,wBAAC,EAAAC,IAAD,KACE,wBAAC,EAAAC,IAAD,CAAKC,GAAI,GACP,wBAAC,EAAAC,oBAAD,CACE7sE,KAAMA,EACN0rE,YAAaA,EACbK,MAAOA,EACPD,SAAUA,EACVliB,UAAW+hB,GAEX,wBAAC,EAAAmB,aAAD,CACEC,eAAgBX,EAChBL,MAAOA,MAIb,wBAAC,EAAAY,IAAD,CAAKC,GAAI,GACP,wBAAC,EAAAI,kBAAD,CACEhtE,KAAMA,EACNywD,SAAU/jB,EACVu/B,SAAUA,EACVD,YAAaA,OAKvB,+BAAK/rE,WAAW,aAAWwc,EAAQsW,QAAS,YAC1C,wBAAC,EAAAikB,OAAD,CAAQ/2C,WAAW,aAAWwc,EAAQwwD,aAAc,QAAS,eAAgBh6C,QAASxB,GAAUzxB,EAAK2C,UAAUtF,SAC/G,wBAAC,EAAA25C,OAAD,CAAQ/2C,WAAW,aAAWwc,EAAQwwD,aAAc,SAAU,eAAgBh6C,QAASi5C,GAAoBlsE,EAAK2C,UAAUtF,aAKnI,CAEDouE,EAAiB1lE,UAAY,CAC3B9F,UAAWgG,EAAAA,QAAUG,OACrBpG,KAAMiG,EAAAA,QAAUD,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,KAAK5E,aACzBA,WACHoqE,YAAazlE,EAAAA,QAAUD,MAAM,CAC3BknE,cAAejnE,EAAAA,QAAUI,KACzB8mE,SAAUlnE,EAAAA,QAAUC,KACpBia,YAAala,EAAAA,QAAUG,SACtB9E,WACHqqE,eAAgB1lE,EAAAA,QAAUI,KAC1BulE,SAAU3lE,EAAAA,QAAUU,QAAQV,EAAAA,QAAUD,MAAM,CAC1CzL,KAAM0L,EAAAA,QAAUG,OAChB5C,GAAIyC,EAAAA,QAAUM,UAAU,CAACN,EAAAA,QAAUG,OAAQH,EAAAA,QAAUK,YACnDhF,WACJorC,cAAezmC,EAAAA,QAAUU,QAAQV,EAAAA,QAAUD,MAAM,CAC/CzL,KAAM0L,EAAAA,QAAUG,OAChB5C,GAAIyC,EAAAA,QAAUM,UAAU,CAACN,EAAAA,QAAUG,OAAQH,EAAAA,QAAUK,YACnDhF,WACJuqE,qBAAsB5lE,EAAAA,QAAUI,KAChCylE,SAAU7lE,EAAAA,QAAUC,KAAK5E,WACzByqE,MAAO9lE,EAAAA,QAAUC,KAAK5E,WACtB0qE,YAAa/lE,EAAAA,QAAUC,KAAK5E,WAC5B2qE,SAAUhmE,EAAAA,QAAUC,KAAK5E,WACzBmwB,QAASxrB,EAAAA,QAAUC,KAAK5E,WACxB4qE,kBAAmBjmE,EAAAA,QAAUC,KAAK5E,YAIpCmqE,EAAiB3kE,aAAe,CAC9B7G,UAAW,KACX0rE,eAAgB,KAChBE,sBAAsB,E,6GClHxB,M,uSAAA,OACA,WACA,WACA,UACA,SACA,SACA,QACA,UACA,U,qcAEO,SAASgB,GAAoB,KAClC7sE,EADkC,YAElC0rE,EAFkC,SAGlCz8C,EAHkC,SAIlC68C,IAEA,MAAMrvD,GAAU,IAAA0H,kBAAiBipD,EAAAA,sBADhC,GAWG,IAAAjsE,UAAQ,IAAMuqE,GAAa,CAACA,IAR9BwB,EAHD,EAGCA,cACUG,EAJX,EAICF,SACAhtD,EALD,EAKCA,YACAmtD,EAND,EAMCA,UACAC,EAPD,EAOCA,kBACAC,EARD,EAQCA,kBACAC,EATD,EASCA,sBACAC,EAVD,EAUCA,mBAVD,KAYqC,IAAA5xD,UAAS2xD,EAAwBC,EAAmB,GAAGzlE,MAAQ,MAZpG,GAYM0lE,EAZN,KAYmBC,EAZnB,KAoBD,OACE,+BAAK3tE,WAAW,aAAW,eAAgBwc,EAAQoxD,cACjD,+BAAK5tE,WAAW,aAAW,sBAAuBwc,EAAQqxD,oBAAqB9tE,EAAK2C,UAAUtF,oBAC9F,+BAAK4C,UAAWwc,EAAQsxD,oBACrBb,GACC,+BAAKjtE,WAAW,aAAW,eAAgBwc,EAAQuxD,cACjD,+BAAK/tE,WAAW,aAAW,mBAAoBwc,EAAQwxD,iBACrD,wBAAC,EAAAC,UAAD,CACEf,SAfQgB,IACpBd,EAAc,CAAEe,WAAYD,EAASjmB,OAAQylB,eAA7C,EAeYU,cAAed,EACftlE,MAAOqlE,EACPntD,YAAaA,EACbmuD,UAAWC,EAAAA,iBACXC,YAAa,CAAC,SAAU,gBAAiB/xD,EAAQgyD,cAEnD,wBAAC,EAAA97C,UAAD,CAAW1yB,WAAW,aAAWwc,EAAQiyD,UAAW,eAAgB97C,MAAM,YAAYK,QAASu6C,KAEhGC,GACC,+BAAKxtE,WAAW,aAAWwc,EAAQkyD,kBAAmB,0BACpD,wBAAC,EAAAzyB,OAAD,CAAQ14C,GAAG,wBAAwByE,MAAO0lE,EAAatoE,SAvBpCC,IAC/BsoE,EAAetoE,EAAMC,OAAO0C,MAA5B,EAsBsG,aAAYjI,EAAK2C,UAAUtF,0BAClHjD,EAAAA,QAAEwB,IAAI8xE,GAAoBpuD,GACzB,kCAAQzb,IAAKyb,EAAOrX,MAAOzE,GAAK,qBAAoB8b,EAAOrX,QAASA,MAAOqX,EAAOrX,OAC/EjI,EAAK2C,UAAU2c,EAAOsvD,gBAOrC,wBAAC,EAAAlC,IAAD,KACE,wBAAC,EAAAC,IAAD,CACEC,GAAI,GACJ3sE,UAAU,sBAEV,+BAAK4D,IAAI,yBAAyB5D,UAAU,qBAC1C,+BAAKghD,KAAK,eAAehuB,QAAS64C,EAAU7rE,WAAW,aAAW,iBAAkBwc,EAAQoyD,SAC1F,gCAAM5uE,WAAW,aAAWwc,EAAQqyD,WAAY,cAAe9uE,EAAK2C,UAAUtF,YAAyB,IACvG,wBAAC,EAAAs1B,UAAD,CAAWC,MAAM,2BAElB3D,MAOd,CAED49C,EAAoB9mE,UAAY,CAC9B/F,KAAMiG,EAAAA,QAAUD,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,KAAK5E,aACzBA,WACHoqE,YAAazlE,EAAAA,QAAUD,MAAM,CAC3BknE,cAAejnE,EAAAA,QAAUI,KACzB8mE,SAAUlnE,EAAAA,QAAUC,KACpBia,YAAala,EAAAA,QAAUG,OACvBqnE,sBAAuBxnE,EAAAA,QAAUI,KACjCqnE,mBAAoBznE,EAAAA,QAAUU,QAAQV,EAAAA,QAAUD,MAAM,CACpDiC,MAAOhC,EAAAA,QAAUG,OACjB2oE,SAAU9oE,EAAAA,QAAUG,YAGxB6oB,SAAUhpB,EAAAA,QAAUhJ,KACpB6uE,SAAU7lE,EAAAA,QAAUC,KAAK5E,YAG3BurE,EAAoB/lE,aAAe,CACjCmoB,SAAU,KACVy8C,YAAa,CACXwB,eAAe,EACfO,uBAAuB,EACvBC,mBAAoB,I,qaC1GxB,cACA,UACA,S,mHCFA,c,uBAEoC,KAAM,CACxCG,YAAa,CACXjnD,OAAQooD,EAAAA,iBAAiBC,iBACzB3oD,OAAQ0oD,EAAAA,iBAAiBE,gBACzB36B,cAAe,GACf,uBAAwB,CACtBA,aAAc,IAEhB,oBAAqB,CACnBhM,SAAU,YAEZ,uBAAwB,CACtBA,SAAU,WACV7hB,IAAK,IACLyoD,MAAO,MAGXpB,mBAAoB,CAClBrtD,QAAS,IAEX+tD,WAAY,CACVlmC,SAAU,sBACV4mC,MAAO,GACP/6B,WAAY,GAEd45B,YAAa,CACXvkE,QAAS,OACTmc,cAAe,MACfC,WAAY,UAEdooD,eAAgB,CACd1lC,SAAU,WACV6mC,SAAU,GAEZT,kBAAmB,CACjBhuD,MAAO,OAET0uD,iBAAkB,CAChBzoD,OAAQ,OACRlG,QAAS,eACTjX,QAAS,OACTkc,eAAgB,gBAChB,cAAe,CACb2pD,QAAS,KAGbC,qBAAsB,CACpBjqD,YAAa,GACbojB,SAAU,SACV3iB,WAAY,SACZypD,UAAW,YACXnnC,aAAc,YAEhBonC,kBAAmB,CACjBC,OAAQ,WAEVC,0BAA2B,CACzBD,OAAQ,eAEVE,aAAc,CACZhpD,OAAQooD,EAAAA,iBAAiBa,mBACzBrpD,OAAQ,OACRkiB,SAAU,QAEZmmC,OAAQ,CACNa,OAAQ,UACRhvD,QAAS,SAEXouD,WAAY,CACVhlE,MAAOklE,EAAAA,iBAAiBc,WAE1BhC,kBAAmBiC,EAAAA,YACnBrB,UAAW,CACTnmC,SAAU,sBACV4mC,MAAO,GACPzoD,IAAK,kBAEPspD,kBAAmB,CACjBlmE,MAAO,S,6HChFJ,MAAMklE,EAAmB,CAC9BC,iBAAkB,IAClBa,UAAW,UACXG,0BAA2B,UAC3Bf,gBAAiB,oBACjBW,mBAAoB,IACpBK,iBAAkB,K,qBAGb,MAAMH,EAAc,CACzB5pD,gBAAiB6oD,EAAiBiB,0BAClCrpD,OAAQ,GACRlG,QAAS,UACTE,WAAY,OACZ8nB,SAAU,U,gICdZ,c,qBAEkC,KAAM,CACtCynC,cAAe,CACb7pD,OAAQ0oD,EAAAA,iBAAiBE,gBACzBtoD,OAAQooD,EAAAA,iBAAiBC,iBACzBvuD,QAAS,kBAEX0vD,iBAAkBL,EAAAA,YAClBM,oBAAqB,CACnB/rC,MAAO,OACP5jB,QAAS,SACTgvD,OAAQ,WAEVY,WAAY,CACVl8B,WAAY,EACZxtB,OAAQooD,EAAAA,iBAAiBkB,iBACzBxnC,SAAU,QAEZ6nC,eAAgB,CACd7vD,QAAS,SACTwzB,cAAe,IAEjBs8B,sBAAuB,CACrB9vD,QAAS,QACTyF,gBAAiB,UACjBG,OAAQ,qBAEV0H,SAAU,CACR/H,YAAa,EACbF,WAAY,SACZ2iB,SAAU,SACVL,aAAc,YAEhBooC,UAAW,CACTf,OAAQ,UACRhvD,QAAS,sBACTgwD,WAAY,IAEdC,cAAe,CACb7mE,MAAOklE,EAAAA,iBAAiBc,Y,wHCxC5B,c,4BAEyC,KAAM,CAC7CtD,kBAAmB,CACjBvmD,YAAa,GACbtc,UAAW,GACXinE,MAAO,OACP9mE,MAAO,OAET2iE,WAAY,CACVjmD,OAAQ,GACR7F,MAAO,IACPiG,OAAQooD,EAAAA,iBAAiBC,kBAE3Bl8C,QAAS,CACPppB,UAAW,IAEbsjE,aAAc,CACZzmD,OAAQ,I,yLClBoB,I,2BACQ,I,4BACC,G,2GCFzC,cACA,WACA,WACA,UACA,SACA,QACA,U,mDAEO,SAASwmD,GAAkB,KAChChtE,EADgC,SAEhCywD,EAFgC,YAGhCub,EAHgC,SAIhCC,IAEA,MAAMxvD,GAAU,IAAA0H,kBAAiB0sD,EAAAA,oBAmBjC,OACE,+BAAK5wE,WAAW,aAAWwc,EAAQ0zD,cAAe,oBAChD,+BAAKlwE,WAAW,aAAW,qBAAsBwc,EAAQ2zD,mBAAoBpwE,EAAK2C,UAAUtF,mBAC5F,+BAAK4jD,KAAK,eAAehhD,WAAW,aAAW,oBAAqBwc,EAAQg0D,WAAYx9C,QAAS+4C,EAAa8E,UAAW9E,GACvH,wBAAC,EAAAr5C,UAAD,CAAWC,MAAM,yBAA0B,IAC3C,gCAAM3yB,UAAWwc,EAAQk0D,cAAezvB,SAAU,EAAGD,KAAK,UAAUjhD,EAAK2C,UAAUtF,gBAErF,+BAAK4C,WAAW,aAAWwc,EAAQ6zD,WAAY,gBAC5C7f,EAASj1D,OAAS,GAAKpB,EAAAA,QAAEwB,IAAI60D,GAAUnxC,GA1BrB,GAAG/kB,OAAMiJ,QAChC,+BAAKK,IAAKL,EAAIvD,WAAW,aAAW,mBAAoBwc,EAAQ8zD,iBAC9D,+BAAKtwE,UAAWwc,EAAQ+zD,uBACtB,gCACEvvB,KAAK,SACLhhD,WAAW,aAAWwc,EAAQ4zD,oBAAqB,0BACnDnvB,SAAU,EACVjuB,QAAS,IAAMg5C,EAAS,CAAE1xE,OAAMiJ,OAChCstE,UAAW,IAAM7E,EAAS,CAAE1xE,OAAMiJ,QAElC,wBAAC,EAAAmvB,UAAD,CAAWC,MAAM,0BAEnB,+BAAK3yB,UAAWwc,EAAQuR,SAAUwjB,MAAOj3C,GACtCA,KAa+Cw2E,CAAiBzxD,MAI1E,CAED0tD,EAAkBjnE,UAAY,CAC5B/F,KAAMiG,EAAAA,QAAUD,MAAM,CACpBrD,UAAWsD,EAAAA,QAAUC,KAAK5E,aACzBA,WACHmvD,SAAUxqD,EAAAA,QAAUU,QAAQV,EAAAA,QAAUD,MAAM,CAC1CzL,KAAM0L,EAAAA,QAAUG,OAChB5C,GAAIyC,EAAAA,QAAUM,UAAU,CAACN,EAAAA,QAAUG,OAAQH,EAAAA,QAAUK,YACnDhF,WACJ0qE,YAAa/lE,EAAAA,QAAUC,KAAK5E,WAC5B2qE,SAAUhmE,EAAAA,QAAUC,KAAK5E,YAG3B0rE,EAAkBlmE,aAAe,CAAC,C,sGC3DlC,cACA,WACA,WACA,UACA,SACA,QACA,UACA,U,mDAEO,SAASgmE,GAAa,eAC3BC,EAD2B,UACXiE,EADW,MACAjF,IAE3B,MAAMtvD,GAAU,IAAA0H,kBAAiBipD,EAAAA,sBAC3B6D,EAAc,EAAGvwB,QAAO78C,MAAKwgC,YACjC,MAAM/kB,EAASytD,EAAersB,GAQ9B,OACE,+BACEzgD,WAAW,aAAW,qBAAsBwc,EAAQ4yD,iBAAkB/vD,EAAO4xD,WAAa,WAAa,aAAc5xD,EAAO9Z,SAAW,WAAa,WACpJ3B,IAAKA,EACLwgC,MAAOA,GAEP,+BAAKpkC,WAAW,aAAW,0BAA2Bwc,EAAQ8yD,sBAAuB/9B,MAAOlyB,EAAO/kB,KAAM,UAAS+kB,EAAO9b,IACtH8b,EAAO/kB,MAEV,wBAAC,EAAAo4B,UAAD,CACEC,MAAM,wBACNK,QAlBY,KACZ3T,EAAO9Z,UAAY8Z,EAAO4xD,YAG9BnF,EAAMzsD,EAAN,EAeIrf,WAAW,aAAWwc,EAAQgzD,kBAAmB,sBAAuBnwD,EAAO4xD,YAAcz0D,EAAQuzD,kBAAmB1wD,EAAO9Z,UAAYiX,EAAQkzD,0BAA2BrwD,EAAO9Z,SAAW,WAAa,aAZnN,EAkBF,OACE,+BAAKvF,WAAW,aAAWwc,EAAQmzD,aAAc,kBAC/C,wBAAC,EAAAuB,UAAD,CAAWC,cAAeC,EAAAA,0BAA2BC,aAAcC,EAAAA,2BAChE,EAAG5wD,QAAOiG,YACT,wBAAC,EAAA4qD,KAAD,CACE7wD,MAAOA,EACPiG,OAAQA,EACR6qD,SAAU1E,EAAevxE,OACzBw1E,UAAWA,EACXC,YAAaA,MAMxB,CAEDnE,EAAa/mE,UAAY,CACvBgnE,eAAgB9mE,EAAAA,QAAUU,QAAQV,EAAAA,QAAUD,MAAM,CAChDzL,KAAM0L,EAAAA,QAAUG,OAChB5C,GAAIyC,EAAAA,QAAUM,UAAU,CAACN,EAAAA,QAAUG,OAAQH,EAAAA,QAAUK,SACrDd,SAAUS,EAAAA,QAAUI,KACpB6qE,WAAYjrE,EAAAA,QAAUI,QACpB/E,WACJ0vE,UAAW/qE,EAAAA,QAAUK,OACrBylE,MAAO9lE,EAAAA,QAAUC,KAAK5E,YAGxBwrE,EAAahmE,aAAe,CAC1BkqE,UAAW,G,qBCrEbt3E,EAAOC,QAAU+3E,C,wGCEV,UAA0B,SAAE9F,EAAF,cAAYl/B,IAC3C,OAAOk/B,EAAShwE,KAAIoqC,G,uUAAQ,CAAJ,GACnBA,EADmB,CAEtBkrC,gBAAuDrpE,IAA3CzN,EAAAA,QAAE0iB,KAAK4vB,EAAe,CAAElpC,GAAIwiC,EAAKxiC,QAEhD,EAPD,I,EAAA,G,EAAA,O,uKCAA9J,EAAOC,QAAUg4E,C,kB5FAjBj4E,EAAOC,QAAU4rD,C,oB6FAjB7rD,EAAOC,QAAUi4E,C,mBCAjBl4E,EAAOC,QAAUk4E,C,kBjNAjBn4E,EAAOC,QAAU,C,iM3BCf,IAAI+jD,EAAmB,CAAC,EAGxB,SAAS,EAAoBC,GAG5B,GAAGD,EAAiBC,GACnB,OAAOD,EAAiBC,GAAUhkD,QAGnC,IAAID,EAASgkD,EAAiBC,GAAY,CACzCl/C,EAAGk/C,EACHC,GAAG,EACHjkD,QAAS,CAAC,GAUX,OANAkkD,EAAQF,GAAU7J,KAAKp6C,EAAOC,QAASD,EAAQA,EAAOC,QAAS,GAG/DD,EAAOkkD,GAAI,EAGJlkD,EAAOC,OACf,CAyDA,OArDA,EAAoBmkD,EAAID,EAGxB,EAAoBE,EAAIL,EAGxB,EAAoBM,EAAI,SAASrkD,EAASY,EAAM0jD,GAC3C,EAAoBC,EAAEvkD,EAASY,IAClC+lB,OAAO69B,eAAexkD,EAASY,EAAM,CAAE6jD,YAAY,EAAMxgC,IAAKqgC,GAEhE,EAGA,EAAoBI,EAAI,SAAS1kD,GACX,qBAAX2kD,QAA0BA,OAAOC,aAC1Cj+B,OAAO69B,eAAexkD,EAAS2kD,OAAOC,YAAa,CAAEt2C,MAAO,WAE7DqY,OAAO69B,eAAexkD,EAAS,aAAc,CAAEsO,OAAO,GACvD,EAOA,EAAoBu2C,EAAI,SAASv2C,EAAOw2C,GAEvC,GADU,EAAPA,IAAUx2C,EAAQ,EAAoBA,IAC/B,EAAPw2C,EAAU,OAAOx2C,EACpB,GAAW,EAAPw2C,GAA8B,kBAAVx2C,GAAsBA,GAASA,EAAMy2C,WAAY,OAAOz2C,EAChF,IAAI02C,EAAKr+B,OAAO1jB,OAAO,MAGvB,GAFA,EAAoByhD,EAAEM,GACtBr+B,OAAO69B,eAAeQ,EAAI,UAAW,CAAEP,YAAY,EAAMn2C,MAAOA,IACtD,EAAPw2C,GAA4B,iBAATx2C,EAAmB,IAAI,IAAIpE,KAAOoE,EAAO,EAAoB+1C,EAAEW,EAAI96C,EAAK,SAASA,GAAO,OAAOoE,EAAMpE,EAAM,EAAEpK,KAAK,KAAMoK,IAC9I,OAAO86C,CACR,EAGA,EAAoBC,EAAI,SAASllD,GAChC,IAAIukD,EAASvkD,GAAUA,EAAOglD,WAC7B,WAAwB,OAAOhlD,EAAgB,OAAG,EAClD,WAA8B,OAAOA,CAAQ,EAE9C,OADA,EAAoBskD,EAAEC,EAAQ,IAAKA,GAC5BA,CACR,EAGA,EAAoBC,EAAI,SAASx3C,EAAQ+qC,GAAY,OAAOnxB,OAAOu+B,UAAUC,eAAehL,KAAKptC,EAAQ+qC,EAAW,EAGpH,EAAoBsN,EAAI,GAIjB,EAAoB,EAAoBC,EAAI,K,oBgLlFrDtlD,EAAOC,QAAUspD,C,oB3FAjBvpD,EAAOC,QAAU,C,qkBwJAjB,cACA,S,0ICDA,I,EAAA,E,uSAAA,OACA,G,EAAA,Q,2BACA,SACA,QACA,UACA,UAMA,MAAMm4E,EAAe,qBACd,MAAMC,UAA0BjN,EAAAA,cACrCxB,WAAAA,CAAYv7D,GACVw7D,MAAMx7D,G,6GADW,kBAiBR,KACTioC,KAAK4V,UAAS,EAAGvC,eAAH,CAAqBA,UAAWA,KAA9C,IAlBiB,MAETA,EAAat7C,EAAbs7C,SAERrT,KAAK0Z,MAAQ,CACXrG,SAAAA,EAEH,CAED8gB,iBAAAA,GACEn0B,KAAKgiC,qBACN,CAED3N,kBAAAA,GACEr0B,KAAKgiC,qBACN,CAMDA,mBAAAA,GAEE,MAAMC,EAAgBnP,SAASoP,eAAeJ,GAC9C,GAAIG,EAAe,CACbA,EAAcE,aAAa,SAC7BF,EAAcG,gBAAgB,QAEhC,MAAMC,EAAUJ,EAAcK,uBAAuB,iBACjDD,GAAWA,EAAQ,IACjBA,EAAQ,GAAGF,aAAa,SAC1BE,EAAQ,GAAGD,gBAAgB,OAGhC,CACF,CAEDnzD,MAAAA,GAAS,QAOH+wB,KAAKjoC,MALP0U,EAFK,EAELA,QACA+0B,EAHK,EAGLA,MACA+gC,EAJK,EAILA,SACAC,EALK,EAKLA,oBACAC,EANK,EAMLA,UAGMpvB,EAAarT,KAAK0Z,MAAlBrG,SAEFqvB,EAAiB,+BAAKzyE,UAAWwc,EAAQi2D,eAAe,wBAAC,EAAA//C,UAAD,CAAWC,MAAM,gBAE/E,OACE,wBAAC,EAAA+/C,WAAD,CACEnvE,GAAIsuE,EACJW,UAAWA,EACXxyE,UAAWwc,EAAQm2D,kBACnBC,UAAWxvB,EAAW,IAAM,KAC5Bpf,SAAU+L,KAAK/L,UAEf,wBAAC,EAAAkD,MAAD,CAAO2rC,SAAS,KACd,wBAAC,EAAA3rC,MAAM4rC,QAAP,KACE,wBAAC,EAAA5rC,MAAM6rC,MAAP,CAAaC,QAAM,GAAEzhC,IAEvB,wBAAC,EAAArK,MAAM+rC,SAAP,CACEC,UAAWC,EAAAA,2BACXC,SAAUD,EAAAA,4BAEV,+BAAKnzE,UAAWwc,EAAQ62D,gBACrBf,GAEH,+BAAKtyE,UAAWwc,EAAQ82D,mBAEpBf,EAAoB52E,KAAI,CAAC43E,EAAW9yB,IAElC,wBAAC,UAAMrxB,SAAP,CAAgBxrB,IAAK68C,GAClBA,EAAQ,EAAIgyB,EAAgB,KAC7B,+BAAKzyE,UAAWwc,EAAQ+2D,WACrBA,SAUpB,E,sBAGHzB,EAAkBhsE,UAAY,CAC5B0W,QAASxW,EAAAA,QAAUD,MAAM,CACvB4sE,kBAAmB3sE,EAAAA,QAAUG,SAC5B9E,WACHkwC,MAAOvrC,EAAAA,QAAUG,OAAO9E,WACxBixE,SAAUtsE,EAAAA,QAAUm+B,QACpBouC,oBAAqBvsE,EAAAA,QAAUU,QAAQV,EAAAA,QAAUm+B,SAAS9iC,WAC1DmxE,UAAWxsE,EAAAA,QAAUI,KACrBg9C,SAAUp9C,EAAAA,QAAUI,MAGtB0rE,EAAkBjrE,aAAe,CAC/ByrE,SAAU,KACVE,WAAW,EACXpvB,UAAU,GAGL,MAAMowB,GACX,IAAAC,mBAAkB3B,EAAmB4B,EAAAA,4B,gDCxHvCj6E,EAAOC,QAAUi6E,C,sJCAyB,KAAM,CAC9ChB,kBAAmB,CACjB3sD,YAAa,GACbkuB,aAAc,oBACdxqC,UAAW,GAEX,sCAAuC,CACrCG,MAAO,UACP2b,SAAU,IAEZ,4CAA6C,CAC3CA,SAAU,GACV2uB,WAAY,EACZnuB,YAAa,EACbiuB,cAAe,EACfK,aAAc,EACds/B,UAAW,kBAEb,sDAAuD,CACrDA,UAAW,iBAEb,oBAAqB,CACnBnzD,QAAS,wBAGb6yD,kBAAmB,CACjB9pE,QAAS,QAEX+pE,UAAW,CACTrtD,gBAAiB,UACjBzF,QAAS,GACT6E,KAAM,WAERmtD,cAAe,CACbhpE,WAAY,GACZ4b,YAAa,GACb7b,QAAS,OACToc,WAAY,UAEdytD,eAAgB,CACdp/B,cAAe,EACftqC,aAAc,EACdE,MAAO,UACP2b,SAAU,K,kJC3Cd,iBACA,UACA,YACA,U,mDAKO,MAAMquD,UAAoCziC,EAAAA,QAASC,KACxDX,UAAAA,EAAW,MACTa,EADS,SACF+gC,EADE,oBACQC,EADR,UAC6BC,EAD7B,SACwCpvB,GAAW,IAE5DrT,KAAKwB,MAAQA,EACbxB,KAAKuiC,SAAWA,EAChBviC,KAAKwiC,oBAAsBA,EAC3BxiC,KAAKyiC,UAAYA,EACjBziC,KAAKqT,SAAWA,CACjB,CAEDpkC,MAAAA,GAYE,OAXA+jD,EAAAA,QAAS/jD,OAEL,wBAAC,EAAAw0D,wBAAD,CACEjiC,MAAOxB,KAAKwB,MACZ+gC,SAAUviC,KAAKuiC,SACfC,oBAAqBxiC,KAAKwiC,oBAC1BC,UAAWziC,KAAKyiC,UAChBpvB,SAAUrT,KAAKqT,WAEhBrT,KAAKiB,IAEHjB,IACR,CAEDyW,MAAAA,GAEE,OADAuc,EAAAA,QAAS+Q,uBAAuB/jC,KAAKiB,IAC9BsyB,MAAM9c,QACd,E,gCAGI,MAAMutB,UAA8B3iC,EAAAA,QAASC,KAClDX,UAAAA,EAAW,MACTa,EADS,SACF+gC,EADE,oBACQC,EADR,UAC6BC,GAAY,EADzC,SAC+CpvB,GAAW,IAEnErT,KAAKwB,MAAQA,EACbxB,KAAKuiC,SAAWA,EAChBviC,KAAKwiC,oBAAsBA,EAC3BxiC,KAAKyiC,UAAYA,EACjBziC,KAAKqT,SAAWA,CACjB,CAEDpkC,MAAAA,GAYE,OAXA+jD,EAAAA,QAAS/jD,OAEL,wBAAC,EAAA8yD,kBAAD,CACEvgC,MAAOxB,KAAKwB,MACZ+gC,SAAUviC,KAAKuiC,SACfC,oBAAqBxiC,KAAKwiC,oBAC1BC,UAAWziC,KAAKyiC,UAChBpvB,SAAUrT,KAAKqT,WAEhBrT,KAAKiB,IAEHjB,IACR,CAEDyW,MAAAA,GAEE,OADAuc,EAAAA,QAAS+Q,uBAAuB/jC,KAAKiB,IAC9BsyB,MAAM9c,QACd,E,8CvHrEH/sD,EAAOC,QAAU,C,kBoBAjBD,EAAOC,QAAU4rD,C,mB8FAjB7rD,EAAOC,QAAU,C,oB7CAjBD,EAAOC,QAAU6oE,C,kEmDAjB,IAAiDhmE,EAS7B,qBAATy3E,MAAuBA,KATez3E,EASD,SAASgpD,EAAgC0uB,EAAgCC,EAAgCnxB,EAAgCC,EAAiCC,EAAiCkxB,EAAiCC,GAC5R,mBlPTE,IAAI32B,EAAmB,CAAC,EAGxB,SAAS,EAAoBC,GAG5B,GAAGD,EAAiBC,GACnB,OAAOD,EAAiBC,GAAUhkD,QAGnC,IAAID,EAASgkD,EAAiBC,GAAY,CACzCl/C,EAAGk/C,EACHC,GAAG,EACHjkD,QAAS,CAAC,GAUX,OANAkkD,EAAQF,GAAU7J,KAAKp6C,EAAOC,QAASD,EAAQA,EAAOC,QAAS,GAG/DD,EAAOkkD,GAAI,EAGJlkD,EAAOC,OACf,CAyDA,OArDA,EAAoBmkD,EAAID,EAGxB,EAAoBE,EAAIL,EAGxB,EAAoBM,EAAI,SAASrkD,EAASY,EAAM0jD,GAC3C,EAAoBC,EAAEvkD,EAASY,IAClC+lB,OAAO69B,eAAexkD,EAASY,EAAM,CAAE6jD,YAAY,EAAMxgC,IAAKqgC,GAEhE,EAGA,EAAoBI,EAAI,SAAS1kD,GACX,qBAAX2kD,QAA0BA,OAAOC,aAC1Cj+B,OAAO69B,eAAexkD,EAAS2kD,OAAOC,YAAa,CAAEt2C,MAAO,WAE7DqY,OAAO69B,eAAexkD,EAAS,aAAc,CAAEsO,OAAO,GACvD,EAOA,EAAoBu2C,EAAI,SAASv2C,EAAOw2C,GAEvC,GADU,EAAPA,IAAUx2C,EAAQ,EAAoBA,IAC/B,EAAPw2C,EAAU,OAAOx2C,EACpB,GAAW,EAAPw2C,GAA8B,kBAAVx2C,GAAsBA,GAASA,EAAMy2C,WAAY,OAAOz2C,EAChF,IAAI02C,EAAKr+B,OAAO1jB,OAAO,MAGvB,GAFA,EAAoByhD,EAAEM,GACtBr+B,OAAO69B,eAAeQ,EAAI,UAAW,CAAEP,YAAY,EAAMn2C,MAAOA,IACtD,EAAPw2C,GAA4B,iBAATx2C,EAAmB,IAAI,IAAIpE,KAAOoE,EAAO,EAAoB+1C,EAAEW,EAAI96C,EAAK,SAASA,GAAO,OAAOoE,EAAMpE,EAAM,EAAEpK,KAAK,KAAMoK,IAC9I,OAAO86C,CACR,EAGA,EAAoBC,EAAI,SAASllD,GAChC,IAAIukD,EAASvkD,GAAUA,EAAOglD,WAC7B,WAAwB,OAAOhlD,EAAgB,OAAG,EAClD,WAA8B,OAAOA,CAAQ,EAE9C,OADA,EAAoBskD,EAAEC,EAAQ,IAAKA,GAC5BA,CACR,EAGA,EAAoBC,EAAI,SAASx3C,EAAQ+qC,GAAY,OAAOnxB,OAAOu+B,UAAUC,eAAehL,KAAKptC,EAAQ+qC,EAAW,EAGpH,EAAoBsN,EAAI,GAIjB,EAAoB,EAAoBC,EAAI,E,CkPxErD,C,+GCRA,gL,gFCFA,iLACA,iLACA,iLACA,iL,uGCHA,I,EAAA,G,EAAA,O,2BACA,E,uSAAA,OACA,O,MAGEs1B,EAGEC,EAAAA,eAHFD,eACAnuE,EAEEouE,EAAAA,eAFFpuE,aACAktB,EACEkhD,EAAAA,eADFlhD,cAGF,MAAMmhD,EACJlR,WAAAA,CAAYmR,GACVzkC,KAAKykC,WAAaA,CACnB,CAED9xE,SAAAA,CAAUkB,EAAKW,GACb,IAAKpK,EAAAA,QAAE4nB,SAASne,GACd,MAAM,IAAI3G,MAAM,qCAGlB,IAAK9C,EAAAA,QAAEQ,IAAIo1C,KAAKykC,WAAY5wE,GAC1B,OAAOA,EAGT,IAAI6wE,EAAM1kC,KAAKykC,WAAW5wE,GAQ1B,OANI6wE,GAAOlwE,IAGTkwE,EAFiBC,EAAMC,cAAcF,EAE/BG,CAASrwE,IAGVkwE,CACR,E,kBAGHt6E,EAAAA,QAAEwqE,OAAO4P,EAAc31B,UAAW,CAChCy1B,iBACAnuE,eACAktB,iB,gB1NvCF35B,EAAOC,QAAU,C,gB1BAjBD,EAAOC,QAAU,C,wGqPAjB,I,EAAA,G,EAAA,O,2BAEO,MAAM46E,EAAiB,CAC5B5xE,UAAWvI,EAAAA,QAAE06E,SACbR,eAAgBrsE,IAAU7N,EAAAA,QAAE+sE,MAAMx/D,WAAWM,IAC7C9B,aAAc4uE,GAAOptE,WAAWotE,GAChC1hD,cAAeiR,GAAU,GAAEA,K,gMCN7B,cACA,UACA,UACA,WACA,QACA,QACA,Q,mDAEA,MACM0wC,EAAS,QACfC,EAAAA,UAAUC,gBAAgBF,GAE1BG,EAAAA,QAAUC,KAAKC,EAAAA,QAAMC,EAAAA,SAErBH,EAAAA,QAAUI,aAAahiC,EAAQ,KAExB,MAAMiiC,EAAgB,EAAGf,aAAa,CAAC,EAAG90D,UAAU,CAAC,GAAM,CAAC,IAEjE,IAAIs1D,EAAAA,UAAU76E,EAAAA,QAAEq7E,UAAU,CACxBT,SACAU,aAAc,IAAMV,EACpBW,oBAAqB,IAAMlB,EAC3BtxE,SAda,OAeZwc,I,2CAGiC,EAAG80D,aAAa,CAAC,EAAG90D,UAAU,CAAC,GAAM,CAAC,IAC1E,IAAIi2D,EAAAA,kBAAkBJ,EAAc,CAAEf,aAAY90D,a,sBAGjB,EAAG80D,aAAa,CAAC,EAAG90D,UAAU,CAAC,GAAM,CAAC,IACvE,IAAIk2D,EAAAA,eAAeL,EAAc,CAAEf,aAAY90D,a,wBAUZ,EAAG80D,aAAa,CAAC,EAAG90D,UAAU,CAAC,GAAM,CAAC,KAAM,OAACm2D,EAY9EN,EAAc,CAAEf,aAAY90D,YAZ+D,CAC7F/B,GAAAA,CAAIm4D,GACF,MAAMC,EAAaD,EAAmBxpD,MAAM,KAAK,GACjD,MAAmB,0BAAfypD,EACK,IAAIJ,EAAAA,kBAAkBE,GACL,oCAAfE,EACF,IAAIH,EAAAA,eAAeC,GAErBA,CACR,EAEDG,KAAMH,GAXyE,IAACA,CAA3E,C,gBCzCPp8E,EAAOC,QAAUw6E,C,gBCAjBz6E,EAAOC,QAAUqpD,C,gBCAjBtpD,EAAOC,QAAUspD,C,gBCAjBvpD,EAAOC,QAAUupD,C,wGCAjB,I,EAAA,G,EAAA,O,2BACA,Q,iBAGO,MACLogB,WAAAA,CAAY4S,GACVlmC,KAAKkmC,SAAWA,CACjB,CAEDvzE,SAAAA,CAAUkB,GACR,IAAKzJ,EAAAA,QAAE4nB,SAASne,GACd,KAAM,oCAGR,IAAIsyE,GAAM,IAAAC,eAAcpmC,KAAKkmC,SAAUryE,IAAQ,GAE/C,GAAIsyE,GACEE,UAAU76E,OAAS,EACrB,IAAK,IAAIiD,EAAI,EAAGA,EAAI43E,UAAU76E,OAAQiD,IAAK,CACzC,MAAM63E,EAAQ,IAAIC,OAAQ,MAAK93E,EAAI,OAAQ,MAE3C03E,EAAMA,EAAIx4C,QAAQ24C,EAAOD,UAAU53E,GACpC,CAIL,OAAO03E,GAAO,EACf,CAEDK,kBAAAA,CAAmB3yE,EAAK4yE,GACtB,IAAKr8E,EAAAA,QAAE4nB,SAASne,GACd,KAAM,oCAGR,IAAKzJ,EAAAA,QAAE4nB,SAASy0D,GACd,KAAM,2DAGR,MAAMzxB,EAAO5qD,EAAAA,QAAEs8E,QAAQL,WAGvB,OAFArxB,EAAK+Z,OAAO,EAAG,GAER/uB,KAAKrtC,UAAUg0E,MAAM3mC,KAAMgV,IAASyxB,CAC5C,E,2FCxCI,SAAkB5yE,GACvB,OAAQzJ,EAAAA,QAAE4nB,SAASne,EACpB,E,uBAJD,I,EAAA,G,EAAA,O,2CAM6B,CAACqyE,EAAUryE,KACtC,GAAY,KAARA,EACF,MAAO,GAGT,IACE,OAAOqyE,EAASvzE,UAAUkB,EAC3B,CAAC,MAAO89C,GACP,GAAe,eAAXA,EAAEpnD,KACJ,OAEF,MAAMonD,CACP,E,2GClBH,WACA,Q,oBAEO,MACL2hB,WAAAA,CAAY4S,GACVlmC,KAAKkmC,SAAWA,CACjB,CAEDvzE,SAAAA,CAAUkB,KAAQmhD,GAChB,IAAI,IAAA4xB,UAAS/yE,GAAM,MAAO,GAE1B,IAAIsyE,GAAM,IAAAC,eAAcpmC,KAAKkmC,SAAUryE,IAAQ,GAE/C,GAAIsyE,EAEF,IAAK,MAAM13E,KAAKumD,EAAM,CACpB,MAAMsxB,EAAQ,IAAIC,OAAQ,MAAK93E,OAAQ,MAEvC03E,EAAMA,EAAIx4C,QAAQ24C,EAAOtxB,EAAKvmD,GAC/B,CAGH,OAAO03E,GAAO,EACf,CAEDv4D,GAAAA,CAAI/Z,EAAKW,GACP,IAAI,IAAAoyE,UAAS/yE,GAAM,MAAO,GAE1B,IAAI6wE,GAAM,IAAA0B,eAAcpmC,KAAKkmC,SAAUryE,GAUvC,OARI6wE,GACElwE,IAGFkwE,GAFiB,IAAAE,eAAcF,EAEzBG,CAASrwE,IAIZkwE,CACR,E,gBCvCHh7E,EAAOC,QAAUy6E,C,6GCAjB,cACA,UACA,WACA,WACA,QACA,O,mDAEAa,EAAAA,UAAUC,gBAAgB,SAC1BD,EAAAA,UAAUS,aAAaL,EAAAA,SACvBJ,EAAAA,UAAUS,aAAaJ,EAAAA,SACvBL,EAAAA,UAAU4B,iBAAiBC,EAAAA,SAE3B,MAAMC,EAAsB,IAAI9B,EAAAA,UAAU,CACxCS,aAAcsB,GAAOA,EACrBrB,oBAAqB,KAAM,CAAN,GACrBsB,UAAU,I,wBAGZF,EAAoBG,QACpBH,EAAoBp0E,UAAY,CAACkB,EAAKW,GAAS2yE,aAAa/8E,EAAAA,QAAE06E,UAAa,CAAC,KAC1E,IAAIJ,EAAM7wE,EAWV,OAVI6wE,IACFA,EAAMyC,EAAWzC,GAEblwE,KAGFkwE,GAFiB,IAAAE,eAAcF,EAEzBG,CAASrwE,IAIZkwE,CAAP,C,gBC/BFh7E,EAAOC,QAAU06E,C,KfEf36E,EAAOC,QAAU6C,EAAQ,EAAQ,QAAe,EAAQ,QAAiD,EAAQ,QAAc,EAAQ,QAA6D,EAAQ,QAAmE,EAAQ,QAAwC,EAAQ,QAAiB,EAAQ,Q,oHgBDlW,SAGA,cAGA,QACA,oBAGA,YACA,IACA,KACA,YAUA,OANA,mCAGA,OAGA,SACA,CAoCA,OAhCA,MAGA,MAGA,oBACA,UACA,2BACA,gBACA,cACA,OAGA,EAGA,gBACA,sBACA,WAA4B,OAAO9C,EAAgB,OAAG,EACtD,WAAkC,OAAOA,CAAQ,EAEjD,OADA,aACA,CACA,EAGA,kBAAuD,OAAO4mB,OAAOu+B,UAAUC,eAAehL,KAAKptC,EAAQ+qC,EAAW,EAGtH,OAGA,S,mBpH7DA/3C,EAAOC,QAAU,C,kBkCAjBD,EAAOC,QAAU,C,kBrJAjBD,EAAOC,QAAU,C,kBsJAjBD,EAAOC,QAAU,C,2MkFARwL,M,mWCAT,M,IACA,M,IACA,M,IACA,M,uDAEaA,EAAAA,EAAAA,OAAAA,SAAAA,GAkBX,WAAY4C,I,4FAAO,e,mKAAA,wDACXA,IADW,OAEjB,EAAKA,MAAQA,EACb,EAAK2hD,MAAQ,CAAC,EAHG,CAIlB,C,2WAEQ,MAGH1Z,KAAKjoC,MADPxN,EAFK,EAELA,KAAMiL,EAFD,EAECA,SAAUvF,EAFX,EAEWA,UAAWmF,EAFtB,EAEsBA,QAASC,EAF/B,EAE+BA,SAF/B,EAIgC2qC,KAAKjoC,MAApCvE,GAAAA,OAJD,MAIM,UAAEyzC,SAAS,WAJjB,EAKP,OACE,iCAAOh3C,WAAW,aAAW,SAAUA,GAAYm3E,QAAS5zE,GAC1D,iCACE1B,KAAK,WACL0B,GAAIA,EACJjJ,KAAMA,EACN6K,QAASA,EACTI,SAAUA,EACVH,SAAUA,IAEZ,gCAAMpF,UAAU,iBAGrB,K,EA1CUkF,CAAe,UAAM2/D,eAArB3/D,EACJY,UAAY,CACjBX,QAAS,UAAUiB,KACnBpG,UAAW,UAAUmG,OACrBZ,SAAU,UAAUa,KACpB7C,GAAI,UAAU4C,OACd7L,KAAM,UAAU6L,OAChBf,SAAU,UAAUa,KAAK5E,YAPhB6D,EAUJ2B,aAAe,CACpB1B,SAAS,EACTnF,UAAW,SACXuF,UAAU,EACVhC,GAAI,KACJjJ,KAAM,K","sources":["../webpack/bootstrap","../../../../../../../../external/@bingads-webui-universal/primitive-utilities","../webpack-src:/pgrid-factory/src/pgrid-factory.js","../webpack-src:/abl-enforcement-legacy-strings/index.js","../webpack-src:/abl-enforcement-legacy-strings/src/legacy-strings-for-new-i18n.js","../webpack-src:/account-business-location-legacy-strings/src/aggregate-strings.js","../../../../../../../../external/@bingads-webui/validation-string-map","../webpack-src:/account-business-location-legacy-strings/index.js","../webpack-src:/account-business-location-legacy-strings/src/legacy-strings-for-new-i18n.js","../../../../../../../../external/@bingads-webui/build-legacy-i18n","../webpack-src:/add-funds-form/index.js","../webpack-src:/add-funds-form/src/add-funds-form.js","../../../../../../../../external/@bingads-webui-theme-2018/toggle","../webpack-src:/add-funds-form/src/helper.js","../webpack-src:/add-funds-form/src/input-with-currency.js","../../../../../../../../external/@bingads-webui-react/text-input","../webpack-src:/add-funds-form/src/legacy-strings.js","../webpack-src:/add-funds-form/src/styles.js","../../../../../../../../external/@bingads-webui-react/react-template","../webpack-src:/address-tax-form-legacy-strings/index.js","../webpack-src:/address-tax-form-legacy-strings/src/legacy-strings-for-new-i18n.js","../../../../../../../../external/@bingads-webui-react/help-popup","../webpack-src:/auto-billing-group/src/auto-billing-group.js","../webpack-src:/auto-billing-group/src/billing-group-dropdown.js","../webpack-src:/auto-billing-group/src/constants.js","../webpack-src:/auto-billing-group/src/helper.js","../webpack-src:/auto-billing-group/src/styles/auto-billing-group.js","../../../../../../../../external/underscore","../webpack-src:/auto-pbc-lightbox-legacy-strings/index.js","../webpack-src:/auto-pbc-lightbox-legacy-strings/src/legacy-strings-for-new-i18n.js","../webpack-src:/check-bank-transfer-legacy-strings/index.js","../webpack-src:/check-bank-transfer-legacy-strings/src/legacy-strings-for-new-i18n.js","../webpack-src:/io-controls/index.js","../webpack-src:/io-controls/src/io-date-picker.js","../../../../../../../../external/@bingads-webui-react/single-date-picker","../webpack-src:/io-controls/src/immediate-date-picker.js","../webpack-src:/io-controls/src/styles.js","../webpack-src:/io-controls/src/hooks/index.js","../webpack-src:/io-controls/src/hooks/use-suggested-start-date.js","../webpack-src:/io-controls/src/hooks/use-suggested-budget.js","../webpack-src:/io-controls/src/hooks/use-forecasting-daily-spend.js","../webpack-src:/io-controls/src/constants.js","../webpack-src:/io-controls/src/helpers/index.js","../webpack-src:/io-controls/src/helpers/budget-suggestion-helper.js","../webpack-src:/io-controls/src/hooks/use-spend-cap-amount-increase-over.js","../webpack-src:/io-controls/src/hooks/use-general-recommendation.js","../webpack-src:/io-controls/src/hooks/use-i18n.js","../webpack-src:/io-controls/src/endless-date-picker.js","../webpack-src:/io-controls/src/io-spend-cap-amount.js","../webpack-src:/io-controls/src/endless-spend-cap-amount.js","../webpack-src:/io-controls/src/io-inline-smartness/index.js","../webpack-src:/io-controls/src/io-inline-smartness/start-date-recommendation.js","../webpack-src:/io-controls/src/io-inline-smartness/io-inline-smart-recommendation-container.js","../../../../../../../../external/@fluentui/style-utilities","../webpack-src:/io-controls/src/io-inline-smartness/budget-recommendation.js","../webpack-src:/io-controls/src/io-inline-smartness/budget-endless-recommendation.js","../webpack-src:/io-controls/src/io-inline-smartness/budget-rio-recommendation.js","../webpack-src:/io-controls/src/io-inline-smartness/general-recommendation.js","../webpack-src:/io-controls/src/io-inline-smartness/recommendation-properties.js","../webpack-src:/io-controls/src/backup-spend-cap-amount.js","../webpack-src:/io-controls/src/backup-io.js","../webpack-src:/io-controls/src/backup-extend-days.js","../webpack-src:/io-controls/src/backup-io-with-config.js","../webpack-src:/io-controls/src/legacy-strings.js","../webpack-src:/io-controls/src/io-terms-description.js","../../../../../../../../external/@bingads-webui-clientcenter/common-utils","../webpack-src:/io-form/index.js","../../../../../../../../external/@bingads-webui-cc-react/io-controls","../webpack-src:/io-form/src/legacy-strings.js","../webpack-src:/io-form/src/single-io-form.js","../../../../../../../../external/@bingads-webui-react/help-link","../webpack-src:/io-form/src/base-io-form/base-io-form.js","../webpack-src:/io-form/src/base-io-form/base-io-form-row.js","../webpack-src:/io-form/src/constants.js","../webpack-src:/io-form/src/base-io-form/io-account-id-selector.js","../webpack-src:/io-form/src/base-io-form/helper.js","../webpack-src:/io-form/src/base-io-form/base-io-form-row-item-wrapper.js","../webpack-src:/io-form/src/base-io-form/rio-series-name-input.js","../webpack-src:/io-form/src/use-i18n.js","../webpack-src:/io-form/src/base-io-form/rio-frequency-selector.js","../webpack-src:/io-form/src/utils/use-io-editable-control.js","../webpack-src:/io-form/src/single-io-panel-form.js","../webpack-src:/io-form/src/styles.js","../webpack-src:/io-form/src/recurring-io-form.js","../webpack-src:/io-form/src/recurring-panel-io-form.js","../../../../../../../../external/@bingads-webui-react/primitive","../webpack-src:/io-grid/index.js","../../../../../../../../external/@bingads-webui-cc-react/io-form","../webpack-src:/io-grid/src/legacy-strings.js","../webpack-src:/io-grid/src/recommendation-io-grid.js","../webpack-src:/io-grid/src/backbone/io-grid-view.js","../../../../../../../../external/@bingads-webui-campaign/pgrid-factory","../webpack-src:/io-grid/src/backbone/config.js","../webpack-src:/io-grid/src/constants.js","../webpack-src:/io-grid/src/backbone/template/action-column.pug","../webpack-src:/io-grid/src/backbone/template/end-date-column.pug","../webpack-src:/io-grid/src/styles.js","../webpack-src:/io-grid/src/bulk-create-io-grid.js","../webpack-src:/io-grid/src/helper.js","../webpack-src:/io-grid/src/single-create-io-grid.js","../webpack-src:/offline-instruction-display-legacy-strings/index.js","../webpack-src:/offline-instruction-display-legacy-strings/src/legacy-strings-for-new-i18n.js","../webpack-src:/pi-dropdown/index.js","../webpack-src:/pi-dropdown/src/index.js","../webpack-src:/pi-dropdown/src/legacy-strings.js","../webpack-src:/pi-dropdown/src/styles.js","../../../../../../../../external/@bingads-webui-cc-react/layout","../webpack-src:/pidl-payment-method-actions-base-legacy-strings/index.js","../webpack-src:/pidl-payment-method-actions-base-legacy-strings/src/legacy-strings-for-new-i18n.js","../webpack-src:/po-dropdown/index.js","../webpack-src:/po-dropdown/src/index.js","../webpack-src:/po-dropdown/src/legacy-strings.js","../../../../../../../../external/@bingads-webui-react/primitive-with-signal","../webpack-src:/signup-add-funds-legacy-strings/index.js","../webpack-src:/signup-add-funds-legacy-strings/src/legacy-strings-for-new-i18n.js","../../../../../../../../external/@bingads-webui-cc-react/offline-instruction-display-legacy-strings","../webpack-src:/terms-and-conditions-legacy-strings/index.js","../webpack-src:/terms-and-conditions-legacy-strings/src/legacy-strings-for-new-i18n.js","../webpack-src:/validation-legacy-strings/index.js","../webpack-src:/validation-legacy-strings/src/legacy-strings-for-new-i18n.js","../webpack-src:/accessible-treeview/index.js","../webpack-src:/accessible-treeview/src/view.js","../../../../../../../../external/backbone","../../../../../../../../external/@bingads-webui/keycode","../../../../../../../../external/@bingads-webui/virtualized-treeview","../webpack-src:/accessible-treeview/src/tree-item.pug","../../../../../../../../external/pug-runtime","../webpack-src:/alert-center/index.js","../webpack-src:/alert-center/src/alert-center/index.es","../../../../../../../../external/@bingads-webui/deterministic-view","../webpack-src:/alert-center/src/alert-list/index.es","../webpack-src:/alert-center/src/alert/index.es","../webpack-src:/alert-center/src/alert/template.pug","../webpack-src:/alert-center/src/alert/icon.pug","../webpack-src:/alert-center/src/alert-list/template.pug","../webpack-src:/alert-center/src/alert-carousel/index.es","../../../../../../../../external/bootstrap","../webpack-src:/alert-center/src/alert-carousel/template.pug","../webpack-src:/alert-center/src/alert-center/template.pug","../webpack-src:/filter-converter-ccmt/index.js","../webpack-src:/filter-converter-ccmt/src/filter-converter.js","../webpack-src:/filter-converter-ccmt/src/constants.js","../../../../../../../../external/react","../../../../../../../../external/@fluentui/react-components","../../../../../../../../external/@bingads-webui-react/form-core","../../../../../../../../external/@fluentui/react-icons","../../../../../../../../external/@bingads-webui-react/i18n-context","../webpack-src:/form-ui-library/index.ts","../webpack-src:/form-ui-library/src/components/index.ts","../webpack-src:/form-ui-library/src/components/blockers.tsx","../../../../../../../../external/@bingads-webui-fluent-component/ui-blocker","../webpack-src:/form-ui-library/src/components/footers.tsx","../webpack-src:/form-ui-library/src/components/buttons.tsx","../webpack-src:/form-ui-library/src/components/cancel-dialog.tsx","../webpack-src:/form-ui-library/src/components/confirm-dialog.tsx","../webpack-src:/form-ui-library/src/components/title-bars.tsx","../../../../../../../../external/@bingads-webui-react/with-responsive-size","../../../../../../../../external/@fluentui/react-drawer","../webpack-src:/form-ui-library/src/layout-templates/index.ts","../webpack-src:/form-ui-library/src/layout-templates/page.tsx","../webpack-src:/form-ui-library/src/layout-templates/panel.tsx","../webpack-src:/form/index.ts","../../../../../../../../external/@bingads-webui-fluent-component/form-ui-library","../webpack-src:/selectable-card/index.ts","../webpack-src:/selectable-card/src/index.tsx","../webpack-src:/wizard/index.ts","../webpack-src:/wizard/src/index.ts","../../../../../../../../external/@bingads-webui-fluent-component/wizard-ui-library","../../../../../../../../external/@bingads-webui-react/wizard-core","../webpack-src:/wizard/src/wizard.tsx","../webpack-src:/wizard/src/default-config.tsx","../webpack-src:/wizard/src/default-layout-container.tsx","../webpack-src:/wizard/src/layout-container.tsx","../webpack-src:/wizard/src/demo-step-in-wizard.tsx","../webpack-src:/bingads-backbone-header-strings/index.js","../webpack-src:/bingads-backbone-header-strings/src/legacy-keys.js","../../../../../../../../external/prop-types","../../../../../../../../external/classnames","../../../../../../../../external/react-jss","../webpack-src:/file-picker/index.js","../webpack-src:/file-picker/src/index.js","../../../../../../../../external/@bingads-webui-react/validation","../webpack-src:/file-picker/src/views/file-picker-view.js","../webpack-src:/file-picker/src/context.js","../webpack-src:/file-picker/src/helper.js","../../../../../../../../external/path-browserify","../webpack-src:/file-picker/src/constants.js","../webpack-src:/file-picker/src/shapes.js","../webpack-src:/file-picker/src/css/styles.js","../webpack-src:/file-picker/src/use-throw-out.js","../../../../../../../../external/@bingads-webui-react/alert","../../../../../../../../external/react-dom","../webpack-src:/floating-banner/index.js","../webpack-src:/floating-banner/src/floating-banner-api.js","../webpack-src:/floating-banner/src/floating-banner.js","../webpack-src:/floating-banner/src/util.js","../webpack-src:/help-rail-view-id/index.js","../webpack-src:/help-rail-view-id/src/help-rail-view-id.js","../../../../../../../../external/hoist-non-react-statics","../../../../../../../../external/@bingads-webui-react/hoc-utils","../webpack-src:/hoc-with-perf-marker/index.ts","../webpack-src:/hoc-with-perf-marker/src/index.ts","../webpack-src:/hoc-with-perf-marker/src/app-perf-marker-context.ts","../webpack-src:/hoc-with-perf-marker/src/use-perf-marker.ts","../webpack-src:/hoc-with-perf-marker/src/use-perf-marker-lifecycle.ts","../webpack-src:/hoc-with-perf-marker/src/with-page-perf-marker.tsx","../webpack-src:/hoc-with-perf-marker/src/with-perf-marker.tsx","../webpack-src:/single-date-picker/index.js","../webpack-src:/single-date-picker/src/single-date-picker.js","../../../../../../../../external/@bingads-webui-react/validation-controls","../../../../../../../../external/@bingads-webui-universal/temporal-utitlities","../../../../../../../../external/@bingads-webui-react/single-month-calendar","../webpack-src:/support-help-options-control/index.js","../webpack-src:/support-help-options-control/src/ms-support-inline-help-options.js","../../../../../../../../external/jquery","../webpack-src:/support-help-options-control/src/icons.js","../webpack-src:/support-help-options-control/src/constants.js","../webpack-src:/support-help-options-control/src/styles.js","../webpack-src:/support-help-options-control/src/ms-support-menu-button.js","../webpack-src:/transfer-selector/index.js","../webpack-src:/transfer-selector/src/index.js","../webpack-src:/transfer-selector/src/controls/index.js","../webpack-src:/transfer-selector/src/controls/transfer-selector.js","../webpack-src:/transfer-selector/src/controls/selector-box.js","../webpack-src:/transfer-selector/src/styles/index.js","../webpack-src:/transfer-selector/src/styles/selector-box.js","../webpack-src:/transfer-selector/src/styles/common.js","../webpack-src:/transfer-selector/src/styles/result-box.js","../webpack-src:/transfer-selector/src/styles/transfer-selector.js","../webpack-src:/transfer-selector/src/constants.js","../webpack-src:/transfer-selector/src/controls/result-box.js","../webpack-src:/transfer-selector/src/controls/selector-list.js","../../../../../../../../external/react-virtualized","../webpack-src:/transfer-selector/src/utils.js","../../../../../../../../external/@bingads-webui-react/search-box","../../../../../../../../external/@bingads-webui-react/ui-blocker","../../../../../../../../external/@bingads-webui-react/with-default-styles","../webpack-src:/tutorial-accordion/index.js","../webpack-src:/tutorial-accordion/src/index.js","../../../../../../../../external/@bingads-webui-campaign-react/virtual-scrollbar-recalculate-trigger","../webpack-src:/tutorial-accordion/src/styles/index.js","../webpack-src:/tutorial-accordion/src/view.js","../webpack/universalModuleDefinition","../webpack-src:/i18n-mock/index.js","../webpack-src:/i18n-mock/src/index.es","../webpack-src:/i18n-mock/src/fixed-i18n-mock.es","../webpack-src:/i18n-mock/src/static-i18n-mock.es","../webpack-src:/i18n-mock/src/model-i18n-mock.es","../../../../../../../../external/globalize","../../../../../../../../external/@bingads-webui-universal/i18n-cldr-data-modern/core.json","../../../../../../../../external/@bingads-webui-universal/i18n-cldr-data-modern/locales/en.json","../../../../../../../../external/@bingads-webui-universal/i18n-model","../webpack-src:/i18n-mock/src/shims/module-i18n-shim.js","../webpack-src:/i18n-mock/src/shims/string-utils.js","../webpack-src:/i18n-mock/src/shims/component-i18n-shim.js","../../../../../../../../external/iana-tz-data","../webpack-src:/i18n-mock/src/static-i18n-model-mock.es","../../../../../../../../external/iana-tz-data/iana-tz-data.json","../../../../../../../../bootstrap/152bbb232f1a16da2302","../webpack-others:/d:/dbs/el/aapusc/private/client-hig/packages/toggle/index.js","../webpack-others:/d:/dbs/el/aapusc/private/client-hig/packages/toggle/src/toggle.js"],"sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 466);\n","module.exports = __WEBPACK_EXTERNAL_MODULE__150__;","/* eslint-disable no-param-reassign */\r\nimport _ from 'underscore';\r\nimport pgrid from 'projection-grid';\r\n\r\nimport { merge } from '@bingads-webui-universal/primitive-utilities';\r\n\r\nfunction visit(node, graph, permVisited, tempVisited, sortedList) {\r\n if (permVisited[node]) {\r\n return;\r\n }\r\n\r\n if (tempVisited[node]) {\r\n throw new Error(`Circular plugin dependency detected: ${node}`);\r\n }\r\n\r\n tempVisited[node] = true;\r\n _.each(graph[node], dep => visit(dep, graph, permVisited, tempVisited, sortedList));\r\n tempVisited[node] = false;\r\n permVisited[node] = true;\r\n sortedList.unshift(node);\r\n}\r\n\r\nfunction topoSort(graph) {\r\n const permVisited = {};\r\n const tempVisited = {};\r\n const notVisited = _.keys(graph);\r\n const sortedList = [];\r\n\r\n while (notVisited.length > 0) {\r\n const currNode = notVisited.pop();\r\n visit(currNode, graph, permVisited, tempVisited, sortedList);\r\n }\r\n\r\n return sortedList;\r\n}\r\n\r\nfunction generateDepGraph(map) {\r\n const graph = {};\r\n\r\n _.map(_.uniq(_.flatten(_.values(map))), (dep) => {\r\n graph[dep] = [];\r\n });\r\n\r\n _.each(map, (deps, name) => {\r\n _.each(deps, (dep) => {\r\n graph[dep].push(name);\r\n });\r\n });\r\n\r\n return graph;\r\n}\r\n\r\nfunction processDeps(map) {\r\n return _.mapObject(map, deps => _.without(deps, 'gridView', 'config', 'dataSource'));\r\n}\r\n\r\nfunction getOrderToInitializePlugin(nameToDepsMap) {\r\n const sortedList = topoSort(generateDepGraph(processDeps(nameToDepsMap)));\r\n\r\n return sortedList.concat(_.difference(_.keys(nameToDepsMap), sortedList));\r\n}\r\n\r\nfunction generatePluginNameMaps(plugins) {\r\n const nameToPluginRefMap = {};\r\n const nameToDepsMap = {};\r\n const softDependenciesMap = {};\r\n _.each(plugins, ({ plugin }) => plugin((name, deps) => {\r\n nameToDepsMap[name] = deps;\r\n nameToPluginRefMap[name] = plugin;\r\n if (_.isArray(plugin.softDependencies)) {\r\n softDependenciesMap[name] = plugin.softDependencies;\r\n }\r\n }));\r\n\r\n // softDependencies is not required dependency.\r\n // PluginA or PluginB doesn't depend each other. Grid can use the PluginA or PluginB directly.\r\n // But, if grid use them together, sometimes, we must use one firstly, use another one secondly.\r\n // An example is SegmentPlugin, and AggregatedRowPlugin, must use AggregatedRowPlugin fristly.\r\n _.each(softDependenciesMap, (softDependencies, name) => {\r\n _.each(softDependencies, (softDependency) => {\r\n if (_.has(nameToDepsMap, softDependency)) {\r\n nameToDepsMap[name].push(softDependency);\r\n }\r\n });\r\n });\r\n\r\n return {\r\n nameToPluginRefMap,\r\n nameToDepsMap,\r\n };\r\n}\r\n\r\nfunction addPluginConfigToGridConfig(gridConfig, plugins, preferenceConfig) {\r\n gridConfig.plugins = {};\r\n\r\n _.each(plugins, ({ plugin, config }) => {\r\n if (config) {\r\n plugin((name) => {\r\n if (name === 'performance-log') {\r\n gridConfig.plugins.performanceLog = config;\r\n } else {\r\n gridConfig.plugins[name] = config;\r\n }\r\n });\r\n }\r\n });\r\n\r\n // merge here as preferenceConfig contains modifications for both gridConfig and plugin config\r\n merge(gridConfig, preferenceConfig);\r\n\r\n return gridConfig;\r\n}\r\n\r\nexport function pgridFactory({ plugins = [], gridConfig, preferenceConfig }, grid = pgrid) {\r\n const { nameToPluginRefMap, nameToDepsMap } = generatePluginNameMaps(plugins);\r\n // add customDepsMap to allow customize for the depsMap to solve below scenario\r\n // Plugin A depend on Plugin B when Plugin B exist.\r\n // In this scenario, we couldn't add plugin B in plugin A's dependency directly\r\n // as plugin B is not required by plugin A\r\n if (gridConfig && _.isFunction(gridConfig.customDepsMap)) {\r\n gridConfig.customDepsMap(nameToDepsMap);\r\n }\r\n const sortedOrder = getOrderToInitializePlugin(nameToDepsMap);\r\n\r\n let gridFactory = grid.factory({ vnext: true });\r\n\r\n _.each(sortedOrder, (pluginName) => {\r\n gridFactory = gridFactory.use(nameToPluginRefMap[pluginName]);\r\n });\r\n\r\n return gridFactory.create(addPluginConfigToGridConfig(gridConfig, plugins, preferenceConfig));\r\n}\r\n","export { legacyStrings as default } from './src/legacy-strings-for-new-i18n';\r\n","// This File is to allow for support with the new TL syntax, please keep this up to date as keys.txt changes,\r\n// or if we want to update the text on a string\r\n// we have a tool will that builds a legacyi18nObject using this mapping\r\n// the tool is buildLegacyI18n in @bingads-webui-campaign/smart-i18n\r\n// this file isn't exported, because we don't want the _TL_ syntax visible in the main exported code,\r\n// as it breaks if not running through the bundler\r\nexport const legacyStrings = {\r\n Suggestion_lightbox_ABL_AddressValidation_Title: _TL_('Verify your address'),\r\n Suggestion_lightbox_ABL_AddressValidation_MessageNoSuggestions: _TL_('We cannot verify this address'),\r\n Suggestion_lightbox_ABL_AddressValidation_AddressInvalid_MessageNoSuggestions: _TL_('We weren\\'t able to verify your address. Go back and edit your entry.'),\r\n Suggestion_lightbox_ABL_AddressValidation_SelectInvalidAddress: _TL_('Use what I entered'),\r\n Suggestion_lightbox_ABL_AddressValidation_AddressSuggestionIntro: _TL_('Did you mean...?'),\r\n Suggestion_lightbox_ABL_AddressValidation_AddressMessageWithSuggestions: _TL_('We found a similar address to the one you entered. Choose one from the list.'),\r\n Suggestion_lightbox_ABL_AddressValidation_AddressInvalid_MessageWithSuggestions: _TL_('We weren\\'t able to verify your address. Choose an address below, or go back and edit your entry.'),\r\n Suggestion_lightbox_ABL_AddressValidation_AddressMidMessageBlock: _TL_('What you entered:'),\r\n Suggestion_lightbox_ABL_AddressValidation_AddressInvalid_MessageWarning: _TL_('If you apply this address, we may contact you to verify it. Otherwise, please go back to edit your address.'),\r\n Suggestion_lightbox_ABL_AddressValidation_Banner_SaveInvalidAddress: _TL_('We cannot verify this address. If you apply this address, we may contact you to verify it.'),\r\n Suggestion_lightbox_ABL_AddressValidation_PrimaryButton: _TL_('Apply'),\r\n Suggestion_lightbox_ABL_AddressValidation_SecondaryButton: _TL_('Go back'),\r\n InvoiceABLEnforcement_DialogTitle: _TL_('Required updates'),\r\n InvoiceABLEnforcement_DialogDescription: _TL_('Before you can continue, we need you to provide important business information that\\'s missing for this account. Every Microsoft Advertising account needs to have:'),\r\n InvoiceABLEnforcement_SubDescription1: _TL_('A legal business name'),\r\n InvoiceABLEnforcement_SubDescription2: _TL_('A full business address, including country/region'),\r\n InvoiceABLEnforcement_SubDescription3: _TL_('Business tax/VAT registration number (if applicable)'),\r\n InvoiceABLEnforcement_VerifyMessage: _TL_('Click {{buttonName}} to provide this information.'),\r\n InvoiceABLEnforcement_DialogRedirect: _TL_('Update now'),\r\n Common_CancelLabel: _TL_('Cancel'),\r\n};\r\n","import { ValidationStringMap } from '@bingads-webui/validation-string-map';\r\nimport addressTaxFormLegacyStrings from '@bingads-webui-cc-react/address-tax-form-legacy-strings';\r\nimport ablEnforcementLegacyStrings from '@bingads-webui-cc-react/abl-enforcement-legacy-strings';\r\nimport { LegacyStrings as DialogsLegacyStrings } from '@bingads-webui-cc-react/dialogs';\r\n\r\nimport { legacyStrings } from './legacy-strings-for-new-i18n';\r\n\r\nexport const aggregateStrings = {\r\n ...legacyStrings,\r\n ...ValidationStringMap,\r\n ...addressTaxFormLegacyStrings,\r\n ...ablEnforcementLegacyStrings,\r\n ...DialogsLegacyStrings.ConfirmNoGSTINDialog,\r\n ...DialogsLegacyStrings.ConfirmTaxCertificateDialog,\r\n ...DialogsLegacyStrings.IndiaEInvoicingGenerationDialog,\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__101__;","export { legacyStrings as default } from './src/legacy-strings-for-new-i18n';\r\n\r\nexport { aggregateStrings } from './src/aggregate-strings';\r\n","// This File is to allow for support with the new TL syntax, please keep this up to date as keys.txt changes,\r\n// or if we want to update the text on a string\r\n// we have a tool will that builds a legacyi18nObject using this mapping\r\n// the tool is buildLegacyI18n in @bingads-webui-campaign/smart-i18n\r\n// this file isn't exported, because we don't want the _TL_ syntax visible in the main exported code,\r\n// as it breaks if not running through the bundler\r\nexport const legacyStrings = {\r\n 'Choose...': _TL_('Choose...'),\r\n 'Business location': _TL_('Business location'),\r\n 'Business address': _TL_('Business address'),\r\n 'Enter a new address...': _TL_('Enter a new address...'),\r\n 'Select an existing address': _TL_('Select an existing address'),\r\n 'Create a new address': _TL_('Create a new address'),\r\n 'Please select or fill in to search': _TL_('Please select or fill in to search'),\r\n 'User location': _TL_('User location'),\r\n 'User location tooltip': _TL_('User location tooltip'),\r\n 'Apply above business location to the user': _TL_('Apply above business location to the user'),\r\n 'Country or region': _TL_('Country or region'),\r\n Remove: _TL_('Remove'),\r\n 'Remove from Business address list': _TL_('Remove from Business address list'),\r\n ConsolidatedBillingV2_BillingGroupChangeAlert: _TL_('If you change the business location (country, state/province, city), this account will be removed from its current billing group. If you still want consolidated monthly invoicing for this account, please go to {{bold}}Billing settings{{/bold}} and add the account to an appropriate billing group.'),\r\n EInvoicing_StateValidationErrorMessage: _TL_('This field is not valid. Please check and re-enter.'),\r\n EInvoicing_ZipCodeValidationErrorMessage: _TL_('This field is not valid. Please check and re-enter.'),\r\n EInvoicing_GSTINValidationErrorMessage: _TL_('This GSTIN is not valid. Please check and re-enter your GSTIN.'),\r\n BusinessAddressSelector_Tooltip_AriaLabel: _TL_('Business address selector tooltip'),\r\n CurrencySelector_Tooltip_AriaLabel: _TL_('Currency selector tooltip'),\r\n Preferred_Timezone_Tooltip_AriaLabel: _TL_('Preferred time zone tooltip'),\r\n CCMTErrorNumber_GstInNumberAddressNotMatch: _TL_('The GSTIN you entered doesn’t match the business location on your registration. Please check your GSTIN and try again.'),\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__11__;","export { AddFundsForm } from './src/add-funds-form';\r\nexport { legacyStrings } from './src/legacy-strings';\r\nexport { getAddFundsFormStyles } from './src/styles';\r\n","import React, { useCallback, useMemo } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport classnames from 'classnames';\r\nimport { Toggle } from '@bingads-webui-theme-2018/toggle';\r\nimport { FormGroup } from '@bingads-webui-cc-react/layout';\r\nimport { InlineInfoAlert } from '@bingads-webui-cc-react/alert';\r\nimport { ReactTemplate } from '@bingads-webui-react/react-template';\r\nimport { Constants, AccountUtils } from '@bingads-webui-clientcenter/entity-utils';\r\nimport ValidationLegacyStrings from '@bingads-webui-clientcenter/validation-legacy-strings';\r\nimport { buildLegacyI18n } from '@bingads-webui/build-legacy-i18n';\r\n\r\nimport { getFormatedEstimatedPayment, CurrencyDecimalLength, getTaxIncludedTopUpAmount, getTopUpRange } from './helper';\r\nimport { ValidatedInputWithCurrency } from './input-with-currency';\r\n\r\nconst { CurrencyCode, CountryCode } = Constants;\r\n\r\n/**\r\n * Add funds form\r\n * @param {object} i18n - i18n Object.\r\n * @param {string} className - Customized class name\r\n * @param {number} estimatedTaxRate - Tax rate\r\n * @param {object} topUpFundRange - Amount range\r\n * @param {object} topUpAmount - Top up amount\r\n * @param {object} requiredTopUpAmount - least required top-up amount before tax\r\n * @param {object} addFundsDetails - Add funds details\r\n * @param {function} onAmountChange - Callback function when amount change\r\n * @param {function} onToggleAutoRecharge - Callback function when auto recharge changes\r\n * @param {bool} showOptionalLabel - If true, will add '(optional)' in form label\r\n * @param {object} customErrors - Customize the error message when input amount is invalid\r\n * @param {string} currencyType - Currency type displayed in form\r\n * @param {string} accountCurrencies - All account currencies\r\n * @param {string} currentPaymentInstrument - Current PI displayed in form\r\n * @param {object} customizeCurrency - Customized displayed currency in form\r\n * @param {string} labelColClass - CSS to adjust the layout of the form\r\n * @returns {*} - AddFundsForm\r\n */\r\nexport const AddFundsForm = ({\r\n i18n,\r\n className,\r\n estimatedTaxRate,\r\n topUpFundRange,\r\n topUpAmount,\r\n requiredTopUpAmount,\r\n isAutoRecharge,\r\n onToggleAutoRecharge,\r\n onAmountChange,\r\n showOptionalLabel,\r\n customizeErrors,\r\n currencyType,\r\n customizeCurrency,\r\n labelColClass,\r\n showAutoRechargeLabel,\r\n showAutoRechargeWarning,\r\n accountCurrencies,\r\n currentPaymentInstrument,\r\n}) => {\r\n const legacyI18n = useMemo(() => buildLegacyI18n(i18n, ValidationLegacyStrings), [i18n]);\r\n const isRequired = useMemo(() => _.isFinite(requiredTopUpAmount) && requiredTopUpAmount > 0, [requiredTopUpAmount]);\r\n const requiredTopUpAmountTaxIncluded = useMemo(() => getTaxIncludedTopUpAmount({ estimatedTaxRate, topUpAmount: requiredTopUpAmount }), [estimatedTaxRate, requiredTopUpAmount]);\r\n const topUpRange = useMemo(() => getTopUpRange({ topUpFundRange, requiredTopUpAmountTaxIncluded }), [requiredTopUpAmountTaxIncluded, topUpFundRange]);\r\n\r\n const inputSchema = {\r\n name: 'Add Funds',\r\n properties: {\r\n topUpAmount: {\r\n type: 'number',\r\n required: isRequired,\r\n decimalLength: CurrencyDecimalLength,\r\n minimum: topUpRange.minimum,\r\n maximum: topUpRange.maximum,\r\n i18n: legacyI18n,\r\n },\r\n },\r\n };\r\n\r\n const onValidate = useCallback((fund) => {\r\n onAmountChange({\r\n amount: fund.data.topUpAmount,\r\n isValid: fund.isValid,\r\n });\r\n }, [onAmountChange]);\r\n\r\n const errorProcessor = errors => _.map(\r\n errors,\r\n (oldError, key) => customizeErrors[key] || oldError\r\n );\r\n\r\n const renderTaxForm = () => {\r\n const formatedPayment = getFormatedEstimatedPayment({\r\n i18n, rate: estimatedTaxRate, topUpAmount, currencyType,\r\n });\r\n return (\r\n \r\n
\r\n {i18n.getString(_TL_('Tax:'))} {formatedPayment.formatedTax}\r\n
\r\n
\r\n {i18n.getString(_TL_('Payment Applied:'))} {formatedPayment.formatedAfterTax}\r\n
\r\n
\r\n );\r\n };\r\n\r\n const addFundsLabel = i18n.getString(_TL_('Add funds')) + (showOptionalLabel ? ` ${i18n.getString(_TL_('(optional)'))}` : '');\r\n const displayIndiaEMandateInlineMessage = AccountUtils.isIndiaEmandateFailedPIAccount({\r\n account: { BusinessAddress: { Country: _.some(accountCurrencies, currency => currency === CurrencyCode.INR) && CountryCode.IN } },\r\n currentPI: currentPaymentInstrument,\r\n });\r\n\r\n const isAutoRechargeToggleEnabled = !!(topUpAmount && topUpAmount.isValid && topUpAmount.amount);\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n {isRequired && (\r\n \r\n {i18n.formatCurrency(topUpRange.minimum, currencyType)} }}\r\n template={i18n.getString(_TL_('To switch to prepaid, please add at least {{amount}} (tax included, if applicable) to cover recent spending that has not yet been billed.'))}\r\n />\r\n \r\n )}\r\n {estimatedTaxRate !== null && !_.isEmpty(currencyType) && renderTaxForm() }\r\n \r\n {showAutoRechargeLabel && (\r\n
\r\n {i18n.getString(_TL_('Auto-recharge for this amount'))}\r\n
)}\r\n onToggleAutoRecharge(event.target.checked)}\r\n disabled={!isAutoRechargeToggleEnabled}\r\n />\r\n {showAutoRechargeLabel && (\r\n \r\n {isAutoRecharge\r\n ? i18n.getString(_TL_('On'))\r\n : i18n.getString(_TL_('Off'))}\r\n )}\r\n {isAutoRechargeToggleEnabled && isAutoRecharge && (\r\n
\r\n {i18n.getString(_TL_('We will automatically add funds to your balance once your balance falls below a certain threshold. This way your account balance will automatically top-up to the amount set by you in advance, so your account does not hit zero and your campaigns will continue without interruption. You can turn-off this feature anytime under your Billing settings.'))}\r\n
\r\n )}\r\n \r\n {showAutoRechargeWarning && (\r\n \r\n ({text}) }}\r\n template={i18n.getString(_TL_('You have auto-recharge set to {{b}}off{{/b}}. We strongly recommend that you set auto-recharge for these accounts as you may exhaust your funds before data migration is completed.'))}\r\n />\r\n )}\r\n {displayIndiaEMandateInlineMessage &&\r\n
\r\n \r\n {i18n.getString(_TL_('India E-Mandate'))},\r\n }}\r\n template={i18n.getString(_TL_('Due to recent changes in bank regulations for credit card transactions from {{eMandateLink}}, you may need to manually add funds to prepaid balance by visiting Billing Summary to \"Add funds\".'))}\r\n />\r\n \r\n
\r\n }\r\n
);\r\n};\r\n\r\nAddFundsForm.propTypes = {\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func.isRequired,\r\n parseDecimal: PropTypes.func.isRequired,\r\n formatCurrency: PropTypes.func.isRequired,\r\n }).isRequired,\r\n className: PropTypes.string,\r\n showOptionalLabel: PropTypes.bool,\r\n estimatedTaxRate: PropTypes.number,\r\n topUpAmount: PropTypes.shape({\r\n isValid: PropTypes.bool,\r\n amount: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\r\n }),\r\n requiredTopUpAmount: PropTypes.number,\r\n isAutoRecharge: PropTypes.bool,\r\n onAmountChange: PropTypes.func,\r\n onToggleAutoRecharge: PropTypes.func,\r\n topUpFundRange: PropTypes.shape({\r\n min: PropTypes.number,\r\n max: PropTypes.number,\r\n }),\r\n currencyType: PropTypes.string,\r\n customizeErrors: PropTypes.shape({\r\n type: PropTypes.string,\r\n decimalLength: PropTypes.string,\r\n range: PropTypes.string,\r\n }),\r\n customizeCurrency: PropTypes.oneOfType([PropTypes.elementType, PropTypes.object]),\r\n labelColClass: PropTypes.string,\r\n showAutoRechargeLabel: PropTypes.bool,\r\n showAutoRechargeWarning: PropTypes.bool,\r\n accountCurrencies: PropTypes.arrayOf(PropTypes.string),\r\n currentPaymentInstrument: PropTypes.shape({\r\n CreationDate: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\r\n SupportsRecurringPayment: PropTypes.bool,\r\n }),\r\n};\r\nAddFundsForm.defaultProps = {\r\n className: '',\r\n showOptionalLabel: false,\r\n estimatedTaxRate: null,\r\n currencyType: '',\r\n labelColClass: 'col-xs-3',\r\n customizeCurrency: null,\r\n customizeErrors: {},\r\n topUpAmount: {\r\n amount: null,\r\n isValid: true,\r\n },\r\n requiredTopUpAmount: 0,\r\n isAutoRecharge: false,\r\n onAmountChange: _.noop,\r\n onToggleAutoRecharge: _.noop,\r\n topUpFundRange: {\r\n min: 0,\r\n max: null,\r\n },\r\n showAutoRechargeLabel: false,\r\n showAutoRechargeWarning: false,\r\n accountCurrencies: [],\r\n currentPaymentInstrument: {\r\n CreationDate: null,\r\n SupportsRecurringPayment: false,\r\n },\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__174__;","import _ from 'underscore';\r\nimport { TaxUtils } from '@bingads-webui-clientcenter/entity-utils';\r\n\r\nexport const getFormatedEstimatedPayment = ({\r\n i18n, rate, topUpAmount, currencyType,\r\n}) => {\r\n if (_.isEmpty(currencyType)) {\r\n return {};\r\n }\r\n const fundingAmount = topUpAmount && topUpAmount.isValid ? i18n.parseDecimal(String(topUpAmount.amount)) : 0;\r\n const estimatedPayment = TaxUtils.getTaxAndBalance({ fundingAmount, estimatedTaxRate: rate, currentBalance: 0 });\r\n\r\n const formatedPayment = {\r\n formatedTax: `${i18n.formatCurrency(estimatedPayment.taxAmount || 0, currencyType)}`,\r\n formatedAfterTax: `${i18n.formatCurrency(estimatedPayment.appliedAmount || 0, currencyType)}`,\r\n };\r\n\r\n return formatedPayment;\r\n};\r\n\r\nexport const CurrencyDecimalLength = 2;\r\n\r\nexport const getTaxIncludedTopUpAmount = ({\r\n estimatedTaxRate, topUpAmount,\r\n}) => {\r\n const restrictDecimalLength = (amount) => {\r\n if (_.isFinite(amount)) {\r\n return parseFloat(amount.toFixed(CurrencyDecimalLength));\r\n }\r\n return amount;\r\n };\r\n\r\n const rawAmount = (() => {\r\n if (!_.isFinite(estimatedTaxRate) || !_.isFinite(topUpAmount) || topUpAmount < 0) {\r\n return topUpAmount;\r\n }\r\n\r\n const actingTaxRate = Math.max(0, estimatedTaxRate);\r\n return topUpAmount / (1 - actingTaxRate);\r\n })();\r\n\r\n return restrictDecimalLength(rawAmount);\r\n};\r\n\r\nexport const getTopUpRange = ({\r\n topUpFundRange, requiredTopUpAmountTaxIncluded,\r\n}) => {\r\n const isRequired = _.isFinite(requiredTopUpAmountTaxIncluded) && requiredTopUpAmountTaxIncluded > 0;\r\n let minimum = topUpFundRange && topUpFundRange.min ? topUpFundRange.min : 0;\r\n const maximum = topUpFundRange && topUpFundRange.max ? topUpFundRange.max : undefined;\r\n\r\n if (isRequired) {\r\n minimum = Math.max(minimum, requiredTopUpAmountTaxIncluded);\r\n if (_.isFinite(maximum) && minimum > maximum) {\r\n minimum = maximum;\r\n }\r\n }\r\n\r\n return { minimum, maximum };\r\n};\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { TextInput } from '@bingads-webui-react/text-input';\r\nimport { withValidation, withError } from '@bingads-webui-react/validation';\r\n\r\nconst InputWithCurrency = props => (\r\n
\r\n \r\n {props.customizeCurrency || props.currencyType}\r\n
\r\n);\r\n\r\nexport const ValidatedInputWithCurrency = withError(withValidation(InputWithCurrency));\r\n\r\nInputWithCurrency.propTypes = {\r\n onChange: PropTypes.func.isRequired,\r\n value: PropTypes.string.isRequired,\r\n currencyType: PropTypes.string.isRequired,\r\n customizeCurrency: PropTypes.node,\r\n};\r\nInputWithCurrency.defaultProps = {\r\n customizeCurrency: null,\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__177__;","export const legacyStrings = {\r\n Validation_Number_Max_Length: _TL_('Number should not exceed max length', { comment: 'Error message shown when numeric field exceeds max length' }),\r\n Validation_Base_Field_Not_Valid: _TL_('Field is not valid', { comment: 'Error message shown when user input is not valid' }),\r\n Validation_NotEmpty_Required_Field: _TL_('This field is required', { comment: 'Error message shown when required field is empty' }),\r\n Validation_Number_Range_Min: _TL_('Number should be larger than {{min}}', { comment: 'Error message shown when numeric value is smaller than min' }),\r\n Validation_Number_Range_Max: _TL_('Number should be smaller than {{max}}', { comment: 'Error message shown when numeric field exceeds max length' }),\r\n Validation_Number_Range_Between: _TL_('Number should be between {{min}} and {{max}}', { comment: 'Error message shown when numeric value is not within range' }),\r\n Validation_Number_Require_Numeric: _TL_('Field requires numeric value', { comment: 'Error message shown when numeric field contains non-numeric characters' }),\r\n BulkLinking_LinkingDetails_AutoRecharge: _TL_('Auto-recharge for this amount', { comment: 'Label for Auto recharge field for prepay account.' }),\r\n Label_AddFunds: _TL_('Add funds'),\r\n Label_PaymentApplied: _TL_('Payment Applied:'),\r\n Label_SetupAutoRecharge: _TL_('Setup auto-recharge'),\r\n Label_Tax: _TL_('Tax:'),\r\n Label_On: _TL_('On'),\r\n Label_Off: _TL_('Off'),\r\n Label_Recommended: _TL_('(recommended)'),\r\n Form_Watermark_Optional: _TL_('(optional)', { comment: 'Watermark (placeholder) text for optional fields on the forms.' }),\r\n Auto_Recharge_Warning: _TL_('You have auto-recharge set to {{b}}off{{/b}}. We strongly recommend that you set auto-recharge for these accounts as you may exhaust your funds before data migration is completed.'),\r\n IndiaEMandate_InlineWarning_FailedTransactionsPrimaryPI_Prepay_WithLink: _TL_('Due to recent changes in bank regulations for credit card transactions from {{eMandateLink}}, you may need to manually add funds to prepaid balance by visiting Billing Summary to \"Add funds\".'),\r\n IndiaEMandate_InlineWarning_EMandateLink: _TL_('India E-Mandate'),\r\n Prepay_AutoRechargeDescription: _TL_('We will automatically add funds to your balance once your balance falls below a certain threshold. This way your account balance will automatically top-up to the amount set by you in advance, so your account does not hit zero and your campaigns will continue without interruption. You can turn-off this feature anytime under your Billing settings.'),\r\n Prepay_RequiredTopUp_Warning: _TL_('To switch to prepaid, please add at least {{amount}} (tax included, if applicable) to cover recent spending that has not yet been billed.'),\r\n};\r\n","/* istanbul ignore file */\r\n\r\nconst errorColor = '#A80000';\r\n\r\nexport const getAddFundsFormStyles = () => ({\r\n '& .topup-input .form-control-static': {\r\n display: 'inline-block',\r\n marginLeft: '10px',\r\n },\r\n\r\n '& .prepay-requiredtopup-warning': {\r\n marginTop: 8,\r\n },\r\n\r\n '& #auto-recharge>div': {\r\n marginBottom: '5px',\r\n },\r\n\r\n '& .auto-recharge-label': {\r\n verticalAlign: 'top',\r\n marginLeft: '10px',\r\n },\r\n\r\n '& div[role=alert] .error': {\r\n color: errorColor,\r\n },\r\n\r\n '& #auto-recharge-failed-transactions': {\r\n marginTop: 10,\r\n },\r\n\r\n '& .add-funds-required #add-funds-label:after': {\r\n content: '\"*\"',\r\n color: '#B10E1C',\r\n marginLeft: 4,\r\n },\r\n});\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__20__;","export { legacyStrings as default } from './src/legacy-strings-for-new-i18n';\r\n","// This File is to allow for support with the new TL syntax, please keep this up to date as keys.txt changes,\r\n// or if we want to update the text on a string\r\n// we have a tool will that builds a legacyi18nObject using this mapping\r\n// the tool is buildLegacyI18n in @bingads-webui-campaign/smart-i18n\r\n// this file isn't exported, because we don't want the _TL_ syntax visible in the main exported code,\r\n// as it breaks if not running through the bundler\r\nexport const legacyStrings = {\r\n Account_CPFLabel: _TL_(\r\n 'CPF',\r\n {\r\n comment: 'Label for Tax Id for Brazilian Individual customers (Cadastro de Pessoas Físicas)',\r\n }\r\n ),\r\n Account_CNPJLabel: _TL_(\r\n 'CNPJ',\r\n {\r\n comment: 'Label for Tax Id for Brazilian Business customers (Cadastro Nacional da Pessoa Jurídica)',\r\n }\r\n ),\r\n Account_GSTINLabel: _TL_(\r\n 'GST IN',\r\n {\r\n comment: 'Label of GST(Goods and Services Tax) for Indian indirect taxation system',\r\n }\r\n ),\r\n Account_PANLabel: _TL_(\r\n 'PAN',\r\n {\r\n comment: 'Label for Tax Id for Indian Personal/Business customers (Permanent Account Number)',\r\n }\r\n ),\r\n Account_VATShortLabel: _TL_(\r\n 'VAT',\r\n {\r\n comment: 'Label for VAT tax Id for taxable EMEA countries',\r\n }\r\n ),\r\n Account_VATIdLabel: _TL_(\r\n 'VAT ID',\r\n { comment: 'Label for VAT tax id for global countries' }\r\n ),\r\n Account_NITLabel: _TL_(\r\n 'NIT',\r\n {\r\n comment: 'Label for NIT tax Id',\r\n }\r\n ),\r\n Account_BINLabel: _TL_(\r\n 'BIN',\r\n {\r\n comment: 'Label for BIN tax Id',\r\n }\r\n ),\r\n Account_NPWPLabel: _TL_(\r\n 'NPWP',\r\n {\r\n comment: 'Label for NPWP tax Id',\r\n }\r\n ),\r\n Account_TINLabel: _TL_(\r\n 'TIN',\r\n {\r\n comment: 'Label for TIN tax Id',\r\n }\r\n ),\r\n Account_TaxIDLabel: _TL_(\r\n 'Tax ID',\r\n {\r\n comment: 'Label for tax Id',\r\n }\r\n ),\r\n Account_TINOrVATLabel: _TL_(\r\n 'TIN or VAT ID',\r\n {\r\n comment: 'Label for TIN or VAT tax Id',\r\n }\r\n ),\r\n Account_TRNOrVATLabel: _TL_(\r\n 'TRN or VAT ID',\r\n {\r\n comment: 'Label for TRN or VAT tax Id',\r\n }\r\n ),\r\n Account_VKNLabel: _TL_(\r\n 'VKN',\r\n {\r\n comment: 'Label for VKN tax Id',\r\n }\r\n ),\r\n Account_VAT_TINLabel: _TL_(\r\n 'VAT-TIN',\r\n {\r\n comment: 'Label for VAT-TIN tax Id',\r\n }\r\n ),\r\n Account_RFCLabel: _TL_(\r\n 'RFC',\r\n {\r\n comment: 'Label for RFC tax Id',\r\n }\r\n ),\r\n Account_NDSKKSLabel: _TL_(\r\n 'NDS/KKS',\r\n {\r\n comment: 'Label for NDS/KKS tax Id',\r\n }\r\n ),\r\n Account_AAHLabel: _TL_(\r\n 'AAH',\r\n {\r\n comment: 'Label for AAH tax Id',\r\n }\r\n ),\r\n Account_CUITLabel: _TL_(\r\n 'CUIT',\r\n {\r\n comment: 'Label for CUIT tax Id',\r\n }\r\n ),\r\n Account_VOENLabel: _TL_(\r\n 'VÖEN',\r\n {\r\n comment: 'Label for VÖEN tax Id',\r\n }\r\n ),\r\n Account_IFULabel: _TL_(\r\n 'IFU',\r\n {\r\n comment: 'Label for IFU tax Id',\r\n }\r\n ),\r\n Account_nTVALabel: _TL_(\r\n 'n° TVA',\r\n {\r\n comment: 'Label for n° TVA tax Id',\r\n }\r\n ),\r\n Account_JCTLabel: _TL_(\r\n 'JCT',\r\n {\r\n comment: 'Label for JCT tax Id',\r\n }\r\n ),\r\n Account_SSTLabel: _TL_(\r\n 'SST',\r\n {\r\n comment: 'Label for SST tax Id',\r\n }\r\n ),\r\n Account_TBCLabel: _TL_(\r\n 'TBC',\r\n {\r\n comment: 'Label for TBC tax Id',\r\n }\r\n ),\r\n Account_FINLabel: _TL_(\r\n 'FIN',\r\n {\r\n comment: 'Label for FIN tax Id',\r\n }\r\n ),\r\n Account_VATRegNoLabel: _TL_(\r\n 'VAT Reg. No.',\r\n {\r\n comment: 'Label for VAT Reg. No. tax Id',\r\n }\r\n ),\r\n Account_RIFLabel: _TL_(\r\n 'RIF',\r\n {\r\n comment: 'Label for RIF tax Id',\r\n }\r\n ),\r\n Account_TPINLabel: _TL_(\r\n 'TPIN',\r\n {\r\n comment: 'Label for TPIN tax Id',\r\n }\r\n ),\r\n Account_BRNLabel: _TL_(\r\n 'BRN',\r\n {\r\n comment: 'Label for BRN tax Id',\r\n }\r\n ),\r\n Account_RUCLabel: _TL_(\r\n 'RUC',\r\n {\r\n comment: 'Label for RUC tax Id',\r\n }\r\n ),\r\n Account_RUTLabel: _TL_(\r\n 'RUT',\r\n {\r\n comment: 'Label for RUT tax Id',\r\n }\r\n ),\r\n Account_STRNLabel: _TL_(\r\n 'STRN',\r\n {\r\n comment: 'Label for STRN tax Id',\r\n }\r\n ),\r\n Account_VAT_AbsentMessage: _TL_(\r\n 'Failure to provide your VAT registration number may result in tax being applied to your invoice.',\r\n {\r\n comment: 'Message to call out the consequence of not providing the tax ID',\r\n }\r\n ),\r\n Account_VAT_AbsentMessage_Serbia: _TL_(\r\n 'Failure to provide your Tax Identification Number may result in tax being applied to your invoice.',\r\n {\r\n comment: 'Message to call out the consequence of not providing the tax ID for Serbia',\r\n }\r\n ),\r\n Account_ABNLabel: _TL_(\r\n 'Australian Business Number',\r\n {\r\n comment: 'Label for Australian Business Number',\r\n }\r\n ),\r\n Account_NZGSTRegistrationNumberLabel: _TL_(\r\n 'NZ GST registration number',\r\n {\r\n comment: 'Label for entering the New Zealand GST regisration number of an account.',\r\n }\r\n ),\r\n Account_GSTRegistrationNumberLabel: _TL_(\r\n 'GST/HST registration number or Business Number',\r\n {\r\n comment: 'Label for entering the GST regisration number of an account.',\r\n }\r\n ),\r\n Account_PSTRegistrationNumberLabel: _TL_(\r\n 'PST registration number',\r\n {\r\n comment: 'Label for entering the PST regisration number of an account.',\r\n }\r\n ),\r\n Account_QSTRegistrationNumberLabel: _TL_(\r\n 'QST registration number',\r\n {\r\n comment: 'Label for entering the QST regisration number of an account.',\r\n }\r\n ),\r\n Account_CCMLabel: _TL_(\r\n 'C.C.M.',\r\n {\r\n comment: 'Label for Tax Id for Brazilian Business customers (Cadastro de Contribuinte Mobiliário)',\r\n }\r\n ),\r\n Account_IELabel: _TL_(\r\n 'IE',\r\n {\r\n comment: 'Label for Tax Id for Brazilian Personal/Business customers',\r\n }\r\n ),\r\n Account_UINLabel: _TL_(\r\n 'UIN',\r\n {\r\n comment: 'Label for Unique Identification Number',\r\n }\r\n ),\r\n Account_TRNLabel: _TL_(\r\n 'TRN',\r\n {\r\n comment: 'Label for Tax Registration Number',\r\n }\r\n ),\r\n TaxType_1: _TL_('Personal'),\r\n TaxType_2: _TL_('Business'),\r\n Account_TaxTypeLabel: _TL_('Tax type'),\r\n Label_Optional: _TL_('(optional)'),\r\n Label_State_Tax_ID_Optional: _TL_('(State Tax ID, optional)'),\r\n Label_Required: _TL_('(required)'),\r\n Label_RequiredForBusinessCustomers: _TL_('(required for business customers)'),\r\n Label_RequiredForTaxRegisteredCustomers: _TL_('(required for tax registered customers)'),\r\n Label_RequiredForVATRegisteredBusinessCustomers: _TL_('(required for VAT registered business customers)'),\r\n Label_RequiredForCustomersClaimingTaxExemption: _TL_('(required for customers claiming a tax exemption)'),\r\n Label_RequiredForValueAddedTaxIVARegisteredCustomers: _TL_('(required for Value Added Tax/IVA registered customers)'),\r\n Label_RequiredForAllTheEntities: _TL_('(required for all the entities)'),\r\n Account_ReverseChargeDocumentLabel: _TL_('Reverse Charge Document'),\r\n Account_ReverseChargeDocument_Download: _TL_('(Please download {{link}}this document{{/link}}, fill in the required fields, and upload it below.)'),\r\n Account_Attestation_Label: _TL_('Please attest that the above Reverse Charge Document has been uploaded by an employee of the company that is receiving advertising services from Microsoft Advertising, and that the uploader understands the reverse charge account concept and the company\\'s VAT return filing obligations.'),\r\n Account_ReverseChargeDocumentAttestation_Positive: _TL_('Yes'),\r\n Account_ReverseChargeDocumentAttestation_Negative: _TL_('No'),\r\n Account_ReverseChargeDocumentAttestation_Positive_StaticViewStatement: _TL_('You have attested that the above Reverse Charge Document has been uploaded by an employee of the company that is receiving advertising services from Microsoft Advertising, and that the uploader understands the reverse charge account concept and the company\\'s VAT return filing obligations.'),\r\n Account_ReverseChargeDocumentAttestation_Negative_StaticViewStatement: _TL_('You haven’t attested that the above Reverse Charge Document has been uploaded by an employee of the company that is receiving advertising services from Microsoft Advertising, and that the uploader understands the reverse charge account concept and the company\\'s VAT return filing obligations.'),\r\n Account_ReverseChargeDocument_Uploaded: _TL_('Your reverse charge document has been uploaded.'),\r\n Account_TaxCertificate_Uploaded: _TL_('Your tax certificate has been uploaded.'),\r\n Account_PANMissingMessage: _TL_(\r\n 'Enter your 10-digit alphanumeric Permanent Account Number.',\r\n {\r\n comment: 'Error message displayed for India accounts when user didn\\'t provide any PAN',\r\n }\r\n ),\r\n Account_PANFormatValidationMessage: _TL_(\r\n 'This PAN is not valid. Please re-enter your 10-digit alphanumeric code.',\r\n {\r\n comment: 'Validation message that is shown for a PAN account if a tax ID is entered in the wrong format.',\r\n }\r\n ),\r\n Account_VATValidationMessage: _TL_(\r\n 'Enter a valid VAT registration number without spaces.',\r\n {\r\n comment: 'Error message shown for an EMEA account when the provided VAT tax id is an invalid format. VAT stands for Value-Added Tax.',\r\n }\r\n ),\r\n Account_UnitedArabEmiratesVATFormatValidationMessage: _TL_(\r\n 'This TRN or VAT ID must be in the following 15-digit format, where # represents a number: ###############.',\r\n {\r\n comment: 'Error message shown for United Arab Emirates account when the provided tax id is an invalid format.',\r\n }\r\n ),\r\n Account_IsraelVATFormatValidationMessage: _TL_(\r\n 'This VAT ID must be in the following 9-digit format, where # represents a number: ##########.',\r\n {\r\n comment: 'Error message shown for Israel account when the provided tax id is an invalid format.',\r\n }\r\n ),\r\n Account_VietnamVATFormatValidationMessage: _TL_(\r\n 'This TIN must be in one of the following formats, where # represents a number: ########## or ##########-###.',\r\n {\r\n comment: 'Error message shown for Vietnam account when the provided tax id is an invalid format.',\r\n }\r\n ),\r\n Account_NorwayVATFormatValidationMessage: _TL_(\r\n 'This VAT ID is invalid. Please re-enter.',\r\n {\r\n comment: 'Error message shown for Norway account when the provided tax id is an invalid format.',\r\n }\r\n ),\r\n Account_TurkeyVATFormatValidationMessage: _TL_(\r\n 'This VKN must be in one of the following formats, where # represents a number: ########## or ###########.',\r\n {\r\n comment: 'Error message shown for Turkey account when the provided tax id is an invalid format.',\r\n }\r\n ),\r\n Account_GlobalThailandVATFormatValidationMessage: _TL_(\r\n 'This VAT ID must be in one of the following formats, where # represents a number: #-####-#####-##-# or #############.',\r\n {\r\n comment: 'Error message shown for Thailand account when the provided tax id is an invalid format.',\r\n }\r\n ),\r\n Account_GeorgiaVATFormatValidationMessage: _TL_(\r\n 'This VAT ID must be in the following 9-digit format, where # represents a number: #########.',\r\n {\r\n comment: 'Error message shown for Georgia account when the provided tax id is an invalid format.',\r\n }\r\n ),\r\n Account_BangladeshVATFormatValidationMessage: _TL_(\r\n 'This BIN must be in the following 13-digit format, where # represents a number: #########-####.',\r\n {\r\n comment: 'Error message shown for Bangladesh account when the provided tax id is an invalid format.',\r\n }\r\n ),\r\n Account_IndonesiaVATFormatValidationMessage: _TL_(\r\n 'This NPWP must be in one of the following formats, where # represents a number: ##.###.###.#-###.### or ###############.',\r\n {\r\n comment: 'Error message shown for Indonesia account when the provided tax id is an invalid format.',\r\n }\r\n ),\r\n Account_BelarusVATFormatValidationMessage: _TL_(\r\n 'This VAT ID must be in the following 9-digit format, where # represents a number: #########.',\r\n {\r\n comment: 'Error message shown for Belarus account when the provided tax id is an invalid format.',\r\n }\r\n ),\r\n Account_IcelandVATFormatValidationMessage: _TL_(\r\n 'This VAT ID must be in one of the following formats, where # represents a number: ##### or ######.',\r\n {\r\n comment: 'Error message shown for Iceland account when the provided tax id is an invalid format.',\r\n }\r\n ),\r\n Account_MoldovaVATFormatValidationMessage: _TL_(\r\n 'This VAT ID must be in the following 7-digit format, where # represents a number: #######.',\r\n {\r\n comment: 'Error message shown for Moldova account when the provided tax id is an invalid format.',\r\n }\r\n ),\r\n Account_ZimbabweVATFormatValidationMessage: _TL_(\r\n 'This VAT ID must be in the following 8-digit format, where # represents a number: ########.',\r\n {\r\n comment: 'Error message shown for Zimbabwe account when the provided tax id is an invalid format.',\r\n }\r\n ),\r\n Account_GlobalNigeriaVATFormatValidationMessage: _TL_(\r\n 'This VAT ID must be in the following format, where # represents a number: ########-0001.',\r\n {\r\n comment: 'Error message shown for Nigeria account when the provided tax id is an invalid format.',\r\n }\r\n ),\r\n Account_BahrainVATFormatValidationMessage: _TL_(\r\n 'This VAT ID must be in the following format, where # represents a number: 2##############.',\r\n {\r\n comment: 'Error message shown for Bahrain account when the provided tax id is an invalid format.',\r\n }\r\n ),\r\n Account_CambodiaVATFormatValidationMessage: _TL_(\r\n 'This TIN must be in one of the following formats, where # represents a number: B0##-#########, E0##-##########, K0##-#########, or L001-#########.',\r\n {\r\n comment: 'Error message shown for Cambodia account when the provided tax id is an invalid format.',\r\n }\r\n ),\r\n Account_KenyaVATFormatValidationMessage: _TL_(\r\n 'This VAT ID must be in the following format, where # represents a number and * represents a letter: P#########*.',\r\n {\r\n comment: 'Error message shown for Kenya account when the provided tax id is an invalid format.',\r\n }\r\n ),\r\n Account_SaudiArabiaVATFormatValidationMessage: _TL_(\r\n 'This TIN or VAT ID must be in the following 15-digit format, where # represents a number: ###############.',\r\n {\r\n comment: 'Error message shown for Saudi Arabia account when the provided tax id is an invalid format.',\r\n }\r\n ),\r\n Account_OmanVATFormatValidationMessage: _TL_(\r\n 'This VAT ID must be in the following format, where # represents a number: OM##########.',\r\n {\r\n comment: 'Error message shown for Oman account when the provided tax id is an invalid format.',\r\n }\r\n ),\r\n Account_GhanaVATFormatValidationMessage: _TL_(\r\n 'This TIN must be in one of the following formats, where # represents a number: C########## or P##########.',\r\n {\r\n comment: 'Error message shown for Ghana account when the provided tax id is an invalid format.',\r\n }\r\n ),\r\n Account_CameroonVATFormatValidationMessage: _TL_(\r\n 'This VAT ID must be in the following format, where # represents a number and * represents a letter: *############*.',\r\n {\r\n comment: 'Error message shown for Cameroon account when the provided tax id is an invalid format.',\r\n }\r\n ),\r\n Account_UzbekistanVATFormatValidationMessage: _TL_(\r\n 'This VAT ID must be in the following 12-digit format, where # represents a number: ############.',\r\n {\r\n comment: 'Error message shown for Uzbekistan account when the provided tax id is an invalid format.',\r\n }\r\n ),\r\n Account_FijiVATFormatValidationMessage: _TL_(\r\n 'This TIN must be in one of the following formats, where # represents a number: ##-#####-#-# or ##########.',\r\n {\r\n comment: 'Error message shown for Fiji account when the provided tax id is an invalid format.',\r\n }\r\n ),\r\n Account_GuatemalaVATFormatValidationMessage: _TL_(\r\n 'This NIT must be in the following format, where # represents a number: #######-#.',\r\n {\r\n comment: 'Error message shown for Guatemala account when the provided tax id is an invalid format.',\r\n }\r\n ),\r\n Account_TheBahamasVATFormatValidationMessage: _TL_(\r\n 'The TIN must be in the following 9-digit format, where # represents a number: #########.',\r\n {\r\n comment: 'Error message shown for The Bahamas account when the provided tax id is an invalid format.',\r\n }\r\n ),\r\n Account_PhilippinesVATFormatValidationMessage: _TL_(\r\n 'This TIN must be in one of the following formats, where # represents a number: ###-###-### or ###-###-###-###.',\r\n {\r\n comment: 'Error message shown for Philippines account when the provided tax id is an invalid format.',\r\n }\r\n ),\r\n FilePicker_ErrorMessage_Required_Global: _TL_(\r\n 'Please upload your tax certificate document associated with your {{taxId}}.',\r\n {\r\n comment: 'Error message shown for an account when the tax certificate is not provided',\r\n }\r\n ),\r\n Account_GSTINFormatValidationMessage: _TL_(\r\n 'This Goods and Services Tax identification number is not valid. Please check and re-enter your GST IN.',\r\n {\r\n comment: 'Validation message that is shown for a GSTIN account if a tax ID is entered in the wrong format.',\r\n }\r\n ),\r\n Account_CPFValidationMessage: _TL_(\r\n 'This CPF is not valid. Please re-enter your 11-digit number.',\r\n {\r\n comment: 'Error message shown for a personal BRL account when the provided tax id is invalid',\r\n }\r\n ),\r\n Account_CNPJValidationMessage: _TL_(\r\n 'This CNPJ is not valid. Please re-enter your 14-digit number.',\r\n {\r\n comment: 'Error message shown for a business BRL account when the provided tax id is invalid',\r\n }\r\n ),\r\n Account_CNPJMissingMessage: _TL_(\r\n 'CNPJ is required for business accounts.',\r\n {\r\n comment: 'Error message displayed for Brazilian business accounts when user didn\\'t provide any CNPJ number',\r\n }\r\n ),\r\n Account_CCMMissingMessage: _TL_(\r\n 'C.C.M is required for business accounts with business address in Sao Paulo city',\r\n {\r\n comment: 'Error message displayed for Brazilian business accounts in Sao Paulo when user didn\\'t provide any CCM number',\r\n }\r\n ),\r\n Account_CCMValidationMessage: _TL_(\r\n 'This C.C.M. is not valid. Reenter your 8-digit number.',\r\n {\r\n comment: 'Error message shown for a business BRL account when the provided tax id is invalid',\r\n }\r\n ),\r\n Account_IEValidationMessage: _TL_(\r\n 'This IE is invalid. Please enter a valid 9 to 14-digit number or letter.',\r\n {\r\n comment: 'Error message shown for a personal/business BRL account when the provided tax id is invalid',\r\n }\r\n ),\r\n Account_ABNValidationMessage: _TL_('This ABN is not valid. Reenter your 11-digit number without spaces.'),\r\n Account_NZGSTRegistrationNumberFormatValidationMessage: _TL_(\r\n 'This GST registration number is not valid. Please reenter your 8- or 9-digit registration using numbers only.',\r\n {\r\n comment: 'Validation message that is shown for a NZ GST account if a tax ID is entered in the wrong format.',\r\n }\r\n ),\r\n Account_NewZealandGSTRegistrationNumberFormatValidationMessage: _TL_(\r\n 'Enter a valid GST without spaces.',\r\n {\r\n comment: 'Validation message that is shown for a NZ GST account if a tax ID is entered in the wrong format. (For TaxForm component)',\r\n }\r\n ),\r\n Account_SGGSTRegistrationNumberFormatValidationMessage: _TL_(\r\n 'This GST is not valid. Please re-enter it.',\r\n {\r\n comment: 'Validation message that is shown for a SG GST account if a tax ID is entered in the wrong format.',\r\n }\r\n ),\r\n Account_PIBLabel: _TL_(\r\n 'Tax identification number (PIB)',\r\n {\r\n comment: 'Label for Tax Id for Serbia customers (Poreski Identifikacioni Broj)',\r\n }\r\n ),\r\n Account_PIBNumberMissingMessage: _TL_(\r\n 'Please enter your tax identification number (PIB).',\r\n {\r\n comment: 'Error message displayed for required Tax identification number',\r\n }\r\n ),\r\n Account_PIBNumberFormatValidationMessage: _TL_(\r\n 'Please re-enter your tax identification number (PIB).',\r\n {\r\n comment: 'Validation message that is shown for a Serbia account if a tax ID is entered in the wrong format.',\r\n }\r\n ),\r\n Account_LegalNumberLabel: _TL_('Legal number'),\r\n Account_SerbiaLegalNumberFormatValidationMessage: _TL_('The Legal number must be in the following format: XXXXXXXX, where X represents a digit.'),\r\n Account_IndiaGSTINFormatValidationMessage: _TL_(\r\n 'This GSTIN is not valid. Please re-enter your 15-digit alphanumeric code.',\r\n {\r\n comment: 'Validation message that is shown for a India account if a tax ID GSTIN is entered in the wrong format.',\r\n }\r\n ),\r\n Account_LegalIdentifierNumber: _TL_(\r\n 'Legal Identifier Number',\r\n { comment: 'Label for Australian Business Number' }\r\n ),\r\n Armenia_Legal_Identifier_Description: _TL_('Please provide your UNN/Public service number.'),\r\n Azerbaijan_Legal_Identifier_Description: _TL_('Please provide your TIN/INN/PIC.'),\r\n Brazil_Legal_Identifier_Description: _TL_('Please provide your CPF.'),\r\n China_Legal_Identifier_Description: _TL_('Please provide your TIN.'),\r\n Hungary_Legal_Identifier_Description: _TL_('Please provide your TIN.'),\r\n Turkey_Legal_Identifier_Description: _TL_('Please provide your TIN.'),\r\n India_Legal_Identifier_Description: _TL_('Please provide your TIN/PAN.'),\r\n Iraq_Legal_Identifier_Description: _TL_('Please provide your TIN.'),\r\n Kazakhstan_Legal_Identifier_Description: _TL_('Please provide your BIN/IIN.'),\r\n Kyrgyzstan_Legal_Identifier_Description: _TL_('Please provide your INN.'),\r\n Moldova_Legal_Identifier_Description: _TL_('Please provide your IDNO/IDNP/Fiscal Code.'),\r\n Myanmar_Legal_Identifier_Description: _TL_('Please provide your TIN.'),\r\n Poland_Legal_Identifier_Description: _TL_('Please provide your TIN/PESEL.'),\r\n Russia_Legal_Identifier_Description: _TL_('Please provide your INN.'),\r\n Saudi_Arabia_Legal_Identifier_Description: _TL_('Please provide your TIN.'),\r\n South_Africa_Legal_Identifier_Description: _TL_('Please provide your TRN.'),\r\n South_Sudan_Legal_Identifier_Description: _TL_('Please provide your TIN.'),\r\n Tajikistan_Legal_Identifier_Description: _TL_('Please provide your INN/EIN/KPP.'),\r\n Thailand_Legal_Identifier_Description: _TL_('Please provide your TIN.'),\r\n Ukraine_Legal_Identifier_Description: _TL_('Please provide your EGRPOU/EDRPOU.'),\r\n United_Arab_Emirates_Legal_Identifier_Description: _TL_('Please provide your 5 Digits Commercial License number or 15 Digits VAT TRN.'),\r\n Uzbekistan_Legal_Identifier_Description: _TL_('Please provide your INN.'),\r\n Venezuela_Legal_Identifier_Description: _TL_('Please provide your RIF.'),\r\n Vietnam_Legal_Identifier_Description: _TL_('Please provide your TIN.'),\r\n Bangladesh_Legal_Identifier_Description: _TL_('Please provide your PAN.'),\r\n Bhutan_Legal_Identifier_Description: _TL_('Please provide your TPN.'),\r\n Nepal_Legal_Identifier_Description: _TL_('Please provide your PAN.'),\r\n Pakistan_Legal_Identifier_Description: _TL_('Please provide your NTN.'),\r\n Sri_Lanka_Legal_Identifier_Description: _TL_('Please provide your TIN.'),\r\n Maldives_Legal_Identifier_Description: _TL_('Please provide your TIN.'),\r\n Account_BusinessLocation_Label: _TL_('Business location'),\r\n BusinessAddressControl_Address: _TL_('Business address'),\r\n AddressControl_AddressLine1: _TL_('Address line 1'),\r\n AddressControl_AddressLine2: _TL_('Address line 2'),\r\n AddressControl_City: _TL_('City'),\r\n AddressControl_StateOrProvince: _TL_('State or province'),\r\n AddressControl_State: _TL_('State'),\r\n AddressControl_Province: _TL_('Province'),\r\n AddressControl_ZipCode: _TL_('ZIP code'),\r\n AddressControl_PostalCode: _TL_('Postal code'),\r\n AddressControl_ZipOrPostalCode: _TL_('ZIP or Postal code'),\r\n Billing_InvoiceSettings_EnterNewAddress: _TL_('Enter a new address'),\r\n AddressControl_LegalBusinessName: _TL_('Legal business name'),\r\n Customer_CustomerNameRequiredValidationMessage: _TL_('Please enter a business name'),\r\n Customer_CustomerNameMaxLengthValidationMessage: _TL_('Business name must be 90 characters or less.'),\r\n Customer_CustomerNameMinLengthValidationMessage: _TL_('Business name must be 2 characters or more.'),\r\n Billing_Settings_UsersListPhoneNumber: _TL_('Phone number'),\r\n Common_PhoneNumberRequired: _TL_('Please enter a phone number'),\r\n Common_BusinessPhoneMaxLengthValidationMessage: _TL_('Business phone must be 50 letters or less'),\r\n Common_BusinessPhoneMinLengthValidationMessage: _TL_('Business phone must be 1 letter or more'),\r\n Common_PhoneNumberInvalid: _TL_(\r\n 'Please enter a valid phone number. You may use 0-9, ext, spaces, and the . () - + characters.',\r\n {\r\n comment: '\"ext\" is a part of the regular expression and should not be localized',\r\n }\r\n ),\r\n Validation_NotEmpty_Required_Field: _TL_('This field is required'),\r\n Validation_String_Max_Length: _TL_('Field should not exceed {{maxlength}} characters'),\r\n Validation_String_Invalid_Characters: _TL_('Enter a valid value'),\r\n AddressControl_AddressLine3: _TL_('Address line 3'),\r\n AddressControl_AddressLine4: _TL_('Address line 4'),\r\n AddressControl_ProvinceOrRegion: _TL_('Province or region'),\r\n AddressControl_Country: _TL_('Country or region'),\r\n TimeZone: _TL_('Time zone'),\r\n PreferredTimeZone: _TL_('Preferred time zone'),\r\n TaxOptionType: _TL_('Tax type'),\r\n Account_VATCertificateVerificationLabel: _TL_('A valid VAT exemption certificate has been provided by the customer.'),\r\n Account_LocalVATRegistrationNumberLabel: _TL_('This customer provided a local VAT registration number that has been approved by EMEA Tax.'),\r\n Account_TaxCertification: _TL_('Tax certificate (RUT)'),\r\n Account_TaxCertificate: _TL_('Tax Certificate'),\r\n Account_TaxCertificate_Or_EquivalentProof: _TL_('Tax Certificate or Equivalent Proof'),\r\n Account_TaxCertification_Colombia: _TL_('Tax certificate/RUT document'),\r\n Account_Tax_Exemption_Certificate: _TL_('Tax exemption certificate'),\r\n Account_ColombiaVATLabel: _TL_(\r\n 'NIT/Tax ID',\r\n { comment: 'Label for Tax Id for Colombia customers' }\r\n ),\r\n Account_ColombiaVatNumberValidationMessage: _TL_('Please enter a tax registration number to validate your tax certificate.'),\r\n Account_ColombiaCertificateValidationMessage: _TL_('The file you’ve uploaded is too large. Please reduce the file size to less than 20 megabytes and try again.'),\r\n Account_ColombiaCertificationExecutionDateValidationMessage: _TL_('Please enter a valid execution date. The format is \"YYYY/MM/DD\".'),\r\n Account_ColombiaVATFormatValidationMessage: _TL_('This NIT must be in the following 10-digit format, where # represents a number: #########-#.'),\r\n Account_CertificateSizeValidationMessage: _TL_('The file you’ve uploaded is too large. Please reduce the file size to less than 20 megabytes and try again.'),\r\n Account_HungaryVATFormatValidationMessage: _TL_('This VAT ID must be in the following format, where HU is followed by 8 numbers and # represents a number: HU########.'),\r\n Account_NigeriaVATFormatValidationMessage: _TL_('This VAT ID must be in the following format, where # represents a number: ########-0001.'),\r\n Account_PortugalVATFormatValidationMessage: _TL_('This VAT ID must be in the following format, where PT is followed by 9 numbers and # represents a number: PT#########.'),\r\n Account_ThailandVATFormatValidationMessage: _TL_('This VAT number must be in the following format: 13 numbers.'),\r\n Account_AustraliaGSTNumberFormatValidationMessage: _TL_('This ABN is not valid. Please verify and re-enter.'),\r\n Account_CanadaGSTRegistrationNumberFormatValidationMessage: _TL_('The VAT ID must be in one of the following formats, where # represents a number: #########, #########RT####, or ######### RT###.'),\r\n Account_CanadaBCPSTRegistrationNumberFormatValidationMessage: _TL_('The VAT ID must be in one of the following formats, where # represents a number: PST-####-####.'),\r\n Account_CanadaQCQSTRegistrationNumberFormatValidationMessage: _TL_('The VAT ID must be in one of the following formats, where # represents a number: ##########TQ####.'),\r\n Account_CanadaMBPSTRegistrationNumberFormatValidationMessage: _TL_('The VAT ID must be in one of the following formats, where # represents a number: ######-# or #########MT####.'),\r\n Account_CanadaSKPSTRegistrationNumberFormatValidationMessage: _TL_('The VAT ID must be in one of the following formats, where # represents a number: #######.'),\r\n Account_ArmeniaVATFormatValidationMessage: _TL_('This AAH must be in one of the following formats, where # represents a number: ########/0 or ########/1.'),\r\n Account_BarbadosVATFormatValidationMessage: _TL_('This TIN must be in the following 13-digit format, where # represents a number: #############.'),\r\n Account_KazakhstanVATFormatValidationMessage: _TL_('This NDS/KKS must be in the following 12-digit format, where # represents a number: ############.'),\r\n Account_LaosVATFormatValidationMessage: _TL_('This TIN must be in the following 12-digit format, where # represents a number: ############.'),\r\n Account_MexicoVATFormatValidationMessage: _TL_('Enter a valid VAT registration number without spaces.'),\r\n Account_NepalVATFormatValidationMessage: _TL_('This VAT ID must be in the following 9-digit format, where # represents a number: #########.'),\r\n Account_SouthAfricaVATFormatValidationMessage: _TL_('This VAT ID must be in the following 10-digit format, where # represents a number: ##########.'),\r\n Account_ArgentinaVATFormatValidationMessage: _TL_('The CUIT must be in the following format, where # represents a number: 30-########-#.'),\r\n Account_AzerbaijanVATFormatValidationMessage: _TL_('The VÖEN must be in the following format, where # represents a number: AZ##########.'),\r\n Account_BeninVATFormatValidationMessage: _TL_('The IFU must be in the following 13-digit format, where # represents a number: #############.'),\r\n Account_ChinaVATFormatValidationMessage: _TL_('The Tax ID must be in one of the following formats, where # represents a number or letter: ############### or ##################.'),\r\n Account_IvoryCoastVATFormatValidationMessage: _TL_('The n° TVA must be in the following format, where # represents a number, and * represents a letter: #######*.'),\r\n Account_JapanVATFormatValidationMessage: _TL_('The JCT must be in the following 13-digit format, where # represents a number: #############.'),\r\n Account_MalaysiaVATFormatValidationMessage: _TL_('The SST must be in the following format, where # represents a number, * represents a letter: *##-####-########.'),\r\n Account_MyanmarVATFormatValidationMessage: _TL_('The TBC must be in the following 9-digit format, where # represents a number: #########.'),\r\n Account_SurinameVATFormatValidationMessage: _TL_('The FIN must be in the following 10-digit format, where # represents a number: ##########.'),\r\n Account_TajikistanVATFormatValidationMessage: _TL_('The TIN must be in the following 9-digit format, where # represents a number: #########.'),\r\n Account_UkraineVATFormatValidationMessage: _TL_('The VAT registration number must be in the following format, where # represents a number or letter: ############.'),\r\n Account_VenezuelaVATFormatValidationMessage: _TL_('The RIF must be in the following format, where # represents a number: J/G/V/E-#########, or J/G/V/E-########-#.'),\r\n Account_ZambiaVATFormatValidationMessage: _TL_('The TPIN must be in the following format, where # represents a number: 100#######.'),\r\n Account_EgyptVATFormatValidationMessage: _TL_('This VAT ID is not valid. Please verify and re-enter.'),\r\n Account_EgyptTRNFormatValidationMessage: _TL_('This TRN is not valid. Please verify and re-enter.'),\r\n Account_SouthKoreaVATFormatValidationMessage: _TL_('The BRN must be in the following format, where # represents a number: KR###-##-#####.'),\r\n Account_PeruVATFormatValidationMessage: _TL_('The RUC must be in the following format, where # represents a number: ###########.'),\r\n Account_UruguayVATFormatValidationMessage: _TL_('The RUT must be in the following format, where # represents a number: ############.'),\r\n Account_PanamaVATFormatValidationMessage: _TL_('This RUC is not valid. Please verify and re-enter.'),\r\n Account_PakistanVATFormatValidationMessage: _TL_('The STRN must be in the following format, where # represents a number: PK#############.'),\r\n Account_SenegalVATFormatValidationMessage: _TL_('The VAT ID must be in the following format, where # represents a number, and * represents a number or letter: #########***.'),\r\n Account_TaiwanVATFormatValidationMessage: _TL_('The VAT ID must be in the following format, where # represents a number: ########.'),\r\n Account_UINValidationMessage: _TL_('This UIN is not valid. Please verify and re-enter.'),\r\n Common_NA_Text: _TL_('-'),\r\n FilePicker_ExploreFile: _TL_('Browse'),\r\n FilePicker_RemoveFile: _TL_('Remove'),\r\n FilePicker_AddNewFile: _TL_('Add another file'),\r\n FilePicker_ErrorMessage_Required: _TL_('This field is required'),\r\n FilePicker_ErrorMessage_Required_VAT: _TL_('Please upload your tax certificate that is associated with your VAT ID.'),\r\n FilePicker_ErrorMessage_Required_VAT_Colombia: _TL_('Please upload your tax certificate/RUT document associated with your VAT ID.'),\r\n FilePicker_ErrorMessage_ExtensionNotAllowed: _TL_('Please upload PDF files.'),\r\n FileUpload_Failed: _TL_('Upload failed. Please retry.'),\r\n FileUpload_Succeed: _TL_('Successfully uploaded'),\r\n '{{number}} of {{total}}': _TL_('{{number}} of {{total}}'),\r\n Account_TaxCertificationStatus_Info_174: _TL_('Your tax certificate has been approved.'),\r\n Account_TaxCertificationStatus_Info_175: _TL_('Your tax certificate has been rejected.'),\r\n Account_TaxCertificationStatus_Info_176: _TL_('Your tax certificate is pending for review.'),\r\n Account_TaxCertificationValidationResult: _TL_('Tax certificate validation result'),\r\n Account_TaxCertificationStatus_Approve: _TL_('Approve'),\r\n Account_TaxCertificationStatus_Reject: _TL_('Reject'),\r\n Account_TaxCertificationExecutionDate: _TL_('Execution date'),\r\n ValueNoneLabel: _TL_('(Not set)'),\r\n AddressCountry_HelpPopup_AriaLabel: _TL_('Countries dropdown'),\r\n BusinessLocation_Tooltip_AriaLabel: _TL_('Business location tooltip'),\r\n Preferred_Timezone_Tooltip_AriaLabel: _TL_('Preferred time zone tooltip'),\r\n AddressControl_LegalBusinessName_Tooltip_AriaLabel: _TL_('Legal business name tooltip'),\r\n Account_TaxCertification_ViewCert: _TL_('view the certificate'),\r\n Account_Tax_Certificate_Absent: _TL_('Failure to provide your tax exemption certificate may result in tax being applied to your invoice.'),\r\n Account_Tax_Certificate_Absent_Colombia: _TL_('Failure to provide your NIT/TAX ID and Tax Certificate may result in tax being applied to your invoice.'),\r\n Account_TaxCertificationDeclineReason: _TL_('Rejection reason'),\r\n Account_TaxCertificate_DeclineReasonType_1: _TL_('Document submitted is not the Formulario del Registro Unico Tributario Hoja Principal.'),\r\n Account_TaxCertificate_DeclineReasonType_2: _TL_('None of the fields in section 53 “Cόdigo” contain an 11 or a 48.'),\r\n Account_TaxCertificate_DeclineReasonType_3: _TL_('The NIT is missing or incomplete.'),\r\n Account_TaxCertificate_DeclineReasonType_4: _TL_('The NIT number on the certificate does not match the number entered into the Microsoft advertising portal.'),\r\n Account_VatRequired: _TL_('For accounts with business locations in {{countryName}} we require a valid VAT ID.'),\r\n AccountGrid_TaxInformation_VatStatus_174: _TL_('Valid'),\r\n AccountGrid_TaxInformation_VatStatus_175: _TL_('Invalid'),\r\n AccountGrid_TaxInformation_VatStatus_176: _TL_('Pending'),\r\n AccountGrid_TaxInformation_VatStatus_177: _TL_('Past due'),\r\n Account_ChileIVAorVATConfirmLabel: _TL_('Please confirm whether you’re an IVA/VAT tax payer'),\r\n Account_ChileIVAorVATConfirmPositive: _TL_('Yes'),\r\n Account_ChileIVAorVATConfirmNegative: _TL_('No'),\r\n Account_ChileIVAOrVATTaxPayerPositiveLabel: _TL_('The customer has confirmed that they are an IVA/VAT taxpayer.'),\r\n Account_ChileIVAOrVATTaxPayerNegativeLabel: _TL_('The customer has confirmed that they are not an IVA/VAT taxpayer.'),\r\n Account_ChileWHTConfirmLabel: _TL_('Please confirm whether the Withholding Tax(WHT) applied to you'),\r\n Account_ChileWHTConfirmPositive: _TL_('Yes'),\r\n Account_ChileWHTConfirmNegative: _TL_('No'),\r\n Account_ChileWithholdingTaxExemptedPositiveLabel: _TL_('The customer has confirmed that the WHT exemption applies to them.'),\r\n Account_ChileWithholdingTaxExemptedNegativeLabel: _TL_('The customer has confirmed that the WHT exemption does not apply to them.'),\r\n Account_ChileVATLabel: _TL_('RUT Number'),\r\n Account_ChileVatNumberValidationMessage: _TL_('This RUT must be in one of the following formats, where # represents a number: ########-# or ########-K.'),\r\n Account_RUTNumberRequired: _TL_('Failed to provide your RUT number may result in tax being applied to your invoice.'),\r\n Label_RequiredForIVAorVATTaxPayerCustomers: _TL_('(required for IVA/VAT tax-payers)'),\r\n GSTINNumberTooltipAriaLabel: _TL_('GST IN number tooltip'),\r\n GSTINNumberInputAriaLabel: _TL_('GST IN number'),\r\n PANNumberTooltipAriaLabel: _TL_('PAN number tooltip'),\r\n PANNumberInputAriaLabel: _TL_('PAN number'),\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__146__;","import _ from 'underscore';\r\nimport classnames from 'classnames';\r\nimport React, { useState, useMemo, useEffect, useCallback, useLayoutEffect } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport Promise from 'bluebird';\r\n\r\nimport { ChoiceGroup, Label } from '@bingads-webui-react/fabric-control';\r\nimport { Constants } from '@bingads-webui-clientcenter/entity-utils';\r\nimport { HelpPopup } from '@bingads-webui-react/help-popup';\r\nimport { useJsData, useJsDataCallback } from '@bingads-webui-cc-react/js-data-rest';\r\nimport { getCustomerPermission } from '@bingads-webui-clientcenter/repository-utils';\r\n\r\nimport { BillingGroupDropdown } from './billing-group-dropdown';\r\nimport { AutoGroupOptions, AutoGroupValueOptionMap, LabelId } from './constants';\r\nimport { getDefaultSelectedBillingGroup } from './helper';\r\nimport { useStyles } from './styles/auto-billing-group';\r\n\r\nconst { SecurityAction } = Constants;\r\n\r\nexport const AutoBillingGroup = ({\r\n accountData,\r\n accountId,\r\n billtoCustomerId,\r\n billtoSAPId,\r\n className,\r\n i18n,\r\n onChange,\r\n initialBillingGroupId,\r\n setLoading,\r\n}) => {\r\n const [enableDropdown, setEnableDropdown] = useState(false);\r\n const [selectedBillingGroup, setSelectedBillingGroup] = useState(initialBillingGroupId);\r\n // We cannot set undefined as initial value for selected key, it will create an uncontrolled component\r\n const initialSelectedOption = initialBillingGroupId > 0\r\n ? AutoGroupOptions.AddToExistingGroup\r\n : AutoGroupValueOptionMap[initialBillingGroupId] || null;\r\n const [selectedKey, setSelectedKey] = useState(initialSelectedOption);\r\n const classes = useStyles();\r\n\r\n const { data: accountDataFetched, loading: loading1 } = useJsData(jsData => (accountId > 0 ? jsData.Account.find(accountId) : Promise.resolve(null)), [accountId]);\r\n const { data: customerPermissions = {} } = useJsData(jsData => getCustomerPermission(jsData, { customerId: billtoCustomerId, securityActions: [SecurityAction.CustomerUpdate] }), [billtoCustomerId]);\r\n const accountDataFinal = accountDataFetched || accountData;\r\n\r\n const requestPayload = useMemo(() => (accountDataFinal\r\n ? { address: _.get(accountDataFinal, 'BusinessAddress'), currencyCode: _.get(accountDataFinal, 'CurrencyType'), taxInformation: _.get(accountDataFinal, 'TaxInformation') }\r\n : null), [accountDataFinal]);\r\n\r\n const { data: { potentialBillingGroups } = {}, execute: loadPotentialBillingGroups, loading: loading2 } = useJsDataCallback(jsData => jsData.PotentialBillingGroups.create({\r\n billtoCustomerId, accountId, billtoSAPId, ...requestPayload,\r\n }), [billtoCustomerId, accountId, billtoSAPId, requestPayload]);\r\n\r\n useEffect(() => {\r\n if (customerPermissions[SecurityAction.CustomerUpdate] && requestPayload && billtoSAPId) {\r\n loadPotentialBillingGroups();\r\n }\r\n }, [billtoSAPId, loadPotentialBillingGroups, requestPayload, onChange, customerPermissions]);\r\n\r\n useEffect(() => {\r\n if (potentialBillingGroups) {\r\n setSelectedBillingGroup(initialBillingGroupId === undefined ? getDefaultSelectedBillingGroup(potentialBillingGroups) : initialBillingGroupId);\r\n // reset status if potentialBillingGroups changed\r\n setEnableDropdown(initialSelectedOption === AutoGroupOptions.AddToExistingGroup);\r\n setSelectedKey(initialSelectedOption);\r\n // if the initial selected option is add to existing group, onChange will be called in the billing group dropdown\r\n // if the initial selected option is auto group/set it later, onChange won't be called\r\n if (initialSelectedOption === null) {\r\n // this will make sure the form is pristine\r\n onChange(undefined);\r\n }\r\n }\r\n }, [initialBillingGroupId, initialSelectedOption, onChange, potentialBillingGroups]);\r\n\r\n useEffect(() => {\r\n if (selectedBillingGroup && enableDropdown) {\r\n onChange(selectedBillingGroup);\r\n }\r\n }, [enableDropdown, onChange, selectedBillingGroup]);\r\n\r\n useLayoutEffect(() => {\r\n const isTotalLoading = loading1 || loading2;\r\n if (setLoading) {\r\n setLoading(isTotalLoading);\r\n }\r\n }, [loading1, loading2, setLoading]);\r\n\r\n const onDropdownChange = useCallback((value) => {\r\n setSelectedBillingGroup(value);\r\n }, []);\r\n\r\n const autoGroupOptions = useMemo(() => {\r\n if (potentialBillingGroups) {\r\n const potentialBillingGroupsAvailable = !_.isEmpty(potentialBillingGroups);\r\n return _.compact([\r\n !potentialBillingGroupsAvailable && { key: AutoGroupOptions.AutoGroup, text: i18n.getString(_TL_('Automatically create a billing group for this account')) },\r\n { key: AutoGroupOptions.AddToExistingGroup, text: i18n.getString(_TL_('Add to an existing billing group')), disabled: !potentialBillingGroupsAvailable },\r\n {\r\n key: 'dropdown',\r\n disabled: true,\r\n onRenderField: () => (\r\n \r\n ),\r\n },\r\n { key: AutoGroupOptions.SetItLater, text: i18n.getString(_TL_('Set it later')) },\r\n ]);\r\n }\r\n\r\n return [\r\n {\r\n key: AutoGroupOptions.AutoGroup,\r\n text: i18n.getString(_TL_('Auto group')),\r\n onRenderField: (props, render) => (\r\n
\r\n {render(props)}\r\n \r\n
\r\n ),\r\n },\r\n { key: AutoGroupOptions.SetItLater, text: i18n.getString(_TL_('Set it later')) },\r\n ];\r\n }, [enableDropdown, i18n, onDropdownChange, potentialBillingGroups, selectedBillingGroup]);\r\n\r\n const handleChoiceGroupChange = useCallback((ev, option) => {\r\n let value;\r\n switch (option.key) {\r\n case AutoGroupOptions.AddToExistingGroup:\r\n value = selectedBillingGroup;\r\n break;\r\n case AutoGroupOptions.AutoGroup:\r\n value = 0;\r\n break;\r\n case AutoGroupOptions.SetItLater:\r\n value = null;\r\n break;\r\n default:\r\n value = undefined;\r\n }\r\n setSelectedKey(option.key);\r\n setEnableDropdown(option.key === AutoGroupOptions.AddToExistingGroup);\r\n onChange(value);\r\n }, [onChange, selectedBillingGroup]);\r\n\r\n return (\r\n <>\r\n
\r\n \r\n \r\n
\r\n \r\n );\r\n};\r\n\r\nAutoBillingGroup.propTypes = {\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func.isRequired,\r\n }).isRequired,\r\n accountData: PropTypes.shape({}),\r\n accountId: PropTypes.number,\r\n billtoCustomerId: PropTypes.number,\r\n billtoSAPId: PropTypes.string,\r\n className: PropTypes.string,\r\n onChange: PropTypes.func,\r\n initialBillingGroupId: PropTypes.number,\r\n setLoading: PropTypes.func,\r\n};\r\n\r\nAutoBillingGroup.defaultProps = {\r\n accountData: null,\r\n accountId: null,\r\n billtoCustomerId: null,\r\n billtoSAPId: null,\r\n className: '',\r\n onChange: _.noop,\r\n initialBillingGroupId: undefined,\r\n setLoading: _.noop,\r\n};\r\n","import _ from 'underscore';\r\nimport React, { useState } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { Dropdown } from '@bingads-webui-react/fabric-control';\r\n\r\nexport const BillingGroupDropdown = ({\r\n billingGroups,\r\n selectedBillingGroup,\r\n enableDropdown,\r\n onDropdownChange,\r\n i18n,\r\n}) => {\r\n const fallbackOption = [{\r\n key: -1,\r\n text: i18n.getString(_TL_('No available billing group')),\r\n }];\r\n const dropdownOptions = _.isEmpty(billingGroups)\r\n ? fallbackOption\r\n : _.map(billingGroups, billingGroup => ({\r\n key: billingGroup.Key,\r\n text: billingGroup.Value,\r\n }));\r\n\r\n const defaultSelectedKey = dropdownOptions.length === 1 ? dropdownOptions[0].key : null;\r\n const [selectedKey, setSelectedKey] = useState(selectedBillingGroup || defaultSelectedKey);\r\n\r\n return (\r\n {\r\n setSelectedKey(option.key);\r\n onDropdownChange(option.key);\r\n }}\r\n selectedKey={selectedKey}\r\n styles={{ dropdown: { marginLeft: 25 } }}\r\n />\r\n );\r\n};\r\n\r\nBillingGroupDropdown.propTypes = {\r\n billingGroups: PropTypes.arrayOf(\r\n PropTypes.shape({\r\n Key: PropTypes.number.isRequired,\r\n Value: PropTypes.string.isRequired,\r\n })\r\n ).isRequired,\r\n selectedBillingGroup: PropTypes.number,\r\n enableDropdown: PropTypes.bool.isRequired,\r\n onDropdownChange: PropTypes.func.isRequired,\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func.isRequired,\r\n }).isRequired,\r\n};\r\n\r\nBillingGroupDropdown.defaultProps = {\r\n selectedBillingGroup: null,\r\n};\r\n","export const AutoGroupOptions = Object.freeze({\r\n AddToExistingGroup: 'AddToExistingGroup',\r\n AutoGroup: 'AutoGroup',\r\n SetItLater: 'SetItLater',\r\n});\r\n\r\nexport const AutoGroupValueOptionMap = Object.freeze({\r\n 0: AutoGroupOptions.AutoGroup,\r\n null: AutoGroupOptions.SetItLater,\r\n});\r\n\r\nexport const LabelId = 'auto-billing-group-label';\r\n","import _ from 'underscore';\r\n\r\nexport const getDefaultSelectedBillingGroup = potentialBillingGroups => (_.get(potentialBillingGroups, 'length') === 1 ? potentialBillingGroups[0].Key : undefined);\r\n","import { createUseStyles } from 'react-jss';\r\n\r\nexport const useStyles = createUseStyles(() => ({\r\n autoGroupOptions: {\r\n '& label': {\r\n padding: 0,\r\n },\r\n '& .ms-ChoiceField-wrapper': {\r\n width: '50%',\r\n },\r\n '& .ms-ChoiceFieldLabel': {\r\n fontWeight: 400,\r\n },\r\n },\r\n}));\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__3__;","export { legacyStrings as default } from './src/legacy-strings-for-new-i18n';\r\n","// This File is to allow for support with the new TL syntax, please keep this up to date as keys.txt changes,\r\n// or if we want to update the text on a string\r\n// we have a tool that will build a legacyi18nObject using this mapping\r\n// the tool is buildLegacyI18n in @bingads-webui-campaign/smart-i18n\r\n// this file is exported separately, because we don't want the _TL_ syntax in the main exported code,\r\n// as it breaks if not running through the bundler\r\nexport const legacyStrings = {\r\n Notification_lightbox_Coupon_Title_Signup_Success: _TL_(\r\n 'Special offer: Turn {{upfrontSpend}} into {{value}} worth of advertising credits on Microsoft Advertising',\r\n {\r\n comment: '{{value}} is the value(with currency) of the free advertising they get. {{upfrontSpend}} is the amount the user needs to spend before getting the coupon value.',\r\n }\r\n ),\r\n Notification_lightbox_Coupon_Message_SmartSignup_Success: _TL_(\r\n 'To unlock this limited-time offer, you\\'ll need to spend {{upfrontSpend}} in advertising by {{expireDate}}.',\r\n {\r\n comment: '{{upfrontSpend}} is the amount the user needs to spend before getting the coupon value. {{expireDate}} is the date they need to spend the upfront spending by to get the coupon value.',\r\n }\r\n ),\r\n Notification_lightbox_Coupon_Message_SmartSignup_SuccessTaxable: _TL_(\r\n 'To unlock this limited-time offer, you\\'ll need to spend {{upfrontSpend}} (excluding taxes) in advertising by {{expireDate}}.',\r\n {\r\n comment: '{{upfrontSpend}} is the amount the user needs to spend before getting the coupon value. {{expireDate}} is the date they need to spend the upfront spending by to get the coupon value.',\r\n }\r\n ),\r\n Brief_SignupEvent: _TL_('Welcome to Microsoft Advertising!'),\r\n Notification_lightbox_Coupon_Title_SmartSignup_RedeemFailed: _TL_('Try redeeming your promotional code again'),\r\n Notification_lightbox_Coupon_Message_SmartSignup_RedeemFailed: _TL_(\r\n 'We encountered a snag while redeeming your promotional code. Sorry about that! Please try again on the Promotions page by {{expireDate}}.',\r\n {\r\n comment: '{{expireDate}} is the date they need to redeem the coupon by.',\r\n }\r\n ),\r\n Notification_lightbox_Coupon_Message_Signup_Failure_PreviouslyAdvertised: _TL_(\r\n 'Because you advertised with us before, you don\\'t qualify for a new customer offer. {{offerLinkStart}}Offer details{{offerLinkStop}}',\r\n {\r\n comment: '{{offerLinkStart}} and {{offerLinkStop}} are html tags for linking to the coupon offer details.',\r\n }\r\n ),\r\n Notification_lightbox_Coupon_Message_Signup_Failure_Generic: _TL_(\r\n 'We\\'re sorry, you don\\'t qualify for a new customer offer. {{offerLinkStart}}Offer details{{offerLinkStop}}',\r\n {\r\n comment: '{{offerLinkStart}} and {{offerLinkStop}} are html tags for linking to the coupon offer details.',\r\n }\r\n ),\r\n Notification_lightbox_Coupon_Title_Signup_Failure_ContactSupport: _TL_('Contact us to get your promotional code'),\r\n Notification_lightbox_Coupon_Message_Signup_Failure_ContactSupport: _TL_(\r\n 'We encountered a snag while printing your promotional code. Sorry about that! Please {{supportLinkStart}}contact support{{supportLinkStop}} to get your promotional code. {{offerLinkStart}}Offer details{{offerLinkStop}}',\r\n {\r\n comment: '{{supportLinkStart}} and {{supportLinkStop}} are html tags for linking to contact us support page. {{offerLinkStart}} and {{offerLinkStop}} are html tags for linking to the coupon offer details.',\r\n }\r\n ),\r\n Notification_lightbox_Coupon_SubMessage_TimeIsTicking: _TL_(\r\n 'Time is ticking. Act now! {{offerLinkStart}}Offer details{{offerLinkStop}}',\r\n {\r\n comment: '{{offerLinkStart}} and {{offerLinkStop}} are html tags for linking to the coupon offer details.',\r\n }\r\n ),\r\n Notification_lightbox_Continue: _TL_('Continue'),\r\n Notification_lightbox_GotIt: _TL_('Got it!'),\r\n Notification_lightbox_Coupon_Message_MSANSignup_Success: _TL_(\r\n 'To unlock this limited-time offer, you\\'ll need to spend {{upfrontSpend}} in Microsoft Audience Network campaigns by {{expireDate}}.',\r\n {\r\n comment: '{{upfrontSpend}} is the amount the user needs to spend in Microsoft Audience Network campaigns before getting the coupon value. {{expireDate}} is the date they need to spend the upfront spending by to get the coupon value.',\r\n }\r\n ),\r\n Notification_lightbox_Coupon_Message_MSANSignup_SuccessTaxable: _TL_(\r\n 'To unlock this limited-time offer, you\\'ll need to spend {{upfrontSpend}} (excluding taxes) in Microsoft Audience Network campaigns by {{expireDate}}.',\r\n {\r\n comment: '{{upfrontSpend}} is the amount the user needs to spend in Microsoft Audience Network campaigns before getting the coupon value. {{expireDate}} is the date they need to spend the upfront spending by to get the coupon value.',\r\n }\r\n ),\r\n};\r\n","export { legacyStrings as default } from './src/legacy-strings-for-new-i18n';\r\n","// This File is to allow for support with the new TL syntax, please keep this up to date as keys.txt changes,\r\n// or if we want to update the text on a string\r\n// we have a tool will that builds a legacyi18nObject using this mapping\r\n// the tool is buildLegacyI18n in @bingads-webui-campaign/smart-i18n\r\n// this file isn't exported, because we don't want the _TL_ syntax visible in the main exported code,\r\n// as it breaks if not running through the bundler\r\nexport const legacyStrings = {\r\n Label_BillingAddress: _TL_('Billing address'),\r\n AddressControl_AddressLine1: _TL_('Address line 1'),\r\n AddressControl_AddressLine2: _TL_('Address line 2'),\r\n AddressControl_City: _TL_('City'),\r\n AddressControl_StateOrProvince: _TL_('State or province'),\r\n AddressControl_State: _TL_('State'),\r\n AddressControl_Province: _TL_('Province'),\r\n AddressControl_ZipCode: _TL_('ZIP code'),\r\n AddressControl_PostalCode: _TL_('Postal code'),\r\n AddressControl_ZipOrPostalCode: _TL_('ZIP or Postal code'),\r\n Validation_NotEmpty_Required_Field: _TL_('This field is required'),\r\n Validation_String_Max_Length: _TL_('Field should not exceed {{maxlength}} characters'),\r\n Validation_String_Invalid_Characters: _TL_('Enter a valid value'),\r\n AddressControl_AddressLine3: _TL_('Address line 3'),\r\n AddressControl_AddressLine4: _TL_('Address line 4'),\r\n AddressControl_ProvinceOrRegion: _TL_('Province or region'),\r\n AddressControl_Country: _TL_('Country or region'),\r\n};\r\n","export { IODatePicker } from './src/io-date-picker';\r\nexport { IOSpendCapAmount } from './src/io-spend-cap-amount';\r\nexport { BackupSpendCapAmount } from './src/backup-spend-cap-amount';\r\nexport { BackupIO } from './src/backup-io';\r\nexport { BackupIOWithConfig } from './src/backup-io-with-config';\r\nexport { legacyStrings } from './src/legacy-strings';\r\nexport { IOTermsAndConditionsDescription } from './src/io-terms-description';\r\nexport * from './src/io-inline-smartness';\r\nexport * from './src/hooks';\r\n","import React, { useMemo } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport { SingleDatePicker } from '@bingads-webui-react/single-date-picker';\r\nimport { Constants } from '@bingads-webui-clientcenter/entity-utils';\r\nimport { isCivilDateInOpenRange, getCivilDateFromDate, isValidDate } from '@bingads-webui-universal/temporal-utitlities';\r\n\r\nimport { ImmediateDatePicker } from './immediate-date-picker';\r\nimport { EndlessDatePicker } from './endless-date-picker';\r\nimport { MaxDateForIODatePicker } from './constants';\r\nimport { useI18n } from './hooks';\r\n\r\nconst datePickerClassName = 'io-date-picker';\r\nconst getDate = ({ date, i18n }) => (_.isString(date) ? i18n.parseDate(date) : date);\r\nconst { RIOThruDateOptions } = Constants;\r\n\r\nconst hasIOExpiredMessage = ({ date, minDate, i18n }) => {\r\n const value = getDate({ date, i18n });\r\n return isValidDate(value) && !isCivilDateInOpenRange({\r\n minDate: getCivilDateFromDate(isValidDate(minDate) && minDate > new Date() ? minDate : new Date()),\r\n value: getCivilDateFromDate(value),\r\n });\r\n};\r\n\r\nexport function IODatePicker({\r\n minDate,\r\n maxDate,\r\n onChanged,\r\n disabled,\r\n staticDate,\r\n dateValue,\r\n schema,\r\n alwaysShowError,\r\n allowImmediateStart,\r\n allowEndless,\r\n allowRecurringIO,\r\n seriesEndOption,\r\n isIOExpired,\r\n}) {\r\n const { i18n, legacyI18n } = useI18n();\r\n const customValidator = useMemo(() => (isIOExpired\r\n ? (value, defaultValidator) => (\r\n hasIOExpiredMessage({ date: value, minDate, i18n })\r\n ? [i18n.getString(_TL_('This date has expired.'))]\r\n : defaultValidator(value)\r\n )\r\n : null), [i18n, isIOExpired, minDate]);\r\n\r\n if (staticDate) {\r\n return {staticDate};\r\n }\r\n\r\n if (allowImmediateStart) {\r\n return (\r\n
\r\n \r\n
);\r\n }\r\n\r\n if (allowEndless) {\r\n return (\r\n
\r\n \r\n
);\r\n }\r\n\r\n return (\r\n
\r\n \r\n
);\r\n}\r\n\r\nIODatePicker.propTypes = {\r\n onChanged: PropTypes.func.isRequired,\r\n disabled: PropTypes.bool,\r\n minDate: PropTypes.instanceOf(Date),\r\n maxDate: PropTypes.instanceOf(Date),\r\n staticDate: PropTypes.string,\r\n alwaysShowError: PropTypes.bool.isRequired,\r\n dateValue: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.string, PropTypes.number]),\r\n schema: PropTypes.shape({\r\n required: PropTypes.bool,\r\n }),\r\n allowRecurringIO: PropTypes.bool,\r\n allowImmediateStart: PropTypes.bool,\r\n allowEndless: PropTypes.bool,\r\n seriesEndOption: PropTypes.string,\r\n isIOExpired: PropTypes.bool,\r\n};\r\n\r\nIODatePicker.defaultProps = {\r\n disabled: false,\r\n staticDate: null,\r\n minDate: new Date(),\r\n maxDate: null,\r\n dateValue: null,\r\n schema: {\r\n type: 'string',\r\n nullable: true,\r\n required: true,\r\n },\r\n allowRecurringIO: false,\r\n allowImmediateStart: false,\r\n allowEndless: false,\r\n seriesEndOption: null,\r\n isIOExpired: false,\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__633__;","import React, { useState, useMemo, useCallback, useEffect } from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport { ChoiceGroup } from '@bingads-webui-react/fabric-control';\r\nimport { SingleDatePicker } from '@bingads-webui-react/single-date-picker';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { DateUtils, Constants as CommonConstants } from '@bingads-webui-clientcenter/common-utils';\r\nimport { Constants, InsertionOrderUtils } from '@bingads-webui-clientcenter/entity-utils';\r\n\r\nimport { getImmediateDatePickerStyles } from './styles';\r\nimport { useI18n } from './hooks';\r\n\r\nconst { isImmediateStartDate } = InsertionOrderUtils;\r\nconst { ImmediateDate } = Constants;\r\n\r\nconst StartDateOptions = {\r\n Immediately: 'Immediately',\r\n SetDate: 'SetDate',\r\n};\r\n\r\nexport const ImmediateDatePicker = ({\r\n minDate,\r\n maxDate,\r\n onChanged,\r\n disabled,\r\n selectedDate,\r\n alwaysShowError,\r\n schema,\r\n customValidator,\r\n}) => {\r\n const { i18n, legacyI18n } = useI18n();\r\n\r\n const classes = useDefaultStyles(getImmediateDatePickerStyles);\r\n const [selectedKey, setSelectedKey] = useState(() => {\r\n if (isImmediateStartDate(selectedDate) || !selectedDate) {\r\n return StartDateOptions.Immediately;\r\n }\r\n return StartDateOptions.SetDate;\r\n });\r\n const disableDatePicker = selectedKey !== StartDateOptions.SetDate;\r\n const isImmediateEffectiveDate = DateUtils.isDateWithoutTimeEqual(minDate, new Date());\r\n const selectedImmediateDate = isImmediateEffectiveDate ? ImmediateDate : minDate;\r\n const formattedMinDate = `${i18n.formatDate(minDate, { raw: CommonConstants.StandardDateFormat })}`;\r\n const hideDefaultSelectedDate = isImmediateStartDate(selectedDate) || (!isImmediateEffectiveDate && selectedKey === StartDateOptions.Immediately);\r\n\r\n const onDateChanged = useCallback(({ value, isValid }) => {\r\n if (selectedKey === StartDateOptions.SetDate) {\r\n onChanged({ value, isValid });\r\n }\r\n }, [onChanged, selectedKey]);\r\n\r\n const options = useMemo(() => [\r\n { key: StartDateOptions.Immediately, text: isImmediateEffectiveDate ? i18n.getString(_TL_('Immediately')) : `${i18n.getString(_TL_('Immediately'))} (${formattedMinDate})` },\r\n { key: StartDateOptions.SetDate, text: i18n.getString(_TL_('Set a start date')) },\r\n {\r\n key: 'datepicker',\r\n disabled: true,\r\n onRenderField: () => (\r\n \r\n ),\r\n },\r\n ], [isImmediateEffectiveDate, i18n, formattedMinDate, legacyI18n, minDate, maxDate, onDateChanged, disableDatePicker, disabled, hideDefaultSelectedDate, selectedDate, alwaysShowError, schema, customValidator]);\r\n\r\n const handleImmediateDateChange = useCallback((selectedOptionKey) => {\r\n if (selectedOptionKey === StartDateOptions.Immediately) {\r\n onChanged({ value: selectedImmediateDate, isValid: true });\r\n }\r\n }, [onChanged, selectedImmediateDate]);\r\n\r\n const handleChoiceGroupChange = useCallback((event, option) => {\r\n setSelectedKey(option.key);\r\n handleImmediateDateChange(option.key);\r\n }, [handleImmediateDateChange]);\r\n\r\n useEffect(() => {\r\n handleImmediateDateChange(selectedKey);\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, []);\r\n\r\n return (\r\n \r\n );\r\n};\r\n\r\nImmediateDatePicker.propTypes = {\r\n onChanged: PropTypes.func.isRequired,\r\n disabled: PropTypes.bool,\r\n alwaysShowError: PropTypes.bool,\r\n minDate: PropTypes.instanceOf(Date),\r\n maxDate: PropTypes.instanceOf(Date),\r\n selectedDate: PropTypes.instanceOf(Date),\r\n schema: PropTypes.shape({\r\n required: PropTypes.bool,\r\n }),\r\n customValidator: PropTypes.func,\r\n};\r\n\r\nImmediateDatePicker.defaultProps = {\r\n disabled: false,\r\n minDate: new Date(),\r\n maxDate: null,\r\n alwaysShowError: true,\r\n selectedDate: null,\r\n schema: { isRequired: false },\r\n customValidator: null,\r\n};\r\n","import { DefaultPalette } from '@bingads-webui-react/fabric-control';\r\n\r\nexport const getEndlessDatePickerStyles = () => ({\r\n datePicker: {\r\n marginLeft: 19,\r\n '& .io-recurring-occurrences': {\r\n display: 'flex',\r\n '& .io-recurring-occurrences-input': {\r\n width: '78%',\r\n },\r\n },\r\n },\r\n});\r\n\r\nexport const getBackupIOStyles = () => ({\r\n backupInput: {\r\n width: 64,\r\n marginLeft: 10,\r\n marginRight: 10,\r\n flex: '0 0 64px',\r\n },\r\n backupIO: {\r\n '& .tip': {\r\n color: '#605E5C',\r\n fontSize: 12,\r\n },\r\n '& div[role=alert]': {\r\n order: 10,\r\n width: 700,\r\n },\r\n '& .horizontalCenter': {\r\n display: 'flex',\r\n justifyContent: 'left',\r\n flexDirection: 'row',\r\n alignItems: 'center',\r\n width: 700,\r\n flexWrap: 'wrap',\r\n marginTop: 2,\r\n marginBottom: 2,\r\n },\r\n '& .iconba': {\r\n marginBottom: 1,\r\n marginRight: 5,\r\n fontSize: 10,\r\n },\r\n '& .alert-content': {\r\n whiteSpace: 'break-spaces',\r\n },\r\n },\r\n});\r\n\r\nexport const getImmediateDatePickerStyles = () => ({\r\n immediateDatePicker: {\r\n marginLeft: 10,\r\n '& label': {\r\n padding: 0,\r\n },\r\n '& .ms-ChoiceField-wrapper': {\r\n width: '100%',\r\n lineHeight: 'normal',\r\n },\r\n '& .ms-ChoiceFieldLabel': {\r\n fontWeight: 400,\r\n },\r\n '& .single-date-picker': {\r\n paddingLeft: 20,\r\n },\r\n },\r\n});\r\n\r\nexport const getIOInlineSmartRecommendationContainerStyles = () => ({\r\n IOInlineSmartRecContainer: {\r\n display: 'flex',\r\n flexDirection: 'row',\r\n backgroundColor: DefaultPalette.themeLighterAlt,\r\n border: `1px solid ${DefaultPalette.themePrimary}`,\r\n whiteSpace: 'normal',\r\n\r\n '& .ms-MessageBar-icon': {\r\n marginLeft: '8px',\r\n },\r\n\r\n '& .ms-MessageBar-content': {\r\n margin: '8px 0px',\r\n alignItems: 'center',\r\n },\r\n\r\n '& .ms-MessageBar-actions': {\r\n marginTop: '8px',\r\n marginRight: '8px',\r\n },\r\n },\r\n IOInlineSmartRecIcon: {\r\n '& .iconba-Insights': {\r\n fontSize: '16px',\r\n top: 0,\r\n color: DefaultPalette.themePrimary,\r\n },\r\n },\r\n IOInlineSmartRecButton: {\r\n height: '32px',\r\n },\r\n});\r\n\r\nexport const getGeneralRecommendationStyles = () => ({\r\n Container: {\r\n '& .ms-MessageBar-icon': {\r\n alignSelf: 'flex-start',\r\n },\r\n\r\n '& .ms-MessageBar-content': {\r\n margin: '0px !important',\r\n },\r\n\r\n '& .ms-MessageBar-actions': {\r\n alignItems: 'flex-start',\r\n },\r\n },\r\n Content: {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n justsifyContent: 'flex-start',\r\n gap: '20px',\r\n },\r\n});\r\n\r\nexport const getRecommendationPropertiesStyles = () => ({\r\n Container: {\r\n display: 'flex',\r\n flexDirection: 'row',\r\n justifyContent: 'flex-start',\r\n flexWrap: 'wrap',\r\n gap: '12px 24px',\r\n },\r\n PropertyValue: {\r\n fontSize: '14px',\r\n lineHeight: '20px',\r\n fontWeight: '600',\r\n },\r\n});\r\n","export { useSuggestedStartDate } from './use-suggested-start-date';\r\nexport { useSuggestedBudget } from './use-suggested-budget';\r\nexport { useForecastingDailySpend } from './use-forecasting-daily-spend';\r\nexport { useSpendCapAmountIncreaseOver } from './use-spend-cap-amount-increase-over';\r\nexport { useGeneralRecommendation } from './use-general-recommendation';\r\nexport { useI18n } from './use-i18n';\r\n","import { useMemo } from 'react';\r\nimport Promise from 'bluebird';\r\nimport _ from 'underscore';\r\n\r\nimport { useJsData } from '@bingads-webui-cc-react/js-data-rest';\r\nimport { Constants as EntityConstants } from '@bingads-webui-clientcenter/entity-utils';\r\nimport { Constants as CommonConstants } from '@bingads-webui-clientcenter/common-utils';\r\n\r\nconst { RecommendationType } = EntityConstants;\r\nconst { StandardDateFormat } = CommonConstants;\r\n\r\nconst types = [RecommendationType.InsertionOrderInlineSmartness];\r\n\r\nexport const useSuggestedStartDate = ({\r\n i18n,\r\n aid,\r\n showIOInlineSmartness,\r\n}) => {\r\n const { data, loading } = useJsData(\r\n jsData => (showIOInlineSmartness && jsData && i18n && aid > 0\r\n ? jsData.BAARecommendations.findAll({ aid, types }, {\r\n onJsonError: _.noop,\r\n })\r\n : Promise.resolve(null)),\r\n [aid, i18n, showIOInlineSmartness],\r\n { isStrictMode: false }\r\n );\r\n\r\n const suggestedStartDate = useMemo(\r\n () => data && data.length > 0 && i18n && i18n.parseDate(data[0].RecommendIOStartDate, { raw: StandardDateFormat }),\r\n [data, i18n]\r\n );\r\n\r\n return {\r\n suggestedStartDate,\r\n loading,\r\n };\r\n};\r\n","import { useMemo } from 'react';\r\nimport { Constants } from '@bingads-webui-clientcenter/entity-utils';\r\nimport { useForecastingDailySpend } from './use-forecasting-daily-spend';\r\nimport { getBudgetSuggestionScenario,\r\n getBudgetSuggestionType,\r\n getEndDate,\r\n getForecastingDayCount,\r\n getForecastingSpend,\r\n getIsShowForecastingSpend } from '../helpers';\r\n\r\nconst { IOInputItemNames } = Constants;\r\n\r\nexport function useSuggestedBudget({\r\n i18n,\r\n showIOInlineSmartness,\r\n ioItems,\r\n ioValidationFields,\r\n isRecurringIO,\r\n hideSpecificRecommendation,\r\n}) {\r\n const {\r\n AccountId,\r\n FromDate: startDate,\r\n FrequencyType: frequencyType,\r\n SpendCapAmount: spendCapAmount,\r\n } = ioItems;\r\n const budgetSuggestionScenario = useMemo(() => getBudgetSuggestionScenario({\r\n i18n, showIOInlineSmartness, ioItems, ioValidationFields, isRecurringIO, hideSpecificRecommendation,\r\n }),\r\n [hideSpecificRecommendation, i18n, ioItems, ioValidationFields, isRecurringIO, showIOInlineSmartness]);\r\n\r\n const endDate = useMemo(() => getEndDate({ budgetSuggestionScenario, ...ioItems }), [budgetSuggestionScenario, ioItems]);\r\n\r\n const { forecastingDailySpend, loading } = useForecastingDailySpend({\r\n i18n,\r\n budgetSuggestionScenario,\r\n accountId: AccountId,\r\n startDate,\r\n endDate,\r\n frequencyType,\r\n });\r\n\r\n const forecastingDayCount = useMemo(() => getForecastingDayCount({\r\n budgetSuggestionScenario, forecastingDailySpend, endDate, frequencyType, spendCapAmount, startDate,\r\n }), [budgetSuggestionScenario, endDate, forecastingDailySpend, frequencyType, spendCapAmount, startDate]);\r\n\r\n const forecastingSpend = useMemo(() => getForecastingSpend({ budgetSuggestionScenario, forecastingDailySpend, forecastingDayCount }),\r\n [budgetSuggestionScenario, forecastingDailySpend, forecastingDayCount]);\r\n\r\n const isShowForecastingSpend = useMemo(() => getIsShowForecastingSpend({\r\n spendCapAmount,\r\n forecastingSpend,\r\n isSpendCapAmountValid: ioValidationFields[IOInputItemNames.SpendCapAmount],\r\n }),\r\n [forecastingSpend, ioValidationFields, spendCapAmount]);\r\n\r\n const suggestionType = useMemo(() => getBudgetSuggestionType({ budgetSuggestionScenario, isShowForecastingSpend, forecastingDayCount }),\r\n [budgetSuggestionScenario, forecastingDayCount, isShowForecastingSpend]);\r\n\r\n return {\r\n loading,\r\n budgetSuggestionScenario,\r\n suggestionType,\r\n forecastingDailySpend,\r\n suggestedBudget: forecastingSpend,\r\n goDarkDays: forecastingDayCount,\r\n endDate,\r\n };\r\n}\r\n","import { useMemo } from 'react';\r\nimport { Promise } from 'bluebird';\r\nimport _ from 'underscore';\r\nimport { withoutTime } from '@bingads-webui-universal/primitive-utilities';\r\nimport { useJsData } from '@bingads-webui-cc-react/js-data-rest';\r\nimport { Constants as CommonConstants } from '@bingads-webui-clientcenter/common-utils';\r\n\r\nimport { BudgetSuggestionScenario } from '../constants';\r\n\r\nconst { StandardDateFormat } = CommonConstants;\r\n\r\nexport function useForecastingDailySpend({\r\n i18n,\r\n budgetSuggestionScenario,\r\n accountId,\r\n startDate,\r\n endDate,\r\n frequencyType,\r\n}) {\r\n const canForecastDailySpend = useMemo(() => !!(budgetSuggestionScenario !== BudgetSuggestionScenario.Invalid && i18n && withoutTime(startDate) < withoutTime(endDate)), [budgetSuggestionScenario, endDate, i18n, startDate]);\r\n const formatStartDate = useMemo(() => (canForecastDailySpend ? i18n.formatDate(startDate, { raw: StandardDateFormat }) : null), [canForecastDailySpend, i18n, startDate]);\r\n const formatEndDate = useMemo(() => (canForecastDailySpend ? i18n.formatDate(endDate, { raw: StandardDateFormat }) : null), [canForecastDailySpend, endDate, i18n]);\r\n const id = useMemo(() => `AID${accountId}_StartDate${formatStartDate}_EndDate${formatEndDate}_FrequencyType${frequencyType || ''}`, [accountId, formatEndDate, formatStartDate, frequencyType]);\r\n\r\n const { data, loading } = useJsData(\r\n jsData => (canForecastDailySpend && jsData\r\n ? jsData.AccountIOForecastingDailySpend.find(id, {\r\n params: {\r\n aid: accountId,\r\n startDate: formatStartDate,\r\n endDate: formatEndDate,\r\n frequencyType,\r\n },\r\n onJsonError: _.noop,\r\n })\r\n : Promise.resolve({})),\r\n [canForecastDailySpend, id, formatEndDate, formatStartDate, frequencyType, accountId],\r\n { isStrictMode: false }\r\n );\r\n\r\n return useMemo(() => ({\r\n forecastingDailySpend: data && data.ForecastingDailySpend,\r\n loading,\r\n }), [data, loading]);\r\n}\r\n","import { Constants } from '@bingads-webui-clientcenter/entity-utils';\r\n\r\nconst { EndlessDate } = Constants;\r\n\r\nexport const WarningSpendCapAmountIncreaseFactor = 10;\r\n\r\nexport const MaxDateForIODatePicker = new Date(EndlessDate.getFullYear() - 100, 0, 1);\r\n\r\nexport const MaxForecastingDayCount = 90;\r\n\r\nexport const BudgetSuggestionType = Object.freeze({\r\n Default: 'Default',\r\n Endless: 'Endless',\r\n Rio: 'Rio',\r\n None: 'None',\r\n});\r\n\r\nexport const BudgetSuggestionScenario = Object.freeze({\r\n EioEndless: 'EioEndless',\r\n EioEndDate: 'EioEndDate',\r\n RioEndless: 'RioEndless',\r\n RioEndDate: 'RioEndDate',\r\n RioOccurence: 'RioOccurence',\r\n Invalid: 'Invalid',\r\n});\r\n","export * from './budget-suggestion-helper';\r\n","import _ from 'underscore';\r\nimport { DateUtils, Constants as CommonConstants } from '@bingads-webui-clientcenter/common-utils';\r\nimport { Constants, InsertionOrderUtils } from '@bingads-webui-clientcenter/entity-utils';\r\nimport { getCivilDateFromDate, getDaysOfARange } from '@bingads-webui-universal/temporal-utitlities';\r\nimport { BudgetSuggestionScenario, BudgetSuggestionType, MaxForecastingDayCount } from '../constants';\r\n\r\nconst { RIOThruDateOptions, IOInputItemNames } = Constants;\r\nconst { FrequencyDayCountMap } = CommonConstants;\r\nconst { isUnlimitedIOBudget, isEndlessIOEndDate } = InsertionOrderUtils;\r\nconst { getNFrequencyEndDate } = DateUtils;\r\n\r\nexport function getPrecision({ sourceValue, minValue = 100, reservedDigits = 2 }) {\r\n if (sourceValue <= minValue) {\r\n return minValue;\r\n }\r\n const parts = sourceValue.toString().split('.');\r\n const len = parts[0].length;\r\n const divisorDigits = len > reservedDigits ? len - reservedDigits : 0;\r\n // eslint-disable-next-line no-restricted-properties\r\n const divisor = Math.pow(10, divisorDigits);\r\n return Math.ceil(sourceValue / divisor) * divisor;\r\n}\r\n\r\nexport function getBudgetSuggestionScenario({\r\n i18n,\r\n ioItems,\r\n ioValidationFields,\r\n showIOInlineSmartness,\r\n isRecurringIO,\r\n hideSpecificRecommendation,\r\n}) {\r\n const { AccountId, ThruDate, SeriesEndOption } = ioItems;\r\n\r\n // Invalid\r\n if (!showIOInlineSmartness || hideSpecificRecommendation || !i18n || !(AccountId > 0) || !ioValidationFields[IOInputItemNames.FromDate]) {\r\n return BudgetSuggestionScenario.Invalid;\r\n }\r\n // RIO\r\n if (isRecurringIO && ioValidationFields[IOInputItemNames.FrequencyType]) {\r\n if (SeriesEndOption === RIOThruDateOptions.NoEndDate && ioValidationFields[IOInputItemNames.ThruDate]) {\r\n return BudgetSuggestionScenario.RioEndless;\r\n }\r\n if (SeriesEndOption === RIOThruDateOptions.EndByDate && ioValidationFields[IOInputItemNames.ThruDate]) {\r\n return BudgetSuggestionScenario.RioEndDate;\r\n }\r\n if (SeriesEndOption === RIOThruDateOptions.EndByOccurrences && ioValidationFields[IOInputItemNames.RepeatCount]) {\r\n return BudgetSuggestionScenario.RioOccurence;\r\n }\r\n }\r\n // EIO\r\n if (!isRecurringIO && ioValidationFields[IOInputItemNames.ThruDate]) {\r\n return isEndlessIOEndDate(ThruDate) ? BudgetSuggestionScenario.EioEndless : BudgetSuggestionScenario.EioEndDate;\r\n }\r\n return BudgetSuggestionScenario.Invalid;\r\n}\r\n\r\nexport function getEndDate({\r\n budgetSuggestionScenario, FromDate, ThruDate, RepeatCount, FrequencyType,\r\n}) {\r\n switch (budgetSuggestionScenario) {\r\n case BudgetSuggestionScenario.EioEndless:\r\n case BudgetSuggestionScenario.RioEndless:\r\n return ThruDate; // Endless end date\r\n case BudgetSuggestionScenario.EioEndDate:\r\n case BudgetSuggestionScenario.RioEndDate:\r\n return ThruDate; // Special end date\r\n case BudgetSuggestionScenario.RioOccurence:\r\n return getNFrequencyEndDate(FromDate, FrequencyType, RepeatCount);\r\n case BudgetSuggestionScenario.Invalid:\r\n default:\r\n return undefined;\r\n }\r\n}\r\n\r\nexport function getForecastingDayCount({\r\n budgetSuggestionScenario, forecastingDailySpend, endDate, frequencyType, spendCapAmount, startDate,\r\n}) {\r\n switch (budgetSuggestionScenario) {\r\n case BudgetSuggestionScenario.EioEndless:\r\n return forecastingDailySpend > 0 && spendCapAmount > 0 ? Math.floor(spendCapAmount / forecastingDailySpend) : MaxForecastingDayCount + 1;\r\n case BudgetSuggestionScenario.EioEndDate:\r\n return getDaysOfARange({ start: getCivilDateFromDate(startDate), end: getCivilDateFromDate(endDate) });\r\n case BudgetSuggestionScenario.RioEndless:\r\n case BudgetSuggestionScenario.RioEndDate:\r\n case BudgetSuggestionScenario.RioOccurence:\r\n return FrequencyDayCountMap[frequencyType];\r\n case BudgetSuggestionScenario.Invalid:\r\n default:\r\n return undefined;\r\n }\r\n}\r\n\r\nexport function getForecastingSpend({ budgetSuggestionScenario, forecastingDailySpend, forecastingDayCount }) {\r\n switch (budgetSuggestionScenario) {\r\n case BudgetSuggestionScenario.EioEndDate:\r\n case BudgetSuggestionScenario.RioEndless:\r\n case BudgetSuggestionScenario.RioEndDate:\r\n case BudgetSuggestionScenario.RioOccurence:\r\n return _.isNumber(forecastingDailySpend) ? getPrecision({ sourceValue: forecastingDailySpend * forecastingDayCount }) : undefined;\r\n case BudgetSuggestionScenario.EioEndless:\r\n case BudgetSuggestionScenario.Invalid:\r\n default:\r\n return undefined;\r\n }\r\n}\r\n\r\nexport function getIsShowForecastingSpend({ spendCapAmount, forecastingSpend, isSpendCapAmountValid }) {\r\n return isSpendCapAmountValid && !isUnlimitedIOBudget(spendCapAmount) && _.isNumber(forecastingSpend) && forecastingSpend > spendCapAmount;\r\n}\r\n\r\nexport function getBudgetSuggestionType({\r\n budgetSuggestionScenario, isShowForecastingSpend, forecastingDayCount,\r\n}) {\r\n let suggestedType = BudgetSuggestionType.None;\r\n switch (budgetSuggestionScenario) {\r\n case BudgetSuggestionScenario.EioEndDate:\r\n if (isShowForecastingSpend) {\r\n suggestedType = BudgetSuggestionType.Default;\r\n }\r\n break;\r\n case BudgetSuggestionScenario.RioEndless:\r\n case BudgetSuggestionScenario.RioEndDate:\r\n case BudgetSuggestionScenario.RioOccurence:\r\n if (isShowForecastingSpend) {\r\n suggestedType = BudgetSuggestionType.Rio;\r\n }\r\n break;\r\n case BudgetSuggestionScenario.EioEndless:\r\n if (forecastingDayCount <= MaxForecastingDayCount) {\r\n suggestedType = BudgetSuggestionType.Endless;\r\n }\r\n break;\r\n case BudgetSuggestionScenario.Invalid:\r\n default:\r\n }\r\n return suggestedType;\r\n}\r\n","import { useCallback, useState } from 'react';\r\nimport _ from 'underscore';\r\n\r\nimport { Constants } from '@bingads-webui-clientcenter/entity-utils';\r\n\r\nconst { WarningSpendCapAmountIncreaseFactor } = Constants;\r\n\r\nexport function useSpendCapAmountIncreaseOver({ i18n, spendCapAmount }) {\r\n const [initialSpendCapAmount] = useState(spendCapAmount);\r\n\r\n const onSpendCapAmountIncreaseOverValidate = useCallback((value) => {\r\n if (!_.isNull(value) && !_.isNull(initialSpendCapAmount) && value >= WarningSpendCapAmountIncreaseFactor * initialSpendCapAmount) {\r\n return i18n.getString(_TL_('Warning: Your new budget is much larger than before.'));\r\n }\r\n return null;\r\n }, [i18n, initialSpendCapAmount]);\r\n\r\n return onSpendCapAmountIncreaseOverValidate;\r\n}\r\n","import { useMemo } from 'react';\r\nimport Promise from 'bluebird';\r\nimport _ from 'underscore';\r\n\r\nimport { useJsData } from '@bingads-webui-cc-react/js-data-rest';\r\nimport { Constants as EntityConstants } from '@bingads-webui-clientcenter/entity-utils';\r\nimport { Constants as CommonConstants } from '@bingads-webui-clientcenter/common-utils';\r\n\r\nconst { RecommendationType } = EntityConstants;\r\nconst { StandardDateFormat } = CommonConstants;\r\n\r\nexport const useGeneralRecommendation = ({\r\n i18n,\r\n aid,\r\n isRecurringIO,\r\n isSingleAccount,\r\n showIOInlineSmartness,\r\n}) => {\r\n const types = useMemo(\r\n () => (isRecurringIO\r\n ? [RecommendationType.RecurringInsertionOrderAdd]\r\n : [RecommendationType.InsertionOrderCreation]),\r\n [isRecurringIO]\r\n );\r\n const { data, loading } = useJsData(\r\n jsData => (showIOInlineSmartness && jsData && i18n && !isSingleAccount && aid > 0\r\n ? jsData.BAARecommendations.findAll({ aid, types }, {\r\n onJsonError: _.noop,\r\n })\r\n : Promise.resolve(null)),\r\n [aid, i18n, showIOInlineSmartness, isSingleAccount, types],\r\n { isStrictMode: false }\r\n );\r\n const generalRecommendationProps = useMemo(\r\n () => {\r\n if (!data || !i18n) {\r\n return null;\r\n }\r\n\r\n if (data.length === 0) {\r\n return { RecommendationId: null }; // loaded but no recommendation\r\n }\r\n\r\n const {\r\n RecommendationId,\r\n FromDate, ThruDate, SpendCapAmount, // for normal IO\r\n SeriesName, SeriesStartDate, BudgetPerOrder, Frequency, // for RIO\r\n } = data[0];\r\n\r\n return {\r\n RecommendationId,\r\n // normal IO\r\n FromDate: FromDate && i18n.parseDate(FromDate, { raw: StandardDateFormat }),\r\n ThruDate: ThruDate && i18n.parseDate(ThruDate, { raw: StandardDateFormat }),\r\n SpendCapAmount: SpendCapAmount && Number(SpendCapAmount),\r\n // RIO\r\n SeriesName,\r\n SeriesStartDate: SeriesStartDate && i18n.parseDate(SeriesStartDate, { raw: StandardDateFormat }),\r\n BudgetPerOrder: BudgetPerOrder && Number(BudgetPerOrder),\r\n Frequency,\r\n };\r\n },\r\n [data, i18n]\r\n );\r\n\r\n return {\r\n generalRecommendationProps,\r\n loading,\r\n };\r\n};\r\n","import { useContext, useMemo } from 'react';\r\nimport validationLegacyStrings from '@bingads-webui-clientcenter/validation-legacy-strings';\r\nimport { buildLegacyI18n } from '@bingads-webui/build-legacy-i18n';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\n\r\nexport const useI18n = () => {\r\n const i18n = useContext(I18nContext);\r\n const legacyI18n = useMemo(() => buildLegacyI18n(i18n, [validationLegacyStrings]), [i18n]);\r\n\r\n return { legacyI18n, i18n };\r\n};\r\n","import React, { useState, useEffect, useCallback } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport { SingleDatePicker } from '@bingads-webui-react/single-date-picker';\r\nimport { Radio } from '@bingads-webui-react/primitive';\r\nimport { ValidatedInput } from '@bingads-webui-react/validation-controls';\r\nimport { DateUtils } from '@bingads-webui-clientcenter/common-utils';\r\nimport { Constants, InsertionOrderUtils } from '@bingads-webui-clientcenter/entity-utils';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\n\r\nimport { MaxDateForIODatePicker } from './constants';\r\nimport { getEndlessDatePickerStyles } from './styles';\r\nimport { useI18n } from './hooks';\r\n\r\nconst { IOFormInputSchema, EndlessDate, RIOThruDateOptions } = Constants;\r\nconst { isEndlessIOEndDate } = InsertionOrderUtils;\r\n\r\nconst selectedRadioKeys = {\r\n NoEndDate: 0,\r\n SetEndDate: 1,\r\n EndSeriesAfterOccurrences: 2,\r\n};\r\n// TODO: 3337200 Move the item name into entity-utils\r\nconst itemName = 'Occurrences';\r\nconst { isDateWithoutTimeEqual } = DateUtils;\r\n\r\nexport function EndlessDatePicker({\r\n minDate,\r\n maxDate,\r\n onChanged,\r\n disabled,\r\n dateValue,\r\n schema,\r\n alwaysShowError,\r\n allowRecurringIO,\r\n seriesEndOption,\r\n customValidator,\r\n}) {\r\n const { i18n, legacyI18n } = useI18n();\r\n const isOccurrences = seriesEndOption === RIOThruDateOptions.EndByOccurrences;\r\n const [selectedRadio, setSelectedRadio] = useState(null);\r\n const [date, setDate] = useState(isOccurrences || isEndlessIOEndDate(dateValue) ? null : dateValue);\r\n const [isDateValid, setIsDateValid] = useState(false);\r\n const [occurrences, setOccurrences] = useState(isOccurrences ? dateValue : null);\r\n const [isOccurrencesValid, setIsOccurrencesValid] = useState(isOccurrences ? dateValue : null);\r\n const classes = useDefaultStyles(getEndlessDatePickerStyles);\r\n\r\n useEffect(() => {\r\n if (selectedRadio === selectedRadioKeys.NoEndDate) {\r\n onChanged({ value: EndlessDate, isValid: true, seriesEndOption: RIOThruDateOptions.NoEndDate });\r\n } else if (selectedRadio === selectedRadioKeys.SetEndDate) {\r\n onChanged({ value: date || new Date('inValid'), isValid: isDateValid, seriesEndOption: RIOThruDateOptions.EndByDate });\r\n } else if (selectedRadio === selectedRadioKeys.EndSeriesAfterOccurrences) {\r\n onChanged({ value: occurrences, isValid: isOccurrencesValid, seriesEndOption: RIOThruDateOptions.EndByOccurrences });\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [date, selectedRadio, occurrences, isOccurrencesValid, isDateValid]);\r\n\r\n useEffect(() => {\r\n // TODO: 3337207 remove the setOccurrences/setDate\r\n if (seriesEndOption === RIOThruDateOptions.EndByOccurrences) {\r\n setSelectedRadio(selectedRadioKeys.EndSeriesAfterOccurrences);\r\n setOccurrences(dateValue);\r\n } else if (seriesEndOption === RIOThruDateOptions.NoEndDate || isEndlessIOEndDate(dateValue)) {\r\n setSelectedRadio(selectedRadioKeys.NoEndDate);\r\n } else if (!_.isDate(dateValue)) {\r\n setSelectedRadio(selectedRadioKeys.NoEndDate);\r\n setDate(null);\r\n } else {\r\n setDate(preDate => (isDateWithoutTimeEqual(dateValue, preDate) ? preDate : dateValue));\r\n setSelectedRadio(selectedRadioKeys.SetEndDate);\r\n }\r\n }, [seriesEndOption, dateValue]);\r\n\r\n const IODateRadio = useCallback(({\r\n radioKey, radioClassName, children,\r\n }) => {\r\n const checked = selectedRadio === radioKey;\r\n return (\r\n setSelectedRadio(radioKey)}\r\n >\r\n {children}\r\n );\r\n }, [disabled, selectedRadio]);\r\n\r\n const isSetEndDateInputDisabled = selectedRadio !== selectedRadioKeys.SetEndDate || disabled;\r\n const isSetOccurrencesInputDisabled = selectedRadio !== selectedRadioKeys.EndSeriesAfterOccurrences || disabled;\r\n return (\r\n \r\n \r\n {i18n.getString(_TL_('No end date'))}\r\n \r\n\r\n \r\n {i18n.getString(_TL_('Set an end date'))}\r\n \r\n
\r\n {\r\n setIsDateValid(isValid);\r\n setDate(preDate => (isDateWithoutTimeEqual(value, preDate) ? preDate : value));\r\n }}\r\n disabled={isSetEndDateInputDisabled}\r\n selectedDate={date}\r\n alwaysShowError={alwaysShowError}\r\n schema={schema}\r\n customValidator={customValidator}\r\n />\r\n
\r\n { allowRecurringIO &&\r\n \r\n \r\n {i18n.getString(_TL_('End series after'))}\r\n \r\n
\r\n
\r\n
\r\n {\r\n setOccurrences(value.data[itemName]);\r\n setIsOccurrencesValid(value.isValid);\r\n },\r\n field: itemName,\r\n data: { [itemName]: occurrences },\r\n schema: IOFormInputSchema,\r\n alwaysShowError,\r\n i18n: legacyI18n,\r\n skipValidation: isSetOccurrencesInputDisabled,\r\n }}\r\n />\r\n
\r\n
{` ${i18n.getString(_TL_('occurrence(s)'))}`}
\r\n
\r\n
\r\n
\r\n }\r\n
);\r\n}\r\n\r\nEndlessDatePicker.propTypes = {\r\n onChanged: PropTypes.func.isRequired,\r\n disabled: PropTypes.bool,\r\n minDate: PropTypes.instanceOf(Date),\r\n maxDate: PropTypes.instanceOf(Date),\r\n alwaysShowError: PropTypes.bool.isRequired,\r\n dateValue: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.string, PropTypes.number]),\r\n schema: PropTypes.shape({\r\n required: PropTypes.bool,\r\n }),\r\n allowRecurringIO: PropTypes.bool,\r\n seriesEndOption: PropTypes.string,\r\n customValidator: PropTypes.func,\r\n};\r\n\r\nEndlessDatePicker.defaultProps = {\r\n disabled: false,\r\n minDate: new Date(),\r\n maxDate: null,\r\n dateValue: null,\r\n schema: {\r\n type: 'string',\r\n nullable: true,\r\n required: true,\r\n },\r\n allowRecurringIO: false,\r\n seriesEndOption: null,\r\n customValidator: null,\r\n};\r\n","import React, { useMemo, useCallback, useState, useEffect } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport { ValidatedInput } from '@bingads-webui-react/validation-controls';\r\nimport { Constants } from '@bingads-webui-clientcenter/entity-utils';\r\n\r\nimport { useI18n, useSpendCapAmountIncreaseOver } from './hooks';\r\nimport { EndlessSpendCapAmount } from './endless-spend-cap-amount';\r\nimport { BudgetSuggestionScenario, BudgetSuggestionType } from './constants';\r\nimport { BudgetRIORecommendation } from './io-inline-smartness';\r\n\r\n// TODO: 3337200 Move the itemname into entity-utils\r\nconst itemName = 'SpendCapAmount';\r\nconst { IOFormInputSchema, IOInputItemNames, IOInlineSmartnessItemNames } = Constants;\r\nexport function IOSpendCapAmount({\r\n onChanged,\r\n disabled,\r\n originalSpendCapAmountValue,\r\n spendCapAmountValue,\r\n alwaysShowError,\r\n isWarningSpendCapAmountIncrease,\r\n allowUnlimited,\r\n isIOExhausted,\r\n showIOInlineSmartness,\r\n budgetSuggestionProps,\r\n debounceSuggestionTime,\r\n ioInlineSmartnessInfo,\r\n}) {\r\n const { i18n, legacyI18n } = useI18n();\r\n const {\r\n budgetSuggestionScenario, forecastingDailySpend, suggestionType, suggestedBudget,\r\n loading: isSuggestedBudgetLoading,\r\n } = budgetSuggestionProps;\r\n const [showSuggestion, setShowSuggestion] = useState(false);\r\n const onSpendCapAmountIncreaseOverValidate = useSpendCapAmountIncreaseOver({ i18n, spendCapAmount: spendCapAmountValue });\r\n const passiveMessages = useMemo(() => {\r\n let warningMessage = isWarningSpendCapAmountIncrease ? onSpendCapAmountIncreaseOverValidate(spendCapAmountValue) : null;\r\n warningMessage = _.isString(warningMessage) ? [warningMessage] : [];\r\n return isIOExhausted && originalSpendCapAmountValue >= 0 && spendCapAmountValue <= originalSpendCapAmountValue ? [i18n.getString(_TL_('The budget has exhausted.')), ...warningMessage] : warningMessage;\r\n }, [i18n, isIOExhausted, isWarningSpendCapAmountIncrease, onSpendCapAmountIncreaseOverValidate, originalSpendCapAmountValue, spendCapAmountValue]);\r\n const onSpendCapAmountChanged = ({\r\n value, isValid, isSuggested = false,\r\n }) => {\r\n onChanged({\r\n itemName: IOInputItemNames.SpendCapAmount,\r\n value,\r\n isValid,\r\n });\r\n if (isSuggested) {\r\n onChanged({\r\n itemName: IOInputItemNames.BudgetRecommendationItem,\r\n value: {\r\n ..._.get(ioInlineSmartnessInfo, [IOInputItemNames.BudgetRecommendationItem]),\r\n [IOInlineSmartnessItemNames.IsApplyButtonClicked]: true,\r\n },\r\n isValid: true,\r\n });\r\n }\r\n };\r\n\r\n const debouncedSuggestionChange = useCallback(\r\n _.debounce(\r\n (newShowSuggestion) => {\r\n setShowSuggestion(newShowSuggestion);\r\n },\r\n debounceSuggestionTime\r\n ),\r\n [debounceSuggestionTime]\r\n );\r\n\r\n useEffect(() => {\r\n if (showIOInlineSmartness) {\r\n if (suggestionType !== BudgetSuggestionType.None) {\r\n debouncedSuggestionChange(true);\r\n } else {\r\n debouncedSuggestionChange.cancel();\r\n setShowSuggestion(false);\r\n }\r\n }\r\n }, [suggestionType, spendCapAmountValue, debouncedSuggestionChange, showIOInlineSmartness]);\r\n\r\n useEffect(() => {\r\n if (showIOInlineSmartness && isSuggestedBudgetLoading) {\r\n onChanged({\r\n itemName: IOInputItemNames.BudgetRecommendationItem,\r\n value: {},\r\n isValid: true,\r\n });\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [isSuggestedBudgetLoading, showIOInlineSmartness]);\r\n\r\n useEffect(() => {\r\n if (showIOInlineSmartness && !isSuggestedBudgetLoading) {\r\n if (budgetSuggestionScenario !== BudgetSuggestionScenario.EioEndless) {\r\n if (suggestedBudget !== _.get(ioInlineSmartnessInfo, [IOInputItemNames.BudgetRecommendationItem, IOInlineSmartnessItemNames.SuggestedBudget])) {\r\n onChanged({\r\n itemName: IOInputItemNames.BudgetRecommendationItem,\r\n value: {\r\n [IOInlineSmartnessItemNames.SuggestedBudget]: suggestedBudget,\r\n [IOInlineSmartnessItemNames.LastInputBudget]: showSuggestion ? spendCapAmountValue : undefined,\r\n [IOInlineSmartnessItemNames.IsDisplayed]: false,\r\n },\r\n isValid: true,\r\n });\r\n } else if (showSuggestion && !_.get(ioInlineSmartnessInfo, [IOInputItemNames.BudgetRecommendationItem, IOInlineSmartnessItemNames.IsDisplayed])) {\r\n onChanged({\r\n itemName: IOInputItemNames.BudgetRecommendationItem,\r\n value: {\r\n ..._.get(ioInlineSmartnessInfo, [IOInputItemNames.BudgetRecommendationItem]),\r\n [IOInlineSmartnessItemNames.LastInputBudget]: spendCapAmountValue,\r\n [IOInlineSmartnessItemNames.IsDisplayed]: showSuggestion,\r\n },\r\n isValid: true,\r\n });\r\n }\r\n // For EioEndless scenario\r\n } else if (forecastingDailySpend !== _.get(ioInlineSmartnessInfo, [IOInputItemNames.BudgetRecommendationItem, IOInlineSmartnessItemNames.SuggestedDailySpend])) {\r\n onChanged({\r\n itemName: IOInputItemNames.BudgetRecommendationItem,\r\n value: {\r\n [IOInlineSmartnessItemNames.SuggestedDailySpend]: forecastingDailySpend,\r\n [IOInlineSmartnessItemNames.LastInputBudget]: showSuggestion ? spendCapAmountValue : undefined,\r\n [IOInlineSmartnessItemNames.IsDisplayed]: showSuggestion,\r\n },\r\n isValid: true,\r\n });\r\n } else if (showSuggestion && !_.get(ioInlineSmartnessInfo, [IOInputItemNames.BudgetRecommendationItem, IOInlineSmartnessItemNames.IsDisplayed])) {\r\n onChanged({\r\n itemName: IOInputItemNames.BudgetRecommendationItem,\r\n value: {\r\n [IOInlineSmartnessItemNames.SuggestedDailySpend]: forecastingDailySpend,\r\n [IOInlineSmartnessItemNames.LastInputBudget]: spendCapAmountValue,\r\n [IOInlineSmartnessItemNames.IsDisplayed]: showSuggestion,\r\n },\r\n isValid: true,\r\n });\r\n }\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [showIOInlineSmartness, isSuggestedBudgetLoading, showSuggestion, forecastingDailySpend, suggestedBudget]);\r\n\r\n if (!allowUnlimited) {\r\n return (\r\n <>\r\n {\r\n onSpendCapAmountChanged({\r\n value: value.data[itemName],\r\n isValid: value.isValid,\r\n });\r\n return value;\r\n },\r\n field: itemName,\r\n data: { [itemName]: spendCapAmountValue },\r\n schema: IOFormInputSchema,\r\n alwaysShowError,\r\n i18n: legacyI18n,\r\n passiveMessages,\r\n showSingleError: true,\r\n showErrorOnPassiveMessages: isIOExhausted,\r\n }}\r\n />\r\n {showSuggestion && suggestionType === BudgetSuggestionType.Rio &&\r\n onSpendCapAmountChanged({ value: suggestedBudget, isSuggested: true })}\r\n />}\r\n );\r\n }\r\n\r\n return (\r\n
\r\n \r\n
);\r\n}\r\n\r\nIOSpendCapAmount.propTypes = {\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func.isRequired,\r\n parseDecimal: PropTypes.func.isRequired,\r\n }).isRequired,\r\n newI18n: PropTypes.shape({\r\n getString: PropTypes.func.isRequired,\r\n }),\r\n onChanged: PropTypes.func.isRequired,\r\n disabled: PropTypes.bool,\r\n originalSpendCapAmountValue: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.number,\r\n ]),\r\n spendCapAmountValue: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.number,\r\n ]),\r\n alwaysShowError: PropTypes.bool,\r\n isWarningSpendCapAmountIncrease: PropTypes.bool,\r\n allowUnlimited: PropTypes.bool,\r\n isIOExhausted: PropTypes.bool,\r\n showIOInlineSmartness: PropTypes.bool,\r\n budgetSuggestionProps: PropTypes.shape({\r\n suggestionType: PropTypes.string,\r\n suggestedBudget: PropTypes.number,\r\n }),\r\n debounceSuggestionTime: PropTypes.number,\r\n ioInlineSmartnessInfo: PropTypes.shape({}),\r\n};\r\n\r\nIOSpendCapAmount.defaultProps = {\r\n newI18n: null,\r\n disabled: false,\r\n originalSpendCapAmountValue: -1,\r\n spendCapAmountValue: null,\r\n isWarningSpendCapAmountIncrease: false,\r\n alwaysShowError: false,\r\n allowUnlimited: false,\r\n isIOExhausted: false,\r\n showIOInlineSmartness: false,\r\n budgetSuggestionProps: {},\r\n debounceSuggestionTime: 1000,\r\n ioInlineSmartnessInfo: null,\r\n};\r\n","/* eslint-disable react-hooks/exhaustive-deps */\r\nimport React, { useEffect, useState } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport { Radio } from '@bingads-webui-react/primitive';\r\nimport { ValidatedInput } from '@bingads-webui-react/validation-controls';\r\nimport { Constants, InsertionOrderUtils } from '@bingads-webui-clientcenter/entity-utils';\r\nimport { InlineInfoAlert } from '@bingads-webui-cc-react/alert';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\n\r\nimport { getEndlessDatePickerStyles } from './styles';\r\nimport { BudgetSuggestionType } from './constants';\r\nimport { BudgetRecommendation, BudgetEndlessRecommendation } from './io-inline-smartness';\r\nimport { useI18n } from './hooks';\r\n\r\nconst { IOFormInputSchema, UnlimitedBudget } = Constants;\r\nconst { isUnlimitedIOBudget, getSpendCapAmountNumber } = InsertionOrderUtils;\r\nconst selectedRadioKeys = {\r\n Unlimited: 0,\r\n SetBudget: 1,\r\n};\r\n\r\nexport function EndlessSpendCapAmount({\r\n itemName,\r\n onSpendCapAmountChanged,\r\n disabled,\r\n spendCapAmountValue,\r\n alwaysShowError,\r\n passiveMessages,\r\n showErrorOnPassiveMessages,\r\n budgetSuggestionProps,\r\n showSuggestion,\r\n}) {\r\n const { i18n, legacyI18n } = useI18n();\r\n const [selectedRadio, setSelectedRadio] = useState(null);\r\n const [spendCapAmount, setSpendCapAmount] = useState(isUnlimitedIOBudget(getSpendCapAmountNumber({ spendCapAmountValue, i18n })) ? null : spendCapAmountValue);\r\n const [isSpendCapAmountValid, setIsSpendCapAmountValid] = useState(false);\r\n const classes = useDefaultStyles(getEndlessDatePickerStyles);\r\n\r\n useEffect(() => {\r\n if (selectedRadio === selectedRadioKeys.Unlimited) {\r\n onSpendCapAmountChanged({ value: UnlimitedBudget, isValid: true });\r\n } else if (selectedRadio === selectedRadioKeys.SetBudget) {\r\n onSpendCapAmountChanged({ value: spendCapAmount, isValid: isSpendCapAmountValid });\r\n }\r\n }, [spendCapAmount, selectedRadio, isSpendCapAmountValid]);\r\n\r\n useEffect(() => {\r\n // TODO: 3337207 remove the setSpendCapAmount\r\n const isSpendCapAmountInvalid = !(_.isNumber(spendCapAmountValue) || _.isString(spendCapAmountValue));\r\n if ((isSpendCapAmountInvalid && _.isNull(selectedRadio)) || isUnlimitedIOBudget(getSpendCapAmountNumber({ spendCapAmountValue, i18n }))) {\r\n setSelectedRadio(selectedRadioKeys.Unlimited);\r\n } else {\r\n setSpendCapAmount(spendCapAmountValue);\r\n setSelectedRadio(selectedRadioKeys.SetBudget);\r\n }\r\n }, [spendCapAmountValue]);\r\n\r\n const isUnlimitedRadioChecked = selectedRadio === selectedRadioKeys.Unlimited;\r\n const ioBudgetInputDisabled = selectedRadio !== selectedRadioKeys.SetBudget || disabled;\r\n const {\r\n suggestionType, suggestedBudget, goDarkDays, endDate,\r\n } = budgetSuggestionProps;\r\n\r\n return (\r\n \r\n setSelectedRadio(selectedRadioKeys.Unlimited)} >\r\n {i18n.getString(_TL_('Unlimited'))}\r\n {isUnlimitedRadioChecked &&\r\n \r\n
\r\n {i18n.getString(_TL_('IO budget is bounded by credit limit.'))}\r\n
\r\n
}\r\n
\r\n\r\n setSelectedRadio(selectedRadioKeys.SetBudget)} >\r\n {i18n.getString(_TL_('Set a budget'))}\r\n \r\n
\r\n {\r\n setSpendCapAmount(value.data[itemName]);\r\n setIsSpendCapAmountValid(value.isValid);\r\n return value;\r\n },\r\n field: itemName,\r\n data: { [itemName]: spendCapAmount },\r\n schema: IOFormInputSchema,\r\n alwaysShowError,\r\n i18n: legacyI18n,\r\n passiveMessages: ioBudgetInputDisabled ? [] : passiveMessages,\r\n skipValidation: ioBudgetInputDisabled,\r\n showSingleError: true,\r\n showErrorOnPassiveMessages,\r\n }}\r\n />\r\n {showSuggestion && suggestionType === BudgetSuggestionType.Default &&\r\n onSpendCapAmountChanged({ value: suggestedBudget, isSuggested: true })}\r\n suggestedBudget={suggestedBudget}\r\n endDate={endDate}\r\n />}\r\n {showSuggestion && suggestionType === BudgetSuggestionType.Endless &&\r\n }\r\n
\r\n
);\r\n}\r\n\r\nEndlessSpendCapAmount.propTypes = {\r\n onSpendCapAmountChanged: PropTypes.func.isRequired,\r\n disabled: PropTypes.bool,\r\n spendCapAmountValue: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\r\n alwaysShowError: PropTypes.bool.isRequired,\r\n passiveMessages: PropTypes.arrayOf(PropTypes.string),\r\n itemName: PropTypes.string.isRequired,\r\n budgetSuggestionProps: PropTypes.shape({\r\n suggestionType: PropTypes.string,\r\n suggestedBudget: PropTypes.number,\r\n goDarkDays: PropTypes.number,\r\n }),\r\n};\r\n\r\nEndlessSpendCapAmount.defaultProps = {\r\n disabled: false,\r\n spendCapAmountValue: null,\r\n passiveMessages: [],\r\n budgetSuggestionProps: {},\r\n};\r\n","export { StartDateRecommendation } from './start-date-recommendation';\r\nexport { BudgetRecommendation } from './budget-recommendation';\r\nexport { BudgetEndlessRecommendation } from './budget-endless-recommendation';\r\nexport { BudgetRIORecommendation } from './budget-rio-recommendation';\r\nexport { GeneralRecommendation } from './general-recommendation';\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport { ReactTemplate } from '@bingads-webui-react/react-template';\r\n\r\nimport { IOInlineSmartRecommendationContainer } from './io-inline-smart-recommendation-container';\r\n\r\nexport const StartDateRecommendation = ({\r\n i18n,\r\n onApply,\r\n suggestedStartDate,\r\n}) => (\r\n \r\n {text},\r\n }}\r\n template={i18n.getString(_TL_('Select {{bold}}Start date{{/bold}} from {{suggestedStartDate}} to help prevent potentially paused dates.'))}\r\n />\r\n \r\n);\r\n\r\nStartDateRecommendation.propTypes = {\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func.isRequired,\r\n formatDate: PropTypes.func.isRequired,\r\n }).isRequired,\r\n suggestedStartDate: PropTypes.instanceOf(Date).isRequired,\r\n onApply: PropTypes.func,\r\n};\r\n\r\nStartDateRecommendation.defaultProps = {\r\n onApply: undefined,\r\n};\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport classnames from 'classnames';\r\n\r\nimport { registerIcons } from '@fluentui/style-utilities';\r\nimport { Glyphicon } from '@bingads-webui-react/primitive-unthemed';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { MessageBar, MessageBarButton } from '@bingads-webui-react/fabric-control';\r\n\r\nimport { getIOInlineSmartRecommendationContainerStyles } from '../styles';\r\n\r\nregisterIcons({\r\n icons: {\r\n Insights: ,\r\n },\r\n});\r\n\r\nexport const IOInlineSmartRecommendationContainer = ({\r\n i18n,\r\n onApply,\r\n className,\r\n children,\r\n}) => {\r\n const classes = useDefaultStyles(getIOInlineSmartRecommendationContainerStyles);\r\n return (\r\n \r\n {i18n.getString(_TL_('Apply'))}\r\n \r\n )\r\n }\r\n isMultiline\r\n messageBarIconProps={{\r\n iconName: 'Insights',\r\n className: classnames('icon-insights', classes.IOInlineSmartRecIcon),\r\n }}\r\n >\r\n {children}\r\n \r\n );\r\n};\r\n\r\nIOInlineSmartRecommendationContainer.propTypes = {\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func.isRequired,\r\n }).isRequired,\r\n onApply: PropTypes.func,\r\n className: PropTypes.string,\r\n children: PropTypes.node.isRequired,\r\n};\r\n\r\nIOInlineSmartRecommendationContainer.defaultProps = {\r\n onApply: undefined,\r\n className: undefined,\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__653__;","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport { ReactTemplate } from '@bingads-webui-react/react-template';\r\n\r\nimport { IOInlineSmartRecommendationContainer } from './io-inline-smart-recommendation-container';\r\n\r\nexport const BudgetRecommendation = ({\r\n i18n,\r\n onApply,\r\n suggestedBudget,\r\n endDate,\r\n}) => (\r\n \r\n \r\n \r\n);\r\n\r\nBudgetRecommendation.propTypes = {\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func.isRequired,\r\n formatDecimal: PropTypes.func.isRequired,\r\n }).isRequired,\r\n suggestedBudget: PropTypes.number.isRequired,\r\n onApply: PropTypes.func,\r\n endDate: PropTypes.instanceOf(Date).isRequired,\r\n};\r\n\r\nBudgetRecommendation.defaultProps = {\r\n onApply: undefined,\r\n};\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport { ReactTemplate } from '@bingads-webui-react/react-template';\r\n\r\nimport { IOInlineSmartRecommendationContainer } from './io-inline-smart-recommendation-container';\r\n\r\nexport const BudgetEndlessRecommendation = ({\r\n i18n,\r\n goDarkDays,\r\n}) => (\r\n \r\n {goDarkDays < 1\r\n ? i18n.getString(_TL_('Add more funds or create a new insertion order in 1 day.'))\r\n : \r\n }\r\n \r\n);\r\n\r\nBudgetEndlessRecommendation.propTypes = {\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func.isRequired,\r\n }).isRequired,\r\n goDarkDays: PropTypes.number.isRequired,\r\n};\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport { ReactTemplate } from '@bingads-webui-react/react-template';\r\n\r\nimport { IOInlineSmartRecommendationContainer } from './io-inline-smart-recommendation-container';\r\n\r\nexport const BudgetRIORecommendation = ({\r\n i18n,\r\n onApply,\r\n suggestedBudget,\r\n}) => (\r\n \r\n \r\n \r\n);\r\n\r\nBudgetRIORecommendation.propTypes = {\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func.isRequired,\r\n formatDecimal: PropTypes.func.isRequired,\r\n }).isRequired,\r\n suggestedBudget: PropTypes.number.isRequired,\r\n onApply: PropTypes.func,\r\n};\r\n\r\nBudgetRIORecommendation.defaultProps = {\r\n onApply: undefined,\r\n};\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\n\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { InsertionOrderUtils } from '@bingads-webui-clientcenter/entity-utils';\r\nimport { Constants } from '@bingads-webui-clientcenter/common-utils';\r\n\r\nimport { IOInlineSmartRecommendationContainer } from './io-inline-smart-recommendation-container';\r\nimport { RecommendationProperties } from './recommendation-properties';\r\nimport { getGeneralRecommendationStyles } from '../styles';\r\n\r\nconst { isEndlessIOEndDate, isUnlimitedIOBudget } = InsertionOrderUtils;\r\nconst { FrequencyMonthI18nKeyMap } = Constants;\r\n\r\nexport const GeneralRecommendation = ({\r\n i18n,\r\n onApply,\r\n recommendationProps,\r\n currencyCode,\r\n}) => {\r\n const classes = useDefaultStyles(getGeneralRecommendationStyles);\r\n\r\n const {\r\n FromDate, ThruDate, SpendCapAmount, // for normal IO\r\n SeriesStartDate, BudgetPerOrder, Frequency, // for RIO\r\n } = recommendationProps;\r\n\r\n const properties = SeriesStartDate\r\n ? [\r\n { field: i18n.getString(_TL_('Series start date')), value: i18n.formatDate(SeriesStartDate) },\r\n { field: i18n.getString(_TL_('Series end date')), value: i18n.getString(_TL_('No end date')) },\r\n { field: i18n.getString(_TL_('Budget per order')), value: i18n.formatCurrency(BudgetPerOrder, currencyCode) },\r\n { field: i18n.getString(_TL_('Frequency')), value: i18n.getString(FrequencyMonthI18nKeyMap[Frequency]) },\r\n ] : [\r\n { field: i18n.getString(_TL_('Start date')), value: i18n.formatDate(FromDate) },\r\n { field: i18n.getString(_TL_('End date')), value: isEndlessIOEndDate(ThruDate) ? i18n.getString(_TL_('No end date')) : i18n.formatDate(ThruDate) },\r\n { field: i18n.getString(_TL_('Budget')), value: isUnlimitedIOBudget(SpendCapAmount) ? i18n.getString(_TL_('Unlimited')) : i18n.formatCurrency(SpendCapAmount, currencyCode) },\r\n ];\r\n\r\n return (\r\n \r\n
\r\n {i18n.getString(_TL_('Set your insertion order start and end dates to those below to help prevent account disruptions.'))}\r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nGeneralRecommendation.propTypes = {\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func.isRequired,\r\n formatDate: PropTypes.func.isRequired,\r\n }).isRequired,\r\n onApply: PropTypes.func,\r\n recommendationProps: PropTypes.shape({}).isRequired,\r\n currencyCode: PropTypes.string.isRequired,\r\n};\r\n\r\nGeneralRecommendation.defaultProps = {\r\n onApply: undefined,\r\n};\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\n\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\n\r\nimport { getRecommendationPropertiesStyles } from '../styles';\r\n\r\nexport const RecommendationProperties = ({\r\n properties,\r\n}) => {\r\n const classes = useDefaultStyles(getRecommendationPropertiesStyles);\r\n\r\n const propertyList = properties.map(({ field, value }) => (\r\n
\r\n
{field}
\r\n
{value}
\r\n
\r\n ));\r\n\r\n return (\r\n
\r\n {propertyList}\r\n
\r\n );\r\n};\r\n\r\nRecommendationProperties.propTypes = {\r\n properties: PropTypes.arrayOf(PropTypes.shape({\r\n field: PropTypes.string.isRequired,\r\n value: PropTypes.string.isRequired,\r\n })).isRequired,\r\n};\r\n","import React, { useEffect, useMemo } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\nimport { ValidatedInput } from '@bingads-webui-react/validation-controls';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { Constants, InsertionOrderUtils } from '@bingads-webui-clientcenter/entity-utils';\r\nimport { getBackupIOStyles } from './styles';\r\nimport { useI18n } from './hooks';\r\n\r\nconst itemName = 'BackupSpendCapAmount';\r\nconst { IOFormInputSchema } = Constants;\r\nconst { getDecimal } = InsertionOrderUtils;\r\n\r\nexport function BackupSpendCapAmount({\r\n onChanged,\r\n disabled,\r\n primarySpendCapAmountValue,\r\n extendDaysValue,\r\n backupSpendCapAmountValue,\r\n}) {\r\n const { i18n, legacyI18n } = useI18n();\r\n const classes = useDefaultStyles(getBackupIOStyles);\r\n const primarySpendCapAmountDecimal = useMemo(() => getDecimal({ i18n, value: primarySpendCapAmountValue }), [i18n, primarySpendCapAmountValue]);\r\n const isBackupSpendCapAmountOverOriginal = value => primarySpendCapAmountDecimal > 0 && getDecimal({ i18n, value }) >= primarySpendCapAmountDecimal;\r\n const shouldSetBudget = value => getDecimal({ i18n, value: extendDaysValue }) > 0 && getDecimal({ i18n, value }) === 0; // value may be a number(0), or a string(\"0.00\").\r\n const validatedInputKey = `${primarySpendCapAmountValue},${extendDaysValue}`; // use key to mandatory unmount so it can call customValidator to show error message\r\n\r\n const customValidator = (value, defaultValidator) => {\r\n if (shouldSetBudget(value)) {\r\n return [i18n.getString(_TL_('To create a backup IO, please set a budget.'))];\r\n }\r\n if (isBackupSpendCapAmountOverOriginal(value)) {\r\n return [i18n.getString(_TL_('The backup IO budget should be less than your original IO.'))];\r\n }\r\n return defaultValidator(value);\r\n };\r\n\r\n useEffect(() =>\r\n () => {\r\n onChanged({\r\n value: null,\r\n isValid: true,\r\n });\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n , []);\r\n\r\n return (\r\n {\r\n onChanged({\r\n value: value.data[itemName],\r\n isValid: value.isValid,\r\n });\r\n return value;\r\n },\r\n field: itemName,\r\n data: { [itemName]: backupSpendCapAmountValue },\r\n schema: IOFormInputSchema,\r\n alwaysShowError: true,\r\n i18n: legacyI18n,\r\n showSingleError: true,\r\n }}\r\n />);\r\n}\r\n\r\nBackupSpendCapAmount.propTypes = {\r\n onChanged: PropTypes.func.isRequired,\r\n disabled: PropTypes.bool,\r\n primarySpendCapAmountValue: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.number,\r\n ]),\r\n extendDaysValue: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.number,\r\n ]),\r\n backupSpendCapAmountValue: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.number,\r\n ]),\r\n};\r\n\r\nBackupSpendCapAmount.defaultProps = {\r\n disabled: false,\r\n primarySpendCapAmountValue: null,\r\n extendDaysValue: '0',\r\n backupSpendCapAmountValue: '0',\r\n};\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport { Constants } from '@bingads-webui-clientcenter/entity-utils';\r\nimport { Glyphicon } from '@bingads-webui-react/primitive';\r\nimport { ReactTemplate } from '@bingads-webui-react/react-template';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { BackupSpendCapAmount } from './backup-spend-cap-amount';\r\nimport { BackupExtendDays } from './backup-extend-days';\r\nimport { getBackupIOStyles } from './styles';\r\n\r\nconst { UnlimitedBudget } = Constants;\r\n\r\nexport function BackupIO({\r\n i18n,\r\n currencyType,\r\n extendDaysValue,\r\n extendDaysDisabled,\r\n onExtendDaysChanged,\r\n showBackupExtendDays,\r\n backupSpendCapAmountValue,\r\n backupSpendCapAmountDisabled,\r\n onSpendCapAmountChanged,\r\n showBackupSpendCapAmount,\r\n primarySpendCapAmountValue,\r\n}) {\r\n const classes = useDefaultStyles(getBackupIOStyles);\r\n\r\n return (\r\n
\r\n
{i18n.getString(_TL_('Create a backup IO to avoid a paused account.'))}
\r\n { showBackupExtendDays &&\r\n
\r\n \r\n ,\r\n }}\r\n template={i18n.getString(_TL_('Extend end date for another {{numberOfExtendDays}} day(s)'))}\r\n />\r\n
\r\n }\r\n {showBackupSpendCapAmount &&\r\n
\r\n \r\n ,\r\n currencyType,\r\n }}\r\n template={i18n.getString(_TL_('Set budget as {{numberOfBudget}} ({{currencyType}})'))}\r\n />\r\n
}\r\n
\r\n );\r\n}\r\n\r\nBackupIO.propTypes = {\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func.isRequired,\r\n parseDecimal: PropTypes.func.isRequired,\r\n }).isRequired,\r\n currencyType: PropTypes.string.isRequired,\r\n extendDaysValue: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.number,\r\n ]),\r\n extendDaysDisabled: PropTypes.bool,\r\n onExtendDaysChanged: PropTypes.func,\r\n showBackupExtendDays: PropTypes.bool,\r\n backupSpendCapAmountValue: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.number,\r\n ]),\r\n backupSpendCapAmountDisabled: PropTypes.bool,\r\n onSpendCapAmountChanged: PropTypes.func,\r\n showBackupSpendCapAmount: PropTypes.bool,\r\n primarySpendCapAmountValue: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.number,\r\n ]),\r\n};\r\n\r\nBackupIO.defaultProps = {\r\n extendDaysValue: null,\r\n extendDaysDisabled: false,\r\n onExtendDaysChanged: null,\r\n showBackupExtendDays: false,\r\n backupSpendCapAmountValue: null,\r\n backupSpendCapAmountDisabled: false,\r\n onSpendCapAmountChanged: null,\r\n showBackupSpendCapAmount: false,\r\n primarySpendCapAmountValue: UnlimitedBudget,\r\n};\r\n","import React, { useEffect } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\nimport { ValidatedInput } from '@bingads-webui-react/validation-controls';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { Constants, InsertionOrderUtils } from '@bingads-webui-clientcenter/entity-utils';\r\nimport { getBackupIOStyles } from './styles';\r\nimport { useI18n } from './hooks';\r\n\r\nconst itemName = 'ExtendDays';\r\nconst { IOFormInputSchema, UnlimitedBudget } = Constants;\r\nconst { getDecimal } = InsertionOrderUtils;\r\n\r\nexport function BackupExtendDays({\r\n onChanged,\r\n disabled,\r\n extendDaysValue,\r\n backupSpendCapAmountValue,\r\n primarySpendCapAmountValue,\r\n}) {\r\n const classes = useDefaultStyles(getBackupIOStyles);\r\n const { i18n, legacyI18n } = useI18n();\r\n\r\n const shouldSetExtendDays = value =>\r\n getDecimal({ i18n, value: backupSpendCapAmountValue }) > 0\r\n && getDecimal({ i18n, value: primarySpendCapAmountValue }) === UnlimitedBudget\r\n && getDecimal({ i18n, value }) === 0;\r\n const isExtendDaysOver = value => getDecimal({ i18n, value }) > 30;\r\n const validatedInputKey = `${backupSpendCapAmountValue},${primarySpendCapAmountValue}`; // use key to mandatory unmount so it can call customValidator to show error message\r\n\r\n const customValidator = (value, defaultValidator) => {\r\n if (isExtendDaysOver(value)) {\r\n return [i18n.getString(_TL_('Your extension should be equal to or less than 30 days.'))];\r\n }\r\n if (shouldSetExtendDays(value)) {\r\n return [i18n.getString(_TL_('To create a backup IO, please set an extension.'))];\r\n }\r\n return defaultValidator(value);\r\n };\r\n\r\n useEffect(() =>\r\n () => {\r\n onChanged({\r\n value: null,\r\n isValid: true,\r\n });\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n , []);\r\n\r\n return (\r\n {\r\n onChanged({\r\n value: value.data[itemName],\r\n isValid: value.isValid,\r\n });\r\n return value;\r\n },\r\n field: itemName,\r\n data: { [itemName]: extendDaysValue },\r\n schema: IOFormInputSchema,\r\n alwaysShowError: true,\r\n i18n: legacyI18n,\r\n showSingleError: true,\r\n }}\r\n />\r\n );\r\n}\r\n\r\nBackupExtendDays.propTypes = {\r\n onChanged: PropTypes.func.isRequired,\r\n disabled: PropTypes.bool,\r\n extendDaysValue: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.number,\r\n ]),\r\n backupSpendCapAmountValue: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.number,\r\n ]),\r\n primarySpendCapAmountValue: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.number,\r\n ]),\r\n};\r\n\r\nBackupExtendDays.defaultProps = {\r\n disabled: false,\r\n extendDaysValue: '0',\r\n backupSpendCapAmountValue: '0',\r\n primarySpendCapAmountValue: null,\r\n};\r\n","import React, { useMemo } from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport { Glyphicon } from '@bingads-webui-react/primitive';\r\nimport { ReactTemplate } from '@bingads-webui-react/react-template';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { InlineWarningAlert } from '@bingads-webui-cc-react/alert';\r\nimport { InsertionOrderUtils } from '@bingads-webui-clientcenter/entity-utils';\r\nimport { getBackupIOStyles } from './styles';\r\n\r\nconst { getDecimal } = InsertionOrderUtils;\r\n\r\nexport function BackupIOWithConfig({\r\n i18n,\r\n currencyType,\r\n extendDaysValue,\r\n showBackupExtendDays,\r\n backupSpendCapAmountValue,\r\n showBackupSpendCapAmount,\r\n primarySpendCapAmountValue,\r\n}) {\r\n const classes = useDefaultStyles(getBackupIOStyles);\r\n const primarySpendCapAmountDecimal = useMemo(() => getDecimal({ i18n, value: primarySpendCapAmountValue }), [i18n, primarySpendCapAmountValue]);\r\n const showOverOriginalWarning = useMemo(\r\n () => primarySpendCapAmountDecimal > 0 && getDecimal({ i18n, value: backupSpendCapAmountValue }) >= primarySpendCapAmountDecimal,\r\n [backupSpendCapAmountValue, i18n, primarySpendCapAmountDecimal]\r\n );\r\n\r\n return (\r\n
\r\n
\r\n {text},\r\n }}\r\n template={i18n.getString(_TL_(\"You're currently using account level backup IO configurations. To edit these, visit {{Bold}}IO grid > Backup insertion order > Edit configurations{{/Bold}}.\"))}\r\n />\r\n
\r\n {showBackupExtendDays &&\r\n
\r\n \r\n {i18n.getString(_TL_('Extend end date for another {{numberOfExtendDays}} day(s)'), { numberOfExtendDays: extendDaysValue })}\r\n
}\r\n {showBackupSpendCapAmount &&\r\n
\r\n \r\n {i18n.getString(_TL_('Set budget as {{numberOfBudget}} ({{currencyType}})'), { numberOfBudget: backupSpendCapAmountValue, currencyType })}\r\n
}\r\n {showOverOriginalWarning &&\r\n \r\n {i18n.getString(_TL_('The backup IO will not take effect if its budget is higher than that of the original IO.'))}\r\n }\r\n
\r\n );\r\n}\r\n\r\nBackupIOWithConfig.propTypes = {\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func.isRequired,\r\n parseDecimal: PropTypes.func.isRequired,\r\n }).isRequired,\r\n currencyType: PropTypes.string.isRequired,\r\n extendDaysValue: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.number,\r\n ]),\r\n showBackupExtendDays: PropTypes.bool,\r\n backupSpendCapAmountValue: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.number,\r\n ]),\r\n showBackupSpendCapAmount: PropTypes.bool,\r\n};\r\n\r\nBackupIOWithConfig.defaultProps = {\r\n extendDaysValue: null,\r\n showBackupExtendDays: false,\r\n backupSpendCapAmountValue: null,\r\n showBackupSpendCapAmount: false,\r\n};\r\n","export const legacyStrings = {\r\n 'Next month': _TL_('Next month'),\r\n 'Previous month': _TL_('Previous month'),\r\n InsertionOrder_BackupIOTip: _TL_('Create a backup IO to avoid a paused account.'),\r\n InsertionOrder_BackupIOWithConfigTip: _TL_(\"You're currently using account level backup IO configurations. To edit these, visit {{Bold}}IO grid > Backup insertion order > Edit configurations{{/Bold}}.\"),\r\n InsertionOrder_BackupExtendDays: _TL_('Extend end date for another {{numberOfExtendDays}} day(s)'),\r\n InsertionOrder_BackupSetBudget: _TL_('Set budget as {{numberOfBudget}} ({{currencyType}})'),\r\n InsertionOrder_RecurringOccurrences: _TL_('occurrence(s)'),\r\n InsertionOrder_SPAExternalBulkCreateElectronicIo_NewLegalText: _TL_('By clicking \"{{buttonText}}\", I agree to the {{termsAndConditionsLink}}. If you have an existing Microsoft Advertising Agreement, those terms will govern the insertion order.'),\r\n InsertionOrder_SPAInternalBulkCreateElectronicIo_NewLegalText: _TL_('An insertion is a contract, and I agree to the financial terms as set in this agreement. By accepting, I also agree to the {{termsAndConditionsLink}}.'),\r\n InsertionOrderError_SpendCapAmountIncreaseOverFactorTen: _TL_('Warning: Your new budget is much larger than before.'),\r\n InsertionOrderError_EndDateExpired: _TL_('This date has expired.'),\r\n InsertionOrderError_ExtendDaysLarger: _TL_('Your extension should be equal to or less than 30 days.'),\r\n InsertionOrderError_ExtendDays_NotZero: _TL_('To create a backup IO, please set an extension.'),\r\n InsertionOrderError_BackupSpendCapAmount_NotZero: _TL_('To create a backup IO, please set a budget.'),\r\n InsertionOrderError_BackupSpendCapAmount_OverOriginal: _TL_('The backup IO budget should be less than your original IO.'),\r\n InsertionOrderError_SpendCapAmountExhausted: _TL_('The budget has exhausted.'),\r\n InsertionOrderForm_EndSeriesAfterOccurencesLabel: _TL_('End series after'),\r\n InsertionOrderForm_NoEndDateLabel: _TL_('No end date'),\r\n InsertionOrderForm_SetBudgetLabel: _TL_('Set a budget'),\r\n InsertionOrderForm_SetEndDateLabel: _TL_('Set an end date'),\r\n InsertionOrderForm_UnlimitedBudget_InlineWarningMessage: _TL_('IO budget is bounded by credit limit.'),\r\n InsertionOrderForm_UnlimitedLabel: _TL_('Unlimited'),\r\n InsertionOrderWarning_BackupSpendCapAmount_OverOriginal: _TL_('The backup IO will not take effect if its budget is higher than that of the original IO.'),\r\n SignUpAgreementLinkText: _TL_('Microsoft Advertising Terms and Conditions'),\r\n Validation_Base_Field_Not_Valid: _TL_('Field is not valid'),\r\n Validation_NotEmpty_Required_Field: _TL_('This field is required'),\r\n Validation_Number_Max_Length: _TL_('Number should not exceed max length'),\r\n Validation_Number_Range_Between: _TL_('Number should be between {{min}} and {{max}}'),\r\n Validation_Number_Require_Numeric: _TL_('Field requires numeric value'),\r\n Validation_String_Max_Length: _TL_('Enter a value that is {{maxlength}} characters or less'),\r\n};\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport { ReactTemplate } from '@bingads-webui-react/react-template';\r\nimport { Link } from '@bingads-webui-react/fabric-control';\r\n\r\nexport const IOTermsAndConditionsDescription = ({\r\n i18n,\r\n termsAndConditionsUrl,\r\n isInternal,\r\n buttonText,\r\n}) => {\r\n const termsAndConditionsLink = {i18n.getString(_TL_('Microsoft Advertising Terms and Conditions'))};\r\n return (\r\n
\r\n \r\n
\r\n );\r\n};\r\n\r\nIOTermsAndConditionsDescription.propTypes = {\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func.isRequired,\r\n parseDecimal: PropTypes.func.isRequired,\r\n formatDate: PropTypes.func.isRequired,\r\n }).isRequired,\r\n buttonText: PropTypes.string.isRequired,\r\n termsAndConditionsUrl: PropTypes.string.isRequired,\r\n isInternal: PropTypes.bool,\r\n};\r\n\r\nIOTermsAndConditionsDescription.defaultProps = {\r\n isInternal: false,\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__72__;","import { legacyStrings as ioControlsStrings } from '@bingads-webui-cc-react/io-controls';\r\nimport { legacyStrings as ioFromStrings } from './src/legacy-strings';\r\n\r\nexport { SingleIoForm } from './src/single-io-form';\r\nexport { SingleIOPanelForm } from './src/single-io-panel-form';\r\nexport { BaseIoForm } from './src/base-io-form/base-io-form';\r\nexport { RecurringIOForm } from './src/recurring-io-form';\r\nexport { RecurringIOPanelForm } from './src/recurring-panel-io-form';\r\n\r\nexport * from './src/styles';\r\n\r\nexport const legacyStrings = {\r\n ...ioControlsStrings,\r\n ...ioFromStrings,\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__668__;","export const legacyStrings = {\r\n AgencyLink_Invite_ImmediateDateString: _TL_('Immediately'),\r\n ApplyLabel: _TL_('Apply'),\r\n Button_Submit: _TL_('Submit'),\r\n ColumnName_AccountId: _TL_('Account'),\r\n Common_CancelLabel: _TL_('Cancel'),\r\n Common_EditLabel: _TL_('Edit'),\r\n Common_SaveLabel: _TL_('Save'),\r\n Grid_Filters_AddAnotherExpression: _TL_('Add another'),\r\n InsertionOrder_BulkCreateEIOWithRecommendation_CreateSectionTitle: _TL_('Create new insertion orders:'),\r\n InsertionOrder_BulkCreateEIOWithRecommendation_EmailSummaryAlert: _TL_(\"This order requires customer review. We'll alert the customer and send them a summary email once you click {0}\"),\r\n InsertionOrder_BulkCreateEIOWithRecommendation_FeedbackLink: _TL_('Provide feedback'),\r\n InsertionOrder_BulkCreateEIOWithRecommendation_UpdateSectionTitle: _TL_('Update current insertion orders:'),\r\n InsertionOrder_BulkCreateEIOWithRecommendationGird_EmailSummaryAlert: _TL_('This order requires customer review. We’ll alert the customer and send them a summary email once you click {{applyButtonText}}'),\r\n InsertionOrder_EditIOInRecurringSeriesName_InfoMessage: _TL_('This order is currently part of a series. Editing the order individually will result in it not being part of the series anymore.'),\r\n InsertionOrderError_DealPointIdOrRecordCenterIdRequired: _TL_('Either DealPoint ID or Record Center ID is required.'),\r\n InsertionOrderForm_AgencyIdOrPoLabel: _TL_('Purchase order'),\r\n InsertionOrderForm_BudgetLabel: _TL_('Budget'),\r\n InsertionOrderForm_BackupIOLabel: _TL_('Backup insertion order (IO)'),\r\n InsertionOrderForm_CommentLabel: _TL_('Notes'),\r\n InsertionOrderForm_CreateDescription: _TL_('Enter the info for an order that has already been signed and stored in DealPoint or Record Center. Once you enter this order, the ads will be eligible for delivery on the start date.'),\r\n InsertionOrderForm_DealPointIdLabel: _TL_('DealPoint ID'),\r\n InsertionOrderForm_DescriptionEditEio: _TL_('After you click {0}, your changes might need to go through the approval process again, which can take up to 24 hours. The status of your insertion order will be updated after we review the changes. '),\r\n InsertionOrderForm_EndDateLabel: _TL_('End date'),\r\n InsertionOrderForm_InternalBulkCreateElectronicIo_AutoApprovalText: _TL_('Auto-approvals enabled'),\r\n InsertionOrderForm_OrderNameLabel: _TL_('Order name'),\r\n InsertionOrderForm_RecordCenterIdLabel: _TL_('Record ID'),\r\n InsertionOrderForm_RemoveAllExpressionsLabel: _TL_('remove all'),\r\n InsertionOrderForm_RemoveExpressionLabel: _TL_('remove'),\r\n InsertionOrderForm_SPABulkCreateIntroText: _TL_('Enter information for one or more insertion orders. After you create your insertion orders, you will receive a status email. If the orders are approved, your ads will begin to run on their start dates. '),\r\n InsertionOrderForm_SPABulkCreatePanelIntroText: _TL_('After you click Save, your changes might need to go through the approval process again, which can take up to 24 hours. The status of your insertion order will be updated after we review the changes.'),\r\n InsertionOrderForm_StartDateLabel: _TL_('Start date'),\r\n InsertionOrderForm_TitleCreateInsertionOrders: _TL_('Create insertion orders'),\r\n InsertionOrderForm_TitleEdit: _TL_('Edit an insertion order'),\r\n InsertionOrderForm_TitleEnterInsertionOrder: _TL_('Enter manual insertion order'),\r\n InsertionOrderGrid_HeaderOptional: _TL_('(optional)'),\r\n Label_Clear: _TL_('Clear'),\r\n LearnMore: _TL_('Learn more'),\r\n SignUpAgreementLinkText: _TL_('Microsoft Advertising Terms and Conditions'),\r\n Validation_Base_Field_Not_Valid: _TL_('Field is not valid'),\r\n Validation_NotEmpty_Required_Field: _TL_('This field is required'),\r\n Validation_Number_Max_Length: _TL_('Number should not exceed max length'),\r\n Validation_Number_Range_Between: _TL_('Number should be between {{min}} and {{max}}'),\r\n Validation_Number_Require_Numeric: _TL_('Field requires numeric value'),\r\n Validation_String_Max_Length: _TL_('Enter a value that is {{maxlength}} characters or less'),\r\n\r\n CommonValidationMessage_DuplicateValue: _TL_('It is already used. Enter a new one.'),\r\n CommonValidationMessage_InvalidDate: _TL_('A valid date is required.'),\r\n CommonValidationMessage_InvalidNumber: _TL_('Only numeric values allowed.'),\r\n CommonValidationMessage_OutofRange: _TL_('Only {0} – {1} allowed.', { comment: '{0} indicates the lower bound, {1} indicates the upper bound.' }),\r\n CommonValidationMessage_RequiredField: _TL_('Required field.'),\r\n CommonValidationMessage_TextTooLong: _TL_('Exceeds {0} characters.'),\r\n InsertionOrder_RecurringBudgetPerOrder: _TL_('Budget per order'),\r\n InsertionOrder_RecurringEndAfter: _TL_('End after:'),\r\n InsertionOrder_RecurringEndByDate: _TL_('Have an end date for the series'),\r\n InsertionOrder_RecurringEndOccurrences: _TL_('End occurrences'),\r\n InsertionOrder_RecurringFrequency: _TL_('Frequency'),\r\n InsertionOrder_RecurringFrequencyOptionBIMonthly: _TL_('Every 2 months'),\r\n InsertionOrder_RecurringFrequencyOptionMonthly: _TL_('Monthly'),\r\n InsertionOrder_RecurringFrequencyOptionQuarterly: _TL_('Quarterly'),\r\n InsertionOrder_RecurringFrequencyOptionYearly: _TL_('Yearly'),\r\n InsertionOrder_RecurringInsertionOrder_ValidationFailureMessage: _TL_('The following fields are invalid: {0}, please enter again.'),\r\n InsertionOrder_RecurringNoEndDate: _TL_('No end date'),\r\n InsertionOrder_RecurringNotes: _TL_('Notes'),\r\n InsertionOrder_RecurringOccurrences: _TL_('occurrence(s)'),\r\n InsertionOrder_RecurringOccurrencesNotToUpdate: _TL_('{0} {1} will not be updated because of different start date, end date, or budget.', { comment: '{0} indicates the amount of io in series which will not be updated. {1} is the \"occurrence{s}\" in bold.' }),\r\n InsertionOrder_RecurringOccurrencesToUpdate: _TL_('{0} {1} will be updated. ', { comment: '{0} indicates the amount of io in series which will be updated. {1} is the \"occurrence{s}\" in bold.' }),\r\n InsertionOrder_RecurringOrderName: _TL_('Order name'),\r\n InsertionOrder_RecurringPurchaseOrder: _TL_('Purchase order'),\r\n InsertionOrder_RecurringSeriesEndDate: _TL_('Series end date'),\r\n InsertionOrder_RecurringSeriesName: _TL_('Series name'),\r\n InsertionOrder_RecurringSeriesStartDate: _TL_('Series start date'),\r\n InsertionOrder_SPAExternalBulkCreateElectronicIo_LegalText: _TL_('By clicking \"{0}\", I agree to the {1}. If you have an existing Microsoft Advertising Agreement, those terms will govern the insertion order.'),\r\n InsertionOrderError_SpendCapAmountIncreaseOverFactorTen: _TL_('Warning: Your new budget is much larger than before.'),\r\n InsertionOrderForm_RecurringCreateIntroText: _TL_('Create insertion order that renews on a set schedule. Orders that requires manual approval will remain pending until approved (including recurrences). All auto-approved orders becomes active on their start dates. Anything entered in purchase order, order name, or notes will be repeated for the entire series. You can always edit these in individual ocurrences. '),\r\n InsertionOrderForm_RecurringEditIntroText: _TL_('Insertion orders that require manual approval remain pending until approved (including newly revised orders). Once approved, each order in the series becomes active on its scheduled start date. '),\r\n InsertionOrderForm_TitleCreateRecurringInsertionOrders: _TL_('Create a recurring insertion order'),\r\n InsertionOrderForm_TitleEditRecurringInsertionOrders: _TL_('Edit recurring insertion orders'),\r\n InsertionOrder_CreateUnlimitedEndlessIO_InfoMessage: _TL_('The account will be eligible for spend regardless of other insertion orders with limited budget and end dates. To moderate your spend, please create an insertion order with a specific budget and end date.'),\r\n};\r\n","import React, { useRef, useState, useEffect, useCallback } from 'react';\r\nimport _ from 'underscore';\r\nimport PropTypes from 'prop-types';\r\nimport { InlineInfoAlert } from '@bingads-webui-cc-react/alert';\r\nimport { HelpLink } from '@bingads-webui-react/help-link';\r\nimport { InsertionOrderUtils } from '@bingads-webui-clientcenter/entity-utils';\r\n\r\nimport { BaseIoForm } from './base-io-form/base-io-form';\r\nimport { DefaultIO as emptyIO, DefaultAccountPropTypes, DefaultIOPropTypes, DefaultEditableIOFieldsMap, PermissionsPropTypes } from './constants';\r\nimport { useIOEditableControl } from './utils/use-io-editable-control';\r\nimport { useI18n } from './use-i18n';\r\n\r\nconst { isIOValid, isEndlessIOEndDate, isUnlimitedIOBudget } = InsertionOrderUtils;\r\n\r\nexport function SingleIoForm({\r\n defaultIO,\r\n account,\r\n isManualIO,\r\n isCreateMode,\r\n displayCurrency,\r\n mtIOEditableMap,\r\n cancelButtonCallback,\r\n submitButtonCallback,\r\n errorOnSubmitCallback,\r\n permissions,\r\n}) {\r\n const ioFormRef = useRef();\r\n const { i18n } = useI18n();\r\n const [insertionOrder, setInsertionOrder] = useState(defaultIO);\r\n const [isEndlessOrUnlimitedIO, setIsEndlessOrUnlimitedIO] = useState(false);\r\n const editableIOFieldsMap = useIOEditableControl({ insertionOrder, isCreateMode, mtIOEditableMap });\r\n useEffect(() => ioFormRef.current && ioFormRef.current.scrollIntoView(), []);\r\n\r\n const onChange = useCallback(({ newIO }) => {\r\n setInsertionOrder(newIO);\r\n setIsEndlessOrUnlimitedIO(isEndlessIOEndDate(newIO.ThruDate) && isUnlimitedIOBudget(newIO.SpendCapAmount));\r\n }, []);\r\n const onSubmitButtonClick = () => {\r\n // dealPointId and recordCenterId are default empty but at least one of them should be inputed\r\n const isDealPointIdOrRecordCenterIdValid = insertionOrder.DealPointId || insertionOrder.RecordCenterId;\r\n /* istanbul ignore next */\r\n if (isManualIO && !isDealPointIdOrRecordCenterIdValid) {\r\n errorOnSubmitCallback(i18n.getString(_TL_('Either DealPoint ID or Record Center ID is required.')));\r\n } else {\r\n submitButtonCallback(insertionOrder);\r\n }\r\n };\r\n const isSubmitAllowed = () => isIOValid({\r\n ioValidationFields: insertionOrder.ioValidationFields,\r\n isIOItemNeedValidation: {\r\n AccountName: false,\r\n FriendlyName: !isManualIO,\r\n FromDate: true,\r\n ThruDate: !(_.isDate(defaultIO.ThruDate) && _.isDate(insertionOrder.ThruDate) && _.isEqual(defaultIO.ThruDate.toDateString(), insertionOrder.ThruDate.toDateString())),\r\n SpendCapAmount: true,\r\n AgencyIdOrPo: true,\r\n DealPointId: isManualIO,\r\n RecordCenterId: isManualIO,\r\n Comment: true,\r\n },\r\n });\r\n\r\n return (\r\n
\r\n
\r\n
\r\n
{isCreateMode ?\r\n i18n.getString(_TL_('Enter manual insertion order')) :\r\n i18n.getString(_TL_('Edit an insertion order'))}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {isCreateMode ?\r\n `${i18n.getString(_TL_('Enter the info for an order that has already been signed and stored in DealPoint or Record Center. Once you enter this order, the ads will be eligible for delivery on the start date.'))} ` :\r\n i18n.getString(_TL_('After you click {0}, your changes might need to go through the approval process again, which can take up to 24 hours. The status of your insertion order will be updated after we review the changes. ')).replace('{0}', i18n.getString(_TL_('Save')))}\r\n {i18n.getString(_TL_('Learn more'))}\r\n
\r\n
\r\n \r\n
\r\n
\r\n {defaultIO.IsInSeries && {i18n.getString(_TL_('This order is currently part of a series. Editing the order individually will result in it not being part of the series anymore.'))}}\r\n {isEndlessOrUnlimitedIO &&\r\n {i18n.getString(_TL_('The account will be eligible for spend regardless of other insertion orders with limited budget and end dates. To moderate your spend, please create an insertion order with a specific budget and end date.'))}}\r\n \r\n \r\n
\r\n
\r\n );\r\n}\r\n\r\nSingleIoForm.propTypes = {\r\n defaultIO: DefaultIOPropTypes,\r\n isManualIO: PropTypes.bool,\r\n isCreateMode: PropTypes.bool,\r\n cancelButtonCallback: PropTypes.func.isRequired,\r\n submitButtonCallback: PropTypes.func,\r\n displayCurrency: PropTypes.string,\r\n errorOnSubmitCallback: PropTypes.func,\r\n account: DefaultAccountPropTypes,\r\n mtIOEditableMap: PropTypes.shape({\r\n AccountId: PropTypes.bool,\r\n FriendlyName: PropTypes.bool,\r\n FromDate: PropTypes.bool,\r\n ThruDate: PropTypes.bool,\r\n SpendCapAmount: PropTypes.bool,\r\n AgencyIdOrPo: PropTypes.bool,\r\n DealPointId: PropTypes.bool,\r\n RecordCenterId: PropTypes.bool,\r\n Comment: PropTypes.bool,\r\n }),\r\n permissions: PermissionsPropTypes,\r\n};\r\n\r\nSingleIoForm.defaultProps = {\r\n defaultIO: emptyIO,\r\n isManualIO: false,\r\n isCreateMode: false,\r\n displayCurrency: '',\r\n account: {},\r\n submitButtonCallback: _.noop,\r\n errorOnSubmitCallback: _.noop,\r\n mtIOEditableMap: DefaultEditableIOFieldsMap,\r\n permissions: {},\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__671__;","import React, { useEffect, useMemo, useState } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { InsertionOrderRow } from './base-io-form-row';\r\nimport { DefaultIoFormData, DefaultPropTypes, PermissionsPropTypes, DefaultExistedSeriesNames } from '../constants';\r\n\r\nconst {\r\n DefaultIO,\r\n DefaultEditableIOFieldsMap,\r\n DefaultValidationFields,\r\n} = DefaultIoFormData;\r\nconst {\r\n DefaultIOPropTypes,\r\n DefaultEditableIOFieldsMapPropTypes,\r\n DefaultAccountPropTypes,\r\n} = DefaultPropTypes;\r\nexport function BaseIoForm(props) {\r\n const {\r\n onInputChange,\r\n className,\r\n originalIO,\r\n alwaysShowError,\r\n customizeCurrencies,\r\n minEffectiveDate,\r\n fixedFromDate,\r\n isAgencyLinking,\r\n isDisplayStaticAccountName,\r\n isManualIO,\r\n isDisplayAccountSelector,\r\n isWithRecommendation,\r\n accountsList,\r\n editableIOFieldsMap,\r\n isWarningSpendCapAmountIncrease,\r\n permissions,\r\n isRecurringIO,\r\n existedSeriesNames,\r\n isShowBackupIO,\r\n isBackupIOChanged,\r\n setIsBackupIOChanged,\r\n showIOInlineSmartness,\r\n suggestedStartDate: suggestedStartDateFromProps,\r\n generalRecommendationProps,\r\n hideSpecificRecommendation,\r\n } = props;\r\n const minDate = useMemo(() => (minEffectiveDate instanceof Date && minEffectiveDate >= new Date() ? minEffectiveDate : new Date()), [minEffectiveDate]);\r\n const suggestedStartDate = useMemo(() => (suggestedStartDateFromProps instanceof Date && suggestedStartDateFromProps < minDate ? minDate : suggestedStartDateFromProps), [minDate, suggestedStartDateFromProps]);\r\n const [insertionOrder, setInsertionOrder] = useState(() => ({ ...DefaultIO, ...props.insertionOrder, ioValidationFields: DefaultValidationFields }));\r\n\r\n useEffect(() => {\r\n onInputChange({\r\n newIO: insertionOrder,\r\n });\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [insertionOrder]);\r\n\r\n return (\r\n
\r\n
\r\n \r\n
\r\n
\r\n );\r\n}\r\n\r\nBaseIoForm.propTypes = {\r\n onInputChange: PropTypes.func.isRequired,\r\n className: PropTypes.string,\r\n minEffectiveDate: PropTypes.instanceOf(Date),\r\n alwaysShowError: PropTypes.oneOfType([\r\n PropTypes.bool,\r\n PropTypes.number,\r\n ]),\r\n originalIO: PropTypes.object,\r\n customizeCurrencies: PropTypes.node,\r\n fixedFromDate: PropTypes.string,\r\n isDisplayStaticAccountName: PropTypes.bool,\r\n isManualIO: PropTypes.bool,\r\n editableIOFieldsMap: DefaultEditableIOFieldsMapPropTypes,\r\n isWithRecommendation: PropTypes.bool,\r\n insertionOrder: DefaultIOPropTypes,\r\n accountsList: PropTypes.arrayOf(DefaultAccountPropTypes),\r\n isDisplayAccountSelector: PropTypes.bool,\r\n isWarningSpendCapAmountIncrease: PropTypes.bool,\r\n permissions: PermissionsPropTypes,\r\n isRecurringIO: PropTypes.bool,\r\n existedSeriesNames: DefaultExistedSeriesNames,\r\n isShowBackupIO: PropTypes.bool,\r\n isBackupIOChanged: PropTypes.bool,\r\n setIsBackupIOChanged: PropTypes.func,\r\n isAgencyLinking: PropTypes.bool,\r\n showIOInlineSmartness: PropTypes.bool,\r\n suggestedStartDate: PropTypes.instanceOf(Date),\r\n generalRecommendationProps: PropTypes.shape({}),\r\n hideSpecificRecommendation: PropTypes.bool,\r\n};\r\n\r\nBaseIoForm.defaultProps = {\r\n className: 'io-form',\r\n originalIO: null,\r\n insertionOrder: DefaultIO,\r\n accountsList: [],\r\n minEffectiveDate: null,\r\n customizeCurrencies: null,\r\n alwaysShowError: false,\r\n fixedFromDate: null,\r\n isAgencyLinking: false,\r\n isManualIO: false,\r\n isDisplayStaticAccountName: false,\r\n isDisplayAccountSelector: false,\r\n isWithRecommendation: false,\r\n editableIOFieldsMap: DefaultEditableIOFieldsMap,\r\n isWarningSpendCapAmountIncrease: false,\r\n permissions: {},\r\n isRecurringIO: false,\r\n existedSeriesNames: [],\r\n isShowBackupIO: false,\r\n isBackupIOChanged: false,\r\n setIsBackupIOChanged: null,\r\n showIOInlineSmartness: false,\r\n suggestedStartDate: null,\r\n generalRecommendationProps: null,\r\n hideSpecificRecommendation: false,\r\n};\r\n","import React, { useCallback, useEffect, useState } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\n\r\nimport { ValidatedInput } from '@bingads-webui-react/validation-controls';\r\nimport { TextArea } from '@bingads-webui-react/primitive-validation';\r\nimport { isValidDate } from '@bingads-webui-universal/temporal-utitlities';\r\nimport {\r\n IODatePicker,\r\n IOSpendCapAmount,\r\n BackupIO,\r\n BackupIOWithConfig,\r\n StartDateRecommendation,\r\n GeneralRecommendation,\r\n useSuggestedBudget,\r\n} from '@bingads-webui-cc-react/io-controls';\r\nimport { Constants, InsertionOrderUtils } from '@bingads-webui-clientcenter/entity-utils';\r\nimport { withoutTime } from '@bingads-webui-universal/primitive-utilities';\r\nimport { DateUtils } from '@bingads-webui-clientcenter/common-utils';\r\n\r\nimport {\r\n DefaultIoFormData,\r\n DefaultPropTypes,\r\n DefaultExistedSeriesNames,\r\n} from '../constants';\r\nimport { IOAccountIdSelector } from './io-account-id-selector';\r\nimport { getMinDateForEndDate, getIsShowBackupIOParam } from './helper';\r\nimport { ClassNameWrapper } from './base-io-form-row-item-wrapper';\r\nimport { RIOSeriesNameInput } from './rio-series-name-input';\r\nimport { RIOFrequencySelector } from './rio-frequency-selector';\r\nimport { useI18n } from '../use-i18n';\r\n\r\nconst { getDecimal } = InsertionOrderUtils;\r\n\r\nconst {\r\n IOFormInputSchema, RIOThruDateOptions, InsertionOrderLabel, IOInputItemNames, IOInlineSmartnessItemNames,\r\n EndlessDate,\r\n} = Constants;\r\nconst { DefaultIO, DefaultEditableIOFieldsMap } = DefaultIoFormData;\r\nconst {\r\n DefaultIOPropTypes,\r\n DefaultEditableIOFieldsMapPropTypes,\r\n DefaultAccountPropTypes,\r\n} = DefaultPropTypes;\r\nconst { getNFrequencyEndDate, isDateWithoutTimeEqual } = DateUtils;\r\n\r\nexport function InsertionOrderRow({\r\n originalIO,\r\n insertionOrder,\r\n alwaysShowError,\r\n customizeCurrencies,\r\n minEffectiveDate,\r\n fixedFromDate,\r\n setInsertionOrder,\r\n isDisplayStaticAccountName,\r\n isDisplayAccountSelector,\r\n isManualIO,\r\n isRecurringIO,\r\n editableIOFieldsMap,\r\n accountsList,\r\n isWarningSpendCapAmountIncrease,\r\n existedSeriesNames,\r\n isShowBackupIO,\r\n isBackupIOChanged,\r\n setIsBackupIOChanged,\r\n isAgencyLinking,\r\n showIOInlineSmartness,\r\n suggestedStartDate,\r\n generalRecommendationProps,\r\n hideSpecificRecommendation,\r\n}) {\r\n const { i18n, legacyI18n } = useI18n();\r\n const { showBackupSpendCapAmount, showBackupExtendDays } = getIsShowBackupIOParam(insertionOrder);\r\n const showBackupIO = isShowBackupIO && !isRecurringIO && (showBackupExtendDays || showBackupSpendCapAmount);\r\n\r\n const onChangedField = useCallback(({\r\n itemName, value, isValid, currentAccount = {}, seriesEndOption,\r\n }) => {\r\n const newIOItems = { [itemName]: value };\r\n const newValidationFields = { [itemName]: isValid };\r\n const newIOInlineSmartnessInfo = {};\r\n\r\n // One input change will affect another\r\n switch (itemName) {\r\n case IOInputItemNames.FromDate:\r\n if (isValid && isValidDate(insertionOrder.ThruDate) && isValidDate(value) && withoutTime(value) > withoutTime(insertionOrder.ThruDate)) {\r\n newValidationFields.ThruDate = false;\r\n newIOItems.ThruDate = '';\r\n if (isRecurringIO) {\r\n newIOItems.SeriesEndOption = null;\r\n newIOItems.RepeatCount = null;\r\n newValidationFields.SeriesEndOption = false;\r\n newValidationFields.RepeatCount = false;\r\n }\r\n }\r\n break;\r\n case IOInputItemNames.ThruDate:\r\n if (isRecurringIO) {\r\n const isNewSeriesEndOptionIsOccurrences = seriesEndOption === RIOThruDateOptions.EndByOccurrences;\r\n newIOItems.SeriesEndOption = seriesEndOption;\r\n newIOItems.RepeatCount = isNewSeriesEndOptionIsOccurrences ? value : '';\r\n newIOItems.ThruDate = !isNewSeriesEndOptionIsOccurrences ? value : null;\r\n newValidationFields.SeriesEndOption = isValid;\r\n newValidationFields.RepeatCount = isNewSeriesEndOptionIsOccurrences ? isValid : false;\r\n newValidationFields.ThruDate = !isNewSeriesEndOptionIsOccurrences ? isValid : false;\r\n } else if (isValid && isValidDate(insertionOrder.FromDate) && isValidDate(value) && value < insertionOrder.FromDate) {\r\n newIOItems.ThruDate = insertionOrder.FromDate;\r\n }\r\n break;\r\n case IOInputItemNames.AccountId:\r\n newIOItems.AccountName = currentAccount.DisplayAccountName;\r\n newIOItems.AccountBackupIOConfigModel = currentAccount.AccountBackupIOConfigModel;\r\n newIOItems.CurrencyType = currentAccount.CurrencyType;\r\n if (showIOInlineSmartness) {\r\n newIOInlineSmartnessInfo[IOInputItemNames.StartDateRecommendationItem] = null;\r\n newIOInlineSmartnessInfo[IOInputItemNames.BudgetRecommendationItem] = null;\r\n }\r\n break;\r\n case IOInputItemNames.BudgetRecommendationItem:\r\n case IOInputItemNames.StartDateRecommendationItem:\r\n case IOInputItemNames.GeneralRecommendationItem:\r\n if (showIOInlineSmartness) {\r\n newIOInlineSmartnessInfo[itemName] = value;\r\n newIOItems[itemName] = undefined;\r\n }\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n setInsertionOrder(preIO => ({\r\n ...preIO,\r\n ...newIOItems,\r\n ioValidationFields: {\r\n ...preIO.ioValidationFields,\r\n ...newValidationFields,\r\n },\r\n IOInlineSmartnessInfo: {\r\n ...preIO.IOInlineSmartnessInfo,\r\n ...newIOInlineSmartnessInfo,\r\n },\r\n }));\r\n }, [insertionOrder.FromDate, insertionOrder.ThruDate, isRecurringIO, setInsertionOrder, showIOInlineSmartness]);\r\n\r\n useState(() => {\r\n if (!isDisplayAccountSelector && accountsList.length === 1) {\r\n onChangedField({\r\n itemName: IOInputItemNames.AccountId,\r\n value: accountsList[0].AccountId,\r\n isValid: true,\r\n currentAccount: accountsList[0],\r\n });\r\n }\r\n });\r\n const changeExtendDays = useCallback(({ value, isValid }) => {\r\n if (getDecimal({ i18n, value }) > 0 && !isBackupIOChanged && _.isFunction(setIsBackupIOChanged)) {\r\n setIsBackupIOChanged(true);\r\n }\r\n onChangedField({ itemName: IOInputItemNames.ExtendDays, value, isValid });\r\n }, [i18n, isBackupIOChanged, onChangedField, setIsBackupIOChanged]);\r\n\r\n const changeBackupSpendCapAmount = useCallback(({ value, isValid }) => {\r\n if (getDecimal({ i18n, value }) > 0 && !isBackupIOChanged && _.isFunction(setIsBackupIOChanged)) {\r\n setIsBackupIOChanged(true);\r\n }\r\n onChangedField({ itemName: IOInputItemNames.BackupSpendCapAmount, value, isValid });\r\n }, [i18n, isBackupIOChanged, onChangedField, setIsBackupIOChanged]);\r\n\r\n const isOccurrences = isRecurringIO && insertionOrder[IOInputItemNames.SeriesEndOption] === RIOThruDateOptions.EndByOccurrences;\r\n const renderValidationInput = ({\r\n // eslint-disable-next-line react/prop-types\r\n itemName, InputComponent = ValidatedInput, isOptional = false, currencies,\r\n }) => (\r\n \r\n {\r\n onChangedField({\r\n itemName,\r\n value: value.data[itemName],\r\n isValid: value.isValid,\r\n });\r\n return value;\r\n },\r\n field: itemName,\r\n data: insertionOrder,\r\n schema: IOFormInputSchema,\r\n alwaysShowError,\r\n i18n: legacyI18n,\r\n }}\r\n />\r\n \r\n );\r\n\r\n const onStartDateChanged = ({ value, isValid, isSuggested = false }) => {\r\n onChangedField({\r\n itemName: IOInputItemNames.FromDate,\r\n value,\r\n isValid: !editableIOFieldsMap[IOInputItemNames.FromDate] || isValid,\r\n });\r\n if (isSuggested) {\r\n onChangedField({\r\n itemName: IOInputItemNames.StartDateRecommendationItem,\r\n value: {\r\n ..._.get(insertionOrder, [IOInputItemNames.IOInlineSmartnessInfo, IOInputItemNames.StartDateRecommendationItem]),\r\n [IOInlineSmartnessItemNames.IsApplyButtonClicked]: true,\r\n },\r\n isValid: true,\r\n });\r\n }\r\n };\r\n\r\n const showStartDateRecommendation = !!(showIOInlineSmartness\r\n && !hideSpecificRecommendation\r\n && editableIOFieldsMap[IOInputItemNames.FromDate]\r\n && _.isDate(suggestedStartDate)\r\n && insertionOrder.ioValidationFields[IOInputItemNames.FromDate]\r\n && withoutTime(insertionOrder[IOInputItemNames.FromDate]) > withoutTime(suggestedStartDate));\r\n\r\n const budgetSuggestionProps = useSuggestedBudget({\r\n i18n,\r\n showIOInlineSmartness,\r\n ioItems: insertionOrder,\r\n ioValidationFields: insertionOrder.ioValidationFields,\r\n isRecurringIO,\r\n hideSpecificRecommendation,\r\n });\r\n\r\n const showGeneralRecommendation = !!(showIOInlineSmartness\r\n && !_.isEmpty(generalRecommendationProps)\r\n && generalRecommendationProps.RecommendationId > 0\r\n && insertionOrder[IOInputItemNames.CurrencyType]);\r\n\r\n const onGeneralRecommendationApply = () => {\r\n if (isRecurringIO) {\r\n const {\r\n SeriesName, SeriesStartDate, BudgetPerOrder, Frequency,\r\n } = generalRecommendationProps;\r\n if (!insertionOrder[IOInputItemNames.Name]) {\r\n onChangedField({ itemName: IOInputItemNames.Name, value: SeriesName, isValid: true });\r\n }\r\n onChangedField({ itemName: IOInputItemNames.FromDate, value: SeriesStartDate, isValid: true });\r\n onChangedField({\r\n itemName: IOInputItemNames.ThruDate, value: EndlessDate, seriesEndOption: RIOThruDateOptions.NoEndDate, isValid: true,\r\n });\r\n onChangedField({ itemName: IOInputItemNames.SpendCapAmount, value: BudgetPerOrder, isValid: true });\r\n onChangedField({ itemName: IOInputItemNames.FrequencyType, value: Frequency, isValid: true });\r\n } else {\r\n const { FromDate, ThruDate, SpendCapAmount } = generalRecommendationProps;\r\n onChangedField({ itemName: IOInputItemNames.FromDate, value: FromDate, isValid: true });\r\n onChangedField({ itemName: IOInputItemNames.ThruDate, value: ThruDate, isValid: true });\r\n onChangedField({ itemName: IOInputItemNames.SpendCapAmount, value: SpendCapAmount, isValid: true });\r\n }\r\n\r\n const { RecommendationId } = generalRecommendationProps;\r\n onChangedField({ itemName: IOInputItemNames.RecommendationId, value: RecommendationId, isValid: true });\r\n onChangedField({\r\n itemName: IOInputItemNames.GeneralRecommendationItem,\r\n value: {\r\n ..._.get(insertionOrder, [IOInputItemNames.IOInlineSmartnessInfo, IOInputItemNames.GeneralRecommendationItem]),\r\n [IOInlineSmartnessItemNames.IsApplyButtonClicked]: true,\r\n },\r\n isValid: true,\r\n });\r\n };\r\n\r\n // Below 2 useEffect cannot add dependency 'insertionOrder' or 'onChangeField' because it will cause infinite loop\r\n useEffect(() => {\r\n if (showIOInlineSmartness && _.isDate(suggestedStartDate)) {\r\n if (!isDateWithoutTimeEqual(suggestedStartDate, _.get(insertionOrder, [IOInputItemNames.IOInlineSmartnessInfo, IOInputItemNames.StartDateRecommendationItem, IOInlineSmartnessItemNames.SuggestedStartDate]))) {\r\n onChangedField({\r\n itemName: IOInputItemNames.StartDateRecommendationItem,\r\n value: {\r\n [IOInlineSmartnessItemNames.SuggestedStartDate]: suggestedStartDate,\r\n [IOInlineSmartnessItemNames.LastInputStartDate]: showStartDateRecommendation ? insertionOrder[IOInputItemNames.FromDate] : undefined,\r\n [IOInlineSmartnessItemNames.IsDisplayed]: showStartDateRecommendation,\r\n },\r\n isValid: true,\r\n });\r\n } else if (!_.get(insertionOrder, [IOInputItemNames.IOInlineSmartnessInfo, IOInputItemNames.StartDateRecommendationItem, IOInlineSmartnessItemNames.IsDisplayed])) {\r\n onChangedField({\r\n itemName: IOInputItemNames.StartDateRecommendationItem,\r\n value: {\r\n ..._.get(insertionOrder, [IOInputItemNames.IOInlineSmartnessInfo, IOInputItemNames.StartDateRecommendationItem]),\r\n [IOInlineSmartnessItemNames.LastInputStartDate]: insertionOrder[IOInputItemNames.FromDate],\r\n [IOInlineSmartnessItemNames.IsDisplayed]: showStartDateRecommendation,\r\n },\r\n isValid: true,\r\n });\r\n }\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [showIOInlineSmartness, suggestedStartDate, showStartDateRecommendation]);\r\n\r\n useEffect(() => {\r\n if (showIOInlineSmartness && !_.get(insertionOrder, [IOInputItemNames.IOInlineSmartnessInfo, IOInputItemNames.GeneralRecommendationItem, IOInlineSmartnessItemNames.IsApplyButtonClicked])) {\r\n if (generalRecommendationProps) {\r\n const {\r\n SeriesName, SeriesStartDate, BudgetPerOrder, Frequency,\r\n FromDate, ThruDate, SpendCapAmount,\r\n } = generalRecommendationProps;\r\n if (showGeneralRecommendation) {\r\n onChangedField({\r\n itemName: IOInputItemNames.GeneralRecommendationItem,\r\n value: {\r\n [IOInlineSmartnessItemNames.StartDate]: FromDate || SeriesStartDate,\r\n [IOInlineSmartnessItemNames.EndDate]: ThruDate,\r\n [IOInlineSmartnessItemNames.SpendCapAmount]: SpendCapAmount || BudgetPerOrder,\r\n [IOInlineSmartnessItemNames.FrequencyType]: Frequency,\r\n [IOInlineSmartnessItemNames.SeriesName]: SeriesName,\r\n [IOInlineSmartnessItemNames.IsDisplayed]: true,\r\n },\r\n isValid: true,\r\n });\r\n } else if (generalRecommendationProps[IOInputItemNames.RecommendationId]) {\r\n onChangedField({\r\n itemName: IOInputItemNames.GeneralRecommendationItem,\r\n value: {\r\n [IOInlineSmartnessItemNames.StartDate]: FromDate || SeriesStartDate,\r\n [IOInlineSmartnessItemNames.EndDate]: ThruDate,\r\n [IOInlineSmartnessItemNames.SpendCapAmount]: SpendCapAmount || BudgetPerOrder,\r\n [IOInlineSmartnessItemNames.FrequencyType]: Frequency,\r\n [IOInlineSmartnessItemNames.SeriesName]: SeriesName,\r\n [IOInlineSmartnessItemNames.IsDisplayed]: false,\r\n },\r\n isValid: true,\r\n });\r\n }\r\n } else if (!generalRecommendationProps && !showGeneralRecommendation) { // Switch from account1 to account2, account1 has general rec but account2 doesn't have general rec.\r\n onChangedField({\r\n itemName: IOInputItemNames.GeneralRecommendationItem,\r\n value: undefined,\r\n isValid: true,\r\n });\r\n }\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [showIOInlineSmartness, generalRecommendationProps, showGeneralRecommendation]);\r\n\r\n return (\r\n
\r\n {isRecurringIO &&\r\n \r\n \r\n }\r\n {isDisplayStaticAccountName && accountsList.length > 0 && accountsList[0].AccountId === insertionOrder[IOInputItemNames.AccountId] &&\r\n \r\n {accountsList[0].DisplayAccountName}\r\n }\r\n {isDisplayAccountSelector &&\r\n \r\n \r\n {showGeneralRecommendation && (\r\n \r\n )}\r\n }\r\n \r\n \r\n {showStartDateRecommendation && (\r\n onStartDateChanged({ value: suggestedStartDate, isSuggested: true })}\r\n suggestedStartDate={suggestedStartDate}\r\n />\r\n )}\r\n \r\n {isRecurringIO &&\r\n \r\n \r\n }\r\n \r\n \r\n onChangedField({\r\n itemName: IOInputItemNames.ThruDate,\r\n value,\r\n isValid: !editableIOFieldsMap[IOInputItemNames.ThruDate] || isValid,\r\n seriesEndOption,\r\n })\r\n }\r\n disabled={!editableIOFieldsMap[IOInputItemNames.ThruDate]}\r\n alwaysShowError={alwaysShowError}\r\n schema={IOFormInputSchema.properties[IOInputItemNames.ThruDate]}\r\n allowEndless={!isManualIO}\r\n allowRecurringIO={isRecurringIO}\r\n seriesEndOption={insertionOrder[IOInputItemNames.SeriesEndOption]}\r\n maxDate={isRecurringIO ? getNFrequencyEndDate(insertionOrder.FromDate, insertionOrder.FrequencyType, 60) : null}\r\n isIOExpired={insertionOrder.InsertionOrderLabel === InsertionOrderLabel.Expired}\r\n />\r\n \r\n \r\n \r\n \r\n {showBackupIO &&\r\n \r\n {insertionOrder[IOInputItemNames.AccountBackupIOConfigModel] && insertionOrder[IOInputItemNames.AccountBackupIOConfigModel].IsEnabled ?\r\n :\r\n }\r\n }\r\n {renderValidationInput({ itemName: IOInputItemNames.AgencyIdOrPo, isOptional: true })}\r\n {!isManualIO && renderValidationInput({ itemName: IOInputItemNames.FriendlyName, isOptional: true })}\r\n {isManualIO && renderValidationInput({ itemName: IOInputItemNames.DealPointId })}\r\n {isManualIO && renderValidationInput({ itemName: IOInputItemNames.RecordCenterId })}\r\n {renderValidationInput({ itemName: IOInputItemNames.Comment, InputComponent: TextArea, isOptional: true })}\r\n
\r\n );\r\n}\r\n\r\nInsertionOrderRow.propTypes = {\r\n originalIO: PropTypes.object,\r\n setInsertionOrder: PropTypes.func.isRequired,\r\n insertionOrder: DefaultIOPropTypes,\r\n fixedFromDate: PropTypes.string,\r\n minEffectiveDate: PropTypes.instanceOf(Date),\r\n alwaysShowError: PropTypes.bool,\r\n customizeCurrencies: PropTypes.node,\r\n isDisplayStaticAccountName: PropTypes.bool,\r\n isManualIO: PropTypes.bool,\r\n editableIOFieldsMap: DefaultEditableIOFieldsMapPropTypes,\r\n accountsList: PropTypes.arrayOf(DefaultAccountPropTypes),\r\n isDisplayAccountSelector: PropTypes.bool,\r\n isWarningSpendCapAmountIncrease: PropTypes.bool.isRequired,\r\n isRecurringIO: PropTypes.bool.isRequired,\r\n existedSeriesNames: DefaultExistedSeriesNames,\r\n isShowBackupIO: PropTypes.bool,\r\n isBackupIOChanged: PropTypes.bool,\r\n setIsBackupIOChanged: PropTypes.func,\r\n isAgencyLinking: PropTypes.bool,\r\n showIOInlineSmartness: PropTypes.bool,\r\n suggestedStartDate: PropTypes.instanceOf(Date),\r\n generalRecommendationProps: PropTypes.shape({}),\r\n hideSpecificRecommendation: PropTypes.bool,\r\n};\r\n\r\nInsertionOrderRow.defaultProps = {\r\n originalIO: null,\r\n insertionOrder: DefaultIO,\r\n minEffectiveDate: new Date(),\r\n customizeCurrencies: null,\r\n alwaysShowError: false,\r\n fixedFromDate: null,\r\n isDisplayStaticAccountName: false,\r\n isManualIO: false,\r\n isDisplayAccountSelector: false,\r\n editableIOFieldsMap: DefaultEditableIOFieldsMap,\r\n accountsList: [],\r\n existedSeriesNames: [],\r\n isShowBackupIO: false,\r\n isBackupIOChanged: false,\r\n setIsBackupIOChanged: null,\r\n isAgencyLinking: false,\r\n showIOInlineSmartness: false,\r\n suggestedStartDate: null,\r\n generalRecommendationProps: null,\r\n hideSpecificRecommendation: false,\r\n};\r\n","import PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport { Constants } from '@bingads-webui-clientcenter/entity-utils';\r\n\r\nconst { InsertionOrderStatus, IOCreationSource, IOInputItemNames } = Constants;\r\n\r\n// Default value\r\nexport const DefaultIO = {\r\n AccountId: null,\r\n SpendCapAmount: null,\r\n FromDate: '',\r\n ThruDate: '',\r\n AgencyIdOrPo: '',\r\n FriendlyName: '',\r\n DealPointId: '',\r\n RecordCenterId: '',\r\n Comment: '',\r\n IsInSeries: false,\r\n};\r\n\r\nexport const DefaultValidationFields = {\r\n AccountId: false,\r\n SpendCapAmount: false,\r\n FromDate: false,\r\n ThruDate: false,\r\n FriendlyName: false,\r\n AgencyIdOrPo: false,\r\n DealPointId: false,\r\n RecordCenterId: false,\r\n Comment: false,\r\n};\r\n\r\nexport const DefaultEditableIOFieldsMap = {\r\n AccountId: true,\r\n FriendlyName: true,\r\n FromDate: true,\r\n ThruDate: true,\r\n SpendCapAmount: true,\r\n AgencyIdOrPo: true,\r\n DealPointId: true,\r\n RecordCenterId: true,\r\n Comment: true,\r\n Name: true,\r\n FrequencyType: true,\r\n};\r\n\r\nexport const DefaultIoFormData = {\r\n DefaultIO,\r\n DefaultValidationFields,\r\n DefaultEditableIOFieldsMap,\r\n};\r\n\r\nexport const DefaultIOPropTypes = PropTypes.shape({\r\n AccountId: PropTypes.number,\r\n IOCreationSource: PropTypes.oneOf(_.values(IOCreationSource)),\r\n Status: PropTypes.oneOf(_.values(InsertionOrderStatus)),\r\n FriendlyName: PropTypes.string,\r\n FromDate: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.string]),\r\n ThruDate: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.string]),\r\n SpendCapAmount: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.number,\r\n ]),\r\n AgencyIdOrPo: PropTypes.string,\r\n DealPointId: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.number,\r\n ]),\r\n RecordCenterId: PropTypes.string,\r\n Comment: PropTypes.string,\r\n IsInSeries: PropTypes.bool,\r\n});\r\n\r\nexport const DefaultEditableIOFieldsMapPropTypes = PropTypes.shape({\r\n AccountId: PropTypes.bool,\r\n FriendlyName: PropTypes.bool,\r\n FromDate: PropTypes.bool,\r\n ThruDate: PropTypes.bool,\r\n SpendCapAmount: PropTypes.bool,\r\n AgencyIdOrPo: PropTypes.bool,\r\n DealPointId: PropTypes.bool,\r\n RecordCenterId: PropTypes.bool,\r\n Comment: PropTypes.bool,\r\n});\r\n\r\nexport const DefaultAccountPropTypes = PropTypes.shape({\r\n DisplayAccountName: PropTypes.string,\r\n AccountId: PropTypes.number,\r\n});\r\n\r\nexport const DefaultExistedSeriesNames = PropTypes.arrayOf(PropTypes.shape(\r\n PropTypes.string.isRequired,\r\n PropTypes.arrayOf(PropTypes.string).isRequired\r\n));\r\n\r\nexport const PermissionsPropTypes = PropTypes.shape({});\r\n\r\nexport const DefaultPropTypes = {\r\n DefaultIOPropTypes,\r\n DefaultEditableIOFieldsMapPropTypes,\r\n DefaultAccountPropTypes,\r\n};\r\n\r\nexport const IOInputItemClassNames = {\r\n ...IOInputItemNames,\r\n AccountName: 'accountName',\r\n AccountId: 'accountId',\r\n SpendCapAmount: 'budget',\r\n FromDate: 'startDate',\r\n ThruDate: 'endDate',\r\n FriendlyName: 'orderName',\r\n AgencyIdOrPo: 'purchaseOrder',\r\n Comment: 'notes',\r\n Currency: 'currency',\r\n DealPointId: 'dealPointId',\r\n RecordCenterId: 'recordCenterId',\r\n};\r\n\r\nexport const BaseIOFormClassNames = {\r\n IOInputItemClassNames,\r\n};\r\n\r\nexport const ActionTypes = {\r\n CLEAR: 'clear',\r\n UPDATE: 'update',\r\n UPDATEALL: 'updateAll',\r\n REMOVE: 'remove',\r\n REMOVEALL: 'removeAll',\r\n ADD: 'add',\r\n};\r\n","/* eslint-disable react-hooks/exhaustive-deps */\r\nimport React, { useState, useMemo, useEffect } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport { Dropdown } from '@bingads-webui-cc-react/layout';\r\nimport { Constants } from '@bingads-webui-clientcenter/entity-utils';\r\nimport { DefaultAccountPropTypes } from '../constants';\r\n\r\nconst { IOInputItemNames } = Constants;\r\n\r\nconst getCurrentAccount = ({ defaultAccountId, accountsList }) => {\r\n let account;\r\n if (defaultAccountId && accountsList) {\r\n account = _.findWhere(accountsList, { AccountId: defaultAccountId });\r\n }\r\n return account || _.first(accountsList) || {};\r\n};\r\n\r\nexport function IOAccountIdSelector({\r\n i18n,\r\n defaultAccountId,\r\n accountsList,\r\n onChange,\r\n disabled,\r\n}) {\r\n const [currentAccount, setCurrentAccount] = useState(getCurrentAccount({ defaultAccountId, accountsList }));\r\n const accountMap = useMemo(() => accountsList && _.map(accountsList, account => ({\r\n id: account.AccountId,\r\n value: account.DisplayAccountName,\r\n isAutoApproval: account.IsAutoApproval,\r\n accountBackupIOConfigModel: account.AccountBackupIOConfigModel,\r\n currencyType: account.CurrencyType,\r\n })), [accountsList]);\r\n\r\n // when 1. initial, 2. setCurrentAccount will also trigger onChange\r\n useEffect(() => {\r\n onChange({\r\n itemName: IOInputItemNames.AccountId,\r\n value: currentAccount.AccountId,\r\n isValid: true,\r\n currentAccount,\r\n });\r\n }, [accountMap, currentAccount]);\r\n\r\n return (\r\n
\r\n setCurrentAccount({\r\n AccountId: selectedItem.id,\r\n DisplayAccountName: selectedItem.value,\r\n IsAutoApproval: selectedItem.isAutoApproval,\r\n AccountBackupIOConfigModel: selectedItem.accountBackupIOConfigModel,\r\n CurrencyType: selectedItem.currencyType,\r\n })}\r\n disabled={disabled}\r\n renderItem={element => element && element.value}\r\n />\r\n {currentAccount.IsAutoApproval &&\r\n
\r\n \r\n
}\r\n
);\r\n}\r\n\r\nIOAccountIdSelector.propTypes = {\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func.isRequired,\r\n parseDecimal: PropTypes.func.isRequired,\r\n }).isRequired,\r\n defaultAccountId: PropTypes.number,\r\n onChange: PropTypes.func.isRequired,\r\n accountsList: PropTypes.arrayOf(DefaultAccountPropTypes),\r\n disabled: PropTypes.bool,\r\n};\r\n\r\nIOAccountIdSelector.defaultProps = {\r\n disabled: false,\r\n defaultAccountId: null,\r\n accountsList: [],\r\n};\r\n","import _ from 'underscore';\r\nimport { InsertionOrderUtils, Constants } from '@bingads-webui-clientcenter/entity-utils';\r\nimport { DateUtils } from '@bingads-webui-clientcenter/common-utils';\r\n\r\nconst { isIOValid, isEndlessIOEndDate, isUnlimitedIOBudget } = InsertionOrderUtils;\r\nconst {\r\n RIOThruDateOptions, IOInputItemNames,\r\n} = Constants;\r\nconst { getNFrequencyEndDate } = DateUtils;\r\n\r\nexport const isRIOFormSubmitAllowed = ({ recurringInsertionOrder, defaultRio, isSingleAccount }) => {\r\n const isOccurences = recurringInsertionOrder.SeriesEndOption === RIOThruDateOptions.EndByOccurrences;\r\n const isThruDateNeedValidation = !isOccurences &&\r\n !(_.isDate(defaultRio.ThruDate) &&\r\n _.isDate(recurringInsertionOrder.ThruDate) &&\r\n _.isEqual(recurringInsertionOrder.ThruDate.toDateString(), defaultRio.ThruDate.toDateString()));\r\n\r\n return isIOValid({\r\n ioValidationFields: recurringInsertionOrder.ioValidationFields,\r\n isIOItemNeedValidation: {\r\n AccountId: !isSingleAccount,\r\n FriendlyName: true,\r\n FromDate: true,\r\n ThruDate: isThruDateNeedValidation,\r\n SpendCapAmount: true,\r\n AgencyIdOrPo: true,\r\n Comment: true,\r\n Name: true,\r\n FrequencyType: true,\r\n SeriesEndOption: true,\r\n RepeatCount: isOccurences,\r\n },\r\n });\r\n};\r\n\r\nexport const getMinDateForEndDate = ({ insertionOrder, isRecurringIO, minEffectiveDate }) => {\r\n if (isRecurringIO) {\r\n return getNFrequencyEndDate(insertionOrder.FromDate, insertionOrder.FrequencyType, 1);\r\n }\r\n return _.isDate(insertionOrder.FromDate) && insertionOrder.FromDate > minEffectiveDate ? insertionOrder.FromDate : minEffectiveDate;\r\n};\r\n\r\nexport const getIsShowBackupIOParam = insertionOrder => ({\r\n showBackupExtendDays: !isEndlessIOEndDate(insertionOrder[IOInputItemNames.ThruDate]),\r\n showBackupSpendCapAmount: !isUnlimitedIOBudget(insertionOrder[IOInputItemNames.SpendCapAmount]) || !isEndlessIOEndDate(insertionOrder[IOInputItemNames.ThruDate]),\r\n});\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport { LineByLineFormGroup } from '@bingads-webui-cc-react/layout';\r\nimport { Constants } from '@bingads-webui-clientcenter/entity-utils';\r\nimport { BaseIOFormClassNames } from '../constants';\r\n\r\nconst { IOInputItemNames } = Constants;\r\nconst { IOInputItemClassNames } = BaseIOFormClassNames;\r\n\r\nconst titleNameMap = {\r\n [IOInputItemNames.FromDate]: _TL_('Start date'),\r\n [IOInputItemNames.ThruDate]: _TL_('End date'),\r\n [IOInputItemNames.SpendCapAmount]: _TL_('Budget'),\r\n [IOInputItemNames.AgencyIdOrPo]: _TL_('Purchase order'),\r\n [IOInputItemNames.FriendlyName]: _TL_('Order name'),\r\n [IOInputItemNames.Comment]: _TL_('Notes'),\r\n [IOInputItemNames.DealPointId]: _TL_('DealPoint ID'),\r\n [IOInputItemNames.RecordCenterId]: _TL_('Record ID'),\r\n [IOInputItemNames.AccountName]: _TL_('Account'),\r\n [IOInputItemNames.AccountId]: _TL_('Account'),\r\n [IOInputItemNames.Name]: _TL_('Series name'),\r\n [IOInputItemNames.FrequencyType]: _TL_('Frequency'),\r\n [IOInputItemNames.SeriesStartDate]: _TL_('Series start date'),\r\n [IOInputItemNames.SeriesEndDate]: _TL_('Series end date'),\r\n [IOInputItemNames.BudgetPerOrder]: _TL_('Budget per order'),\r\n [IOInputItemNames.BackupIO]: _TL_('Backup insertion order (IO)'),\r\n};\r\n\r\nconst helpPopupMap = {\r\n [IOInputItemNames.FromDate]: 'pop_BA_Account_IO_StartDate',\r\n [IOInputItemNames.ThruDate]: 'pop_BA_Accounts_IO_EndDate',\r\n [IOInputItemNames.SpendCapAmount]: 'pop_BA_Accounts_IO_Budget',\r\n [IOInputItemNames.AgencyIdOrPo]: 'pop_BA_Accounts_IO_PO',\r\n [IOInputItemNames.FriendlyName]: 'pop_BA_Accounts_IO_OrderName',\r\n [IOInputItemNames.Name]: 'Page_Accounts_IO_SeriesName',\r\n [IOInputItemNames.FrequencyType]: 'Page_Accounts_IO_Frequency',\r\n [IOInputItemClassNames.BackupIO]: 'pop_BA_Accounts_IO_Backup',\r\n};\r\n\r\nexport const ClassNameWrapper = ({\r\n itemName,\r\n i18n,\r\n isOptional = false,\r\n currencies = null,\r\n hideHelpPopup = false,\r\n children,\r\n}) => (\r\n
\r\n \r\n {children}\r\n \r\n
);\r\n\r\nClassNameWrapper.propTypes = {\r\n itemName: PropTypes.string.isRequired,\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func,\r\n }),\r\n children: PropTypes.node,\r\n currencies: PropTypes.node,\r\n hideHelpPopup: PropTypes.bool,\r\n isOptional: PropTypes.bool,\r\n};\r\n\r\nClassNameWrapper.defaultProps = {\r\n i18n: {\r\n getString: _.noop,\r\n },\r\n hideHelpPopup: false,\r\n isOptional: false,\r\n currencies: null,\r\n children: null,\r\n};\r\n","import React, { useCallback, useMemo, useState } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport { ValidatedInput } from '@bingads-webui-react/validation-controls';\r\nimport { Constants } from '@bingads-webui-clientcenter/entity-utils';\r\n\r\nimport { DefaultExistedSeriesNames } from '../constants';\r\nimport { useI18n } from '../use-i18n';\r\n\r\nconst { IOFormInputSchema, IOInputItemNames } = Constants;\r\n\r\nexport function RIOSeriesNameInput({\r\n onChange,\r\n disabled,\r\n seriesName,\r\n alwaysShowError,\r\n accountId,\r\n existedSeriesNames,\r\n}) {\r\n const { i18n, legacyI18n } = useI18n();\r\n const [originalSeriesName] = useState(seriesName);\r\n const currentSeriesNames = useMemo(() => {\r\n const currentAccountIdSeriesName = _.find(existedSeriesNames, accountIdNamesMap => _.isArray(accountIdNamesMap[accountId]));\r\n const allSeriesNamesForCurrentAccount = currentAccountIdSeriesName ? currentAccountIdSeriesName[accountId] : [];\r\n\r\n // If in edit mode, exclude the current series name in check list\r\n return _.without(allSeriesNamesForCurrentAccount, originalSeriesName);\r\n }, [accountId, existedSeriesNames, originalSeriesName]);\r\n const getIsDupSeriesName = useCallback(\r\n name => _.some(currentSeriesNames, checkName => _.isString(checkName) && _.isString(name) && checkName.toLowerCase() === name.toLowerCase()),\r\n [currentSeriesNames]\r\n );\r\n const isDupSeriesName = useMemo(() => getIsDupSeriesName(seriesName), [getIsDupSeriesName, seriesName]);\r\n\r\n return (\r\n {\r\n onChange({\r\n itemName: IOInputItemNames.Name,\r\n value,\r\n isValid: isValid && !getIsDupSeriesName(value),\r\n });\r\n },\r\n field: IOInputItemNames.Name,\r\n data: { [IOInputItemNames.Name]: seriesName },\r\n schema: IOFormInputSchema,\r\n alwaysShowError,\r\n i18n: legacyI18n,\r\n passiveMessages: !disabled && isDupSeriesName ? [i18n.getString(_TL_('It is already used. Enter a new one.'))] : [],\r\n }}\r\n />);\r\n}\r\n\r\nRIOSeriesNameInput.propTypes = {\r\n seriesName: PropTypes.string,\r\n onChange: PropTypes.func.isRequired,\r\n disabled: PropTypes.bool,\r\n alwaysShowError: PropTypes.bool.isRequired,\r\n existedSeriesNames: DefaultExistedSeriesNames,\r\n accountId: PropTypes.number,\r\n};\r\n\r\nRIOSeriesNameInput.defaultProps = {\r\n disabled: false,\r\n seriesName: null,\r\n existedSeriesNames: [],\r\n accountId: null,\r\n};\r\n","import { useContext, useMemo } from 'react';\r\nimport validationLegacyStrings from '@bingads-webui-clientcenter/validation-legacy-strings';\r\nimport { buildLegacyI18n } from '@bingads-webui/build-legacy-i18n';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\n\r\nexport const useI18n = () => {\r\n const i18n = useContext(I18nContext);\r\n const legacyI18n = useMemo(() => buildLegacyI18n(i18n, [validationLegacyStrings]), [i18n]);\r\n\r\n return { i18n, legacyI18n };\r\n};\r\n","/* eslint-disable react-hooks/exhaustive-deps */\r\nimport React, { useMemo, useEffect } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport { Dropdown } from '@bingads-webui-cc-react/layout';\r\nimport { Constants as CommonConstants } from '@bingads-webui-clientcenter/common-utils';\r\nimport { Constants as EntityConstants } from '@bingads-webui-clientcenter/entity-utils';\r\n\r\nconst { IOInputItemNames } = EntityConstants;\r\n\r\nconst { FrequencyMonthCountMap, FrequencyMonthI18nKeyMap } = CommonConstants;\r\nconst frequencyEnum = _.keys(FrequencyMonthCountMap);\r\nconst monthlyFrequency = _.invert(FrequencyMonthCountMap)[FrequencyMonthCountMap.Monthly];\r\n\r\nexport function RIOFrequencySelector({\r\n i18n,\r\n frequency,\r\n onChange,\r\n disabled,\r\n}) {\r\n const dropdownItems = useMemo(() => _.map(frequencyEnum, freq => ({\r\n id: freq,\r\n value: i18n.getString(FrequencyMonthI18nKeyMap[freq]),\r\n })), [i18n]);\r\n\r\n const currentFrequency = useMemo(() => ({ id: frequency || monthlyFrequency }), [frequency]);\r\n\r\n // For filling the validation field\r\n useEffect(() => {\r\n onChange({\r\n itemName: IOInputItemNames.FrequencyType,\r\n value: currentFrequency.id,\r\n isValid: true,\r\n });\r\n }, []);\r\n\r\n return (\r\n
\r\n {\r\n onChange({\r\n itemName: IOInputItemNames.FrequencyType,\r\n value: item.id,\r\n isValid: true,\r\n });\r\n }}\r\n disabled={disabled}\r\n renderItem={element => element && element.value}\r\n />\r\n
);\r\n}\r\n\r\nRIOFrequencySelector.propTypes = {\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func.isRequired,\r\n }).isRequired,\r\n frequency: PropTypes.string,\r\n onChange: PropTypes.func.isRequired,\r\n disabled: PropTypes.bool,\r\n};\r\n\r\nRIOFrequencySelector.defaultProps = {\r\n disabled: false,\r\n frequency: null,\r\n};\r\n","import { useEffect, useState } from 'react';\r\nimport _ from 'underscore';\r\nimport { Constants } from '@bingads-webui-clientcenter/entity-utils';\r\nimport { isValidDate } from '@bingads-webui-universal/temporal-utitlities';\r\nimport { withoutTime } from '@bingads-webui-universal/primitive-utilities';\r\n\r\nimport { DefaultEditableIOFieldsMap } from '../constants';\r\n\r\nconst { InsertionOrderStatus, IOInputItemNames } = Constants;\r\n\r\nconst isExpiredIO = insertionOrder => _.isObject(insertionOrder) && isValidDate(insertionOrder.ThruDate) &&\r\n insertionOrder.ThruDate < withoutTime(new Date());\r\n\r\nexport function useIOEditableControl({ insertionOrder = {}, isCreateMode, mtIOEditableMap }) {\r\n const isSpendCapAmountEditChanged = insertionOrder.Status === InsertionOrderStatus.Expired;\r\n const [originalThruDate] = useState(insertionOrder.ThruDate);\r\n const [editableIOFieldsMap, setEditableIOFieldsMap] = useState(() => {\r\n if (isCreateMode) {\r\n return DefaultEditableIOFieldsMap;\r\n }\r\n\r\n const isSpendCapAmountEditabled = isSpendCapAmountEditChanged ? { [IOInputItemNames.SpendCapAmount]: !isExpiredIO(insertionOrder) } : {};\r\n\r\n return ({\r\n ...DefaultEditableIOFieldsMap,\r\n ...mtIOEditableMap,\r\n ...isSpendCapAmountEditabled,\r\n });\r\n });\r\n\r\n useEffect(() => {\r\n if (!isCreateMode && originalThruDate !== insertionOrder.ThruDate && isSpendCapAmountEditChanged) {\r\n if (!isExpiredIO(insertionOrder)) {\r\n setEditableIOFieldsMap(preEditableIOFieldsMap => ({\r\n ...preEditableIOFieldsMap,\r\n [IOInputItemNames.SpendCapAmount]: true,\r\n }));\r\n }\r\n }\r\n }, [originalThruDate, insertionOrder.ThruDate, isCreateMode, insertionOrder, isSpendCapAmountEditChanged]);\r\n\r\n return editableIOFieldsMap;\r\n}\r\n","import React, { useState } from 'react';\r\nimport _ from 'underscore';\r\nimport PropTypes from 'prop-types';\r\nimport { Panel, PrimaryButton, DefaultButton } from '@bingads-webui-react/fabric-control';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { IOTermsAndConditionsDescription } from '@bingads-webui-cc-react/io-controls';\r\nimport { InsertionOrderUtils } from '@bingads-webui-clientcenter/entity-utils';\r\nimport { HelpLink } from '@bingads-webui-react/help-link';\r\nimport { InlineInfoAlert } from '@bingads-webui-cc-react/alert';\r\n\r\nimport { BaseIoForm } from './base-io-form/base-io-form';\r\nimport { useIOEditableControl } from './utils/use-io-editable-control';\r\nimport { DefaultAccountPropTypes } from './constants';\r\nimport { getSingleIOPanelFormStyles } from './styles';\r\nimport { useI18n } from './use-i18n';\r\n\r\nconst { isIOValid, isEndlessIOEndDate, isUnlimitedIOBudget } = InsertionOrderUtils;\r\n\r\nconst IOForm = ({\r\n defaultIO,\r\n accountsList,\r\n isInternal,\r\n isSingleAccount,\r\n fixedFromDate,\r\n minEffectiveDate,\r\n termsAndConditionsUrl,\r\n ioPanelSettings,\r\n displayCurrency,\r\n setFooterState,\r\n isAgencyLinking,\r\n}) => {\r\n const { i18n } = useI18n();\r\n const { ioPanelIntroText } = ioPanelSettings;\r\n const [insertionOrder, setInsertionOrder] = useState(defaultIO);\r\n const [isEndlessOrUnlimitedIO, setIsEndlessOrUnlimitedIO] = useState(false);\r\n const editableIOFieldsMap = useIOEditableControl({ insertionOrder, isCreateMode: false });\r\n const onChange = ({ newIO }) => {\r\n setInsertionOrder(newIO);\r\n setIsEndlessOrUnlimitedIO(isEndlessIOEndDate(newIO.ThruDate) && isUnlimitedIOBudget(newIO.SpendCapAmount));\r\n setFooterState({\r\n insertionOrder: newIO,\r\n isSubmitDisbaled: !isIOValid({\r\n ioValidationFields: newIO.ioValidationFields,\r\n isIOItemNeedValidation: {\r\n AccountId: !isSingleAccount,\r\n AgencyIdOrPo: true,\r\n Comment: true,\r\n DealPointId: false,\r\n FriendlyName: true,\r\n FromDate: !_.isString(fixedFromDate),\r\n RecordCenterId: false,\r\n SpendCapAmount: true,\r\n ThruDate: true,\r\n },\r\n }),\r\n });\r\n };\r\n\r\n return (\r\n \r\n
\r\n
\r\n {ioPanelIntroText || i18n.getString(_TL_('After you click Save, your changes might need to go through the approval process again, which can take up to 24 hours. The status of your insertion order will be updated after we review the changes.')) }\r\n {i18n.getString(_TL_('Learn more'))}\r\n
\r\n
\r\n \r\n {isEndlessOrUnlimitedIO && {i18n.getString(_TL_('The account will be eligible for spend regardless of other insertion orders with limited budget and end dates. To moderate your spend, please create an insertion order with a specific budget and end date.'))}}\r\n { _.isString(termsAndConditionsUrl) &&\r\n \r\n }\r\n
\r\n );\r\n};\r\n\r\nIOForm.propTypes = {\r\n defaultIO: PropTypes.shape({\r\n recommendationId: PropTypes.number,\r\n }),\r\n accountsList: PropTypes.arrayOf(DefaultAccountPropTypes).isRequired,\r\n isInternal: PropTypes.bool.isRequired,\r\n isSingleAccount: PropTypes.bool.isRequired,\r\n fixedFromDate: PropTypes.string,\r\n minEffectiveDate: PropTypes.instanceOf(Date),\r\n termsAndConditionsUrl: PropTypes.string,\r\n ioPanelSettings: PropTypes.shape({\r\n ioPanelIntroText: PropTypes.node,\r\n ioPanelHeaderText: PropTypes.string,\r\n }),\r\n displayCurrency: PropTypes.string,\r\n setFooterState: PropTypes.func.isRequired,\r\n isAgencyLinking: PropTypes.bool,\r\n};\r\n\r\nIOForm.defaultProps = {\r\n defaultIO: {},\r\n fixedFromDate: null,\r\n minEffectiveDate: null,\r\n termsAndConditionsUrl: null,\r\n displayCurrency: '',\r\n ioPanelSettings: {},\r\n isAgencyLinking: false,\r\n};\r\n\r\nexport const SingleIOPanelForm = (props) => {\r\n const {\r\n submitButtonCallback,\r\n cancelButtonCallback,\r\n isOpen,\r\n ioPanelSettings,\r\n } = props;\r\n const { ioPanelHeaderText } = ioPanelSettings;\r\n const [footerState, setFooterState] = useState({});\r\n const { i18n } = useI18n();\r\n\r\n const onRenderFooterContent = () => {\r\n const { insertionOrder, isSubmitDisbaled = true } = footerState;\r\n return (\r\n
\r\n
\r\n submitButtonCallback(insertionOrder)} disabled={isSubmitDisbaled}>\r\n {i18n.getString(_TL_('Save'))}\r\n \r\n cancelButtonCallback()}>{i18n.getString(_TL_('Cancel'))}\r\n
\r\n
\r\n );\r\n };\r\n const classes = useDefaultStyles(getSingleIOPanelFormStyles);\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nSingleIOPanelForm.propTypes = {\r\n submitButtonCallback: PropTypes.func.isRequired,\r\n cancelButtonCallback: PropTypes.func.isRequired,\r\n isOpen: PropTypes.bool,\r\n defaultIO: PropTypes.shape({\r\n recommendationId: PropTypes.number,\r\n }),\r\n accountsList: PropTypes.arrayOf(DefaultAccountPropTypes),\r\n isInternal: PropTypes.bool,\r\n isSingleAccount: PropTypes.bool,\r\n fixedFromDate: PropTypes.string,\r\n minEffectiveDate: PropTypes.instanceOf(Date),\r\n termsAndConditionsUrl: PropTypes.string,\r\n ioPanelSettings: PropTypes.shape({\r\n ioPanelIntroText: PropTypes.node,\r\n ioPanelHeaderText: PropTypes.string,\r\n }),\r\n displayCurrency: PropTypes.string,\r\n};\r\n\r\nSingleIOPanelForm.defaultProps = {\r\n isOpen: false,\r\n defaultIO: {},\r\n accountsList: [],\r\n isInternal: false,\r\n isSingleAccount: false,\r\n fixedFromDate: null,\r\n minEffectiveDate: null,\r\n ioPanelSettings: {},\r\n termsAndConditionsUrl: null,\r\n displayCurrency: '',\r\n};\r\n","/* istanbul ignore file */\r\n\r\nimport _ from 'underscore';\r\n\r\nconst errorColor = '#A80000';\r\n\r\nconst getIoFormDateStyle = () => ({\r\n '& .single-date-picker': {\r\n height: 32,\r\n '& .date-input-with-icon .iconba-Calendar': {\r\n marginTop: 4,\r\n },\r\n },\r\n});\r\n\r\nexport const getIOFormStyles = ({ palette }) => ({\r\n marginTop: 10,\r\n whiteSpace: 'nowrap',\r\n\r\n '& input[type=\"text\"]': {\r\n width: '100%',\r\n },\r\n '& .entity-column': {\r\n marginRight: 10,\r\n display: 'inline-block',\r\n verticalAlign: 'top',\r\n },\r\n '& .bulk-create-row': {\r\n marginBottom: 10,\r\n '& input[type=\"text\"], .kendo-date-picker': {\r\n width: '100% !important',\r\n height: 32,\r\n },\r\n\r\n '& .form-group': {\r\n marginBottom: 0,\r\n '& .col-xs-12': {\r\n maxHeight: 45,\r\n },\r\n\r\n '& .col-xs-6': {\r\n width: '100%',\r\n },\r\n },\r\n\r\n '& .remove': {\r\n '& .remove-all': {\r\n height: 30,\r\n },\r\n '& .remove-single': {\r\n height: 20,\r\n },\r\n },\r\n },\r\n '& .startDate, & .endDate, & .budget': {\r\n width: 120,\r\n ...getIoFormDateStyle(),\r\n },\r\n '& .currency': {\r\n width: 35,\r\n },\r\n '& .currency, & .clear': {\r\n lineHeight: '32px',\r\n verticalAlign: 'bottom',\r\n },\r\n '& .purchaseOrder, & .orderName': {\r\n width: 150,\r\n },\r\n '& .notes': {\r\n width: 200,\r\n },\r\n '& .clear button': {\r\n border: 'none',\r\n background: 'none',\r\n color: _.result(palette, 'themePrimary'),\r\n },\r\n '& div[role=alert] .error': {\r\n color: errorColor,\r\n },\r\n});\r\n\r\nexport const getSingleIOFormStyles = () => ({\r\n '& .panel-body': {\r\n marginBottom: 0,\r\n '& .form-group': {\r\n 'margin-left': 0,\r\n\r\n '& .h5': {\r\n fontSize: 14,\r\n fontWeight: 100,\r\n lineHeight: 1.5,\r\n },\r\n },\r\n '& .io-form': {\r\n '& .form-group': {\r\n marginBottom: 0,\r\n\r\n '& .col-xs-6': {\r\n width: '100%',\r\n paddingLeft: 0,\r\n },\r\n\r\n '& .col-xs-12': {\r\n height: 32,\r\n },\r\n },\r\n\r\n '& .remove': {\r\n '& .remove-all': {\r\n height: 30,\r\n },\r\n '& .remove-single': {\r\n height: 20,\r\n },\r\n '& .only-one-remove': {\r\n marginTop: 30,\r\n },\r\n },\r\n },\r\n\r\n ...getIoFormDateStyle(),\r\n\r\n '& .io-form-dropdown-selector': {\r\n '& button': {\r\n textOverflow: 'ellipsis',\r\n textAlign: 'right',\r\n },\r\n\r\n '& .react-dropdown-menu': {\r\n width: 'auto !important',\r\n },\r\n },\r\n },\r\n\r\n '& .io-form-vertical': {\r\n '& input[type=\"text\"]': {\r\n width: '100%',\r\n },\r\n\r\n ...getIoFormDateStyle(),\r\n '& .entity-column': {\r\n marginRight: 10,\r\n width: '100% !important',\r\n height: 'fit-content',\r\n maxHeight: 500,\r\n marginBottom: 20,\r\n lineHeight: '32px',\r\n\r\n '& .item-label.control-label': {\r\n textAlign: 'left',\r\n },\r\n },\r\n\r\n '& .bulk-create-row': {\r\n marginBottom: 10,\r\n\r\n '& input[type=\"text\"]': {\r\n width: '100% !important',\r\n height: 32,\r\n },\r\n\r\n '& .currency, .accountName span': {\r\n lineHeight: '32px',\r\n },\r\n\r\n '& .budget .notification-inline': {\r\n float: 'right',\r\n },\r\n\r\n '& .notes .form-input-container': {\r\n height: 120,\r\n '& textarea': {\r\n display: 'initial',\r\n height: 150,\r\n },\r\n },\r\n\r\n '& .unlimited-budget-input, & .endless-date-picker': {\r\n marginLeft: 10,\r\n },\r\n },\r\n\r\n '& .currency': {\r\n height: 10,\r\n marginTop: -23,\r\n marginBottom: 30,\r\n },\r\n\r\n '& div[role=alert] .error': {\r\n color: errorColor,\r\n lineHeight: '16px',\r\n },\r\n },\r\n\r\n '& .panel-input': {\r\n 'margin-bottom': 15,\r\n\r\n '& input': {\r\n marginTop: 10,\r\n },\r\n\r\n '& .endless-unlimited-warning': {\r\n marginTop: 5,\r\n },\r\n },\r\n});\r\n\r\nexport const getSingleIOPanelFormStyles = () => ({\r\n '@global': {\r\n '#fluent-default-layer-host': {\r\n position: 'static !important',\r\n zIndex: 'auto !important',\r\n },\r\n },\r\n IOLayer: {\r\n zIndex: '1000 !important',\r\n },\r\n\r\n IOPanel: {\r\n ...getSingleIOFormStyles(),\r\n '& .ms-Panel-main': {\r\n width: 900,\r\n marginTop: 60,\r\n overflowY: 'hidden',\r\n '& .io-form-vertical': {\r\n '& .bulk-create-row-lines': {\r\n width: 420,\r\n '& .bulk-create-row': {\r\n marginLeft: 0,\r\n '& .io-form-dropdown-selector .dropdown': {\r\n width: '100%',\r\n '& button': {\r\n width: '100%',\r\n textAlign: 'left',\r\n textOverflow: 'ellipsis',\r\n whiteSpace: 'nowrap',\r\n overflow: 'hidden',\r\n '& .caret': {\r\n width: '5%',\r\n position: 'absolute',\r\n left: '94%',\r\n },\r\n },\r\n '& .react-dropdown-menu': {\r\n width: '100%',\r\n minWidth: 'fit-content',\r\n },\r\n },\r\n\r\n '& .entity-column.notes': {\r\n minHeight: 180,\r\n },\r\n\r\n '& .entity-column': {\r\n '& .col-xs-6, .col-xs-3': {\r\n width: '100%',\r\n },\r\n },\r\n },\r\n },\r\n },\r\n\r\n '& .terms-and-conditions': {\r\n marginTop: 10,\r\n marginBottom: 10,\r\n fontWeight: 'normal',\r\n fontSize: 14,\r\n lineHeight: '20px',\r\n },\r\n\r\n '& .ms-Panel-footer': {\r\n borderTop: '1px solid #EDEBE9',\r\n '& .panel-buttons': {\r\n marginTop: 10,\r\n\r\n '& button': {\r\n marginRight: 10,\r\n },\r\n },\r\n },\r\n\r\n '& .intro-text': {\r\n fontWeight: 'normal',\r\n fontSize: 14,\r\n lineHeight: '20px',\r\n '& .HelpTopic': {\r\n marginLeft: 3,\r\n },\r\n },\r\n },\r\n },\r\n});\r\n\r\nexport const getRIOFormStyles = () => ({\r\n RIOForm: {\r\n ...getSingleIOFormStyles(),\r\n '& .io-form-vertical .bulk-create-row': {\r\n marginLeft: 0,\r\n },\r\n '& .entity-column': {\r\n '& .io-form-dropdown-selector .dropdown': {\r\n width: '100%',\r\n '& button': {\r\n width: '100%',\r\n textAlign: 'left',\r\n textOverflow: 'ellipsis',\r\n whiteSpace: 'nowrap',\r\n overflow: 'hidden',\r\n paddingLeft: 5,\r\n '& .caret': {\r\n width: '5%',\r\n position: 'absolute',\r\n left: '94%',\r\n },\r\n },\r\n '& .react-dropdown-menu': {\r\n width: '100% !important',\r\n minWidth: 'fit-content',\r\n },\r\n },\r\n },\r\n '& .terms-and-conditions': {\r\n marginTop: 10,\r\n marginBottom: 10,\r\n fontWeight: 'normal',\r\n fontSize: 14,\r\n lineHeight: '20px',\r\n },\r\n '& .io-inline-smart-rec-container': {\r\n marginTop: 8,\r\n },\r\n },\r\n});\r\n","import React, { useRef, useState, useMemo, useEffect, useContext } from 'react';\r\nimport _ from 'underscore';\r\nimport PropTypes from 'prop-types';\r\nimport { HelpLink } from '@bingads-webui-react/help-link';\r\nimport { IOTermsAndConditionsDescription, useSuggestedStartDate, useGeneralRecommendation } from '@bingads-webui-cc-react/io-controls';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { CcJsDataContextProvider, CcJsDataContext } from '@bingads-webui-cc-react/js-data-rest';\r\n\r\nimport { BaseIoForm } from './base-io-form/base-io-form';\r\nimport { DefaultIO as emptyIO, DefaultIOPropTypes, DefaultEditableIOFieldsMap, DefaultAccountPropTypes, PermissionsPropTypes, DefaultExistedSeriesNames } from './constants';\r\nimport { getRIOFormStyles } from './styles';\r\nimport { isRIOFormSubmitAllowed } from './base-io-form/helper';\r\nimport { useI18n } from './use-i18n';\r\n\r\nfunction RecurringIOFormBase({\r\n defaultRio,\r\n isCreateMode,\r\n cancelButtonCallback,\r\n submitButtonCallback,\r\n accountsList,\r\n isRIORecommendationMode,\r\n termsAndConditionsUrl,\r\n isInternal,\r\n permissions,\r\n isSingleAccount,\r\n singleAccountId,\r\n existedSeriesNames,\r\n showIOInlineSmartness,\r\n}) {\r\n const rioFormRef = useRef();\r\n const { i18n } = useI18n();\r\n const getInitiatedRio = () => ({ ...defaultRio, AccountId: showIOInlineSmartness && isSingleAccount ? singleAccountId : defaultRio.AccountId });\r\n const [recurringInsertionOrder, setRecurringInsertionOrder] = useState(getInitiatedRio);\r\n const classes = useDefaultStyles(getRIOFormStyles);\r\n const { suggestedStartDate } = useSuggestedStartDate({ i18n, aid: recurringInsertionOrder.AccountId, showIOInlineSmartness });\r\n const { generalRecommendationProps: generalRecommendationPropsFromRec } = useGeneralRecommendation({\r\n i18n, aid: recurringInsertionOrder.AccountId, isRecurringIO: true, isSingleAccount, showIOInlineSmartness,\r\n });\r\n const generalRecommendationProps = useMemo(\r\n () => ((_.get(generalRecommendationPropsFromRec, 'RecommendationId') > 0 && recurringInsertionOrder.RecommendationId === generalRecommendationPropsFromRec.RecommendationId)\r\n ? { RecommendationId: null } : generalRecommendationPropsFromRec),\r\n [generalRecommendationPropsFromRec, recurringInsertionOrder.RecommendationId]\r\n );\r\n const hideSpecificRecommendation = useMemo(\r\n () => (recurringInsertionOrder.RecommendationId > 0 || (!isSingleAccount && _.get(generalRecommendationProps, 'RecommendationId') !== null)),\r\n [generalRecommendationProps, isSingleAccount, recurringInsertionOrder.RecommendationId]\r\n );\r\n useEffect(() => {\r\n if (!isRIORecommendationMode && rioFormRef.current) {\r\n rioFormRef.current.scrollIntoView();\r\n }\r\n }, [isRIORecommendationMode]);\r\n\r\n let submitButtonLabel = i18n.getString(_TL_('Save'));\r\n if (isCreateMode) {\r\n submitButtonLabel = i18n.getString(_TL_('Submit'));\r\n } else if (isRIORecommendationMode) {\r\n submitButtonLabel = i18n.getString(_TL_('Apply'));\r\n }\r\n const isSubmitAllowed = isRIOFormSubmitAllowed({ recurringInsertionOrder, defaultRio, isSingleAccount });\r\n return (\r\n
\r\n { !isRIORecommendationMode &&\r\n
\r\n
\r\n
{isCreateMode ?\r\n i18n.getString(_TL_('Create a recurring insertion order')) :\r\n i18n.getString(_TL_('Edit recurring insertion orders'))}\r\n
\r\n
\r\n
}\r\n
\r\n
\r\n
\r\n {isCreateMode || isRIORecommendationMode ?\r\n i18n.getString(_TL_('Create insertion order that renews on a set schedule. Orders that requires manual approval will remain pending until approved (including recurrences). All auto-approved orders becomes active on their start dates. Anything entered in purchase order, order name, or notes will be repeated for the entire series. You can always edit these in individual occurrences. ')) :\r\n i18n.getString(_TL_('Insertion orders that require manual approval remain pending until approved (including newly revised orders). Once approved, each order in the series becomes active on its scheduled start date. '))}\r\n {i18n.getString(_TL_('Learn more'))}\r\n
\r\n
\r\n setRecurringInsertionOrder(newIO)}\r\n className=\"io-form-vertical\"\r\n insertionOrder={recurringInsertionOrder}\r\n editableIOFieldsMap={{\r\n ...DefaultEditableIOFieldsMap,\r\n AccountId: isRIORecommendationMode || isCreateMode,\r\n FromDate: isRIORecommendationMode || isCreateMode,\r\n FrequencyType: isRIORecommendationMode || isCreateMode,\r\n }}\r\n accountsList={accountsList}\r\n isDisplayAccountSelector={!isSingleAccount}\r\n isWarningSpendCapAmountIncrease={!isCreateMode}\r\n permissions={permissions}\r\n existedSeriesNames={existedSeriesNames}\r\n isRecurringIO\r\n showIOInlineSmartness={showIOInlineSmartness}\r\n suggestedStartDate={suggestedStartDate}\r\n generalRecommendationProps={generalRecommendationProps}\r\n hideSpecificRecommendation={hideSpecificRecommendation}\r\n />\r\n
\r\n { _.isString(termsAndConditionsUrl) &&\r\n \r\n }\r\n
\r\n submitButtonCallback(recurringInsertionOrder)}\r\n disabled={!isSubmitAllowed}\r\n />\r\n \r\n
\r\n
\r\n );\r\n}\r\n\r\nRecurringIOFormBase.propTypes = {\r\n defaultRio: DefaultIOPropTypes,\r\n isCreateMode: PropTypes.bool,\r\n cancelButtonCallback: PropTypes.func.isRequired,\r\n submitButtonCallback: PropTypes.func,\r\n accountsList: PropTypes.arrayOf(DefaultAccountPropTypes),\r\n isRIORecommendationMode: PropTypes.bool,\r\n termsAndConditionsUrl: PropTypes.string,\r\n isInternal: PropTypes.bool,\r\n permissions: PermissionsPropTypes,\r\n isSingleAccount: PropTypes.bool,\r\n singleAccountId: PropTypes.number,\r\n existedSeriesNames: DefaultExistedSeriesNames,\r\n showIOInlineSmartness: PropTypes.bool,\r\n};\r\n\r\nRecurringIOFormBase.defaultProps = {\r\n defaultRio: emptyIO,\r\n isCreateMode: false,\r\n submitButtonCallback: _.noop,\r\n accountsList: [],\r\n isRIORecommendationMode: false,\r\n termsAndConditionsUrl: null,\r\n isInternal: false,\r\n permissions: {},\r\n isSingleAccount: true,\r\n singleAccountId: undefined,\r\n existedSeriesNames: [],\r\n showIOInlineSmartness: false,\r\n};\r\n\r\nexport const RecurringIOForm = ({ jsData, ...rest }) => {\r\n const jsDataFromContext = useContext(CcJsDataContext);\r\n const initialJsData = jsData || jsDataFromContext;\r\n\r\n if (!initialJsData) {\r\n return ;\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nRecurringIOForm.propTypes = {\r\n jsData: PropTypes.shape({}),\r\n};\r\n\r\nRecurringIOForm.defaultProps = {\r\n jsData: null,\r\n};\r\n","/* eslint-disable react/prop-types */\r\nimport React, { useRef, useState, useEffect } from 'react';\r\nimport _ from 'underscore';\r\nimport PropTypes from 'prop-types';\r\nimport { HelpLink } from '@bingads-webui-react/help-link';\r\nimport { IOTermsAndConditionsDescription } from '@bingads-webui-cc-react/io-controls';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { Panel, PrimaryButton, DefaultButton } from '@bingads-webui-react/fabric-control';\r\n\r\nimport { BaseIoForm } from './base-io-form/base-io-form';\r\nimport { isRIOFormSubmitAllowed } from './base-io-form/helper';\r\nimport { DefaultIO as emptyIO, DefaultIOPropTypes, DefaultAccountPropTypes, DefaultEditableIOFieldsMap, PermissionsPropTypes } from './constants';\r\nimport { getSingleIOPanelFormStyles } from './styles';\r\nimport { useI18n } from './use-i18n';\r\n\r\nexport function RecurringIOPanelForm({\r\n defaultRio,\r\n cancelButtonCallback,\r\n submitButtonCallback,\r\n termsAndConditionsUrl,\r\n isInternal,\r\n permissions,\r\n isOpen,\r\n accountsList,\r\n}) {\r\n const rioFormRef = useRef();\r\n const { i18n } = useI18n();\r\n const classes = useDefaultStyles(getSingleIOPanelFormStyles);\r\n useEffect(() => rioFormRef.current && rioFormRef.current.scrollIntoView(), []);\r\n const [footerState, setFooterState] = useState({});\r\n const submitButtonLabel = i18n.getString(_TL_('Save'));\r\n const onRenderFooterContent = () => {\r\n const { recurringInsertionOrder, isSubmitButtonDisabled } = footerState;\r\n return (\r\n
\r\n
\r\n submitButtonCallback(recurringInsertionOrder)} disabled={isSubmitButtonDisabled} className=\"btn-submit-rio\">\r\n {submitButtonLabel}\r\n \r\n cancelButtonCallback()} className=\"btn-cancel-rio\">{i18n.getString(_TL_('Cancel'))}\r\n
\r\n
\r\n );\r\n };\r\n\r\n return (\r\n
\r\n \r\n
\r\n
\r\n
\r\n {i18n.getString(_TL_('Insertion orders that require manual approval remain pending until approved (including newly revised orders). Once approved, each order in the series becomes active on its scheduled start date. '))}\r\n {i18n.getString(_TL_('Learn more'))}\r\n
\r\n
\r\n
\r\n {\r\n setFooterState({\r\n recurringInsertionOrder: newIO,\r\n isSubmitButtonDisabled: !isRIOFormSubmitAllowed({ recurringInsertionOrder: newIO, defaultRio, isSingleAccount: true }),\r\n });\r\n }}\r\n className=\"io-form-vertical\"\r\n insertionOrder={defaultRio}\r\n editableIOFieldsMap={DefaultEditableIOFieldsMap}\r\n accountsList={accountsList}\r\n permissions={permissions}\r\n isRecurringIO\r\n isDisplayStaticAccountName\r\n />\r\n
\r\n
\r\n { _.isString(termsAndConditionsUrl) &&\r\n \r\n }\r\n \r\n
\r\n );\r\n}\r\n\r\nRecurringIOPanelForm.propTypes = {\r\n defaultRio: DefaultIOPropTypes,\r\n cancelButtonCallback: PropTypes.func.isRequired,\r\n submitButtonCallback: PropTypes.func,\r\n termsAndConditionsUrl: PropTypes.string,\r\n isInternal: PropTypes.bool,\r\n permissions: PermissionsPropTypes,\r\n isOpen: PropTypes.bool,\r\n accountsList: PropTypes.arrayOf(DefaultAccountPropTypes),\r\n};\r\n\r\nRecurringIOPanelForm.defaultProps = {\r\n defaultRio: emptyIO,\r\n submitButtonCallback: _.noop,\r\n termsAndConditionsUrl: null,\r\n isInternal: false,\r\n permissions: {},\r\n isOpen: false,\r\n accountsList: [],\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__19__;","import { legacyStrings as ioFormStrings } from '@bingads-webui-cc-react/io-form';\r\nimport { legacyStrings as ioGridStrings } from './src/legacy-strings';\r\n\r\nexport { RecommendationIOGrid } from './src/recommendation-io-grid';\r\nexport { BulkCreateIOGrid } from './src/bulk-create-io-grid';\r\nexport { SingleCreateIOGrid } from './src/single-create-io-grid';\r\n\r\nexport const legacyStrings = {\r\n ...ioFormStrings,\r\n ...ioGridStrings,\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__688__;","export const legacyStrings = {\r\n '{{itemName}} Selected': _TL_('{{itemName}} Selected'),\r\n Account_AccountNameLabel: _TL_('Account name'),\r\n Account_CurrencyLabel: _TL_('Currency'),\r\n Column_Action_Delete_Text: _TL_('Delete'),\r\n Column_Action_Field_Text: _TL_('Edit'),\r\n ColumnName_Action: _TL_('Action'),\r\n Common_CancelLabel: _TL_('Cancel'),\r\n Common_SaveLabel: _TL_('Save'),\r\n Grid_ShowRows: _TL_('Show rows:'),\r\n InsertionOrder_BulkCreateEIOWithRecommendation_FeedbackLink: _TL_('Provide feedback'),\r\n InsertionOrder_BulkCreateEIOWithRecommendationGird_EmailSummaryAlert: _TL_('This order requires customer review. We’ll alert the customer and send them a summary email once you click {{applyButtonText}}'),\r\n InsertionOrder_CreateUnlimitedEndlessIO_InfoMessage: _TL_('The account will be eligible for spend regardless of other insertion orders with limited budget and end dates. To moderate your spend, please create an insertion order with a specific budget and end date.'),\r\n InsertionOrder_NoEndDate: _TL_('No End Date'),\r\n InsertionOrder_RecurringBudgetPerOrder: _TL_('Budget per order'),\r\n InsertionOrder_RecurringEndAfter: _TL_('End after:'),\r\n InsertionOrder_RecurringEndByDate: _TL_('Have an end date for the series'),\r\n InsertionOrder_RecurringEndDate: _TL_('End date'),\r\n InsertionOrder_RecurringEndOccurrences: _TL_('End occurrences'),\r\n InsertionOrder_RecurringFrequency: _TL_('Frequency'),\r\n InsertionOrder_RecurringFrequencyOptionBIMonthly: _TL_('Every 2 months'),\r\n InsertionOrder_RecurringFrequencyOptionMonthly: _TL_('Monthly'),\r\n InsertionOrder_RecurringFrequencyOptionQuarterly: _TL_('Quarterly'),\r\n InsertionOrder_RecurringFrequencyOptionYearly: _TL_('Yearly'),\r\n InsertionOrder_RecurringInsertionOrder_ValidationFailureMessage: _TL_('The following fields are invalid: {0}, please enter again.'),\r\n InsertionOrder_RecurringNoEndDate: _TL_('No end date'),\r\n InsertionOrder_RecurringNotes: _TL_('Notes'),\r\n InsertionOrder_RecurringOrderName: _TL_('Order name'),\r\n InsertionOrder_RecurringPurchaseOrder: _TL_('Purchase order'),\r\n InsertionOrder_RecurringSeriesName: _TL_('Series name'),\r\n InsertionOrder_RecurringStartDate: _TL_('Start date'),\r\n InsertionOrder_Unlimited: _TL_('Unlimited'),\r\n InsertionOrderForm_CreateNewInsertionOrder: _TL_('Create another insertion order'),\r\n InsertionOrderForm_CreateRecommendationPanelIntroText: _TL_('This IO recommendation will create a new IO to keep your account active. After you click Save your changes might need to go through the approvals process again, which can take up to 24 hours. The status of your insertion order will be updated after we review the changes.'),\r\n InsertionOrderForm_CreateRecommendationType: _TL_('Create IO'),\r\n InsertionOrderForm_InternalBulkCreateElectronicIo_AutoApprovalText: _TL_('Auto-approvals enabled'),\r\n InsertionOrderForm_ProvideInsertionOrderDetails: _TL_('Provide insertion order details'),\r\n InsertionOrderForm_RecommendationTypeLabel: _TL_('Type'),\r\n InsertionOrderForm_SingleCreateInsertionOrder: _TL_('Create an insertion order'),\r\n InsertionOrderForm_SPABulkCreateIntroText: _TL_('Enter information for one or more insertion orders. After you create your insertion orders, you will receive a status email. If the orders are approved, your ads will begin to run on their start dates. '),\r\n InsertionOrderForm_TitleCreateInsertionOrders: _TL_('Create insertion orders'),\r\n InsertionOrderForm_UpdateRecommendationPanelIntroText: _TL_('This IO recommendation will update your current IO to keep your account active. After you click Save your changes might need to go through the approvals process again, which can take up to 24 hours. The status of your insertion order will be updated after we review the changes.'),\r\n InsertionOrderForm_UpdateRecommendationType: _TL_('Update IO'),\r\n InsertionOrderGrid_HeaderComment: _TL_('Notes'),\r\n InsertionOrderGrid_HeaderEndDate: _TL_('End date'),\r\n InsertionOrderGrid_HeaderStartDate: _TL_('Start date'),\r\n Loading: _TL_('Loading...'),\r\n RecommendationIOGrid_Title: _TL_('Select the ones you want and apply.'),\r\n};\r\n","import React, { useState, useMemo, useCallback, useContext } from 'react';\r\nimport _ from 'underscore';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport { BackboneInstanceWrapper } from '@bingads-webui-react/backbone-instance-wrapper';\r\nimport { SingleIOPanelForm, RecurringIOPanelForm } from '@bingads-webui-cc-react/io-form';\r\nimport { IOTermsAndConditionsDescription } from '@bingads-webui-cc-react/io-controls';\r\nimport { Constants } from '@bingads-webui-clientcenter/common-utils';\r\nimport { Constants as entityConstants } from '@bingads-webui-clientcenter/entity-utils';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { InlineInfoAlert } from '@bingads-webui-cc-react/alert';\r\nimport { HelpLink } from '@bingads-webui-react/help-link';\r\nimport { ReactTemplate } from '@bingads-webui-react/react-template';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\n\r\nimport IOGridView from './backbone/io-grid-view';\r\nimport { RecommendationIOLog, seriesEndOptions, SingleIORecommendationType, RecurringIORecommedationType } from './constants';\r\nimport { getRecommendationIOGridStyle } from './styles';\r\n\r\nconst frequencyEnum = _.keys(Constants.FrequencyMonthCountMap);\r\nconst { InsertionOrdersGridFieldNames, RecommendationType } = entityConstants;\r\nconst primaryKey = InsertionOrdersGridFieldNames.RecommendationId;\r\nconst singleIOItems = ['AccountId', 'FromDate', 'ThruDate', 'SpendCapAmount', 'Comment', 'AgencyIdOrPo', 'FriendlyName', 'AccountName'];\r\nconst recurringIOItems = ['RepeatCount', 'SeriesEndOption', 'FrequencyType', 'Name'];\r\n\r\nexport function RecommendationIOGrid({\r\n recommendations,\r\n applyButtonCallback,\r\n cancelButtonCallback,\r\n feedbackLinkCallback,\r\n isInternal,\r\n accountsList,\r\n logger,\r\n permissions,\r\n termsAndConditionsUrl,\r\n}) {\r\n const i18n = useContext(I18nContext);\r\n const [editRIO, setEditRIO] = useState(null);\r\n const [editPanelVisible, setEditPanelVisible] = useState(false);\r\n const [selectedItems, setSelectedItems] = useState([]);\r\n const [allRIOs, setAllRIOs] = useState(recommendations);\r\n const [selectAndRefreshHandler, setSelectAndRefreshHandler] = useState(_.noop);\r\n const hasSingleIO = useMemo(() => _.some(recommendations, io => _.contains(SingleIORecommendationType, io.RecommendationType)), [recommendations]);\r\n const classes = useDefaultStyles(getRecommendationIOGridStyle);\r\n const applyButtonText = i18n.getString(_TL_('Apply'));\r\n\r\n const gridViewInstance = useMemo(() => new IOGridView({\r\n ios: recommendations,\r\n i18n,\r\n primaryKey,\r\n hasRecurringIO: _.some(recommendations, io => _.contains(RecurringIORecommedationType, io.RecommendationType)),\r\n hasSingleIO,\r\n accountsList,\r\n }).render(), [recommendations, i18n, hasSingleIO, accountsList]);\r\n\r\n const onApplyButtonClick = useCallback(() => applyButtonCallback(selectedItems), [selectedItems, applyButtonCallback]);\r\n\r\n const onSaveRIO = (data) => {\r\n const newIOs = _.map(allRIOs, (rio) => {\r\n if (rio[primaryKey] === editRIO[primaryKey]) {\r\n return {\r\n ...rio,\r\n ..._.pick(data, singleIOItems),\r\n ..._.pick(data, recurringIOItems),\r\n SeriesEndDate: data.ThruDate ? new Date(data.ThruDate) : null,\r\n SeriesStartDate: data.FromDate ? new Date(data.FromDate) : null,\r\n BudgetPerOrder: data.SpendCapAmount,\r\n SeriesName: data.Name,\r\n EndOccurrences: parseInt(data.RepeatCount, 10) || '',\r\n Frequency: data.FrequencyType,\r\n };\r\n }\r\n return rio;\r\n });\r\n setAllRIOs(newIOs);\r\n setEditPanelVisible(false);\r\n selectAndRefreshHandler({ newIos: newIOs, selectRowId: editRIO[primaryKey] });\r\n logger.trace(RecommendationIOLog.SaveRIO, editRIO.RecommendationId);\r\n };\r\n\r\n const renderFooterButtons = () => (\r\n
\r\n 0)}\r\n onClick={onApplyButtonClick}\r\n >{applyButtonText}\r\n \r\n \r\n {hasSingleIO &&\r\n \r\n \r\n
\r\n }\r\n
\r\n );\r\n\r\n const renderPanel = () => {\r\n if (!editRIO) {\r\n return null;\r\n }\r\n\r\n if (_.contains(SingleIORecommendationType, editRIO.RecommendationType)) {\r\n return (\r\n setEditPanelVisible(false)}\r\n isOpen={editPanelVisible}\r\n accountsList={accountsList}\r\n isInternal={isInternal}\r\n termsAndConditionsUrl={termsAndConditionsUrl}\r\n ioPanelSettings={{\r\n ioPanelIntroText: RecommendationType.InsertionOrderCreation === editRIO.RecommendationType ?\r\n i18n.getString(_TL_('This IO recommendation will create a new IO to keep your account active. After you click Save your changes might need to go through the approvals process again, which can take up to 24 hours. The status of your insertion order will be updated after we review the changes.')) :\r\n i18n.getString(_TL_('This IO recommendation will update your current IO to keep your account active. After you click Save your changes might need to go through the approvals process again, which can take up to 24 hours. The status of your insertion order will be updated after we review the changes.')),\r\n }}\r\n displayCurrency={_.get(editRIO, InsertionOrdersGridFieldNames.CurrencyType)}\r\n />\r\n );\r\n }\r\n return (\r\n setEditPanelVisible(false)}\r\n isOpen={editPanelVisible}\r\n accountsList={accountsList}\r\n logger={logger}\r\n termsAndConditionsUrl={termsAndConditionsUrl}\r\n permissions={permissions}\r\n />\r\n );\r\n };\r\n\r\n return (\r\n \r\n
\r\n {renderPanel()}\r\n
\r\n {\r\n hasSingleIO &&\r\n
\r\n
\r\n {i18n.getString(_TL_('Enter information for one or more insertion orders. After you create your insertion orders, you will receive a status email. If the orders are approved, your ads will begin to run on their start dates. ')) }\r\n {i18n.getString(_TL_('Learn more'))}\r\n
\r\n
\r\n }\r\n
\r\n
\r\n {i18n.getString(_TL_('Select the ones you want and apply.'))}\r\n
\r\n
\r\n {allRIOs && {\r\n setEditRIO(ioToEdit);\r\n setEditPanelVisible(true);\r\n setSelectAndRefreshHandler(() => selectAndRefresh);\r\n logger.trace(RecommendationIOLog.EditRIO, ioToEdit.RecommendationId);\r\n },\r\n outputSelectedRows: ({ selectedIOs }) => {\r\n setSelectedItems(selectedIOs);\r\n },\r\n },\r\n }}\r\n />}\r\n {\r\n hasSingleIO &&\r\n \r\n {isInternal &&\r\n \r\n {applyButtonText}),\r\n }}\r\n template={i18n.getString(_TL_('This order requires customer review. We’ll alert the customer and send them a summary email once you click {{applyButtonText}}'))}\r\n />\r\n \r\n }\r\n \r\n \r\n }\r\n {renderFooterButtons()}\r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nRecommendationIOGrid.propTypes = {\r\n isInternal: PropTypes.bool.isRequired,\r\n recommendations: PropTypes.arrayOf(PropTypes.shape({\r\n RecommendationId: PropTypes.number,\r\n SeriesName: PropTypes.string,\r\n Frequency: PropTypes.oneOf(frequencyEnum).isRequired,\r\n SeriesEndOption: PropTypes.oneOf(_.values(seriesEndOptions)),\r\n EndOccurrences: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.number,\r\n ]),\r\n AccountId: PropTypes.number.isRequired,\r\n AccountName: PropTypes.string.isRequired,\r\n SeriesStartDate: PropTypes.instanceOf(Date).isRequired,\r\n SeriesEndDate: PropTypes.instanceOf(Date),\r\n SeriesStartDateString: PropTypes.string.isRequired,\r\n SeriesEndDateString: PropTypes.string,\r\n BudgetPerOrder: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.number,\r\n ]),\r\n PurchaseOrder: PropTypes.string,\r\n OrderName: PropTypes.string,\r\n Notes: PropTypes.string,\r\n })),\r\n applyButtonCallback: PropTypes.func.isRequired,\r\n cancelButtonCallback: PropTypes.func.isRequired,\r\n feedbackLinkCallback: PropTypes.func.isRequired,\r\n accountsList: PropTypes.arrayOf(PropTypes.shape({\r\n DisplayAccountName: PropTypes.string,\r\n AccountId: PropTypes.number,\r\n })),\r\n logger: PropTypes.shape({\r\n trace: PropTypes.func,\r\n }),\r\n permissions: PropTypes.shape({}),\r\n termsAndConditionsUrl: PropTypes.string.isRequired,\r\n};\r\n\r\nRecommendationIOGrid.defaultProps = {\r\n recommendations: [],\r\n accountsList: [],\r\n logger: {\r\n trace: _.noop,\r\n },\r\n permissions: {},\r\n};\r\n","import _ from 'underscore';\r\nimport Backbone from 'backbone';\r\nimport { pgridFactory } from '@bingads-webui-campaign/pgrid-factory';\r\nimport { uiBlockerPlugin } from '@bingads-webui/projection-grid-uiblocker';\r\nimport { DateUtils } from '@bingads-webui-clientcenter/common-utils';\r\nimport { getColumnConfig } from './config';\r\nimport { ActionLinkName } from '../constants';\r\n\r\nexport default class IOGridView extends Backbone.View {\r\n events() {\r\n return {\r\n 'click a.action': 'onActionLinkClick',\r\n };\r\n }\r\n\r\n onActionLinkClick(event) {\r\n const { dataset } = event.currentTarget || {};\r\n const { linkname, id: idString } = dataset || {};\r\n const id = parseInt(idString, 10);\r\n switch (linkname) {\r\n case ActionLinkName.Edit:\r\n this.trigger('handleEditLinkClicked', {\r\n ioToEdit: _.findWhere(this.gridView.items.slice(), { [this.primaryKey]: id || idString }),\r\n selectAndRefresh: ({ newIos, selectRowId }) => {\r\n const patch = {\r\n dataSource: {\r\n type: 'memory',\r\n data: newIos,\r\n primaryKey: this.primaryKey,\r\n },\r\n };\r\n this.gridView.patch(patch);\r\n this.gridView.selectRow(selectRowId);\r\n },\r\n });\r\n break;\r\n case ActionLinkName.Delete:\r\n this.trigger('handleDeleteLinkClicked', { ioIdToDelete: idString });\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n onRowSelected() {\r\n const selectedIOs = this.gridView.selectedItems();\r\n this.trigger('outputSelectedRows', {\r\n selectedIOs,\r\n });\r\n }\r\n\r\n initialize(props) {\r\n const {\r\n ios, primaryKey, isRecommendationGrid = true, i18n,\r\n } = props;\r\n this.primaryKey = primaryKey;\r\n\r\n const { gridView } = pgridFactory({\r\n gridConfig: {\r\n tableClasses: ['table', 'table-bordered', 'table-hover'],\r\n dataSource: {\r\n type: 'memory',\r\n data: ios,\r\n primaryKey: this.primaryKey,\r\n },\r\n columns: getColumnConfig({\r\n ...props,\r\n getNFrequencyEndDate: DateUtils.getNFrequencyEndDate,\r\n }),\r\n el: this.el,\r\n ...isRecommendationGrid ? { selection: { selectable: () => true } } : {},\r\n },\r\n plugins: [{\r\n plugin: uiBlockerPlugin,\r\n config: {\r\n text: i18n.getString(_TL_('Loading...')),\r\n },\r\n }],\r\n });\r\n\r\n this.gridView = gridView;\r\n this.gridView.on('didSelect', () => this.onRowSelected());\r\n }\r\n\r\n render() {\r\n this.gridView.render();\r\n return this;\r\n }\r\n}\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__692__;","import _ from 'underscore';\r\nimport { Constants, InsertionOrderUtils } from '@bingads-webui-clientcenter/entity-utils';\r\nimport { Constants as CommonConstants } from '@bingads-webui-clientcenter/common-utils';\r\n\r\nimport { ActionColumnFields, EndDateColumnFields, seriesEndOptions, RecurringIORecommedationType, ActionLinkName } from '../constants';\r\nimport actionColumnTemplate from './template/action-column.pug';\r\nimport endDateColumnTemplate from './template/end-date-column.pug';\r\n\r\nconst { InsertionOrdersGridFieldNames, RecommendationType } = Constants;\r\nconst { FrequencyMonthI18nKeyMap } = CommonConstants;\r\nconst { formatUnlimitedIOBudgetInGrid, formatEndlessIOEndDateInGrid, isImmediateStartDate } = InsertionOrderUtils;\r\nconst hiddenColumnClass = {\r\n headClasses: 'hidden',\r\n bodyClasses: 'hidden',\r\n};\r\n\r\nfunction formatBudgetToFixedDecimal({ i18n, value }) {\r\n return formatUnlimitedIOBudgetInGrid({ spendCapAmountValue: value, i18n });\r\n}\r\n\r\nconst isRecurringIO = request => _.contains(RecurringIORecommedationType, request[InsertionOrdersGridFieldNames.RecommendationType]);\r\n\r\nexport function getColumnConfig({\r\n i18n,\r\n getNFrequencyEndDate,\r\n primaryKey,\r\n hasRecurringIO = true,\r\n hasSingleIO = false,\r\n accountsList = {},\r\n isRecommendationGrid = true,\r\n isSingleAccount = false,\r\n fixedFromDate,\r\n}) {\r\n const recurringIOColumns = [{\r\n name: InsertionOrdersGridFieldNames.BudgetPerOrder,\r\n title: i18n.getString(_TL_('Budget per order')),\r\n property: {\r\n get: request => formatBudgetToFixedDecimal({ i18n, value: request[InsertionOrdersGridFieldNames.BudgetPerOrder] }),\r\n },\r\n }, {\r\n name: InsertionOrdersGridFieldNames.SeriesName,\r\n title: i18n.getString(_TL_('Series name')),\r\n }, {\r\n name: InsertionOrdersGridFieldNames.Frequency,\r\n title: i18n.getString(_TL_('Frequency')),\r\n property: {\r\n get: (request) => {\r\n const frequencyTextKey = FrequencyMonthI18nKeyMap[request[InsertionOrdersGridFieldNames.Frequency]];\r\n return frequencyTextKey ? i18n.getString(frequencyTextKey) : undefined;\r\n },\r\n },\r\n }, {\r\n name: InsertionOrdersGridFieldNames.SeriesStartDate,\r\n ...hiddenColumnClass,\r\n }, {\r\n name: InsertionOrdersGridFieldNames.SeriesEndDate,\r\n ...hiddenColumnClass,\r\n }, {\r\n name: InsertionOrdersGridFieldNames.EndOccurrences,\r\n ...hiddenColumnClass,\r\n }, {\r\n name: InsertionOrdersGridFieldNames.SeriesEndOption,\r\n ...hiddenColumnClass,\r\n }];\r\n\r\n const singleIOColumns = [[{\r\n name: InsertionOrdersGridFieldNames.SpendCapAmount,\r\n title: i18n.getString(_TL_('Budget')),\r\n property: {\r\n get: request => formatBudgetToFixedDecimal({ i18n, value: request[InsertionOrdersGridFieldNames.SpendCapAmount] }),\r\n },\r\n }], [{\r\n name: InsertionOrdersGridFieldNames.CurrencyType,\r\n title: i18n.getString(_TL_('Currency')),\r\n }], [{\r\n name: InsertionOrdersGridFieldNames.RecommendationType,\r\n title: i18n.getString(_TL_('Type')),\r\n property: {\r\n get: (request) => {\r\n switch (request[InsertionOrdersGridFieldNames.RecommendationType]) {\r\n case RecommendationType.InsertionOrderCreation:\r\n return i18n.getString(_TL_('Create IO'));\r\n case RecommendationType.InsertionOrderUpdate:\r\n return i18n.getString(_TL_('Update IO'));\r\n default:\r\n return null;\r\n }\r\n },\r\n },\r\n }]];\r\n\r\n return [{\r\n name: InsertionOrdersGridFieldNames.AccountId,\r\n ...hiddenColumnClass,\r\n }, {\r\n name: InsertionOrdersGridFieldNames.RecommendationId,\r\n ...hiddenColumnClass,\r\n },\r\n ...isSingleAccount ? [] : [{\r\n name: InsertionOrdersGridFieldNames.AccountName,\r\n title: i18n.getString(_TL_('Account name')),\r\n property: {\r\n get: (request) => {\r\n if (_.isString(request[InsertionOrdersGridFieldNames.AccountName])) {\r\n return request[InsertionOrdersGridFieldNames.AccountName];\r\n }\r\n const account = _.findWhere(accountsList, { AccountId: request[InsertionOrdersGridFieldNames.AccountId] }) || {};\r\n return account.DisplayAccountName;\r\n },\r\n },\r\n }],\r\n {\r\n name: InsertionOrdersGridFieldNames.StartDateText,\r\n title: i18n.getString(_TL_('Start date')),\r\n property: {\r\n get: (request) => {\r\n if (fixedFromDate) {\r\n return fixedFromDate;\r\n }\r\n const startDate = isRecurringIO(request) ? request[InsertionOrdersGridFieldNames.SeriesStartDate] : request[InsertionOrdersGridFieldNames.FromDate];\r\n if (isImmediateStartDate(startDate)) {\r\n return i18n.getString(_TL_('Immediately'));\r\n }\r\n return startDate ? i18n.formatDate(startDate) : '';\r\n },\r\n },\r\n }, {\r\n name: InsertionOrdersGridFieldNames.EndDateText,\r\n title: i18n.getString(_TL_('End date')),\r\n template: endDateColumnTemplate,\r\n property: {\r\n get: request => _.defaults({\r\n i18n,\r\n getNFrequencyEndDate,\r\n seriesEndOptions,\r\n isSingleIORecommendation: !isRecurringIO(request),\r\n formatEndlessIOEndDateInGrid,\r\n }, _.pick(request, ...EndDateColumnFields)),\r\n key: EndDateColumnFields,\r\n },\r\n },\r\n ...(hasRecurringIO) ? recurringIOColumns : [],\r\n ...(hasSingleIO) ? singleIOColumns[0] : [],\r\n ...(hasSingleIO && isRecommendationGrid) ? singleIOColumns[1] : [],\r\n {\r\n name: InsertionOrdersGridFieldNames.PurchaseOrder,\r\n title: i18n.getString(_TL_('Purchase order')),\r\n property: {\r\n get: request => request[InsertionOrdersGridFieldNames.PurchaseOrder] || request[InsertionOrdersGridFieldNames.AgencyIdOrPo],\r\n },\r\n }, {\r\n name: InsertionOrdersGridFieldNames.OrderName,\r\n title: i18n.getString(_TL_('Order name')),\r\n property: {\r\n get: request => request[InsertionOrdersGridFieldNames.OrderName] || request[InsertionOrdersGridFieldNames.FriendlyName],\r\n },\r\n }, {\r\n name: InsertionOrdersGridFieldNames.Notes,\r\n title: i18n.getString(_TL_('Notes')),\r\n property: {\r\n get: request => request[InsertionOrdersGridFieldNames.Notes] || request[InsertionOrdersGridFieldNames.Comment],\r\n },\r\n },\r\n ...(hasSingleIO && isRecommendationGrid) ? singleIOColumns[2] : [],\r\n {\r\n name: InsertionOrdersGridFieldNames.Action,\r\n title: i18n.getString(_TL_('Action')),\r\n template: actionColumnTemplate,\r\n property: {\r\n get: request => _.defaults({\r\n i18n, primaryKey, ActionLinkName, displayDeleteLink: !isRecommendationGrid,\r\n }, _.pick(request, ...ActionColumnFields, primaryKey)),\r\n key: ActionColumnFields,\r\n },\r\n }];\r\n}\r\n","import { Constants } from '@bingads-webui-clientcenter/entity-utils';\r\n\r\nconst { InsertionOrdersGridFieldNames, RecommendationType } = Constants;\r\n\r\nexport const ActionColumnFields = [\r\n InsertionOrdersGridFieldNames.RecommendationId,\r\n];\r\n\r\nexport const EndDateColumnFields = [\r\n InsertionOrdersGridFieldNames.EndOccurrences,\r\n InsertionOrdersGridFieldNames.SeriesStartDate,\r\n InsertionOrdersGridFieldNames.SeriesEndDate,\r\n InsertionOrdersGridFieldNames.Frequency,\r\n InsertionOrdersGridFieldNames.SeriesEndOption,\r\n InsertionOrdersGridFieldNames.ThruDate,\r\n];\r\n\r\nexport const seriesEndOptions = {\r\n EndByDate: 'EndByDate',\r\n NoEndDate: 'NoEndDate',\r\n EndByOccurrences: 'EndByOccurrences',\r\n};\r\n\r\nexport const ActionLinkName = {\r\n Edit: 'edit-io',\r\n Delete: 'delete-io',\r\n};\r\n\r\nexport const RecommendationIOLog = {\r\n GridLoad: 'recommendationiogridload',\r\n BulkApply: 'bulkapplyrio',\r\n EditRIO: 'editriofromgrid',\r\n SaveRIO: 'saveriofromgrid',\r\n};\r\n\r\nexport const SingleIORecommendationType = [RecommendationType.InsertionOrderCreation, RecommendationType.InsertionOrderUpdate];\r\nexport const RecurringIORecommedationType = [RecommendationType.RecurringInsertionOrderAdd];\r\n\r\nconst BackupIOLogsPrefix = 'BackupIO';\r\nexport const BackupIOLogsScenario = {\r\n Default: BackupIOLogsPrefix,\r\n SaveLink: `${BackupIOLogsPrefix}_SaveLink`,\r\n CreateAnotherLink: `${BackupIOLogsPrefix}_CreateAnotherLink`,\r\n GridViewInstanceEdit: `${BackupIOLogsPrefix}_GridViewInstanceEdit`,\r\n GridViewInstanceDelete: `${BackupIOLogsPrefix}_GridViewInstanceDelete`,\r\n};\r\n\r\nexport const PugStrings = [\r\n _TL_('Edit'),\r\n _TL_('Delete'),\r\n _TL_('No end date'),\r\n];\r\n","var pug = require(\"!../../../../../node_modules/pug-runtime/index.js\");\n\nfunction template(locals) {var pug_html = \"\", pug_mixins = {}, pug_interp;;var locals_for_with = (locals || {});(function (_TL_, value) {pug_html = pug_html + \"\\u003Cdiv class=\\\"mainAction rio-grid-action-column\\\"\\u003E\\u003Cul class=\\\"actions\\\"\\u003E\\u003Cli\\u003E\\u003Ca\" + (\" class=\\\"action\\\"\"+pug.attr(\"data-linkname\", value.ActionLinkName.Edit, true, true)+pug.attr(\"data-id\", value[value.primaryKey], true, true)) + \"\\u003E\" + (pug.escape(null == (pug_interp = value.i18n.getString(_TL_('Edit'))) ? \"\" : pug_interp)) + \"\\u003C\\u002Fa\\u003E\\u003C\\u002Fli\\u003E\";\nif (value.displayDeleteLink) {\npug_html = pug_html + \"\\u003Cli\\u003E\\u003Ca\" + (\" class=\\\"action\\\"\"+pug.attr(\"data-linkname\", value.ActionLinkName.Delete, true, true)+pug.attr(\"data-id\", value[value.primaryKey], true, true)) + \"\\u003E\" + (pug.escape(null == (pug_interp = value.i18n.getString(_TL_('Delete'))) ? \"\" : pug_interp)) + \"\\u003C\\u002Fa\\u003E\\u003C\\u002Fli\\u003E\";\n}\npug_html = pug_html + \"\\u003C\\u002Ful\\u003E\\u003C\\u002Fdiv\\u003E\";}.call(this,\"_TL_\" in locals_for_with?locals_for_with._TL_:typeof _TL_!==\"undefined\"?_TL_:undefined,\"value\" in locals_for_with?locals_for_with.value:typeof value!==\"undefined\"?value:undefined));;return pug_html;};\nmodule.exports = template;","var pug = require(\"!../../../../../node_modules/pug-runtime/index.js\");\n\nfunction template(locals) {var pug_html = \"\", pug_mixins = {}, pug_interp;;var locals_for_with = (locals || {});(function (_TL_, value) {if ((value.isSingleIORecommendation)) {\npug_html = pug_html + \"\\u003Cspan\\u003E\" + (pug.escape(null == (pug_interp = value.formatEndlessIOEndDateInGrid({ i18n: value.i18n, endDateValue: value.ThruDate })) ? \"\" : pug_interp)) + \"\\u003C\\u002Fspan\\u003E\";\n}\nelse\nif ((!value.SeriesEndOption || value.SeriesEndOption == value.seriesEndOptions.EndByDate)) {\npug_html = pug_html + \"\\u003Cspan\\u003E\" + (pug.escape(null == (pug_interp = value.SeriesEndDate ? value.i18n.formatDate(value.SeriesEndDate) : \"\") ? \"\" : pug_interp)) + \"\\u003C\\u002Fspan\\u003E\";\n}\nelse\nif ((value.SeriesEndOption == value.seriesEndOptions.EndByOccurrences)) {\npug_html = pug_html + \"\\u003Cspan\\u003E\" + (pug.escape(null == (pug_interp = value.i18n.formatDate(value.getNFrequencyEndDate(value.SeriesStartDate, value.Frequency, value.EndOccurrences))) ? \"\" : pug_interp)) + \"\\u003C\\u002Fspan\\u003E\";\n}\nelse {\npug_html = pug_html + \"\\u003Cspan\\u003E\" + (pug.escape(null == (pug_interp = value.i18n.getString(_TL_('No end date'))) ? \"\" : pug_interp)) + \"\\u003C\\u002Fspan\\u003E\";\n}}.call(this,\"_TL_\" in locals_for_with?locals_for_with._TL_:typeof _TL_!==\"undefined\"?_TL_:undefined,\"value\" in locals_for_with?locals_for_with.value:typeof value!==\"undefined\"?value:undefined));;return pug_html;};\nmodule.exports = template;","\r\nimport { getSingleIOFormStyles } from '@bingads-webui-cc-react/io-form';\r\n\r\nexport const getRecommendationIOGridStyle = () => ({\r\n IORecommendationGrid: {\r\n '& .alert-spacing': {\r\n marginTop: 15,\r\n },\r\n\r\n '& .panel-input': {\r\n '& input': {\r\n marginTop: '0 !important',\r\n },\r\n\r\n '& .feedback': {\r\n border: 'none',\r\n background: 'none',\r\n color: '#1470A5',\r\n height: 32,\r\n },\r\n\r\n '& .feedback-panel': {\r\n position: 'relative',\r\n },\r\n\r\n '& .feedback-link': {\r\n marginLeft: 15,\r\n },\r\n\r\n '& .feedback-view': {\r\n position: 'absolute',\r\n zIndex: 1010,\r\n width: 300,\r\n padding: 10,\r\n backgroundColor: '#fff',\r\n border: '1px solid #606060',\r\n borderRadius: 0,\r\n margin: 5,\r\n left: 60,\r\n\r\n ' & .textarea-survey textarea': {\r\n width: '100%',\r\n height: 100,\r\n },\r\n\r\n '& label': {\r\n display: 'flex',\r\n },\r\n },\r\n\r\n '& .btn-submit-survey, .btn-cancel-survey': {\r\n marginTop: 10,\r\n },\r\n },\r\n\r\n '& .mainAction': {\r\n '& ul.actions': {\r\n marginBottom: 0,\r\n },\r\n },\r\n },\r\n});\r\n\r\nexport const getBulkCreateIoFormStyle = () => ({\r\n IOBulkCreateGrid: {\r\n ...getSingleIOFormStyles(),\r\n '& .add-insertion-order': {\r\n border: 'none',\r\n background: 'none',\r\n color: '#1470A5',\r\n marginTop: 10,\r\n marginBottom: 15,\r\n },\r\n\r\n '& .panel-input': {\r\n margin: '0 !important',\r\n paddingLeft: '0 !important',\r\n paddingBottom: '0 !important',\r\n borderTop: '1px solid #B3B0AD !important',\r\n },\r\n\r\n '& .table-container table.table thead.header tr th.column-header': {\r\n borderTop: '2px solid #B3B0AD',\r\n borderBottom: '2px solid #B3B0AD',\r\n },\r\n\r\n '& .terms-and-conditions': {\r\n fontSize: 14,\r\n lineHeight: '20px',\r\n },\r\n\r\n '& .io-grid-panel-context': {\r\n '& .intro-text': {\r\n marginTop: 0,\r\n marginBottom: 36,\r\n },\r\n\r\n '& .io-form-title': {\r\n borderTop: '1px solid #B3B0AD',\r\n fontSize: 16,\r\n paddingTop: 10,\r\n marginTop: 32,\r\n },\r\n },\r\n\r\n '& .io-form-vertical': {\r\n '& .bulk-create-row-lines': {\r\n\r\n '& .bulk-create-row': {\r\n marginLeft: -10,\r\n },\r\n\r\n '& .io-form-dropdown-selector .dropdown': {\r\n width: '100%',\r\n '& button': {\r\n width: '100%',\r\n textAlign: 'left',\r\n fontWeight: '100',\r\n '& .caret': {\r\n float: 'right',\r\n },\r\n },\r\n '& .react-dropdown-menu': {\r\n width: '100% !important',\r\n minWidth: 'fit-content',\r\n },\r\n },\r\n },\r\n },\r\n\r\n '& .io-inline-smart-rec-container': {\r\n marginTop: 8,\r\n },\r\n },\r\n});\r\n\r\nexport const getSingleCreateIoFormStyle = () => ({\r\n IOSingleCreateGrid: {\r\n '& .add-insertion-order': {\r\n fontWeight: 'normal',\r\n },\r\n\r\n '& .mainAction': {\r\n '& ul.actions': {\r\n marginBottom: 0,\r\n\r\n '& li': {\r\n listStyleType: 'none',\r\n display: 'inline',\r\n paddingRight: 5,\r\n },\r\n '& li+li': {\r\n paddingLeft: 5,\r\n borderLeft: '1px solid #bbb',\r\n },\r\n },\r\n },\r\n },\r\n});\r\n","/* eslint-disable jsx-a11y/anchor-is-valid */\r\n/* eslint-disable no-unused-vars */\r\nimport React, { useState, useMemo, useCallback, useEffect, useRef, useContext } from 'react';\r\nimport _ from 'underscore';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport { BackboneInstanceWrapper } from '@bingads-webui-react/backbone-instance-wrapper';\r\nimport { SingleIOPanelForm, BaseIoForm } from '@bingads-webui-cc-react/io-form';\r\nimport { IOTermsAndConditionsDescription, useSuggestedStartDate, useGeneralRecommendation } from '@bingads-webui-cc-react/io-controls';\r\nimport { InsertionOrderUtils, Constants } from '@bingads-webui-clientcenter/entity-utils';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { HelpLink } from '@bingads-webui-react/help-link';\r\nimport { Button, Glyphicon } from '@bingads-webui-react/primitive';\r\nimport { InlineInfoAlert } from '@bingads-webui-cc-react/alert';\r\nimport { CcJsDataContextProvider, CcJsDataContext } from '@bingads-webui-cc-react/js-data-rest';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\n\r\nimport IOGridView from './backbone/io-grid-view';\r\nimport { getBulkCreateIoFormStyle } from './styles';\r\nimport { logBackupIOInfo, calcSuggestedStartDate, calcGeneralRecommendationProps } from './helper';\r\nimport { BackupIOLogsScenario } from './constants';\r\n\r\nconst { isIOValid, isEndlessIOEndDate, isUnlimitedIOBudget } = InsertionOrderUtils;\r\nconst { UnlimitedBudget, EndlessDate } = Constants;\r\nconst scrollIntoExpectedView = ref => ref.current && ref.current.scrollIntoView();\r\n\r\nexport const getBackupThruDate = ({ originalThruDate, extendDays }) => {\r\n if (originalThruDate === EndlessDate) {\r\n return originalThruDate;\r\n }\r\n const backupThruDate = new Date(originalThruDate.valueOf());\r\n backupThruDate.setDate(backupThruDate.getDate() + extendDays);\r\n return backupThruDate;\r\n};\r\n\r\nfunction BulkCreateIOGridBase({\r\n submitButtonCallback,\r\n cancelButtonCallback,\r\n isInternal,\r\n accountsList,\r\n isSingleAccount,\r\n singleAccountId,\r\n termsAndConditionsUrl,\r\n showBackupIO,\r\n showIOInlineSmartness,\r\n logger,\r\n}) {\r\n const getInitialNewIO = () => ({ AccountId: showIOInlineSmartness && isSingleAccount ? singleAccountId : undefined });\r\n const ioGridRef = useRef();\r\n const ioFormRef = useRef();\r\n const i18n = useContext(I18nContext);\r\n const [gridIOs, setGridIOs] = useState([]);\r\n const [editIO, setEditIO] = useState({});\r\n const [newIO, setNewIO] = useState(getInitialNewIO);\r\n const [reRenderNewIOForm, setReRenderNewIOForm] = useState(0);\r\n const [editPanelVisible, setEditPanelVisible] = useState(false);\r\n const [alwaysShowError, setAlwaysShowError] = useState(false);\r\n const [isSubmitDisabled, setIsSubmitDisabled] = useState(true);\r\n\r\n const [isEndlessOrUnlimitedIO, setIsEndlessOrUnlimitedIO] = useState(false);\r\n const classes = useDefaultStyles(getBulkCreateIoFormStyle);\r\n const { suggestedStartDate: suggestedStartDateFromRec } = useSuggestedStartDate({ i18n, aid: newIO.AccountId, showIOInlineSmartness });\r\n const { generalRecommendationProps: generalRecommendationPropsFromRec } = useGeneralRecommendation({\r\n i18n, aid: newIO.AccountId, isRecurringIO: false, isSingleAccount, showIOInlineSmartness,\r\n });\r\n const suggestedStartDate = useMemo(() => calcSuggestedStartDate({ suggestedStartDateFromRec, accountId: newIO.AccountId, gridIOs }), [gridIOs, newIO.AccountId, suggestedStartDateFromRec]);\r\n const generalRecommendationProps = useMemo(() => calcGeneralRecommendationProps({ generalRecommendationPropsFromRec, newIORecommendationId: newIO.RecommendationId, gridIOs }), [generalRecommendationPropsFromRec, gridIOs, newIO.RecommendationId]);\r\n const hideSpecificRecommendation = useMemo(\r\n () => (newIO.RecommendationId > 0 || (!isSingleAccount && _.get(generalRecommendationProps, 'RecommendationId') !== null)),\r\n [generalRecommendationProps, isSingleAccount, newIO.RecommendationId]\r\n );\r\n const needValidateBackupIO = useMemo(\r\n () => (showBackupIO && !(newIO.AccountBackupIOConfigModel && newIO.AccountBackupIOConfigModel.IsEnable)),\r\n [newIO.AccountBackupIOConfigModel, showBackupIO]\r\n );\r\n const isIOItemNeedValidation = useMemo(() => ({\r\n AccountId: !isSingleAccount,\r\n FriendlyName: true,\r\n FromDate: true,\r\n ThruDate: true,\r\n SpendCapAmount: true,\r\n AgencyIdOrPo: true,\r\n Comment: true,\r\n ExtendDays: needValidateBackupIO,\r\n BackupSpendCapAmount: needValidateBackupIO,\r\n }), [isSingleAccount, needValidateBackupIO]);\r\n\r\n const gridViewInstance = useMemo(() => new IOGridView({\r\n ios: gridIOs,\r\n i18n,\r\n primaryKey: 'id',\r\n isRecommendationGrid: false,\r\n isSingleAccount,\r\n hasRecurringIO: false,\r\n hasSingleIO: true,\r\n accountsList,\r\n }).render(), [accountsList, i18n, gridIOs, isSingleAccount]);\r\n\r\n const updateBackupIO = useCallback(({ io }) => {\r\n // backup IO design doc: https://microsoftapc-my.sharepoint.com/:w:/r/personal/mahui_microsoft_com/_layouts/15/doc2.aspx?sourcedoc=%7B3464888a-c92a-4337-ada8-58b8d2c18934%7D&action=edit&share=IQGKiGQ0Ksk3Q62oWLjSwYk0AWJ9llufRurl48bC6w0dxdc&cid=a6428ccd-4801-4db8-ac1d-3fbf3da25606\r\n // when to create backup IO?\r\n // 1. ThruDate = endless && SpendCapAmount has value && ExtendDays = 0 && BackupSpendCapAmount has value\r\n // 2. ThruDate has value && SpendCapAmount = Unlimited && ExtendDays > 0 && BackupSpendCapAmount > 0\r\n // 3. ThruDate has value && SpendCapAmount has value && ExtendDays = 0 && BackupSpendCapAmount > 0\r\n // 4. ThruDate has value && SpendCapAmount has value && ExtendDays > 0 && BackupSpendCapAmount > 0\r\n if (showBackupIO && io.BackupSpendCapAmount > 0 &&\r\n (io.SpendCapAmount !== UnlimitedBudget || (io.ThruDate !== EndlessDate && io.ExtendDays > 0))\r\n ) {\r\n return {\r\n ..._.omit(io, 'IOInlineSmartnessInfo'),\r\n SpendCapAmount: io.BackupSpendCapAmount,\r\n ThruDate: getBackupThruDate({ originalThruDate: io.ThruDate, extendDays: io.ExtendDays }),\r\n Comment: i18n.getString(_TL_('Backup insertion order (IO)')),\r\n isBackup: true,\r\n };\r\n }\r\n return {};\r\n }, [i18n, showBackupIO]);\r\n\r\n const [isBackupIOChanged, setIsBackupIOChanged] = useState(false);\r\n\r\n const onSaveAllNewIOs = useCallback(() => {\r\n const backupIO = updateBackupIO({ io: newIO });\r\n if (showBackupIO && !_.isEmpty(backupIO)) {\r\n logBackupIOInfo({\r\n logger, scenarioName: BackupIOLogsScenario.SaveLink, newIO, backupIO, isBackupIOChanged,\r\n });\r\n setIsBackupIOChanged(false);\r\n }\r\n submitButtonCallback({\r\n ioToCreateList: _.union(\r\n gridIOs,\r\n [newIO],\r\n !_.isEmpty(backupIO) && [backupIO]\r\n ),\r\n });\r\n }, [gridIOs, isBackupIOChanged, logger, newIO, showBackupIO, submitButtonCallback, updateBackupIO]);\r\n\r\n const onSaveSingleIOAfterEdit = useCallback((data) => {\r\n setGridIOs(preIOs => _.map(preIOs, io => ({ ...io, ...io.id === data.id ? data : {} })));\r\n setEditPanelVisible(false);\r\n }, []);\r\n\r\n useEffect(() => setIsSubmitDisabled(!isIOValid({ ioValidationFields: newIO.ioValidationFields, isIOItemNeedValidation })), [gridIOs.length, isIOItemNeedValidation, newIO.ioValidationFields]);\r\n\r\n const renderCreateAnotherIOButton = () => (\r\n
\r\n {\r\n if (isIOValid({ ioValidationFields: newIO.ioValidationFields, isIOItemNeedValidation })) {\r\n const backupIO = updateBackupIO({ io: newIO });\r\n setGridIOs(preIOs => _.union(\r\n preIOs,\r\n [{ ...newIO, id: _.uniqueId('insertion_order') }],\r\n !_.isEmpty(backupIO) && [{ ...backupIO, id: _.uniqueId('insertion_order') }]\r\n ));\r\n if (showBackupIO && !_.isEmpty(backupIO)) {\r\n logBackupIOInfo({\r\n logger, scenarioName: BackupIOLogsScenario.CreateAnotherLink, newIO, backupIO, isBackupIOChanged,\r\n });\r\n setIsBackupIOChanged(false);\r\n }\r\n\r\n setAlwaysShowError(false);\r\n setReRenderNewIOForm(preKey => preKey + 1);\r\n setNewIO(getInitialNewIO());\r\n scrollIntoExpectedView(ioGridRef);\r\n } else {\r\n setAlwaysShowError(true);\r\n scrollIntoExpectedView(ioFormRef);\r\n }\r\n }}\r\n btnStyle=\"link\"\r\n >\r\n \r\n {i18n.getString(_TL_('Create another insertion order'))}\r\n \r\n \r\n
\r\n );\r\n\r\n return (\r\n \r\n
\r\n setEditPanelVisible(false)}\r\n isOpen={editPanelVisible}\r\n accountsList={accountsList}\r\n isInternal={isInternal}\r\n isSingleAccount={isSingleAccount}\r\n termsAndConditionsUrl={termsAndConditionsUrl}\r\n />\r\n
\r\n
\r\n
\r\n
{i18n.getString(_TL_('Create insertion orders'))}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {i18n.getString(_TL_('Enter information for one or more insertion orders. After you create your insertion orders, you will receive a status email. If the orders are approved, your ads will begin to run on their start dates. ')) }\r\n {i18n.getString(_TL_('Learn more'))}\r\n
\r\n
\r\n {!_.isEmpty(gridIOs) && {\r\n if (showBackupIO) {\r\n logBackupIOInfo({\r\n logger,\r\n scenarioName: BackupIOLogsScenario.GridViewInstanceEdit,\r\n newIO: ioToEdit.isBackup ? undefined : ioToEdit,\r\n backupIO: ioToEdit.isBackup ? ioToEdit : undefined,\r\n });\r\n }\r\n\r\n setEditIO(ioToEdit);\r\n setEditPanelVisible(true);\r\n },\r\n handleDeleteLinkClicked: ({ ioIdToDelete }) => {\r\n setGridIOs((preIOs) => {\r\n const ioToDelete = _.find(preIOs, io => io.id === ioIdToDelete);\r\n if (showBackupIO && ioToDelete) {\r\n logBackupIOInfo({\r\n logger,\r\n scenarioName: BackupIOLogsScenario.GridViewInstanceDelete,\r\n newIO: ioToDelete.isBackup ? undefined : ioToDelete,\r\n backupIO: ioToDelete.isBackup ? ioToDelete : undefined,\r\n });\r\n }\r\n return _.filter(preIOs, io => io.id !== ioIdToDelete);\r\n });\r\n },\r\n },\r\n }}\r\n />}\r\n
{i18n.getString(_TL_('Provide insertion order details'))}
\r\n {\r\n setNewIO(newIOFromForm);\r\n setIsEndlessOrUnlimitedIO(isEndlessIOEndDate(newIOFromForm.ThruDate) && isUnlimitedIOBudget(newIOFromForm.SpendCapAmount));\r\n }}\r\n insertionOrder={newIO}\r\n alwaysShowError={alwaysShowError}\r\n isDisplayAccountSelector={!isSingleAccount}\r\n accountsList={accountsList}\r\n setAlwaysShowError={setAlwaysShowError}\r\n isShowBackupIO={showBackupIO}\r\n isBackupIOChanged={isBackupIOChanged}\r\n setIsBackupIOChanged={setIsBackupIOChanged}\r\n showIOInlineSmartness={showIOInlineSmartness}\r\n suggestedStartDate={suggestedStartDate}\r\n generalRecommendationProps={generalRecommendationProps}\r\n hideSpecificRecommendation={hideSpecificRecommendation}\r\n />\r\n {isEndlessOrUnlimitedIO &&\r\n {i18n.getString(_TL_('The account will be eligible for spend regardless of other insertion orders with limited budget and end dates. To moderate your spend, please create an insertion order with a specific budget and end date.'))}}\r\n
\r\n {renderCreateAnotherIOButton()}\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nBulkCreateIOGridBase.propTypes = {\r\n submitButtonCallback: PropTypes.func.isRequired,\r\n cancelButtonCallback: PropTypes.func.isRequired,\r\n isSingleAccount: PropTypes.bool.isRequired,\r\n singleAccountId: PropTypes.number,\r\n isInternal: PropTypes.bool.isRequired,\r\n accountsList: PropTypes.arrayOf(PropTypes.shape({\r\n DisplayAccountName: PropTypes.string.isRequired,\r\n AccountId: PropTypes.number.isRequired,\r\n IsAutoApproval: PropTypes.bool,\r\n })),\r\n termsAndConditionsUrl: PropTypes.string.isRequired,\r\n showBackupIO: PropTypes.bool,\r\n showIOInlineSmartness: PropTypes.bool,\r\n logger: PropTypes.shape({\r\n trace: PropTypes.func,\r\n }),\r\n};\r\n\r\nBulkCreateIOGridBase.defaultProps = {\r\n singleAccountId: undefined,\r\n accountsList: [],\r\n showBackupIO: false,\r\n showIOInlineSmartness: false,\r\n logger: {\r\n trace: null,\r\n },\r\n};\r\n\r\nexport const BulkCreateIOGrid = ({ jsData, ...rest }) => {\r\n const jsDataFromContext = useContext(CcJsDataContext);\r\n const initialJsData = jsData || jsDataFromContext;\r\n\r\n if (!initialJsData) {\r\n return ;\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nBulkCreateIOGrid.propTypes = {\r\n jsData: PropTypes.shape({}),\r\n};\r\n\r\nBulkCreateIOGrid.defaultProps = {\r\n jsData: null,\r\n};\r\n","import _ from 'underscore';\r\n\r\nimport { InsertionOrderUtils, Constants } from '@bingads-webui-clientcenter/entity-utils';\r\n\r\nconst { isEndlessIOEndDate } = InsertionOrderUtils;\r\nconst { EndlessDate, IOInputItemNames } = Constants;\r\n\r\nexport const logBackupIOInfo = ({\r\n logger, scenarioName, newIO, backupIO, isBackupIOChanged,\r\n}) => {\r\n if (!logger || !_.isFunction(logger.trace)) {\r\n return;\r\n }\r\n const message = {\r\n aid: (newIO && newIO.AccountId) || (backupIO && backupIO.AccountId),\r\n startDate: newIO && newIO.FromDate,\r\n endDate: newIO && newIO.ThruDate,\r\n budget: newIO && newIO.SpendCapAmount,\r\n extendDay: newIO && newIO.ExtendDays,\r\n extendBudget: newIO && newIO.BackupSpendCapAmount,\r\n backupStartDate: backupIO && backupIO.FromDate,\r\n backupEndDate: backupIO && backupIO.ThruDate,\r\n backupBudget: backupIO && backupIO.SpendCapAmount,\r\n isBackupIOChanged,\r\n };\r\n logger.trace({ scenarioName, message });\r\n};\r\n\r\nexport const calcSuggestedStartDate = ({ suggestedStartDateFromRec, accountId, gridIOs }) => {\r\n if (_.isDate(suggestedStartDateFromRec) && accountId > 0 && !_.isEmpty(gridIOs)) {\r\n const endDateFromRec = new Date(suggestedStartDateFromRec.valueOf());\r\n endDateFromRec.setDate(endDateFromRec.getDate() - 1);\r\n\r\n const latestEndDate = _.chain(gridIOs)\r\n .filter(io => Number(io.AccountId) === Number(accountId))\r\n .reduce(\r\n (_latestEndDate, io) => {\r\n if (isEndlessIOEndDate(_latestEndDate) || isEndlessIOEndDate(io.ThruDate)) {\r\n return EndlessDate;\r\n }\r\n\r\n return _latestEndDate > io.ThruDate ? _latestEndDate : io.ThruDate;\r\n },\r\n endDateFromRec\r\n )\r\n .value();\r\n\r\n if (isEndlessIOEndDate(latestEndDate)) {\r\n return null;\r\n }\r\n\r\n const suggestedStartDate = new Date(latestEndDate.valueOf());\r\n suggestedStartDate.setDate(suggestedStartDate.getDate() + 1);\r\n return suggestedStartDate;\r\n }\r\n\r\n return suggestedStartDateFromRec;\r\n};\r\n\r\nexport const calcGeneralRecommendationProps = ({ generalRecommendationPropsFromRec, newIORecommendationId, gridIOs }) => {\r\n if (_.get(generalRecommendationPropsFromRec, 'RecommendationId') > 0\r\n && _.find(\r\n [{ [IOInputItemNames.RecommendationId]: newIORecommendationId }, ...gridIOs],\r\n io => io[IOInputItemNames.RecommendationId] === generalRecommendationPropsFromRec.RecommendationId\r\n )) {\r\n return { RecommendationId: null };\r\n }\r\n\r\n return generalRecommendationPropsFromRec;\r\n};\r\n","import React, { useState, useMemo, useEffect, useContext } from 'react';\r\nimport _ from 'underscore';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport { BackboneInstanceWrapper } from '@bingads-webui-react/backbone-instance-wrapper';\r\nimport { SingleIOPanelForm } from '@bingads-webui-cc-react/io-form';\r\nimport { isValidDate } from '@bingads-webui-universal/temporal-utitlities';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { Button, Glyphicon } from '@bingads-webui-react/primitive';\r\nimport { ReactTemplate } from '@bingads-webui-react/react-template';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\n\r\nimport IOGridView from './backbone/io-grid-view';\r\nimport { getSingleCreateIoFormStyle } from './styles';\r\n\r\nexport function SingleCreateIOGrid({\r\n insertionOrder,\r\n onClear,\r\n onInputChange,\r\n fixedFromDate,\r\n minEffectiveDate,\r\n termsAndConditionsUrl,\r\n isAgencyLinking,\r\n}) {\r\n const [editPanelVisible, setEditPanelVisible] = useState(false);\r\n const classes = useDefaultStyles(getSingleCreateIoFormStyle);\r\n const i18n = useContext(I18nContext);\r\n\r\n const gridViewInstance = useMemo(() => new IOGridView({\r\n ios: [insertionOrder],\r\n i18n,\r\n primaryKey: 'id',\r\n isRecommendationGrid: false,\r\n hasRecurringIO: false,\r\n hasSingleIO: true,\r\n isSingleAccount: true,\r\n fixedFromDate,\r\n }).render(), [fixedFromDate, i18n, insertionOrder]);\r\n\r\n const onSaveRIO = (data) => {\r\n const newIO = { ...insertionOrder, ...data };\r\n onInputChange({\r\n insertionOrder: {\r\n ...newIO,\r\n SpendCapAmount: _.isNumber(newIO.SpendCapAmount) ? i18n.formatDecimal(newIO.SpendCapAmount, { minimumFractionDigits: 0, maximumFractionDigits: 2 }) : newIO.SpendCapAmount,\r\n ThruDate: isValidDate(newIO.ThruDate) ? newIO.ThruDate : null,\r\n FromDate: isValidDate(newIO.FromDate) ? newIO.FromDate : null,\r\n },\r\n });\r\n setEditPanelVisible(false);\r\n };\r\n\r\n useEffect(() => {\r\n if (insertionOrder && insertionOrder.FromDate && insertionOrder.ThruDate && insertionOrder.SpendCapAmount && _.isUndefined(insertionOrder.ioValidationFields)) {\r\n onInputChange({\r\n insertionOrder: {\r\n ioValidationFields: {\r\n AgencyIdOrPo: true,\r\n Comment: true,\r\n FriendlyName: true,\r\n FromDate: true,\r\n SpendCapAmount: true,\r\n ThruDate: true,\r\n },\r\n ...insertionOrder,\r\n SpendCapAmount: _.isNumber(insertionOrder.SpendCapAmount) ? i18n.formatDecimal(insertionOrder.SpendCapAmount, { minimumFractionDigits: 0, maximumFractionDigits: 2 }) : insertionOrder.SpendCapAmount,\r\n },\r\n });\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, []);\r\n\r\n const haveIO = !_.isEmpty(insertionOrder) && _.isObject(insertionOrder.ioValidationFields);\r\n return (\r\n \r\n
\r\n setEditPanelVisible(false)}\r\n isOpen={editPanelVisible}\r\n isSingleAccount\r\n fixedFromDate={fixedFromDate}\r\n minEffectiveDate={minEffectiveDate}\r\n termsAndConditionsUrl={termsAndConditionsUrl}\r\n ioPanelSettings={{\r\n ioPanelHeaderText: i18n.getString(_TL_('Create an insertion order')),\r\n ioPanelIntroText: isAgencyLinking && ( ({text}) }}\r\n template={i18n.getString(_TL_('Create an insertion order for all accounts selected. You’ll be able to modify each insertion order in {{b}}Review & confirm{{/b}}.'))}\r\n />),\r\n }}\r\n isAgencyLinking={isAgencyLinking}\r\n />\r\n {haveIO && {\r\n setEditPanelVisible(true);\r\n },\r\n handleDeleteLinkClicked: () => {\r\n onClear();\r\n },\r\n },\r\n }}\r\n />}\r\n {!haveIO &&\r\n }\r\n
\r\n
\r\n );\r\n}\r\n\r\nSingleCreateIOGrid.propTypes = {\r\n insertionOrder: PropTypes.shape({\r\n AccountId: PropTypes.number,\r\n IOCreationSource: PropTypes.number,\r\n Status: PropTypes.number,\r\n FriendlyName: PropTypes.string,\r\n FromDate: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.string]),\r\n ThruDate: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.string]),\r\n SpendCapAmount: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.number,\r\n ]),\r\n AgencyIdOrPo: PropTypes.string,\r\n DealPointId: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.number,\r\n ]),\r\n RecordCenterId: PropTypes.string,\r\n Comment: PropTypes.string,\r\n IsInSeries: PropTypes.bool,\r\n }),\r\n onInputChange: PropTypes.func.isRequired,\r\n onClear: PropTypes.func,\r\n fixedFromDate: PropTypes.string,\r\n minEffectiveDate: PropTypes.instanceOf(Date),\r\n termsAndConditionsUrl: PropTypes.string.isRequired,\r\n isAgencyLinking: PropTypes.bool,\r\n};\r\n\r\nSingleCreateIOGrid.defaultProps = {\r\n onClear: null,\r\n insertionOrder: {},\r\n fixedFromDate: null,\r\n minEffectiveDate: null,\r\n isAgencyLinking: false,\r\n};\r\n","export { legacyStrings as default } from './src/legacy-strings-for-new-i18n';\r\n","// This File is to allow for support with the new TL syntax, please keep this up to date as keys.txt changes,\r\n// or if we want to update the text on a string\r\n// we have a tool that will build a legacyi18nObject using this mapping\r\n// the tool is buildLegacyI18n in @bingads-webui-campaign/smart-i18n\r\n// this file is exported separately, because we don't want the _TL_ syntax in the main exported code,\r\n// as it breaks if not running through the bundler\r\nexport const legacyStrings = {\r\n Prepay_FundingPage_CheckInstructionsHeader: _TL_(\r\n 'Check instructions',\r\n {\r\n comment: 'Text to show for the section header for check payment instructions',\r\n }\r\n ),\r\n Prepay_FundingPage_CheckPayeeLabel: _TL_(\r\n 'Make payments to',\r\n {\r\n comment: 'Label text for the check payee in the offline payment instructions',\r\n }\r\n ),\r\n Prepay_FundingPage_CheckMailingAddressLabel: _TL_(\r\n 'Send check to',\r\n {\r\n comment: 'Label to show for the address where checks can be mailed to in the prepay funding page.',\r\n }\r\n ),\r\n Prepay_FundingPage_CheckExpressMailingAddressLabel: _TL_(\r\n 'Express mail',\r\n {\r\n comment: 'Label text for the express mailing option for checks.',\r\n }\r\n ),\r\n Prepay_FundingPage_WhatToExpectLabel: _TL_('What to expect'),\r\n Prepay_FundingPage_WhatToExpectCheck: _TL_('It can take between 7 and 14 days after you mail your check for the funds to appear in your Microsoft Advertising account.'),\r\n Prepay_FundingPage_WireInstructionsHeader: _TL_(\r\n 'Wire transfer instructions',\r\n {\r\n comment: 'Text to show for the section header for wire payment instructions',\r\n }\r\n ),\r\n OfflinePaymentInstructionLabel_bankName: _TL_('Bank name'),\r\n Prepay_FundingPage_WhatToExpectWire: _TL_('It can take up to 5 days after the wire transfer is complete for the funds to appear in your Microsoft Advertising account.'),\r\n};\r\n","export { PaymentMethodDropdown } from './src/index';\r\nexport { legacyStrings as piDropdownLegacyStrings } from './src/legacy-strings';\r\nexport { PiDropdownStyles } from './src/styles';\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport _ from 'underscore';\r\nimport { Dropdown } from '@bingads-webui-cc-react/layout';\r\nimport { PaymentUtils } from '@bingads-webui-clientcenter/entity-utils';\r\n\r\nconst UpiId = 'UPI'; // intentionally not a number so errors with using this as a e.g. credit card PI fail right away\r\n\r\nconst formatAndSortPis = ({\r\n paymentInstruments, i18n, skipSort, permissions,\r\n}) =>\r\n (skipSort\r\n ? _.map(paymentInstruments, pi => PaymentUtils.extendPi(pi, i18n, permissions))\r\n : PaymentUtils.sortPiList(paymentInstruments, i18n, permissions));\r\n\r\nconst getNotSetItem = ({ i18n }) => ({\r\n displayName: i18n.getString(_TL_('(Not set)')),\r\n id: null,\r\n});\r\n\r\nexport function PaymentMethodDropdown({\r\n paymentInstruments,\r\n selectedPiId,\r\n onSelectPi,\r\n i18n,\r\n skipSort,\r\n skipFormat,\r\n includeNotSet,\r\n isForVNext,\r\n permissions,\r\n isUPIEnabled = false,\r\n}) {\r\n const isNukePIEnabled = permissions && permissions.dynamic && permissions.dynamic.NukePI;\r\n // If skip formatting, the paymentInstruments is used directly regardless of skipSort.\r\n let pis = skipFormat ? paymentInstruments : formatAndSortPis({\r\n paymentInstruments, i18n, skipSort, permissions,\r\n });\r\n if (includeNotSet) {\r\n pis = [getNotSetItem({ i18n }), ...pis];\r\n }\r\n if (isUPIEnabled) {\r\n pis.push({ id: UpiId, Id: UpiId, Type: 1 }); // Type set as credit card for tax calculation purposes before domaindata updates\r\n }\r\n // If selectedPiId is null, will select nothing or \"(Not set)\".\r\n // If selectedPiId is other invalid valid, will select first valid one\r\n let defaultPi = _.isNull(selectedPiId) ? {} : _.first(pis);\r\n // If only UPI is available, do not select it by default and show the dropdown as empty\r\n if (isUPIEnabled && pis.length === 1) {\r\n defaultPi = {};\r\n }\r\n const renderPi = (pi) => {\r\n if (pi.id === UpiId) {\r\n return (\r\n \r\n {i18n.getString(_TL_('UPI/Netbanking'))}\r\n \r\n );\r\n }\r\n return (isForVNext ? (\r\n \r\n {(pi.isOnHold || pi.isExpired || (isNukePIEnabled && PaymentUtils.isNukePIInvalid(pi))) && }\r\n {pi.displayName} \r\n {pi.cardStatus}\r\n {\r\n isNukePIEnabled && PaymentUtils.isNukePIInvalid(pi) && {i18n.getString(_TL_('Invalid'))}\r\n }\r\n \r\n ) : (\r\n \r\n {pi.displayName} \r\n {pi.cardStatus}\r\n {\r\n isNukePIEnabled && PaymentUtils.isNukePIInvalid(pi) && {i18n.getString(_TL_('Invalid'))}\r\n }\r\n \r\n ));\r\n };\r\n\r\n return (\r\n \r\n );\r\n}\r\n\r\nPaymentMethodDropdown.propTypes = {\r\n paymentInstruments: PropTypes.arrayOf(PropTypes.shape({\r\n Id: PropTypes.number, // by default we need \"Id\" for each Pi; if skipFormat == true, we need \"id\"\r\n })).isRequired,\r\n selectedPiId: PropTypes.oneOfType([\r\n PropTypes.number,\r\n PropTypes.oneOf([UpiId]),\r\n ]),\r\n onSelectPi: PropTypes.func.isRequired,\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func.isRequired,\r\n }).isRequired,\r\n skipSort: PropTypes.bool,\r\n skipFormat: PropTypes.bool,\r\n includeNotSet: PropTypes.bool,\r\n isForVNext: PropTypes.bool,\r\n permissions: PropTypes.shape({}),\r\n isUPIEnabled: PropTypes.bool,\r\n};\r\n\r\nPaymentMethodDropdown.defaultProps = {\r\n selectedPiId: undefined,\r\n skipSort: false,\r\n skipFormat: false,\r\n includeNotSet: false,\r\n isForVNext: false,\r\n permissions: {},\r\n isUPIEnabled: false,\r\n};\r\n","// This File is to allow for support with the new TL syntax, please keep this up to date as keys.txt changes,\r\n// or if the string changes in strings.resx\r\nexport const legacyStrings = {\r\n 'Prepaid ': _TL_('Prepaid '),\r\n Visa: _TL_('Visa'),\r\n MasterCard: _TL_('MasterCard'),\r\n 'American Express': _TL_('American Express'),\r\n Discover: _TL_('Discover'),\r\n 'Diners Club': _TL_('Diners Club'),\r\n JCB: _TL_('JCB'),\r\n 'Carte Blanche': _TL_('Carte Blanche'),\r\n JAL: _TL_('JAL'),\r\n 'Invoice (SAP)': _TL_('Invoice (SAP)'),\r\n 'Payment method: {{id}}': _TL_('Payment method: {{id}}'),\r\n 'Boleto Bancário: {{friendlyName}}': _TL_('Boleto Bancário: {{friendlyName}}'),\r\n 'Check: {{friendlyName}}': _TL_('Check: {{friendlyName}}'),\r\n '{{cardType}} {{cardCategory}}****{{last4}} ({{country}})': _TL_('{{cardType}} {{cardCategory}}****{{last4}} ({{country}})'),\r\n 'Expired {{date}}': _TL_('Expired {{date}}'),\r\n 'Expires {{date}}': _TL_('Expires {{date}}'),\r\n '{{cardType}} {{cardCategory}}****{{last4}}': _TL_('{{cardType}} {{cardCategory}}****{{last4}}'),\r\n 'On hold {{date}}': _TL_('On hold {{date}}'),\r\n 'Electronic funds transfer: {{friendlyName}}': _TL_('Electronic funds transfer: {{friendlyName}}'),\r\n 'Bank transfer ({{country}})': _TL_('Bank transfer ({{country}})'),\r\n 'PayPal: {{email}}': _TL_('PayPal: {{email}}'),\r\n 'SAP: {{customerName}} ({{invoiceId}})': _TL_('SAP: {{customerName}} ({{invoiceId}})'),\r\n 'SAP: {{invoiceId}}': _TL_('SAP: {{invoiceId}}'),\r\n 'SEPA direct debit: {{friendlyName}}': _TL_('SEPA direct debit: {{friendlyName}}'),\r\n 'Virtual Bank Account: {{friendlyName}}': _TL_('Virtual Bank Account: {{friendlyName}}'),\r\n PayPal: _TL_('PayPal'),\r\n 'Bank transfer': _TL_('Bank transfer'),\r\n 'UPI/Netbanking': _TL_('UPI/Netbanking'),\r\n '(Not set)': _TL_('(Not set)'),\r\n 'N/A': _TL_('N/A'),\r\n Invalid: _TL_('Invalid'),\r\n};\r\n","import { DropdownStyles } from '@bingads-webui-cc-react/layout';\r\n\r\n// jss for UI Next\r\n// Please import it along with the PiDropdown and inject it there to avoid extra
layer.\r\nexport const PiDropdownStyles = {\r\n ...DropdownStyles,\r\n '& .dropdown': { // use '& .dropdown' other than '& .dropdown' to avoid overriding in object merging\r\n '& .pi-expired, & .pi-onhold': {\r\n color: '#A80000',\r\n },\r\n\r\n '& .pi-invalid': {\r\n color: '#A19F9D',\r\n },\r\n\r\n '& .pi-invalid-label': {\r\n color: '#A80000',\r\n },\r\n\r\n '& .iconba': {\r\n color: '#A80000',\r\n fontSize: 14,\r\n margin: '0 4px 0 0',\r\n },\r\n\r\n '& .dropdown-menu > li.active': {\r\n '& .pi-expired, & .pi-onhold, & .iconba': {\r\n color: '#FFFFFF',\r\n },\r\n },\r\n },\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__79__;","export { legacyStrings as default } from './src/legacy-strings-for-new-i18n';\r\n","// This File is to allow for support with the new TL syntax, please keep this up to date as keys.txt changes,\r\n// or if we want to update the text on a string\r\n// we have a tool will that builds a legacyi18nObject using this mapping\r\n// the tool is buildLegacyI18n in @bingads-webui-campaign/smart-i18n\r\n// this file isn't exported, because we don't want the _TL_ syntax visible in the main exported code,\r\n// as it breaks if not running through the bundler\r\n// 12/2024 Update: This file is for compatibility of buildLegacyI18n after updating the i18n keys in pidl-payment-method-actions-base to use the new TL syntax.\r\n// If buildLegacyI18n is removed, this file is not needed.\r\nexport const legacyStrings = {\r\n 'We have encountered an internal error. Please contact Support for further assistance.': _TL_(\r\n 'We have encountered an internal error. Please contact Support for further assistance.'\r\n ),\r\n 'Please use another way to pay. This payment method has insufficient funds.': _TL_(\r\n 'Please use another way to pay. This payment method has insufficient funds.'\r\n ),\r\n \"We're sorry, but we do not accept this card type. Please use another way to pay.\": _TL_(\r\n \"We're sorry, but we do not accept this card type. Please use another way to pay.\"\r\n ),\r\n \"We're sorry, but we do not accept this payment method in your country/region. Please use another way to pay.\": _TL_(\r\n \"We're sorry, but we do not accept this payment method in your country/region. Please use another way to pay.\"\r\n ),\r\n 'We cannot process your payment method. Please contact Support for further assistance.': _TL_(\r\n 'We cannot process your payment method. Please contact Support for further assistance.'\r\n ),\r\n \"You're all set! This payment method is already available.\": _TL_(\r\n \"You're all set! This payment method is already available.\"\r\n ),\r\n 'We cannot process your payment method. Please use a different payment method, or contact your financial institution for further assistance.': _TL_(\r\n 'We cannot process your payment method. Please use a different payment method, or contact your financial institution for further assistance.'\r\n ),\r\n 'We could not process your payment method. Please verify that your card information is correct, and try again. If you continue to have issues, please use a different payment method, or contact your financial institution.': _TL_(\r\n 'We could not process your payment method. Please verify that your card information is correct, and try again. If you continue to have issues, please use a different payment method, or contact your financial institution.'\r\n ),\r\n 'Prepaid cards can only be used for certain currency and country/region combinations. See {{0}}Choosing a payment method{{1}} for more info.': _TL_(\r\n 'Prepaid cards can only be used for certain currency and country/region combinations. See {{0}}Choosing a payment method{{1}} for more info.'\r\n ),\r\n 'We can’t validate this SEPA direct debit - too many incorrect verification values attempted. Please add the payment method again and restart the validation.': _TL_(\r\n 'We can’t validate this SEPA direct debit - too many incorrect verification values attempted. Please add the payment method again and restart the validation.'\r\n ),\r\n \"You don't have sufficient permission to use this payment method. Please use another way to pay.\": _TL_(\r\n \"You don't have sufficient permission to use this payment method. Please use another way to pay.\"\r\n ),\r\n 'We cannot tokenize this payment method. Please contact Support for further assistance.': _TL_(\r\n 'We cannot tokenize this payment method. Please contact Support for further assistance.'\r\n ),\r\n 'Sepa Validation': _TL_(\r\n 'Sepa Validation'\r\n ),\r\n 'Authenticate your card': _TL_(\r\n 'Authenticate your card'\r\n ),\r\n \"When you click {0}, we'll send you to your bank's website to authorize this charge.\": _TL_(\r\n \"When you click {0}, we'll send you to your bank's website to authorize this charge.\"\r\n ),\r\n Next: _TL_(\r\n 'Next'\r\n ),\r\n 'Loading...': _TL_(\r\n 'Loading...'\r\n ),\r\n 'It took longer than expected to load the response. Please retry or choose a different payment method.': _TL_(\r\n 'It took longer than expected to load the response. Please retry or choose a different payment method.'\r\n ),\r\n};\r\n","export { PaymentOptionDropdownWithId, PaymentOptionDropdownWithEnum } from './src/index';\r\nexport { legacyStrings } from './src/legacy-strings';\r\n","import React, { useCallback } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport { Constants, PaymentUtils } from '@bingads-webui-clientcenter/entity-utils';\r\nimport { Select } from '@bingads-webui-react/primitive-with-signal';\r\n\r\nconst { PaymentOptionId, OrderedPaymentOptionId, OrderedPaymentOptionEnum } = Constants;\r\nconst { getPaymentOptionTextById } = PaymentUtils;\r\nconst commonPropTypes = {\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func.isRequired,\r\n }).isRequired,\r\n className: PropTypes.string,\r\n onPaymentOptionChange: PropTypes.func.isRequired,\r\n};\r\n\r\nfunction PaymentOptionDropdown({\r\n i18n,\r\n className,\r\n selectedPo,\r\n paymentOptions,\r\n onPaymentOptionChange,\r\n isNumberValue,\r\n}) {\r\n const pos = _.intersection(paymentOptions, isNumberValue ? OrderedPaymentOptionId : OrderedPaymentOptionEnum);\r\n const onChange = useCallback((event) => {\r\n const newPo = isNumberValue ? parseInt(event.target.value, 10) : event.target.value;\r\n onPaymentOptionChange(newPo);\r\n }, [isNumberValue, onPaymentOptionChange]);\r\n\r\n if (_.isEmpty(pos)) {\r\n return null;\r\n }\r\n const notSetPlaceholder = (isNumberValue ? 0 : '');\r\n\r\n return (\r\n \r\n \r\n {_.map(pos, po =>\r\n )}\r\n \r\n );\r\n}\r\n\r\nPaymentOptionDropdown.propTypes = {\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func.isRequired,\r\n }).isRequired,\r\n className: PropTypes.string,\r\n selectedPo: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\r\n paymentOptions: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.number, PropTypes.string])).isRequired,\r\n onPaymentOptionChange: PropTypes.func.isRequired,\r\n isNumberValue: PropTypes.bool.isRequired,\r\n};\r\n\r\nPaymentOptionDropdown.defaultProps = {\r\n className: 'po-dropdown',\r\n selectedPo: undefined,\r\n};\r\n\r\nexport const PaymentOptionDropdownWithId = props => (\r\n \r\n);\r\nPaymentOptionDropdownWithId.propTypes = {\r\n ...commonPropTypes,\r\n selectedPo: PropTypes.number,\r\n paymentOptions: PropTypes.arrayOf(PropTypes.number),\r\n};\r\n\r\nPaymentOptionDropdownWithId.defaultProps = {\r\n selectedPo: undefined,\r\n paymentOptions: OrderedPaymentOptionId,\r\n};\r\n\r\nexport const PaymentOptionDropdownWithEnum = props => (\r\n \r\n);\r\n\r\nPaymentOptionDropdownWithEnum.propTypes = {\r\n ...commonPropTypes,\r\n selectedPo: PropTypes.string,\r\n paymentOptions: PropTypes.arrayOf(PropTypes.string),\r\n};\r\n\r\nPaymentOptionDropdownWithEnum.defaultProps = {\r\n selectedPo: undefined,\r\n paymentOptions: OrderedPaymentOptionEnum,\r\n};\r\n","// This File is to allow for support with the new TL syntax, please keep this up to date as keys.txt changes,\r\n// or if the string changes in strings.resx\r\nexport const legacyStrings = {\r\n 'Choose...': _TL_('Choose...'),\r\n 'Postpay threshold': _TL_('Postpay threshold'),\r\n 'Monthly invoice': _TL_('Monthly invoice'),\r\n Prepay: _TL_('Prepay'),\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__9__;","export { legacyStrings as default } from './src/legacy-strings-for-new-i18n';\r\n","import offlineInstructionDisplayLegacyStrings from '@bingads-webui-cc-react/offline-instruction-display-legacy-strings';\r\n\r\n// This File is to allow for support with the new TL syntax, please keep this up to date as keys.txt changes,\r\n// or if we want to update the text on a string\r\n// we have a tool will that builds a legacyi18nObject using this mapping\r\n// the tool is buildLegacyI18n in @bingads-webui-campaign/smart-i18n\r\n// this file is exported separately, because we don't want the _TL_ syntax in the main exported code,\r\n// as it breaks if not running through the bundler\r\nexport const legacyStrings = {\r\n ...offlineInstructionDisplayLegacyStrings,\r\n AddFunds_SmartSignupLabel: _TL_('Add funds to your balance'),\r\n Label_On: _TL_('On'),\r\n Label_Off: _TL_('Off'),\r\n Label_On_AutoRechargePromotion: _TL_('On (Recommended)'),\r\n AutoRecharge_InlineAlert_Signup: _TL_('Auto-recharge will dynamically replenish your balance with the payment amount and payment method you selected above. To adjust these settings, go to the auto-recharge page after signing up.'),\r\n Prepay_FundingPage_AutoRechargeLabel: _TL_('Set up auto-recharge'),\r\n Prepay_FundingPage_AutoRechargeAmountDescription: _TL_('Auto-recharge for {0} when your balance runs low?'),\r\n Prepay_AutoRechargeDescription: _TL_('We will automatically add funds to your balance once your balance falls below a certain threshold. This way your account balance will automatically top-up to the amount set by you in advance, so your account does not hit zero and your campaigns will continue without interruption. You can turn-off this feature anytime under your Billing settings.'),\r\n Generic_Error: _TL_('We\\'ve encountered an error and can\\'t continue. Please contact support for further assistance.'),\r\n ScaChallengeFailed: _TL_('We\\'re sorry, but we\\'ve encountered a problem with your card authentication. Please try again. If that doesn\\'t fix the problem, contact your bank for assistance.'),\r\n OfflinePayment_InstructionsBlock_SPA: _TL_(\r\n 'You must include your Manager account name and your Microsoft Advertising account number ({0}) for us to process your payment.',\r\n {\r\n comment: 'Note to show when an offline payment method is selected. {0} is the account number.',\r\n }\r\n ),\r\n OfflinePayment_InstructionsBlock_SPA_Part2: _TL_(', and it can take up to 5 days after the wire transfer is complete for the funds to appear in your Microsoft Advertising account.'),\r\n Prepay_FundingPage_EstimatedTaxesLabel: _TL_('Estimated taxes'),\r\n Prepay_FundingPage_EstimatedAppliedPaymentAmountLabel: _TL_('Estimated payment applied'),\r\n Label_AddFunds: _TL_('Add funds'),\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__854__;","export { legacyStrings as default } from './src/legacy-strings-for-new-i18n';\r\n","// This File is to allow for support with the new TL syntax, please keep this up to date as keys.txt changes,\r\n// or if we want to update the text on a string\r\n// we have a tool will that builds a legacyi18nObject using this mapping\r\n// the tool is buildLegacyI18n in @bingads-webui-campaign/smart-i18n\r\n// this file isn't exported, because we don't want the _TL_ syntax visible in the main exported code,\r\n// as it breaks if not running through the bundler\r\nexport const legacyStrings = {\r\n SignUpAgreementLinkText: _TL_('Microsoft Advertising Terms and Conditions'),\r\n NewUserConsentToAgreement: _TL_('I agree to the {0}.',\r\n {\r\n comment: 'Consent on signup and activate MSA user page for user consent to \"agreement and terms\". {0} is the anchor link for agreement and terms. See the string SignUpAgreementLinkText',\r\n }),\r\n SignUp_Agreements_World: _TL_(\r\n 'Send me marketing information about Bing, search advertising, search tips, and webinars from Microsoft Advertising. (You can always unsubscribe.)',\r\n {\r\n comment: 'Note that this string also is Line 1 of the Germany agreement text.',\r\n }\r\n ),\r\n SignUp_Agreements_Germany_Line2: _TL_('Microsoft can contact me via email or telephone about products, events, benefits, services, and customer surveys.'),\r\n SignUp_Agreements_Germany_Line3: _TL_(\r\n 'By using Microsoft Advertising, I acknowledge that my data is being collected and used by Microsoft Ireland Operations Limited in Ireland, Microsoft Corporation in the USA, and other Microsoft subsidiaries worldwide ({0}).',\r\n {\r\n comment: '{0} is a link to the Microsoft worldwide website, e.g. \"www.microsoft.com/worldwide\".',\r\n }\r\n ),\r\n SignUp_Agreements_Germany_Line4: _TL_(\r\n 'The agreement can be retracted at any time via {0}.',\r\n {\r\n comment: '{0} is an email address, e.g. \"kunden@microsoft.com\".',\r\n }\r\n ),\r\n};\r\n","export { legacyStrings as default } from './src/legacy-strings-for-new-i18n';\r\n","import { ValidationStringMap } from '@bingads-webui/validation-string-map';\r\n\r\n// This File is to allow for support with the new TL syntax, please keep this up to date as keys.txt changes,\r\n// or if we want to update the text on a string\r\n// we have a tool will that builds a legacyi18nObject using this mapping\r\n// the tool is buildLegacyI18n in @bingads-webui/build-legacy-i18n\r\n// this file isn't exported, because we don't want the _TL_ syntax visible in the main exported code,\r\n// as it breaks if not running through the bundler\r\nexport const legacyStrings = {\r\n ...ValidationStringMap,\r\n Validation_NotEmpty_Required_Field: _TL_('This field is required'),\r\n Validation_String_Max_Length: _TL_('Enter a value that is {{maxlength}} characters or less'),\r\n Validation_String_Min_Length: _TL_('Field should have more than {{minlength}} characters'),\r\n Validation_String_Invalid_Characters: _TL_('Enter a valid value'),\r\n};\r\n","export { AccessibleTreeview } from './src/view';\r\n","import _ from 'underscore';\r\nimport Backbone from 'backbone';\r\nimport { keyCode } from '@bingads-webui/keycode';\r\nimport { VirtualizedTreeview } from '@bingads-webui/virtualized-treeview';\r\n\r\nimport treeItemTemplate from './tree-item.pug';\r\n\r\nfunction generateHashId(treeId, keyHierarchy) {\r\n return `${treeId}-item-${btoa(encodeURIComponent(JSON.stringify(keyHierarchy))).replace(/[=]/g, '_').replace(/\\+/g, '-')}`;\r\n}\r\n\r\n/* @this AccessibleTreeView */\r\nfunction expandNode(keyHierarchy) {\r\n let node = this.rootNode;\r\n const hasChildren = _.every(keyHierarchy, (key) => {\r\n if (node && node.children && _.any(node.children, { id: key })) {\r\n node = _.findWhere(node.children, { id: key });\r\n return node.hasChildren;\r\n }\r\n\r\n return false;\r\n });\r\n\r\n if (hasChildren && !this.treeView.isExpanded(keyHierarchy)) {\r\n this.trigger('expanded', keyHierarchy);\r\n this.treeView.expand({ keyHierarchy });\r\n }\r\n}\r\n\r\n/* @this AccessibleTreeView */\r\nfunction focusNode(keyHierarchy) {\r\n if (!_.isEqual(this.focusKeyHierarchy, keyHierarchy)) {\r\n this.focusKeyHierarchy = keyHierarchy;\r\n this.treeView.render({\r\n callback: () => {\r\n this.treeView.$el.attr('aria-activedescendant', generateHashId(this.treeView.id, keyHierarchy));\r\n },\r\n });\r\n }\r\n\r\n this.treeView.scrollIntoViewIfNeeded({ keyHierarchy });\r\n}\r\n\r\n/* @this AccessibleTreeView */\r\nfunction onfocus() {\r\n // Determine focus node when the tree view gets focus\r\n if (this.activeKeyHierarchy && this.activeKeyHierarchy.length > 0) {\r\n // Focus on the active node if visible, or its closest visible ancestor\r\n const keyHierarchy = this.activeKeyHierarchy.slice();\r\n\r\n // Search for the closest expanded ancestor\r\n while (keyHierarchy.length > 1 && !this.treeView.isExpanded(_.initial(keyHierarchy))) {\r\n keyHierarchy.pop();\r\n }\r\n\r\n focusNode.call(this, keyHierarchy);\r\n } else {\r\n // Focus on the first node\r\n focusNode.call(this, this.treeView.keyHierarchyAtFlattenedIndex(0));\r\n }\r\n}\r\n\r\nfunction generateA11yInfo(rootNode) {\r\n if (rootNode) {\r\n return _.defaults({\r\n children: _.map(rootNode.children, (value, index) => _.defaults({\r\n a11y: {\r\n setSize: rootNode.children.length,\r\n posInSet: index + 1,\r\n },\r\n }, generateA11yInfo(value))),\r\n }, rootNode);\r\n }\r\n\r\n return rootNode;\r\n}\r\n\r\n/**\r\n * Virtualized tree view with event handling and accessibility support.\r\n * @extends Backbone.View\r\n */\r\nexport class AccessibleTreeview extends Backbone.View {\r\n /**\r\n * Backbone view initialization.\r\n * @param {object} [options] The initialization options\r\n * @param {object} [options.rootNode] The root node\r\n * @param {object} [options.nodeTemplate] The template for the content of a tree node\r\n * @return {void}\r\n */\r\n initialize(options = {}) {\r\n this.rootNode = generateA11yInfo(options.rootNode);\r\n this.treeView = new VirtualizedTreeview({\r\n rootNode: this.rootNode,\r\n className: 'tree-container',\r\n id: options.treeId || _.uniqueId('tree-view-'),\r\n attributes: {\r\n role: 'tree',\r\n tabIndex: 0,\r\n },\r\n\r\n itemTemplate: _.compose(treeItemTemplate, item => _.defaults({\r\n isActive: _.isEqual(\r\n item.keyHierarchy,\r\n _.first(this.activeKeyHierarchy, item.keyHierarchy.length)\r\n ),\r\n isFocus: _.isEqual(item.keyHierarchy, this.focusKeyHierarchy),\r\n contentHtml: _.isFunction(options.nodeTemplate) ? options.nodeTemplate(item) : null,\r\n id: generateHashId(this.treeView.id, item.keyHierarchy),\r\n }, item)),\r\n\r\n events: {\r\n focus: () => onfocus.call(this),\r\n 'click .tree-item': e => this.clickItem(e),\r\n keydown: e => this.keydown(e),\r\n },\r\n });\r\n }\r\n\r\n /**\r\n * Render the view.\r\n * @param {object} [options] The options\r\n * @param {function} [options.callback] The callback on complete\r\n * @return {AccessibleTreeView} This object\r\n */\r\n render({ callback } = {}) {\r\n this.$el.empty();\r\n this.$el.append(this.treeView.render({ callback }).$el);\r\n return this;\r\n }\r\n\r\n /**\r\n * Select a node.\r\n * @param {object} options The options\r\n * @param {function} [options.callback] The callback on complete\r\n * @param {Array} options.keyHierarchy The array of the keys at each level\r\n * @param {boolean} [options.slient] To avoid triggering 'selected' event\r\n * @return {void}\r\n */\r\n select(options) {\r\n if (!_.isEqual(this.activeKeyHierarchy, options.keyHierarchy)) {\r\n if (!this.treeView.isExpanded(_.initial(options.keyHierarchy))) {\r\n expandNode.call(this, _.initial(options.keyHierarchy));\r\n }\r\n\r\n this.activeKeyHierarchy = options.keyHierarchy;\r\n focusNode.call(this, options.keyHierarchy);\r\n this.treeView.render(_.omit(options, 'silent'));\r\n }\r\n\r\n if (!options.slient) {\r\n this.trigger('selected', options.keyHierarchy);\r\n }\r\n }\r\n\r\n /**\r\n * Notify the tree view about data change.\r\n * @param {object} options The options\r\n * @param {function} [options.callback] The callback on complete\r\n * @param {object} options.rootNode The root node\r\n * @return {void}\r\n */\r\n update(options) {\r\n this.rootNode = generateA11yInfo(options.rootNode);\r\n return this.treeView.update(_.defaults({ rootNode: this.rootNode }, options));\r\n }\r\n\r\n /**\r\n * Click event handler.\r\n * @param {jQuery.Event} e The click event\r\n * @return {void}\r\n */\r\n clickItem(e) {\r\n const keyHierarchy = this.$(e.currentTarget).data('keyHierarchy');\r\n\r\n if (this.$(e.target).hasClass('tree-branch-toggle')) {\r\n if (this.$(e.target).hasClass('expanded')) {\r\n this.treeView.collapse({ keyHierarchy });\r\n } else {\r\n expandNode.call(this, keyHierarchy);\r\n }\r\n } else {\r\n focusNode.call(this, keyHierarchy);\r\n this.select({ keyHierarchy });\r\n expandNode.call(this, keyHierarchy);\r\n }\r\n }\r\n\r\n\r\n /**\r\n * Keydown event handler.\r\n * @param {jQuery.Event} e The keydown event\r\n * @return {void}\r\n */\r\n keydown(e) {\r\n let keyHierarchy;\r\n\r\n switch (e.which) {\r\n case keyCode.Enter:\r\n case keyCode.Space:\r\n this.select({ keyHierarchy: this.focusKeyHierarchy });\r\n expandNode.call(this, this.focusKeyHierarchy);\r\n break;\r\n case keyCode.ArrowLeft:\r\n if (this.treeView.isExpanded(this.focusKeyHierarchy)) {\r\n this.treeView.collapse({ keyHierarchy: this.focusKeyHierarchy });\r\n } else if (this.focusKeyHierarchy.length > 1) {\r\n // Move focus to parent\r\n focusNode.call(this, _.initial(this.focusKeyHierarchy));\r\n }\r\n break;\r\n case keyCode.ArrowRight:\r\n if (this.treeView.isExpanded(this.focusKeyHierarchy)) {\r\n // Move focus to the first child\r\n keyHierarchy = this.treeView.keyHierarchyAtFlattenedIndex(this.treeView\r\n .flattenedIndexForKeyHierarchy(this.focusKeyHierarchy) + 1);\r\n\r\n if (keyHierarchy && keyHierarchy.length > this.focusKeyHierarchy.length) {\r\n focusNode.call(this, keyHierarchy);\r\n }\r\n } else {\r\n expandNode.call(this, this.focusKeyHierarchy);\r\n }\r\n break;\r\n case keyCode.ArrowUp:\r\n keyHierarchy = this.treeView.keyHierarchyAtFlattenedIndex(this.treeView\r\n .flattenedIndexForKeyHierarchy(this.focusKeyHierarchy) - 1);\r\n\r\n if (keyHierarchy && keyHierarchy.length > 0) {\r\n focusNode.call(this, keyHierarchy);\r\n }\r\n break;\r\n case keyCode.ArrowDown:\r\n keyHierarchy = this.treeView.keyHierarchyAtFlattenedIndex(this.treeView\r\n .flattenedIndexForKeyHierarchy(this.focusKeyHierarchy) + 1);\r\n\r\n if (keyHierarchy && keyHierarchy.length > 0) {\r\n focusNode.call(this, keyHierarchy);\r\n }\r\n break;\r\n default:\r\n return;\r\n }\r\n\r\n e.preventDefault();\r\n }\r\n}\r\n\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__9__;","module.exports = __WEBPACK_EXTERNAL_MODULE__10__;","module.exports = __WEBPACK_EXTERNAL_MODULE__11__;","var pug = require(\"!../../../../node_modules/pug-runtime/index.js\");\n\nfunction template(locals) {var pug_html = \"\", pug_mixins = {}, pug_interp;;var locals_for_with = (locals || {});(function (Boolean, JSON, a11y, contentHtml, cssClass, expanded, hasChildren, href, id, isActive, isFocus, keyHierarchy, text) {pug_html = pug_html + \"\\u003Cli\\u003E\\u003Ca\" + (pug.attrs(pug.merge([{\"class\": pug.classes([\"tree-item\",isActive ? 'active' : '',isFocus ? 'focus' : '',cssClass ? cssClass : ''], [false,true,true,true]),\"href\": pug.escape(href ? href : 'javascript:;'),\"tabindex\": -1,\"role\": \"treeitem\",\"id\": pug.escape(id),\"aria-setsize\": pug.escape(a11y.setSize),\"aria-posinset\": pug.escape(a11y.posInSet),\"aria-selected\": pug.escape(Boolean(isFocus).toString()),\"data-key-hierarchy\": pug.escape(JSON.stringify(keyHierarchy))},hasChildren ? {'aria-expanded': Boolean(expanded).toString()} : {}]), true)) + \"\\u003E\";\nfor (var i = 1; i < keyHierarchy.length; i++) // Indention\n{\npug_html = pug_html + \"\\u003Cspan class=\\\"tree-indent\\\"\\u003E\";\n}\nif ((Boolean(hasChildren))) {\npug_html = pug_html + \"\\u003Cspan\" + (pug.attr(\"class\", pug.classes([\"tree-branch-toggle\",Boolean(expanded) ? 'expanded' : 'collapsed'], [false,true]), false, true)) + \"\\u003E\\u003C\\u002Fspan\\u003E\";\n}\nif ((contentHtml)) {\npug_html = pug_html + (null == (pug_interp = contentHtml) ? \"\" : pug_interp);\n}\nelse {\npug_html = pug_html + \"\\u003Cspan class=\\\"tree-text\\\"\\u003E\" + (pug.escape(null == (pug_interp = text) ? \"\" : pug_interp)) + \"\\u003C\\u002Fspan\\u003E\";\n}\nfor (var i = 1; i < keyHierarchy.length; i++) // End of indention\n{\npug_html = pug_html + \"\\u003C\\u002Fspan\\u003E\";\n}\npug_html = pug_html + \"\\u003C\\u002Fa\\u003E\\u003C\\u002Fli\\u003E\";}.call(this,\"Boolean\" in locals_for_with?locals_for_with.Boolean:typeof Boolean!==\"undefined\"?Boolean:undefined,\"JSON\" in locals_for_with?locals_for_with.JSON:typeof JSON!==\"undefined\"?JSON:undefined,\"a11y\" in locals_for_with?locals_for_with.a11y:typeof a11y!==\"undefined\"?a11y:undefined,\"contentHtml\" in locals_for_with?locals_for_with.contentHtml:typeof contentHtml!==\"undefined\"?contentHtml:undefined,\"cssClass\" in locals_for_with?locals_for_with.cssClass:typeof cssClass!==\"undefined\"?cssClass:undefined,\"expanded\" in locals_for_with?locals_for_with.expanded:typeof expanded!==\"undefined\"?expanded:undefined,\"hasChildren\" in locals_for_with?locals_for_with.hasChildren:typeof hasChildren!==\"undefined\"?hasChildren:undefined,\"href\" in locals_for_with?locals_for_with.href:typeof href!==\"undefined\"?href:undefined,\"id\" in locals_for_with?locals_for_with.id:typeof id!==\"undefined\"?id:undefined,\"isActive\" in locals_for_with?locals_for_with.isActive:typeof isActive!==\"undefined\"?isActive:undefined,\"isFocus\" in locals_for_with?locals_for_with.isFocus:typeof isFocus!==\"undefined\"?isFocus:undefined,\"keyHierarchy\" in locals_for_with?locals_for_with.keyHierarchy:typeof keyHierarchy!==\"undefined\"?keyHierarchy:undefined,\"text\" in locals_for_with?locals_for_with.text:typeof text!==\"undefined\"?text:undefined));;return pug_html;};\nmodule.exports = template;","module.exports = __WEBPACK_EXTERNAL_MODULE__13__;","import AlertCenter from './src/alert-center/index';\r\n\r\n\r\nexport { AlertCenter };\r\n","import _ from 'underscore';\r\nimport { DeterministicView } from '@bingads-webui/deterministic-view';\r\nimport AlertListView from '../alert-list/index';\r\nimport AlertCarouselView from '../alert-carousel/index';\r\nimport template from './template.pug';\r\n\r\n// 3 alert levels defined in HIG, and Info for HIG not defined but info alerts used in feature\r\n// see https://aka.ms/kda3co\r\nconst levels = ['Error', 'Warning', 'Info', 'Confirmation'];\r\nconst defaultLevel = 'Confirmation';\r\n\r\nfunction fallbackLevel(level) {\r\n return level || defaultLevel;\r\n}\r\n\r\nfunction getChild(alertCenter, level) {\r\n return alertCenter.getChild(`level(${fallbackLevel(level)})`);\r\n}\r\n\r\nfunction getAlertListView(level, useCarouselForErrors, i18n) {\r\n const Ctor = level === 'Error' && useCarouselForErrors ? AlertCarouselView : AlertListView;\r\n\r\n return new Ctor({ level, i18n });\r\n}\r\n\r\nfunction toast(message, level, ...options) {\r\n this.toastId = this.show({\r\n message,\r\n level,\r\n dismissible: true,\r\n }, this.toastId, ...options);\r\n\r\n this.once('rendered', () => {\r\n window.scrollTo(0, 0);\r\n });\r\n\r\n clearTimeout(this.toastTimerId);\r\n\r\n this.toastTimerId = setTimeout(() => {\r\n this.dismiss(this.toastId);\r\n }, 10000);\r\n}\r\n\r\n/**\r\n * The Alert Center view\r\n */\r\nclass AlertCenter extends DeterministicView {\r\n initialize({\r\n useCarouselForErrors = false,\r\n i18n,\r\n } = {}) {\r\n _.each(levels, (level) => {\r\n const alertListView = getAlertListView(level, useCarouselForErrors, i18n);\r\n\r\n this.setChild(`level(${level})`, alertListView);\r\n\r\n this.listenTo(alertListView, 'ignore', (args) => {\r\n this.trigger('ignore', args);\r\n });\r\n });\r\n }\r\n\r\n get template() {\r\n return () => template({ levels });\r\n }\r\n\r\n /**\r\n * Returns a new alert id which will not conflict with others.\r\n * Sometimes we won't know when we firstly show an alert.\r\n * It's hard to use return value of @see {@link AlertCenter#show} as the unique id.\r\n * Then you can use this method to generate an id.\r\n * @return {string} The alert id\r\n * @see {@link AlertCenter#show}\r\n * @see {@link AlertCenter#dismiss}.\r\n */\r\n newAlertId() {\r\n return AlertListView.newId();\r\n }\r\n\r\n /**\r\n * Show an alert.\r\n * @param {Object} alert - The alert plain object.\r\n * @param {string} alert.message - The alert message, which is a HTML string.\r\n * @param {string} [alert.id] - The id of alert, which should be generated by\r\n * @see {@link AlertCenter#newAlertId}, same id will cause old one replaced by new one.\r\n * @param {string} [alert.level=Confirmation] - The level of alert, which could be\r\n * 'Error', 'Warning' or 'Confirmation'.\r\n * @param {boolean} [alert.hasIcon=false] - If these is icon for the alert which is shown\r\n * at left side of alert message.\r\n * @param {HTMLString|AlertCenter~iconCallback} [alert.icon] - The icon template, default to be\r\n * ```span.alert__icon```.\r\n * @param {boolean} [alert.dismissible] - If the alert is dismissible, default to be true\r\n * for Confirmation, or false for other levels.\r\n * @param {object} [alert.action=null] - The alert action, default to not shown.\r\n * @param {object} [alert.action.message] - The alert action message, which is a plain string.\r\n * @param {object} [alert.action.callback] - The alert action callback, which will be called\r\n * when action button clicked by user.\r\n * @param {string} [id] - Same id will update old alert.\r\n * @return {string} The alert id.\r\n * @see {@link AlertCenter#newAlertId} and\r\n * @see {@link AlertCenter#dismiss}.\r\n */\r\n show(alert, id = this.newAlertId()) {\r\n this.model.set(id, fallbackLevel(alert.level));\r\n return getChild(this, alert.level).show(alert, id);\r\n }\r\n\r\n /**\r\n * Dismiss an alert.\r\n * @param {string} id - The id of alert, which is returned by @see {@link AlertCenter#show}.\r\n * @return {void}\r\n */\r\n dismiss(id) {\r\n getChild(this, this.model.get(id)).dismiss(id);\r\n }\r\n\r\n /**\r\n * Dismiss all alerts.\r\n * @return {void}\r\n */\r\n dismissAll() {\r\n _.each(levels, level => getChild(this, level).dismissAll());\r\n }\r\n\r\n /**\r\n * Handy method which is based on @see {@link AlertCenter#show}, with same options as it.\r\n * @param {string} [message] - The alert message, which is a HTML string.\r\n * @param {string} [id] - Same id will update old alert.\r\n * @return {string} The alert id\r\n * @see {@link AlertCenter#newAlertId} and\r\n * @see {@link AlertCenter#dismiss}.\r\n */\r\n showError(message, id, ...options) {\r\n return this.show({\r\n message,\r\n level: 'Error',\r\n }, id, ...options);\r\n }\r\n\r\n /**\r\n * Handy method which is based on @see {@link AlertCenter#show}, with same options as it.\r\n * @param {string} [message] - The alert message, which is a HTML string.\r\n * @param {string} [id] - Same id will update old alert.\r\n * @return {string} The alert id\r\n * @see {@link AlertCenter#newAlertId} and\r\n * @see {@link AlertCenter#dismiss}.\r\n */\r\n showWarning(message, id, ...options) {\r\n return this.show({\r\n message,\r\n level: 'Warning',\r\n }, id, ...options);\r\n }\r\n\r\n /**\r\n * Handy method which is based on @see {@link AlertCenter#show}, with same options as it.\r\n * @param {string} [message] - The alert message, which is a HTML string.\r\n * @param {string} [id] - Same id will update old alert.\r\n * @return {string} The alert id\r\n * @see {@link AlertCenter#newAlertId} and\r\n * @see {@link AlertCenter#dismiss}.\r\n */\r\n showInfo(message, id, ...options) {\r\n return this.show({\r\n message,\r\n level: 'Info',\r\n }, id, ...options);\r\n }\r\n\r\n /**\r\n * Handy method which is based on @see {@link AlertCenter#show}, with same options as it.\r\n * @param {string} [message] - The alert message, which is a HTML string.\r\n * @param {string} [id] - Same id will update old alert.\r\n * @return {string} The alert id\r\n * @see {@link AlertCenter#newAlertId} and\r\n * @see {@link AlertCenter#dismiss}.\r\n */\r\n showConfirmation(message, id, ...options) {\r\n return this.show({\r\n message,\r\n level: 'Confirmation',\r\n }, id, ...options);\r\n }\r\n\r\n /**\r\n * Toast given message as an error.\r\n * @param {string} message - The alert message, which is a HTML string.\r\n * @return {void}\r\n */\r\n toastError(message, ...options) {\r\n toast.call(this, message, 'Error', ...options);\r\n }\r\n\r\n /**\r\n * Toast given message as a warning.\r\n * @param {string} message - The alert message, which is a HTML string.\r\n * @return {void}\r\n */\r\n toastWarning(message, ...options) {\r\n toast.call(this, message, 'Warning', ...options);\r\n }\r\n\r\n /**\r\n * Toast given message as an info.\r\n * @param {string} message - The alert message, which is a HTML string.\r\n * @return {void}\r\n */\r\n toastInfo(message, ...options) {\r\n toast.call(this, message, 'Info', ...options);\r\n }\r\n\r\n /**\r\n * Toast given message as a confirmation.\r\n * @param {string} message - The alert message, which is a HTML string.\r\n * @return {void}\r\n */\r\n toastConfirmation(message, ...options) {\r\n toast.call(this, message, 'Confirmation', ...options);\r\n }\r\n}\r\n\r\n/**\r\n * @callback AlertCenter~iconCallback\r\n * @param {Object} alert - the alert passed in.\r\n * @return {HTMLString} the icon template.\r\n */\r\n\r\nexport default AlertCenter;\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__4__;","import _ from 'underscore';\r\nimport { DeterministicView, helpers } from '@bingads-webui/deterministic-view';\r\nimport AlertView from '../alert/index';\r\nimport template from './template.pug';\r\n\r\nconst { updateView, ensureChildView } = helpers;\r\n\r\n/**\r\n * @typedef {Object} AlertListViewState\r\n * @property {string[]} alertIds - A list of alert ids\r\n * @property {Object.} alerts - A mapping from ids to alert models\r\n */\r\n\r\n/**\r\n * Represents a list of alerts, plus an editor to add/change alerts\r\n */\r\nexport default class AlertListView extends DeterministicView {\r\n initialize({\r\n level,\r\n }) {\r\n this.$el.attr({\r\n 'data-level': level,\r\n });\r\n this.setState();\r\n }\r\n\r\n /**\r\n * Propagate the state to model and children views.\r\n * @param {AlertListViewState} state - The new state\r\n * @override\r\n * @returns {AlertListView} - The view itself\r\n */\r\n setState({ alertIds = [], alerts = {} } = {}) {\r\n _.each(alertIds, (alertId) => {\r\n ensureChildView(this, `alert(${alertId})`, AlertView, {}, {\r\n ignore: () => {\r\n this.trigger('ignore', {\r\n id: alertId,\r\n alert: alerts[alertId],\r\n });\r\n this.dismiss(alertId);\r\n },\r\n }).setState(alerts[alertId]);\r\n });\r\n\r\n return super.setState({\r\n alertIds,\r\n });\r\n }\r\n\r\n /**\r\n * Collect the state from model and children views.\r\n * @override\r\n * @returns {AlertListViewState} - The state of the view.\r\n */\r\n getState() {\r\n const { alertIds = [] } = super.getState();\r\n\r\n return {\r\n alertIds,\r\n alerts: _.object(alertIds, _.map(alertIds, key => this.getChild(`alert(${key})`).getState())),\r\n };\r\n }\r\n\r\n static newId() {\r\n return _.uniqueId('alert-');\r\n }\r\n\r\n // TODO: [#591704] after Services/AlertService is refactored, ID needs validation to make\r\n // sure it's generated by this component to avoid collision\r\n show(alert, id) {\r\n const {\r\n alertIds,\r\n alerts,\r\n } = this.getState();\r\n\r\n this.setState({\r\n // keep tracking the alert show order by time through the alert Id\r\n alertIds: _.union(alertIds, [id]),\r\n alerts: _.defaults({\r\n [id]: alert,\r\n }, alerts),\r\n });\r\n\r\n return id;\r\n }\r\n\r\n dismiss(alertId) {\r\n const {\r\n alertIds,\r\n } = this.getState();\r\n\r\n updateView(this, {\r\n alertIds: _.without(alertIds, alertId),\r\n });\r\n }\r\n\r\n dismissAll() {\r\n const {\r\n alertIds,\r\n } = this.getState();\r\n\r\n _.each(alertIds, id => this.dismiss(id));\r\n }\r\n\r\n get className() {\r\n return 'alert-center__level';\r\n }\r\n\r\n get attributes() {\r\n return {\r\n role: 'group',\r\n };\r\n }\r\n\r\n get tagName() {\r\n return 'ol';\r\n }\r\n\r\n get template() {\r\n return template;\r\n }\r\n}\r\n","import _ from 'underscore';\r\nimport { DeterministicView } from '@bingads-webui/deterministic-view';\r\nimport template from './template.pug';\r\nimport defaultIcon from './icon.pug';\r\n\r\nconst alertCssClasses = {\r\n Error: 'alert-danger',\r\n Warning: 'alert-warning',\r\n Confirmation: 'alert-success',\r\n Info: 'alert-info',\r\n};\r\n\r\nexport default class AlertView extends DeterministicView {\r\n get attributes() {\r\n return {\r\n role: 'listitem',\r\n };\r\n }\r\n\r\n get tagName() {\r\n return 'li';\r\n }\r\n\r\n get events() {\r\n return {\r\n 'click .alert__action': () => this.getState().action.callback(),\r\n 'click .alert-ignore': () => {\r\n this.trigger('ignore');\r\n this.remove();\r\n },\r\n };\r\n }\r\n\r\n remove() {\r\n this.$el.slideUp();\r\n super.remove();\r\n }\r\n\r\n get template() {\r\n return ({\r\n model,\r\n }) => {\r\n const {\r\n level = 'Confirmation',\r\n hasIcon = false,\r\n customCssClass,\r\n icon = defaultIcon,\r\n dismissible = level !== 'Error',\r\n message,\r\n action,\r\n } = model;\r\n const cssClass = customCssClass || alertCssClasses[level];\r\n\r\n return template({\r\n cssClass,\r\n level,\r\n hasIcon,\r\n icon: _.isFunction(icon) ? icon(model) : icon,\r\n dismissible,\r\n message,\r\n action,\r\n });\r\n };\r\n }\r\n}\r\n","var pug = require(\"!../../../../../node_modules/pug-runtime/index.js\");\n\nfunction template(locals) {var pug_html = \"\", pug_mixins = {}, pug_interp;;var locals_for_with = (locals || {});(function (action, cssClass, dismissible, hasIcon, icon, message) {pug_html = pug_html + \"\\u003Cdiv\" + (pug.attr(\"class\", pug.classes([\"alert\",cssClass], [false,true]), false, true)+\" role=\\\"alert\\\"\") + \"\\u003E\";\nif (hasIcon) {\npug_html = pug_html + (null == (pug_interp = icon) ? \"\" : pug_interp);\n}\npug_html = pug_html + \"\\u003Cdiv class=\\\"alert__content\\\"\\u003E\\u003Cspan class=\\\"alert__message\\\"\\u003E\" + (null == (pug_interp = message) ? \"\" : pug_interp) + \"\\u003C\\u002Fspan\\u003E\";\nif (action) {\npug_html = pug_html + \"\\u003Cbutton class=\\\"btn btn-default alert__action\\\" type=\\\"button\\\"\\u003E\" + (pug.escape(null == (pug_interp = action.message) ? \"\" : pug_interp)) + \"\\u003C\\u002Fbutton\\u003E\";\n}\npug_html = pug_html + \"\\u003C\\u002Fdiv\\u003E\";\nif (dismissible) {\npug_html = pug_html + \"\\u003Cbutton class=\\\"close alert-ignore clickable\\\" type=\\\"button\\\" tabindex=\\\"0\\\"\\u003E\\u003C\\u002Fbutton\\u003E\";\n}\npug_html = pug_html + \"\\u003C\\u002Fdiv\\u003E\";}.call(this,\"action\" in locals_for_with?locals_for_with.action:typeof action!==\"undefined\"?action:undefined,\"cssClass\" in locals_for_with?locals_for_with.cssClass:typeof cssClass!==\"undefined\"?cssClass:undefined,\"dismissible\" in locals_for_with?locals_for_with.dismissible:typeof dismissible!==\"undefined\"?dismissible:undefined,\"hasIcon\" in locals_for_with?locals_for_with.hasIcon:typeof hasIcon!==\"undefined\"?hasIcon:undefined,\"icon\" in locals_for_with?locals_for_with.icon:typeof icon!==\"undefined\"?icon:undefined,\"message\" in locals_for_with?locals_for_with.message:typeof message!==\"undefined\"?message:undefined));;return pug_html;};\nmodule.exports = template;","var pug = require(\"!../../../../../node_modules/pug-runtime/index.js\");\n\nfunction template(locals) {var pug_html = \"\", pug_mixins = {}, pug_interp;pug_html = pug_html + \"\\u003Cspan class=\\\"alert__icon\\\" aria-hidden=\\\"true\\\"\\u003E\\u003C\\u002Fspan\\u003E\";;return pug_html;};\nmodule.exports = template;","var pug = require(\"!../../../../../node_modules/pug-runtime/index.js\");\n\nfunction template(locals) {var pug_html = \"\", pug_mixins = {}, pug_interp;;var locals_for_with = (locals || {});(function (model) {// iterate model.alertIds\n;(function(){\n var $$obj = model.alertIds;\n if ('number' == typeof $$obj.length) {\n for (var pug_index0 = 0, $$l = $$obj.length; pug_index0 < $$l; pug_index0++) {\n var alertId = $$obj[pug_index0];\npug_html = pug_html + \"\\u003Cdiv\" + (pug.attr(\"data-ref\", 'alert(' + alertId + ')', true, true)) + \"\\u003E\\u003C\\u002Fdiv\\u003E\";\n }\n } else {\n var $$l = 0;\n for (var pug_index0 in $$obj) {\n $$l++;\n var alertId = $$obj[pug_index0];\npug_html = pug_html + \"\\u003Cdiv\" + (pug.attr(\"data-ref\", 'alert(' + alertId + ')', true, true)) + \"\\u003E\\u003C\\u002Fdiv\\u003E\";\n }\n }\n}).call(this);\n}.call(this,\"model\" in locals_for_with?locals_for_with.model:typeof model!==\"undefined\"?model:undefined));;return pug_html;};\nmodule.exports = template;","import 'bootstrap';\r\nimport _ from 'underscore';\r\nimport AlertListView from '../alert-list/index';\r\nimport template from './template.pug';\r\n\r\n/**\r\n * Represents a carousel as a list of alerts\r\n */\r\nexport default class AlertCarouselView extends AlertListView {\r\n initialize({\r\n level,\r\n i18n,\r\n }) {\r\n this.i18n = i18n;\r\n this.carouselId = _.uniqueId('alert-carousel-');\r\n super.initialize({ level });\r\n }\r\n\r\n get template() {\r\n return template;\r\n }\r\n}\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__12__;","var pug = require(\"!../../../../../node_modules/pug-runtime/index.js\");\n\nfunction template(locals) {var pug_html = \"\", pug_mixins = {}, pug_interp;;var locals_for_with = (locals || {});(function (String, model, view) {if (model.alertIds.length === 1) {\npug_html = pug_html + \"\\u003Cdiv\" + (pug.attr(\"data-ref\", 'alert(' + model.alertIds[0] + ')', true, true)) + \"\\u003E\\u003C\\u002Fdiv\\u003E\";\n}\nelse\nif (model.alertIds.length > 1) {\nvar carouselTarget = '#' + view.carouselId\nvar reversedAlertIds = model.alertIds.slice().reverse()\npug_html = pug_html + \"\\u003Cdiv\" + (\" class=\\\"carousel slide\\\"\"+pug.attr(\"id\", view.carouselId, true, true)+\" data-ride=\\\"carousel\\\" data-interval=\\\"false\\\"\") + \"\\u003E\\u003Cdiv class=\\\"alert-center__pager\\\"\\u003E\\u003Ca\" + (\" class=\\\"left carousel-control\\\"\"+pug.attr(\"href\", carouselTarget, true, true)+\" role=\\\"button\\\" data-slide=\\\"prev\\\"\"+pug.attr(\"aria-label\", view.i18n.getString('Alert_CarouselPagination_Previous'), true, true)) + \"\\u003E\\u003Cspan class=\\\"glyphicon glyphicon-chevron-left\\\" aria-hidden=\\\"true\\\"\\u003E\\u003C\\u002Fspan\\u003E\\u003C\\u002Fa\\u003E\\u003Col class=\\\"carousel-indicators\\\"\\u003E\";\n// iterate reversedAlertIds\n;(function(){\n var $$obj = reversedAlertIds;\n if ('number' == typeof $$obj.length) {\n for (var index = 0, $$l = $$obj.length; index < $$l; index++) {\n var alertId = $$obj[index];\npug_html = pug_html + \"\\u003Cli\" + (pug.attr(\"class\", pug.classes([index === 0 ? 'active' : ''], [true]), false, true)+pug.attr(\"data-target\", carouselTarget, true, true)+pug.attr(\"data-slide-to\", String(index), true, true)) + \"\\u003E\" + (pug.escape(null == (pug_interp = view.i18n.getString('Alert_CarouselPagination', { page: index+1, total: reversedAlertIds.length })) ? \"\" : pug_interp)) + \"\\u003C\\u002Fli\\u003E\";\n }\n } else {\n var $$l = 0;\n for (var index in $$obj) {\n $$l++;\n var alertId = $$obj[index];\npug_html = pug_html + \"\\u003Cli\" + (pug.attr(\"class\", pug.classes([index === 0 ? 'active' : ''], [true]), false, true)+pug.attr(\"data-target\", carouselTarget, true, true)+pug.attr(\"data-slide-to\", String(index), true, true)) + \"\\u003E\" + (pug.escape(null == (pug_interp = view.i18n.getString('Alert_CarouselPagination', { page: index+1, total: reversedAlertIds.length })) ? \"\" : pug_interp)) + \"\\u003C\\u002Fli\\u003E\";\n }\n }\n}).call(this);\n\npug_html = pug_html + \"\\u003C\\u002Fol\\u003E\\u003Ca\" + (\" class=\\\"right carousel-control\\\"\"+pug.attr(\"href\", carouselTarget, true, true)+\" role=\\\"button\\\" data-slide=\\\"next\\\"\"+pug.attr(\"aria-label\", view.i18n.getString('Alert_CarouselPagination_Next'), true, true)) + \"\\u003E\\u003Cspan class=\\\"glyphicon glyphicon-chevron-right\\\" aria-hidden=\\\"true\\\"\\u003E\\u003C\\u002Fspan\\u003E\\u003C\\u002Fa\\u003E\\u003C\\u002Fdiv\\u003E\\u003Cdiv class=\\\"carousel-inner\\\" role=\\\"listbox\\\"\\u003E\";\n// iterate reversedAlertIds\n;(function(){\n var $$obj = reversedAlertIds;\n if ('number' == typeof $$obj.length) {\n for (var index = 0, $$l = $$obj.length; index < $$l; index++) {\n var alertId = $$obj[index];\npug_html = pug_html + \"\\u003Cdiv\" + (pug.attr(\"class\", pug.classes([\"item\",index === 0 ? 'active' : ''], [false,true]), false, true)) + \"\\u003E\\u003Cdiv\" + (pug.attr(\"data-ref\", 'alert(' + alertId + ')', true, true)) + \"\\u003E\\u003C\\u002Fdiv\\u003E\\u003C\\u002Fdiv\\u003E\";\n }\n } else {\n var $$l = 0;\n for (var index in $$obj) {\n $$l++;\n var alertId = $$obj[index];\npug_html = pug_html + \"\\u003Cdiv\" + (pug.attr(\"class\", pug.classes([\"item\",index === 0 ? 'active' : ''], [false,true]), false, true)) + \"\\u003E\\u003Cdiv\" + (pug.attr(\"data-ref\", 'alert(' + alertId + ')', true, true)) + \"\\u003E\\u003C\\u002Fdiv\\u003E\\u003C\\u002Fdiv\\u003E\";\n }\n }\n}).call(this);\n\npug_html = pug_html + \"\\u003C\\u002Fdiv\\u003E\\u003C\\u002Fdiv\\u003E\";\n}}.call(this,\"String\" in locals_for_with?locals_for_with.String:typeof String!==\"undefined\"?String:undefined,\"model\" in locals_for_with?locals_for_with.model:typeof model!==\"undefined\"?model:undefined,\"view\" in locals_for_with?locals_for_with.view:typeof view!==\"undefined\"?view:undefined));;return pug_html;};\nmodule.exports = template;","var pug = require(\"!../../../../../node_modules/pug-runtime/index.js\");\n\nfunction template(locals) {var pug_html = \"\", pug_mixins = {}, pug_interp;;var locals_for_with = (locals || {});(function (levels) {pug_html = pug_html + \"\\u003Cdiv class=\\\"alert-center\\\"\\u003E\\u003Col role=\\\"list\\\"\\u003E\";\n// iterate levels\n;(function(){\n var $$obj = levels;\n if ('number' == typeof $$obj.length) {\n for (var pug_index0 = 0, $$l = $$obj.length; pug_index0 < $$l; pug_index0++) {\n var level = $$obj[pug_index0];\npug_html = pug_html + \"\\u003Cli role=\\\"listitem\\\"\\u003E\\u003Cdiv\" + (pug.attr(\"data-ref\", 'level(' + level + ')', true, true)) + \"\\u003E\\u003C\\u002Fdiv\\u003E\\u003C\\u002Fli\\u003E\";\n }\n } else {\n var $$l = 0;\n for (var pug_index0 in $$obj) {\n $$l++;\n var level = $$obj[pug_index0];\npug_html = pug_html + \"\\u003Cli role=\\\"listitem\\\"\\u003E\\u003Cdiv\" + (pug.attr(\"data-ref\", 'level(' + level + ')', true, true)) + \"\\u003E\\u003C\\u002Fdiv\\u003E\\u003C\\u002Fli\\u003E\";\n }\n }\n}).call(this);\n\npug_html = pug_html + \"\\u003C\\u002Fol\\u003E\\u003C\\u002Fdiv\\u003E\";}.call(this,\"levels\" in locals_for_with?locals_for_with.levels:typeof levels!==\"undefined\"?levels:undefined));;return pug_html;};\nmodule.exports = template;","export { generateFilterConverter } from './src/filter-converter';\r\nexport { OperatorMapping, OperatorIdMapping } from './src/constants';\r\n","import _ from 'underscore';\r\nimport { OperatorMapping, OperatorIdMapping } from './constants';\r\n\r\nexport const generateFilterConverter = ({ columnEnums } = {}) => {\r\n /*\r\n * For example, convert\r\n * { AccountStatus: { $eq: ['Enum.AccountStatus\\'1\\''] } }\r\n * to\r\n * { Field: 'AccountStatus', Operator: '0', Values: '1' }\r\n */\r\n const convertOneQuery = (query) => {\r\n if (_.isEmpty(query)) {\r\n return {};\r\n }\r\n\r\n const key = _.keys(query)[0];\r\n const operatorObj = _.values(query)[0];\r\n const operator = _.keys(operatorObj)[0];\r\n const valueOrigin = _.values(operatorObj)[0];\r\n const value = _.isString(valueOrigin) ? valueOrigin : valueOrigin[0].replace(/\\D+(\\d+)\\D+/, '$1'); // for example, convert \"Enum.Severity'3'\" to 3\r\n\r\n // to match CCMT Predicate\r\n return {\r\n Field: key,\r\n Operator: OperatorMapping[operator].toString(),\r\n Values: value.trim(),\r\n };\r\n };\r\n\r\n /*\r\n * For example, convert\r\n * {\r\n * $and: [\r\n * { AccountStatus: { $eq: ['Enum.AccountStatus\\'1\\''] } },\r\n * { AccountNumber: { $contains: 'abc' } },\r\n * ],\r\n * }\r\n * to\r\n * [\r\n * { Field: 'AccountStatus', Operator: '0', Values: '1' },\r\n * { Field: 'AccountNumber', Operator: '2', Values: 'abc' },\r\n * ]\r\n */\r\n const convertFilterQueryToPredicateArray = (query, {\r\n oneQueryConverter = convertOneQuery,\r\n } = {}) => {\r\n let queryList = [];\r\n\r\n if (!_.isObject(query) || _.isArray(query)) {\r\n throw Error('Filter query is not an object!');\r\n }\r\n\r\n if (_.isEmpty(query) || (query.$and && _.isEmpty(query.$and))) {\r\n return queryList;\r\n }\r\n\r\n if (query.$and) {\r\n queryList = _.map(query.$and, oneQueryConverter);\r\n } else {\r\n queryList = [oneQueryConverter(query)];\r\n }\r\n\r\n return _.flatten(queryList);\r\n };\r\n\r\n /*\r\n * For example, convert\r\n * { Field: 'AccountStatus', Operator: '0', Values: '1' }\r\n * to\r\n * { AccountStatus: { $eq: ['Enum.AccountStatus\\'1\\''] } }\r\n */\r\n const convertOnePredicate = (predicate) => {\r\n if (_.isEmpty(predicate)) {\r\n return {};\r\n }\r\n\r\n const { Field, Operator, Values } = predicate;\r\n\r\n return {\r\n [Field]: {\r\n [OperatorIdMapping[Operator]]: _.has(columnEnums, Field) ? [`Enum.${Field}'${Values}'`] : Values, // for example, convert 3 to \"Enum.Severity'3'\"\r\n },\r\n };\r\n };\r\n\r\n /*\r\n * For example, convert\r\n * [\r\n * { Field: 'AccountStatus', Operator: '0', Values: '1' },\r\n * { Field: 'AccountNumber', Operator: '2', Values: 'abc' },\r\n * ]\r\n * to\r\n * {\r\n * $and: [\r\n * { AccountStatus: { $eq: ['Enum.AccountStatus\\'1\\''] } },\r\n * { AccountNumber: { $contains: 'abc' } },\r\n * ],\r\n * }\r\n */\r\n const convertPredicateArrayToFilterQuery = (predicates, {\r\n onePredicateConverter = convertOnePredicate,\r\n } = {}) => {\r\n if (!_.isArray(predicates)) {\r\n throw Error('Predicates are not an array!');\r\n }\r\n\r\n switch (predicates.length) {\r\n case 0:\r\n return {};\r\n case 1:\r\n return onePredicateConverter(predicates[0]);\r\n default:\r\n return {\r\n $and: _.map(predicates, onePredicateConverter),\r\n };\r\n }\r\n };\r\n\r\n return {\r\n convertOneQuery,\r\n convertFilterQueryToPredicateArray,\r\n convertOnePredicate,\r\n convertPredicateArrayToFilterQuery,\r\n };\r\n};\r\n","import _ from 'underscore';\r\n\r\nexport const OperatorMapping = {\r\n $eq: 0,\r\n $neq: 1,\r\n $contains: 2,\r\n $gte: 4,\r\n $doesnotcontain: 7,\r\n $gt: 8,\r\n $lt: 9,\r\n};\r\n\r\nexport const OperatorIdMapping = _.invert(OperatorMapping);\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__3__;","module.exports = __WEBPACK_EXTERNAL_MODULE__4__;","module.exports = __WEBPACK_EXTERNAL_MODULE__33__;","module.exports = __WEBPACK_EXTERNAL_MODULE__44__;","module.exports = __WEBPACK_EXTERNAL_MODULE__45__;","export * from './src/components';\r\nexport * from './src/layout-templates';\r\n","export * from './blockers';\r\nexport * from './footers';\r\nexport * from './buttons';\r\nexport * from './cancel-dialog';\r\nexport * from './confirm-dialog';\r\nexport * from './title-bars';\r\n","import React, { useContext } from 'react';\r\n\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\nimport { UiBlocker } from '@bingads-webui-fluent-component/ui-blocker';\r\n\r\nimport { useFormService, FORM_STATES } from '@bingads-webui-react/form-core';\r\n\r\ninterface BusyBlockerProps {\r\n children: React.ReactNode;\r\n loadingText?: string;\r\n}\r\nexport const BusyBlocker: React.FC = ({ children, loadingText, ...restProps }) => {\r\n const i18n = useContext(I18nContext) as any;\r\n\r\n const { state } = useFormService();\r\n const isLoading = state.matches(FORM_STATES.LOADING) || state.matches(FORM_STATES.FETCHING);\r\n const isSaving = state.matches(FORM_STATES.SAVING);\r\n const defaultLoadingText = isLoading ? i18n.getString(_TL_('Loading...')) : i18n.getString(_TL_('Saving...'));\r\n\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n};\r\nBusyBlocker.defaultProps = {\r\n loadingText: '',\r\n};\r\n\r\ninterface SaveBlockerProps {\r\n children: React.ReactNode;\r\n loadingText?: string;\r\n}\r\nexport const SaveBlocker: React.FC = ({ children, loadingText, ...restProps }) => {\r\n const i18n = useContext(I18nContext) as any;\r\n\r\n const { state } = useFormService();\r\n const isSaving = state.matches(FORM_STATES.SAVING);\r\n\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n};\r\nSaveBlocker.defaultProps = {\r\n loadingText: '',\r\n};\r\n\r\ninterface LoadingBlockerProps {\r\n children: React.ReactNode;\r\n loadingText?: string;\r\n}\r\nexport const LoadBlocker: React.FC = ({ children, loadingText, ...restProps }) => {\r\n const i18n = useContext(I18nContext) as any;\r\n\r\n const { state } = useFormService();\r\n const isLoading = state.matches(FORM_STATES.LOADING) || state.matches(FORM_STATES.FETCHING);\r\n\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n};\r\nLoadBlocker.defaultProps = {\r\n loadingText: '',\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__58__;","import React from 'react';\r\nimport {\r\n mergeClasses,\r\n makeStyles,\r\n shorthands,\r\n} from '@fluentui/react-components';\r\n\r\nimport { SaveButton, CancelButton } from './buttons';\r\n\r\nconst useBasicFooterStyles = makeStyles({\r\n footer: {\r\n display: 'flex',\r\n flexDirection: 'row',\r\n flexWrap: 'wrap',\r\n ...shorthands.gap('8px'),\r\n '& button': {\r\n minWidth: 'fit-content',\r\n },\r\n },\r\n});\r\n\r\ninterface BasicFooterProps {\r\n saveButtonText?: string;\r\n saveDisabled?: boolean;\r\n cancelButtonText?: string;\r\n classes?: {\r\n root?: string;\r\n };\r\n}\r\n\r\nexport const BasicFooter: React.FC = (props) => {\r\n const {\r\n saveButtonText,\r\n saveDisabled,\r\n cancelButtonText,\r\n } = props;\r\n const classes = useBasicFooterStyles();\r\n\r\n return (\r\n
\r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nBasicFooter.defaultProps = {\r\n saveButtonText: undefined,\r\n saveDisabled: false,\r\n cancelButtonText: undefined,\r\n};\r\n","import React, { useCallback, useContext } from 'react';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\nimport { Button } from '@fluentui/react-components';\r\nimport { FORM_EVENTS, FORM_STATES, useFormService } from '@bingads-webui-react/form-core';\r\n\r\ninterface SaveButtonProps {\r\n buttonText?: string;\r\n disabled?: boolean;\r\n appearance?: 'primary' | 'secondary' | 'outline' | 'subtle' | 'transparent';\r\n}\r\nexport const SaveButton: React.FC = ({ buttonText, disabled, appearance }) => {\r\n const i18n = useContext(I18nContext) as any;\r\n\r\n const { state, send } = useFormService();\r\n const isBlocking = state.matches(FORM_STATES.FETCHING) || state.matches(FORM_STATES.LOADING) || state.matches(FORM_STATES.SAVING);\r\n\r\n const onSaveClicked = useCallback(() => {\r\n send(FORM_EVENTS.SAVE);\r\n }, [send]);\r\n\r\n return (\r\n \r\n {buttonText || i18n.getString(_TL_('Save'))}\r\n \r\n );\r\n};\r\nSaveButton.defaultProps = {\r\n buttonText: undefined,\r\n disabled: false,\r\n};\r\n\r\ninterface CancelButtonProps {\r\n buttonText?: string;\r\n appearance?: 'primary' | 'secondary' | 'outline' | 'subtle' | 'transparent';\r\n}\r\nexport const CancelButton: React.FC = ({ buttonText, appearance }) => {\r\n const i18n = useContext(I18nContext) as any;\r\n\r\n const { state, send } = useFormService();\r\n const isBlocking = state.matches(FORM_STATES.FETCHING) || state.matches(FORM_STATES.LOADING) || state.matches(FORM_STATES.SAVING);\r\n\r\n const onCancelClicked = useCallback(() => {\r\n send(FORM_EVENTS.CANCEL);\r\n }, [send]);\r\n\r\n return (\r\n \r\n {buttonText || i18n.getString(_TL_('Cancel'))}\r\n \r\n );\r\n};\r\nCancelButton.defaultProps = {\r\n buttonText: undefined,\r\n};\r\n","import _ from 'underscore';\r\nimport React, { useCallback, useContext, useMemo } from 'react';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\nimport {\r\n Dialog,\r\n DialogSurface,\r\n DialogBody,\r\n DialogTitle,\r\n DialogContent,\r\n DialogActions,\r\n Button,\r\n mergeClasses,\r\n} from '@fluentui/react-components';\r\nimport { useFormService, FORM_STATES, FORM_EVENTS } from '@bingads-webui-react/form-core';\r\n\r\ninterface IDialogConfig {\r\n disableConfirmPopup?: boolean,\r\n className?: string,\r\n title?: string,\r\n content?: string,\r\n confirmText?: string,\r\n abortText?: string,\r\n onConfirmFn?: () => void,\r\n onCancelFn?: () => void,\r\n}\r\n\r\ninterface CancelDialogProps {\r\n config?: IDialogConfig | ((stateMatch?) => any);\r\n}\r\n\r\nexport const CancelDialog: React.FC = (props) => {\r\n const i18n = useContext(I18nContext) as any;\r\n const { state, send } = useFormService();\r\n const showDialog = state.matches(FORM_STATES.CANCELING);\r\n const useConfig = useMemo(() => (_.isFunction(props.config) ? props.config : () => props.config), [props.config]);\r\n\r\n const {\r\n className = null,\r\n title = null,\r\n content = null,\r\n confirmText = null,\r\n abortText = null,\r\n onConfirmFn = null,\r\n onCancelFn = null,\r\n } = useConfig(showDialog) || {};\r\n\r\n const onConfirm = useCallback(() => {\r\n if (onConfirmFn) {\r\n onConfirmFn();\r\n }\r\n send(FORM_EVENTS.CONFIRM_CANCEL);\r\n }, [onConfirmFn, send]);\r\n\r\n const onCancel = useCallback(() => {\r\n if (onCancelFn) {\r\n onCancelFn();\r\n }\r\n send(FORM_EVENTS.ABORT_CANCEL);\r\n }, [onCancelFn, send]);\r\n\r\n return (\r\n \r\n \r\n \r\n {title || i18n.getString(_TL_('Are you sure you want to exit?'))}\r\n \r\n {content || i18n.getString(_TL_('You have unsaved changes that could be lost.'))}\r\n \r\n \r\n \r\n {confirmText || i18n.getString(_TL_('Yes'))}\r\n \r\n \r\n {abortText || i18n.getString(_TL_('No'))}\r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n","import _ from 'underscore';\r\nimport React, {\r\n useCallback, useContext, useEffect, useMemo,\r\n} from 'react';\r\nimport { I18nContext } from '@bingads-webui-react/i18n-context';\r\nimport {\r\n Dialog,\r\n DialogSurface,\r\n DialogBody,\r\n DialogTitle,\r\n DialogContent,\r\n DialogActions,\r\n Button,\r\n mergeClasses,\r\n} from '@fluentui/react-components';\r\nimport { useFormService, FORM_STATES, FORM_EVENTS } from '@bingads-webui-react/form-core';\r\n\r\ninterface IDialogConfig {\r\n disableConfirmPopup?: boolean,\r\n className?: string,\r\n title?: string,\r\n content?: string,\r\n confirmText?: string,\r\n abortText?: string,\r\n onConfirmFn?: () => void,\r\n onCancelFn?: () => void,\r\n}\r\n\r\ninterface ConfirmDialogProps {\r\n config?: IDialogConfig | ((stateMatch?) => any);\r\n}\r\n\r\nexport const ConfirmDialog: React.FC = (props) => {\r\n const i18n = useContext(I18nContext) as any;\r\n const { state, send } = useFormService();\r\n const shouldShowConfirmDialog = state.matches(FORM_STATES.CONFIRMING);\r\n const useConfig = useMemo(() => (_.isFunction(props.config) ? props.config : () => props.config), [props.config]);\r\n\r\n const {\r\n disableConfirmPopup = false,\r\n className = null,\r\n title = null,\r\n content = null,\r\n confirmText = null,\r\n abortText = null,\r\n onConfirmFn = null,\r\n onCancelFn = null,\r\n } = useConfig(shouldShowConfirmDialog) || {};\r\n\r\n const onConfirm = useCallback(() => {\r\n if (onConfirmFn) {\r\n onConfirmFn();\r\n }\r\n send(FORM_EVENTS.CONFIRM_SAVE);\r\n }, [onConfirmFn, send]);\r\n\r\n const onCancel = useCallback(() => {\r\n if (onCancelFn) {\r\n onCancelFn();\r\n }\r\n send(FORM_EVENTS.ABORT_SAVE);\r\n }, [onCancelFn, send]);\r\n\r\n useEffect(() => {\r\n if (disableConfirmPopup && shouldShowConfirmDialog) {\r\n onConfirm();\r\n }\r\n }, [disableConfirmPopup, onConfirm, shouldShowConfirmDialog]);\r\n\r\n return (\r\n \r\n \r\n \r\n {title || i18n.getString(_TL_('Are you sure you want to save these changes?'))}\r\n \r\n {content || i18n.getString(_TL_('Please review your modifications before proceeding.'))}\r\n \r\n \r\n \r\n {confirmText || i18n.getString(_TL_('Yes, save changes'))}\r\n \r\n \r\n {abortText || i18n.getString(_TL_('Cancel'))}\r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n","import React, { useCallback } from 'react';\r\nimport { useResponsiveSize } from '@bingads-webui-react/with-responsive-size';\r\nimport { useFormService, FORM_EVENTS } from '@bingads-webui-react/form-core';\r\nimport { Dismiss20Regular } from '@fluentui/react-icons';\r\nimport {\r\n Button,\r\n mergeClasses,\r\n makeStyles,\r\n shorthands,\r\n tokens,\r\n} from '@fluentui/react-components';\r\nimport { DrawerHeaderTitle } from '@fluentui/react-drawer';\r\n\r\nconst useTitleBarStyles = makeStyles({\r\n stack: {\r\n minHeight: '60px',\r\n display: 'flex',\r\n flexDirection: 'row',\r\n justifyContent: 'space-between',\r\n alignItems: 'center',\r\n backgroundColor: tokens.colorNeutralBackground2,\r\n ...shorthands.padding('14px', '24px'),\r\n ...shorthands.gap('8px'),\r\n },\r\n title: {\r\n fontSize: tokens.fontSizeBase500,\r\n fontWeight: tokens.fontWeightBold,\r\n lineHeight: tokens.lineHeightBase500,\r\n },\r\n 'title-s': {\r\n fontSize: tokens.fontSizeBase400,\r\n lineHeight: tokens.lineHeightBase400,\r\n },\r\n 'title-m': {\r\n fontSize: tokens.fontSizeBase400,\r\n lineHeight: tokens.lineHeightBase400,\r\n },\r\n});\r\n\r\ninterface TitleBarProps {\r\n classes?: {\r\n root?: string;\r\n };\r\n title: string | React.ReactNode;\r\n hideCloseButton?: boolean;\r\n}\r\n\r\nexport const TitleBar: React.FC = (props) => {\r\n const classes = useTitleBarStyles();\r\n const displayMode = useResponsiveSize();\r\n const { send } = useFormService();\r\n const onCancelClicked = useCallback(() => {\r\n send(FORM_EVENTS.CANCEL);\r\n }, [send]);\r\n\r\n if (!props.title) {\r\n return null;\r\n }\r\n\r\n return (\r\n
\r\n
{props.title}
\r\n {!props.hideCloseButton\r\n && (\r\n }\r\n onClick={onCancelClicked}\r\n />\r\n )}\r\n
\r\n );\r\n};\r\n\r\nexport const PanelTitleBar: React.FC = (props) => {\r\n const { send } = useFormService();\r\n const onCancelClicked = useCallback(() => {\r\n send(FORM_EVENTS.CANCEL);\r\n }, [send]);\r\n\r\n if (!props.title) {\r\n return null;\r\n }\r\n\r\n return (\r\n }\r\n onClick={onCancelClicked}\r\n />\r\n )}\r\n >\r\n {props.title}\r\n \r\n );\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__64__;","module.exports = __WEBPACK_EXTERNAL_MODULE__65__;","export * from './page';\r\nexport * from './panel';\r\n","import React from 'react';\r\nimport {\r\n mergeClasses,\r\n makeStyles,\r\n shorthands,\r\n tokens,\r\n} from '@fluentui/react-components';\r\n\r\nconst usePageTemplateStyles = makeStyles({\r\n pageLayout: {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n height: '100%',\r\n width: '100%',\r\n },\r\n mainContainer: {\r\n height: '100%',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n },\r\n contentContainer: {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n backgroundColor: tokens.colorNeutralBackground2,\r\n ...shorthands.flex(1),\r\n ...shorthands.overflow('auto'),\r\n ...shorthands.padding('0px', '24px'),\r\n },\r\n footerContainer: {},\r\n});\r\n\r\ninterface PageTemplateProps {\r\n items: {\r\n Blocker: React.FC;\r\n TitleBar: React.FC;\r\n Content: React.FC;\r\n Footer: React.FC;\r\n CancelDialog: React.FC;\r\n ConfirmDialog: React.FC;\r\n };\r\n}\r\n\r\nexport const PageTemplate: React.FC = ({ items }) => {\r\n const {\r\n Blocker = React.Fragment,\r\n TitleBar,\r\n Content,\r\n Footer,\r\n CancelDialog,\r\n ConfirmDialog,\r\n } = items;\r\n const classes = usePageTemplateStyles();\r\n\r\n return (\r\n
\r\n \r\n
\r\n {TitleBar && }\r\n
\r\n \r\n
\r\n {Footer\r\n && (\r\n
\r\n
\r\n
\r\n )}\r\n
\r\n
\r\n {CancelDialog && }\r\n {ConfirmDialog && }\r\n
\r\n );\r\n};\r\n","import React, { useEffect } from 'react';\r\nimport { useFormService, FORM_EVENTS } from '@bingads-webui-react/form-core';\r\nimport {\r\n mergeClasses,\r\n makeStyles,\r\n} from '@fluentui/react-components';\r\nimport {\r\n DrawerBody,\r\n DrawerHeader,\r\n DrawerFooter,\r\n Drawer,\r\n} from '@fluentui/react-drawer';\r\n\r\nconst usePanelTemplateStyles = makeStyles({\r\n panelLayout: {},\r\n});\r\n\r\ninterface PanelTemplateProps {\r\n items: {\r\n Blocker: React.FC;\r\n TitleBar: React.FC;\r\n Content: React.FC;\r\n Footer: React.FC;\r\n CancelDialog: React.FC;\r\n ConfirmDialog: React.FC;\r\n };\r\n isOpen: boolean;\r\n className?: string;\r\n}\r\n\r\nexport const PanelTemplate: React.FC = ({\r\n items, isOpen, className, ...restProps\r\n}) => {\r\n const {\r\n Blocker = React.Fragment,\r\n TitleBar,\r\n Content,\r\n Footer,\r\n CancelDialog,\r\n ConfirmDialog,\r\n } = items;\r\n const classes = usePanelTemplateStyles();\r\n const { send } = useFormService();\r\n\r\n useEffect(() => {\r\n if (isOpen) {\r\n send(FORM_EVENTS.LOAD);\r\n }\r\n }, [isOpen, send]);\r\n\r\n return (\r\n \r\n {TitleBar\r\n && (\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n {CancelDialog && }\r\n {ConfirmDialog && }\r\n \r\n \r\n {Footer\r\n && (\r\n \r\n
\r\n \r\n )}\r\n \r\n );\r\n};\r\n","export * from '@bingads-webui-react/form-core';\r\nexport * from '@bingads-webui-fluent-component/form-ui-library';\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__34__;","export * from './src';\r\n","import React, { useCallback, useState } from 'react';\r\nimport {\r\n Card, CardProps, Radio, Tooltip, makeStyles, mergeClasses,\r\n shorthands,\r\n tokens,\r\n} from '@fluentui/react-components';\r\n\r\nconst useSelectableCard = makeStyles({\r\n root: {\r\n '&::after': {\r\n ...shorthands.borderRadius('calc(var(--fui-Card--border-radius) - 1px)'),\r\n },\r\n },\r\n rootEnabled: {\r\n '&:hover': { backgroundColor: tokens.colorNeutralBackground1Hover },\r\n '&:active': { backgroundColor: tokens.colorNeutralBackground1Pressed },\r\n },\r\n rootDisabled: { backgroundColor: tokens.colorNeutralBackground1Hover },\r\n selectionBorder: {\r\n ...shorthands.borderWidth(tokens.strokeWidthThick),\r\n ...shorthands.borderStyle('solid'),\r\n ...shorthands.borderColor(tokens.colorBrandBackground),\r\n },\r\n selectionBorderEnabled: {\r\n ...shorthands.borderColor(tokens.colorBrandBackground),\r\n '&:hover': shorthands.borderColor(tokens.colorBrandBackgroundHover),\r\n '&:active': shorthands.borderColor(tokens.colorBrandBackgroundPressed),\r\n },\r\n selectionBorderDisabled: {\r\n ...shorthands.borderColor(tokens.colorNeutralStrokeDisabled),\r\n },\r\n});\r\n\r\ninterface MyProps {\r\n className?: string;\r\n size?: CardProps['size'];\r\n appearance?: CardProps['appearance'];\r\n disabled?: boolean;\r\n selected?: boolean;\r\n tooltipText?: string;\r\n ariaLabel?: string;\r\n onSelect?: () => void;\r\n}\r\n\r\nexport const SelectableCard: React.FC> = ({\r\n className, size, appearance, disabled, selected, tooltipText, ariaLabel, children, onSelect,\r\n}) => {\r\n const classes = useSelectableCard();\r\n const [showTooltip, setShowTooltip] = useState(false);\r\n\r\n const showSelectionBorder = appearance !== 'filled' && selected;\r\n\r\n const FloatingActionWrapper = useCallback(({ children: wrapped }) => {\r\n if (!tooltipText) { return wrapped; }\r\n\r\n return (\r\n \r\n {wrapped}\r\n \r\n );\r\n }, [showTooltip, tooltipText]);\r\n\r\n return (\r\n \r\n onSelect()}\r\n />\r\n \r\n )}\r\n onMouseEnter={() => setShowTooltip(true)}\r\n onMouseLeave={() => setShowTooltip(false)}\r\n onClick={() => !disabled && onSelect()}\r\n >\r\n {children}\r\n \r\n );\r\n};\r\n\r\nSelectableCard.defaultProps = {\r\n className: undefined,\r\n size: 'medium',\r\n appearance: 'outline',\r\n disabled: false,\r\n selected: undefined,\r\n tooltipText: undefined,\r\n onSelect: undefined,\r\n};\r\n","export * from './src';\r\n","export * from '@bingads-webui-fluent-component/wizard-ui-library';\r\nexport {\r\n useWizardService,\r\n WizardConfigPropsShape,\r\n WIZARD_EVENTS,\r\n STEP_STATES,\r\n STEP_EVENTS,\r\n Layout,\r\n StepContainer,\r\n getStepState,\r\n matchStepState,\r\n getCurrentStepId,\r\n getCurrentFlow,\r\n getIsFirstStep,\r\n getIsLastStep,\r\n getFlowFactors,\r\n getFlowFactor,\r\n getWizardData,\r\n getStepContexts,\r\n getStepData,\r\n getIsStepValid,\r\n getIsStepSaveFailed,\r\n getVisitedSteps,\r\n getIsStepVisited,\r\n useSimpleRepository,\r\n createSimpleStep,\r\n} from '@bingads-webui-react/wizard-core';\r\nexport { Wizard } from './wizard';\r\nexport { LayoutContainer } from './layout-container';\r\nexport { DefaultLayoutContainer } from './default-layout-container';\r\nexport { DemoStepInWizard } from './demo-step-in-wizard';\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__278__;","module.exports = __WEBPACK_EXTERNAL_MODULE__279__;","import React, { useMemo } from 'react';\r\nimport { Wizard as OriginalWizard, IWizardProps } from '@bingads-webui-react/wizard-core';\r\n\r\nimport { defaultConfig } from './default-config';\r\n\r\nexport const Wizard: React.FC = (props) => {\r\n const {\r\n config,\r\n children,\r\n } = props;\r\n\r\n const mergedConfig = useMemo(() => ({\r\n ...defaultConfig,\r\n ...config,\r\n }), [config]);\r\n\r\n const { render } = mergedConfig;\r\n\r\n return (\r\n \r\n {children || render(config)}\r\n \r\n );\r\n};\r\n","import React from 'react';\r\nimport { DefaultLayoutContainer } from './default-layout-container';\r\n\r\nexport const defaultConfig = {\r\n render: (config) => ,\r\n};\r\n","import React from 'react';\r\nimport { Layout, StepContainer, LayoutContainer } from '@bingads-webui-react/wizard-core';\r\nimport {\r\n BasicTopBar,\r\n StepList,\r\n StepBar,\r\n BasicStepFooter,\r\n SummaryPanel,\r\n DefaultTemplate,\r\n BusyBlocker,\r\n CancelWizardDialog,\r\n} from '@bingads-webui-fluent-component/wizard-ui-library';\r\n\r\nexport const DefaultLayoutContainer = (config) => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","import React from 'react';\r\nimport { LayoutContainer as OriginalLayoutContainer } from '@bingads-webui-react/wizard-core';\r\nimport { DefaultTemplate } from '@bingads-webui-fluent-component/wizard-ui-library';\r\n\r\nexport const LayoutContainer: React.FC> = (props) => {\r\n const {\r\n template,\r\n ...restProps\r\n } = props;\r\n\r\n return (\r\n \r\n );\r\n};\r\n","import React, { useMemo } from 'react';\r\nimport { DemoStepInWizard as OriginalDemoStepInWizard } from '@bingads-webui-react/wizard-core';\r\n\r\nimport { defaultConfig } from './default-config';\r\n\r\nexport const DemoStepInWizard = (props) => {\r\n const mergedProps = useMemo(() => ({\r\n ...defaultConfig,\r\n ...props,\r\n }), [props]);\r\n\r\n return (\r\n \r\n );\r\n};\r\n","export * from './src/legacy-keys';\r\n\r\n","// This is exported through bingadsHeaderLocalization\r\nexport const customerSelectorLocalization = {\r\n CustomerSelector_ViewAllCustomers: _TL_('View all customers'),\r\n CustomerSelector_ManageCustomers: _TL_('Manage access'),\r\n CustomerSelector_Default: _TL_('Default customer'),\r\n CustomerSelector_Recent: _TL_('Recently viewed customers'),\r\n CustomerSelector_DefaultCustomerDisplayNameFormat: _TL_('{0} (default)'),\r\n CustomerSelector_SingleAccountCountText: _TL_('{0} account'),\r\n CustomerSelector_MultipleAccountsCountText: _TL_('{0} accounts'),\r\n CustomerSelector_Loading: _TL_('Loading ...'),\r\n Customers_Selection_SearchBox_DefaultText: _TL_('Enter customer name or ID'),\r\n ManagerAccount_Selection_SearchBox_DefaultText: _TL_('Enter manager account name, number or ID'),\r\n};\r\n\r\nexport const bingadsHeaderLocalization = {\r\n Header_Title: _TL_('Microsoft Advertising'),\r\n Header_Skip: _TL_('Skip to main content'),\r\n BingadsHeader_Gear_Tooltip: _TL_('Accounts & Billing, My Settings, Sign Out, Contact Us, Start Live Chat'),\r\n Header_Gear_Tooltip_NewUI: _TL_('Billing & Payments, Account Access, Settings, Sign Out, Contact Us, Start Live Chat'),\r\n BingadsHeader_AccountAccess: _TL_('Account Access'),\r\n BingadsHeader_BillingAndPayments: _TL_('Billing & Payments'),\r\n BingadsHeader_ManagerAccounts: _TL_('View All Manager Accounts'),\r\n BingadsHeader_Accounts: _TL_('Accounts & Billing'),\r\n BingadsHeader_MySettings: _TL_('My Settings'),\r\n BingadsHeader_NotificationSettings: _TL_('Notification Settings'),\r\n BingadsHeader_CentralizedSettings: _TL_('Settings'),\r\n BingadsHeader_Feedback: _TL_('Send Feedback'),\r\n BingadsHeader_Support: _TL_('Support'),\r\n BingadsHeader_LogOut: _TL_('Sign Out'),\r\n BingadsHeader_AccountsSummary_Caption: _TL_('Accounts Summary'),\r\n BingadsHeader_AccountsSummary_ToolTip: _TL_('Accounts Summary'),\r\n BingadsHeader_ManagerDashboard_Caption: _TL_('Accounts'),\r\n BingadsHeader_ManagerDashboard_ToolTip: _TL_('Accounts'),\r\n BingadsHeader_Home_Caption: _TL_('Home'),\r\n BingadsHeader_Home_ToolTip: _TL_('Home'),\r\n BingadsHeader_Ucm_Caption: _TL_('Dashboard'),\r\n BingadsHeader_Ucm_ToolTip: _TL_('Dashboard'),\r\n BingadsHeader_Campaign_Caption: _TL_('Campaigns'),\r\n BingadsHeader_Campaign_ToolTip: _TL_('Campaigns'),\r\n BingadsHeader_Reports_Caption: _TL_('Reports'),\r\n BingadsHeader_Reports_ToolTip: _TL_('Reports'),\r\n BingadsHeader_Opportunity_Caption: _TL_('Opportunities'),\r\n BingadsHeader_Opportunity_ToolTip: _TL_('Opportunities'),\r\n BingadsHeader_Tools_Caption: _TL_('Tools'),\r\n BingadsHeader_Tools_ToolTip: _TL_('Tools'),\r\n BingadsHeader_Import_New_Caption: _TL_('Import Campaigns'),\r\n BingadsHeader_Import_New_ToolTip: _TL_('Import Campaigns'),\r\n BingadsHeader_Import_Caption: _TL_('Import from Google Ads'),\r\n BingadsHeader_Import_ToolTip: _TL_('Import from Google Ads'),\r\n BingadsHeader_ImportFile_Caption: _TL_('Import from file'),\r\n BingadsHeader_ImportFile_ToolTip: _TL_('Import from file'),\r\n BingadsHeader_ImportSchedule_Caption: _TL_('Import schedule and history'),\r\n BingadsHeader_ImportSchedule_ToolTip: _TL_('Import schedule and history'),\r\n BingadsHeader_Help: _TL_('Help'),\r\n BingadsHeader_CrossAccountSearch_Caption: _TL_('Search across accounts'),\r\n BingadsHeader_CrossAccountSearch_ToolTip: _TL_('Search across accounts'),\r\n BingadsHeader_AccountInfoManageLocation_Caption: _TL_('Manage your business locations'),\r\n BingadsHeader_AccountInfoManageLocation_ToolTip: _TL_('Manage your business locations'),\r\n BingadsHeader_Desktop_Caption: _TL_('Microsoft Advertising Editor'),\r\n BingadsHeader_Desktop_ToolTip: _TL_('Save time by managing your Microsoft Advertising campaigns in an easy-to-use desktop application. '),\r\n BingadsHeader_ExcelAddIn_Caption: _TL_('Microsoft Advertising Intelligence'),\r\n BingadsHeader_ExcelAddIn_ToolTip: _TL_('Research and optimize keywords by using our add-in for Microsoft Excel 2007 or later. '),\r\n BingadsHeader_AdPreview_Caption: _TL_('Ad Preview and Diagnostics Tool'),\r\n BingadsHeader_AdPreview_ToolTip: _TL_('See if your ads show up on the first page of Bing, and review reasons why your ads might not be showing.'),\r\n BingadsHeader_KeywordResearch_Caption: _TL_('Research Keywords'),\r\n BingadsHeader_KeywordResearch_ToolTip: _TL_('Automatically generate new keywords from words or website addresses you type.'),\r\n BingadsHeader_Analytics_Caption: _TL_('Campaign Analytics'),\r\n BingadsHeader_Analytics_ToolTip: _TL_('Set campaign goals and analyze conversion-tracking statistics on your website.'),\r\n BingadsHeader_Cashback_Caption: _TL_('Microsoft Merchant Center'),\r\n BingadsHeader_Cashback_ToolTip: _TL_('Create store catalogs so your products can display on Bing.'),\r\n BingadsHeader_AdsLab_Caption: _TL_('Ads Lab'),\r\n BingadsHeader_AdsLab_ToolTip: _TL_('Get early access into new extensions that Microsoft Advertising is exploring.'),\r\n BingadsHeader_Cam_Caption: _TL_('Creative Asset Manager'),\r\n BingadsHeader_Cam_ToolTip: _TL_('Upload and manage creatives for use in your ad campaigns.'),\r\n BingadsHeader_SegmentBuilder_Caption: _TL_('Segment Builder'),\r\n BingadsHeader_SegmentBuilder_ToolTip: _TL_('Target audiences that are relevant to your ad campaigns by creating custom segments.'),\r\n BingadsHeader_KeywordPlanner_Caption: _TL_('Keyword Planner'),\r\n BingadsHeader_KeywordPlanner_ToolTip: _TL_('Find more keywords and research their popularity.'),\r\n BingadsHeader_BusinessPortal_Caption: _TL_('Business Profile (beta)'),\r\n BingadsHeader_BusinessPortal_ToolTip: _TL_('Business Profile (beta)'),\r\n BingadsHeader_HotelCenter_Caption: _TL_('Microsoft Hotel Center'),\r\n BingadsHeader_HotelCenter_ToolTip: _TL_('Microsoft Hotel Center'),\r\n BingadsHeader_AudienceDashboard_Caption: _TL_('Audience Network Planner'),\r\n BingadsHeader_AudienceDashboard_ToolTip: _TL_('Audience Network Planner'),\r\n BingadsHeader_SwitchExpertMode: _TL_('Switch to Expert Mode'),\r\n New_Feature_Label: _TL_('NEW!'),\r\n AccountSelector_AllAccountsTitle: _TL_('All accounts'),\r\n AccountSelector_Search_Placeholder: _TL_('Search all accounts'),\r\n AccountSelector_RecentsTitle: _TL_('Recent'),\r\n AccountSelector_Loading: _TL_('Loading ...'),\r\n AccountSelector_SwitchAccountsMessage: _TL_('Click to switch accounts'),\r\n AccountSelector_ShowInactiveAccountsMessage: _TL_('Show inactive accounts'),\r\n AccountSelector_ManagingCustomerNumberDisplayFormat: _TL_('Manager account: {0}'),\r\n AccountSelector_ManagingAccountNumberDisplayFormat: _TL_('Account: {0}'),\r\n BingadsHeader_TryUIVNext: _TL_('Try the new Microsoft Advertising'),\r\n ...customerSelectorLocalization,\r\n};\r\n\r\nexport const feedbackLocalization = {\r\n Feedback_Email: _TL_('Your email address'),\r\n Feedback_Message: _TL_('Message'),\r\n Feedback_IncludeScreenshot: _TL_('Include screenshot'),\r\n Feedback_Dialog_SendButton: _TL_('Send'),\r\n Feedback_AdditonInformationHint: _TL_(\"We've collected some additional information to diagnose problems.\"),\r\n Feedback_AdditonInformationLink: _TL_('Additional information'),\r\n Feedback_SuccessfulMessage: _TL_('Your feedback was sent successfully!'),\r\n Feedback_FailedMessage: _TL_(\"Something was wrong with feedback service. You can click the 'Feedback' link at the bottom of page to post your feedback on our portal.\"),\r\n Feedback_Dialog_CancelButton: _TL_('Cancel'),\r\n Feedback_Dialog_Title: _TL_('Send feedback'),\r\n Validation_NotEmpty_Required_Field: _TL_('Required field'),\r\n};\r\n\r\nexport const validationLocalization = {\r\n Validation_Base_Field_Not_Valid: _TL_('Field is not valid'),\r\n Validation_NotEmpty_Required_Field: _TL_('Required field'),\r\n Validation_String_Max_Length: _TL_('Field should not exceed {{maxlength}} characters'),\r\n Validation_String_Min_Length: _TL_('Field should exceed {{minlength}} characters'),\r\n Validation_String_Invalid_Characters: _TL_('Field contains invalid characters'),\r\n Validation_Number_Require_Numeric: _TL_('Field requires numeric value'),\r\n Validation_Number_Max_Length: _TL_('Number should not exceed max length'),\r\n Validation_Number_Range_Min: _TL_('Number should be larger than {{min}}'),\r\n Validation_Number_Range_Max: _TL_('Number should be smaller than {{max}}'),\r\n Validation_Number_Range_Between: _TL_('Number should be between {{min}} and {{max}}'),\r\n Validation_Array_Size_Max: _TL_('List should have at most {{max}} items'),\r\n Validation_Array_Size_Between: _TL_('List should have at least {{min}} and at most {{max}} items'),\r\n Validation_Array_Items_Invalid: _TL_('Some of items in list are invalid'),\r\n Validation_Array_Items_Duplicate: _TL_('List has duplicate items'),\r\n Validation_NegativeKeywords_ListName_Required: _TL_('The list name is required.'),\r\n Validation_NegativeKeywords_Max_Count: _TL_('Maximum of 5,000 negative keywords'),\r\n Validation_NegativeKeywords_Invalid_Keywords: _TL_('Some of the keyword(s) are invalid: {{invalidKeywords}}'),\r\n Validation_NegativeKeywords_Required: _TL_('At least 1 negative keyword is required.'),\r\n};\r\n\r\nexport const simpleFormLocalization = {\r\n SimpleForm_Button_Save: _TL_('Save'),\r\n SimpleForm_Button_Cancel: _TL_('Cancel'),\r\n SimpleForm_TotalRemainingCharactersText: _TL_('{{count}} characters remaining for {{fields}}'),\r\n SimpleForm_TotalRemainingCharactersText_FieldsList: _TL_('{{initial}} and {{last}}'),\r\n SimpleForm_LearnMore: _TL_('Click to learn more about {{item}}'),\r\n};\r\n\r\nexport const requestCallModalLocalization = {\r\n RequestCallModal_Continue: _TL_('Continue'),\r\n RequestCallModal_Cancel: _TL_('Cancel'),\r\n RequestCallModal_Close: _TL_('Close'),\r\n RequestCallModal_CallMeBack: _TL_('Call me back'),\r\n RequestCallModal_ReasonForCall: _TL_('How can we help you?'),\r\n RequestCallModal_Description: _TL_('Description'),\r\n RequestCallModal_Description_Placeholder: _TL_('Add more information so we can help you quickly.'),\r\n RequestCallModal_AdvertiserSupport: _TL_('I need help with Microsoft Advertising or have a general question'),\r\n RequestCallModal_AgencySupport: _TL_('I am an agency managing clients on Microsoft Advertising'),\r\n RequestCallModal_AdultSupport: _TL_('Adult Support'),\r\n RequestCallModal_ComplexSupportScenario: _TL_('I have a question about Microsoft Shopping Campaign or conversion tracking'),\r\n RequestCallModal_OnboardingConsult: _TL_('Onboarding Consult'),\r\n RequestCallModal_OptimizationConsult: _TL_('I want coaching on how to optimize my campaign performance'),\r\n RequestCallModal_AgencyConsultation: _TL_('Agency Consultation'),\r\n RequestCallModal_SmartCampaign: _TL_('I need help with Smart campaigns or have a general question'),\r\n RequestCallModal_DMCSupport: _TL_('I need help with Digital Marketing Center or have a general question'),\r\n RequestCallModal_UPSupport: _TL_('I need help with Multiplatform campaigns or have a general question'),\r\n RequestCallModal_SmartPageSupport: _TL_('I need help with Smart Pages or have a general question'),\r\n RequestCallModal_DialogReadyLabel: _TL_('Call me back dialog is ready'),\r\n};\r\n\r\nexport const msSupportChatLocalization = {\r\n MsSupportChatModal_Continue: _TL_('Continue'),\r\n MsSupportChatModal_Cancel: _TL_('Cancel'),\r\n MsSupportChatModal_Close: _TL_('Close'),\r\n MsSupportChatModal_Title: _TL_('Start a live chat'),\r\n MsSupportChatModal_Description: _TL_('Description'),\r\n MsSupportChatModal_Description_Placeholder: _TL_('Add more information so we can help you quickly.'),\r\n MsSupportChatModal_VirtualAgent_WelcomeMessage: _TL_(\"Hi! I'm a Microsoft Advertising Virtual Agent. I'd love to help you. Please do not include any sensitive information during our conversation.\"),\r\n MsSupportChatModal_DialogReadyLabel: _TL_('Start a live chat dialog is ready'),\r\n RequestCallModal_ReasonForCall: _TL_('How can we help you?'),\r\n RequestCallModal_AdvertiserSupport: _TL_('I need help with Microsoft Advertising or have a general question'),\r\n RequestCallModal_AgencySupport: _TL_('I am an agency managing clients on Microsoft Advertising'),\r\n RequestCallModal_AdultSupport: _TL_('Adult Support'),\r\n RequestCallModal_ComplexSupportScenario: _TL_('I have a question about Microsoft Shopping Campaign or conversion tracking'),\r\n RequestCallModal_OnboardingConsult: _TL_('Onboarding Consult'),\r\n RequestCallModal_OptimizationConsult: _TL_('I want coaching on how to optimize my campaign performance'),\r\n RequestCallModal_AgencyConsultation: _TL_('Agency Consultation'),\r\n RequestCallModal_SmartCampaign: _TL_('I need help with Smart campaigns or have a general question'),\r\n RequestCallModal_DMCSupport: _TL_('I need help with Digital Marketing Center or have a general question'),\r\n RequestCallModal_UPSupport: _TL_('I need help with Multiplatform campaigns or have a general question'),\r\n RequestCallModal_SmartPageSupport: _TL_('I need help with Smart Pages or have a general question'),\r\n RequestCallModal_ConversionTracking: _TL_('I need help with conversion tracking'),\r\n Warning: _TL_('Warning'),\r\n MsSupportChatModal_BR_Alert: _TL_('We are currently experiencing high volume of Portuguese chat requests. In the meantime, you can go back to the help menu and request English support that is available 24/7.'),\r\n MsSupportChatModal_EN_Alert: _TL_('We are experiencing higher than normal chat volume and will assist you as soon as possible. Thank you for your patience.'),\r\n};\r\n\r\nexport const switchExpertModalLocalization = {\r\n SwitchForm_Close: _TL_('Close'),\r\n SwitchExpertModal_Header: _TL_('Are you sure you want to switch to Expert Mode?'),\r\n SwitchExpertModal_BodyLabel: _TL_('Expert Mode lets you take advantage of all the features Microsoft Advertising has to offer, such as:'),\r\n SwitchExpertModal_Feature1: _TL_('Add more content to your ads '),\r\n SwitchExpertModal_Feature2: _TL_('More detailed reporting and conversion tracking'),\r\n SwitchExpertModal_Feature3: _TL_('Automated bid strategies and other tools to increase efficiency'),\r\n SwitchExpertModal_LinkLearnMore: _TL_('Learn more about Smart Mode vs. Expert Mode.'),\r\n SwitchExpertModal_ButtonStay: _TL_('Stay in Smart Mode'),\r\n SwitchExpertModal_ButtonSwitch: _TL_('Switch to Expert Mode'),\r\n};\r\n\r\nexport const BingAdsHeaderStrings =\r\n{\r\n ...bingadsHeaderLocalization,\r\n ...feedbackLocalization,\r\n ...validationLocalization,\r\n ...simpleFormLocalization,\r\n ...requestCallModalLocalization,\r\n ...msSupportChatLocalization,\r\n ...switchExpertModalLocalization,\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__10__;","module.exports = __WEBPACK_EXTERNAL_MODULE__11__;","module.exports = __WEBPACK_EXTERNAL_MODULE__16__;","export { FilePicker } from './src/index';\r\nexport { i18nKeys } from './src/constants';\r\n","/* eslint-disable max-len */\r\nimport React, { useCallback } from 'react';\r\nimport classnames from 'classnames';\r\nimport PropTypes from 'prop-types';\r\nimport injectSheet from 'react-jss';\r\nimport _ from 'underscore';\r\nimport { ErrorMessages } from '@bingads-webui-react/validation';\r\nimport { Button, Glyphicon } from '@bingads-webui-react/primitive';\r\nimport { FilePickerView } from './views/file-picker-view';\r\nimport { getFileValidationStatus, isListValid, generateFile, isRequiredValid } from './helper';\r\nimport { FilePickerStyles } from './css/styles';\r\nimport { useThrowOut } from './use-throw-out';\r\nimport { EMPTY_FILEDATA_ID, i18nKeys } from './constants';\r\nimport { FilePickerContextProvider, useFilePickerContext } from './context';\r\nimport { customStringsShapes } from './shapes';\r\n\r\nfunction FilePickerWithoutStylesBase({\r\n classes,\r\n className,\r\n fileList,\r\n onFileChange,\r\n alwaysShowError,\r\n allowedFileExtensions,\r\n required,\r\n maxCount,\r\n validator,\r\n shouldAutoRename,\r\n passiveErrorMessages,\r\n customPlaceholder,\r\n exploreBtnStyle,\r\n}) {\r\n const { getString } = useFilePickerContext();\r\n const fileValidation = useCallback(file => getFileValidationStatus({\r\n file,\r\n allowedFileExtensions,\r\n validateFileExtensionsFailedMessage: getString(i18nKeys.FilePicker_ErrorMessage_ExtensionNotAllowed),\r\n customValidator: validator,\r\n }), [allowedFileExtensions, getString, validator]);\r\n\r\n const {\r\n validatedFileList,\r\n edited,\r\n displayEmptyFile,\r\n setEdited,\r\n setDisplayEmptyFile,\r\n setFileList,\r\n } = useThrowOut({\r\n onFileChange,\r\n required,\r\n fileList,\r\n fileValidation,\r\n });\r\n\r\n const handleAddNewFile = ({ file, isValid, errorMessages }) => {\r\n setDisplayEmptyFile(false);\r\n const newFileList = [...validatedFileList, generateFile({\r\n file,\r\n isValid,\r\n shouldAutoRename,\r\n errorMessages,\r\n fileList: validatedFileList,\r\n })];\r\n setFileList(newFileList);\r\n setEdited(true);\r\n };\r\n\r\n const handleChangeExistFile = ({\r\n id, file, isValid, errorMessages,\r\n }) => {\r\n const index = _.findIndex(validatedFileList, { id });\r\n const newFileList = _.without(validatedFileList, validatedFileList[index]);\r\n const newFile = generateFile({\r\n file,\r\n isValid,\r\n shouldAutoRename,\r\n errorMessages,\r\n fileList: newFileList,\r\n });\r\n newFileList.splice(index, 0, newFile);\r\n setFileList(newFileList);\r\n setEdited(true);\r\n };\r\n\r\n const handleDeleteFile = (fileId) => {\r\n const newFileList = _.filter(validatedFileList, ({ id }) => fileId !== id);\r\n setFileList(newFileList);\r\n if (newFileList.length === 0) {\r\n setDisplayEmptyFile(true);\r\n }\r\n setEdited(true);\r\n };\r\n\r\n const renderFileList = () => _.map(validatedFileList, fileData => (\r\n \r\n ));\r\n\r\n const renderEmptyFilePicker = () => displayEmptyFile && (\r\n \r\n );\r\n\r\n const canRenderAddNewButton = () => {\r\n const emptyFileCount = displayEmptyFile ? 1 : 0;\r\n const validatedFileListCount = _.result(validatedFileList, 'length') || 0;\r\n\r\n return maxCount > 1 && (emptyFileCount + validatedFileListCount < maxCount);\r\n };\r\n\r\n const renderAddNewButton = () => canRenderAddNewButton() && (\r\n setDisplayEmptyFile(true)}\r\n className=\"file-picker-add-new\"\r\n >\r\n \r\n {getString(i18nKeys.FilePicker_AddNewFile)}\r\n \r\n );\r\n\r\n const renderErrorMessage = () => {\r\n const internalErrorMessages = (edited || alwaysShowError)\r\n ? _.compact([\r\n !isRequiredValid({ list: validatedFileList, required }) && getString(i18nKeys.FilePicker_ErrorMessage_Required),\r\n ])\r\n : [];\r\n\r\n const errorMessages = [...internalErrorMessages, ...passiveErrorMessages];\r\n\r\n return !_.isEmpty(errorMessages) && (\r\n
\r\n \r\n
\r\n );\r\n };\r\n\r\n return (\r\n
\r\n {renderFileList()}\r\n {renderEmptyFilePicker()}\r\n {renderAddNewButton()}\r\n {renderErrorMessage()}\r\n
\r\n );\r\n}\r\n\r\nFilePickerWithoutStylesBase.propTypes = {\r\n classes: PropTypes.shape({\r\n filePicker: PropTypes.string,\r\n }).isRequired,\r\n fileList: PropTypes.arrayOf(PropTypes.shape({\r\n id: PropTypes.string,\r\n displayName: PropTypes.string,\r\n file: PropTypes.shape({}),\r\n })),\r\n onFileChange: PropTypes.func.isRequired,\r\n allowedFileExtensions: PropTypes.arrayOf(PropTypes.string),\r\n required: PropTypes.bool,\r\n alwaysShowError: PropTypes.bool,\r\n maxCount: PropTypes.number,\r\n className: PropTypes.string,\r\n validator: PropTypes.func,\r\n shouldAutoRename: PropTypes.bool,\r\n passiveErrorMessages: PropTypes.arrayOf(PropTypes.string),\r\n customPlaceholder: PropTypes.string,\r\n exploreBtnStyle: PropTypes.string,\r\n};\r\n\r\nFilePickerWithoutStylesBase.defaultProps = {\r\n className: '',\r\n fileList: [],\r\n maxCount: 10,\r\n validator: _.noop,\r\n allowedFileExtensions: [],\r\n required: false,\r\n alwaysShowError: false,\r\n shouldAutoRename: false,\r\n passiveErrorMessages: [],\r\n customPlaceholder: '',\r\n exploreBtnStyle: 'primary',\r\n};\r\n\r\nconst FilePickerWithoutStyles = props => (\r\n \r\n \r\n \r\n);\r\n\r\nFilePickerWithoutStyles.propTypes = {\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func.isRequired,\r\n }).isRequired,\r\n customStrings: customStringsShapes,\r\n};\r\n\r\nFilePickerWithoutStyles.defaultProps = {\r\n customStrings: {},\r\n};\r\n\r\nexport const FilePicker = injectSheet(FilePickerStyles)(FilePickerWithoutStyles);\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__441__;","import React, { useMemo, useRef } from 'react';\r\nimport _ from 'underscore';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\nimport { Button, Glyphicon } from '@bingads-webui-react/primitive';\r\nimport { ErrorMessages } from '@bingads-webui-react/validation';\r\nimport { useFilePickerContext } from '../context';\r\nimport { i18nKeys } from '../constants';\r\n\r\nexport function FilePickerView({\r\n data,\r\n className,\r\n onDelete,\r\n onFileChange,\r\n allowedFileExtensions,\r\n validator,\r\n customPlaceholder,\r\n exploreBtnStyle,\r\n}) {\r\n const { getString } = useFilePickerContext();\r\n const filePicker = useRef(null);\r\n const {\r\n isValid = true,\r\n errorMessages = [],\r\n } = data || {};\r\n\r\n /* istanbul ignore next */\r\n const showFilePicker = () => filePicker.current.click();\r\n\r\n const handleFileChange = ({ target: { files } }) => {\r\n const file = files[0];\r\n const { id } = data;\r\n onFileChange({\r\n id,\r\n file,\r\n ...validator(file),\r\n });\r\n };\r\n\r\n // TODO: use i18n.getString('FilePicker_Placeholder') as default value\r\n const placeholder = useMemo(() => (customPlaceholder || ''), [customPlaceholder]);\r\n return (\r\n
\r\n
\r\n \r\n {data.displayName || placeholder}\r\n \r\n \r\n\r\n {data.file !== null &&\r\n onDelete(data.id)}\r\n aria-label={getString(i18nKeys.FilePicker_RemoveFile)}\r\n >\r\n \r\n {getString(i18nKeys.FilePicker_RemoveFile)}\r\n \r\n }\r\n\r\n \r\n
\r\n {!_.isEmpty(errorMessages) && (\r\n
\r\n \r\n
\r\n )}\r\n
\r\n );\r\n}\r\n\r\nFilePickerView.defaultProps = {\r\n className: '',\r\n onDelete: _.noop,\r\n customPlaceholder: '',\r\n exploreBtnStyle: 'primary',\r\n};\r\n\r\nFilePickerView.propTypes = {\r\n data: PropTypes.shape({\r\n id: PropTypes.string,\r\n displayName: PropTypes.string,\r\n file: PropTypes.shape({}),\r\n isValid: PropTypes.bool,\r\n errorMessages: PropTypes.arrayOf(PropTypes.string),\r\n }).isRequired,\r\n onFileChange: PropTypes.func.isRequired,\r\n validator: PropTypes.func.isRequired,\r\n allowedFileExtensions: PropTypes.arrayOf(PropTypes.string).isRequired,\r\n className: PropTypes.string,\r\n onDelete: PropTypes.func,\r\n customPlaceholder: PropTypes.string,\r\n exploreBtnStyle: PropTypes.string,\r\n};\r\n","import React, { createContext, useContext, useCallback } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { getString as getStringHelper } from './helper';\r\nimport { customStringsShapes } from './shapes';\r\n\r\nexport const FilePickerContext = createContext({});\r\n\r\nexport const useFilePickerContext = () => useContext(FilePickerContext);\r\n\r\nexport const FilePickerContextProvider = ({\r\n children,\r\n i18n,\r\n customStrings,\r\n}) => {\r\n const getString = useCallback(\r\n key => getStringHelper({ customStrings, i18n, key }),\r\n [i18n, customStrings]\r\n );\r\n\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n};\r\n\r\nFilePickerContextProvider.propTypes = {\r\n children: PropTypes.node.isRequired,\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func.isRequired,\r\n }).isRequired,\r\n customStrings: customStringsShapes.isRequired,\r\n};\r\n","import path from 'path-browserify';\r\nimport _ from 'underscore';\r\nimport { generateGuid, get } from '@bingads-webui-universal/primitive-utilities';\r\nimport { MIN_COUNT } from './constants';\r\n\r\nexport const removeDuplication = (newFileName, currentFileNameList) => {\r\n let nameIndex = 0;\r\n let retValue = newFileName;\r\n const fileExtname = path.extname(newFileName);\r\n const fileBasename = path.basename(newFileName, fileExtname);\r\n\r\n while (currentFileNameList.indexOf(retValue) !== -1) {\r\n nameIndex += 1;\r\n retValue = `${fileBasename}(${nameIndex})${fileExtname}`;\r\n }\r\n\r\n return retValue;\r\n};\r\n\r\nconst isExtnameValid = (fileName, allowedFileExtensions) => {\r\n if (_.isEmpty(allowedFileExtensions)) {\r\n return true;\r\n }\r\n\r\n return _.indexOf(allowedFileExtensions, path.extname(fileName).toLowerCase()) !== -1;\r\n};\r\n\r\nexport const getFileValidationStatus = ({\r\n file,\r\n allowedFileExtensions = [],\r\n validateFileExtensionsFailedMessage,\r\n customValidator = _.noop,\r\n}) => {\r\n const errorMessages = [];\r\n\r\n if (file) {\r\n if (!isExtnameValid(file.name, allowedFileExtensions)) {\r\n errorMessages.push(validateFileExtensionsFailedMessage);\r\n }\r\n\r\n const customValidateResult = customValidator(file);\r\n if (!_.isEmpty(customValidateResult)) {\r\n errorMessages.push(customValidateResult);\r\n }\r\n }\r\n\r\n return { isValid: errorMessages.length === 0, errorMessages };\r\n};\r\n\r\nexport const generateFile = ({\r\n id = generateGuid(),\r\n file = null,\r\n isValid = false,\r\n shouldAutoRename = false,\r\n errorMessages = [],\r\n fileList = [],\r\n} = {}) => ({\r\n id,\r\n displayName: shouldAutoRename ? removeDuplication(file.name, fileList.map(({ displayName }) => displayName)) : _.result(file, 'name', ''),\r\n file,\r\n errorMessages,\r\n isValid,\r\n});\r\n\r\nexport const isListValid = list => _.every(list, ({ isValid }) => isValid);\r\n\r\nexport const isRequiredValid = ({ list, required }) => {\r\n if (required) {\r\n return list ? list.length >= MIN_COUNT : false;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nexport const getFileListIdentifier = fileList => JSON.stringify(_.pluck(fileList, 'id'));\r\n\r\nexport const getString = ({ customStrings, i18n, key }) => {\r\n const customString = get(customStrings, key);\r\n return _.isString(customString) ? customString : i18n.getString(key);\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__445__;","export const MIN_COUNT = 1;\r\n\r\nexport const EMPTY_FILEDATA_ID = 'EMPTY_FILEDATA';\r\n\r\nexport const i18nKeys = {\r\n FilePicker_ExploreFile: 'FilePicker_ExploreFile',\r\n FilePicker_RemoveFile: 'FilePicker_RemoveFile',\r\n FilePicker_AddNewFile: 'FilePicker_AddNewFile',\r\n FilePicker_ErrorMessage_Required: 'FilePicker_ErrorMessage_Required',\r\n FilePicker_ErrorMessage_ExtensionNotAllowed: 'FilePicker_ErrorMessage_ExtensionNotAllowed',\r\n FilePicker_ErrorMessage_ExtensionNotAllowed_WithAllowedExtensions: 'FilePicker_ErrorMessage_ExtensionNotAllowed_WithAllowedExtensions',\r\n FilePicker_Placeholder: 'FilePicker_Placeholder',\r\n};\r\n","import PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport { i18nKeys } from './constants';\r\n\r\nexport const customStringsShapes = PropTypes.shape(_.mapObject(\r\n i18nKeys,\r\n () => PropTypes.string\r\n));\r\n","export const FilePickerStyles = {\r\n filePicker: {\r\n '& .file-picker-row': {\r\n '& .picker-row': {\r\n display: 'flex',\r\n alignItems: 'center',\r\n },\r\n '& + .file-picker-row': {\r\n marginTop: 8,\r\n },\r\n },\r\n '& .file-picker-error': {\r\n '& .file-picker-file-name': {\r\n borderColor: '#D90026',\r\n color: '#D90026',\r\n backgroundColor: '#FFEBEB',\r\n },\r\n },\r\n '& .file-picker-file-name': {\r\n flex: '1 1 100%',\r\n color: '#605E5C',\r\n marginRight: '8px',\r\n overflow: 'hidden',\r\n textOverflow: 'ellipsis',\r\n },\r\n '& .file-picker-explore-btn': {\r\n flex: '0 0 auto',\r\n },\r\n '& .file-picker-remove-btn': {\r\n flex: '0 0 auto',\r\n border: 'none',\r\n position: 'relative',\r\n height: 25,\r\n fontWeight: 'normal',\r\n display: 'flex',\r\n alignItems: 'center',\r\n color: '#0078d4',\r\n '&-icon': {\r\n marginRight: 8,\r\n display: 'block',\r\n lineHeight: 1,\r\n },\r\n '&:hover': {\r\n color: '#004578',\r\n },\r\n '&.btn.btn-link': {\r\n marginLeft: 0,\r\n },\r\n },\r\n '& button.file-picker-add-new': {\r\n marginTop: 8,\r\n border: 'none',\r\n backgroundColor: 'transparent !important',\r\n paddingLeft: 0,\r\n display: 'flex',\r\n alignItems: 'center',\r\n '&:hover &-text': {\r\n textDecoration: 'underline',\r\n },\r\n '& .file-picker-add-new-icon': {\r\n marginRight: 8,\r\n lineHeight: 1,\r\n top: 0,\r\n },\r\n '& .file-picker-add-new-text': {\r\n fontWeight: 'normal',\r\n },\r\n '&:not([disabled])': {\r\n color: '#0078d4',\r\n '&:hover': {\r\n color: '#004578',\r\n },\r\n },\r\n },\r\n },\r\n};\r\n","/* eslint-disable max-len */\r\nimport { useState, useCallback, useEffect } from 'react';\r\nimport _ from 'underscore';\r\nimport { isListValid, isRequiredValid } from './helper';\r\n\r\nconst calculateEachFileValidationResult = (fileList, fileValidation) => _.map(fileList, ({ file, ...rest }) => ({\r\n ...rest,\r\n ...fileValidation(file),\r\n file,\r\n}));\r\n\r\nexport const useThrowOut = ({\r\n fileValidation, onFileChange, required, fileList,\r\n}) => {\r\n const [edited, setEdited] = useState(false);\r\n const [validatedFileList, setValidatedFileList] = useState(() => calculateEachFileValidationResult(fileList, fileValidation));\r\n const [displayEmptyFile, setDisplayEmptyFile] = useState(() => _.isEmpty(fileList));\r\n\r\n const setFileList = useCallback((newFileList, shouldValidateFile = false) => {\r\n setValidatedFileList(shouldValidateFile\r\n ? calculateEachFileValidationResult(newFileList, fileValidation)\r\n : newFileList);\r\n }, [fileValidation]);\r\n\r\n useEffect(() => {\r\n const isValid = isListValid(validatedFileList) && isRequiredValid({ list: validatedFileList, required });\r\n onFileChange({ fileList: _.map(validatedFileList, file => _.omit(file, 'errorMessages')), isValid });\r\n }, [validatedFileList, onFileChange, required]);\r\n\r\n return {\r\n validatedFileList,\r\n edited,\r\n displayEmptyFile,\r\n setEdited,\r\n setDisplayEmptyFile,\r\n setFileList,\r\n };\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__420__;","module.exports = __WEBPACK_EXTERNAL_MODULE__456__;","export * from './src/floating-banner-api';\r\nexport { FloatingBanner } from './src/floating-banner';\r\n","import React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport { FloatingBanner } from './floating-banner';\r\nimport { getUniqueAlertId } from './util';\r\n\r\nlet containerSelector = '.floating-banner-container';\r\nlet autoDismissTime = 0;\r\nlet logger;\r\n\r\n/**\r\n * Set config for floating banner api.\r\n * @param {string} selector - The CSS selector of floating banner container.\r\n * Default value is '.floating-banner-container'.\r\n * @param {number} dismissTime - The auto dismiss time (ms) for the floating banner.\r\n * No auto-dismissal if the value is less than or equal to 0.\r\n * Default value is 0.\r\n * @param {object} logInstrumentation - The logger object containing log functions\r\n * Default value is undefined.\r\n * @return {void}\r\n */\r\nconst setConfig = ({\r\n selector,\r\n dismissTime,\r\n logInstrumentation,\r\n}) => {\r\n containerSelector = selector || containerSelector;\r\n autoDismissTime = dismissTime || autoDismissTime;\r\n logger = logInstrumentation;\r\n};\r\n\r\nconst newAlertId = () => undefined;\r\n\r\n/**\r\n * Render the floating banner and auto dismiss it after autoDismissTime.\r\n * @param {object} alert - the alert plain object.\r\n * @param {string|HTMLString} [alert.message] - The alert message, which could be an HTML string.\r\n * @param {string} [alert.level='Confirmation'] - The level of alert, which could be\r\n * 'Error', 'Warning', 'Info' or 'Confirmation'.\r\n * @param {boolean} [alert.hasIcon=true] - If these is icon for the alert which is shown\r\n * at left side of alert message.\r\n * @param {HTMLString} [alert.icon] - The icon template, default to be\r\n * ```span.alert__icon```.\r\n * @param {boolean} [alert.dismissible=true] - If the alert is dismissible.\r\n * @param {object} [alert.action=null] - The alert action.\r\n * @param {object} [alert.action.message] - The alert action message, which is a plain string.\r\n * @param {object} [alert.action.callback] - The alert action callback, which will be called\r\n * when action button clicked by user.\r\n * @return {undefined}\r\n */\r\nconst render = (alert) => {\r\n const containerSelectDom = document.querySelector(containerSelector);\r\n\r\n if (containerSelectDom) {\r\n ReactDOM.render(\r\n ,\r\n document.querySelector(containerSelector)\r\n );\r\n }\r\n\r\n return undefined;\r\n};\r\n\r\nconst remove = () => render();\r\n\r\n/**\r\n * Dismiss the floating banner.\r\n * @return {void}\r\n */\r\nconst dismissAll = () => {\r\n remove();\r\n};\r\n\r\n/**\r\n * Dismiss the floating banner.\r\n * @return {void}\r\n */\r\nconst dismiss = () => {\r\n remove();\r\n};\r\n\r\n/**\r\n * Show the floating banner.\r\n * @param {object} alert - the alert plain object.\r\n * @return {undefined}\r\n */\r\nconst show = alert => render(alert);\r\n\r\n/**\r\n * Show error alert for the floating banner.\r\n * @param {string|HTMLString} message - The alert message, which could be an HTML string.\r\n * @return {undefined}\r\n */\r\nconst showError = message => show({\r\n message,\r\n level: 'Error',\r\n});\r\n\r\n/**\r\n * Show warning alert for the floating banner.\r\n * @param {string|HTMLString} message - The alert message, which could be an HTML string.\r\n * @return {undefined}\r\n */\r\nconst showWarning = message => show({\r\n message,\r\n level: 'Warning',\r\n});\r\n\r\n/**\r\n * Show info alert for the floating banner.\r\n * @param {string|HTMLString} message - The alert message, which could be an HTML string.\r\n * @return {undefined}\r\n */\r\nconst showInfo = message => show({\r\n message,\r\n level: 'Info',\r\n});\r\n\r\n/**\r\n * Show confirmation alert for the floating banner.\r\n * @param {string|HTMLString} message - The alert message, which could be an HTML string.\r\n * @return {undefined}\r\n */\r\nconst showConfirmation = message => show({\r\n message,\r\n level: 'Confirmation',\r\n});\r\n\r\n/**\r\n * Toast given message as an error.\r\n * @param {string|HTMLString} message - The alert message, which could be an HTML string.\r\n * @return {void}\r\n */\r\nconst toastError = (message) => {\r\n render({\r\n message,\r\n level: 'Error',\r\n });\r\n};\r\n\r\n/**\r\n * Toast given message as an warning.\r\n * @param {string|HTMLString} message - The alert message, which could be an HTML string.\r\n * @return {void}\r\n */\r\nconst toastWarning = (message) => {\r\n render({\r\n message,\r\n level: 'Warning',\r\n });\r\n};\r\n\r\n/**\r\n * Toast given message as an info.\r\n * @param {string|HTMLString} message - The alert message, which could be an HTML string.\r\n * @return {void}\r\n */\r\nconst toastInfo = (message) => {\r\n render({\r\n message,\r\n level: 'Info',\r\n });\r\n};\r\n\r\n/**\r\n * Toast given message as an confirmation.\r\n * @param {string|HTMLString} message - The alert message, which could be an HTML string.\r\n * @return {void}\r\n */\r\nconst toastConfirmation = (message) => {\r\n render({\r\n message,\r\n level: 'Confirmation',\r\n });\r\n};\r\n\r\nexport {\r\n setConfig,\r\n newAlertId,\r\n dismissAll,\r\n show,\r\n showError,\r\n showWarning,\r\n showInfo,\r\n showConfirmation,\r\n dismiss,\r\n toastError,\r\n toastWarning,\r\n toastInfo,\r\n toastConfirmation,\r\n};\r\n","import _ from 'underscore';\r\nimport React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { Alert } from '@bingads-webui-react/alert';\r\nimport { mapAlertLevel } from './util';\r\n\r\nconst methodPrefix = 'floatingBanner';\r\nconst logType = {\r\n message: 'message',\r\n action: 'action',\r\n dismiss: 'dismiss',\r\n};\r\n\r\nexport class FloatingBanner extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n const nextMessage = this.props.alert && this.props.alert.message;\r\n this.state = { showBanner: _.isString(nextMessage) || React.isValidElement(nextMessage) };\r\n }\r\n\r\n componentDidMount() {\r\n this.afterUpdate();\r\n }\r\n\r\n componentDidUpdate() {\r\n this.afterUpdate();\r\n }\r\n\r\n componentWillUnmount() {\r\n if (this.timerId) {\r\n clearTimeout(this.timerId);\r\n }\r\n }\r\n\r\n logTrace = (type, appendantInfo) => {\r\n const methodName = `${methodPrefix}:${type}`;\r\n const message = _.reduce(\r\n appendantInfo,\r\n (memo, info) => `${memo}:${info}`,\r\n `${this.props.alert.level}:${(_.isString(this.props.alert.message) ? this.props.alert.message : 'ReactElement')}`\r\n );\r\n\r\n this.props.logInstrumentation.trace(methodName, message);\r\n }\r\n\r\n afterUpdate = () => {\r\n if (this.state.showBanner) {\r\n this.logTrace(logType.message);\r\n if (this.timerId) {\r\n clearTimeout(this.timerId);\r\n }\r\n\r\n if (this.props.autoDismissTime > 0) {\r\n this.timerId = setTimeout(() => {\r\n this.dismiss(false);\r\n }, this.props.autoDismissTime);\r\n }\r\n }\r\n }\r\n\r\n dismiss = (willLog = true) => {\r\n if (willLog) {\r\n this.logTrace(logType.dismiss);\r\n }\r\n\r\n this.setState({ showBanner: false });\r\n }\r\n\r\n actionClicked = (innerText) => {\r\n this.logTrace(logType.action, [innerText]);\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n { this.state.showBanner && (\r\n
\r\n \r\n
\r\n ) }\r\n
\r\n );\r\n }\r\n}\r\n\r\nFloatingBanner.propTypes = {\r\n alert: PropTypes.shape({\r\n message: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.element,\r\n ]),\r\n level: PropTypes.string,\r\n }),\r\n autoDismissTime: PropTypes.number,\r\n logInstrumentation: PropTypes.shape({\r\n trace: PropTypes.func,\r\n }),\r\n};\r\n\r\nFloatingBanner.defaultProps = {\r\n alert: {\r\n message: undefined,\r\n level: 'Confirmation',\r\n },\r\n autoDismissTime: 0,\r\n logInstrumentation: {\r\n trace: _.noop,\r\n },\r\n};\r\n","import _ from 'underscore';\r\n\r\n/**\r\n * As design required, legacy error alert will be shown as warning alert,\r\n * legacy info alert will be shown as confirmation alert.\r\n */\r\nconst levelMapping = {\r\n Error: 'Warning',\r\n Warning: 'Warning',\r\n Confirmation: 'Confirmation',\r\n Info: 'Confirmation',\r\n};\r\n\r\nexport const mapAlertLevel = alert => _.extend(alert, { level: levelMapping[alert.level || 'Confirmation'] });\r\n\r\nexport const getUniqueAlertId = () => _.uniqueId('floating-banner-');\r\n","export { HelpRailViewId } from './src/help-rail-view-id';\r\n","import PropTypes from 'prop-types';\r\nimport React from 'react';\r\nimport _ from 'underscore';\r\n\r\nexport class HelpRailViewId extends React.PureComponent {\r\n componentDidMount() {\r\n if (window.ApexPlatform && _.isFunction(window.ApexPlatform.Refresh)) {\r\n window.ApexPlatform.Refresh();\r\n }\r\n }\r\n\r\n render() {\r\n return (\r\n \r\n );\r\n }\r\n}\r\n\r\nHelpRailViewId.propTypes = {\r\n railViewId: PropTypes.string.isRequired,\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__119__;","module.exports = __WEBPACK_EXTERNAL_MODULE__120__;","// Copyright (C) Microsoft Corporation. All rights reserved.\r\n\r\nexport * from './src';\r\n","// Copyright (C) Microsoft Corporation. All rights reserved.\r\n\r\nexport { AppPerfMarkerContext } from './app-perf-marker-context';\r\nexport { usePerfMarker } from './use-perf-marker';\r\nexport { usePerfMarkerLifecycle } from './use-perf-marker-lifecycle';\r\nexport { withPagePerfMarker } from './with-page-perf-marker';\r\nexport { withPerfMarker } from './with-perf-marker';\r\n","// Copyright (C) Microsoft Corporation. All rights reserved.\r\n\r\nimport { createContext } from 'react';\r\n\r\nexport type AppPerfMarker = any;\r\n\r\n// TODO: Add type definition for @bingads-webui/performance-marker\r\nexport const AppPerfMarkerContext = createContext({});\r\n","// Copyright (C) Microsoft Corporation. All rights reserved.\r\n\r\nimport { useContext } from 'react';\r\nimport { AppPerfMarkerContext } from './app-perf-marker-context';\r\n\r\nexport function usePerfMarker() {\r\n return useContext(AppPerfMarkerContext);\r\n}\r\n","// Copyright (C) Microsoft Corporation. All rights reserved.\r\nimport _ from 'underscore';\r\nimport { useState, useEffect, useRef } from 'react';\r\nimport { usePerfMarker } from './use-perf-marker';\r\n\r\n/**\r\n * Automatically inject custom performance marker at specific times\r\n * @param {boolean} dataReady - Flag indicating whether data returned from useData hooks is ready\r\n * @returns {void}\r\n */\r\nexport function usePerfMarkerLifecycle(dataReady: Boolean): void {\r\n const perfMarker = usePerfMarker();\r\n const startedFetchingData = useRef(false);\r\n const startedRendering = useRef(false);\r\n\r\n useState(() => {\r\n _.result(perfMarker, 'willInit');\r\n if (dataReady) {\r\n _.result(perfMarker, 'willFetchData');\r\n startedFetchingData.current = true;\r\n }\r\n });\r\n\r\n useEffect(() => {\r\n if (startedFetchingData.current === false) {\r\n _.result(perfMarker, 'willFetchData');\r\n startedFetchingData.current = true;\r\n }\r\n }, [perfMarker]);\r\n\r\n useEffect(() => {\r\n if (!_.get(perfMarker, 'autoEnd') && dataReady) {\r\n _.result(perfMarker, 'done');\r\n }\r\n }, [dataReady, perfMarker]);\r\n\r\n if (dataReady && startedRendering.current === false) {\r\n _.result(perfMarker, 'willRender');\r\n startedRendering.current = true;\r\n }\r\n}\r\n","// Copyright (C) Microsoft Corporation. All rights reserved.\r\n\r\nimport React, { ComponentType, useState } from 'react';\r\nimport { AppPerfMarker, AppPerfMarkerContext } from './app-perf-marker-context';\r\nimport { usePerfMarker } from './use-perf-marker';\r\nimport hoistNonReactStatics from 'hoist-non-react-statics';\r\nconst { getDisplayName } = require('@bingads-webui-react/hoc-utils');\r\n\r\ninterface BaseProps {\r\n perfMarker?: AppPerfMarker;\r\n}\r\n\r\ntype EnhancedProps = Omit;\r\n\r\ninterface PagePerfMarkerOptions {\r\n name: string;\r\n autoEnd?: boolean;\r\n}\r\n\r\nfunction useInit(fn: () => void) {\r\n useState(fn);\r\n}\r\n\r\nexport function withPagePerfMarker

(WrappedComponent: ComponentType

, options: PagePerfMarkerOptions): ComponentType> {\r\n const { name, autoEnd } = options;\r\n\r\n const Hoc = React.forwardRef>((props, ref) => {\r\n const rootPerfMarker = usePerfMarker();\r\n const childPerfMarker = rootPerfMarker.createChild(name, { autoEnd: autoEnd ?? true });\r\n useInit(() => childPerfMarker.willFetchFile());\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n });\r\n\r\n hoistNonReactStatics(Hoc, WrappedComponent);\r\n Hoc.displayName = `withAppPerfMarker(${getDisplayName(WrappedComponent)})`;\r\n\r\n return Hoc as any;\r\n}\r\n","// Copyright (C) Microsoft Corporation. All rights reserved.\r\n\r\nimport React, { ComponentType, useMemo } from 'react';\r\nimport hoistNonReactStatics from 'hoist-non-react-statics';\r\nimport { AppPerfMarkerContext, AppPerfMarker } from './app-perf-marker-context';\r\nimport { usePerfMarker } from \"./use-perf-marker\";\r\n\r\nconst { getDisplayName } = require('@bingads-webui-react/hoc-utils');\r\n\r\ninterface BaseProps {\r\n perfMarker?: AppPerfMarker;\r\n}\r\n\r\ntype EnhancedProps = Omit;\r\n\r\ninterface AppPerfMarkerOptions {\r\n childName?: string;\r\n autoEnd?: boolean;\r\n perfMarker?: any;\r\n}\r\n\r\nexport function withPerfMarker

(WrappedComponent: ComponentType

, options: AppPerfMarkerOptions = {}): ComponentType> {\r\n const { childName, perfMarker, autoEnd } = options;\r\n\r\n const Hoc = React.forwardRef>((props, ref) => {\r\n const contextPerfMarker = usePerfMarker();\r\n const childPerfMarker = useMemo(() =>\r\n childName === undefined ? undefined : contextPerfMarker.createChild(childName, { autoEnd: autoEnd ?? false }), [childName, autoEnd]);\r\n\r\n if (perfMarker !== undefined) {\r\n return ;\r\n }\r\n\r\n if (childPerfMarker === undefined) {\r\n return ;\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n });\r\n\r\n hoistNonReactStatics(Hoc, WrappedComponent);\r\n Hoc.displayName = `withPerfMarker(${getDisplayName(WrappedComponent)})`;\r\n\r\n return Hoc as any;\r\n}\r\n","export { SingleDatePicker } from './src/single-date-picker';\r\n","/* eslint-disable jsx-a11y/no-noninteractive-tabindex */\r\nimport React, { useState, useRef, useEffect, useMemo, useCallback } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport { SingleMonthCalendar } from '@bingads-webui-react/single-month-calendar';\r\nimport { ValidatedInput } from '@bingads-webui-react/validation-controls';\r\nimport { keyCode } from '@bingads-webui/keycode';\r\nimport {\r\n getCivilDateToday,\r\n getCivilDateFromDate,\r\n isValidDate,\r\n isCivilDateInOpenRange,\r\n} from '@bingads-webui-universal/temporal-utitlities';\r\n\r\nconst itemName = 'date';\r\nexport const parseDateWithCurrentTime = ({ value, minDate }) =>\r\n (isValidDate(minDate) &&\r\n isValidDate(value) &&\r\n minDate.toLocaleDateString() === value.toLocaleDateString() &&\r\n minDate > value ? minDate : value);\r\n\r\nexport function SingleDatePicker({\r\n i18n,\r\n maxDate,\r\n minDate,\r\n onChanged,\r\n disabled,\r\n selectedDate,\r\n alwaysShowError,\r\n schema,\r\n customValidator,\r\n}) {\r\n const datePickerElement = useRef();\r\n const [isShowDatePicker, setIsShowDatePicker] = useState(false);\r\n const [passiveMessages, setPassiveMessages] = useState([]);\r\n\r\n const [seletedDateString, setSeletedDateString] = useState(() =>\r\n (isValidDate(selectedDate) ? i18n.formatDate(selectedDate) : null));\r\n const maxCivilDate = useMemo(() => getCivilDateFromDate(maxDate) || undefined, [maxDate]);\r\n const minCivilDate = useMemo(() => getCivilDateFromDate(minDate) || undefined, [minDate]);\r\n const selectedCivilDate = useMemo(() => {\r\n const date = getCivilDateFromDate(selectedDate);\r\n\r\n if (isCivilDateInOpenRange({ minDate: minCivilDate, maxDate: maxCivilDate, value: date })) {\r\n return date;\r\n }\r\n return getCivilDateFromDate(minDate);\r\n }, [maxCivilDate, minCivilDate, minDate, selectedDate]);\r\n const onClickInput = useCallback(() =>\r\n !disabled && setIsShowDatePicker(preState => !preState), [disabled]);\r\n\r\n useEffect(() => setSeletedDateString((preSeletedDateString) => {\r\n if (_.isDate(selectedDate)) {\r\n return _.isNaN(selectedDate.getTime()) ? preSeletedDateString : i18n.formatDate(selectedDate);\r\n }\r\n return null;\r\n }), [i18n, selectedDate]);\r\n\r\n return (\r\n {\r\n if (datePickerElement.current && !datePickerElement.current.contains(e.relatedTarget)) {\r\n setIsShowDatePicker(false);\r\n }\r\n }}\r\n >\r\n

\r\n
\r\n {\r\n const newDate = i18n.parseDate(value.data[itemName] || '') || new Date('InValid Date');\r\n const isDateInRange = isCivilDateInOpenRange({\r\n value: getCivilDateFromDate(newDate),\r\n minDate: minCivilDate,\r\n maxDate: maxCivilDate,\r\n });\r\n\r\n setPassiveMessages(!isDateInRange &&\r\n (value.isDirty || alwaysShowError) && !disabled ?\r\n [i18n.getString('Validation_Base_Field_Not_Valid')] :\r\n []);\r\n onChanged({\r\n value: parseDateWithCurrentTime({ value: newDate, minDate }),\r\n isValid: _.isEmpty(value.messages) && isDateInRange,\r\n });\r\n return value;\r\n },\r\n field: itemName,\r\n data: { [itemName]: seletedDateString },\r\n schema: { properties: { [itemName]: schema } },\r\n passiveMessages,\r\n alwaysShowError,\r\n i18n,\r\n skipValidation: disabled,\r\n showSingleError: true,\r\n }}\r\n />\r\n
\r\n e.which === keyCode.Enter && onClickInput()}\r\n tabIndex=\"0\"\r\n />\r\n
\r\n { isShowDatePicker &&\r\n
\r\n {\r\n setIsShowDatePicker(false);\r\n onChanged({\r\n value: parseDateWithCurrentTime({\r\n value: i18n.parseDate(i18n.formatCivilDate(date)),\r\n minDate,\r\n }),\r\n isValid: true,\r\n });\r\n }}\r\n i18n={i18n}\r\n isMonthPickerEnabled\r\n />\r\n
}\r\n
\r\n );\r\n}\r\n\r\nSingleDatePicker.propTypes = {\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func.isRequired,\r\n parseDecimal: PropTypes.func.isRequired,\r\n getFirstDayOfWeek: PropTypes.func.isRequired,\r\n }).isRequired,\r\n onChanged: PropTypes.func.isRequired,\r\n disabled: PropTypes.bool,\r\n alwaysShowError: PropTypes.bool,\r\n minDate: PropTypes.instanceOf(Date),\r\n maxDate: PropTypes.instanceOf(Date),\r\n selectedDate: PropTypes.instanceOf(Date),\r\n schema: PropTypes.shape({\r\n required: PropTypes.bool,\r\n }),\r\n customValidator: PropTypes.func,\r\n};\r\n\r\nSingleDatePicker.defaultProps = {\r\n disabled: false,\r\n minDate: new Date(),\r\n maxDate: null,\r\n alwaysShowError: true,\r\n selectedDate: null,\r\n schema: { isRequired: false },\r\n customValidator: null,\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__1003__;","module.exports = __WEBPACK_EXTERNAL_MODULE__217__;","module.exports = __WEBPACK_EXTERNAL_MODULE__222__;","export { MSSupportInlineHelpOptions } from './src/ms-support-inline-help-options';\r\nexport { MSSupportMenuButton } from './src/ms-support-menu-button';\r\n","/* eslint-disable react/no-danger */\r\nimport _ from 'underscore';\r\nimport $ from 'jquery';\r\nimport React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport { Button } from '@fluentui/react-components';\r\nimport { ChatMultipleIcon, PersonSupportIcon } from './icons';\r\n\r\nimport { supportHelpLocalization } from './constants';\r\nimport { useInlineHelpStyles } from './styles';\r\n\r\nexport const MSSupportInlineHelpOptions = ({\r\n i18n,\r\n supportOptions,\r\n uiActivity,\r\n}) => {\r\n const styles = useInlineHelpStyles();\r\n const {\r\n IfShowLiveChat: isChatAvailable, RequestCallText, customSupportOptions, headerText,\r\n } = supportOptions;\r\n const isCallAvailable = !_.isEmpty(RequestCallText);\r\n const titleId = 'title-id';\r\n\r\n const clickChat = () => {\r\n uiActivity.trace('Inline help: Start a live chat');\r\n $('#msSupportChatTrigger').click();\r\n };\r\n\r\n const clickCall = () => {\r\n uiActivity.trace('Inline help: Request a call from support');\r\n $('#requestCallTrigger').click();\r\n };\r\n\r\n if (!isCallAvailable && !isChatAvailable && !customSupportOptions) {\r\n return null;\r\n }\r\n\r\n return (\r\n <>\r\n {(isCallAvailable || isChatAvailable) && (\r\n
\r\n \r\n
\r\n {isCallAvailable &&\r\n }\r\n onClick={clickCall}\r\n >\r\n {i18n.getString(supportHelpLocalization.SupportHelp_RequestCall)}\r\n \r\n }\r\n {isChatAvailable &&\r\n }\r\n onClick={clickChat}\r\n >\r\n {i18n.getString(supportHelpLocalization.SupportHelp_LiveChat)}\r\n \r\n }\r\n
\r\n
\r\n )}\r\n {customSupportOptions && (\r\n
\r\n ${customSupportOptions.headerText}`),\r\n }}\r\n />\r\n {customSupportOptions.supportOptions.map((option) => {\r\n const optionText = option.text || i18n.getString(_TL_('Contact support'));\r\n return (\r\n }\r\n className={classNames('ms-support-custom-support-option', styles.optionButton)}\r\n >\r\n {optionText}\r\n \r\n );\r\n })}\r\n
\r\n )}\r\n \r\n );\r\n};\r\n\r\nMSSupportInlineHelpOptions.propTypes = {\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func,\r\n }).isRequired,\r\n uiActivity: PropTypes.shape({\r\n trace: PropTypes.func,\r\n }),\r\n supportOptions: PropTypes.shape({\r\n IfShowLiveChat: PropTypes.bool,\r\n RequestCallText: PropTypes.string,\r\n headerText: PropTypes.string,\r\n customSupportOptions: PropTypes.shape({\r\n headerText: PropTypes.string,\r\n supportOptions: PropTypes.arrayOf(PropTypes.shape({\r\n text: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.element,\r\n ]),\r\n onClick: PropTypes.func,\r\n })),\r\n }),\r\n }).isRequired,\r\n};\r\n\r\nMSSupportInlineHelpOptions.defaultProps = {\r\n uiActivity: { trace: _.noop },\r\n};\r\n\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__68__;","import React from 'react';\r\n\r\nexport const ChevronUpIcon = React.memo(() => (\r\n \r\n \r\n \r\n));\r\n\r\nexport const ChatIcon = React.memo(() => (\r\n \r\n \r\n \r\n));\r\n\r\nexport const PersonSupportIcon = React.memo(() => (\r\n \r\n \r\n \r\n));\r\n\r\nexport const ChatMultipleIcon = React.memo(() => (\r\n \r\n \r\n \r\n));\r\n\r\nexport const OpenInNewWindow = React.memo(() => (\r\n \r\n \r\n \r\n));\r\n","export const supportHelpLocalization = {\r\n SupportHelp_LiveChat: _TL_('Start live chat'),\r\n SupportHelp_RequestCall: _TL_('Request call from Support agent'),\r\n};\r\n","import { makeStyles, tokens } from '@fluentui/react-components';\r\n\r\nexport const useInlineHelpStyles = makeStyles({\r\n container: {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'center',\r\n },\r\n title: {\r\n fontSize: tokens.fontSizeBase200,\r\n color: tokens.colorNeutralForeground3,\r\n },\r\n optionButton: {\r\n fontSize: tokens.fontSizeBase200,\r\n },\r\n});\r\n","import _ from 'underscore';\r\nimport $ from 'jquery';\r\nimport React, { useState } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { Menu, MenuButton, MenuList, MenuPopover, MenuTrigger, MenuGroup, MenuGroupHeader, MenuItem, Divider } from '@fluentui/react-components';\r\nimport { ChatIcon, ChatMultipleIcon, ChevronUpIcon, PersonSupportIcon, OpenInNewWindow } from './icons';\r\n\r\nimport { supportHelpLocalization } from './constants';\r\n\r\nexport const MSSupportMenuButton = ({\r\n i18n,\r\n supportOptions,\r\n popoverPosition,\r\n uiActivity,\r\n isExpandedDefault,\r\n}) => {\r\n const [expanded, setExpanded] = useState(isExpandedDefault);\r\n const {\r\n IfShowLiveChat: isChatAvailable, RequestCallText, customSupportOptions, headerText,\r\n } = supportOptions;\r\n const isCallAvailable = !_.isEmpty(RequestCallText);\r\n\r\n const onOpenChange = (e, data) => {\r\n setExpanded(data.open);\r\n uiActivity.trace(`Menu Button help: ${expanded ? 'Expand' : 'Collapse'} contact us button`);\r\n };\r\n\r\n const clickChat = () => {\r\n uiActivity.trace('Menu Button help: Start a live chat');\r\n $('#msSupportChatTrigger').click();\r\n };\r\n\r\n const clickCall = () => {\r\n uiActivity.trace('Menu Button help: Request a call from support');\r\n $('#requestCallTrigger').click();\r\n };\r\n\r\n const menuListProps = {\r\n liveChat: i18n.getString(supportHelpLocalization.SupportHelp_LiveChat),\r\n requestCall: i18n.getString(supportHelpLocalization.SupportHelp_RequestCall),\r\n };\r\n\r\n if (!isCallAvailable && !isChatAvailable && !customSupportOptions) {\r\n return null;\r\n }\r\n\r\n return (\r\n \r\n \r\n }\r\n menuIcon={}\r\n >\r\n {i18n.getString(_TL_('Contact Us'))}\r\n \r\n \r\n\r\n \r\n \r\n {(isChatAvailable || isCallAvailable) && (\r\n \r\n {headerText || i18n.getString(_TL_('Contact us'))}\r\n {isChatAvailable &&\r\n }\r\n onClick={clickChat}\r\n ariaLabel={menuListProps.liveChat}\r\n >\r\n {menuListProps.liveChat}\r\n \r\n }\r\n {isCallAvailable &&\r\n }\r\n onClick={clickCall}\r\n ariaLabel-label={menuListProps.requestCall}\r\n >\r\n {menuListProps.requestCall}\r\n \r\n }\r\n )}\r\n {customSupportOptions && (\r\n <>\r\n {(isCallAvailable || isChatAvailable) && }\r\n \r\n \r\n {customSupportOptions.headerText}\r\n \r\n {customSupportOptions.supportOptions.map((option) => {\r\n const optionText = option.text || i18n.getString(_TL_('Contact support'));\r\n return (\r\n }\r\n key={optionText}\r\n className=\"ms-support-menu-custom-option-item\"\r\n onClick={option.onClick}\r\n ariaLabel-label={option.text}\r\n >\r\n {optionText}\r\n \r\n );\r\n })}\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nMSSupportMenuButton.propTypes = {\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func,\r\n }).isRequired,\r\n popoverPosition: PropTypes.string,\r\n uiActivity: PropTypes.shape({\r\n trace: PropTypes.func,\r\n }),\r\n supportOptions: PropTypes.shape({\r\n IfShowLiveChat: PropTypes.bool,\r\n RequestCallText: PropTypes.string,\r\n headerText: PropTypes.string,\r\n customSupportOptions: PropTypes.shape({\r\n headerText: PropTypes.string,\r\n supportOptions: PropTypes.arrayOf(PropTypes.shape({\r\n text: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.element,\r\n ]),\r\n onClick: PropTypes.func,\r\n })),\r\n }),\r\n }).isRequired,\r\n isExpandedDefault: PropTypes.bool,\r\n};\r\n\r\nMSSupportMenuButton.defaultProps = {\r\n popoverPosition: 'above-start',\r\n isExpandedDefault: false,\r\n uiActivity: { trace: _.noop },\r\n};\r\n\r\n","export { TransferSelector } from './src';\r\n","export { TransferSelector } from './controls';\r\n","export { TransferSelector } from './transfer-selector';\r\nexport { SelectorList } from './selector-list';\r\nexport { TransferSelectorBox } from './selector-box';\r\nexport { TransferResultBox } from './result-box';\r\n","import React, { useMemo } from 'react';\r\nimport classnames from 'classnames';\r\nimport PropTypes from 'prop-types';\r\nimport { Col, Row, Button } from '@bingads-webui-react/primitive';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { UiBlocker } from '@bingads-webui-react/ui-blocker';\r\nimport { TransferSelectorBox } from './selector-box';\r\nimport { TransferResultBox } from './result-box';\r\nimport { SelectorList } from './selector-list';\r\nimport { getTransferSelectorStyles } from '../styles';\r\nimport { generateAllItems } from '../utils';\r\n\r\nexport function TransferSelector({\r\n className,\r\n i18n,\r\n searchProps,\r\n isLoadingItems,\r\n allItems,\r\n selectedItems,\r\n isBeyondAccountLimit,\r\n onAddAll,\r\n onAdd,\r\n onRemoveAll,\r\n onRemove,\r\n onApply,\r\n onDismissCallback,\r\n}) {\r\n const classes = useDefaultStyles(getTransferSelectorStyles);\r\n const allSelectorItems = useMemo(() => generateAllItems({ allItems, selectedItems }), [allItems, selectedItems]);\r\n\r\n // TODO: max limit text waiting confirmation with PM\r\n return (\r\n \r\n
\r\n {isBeyondAccountLimit &&\r\n
\r\n {i18n.getString(_TL_('You have reached the maximum number of items that can be selected.'))}\r\n
\r\n }\r\n {!isLoadingItems &&\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
}\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n );\r\n}\r\n\r\nTransferSelector.propTypes = {\r\n className: PropTypes.string,\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func.isRequired,\r\n }).isRequired,\r\n searchProps: PropTypes.shape({\r\n showSearchBar: PropTypes.bool,\r\n onSearch: PropTypes.func,\r\n placeholder: PropTypes.string,\r\n }).isRequired,\r\n isLoadingItems: PropTypes.bool,\r\n allItems: PropTypes.arrayOf(PropTypes.shape({\r\n name: PropTypes.string,\r\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\r\n })).isRequired,\r\n selectedItems: PropTypes.arrayOf(PropTypes.shape({\r\n name: PropTypes.string,\r\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\r\n })).isRequired,\r\n isBeyondAccountLimit: PropTypes.bool,\r\n onAddAll: PropTypes.func.isRequired,\r\n onAdd: PropTypes.func.isRequired,\r\n onRemoveAll: PropTypes.func.isRequired,\r\n onRemove: PropTypes.func.isRequired,\r\n onApply: PropTypes.func.isRequired,\r\n onDismissCallback: PropTypes.func.isRequired,\r\n\r\n};\r\n\r\nTransferSelector.defaultProps = {\r\n className: null,\r\n isLoadingItems: null,\r\n isBeyondAccountLimit: false,\r\n};\r\n","import React, { useMemo, useState } from 'react';\r\nimport classnames from 'classnames';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport { Col, Glyphicon, Row, Select } from '@bingads-webui-react/primitive';\r\nimport { SearchBox } from '@bingads-webui-react/search-box';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { getSelectorBoxStyles } from '../styles';\r\nimport { MaxSearchLetters } from '../constants';\r\n\r\nexport function TransferSelectorBox({\r\n i18n,\r\n searchProps,\r\n children,\r\n onAddAll,\r\n}) {\r\n const classes = useDefaultStyles(getSelectorBoxStyles);\r\n const {\r\n showSearchBar,\r\n onSearch: onSearchProps,\r\n placeholder,\r\n queryText,\r\n handleQueryChange,\r\n handleClearSearch,\r\n showSearchFieldSelect,\r\n searchFieldOptions,\r\n } = useMemo(() => searchProps, [searchProps]);\r\n const [searchField, setSearchField] = useState(showSearchFieldSelect ? searchFieldOptions[0].value : null);\r\n const handleSearch = (newValue) => {\r\n onSearchProps({ searchText: newValue.trim(), searchField });\r\n };\r\n const handleSearchFieldChange = (event) => {\r\n setSearchField(event.target.value);\r\n };\r\n\r\n return (\r\n
\r\n
{i18n.getString(_TL_('Available items'))}
\r\n
\r\n {showSearchBar &&\r\n
\r\n
\r\n \r\n \r\n
\r\n {showSearchFieldSelect &&\r\n
\r\n \r\n
\r\n }\r\n
}\r\n \r\n \r\n
\r\n
\r\n {i18n.getString(_TL_('Add all'))}{' '}\r\n \r\n
\r\n {children}\r\n
\r\n \r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nTransferSelectorBox.propTypes = {\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func.isRequired,\r\n }).isRequired,\r\n searchProps: PropTypes.shape({\r\n showSearchBar: PropTypes.bool,\r\n onSearch: PropTypes.func,\r\n placeholder: PropTypes.string,\r\n showSearchFieldSelect: PropTypes.bool,\r\n searchFieldOptions: PropTypes.arrayOf(PropTypes.shape({\r\n value: PropTypes.string,\r\n labelkey: PropTypes.string,\r\n })),\r\n }),\r\n children: PropTypes.node,\r\n onAddAll: PropTypes.func.isRequired,\r\n};\r\n\r\nTransferSelectorBox.defaultProps = {\r\n children: null,\r\n searchProps: {\r\n showSearchBar: false,\r\n showSearchFieldSelect: false,\r\n searchFieldOptions: [],\r\n },\r\n};\r\n","export { getSelectorBoxStyles } from './selector-box';\r\nexport { getResultBoxStyles } from './result-box';\r\nexport { getTransferSelectorStyles } from './transfer-selector';\r\n","import { sharedBasicStyle, headerStyle } from './common';\r\n\r\nexport const getSelectorBoxStyles = () => ({\r\n selectorBox: {\r\n height: sharedBasicStyle.doubleListHeight,\r\n border: sharedBasicStyle.containerBorder,\r\n paddingRight: -15,\r\n '& .search-box__input': {\r\n paddingRight: 60,\r\n },\r\n '& .blocker-global': {\r\n position: 'absolute',\r\n },\r\n '& .blocker-indicator': {\r\n position: 'absolute',\r\n top: 100,\r\n right: 150,\r\n },\r\n },\r\n selectorBoxContent: {\r\n padding: 10,\r\n },\r\n SearchIcon: {\r\n position: 'absolute !important',\r\n right: 12,\r\n paddingTop: 6,\r\n },\r\n searchGroup: {\r\n display: 'flex',\r\n flexDirection: 'row',\r\n alignItems: 'center',\r\n },\r\n searchBoxGroup: {\r\n position: 'relative',\r\n flexGrow: 1,\r\n },\r\n searchFieldSelect: {\r\n width: '30%',\r\n },\r\n selectorItemNode: {\r\n height: '100%',\r\n padding: '3px 17px 0 0',\r\n display: 'flex',\r\n justifyContent: 'space-between',\r\n '& .disabled': {\r\n opacity: 0.5,\r\n },\r\n },\r\n selectorItemNodeName: {\r\n marginRight: 10,\r\n overflow: 'hidden',\r\n whiteSpace: 'nowrap',\r\n wordBreak: 'break-all',\r\n textOverflow: 'ellipsis',\r\n },\r\n selectorNodeArrow: {\r\n cursor: 'pointer',\r\n },\r\n selectorNodeArrowDisabled: {\r\n cursor: 'not-allowed',\r\n },\r\n selectorList: {\r\n height: sharedBasicStyle.selectorListHeight,\r\n margin: 'auto',\r\n overflow: 'auto',\r\n },\r\n addAll: {\r\n cursor: 'pointer',\r\n padding: '8px 0',\r\n },\r\n addAllText: {\r\n color: sharedBasicStyle.bingColor,\r\n },\r\n selectorBoxHeader: headerStyle,\r\n clearIcon: {\r\n position: 'absolute !important',\r\n right: 36,\r\n top: '8px !important',\r\n },\r\n selectedNodeArrow: {\r\n color: '#aaa',\r\n },\r\n});\r\n","export const sharedBasicStyle = {\r\n doubleListHeight: 450,\r\n bingColor: '#007daa',\r\n doubleListBackgroundColor: '#f2f2f2',\r\n containerBorder: '1px solid #bbbbbb',\r\n selectorListHeight: 450 - 120,\r\n resultListHeight: 450 - 90,\r\n};\r\n\r\nexport const headerStyle = {\r\n backgroundColor: sharedBasicStyle.doubleListBackgroundColor,\r\n height: 30,\r\n padding: '8px 8px',\r\n fontWeight: 'bold',\r\n overflow: 'hidden',\r\n};\r\n","import { sharedBasicStyle, headerStyle } from './common';\r\n\r\nexport const getResultBoxStyles = () => ({\r\n resultListBox: {\r\n border: sharedBasicStyle.containerBorder,\r\n height: sharedBasicStyle.doubleListHeight,\r\n padding: '0px !important',\r\n },\r\n resultListHeader: headerStyle,\r\n resultListItemArrow: {\r\n float: 'left',\r\n padding: '0 10px',\r\n cursor: 'pointer',\r\n },\r\n resultList: {\r\n paddingTop: 3,\r\n height: sharedBasicStyle.resultListHeight,\r\n overflow: 'auto',\r\n },\r\n resultListItem: {\r\n padding: '0 10px',\r\n paddingBottom: 10,\r\n },\r\n resultListItemContent: {\r\n padding: '5px 0',\r\n backgroundColor: '#e7f0f6',\r\n border: '1px solid #00719a',\r\n },\r\n itemName: {\r\n paddingLeft: 3,\r\n whiteSpace: 'nowrap',\r\n overflow: 'hidden',\r\n textOverflow: 'ellipsis',\r\n },\r\n removeAll: {\r\n cursor: 'pointer',\r\n padding: '15px 10px 10px 10px',\r\n padidngTop: 15,\r\n },\r\n removeAllText: {\r\n color: sharedBasicStyle.bingColor,\r\n },\r\n});\r\n","import { sharedBasicStyle } from './common';\r\n\r\nexport const getTransferSelectorStyles = () => ({\r\n maxLimitContainer: {\r\n paddingLeft: 10,\r\n marginTop: 10,\r\n clear: 'both',\r\n color: 'red',\r\n },\r\n doubleList: {\r\n margin: 10,\r\n width: 832,\r\n height: sharedBasicStyle.doubleListHeight,\r\n },\r\n actions: {\r\n marginTop: 20,\r\n },\r\n actionButton: {\r\n margin: 8,\r\n },\r\n});\r\n","export const MaxSearchLetters = 1000;\r\nexport const DefaultSelectorListWidth = 200;\r\nexport const DefaultSelectorListHeight = 200;\r\n","import React from 'react';\r\nimport classnames from 'classnames';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport { Glyphicon } from '@bingads-webui-react/primitive';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { getResultBoxStyles } from '../styles';\r\n\r\nexport function TransferResultBox({\r\n i18n,\r\n selected,\r\n onRemoveAll,\r\n onRemove,\r\n}) {\r\n const classes = useDefaultStyles(getResultBoxStyles);\r\n const renderResultNode = ({ name, id }) => (\r\n
\r\n
\r\n onRemove({ name, id })}\r\n onKeyDown={() => onRemove({ name, id })}\r\n >\r\n \r\n \r\n
\r\n {name}\r\n
\r\n
\r\n
\r\n );\r\n return (\r\n
\r\n
{i18n.getString(_TL_('Selected items'))}
\r\n
\r\n {' '}\r\n {i18n.getString(_TL_('Remove all'))}\r\n
\r\n
\r\n {selected.length > 0 && _.map(selected, option => renderResultNode(option))}\r\n
\r\n
\r\n );\r\n}\r\n\r\nTransferResultBox.propTypes = {\r\n i18n: PropTypes.shape({\r\n getString: PropTypes.func.isRequired,\r\n }).isRequired,\r\n selected: PropTypes.arrayOf(PropTypes.shape({\r\n name: PropTypes.string,\r\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\r\n })).isRequired,\r\n onRemoveAll: PropTypes.func.isRequired,\r\n onRemove: PropTypes.func.isRequired,\r\n};\r\n\r\nTransferResultBox.defaultProps = {\r\n};\r\n","import React from 'react';\r\nimport classnames from 'classnames';\r\nimport PropTypes from 'prop-types';\r\nimport { List, AutoSizer } from 'react-virtualized';\r\nimport { Glyphicon } from '@bingads-webui-react/primitive';\r\nimport { useDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { getSelectorBoxStyles } from '../styles';\r\nimport { DefaultSelectorListHeight, DefaultSelectorListWidth } from '../constants';\r\n\r\nexport function SelectorList({\r\n visibleOptions, rowHeight, onAdd,\r\n}) {\r\n const classes = useDefaultStyles(getSelectorBoxStyles);\r\n const rowRenderer = ({ index, key, style }) => {\r\n const option = visibleOptions[index];\r\n const onAddItem = () => {\r\n if (option.disabled || option.isSelected) {\r\n return;\r\n }\r\n onAdd(option);\r\n };\r\n\r\n return (\r\n \r\n
\r\n {option.name}\r\n
\r\n \r\n
\r\n );\r\n };\r\n\r\n return (\r\n
\r\n \r\n {({ width, height }) => (\r\n \r\n )}\r\n \r\n
\r\n );\r\n}\r\n\r\nSelectorList.propTypes = {\r\n visibleOptions: PropTypes.arrayOf(PropTypes.shape({\r\n name: PropTypes.string,\r\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\r\n disabled: PropTypes.bool,\r\n isSelected: PropTypes.bool,\r\n })).isRequired,\r\n rowHeight: PropTypes.number,\r\n onAdd: PropTypes.func.isRequired,\r\n};\r\n\r\nSelectorList.defaultProps = {\r\n rowHeight: 30,\r\n};\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__1339__;","import _ from 'underscore';\r\n\r\nexport function generateAllItems({ allItems, selectedItems }) {\r\n return allItems.map(item => ({\r\n ...item,\r\n isSelected: _.find(selectedItems, { id: item.id }) !== undefined,\r\n }));\r\n}\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__206__;","module.exports = __WEBPACK_EXTERNAL_MODULE__320__;","module.exports = __WEBPACK_EXTERNAL_MODULE__36__;","export { TutorialAccordion, StyledTutorialAccordion } from './src/index';\r\nexport { TutorialAccordionView, StyledTutorialAccordionView } from './src/view';\r\n","import React, { PureComponent } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { Glyphicon, Panel, PanelGroup } from '@bingads-webui-react/primitive';\r\nimport { withDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { triggerScrollbarReposition } from '@bingads-webui-campaign-react/virtual-scrollbar-recalculate-trigger';\r\nimport { getTutorialAccordionStyles } from './styles';\r\n\r\n/**\r\n * A tutorial accordion contains a collection of step items\r\n */\r\n\r\nconst PanelGroupId = 'tutorial-accordion';\r\nexport class TutorialAccordion extends PureComponent {\r\n constructor(props) {\r\n super(props);\r\n const { expanded } = props;\r\n\r\n this.state = {\r\n expanded,\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n this.updateTheDomOutside();\r\n }\r\n\r\n componentDidUpdate() {\r\n this.updateTheDomOutside();\r\n }\r\n\r\n onSelect = () => {\r\n this.setState(({ expanded }) => ({ expanded: !expanded }));\r\n };\r\n\r\n updateTheDomOutside() {\r\n // A11y, the panelGroup is for tab controls but this component is not tab\r\n const panelGroupDom = document.getElementById(PanelGroupId);\r\n if (panelGroupDom) {\r\n if (panelGroupDom.hasAttribute('role')) {\r\n panelGroupDom.removeAttribute('role');\r\n }\r\n const heading = panelGroupDom.getElementsByClassName('panel-heading');\r\n if (heading && heading[0]) {\r\n if (heading[0].hasAttribute('role')) {\r\n heading[0].removeAttribute('role');\r\n }\r\n }\r\n }\r\n }\r\n\r\n render() {\r\n const {\r\n classes,\r\n title,\r\n subtitle,\r\n tutorStepComponents,\r\n accordion,\r\n } = this.props;\r\n\r\n const { expanded } = this.state;\r\n\r\n const stepSeparator = (
);\r\n\r\n return (\r\n \r\n \r\n \r\n {title}\r\n \r\n \r\n
\r\n {subtitle}\r\n
\r\n
\r\n {\r\n tutorStepComponents.map((tutorStep, index) => (\r\n // eslint-disable-next-line react/no-array-index-key\r\n \r\n {index > 0 ? stepSeparator : null}\r\n
\r\n {tutorStep}\r\n
\r\n
\r\n ))\r\n }\r\n
\r\n \r\n
\r\n \r\n );\r\n }\r\n}\r\n\r\nTutorialAccordion.propTypes = {\r\n classes: PropTypes.shape({\r\n tutorialAccordion: PropTypes.string,\r\n }).isRequired,\r\n title: PropTypes.string.isRequired,\r\n subtitle: PropTypes.element,\r\n tutorStepComponents: PropTypes.arrayOf(PropTypes.element).isRequired,\r\n accordion: PropTypes.bool,\r\n expanded: PropTypes.bool,\r\n};\r\n\r\nTutorialAccordion.defaultProps = {\r\n subtitle: null,\r\n accordion: true,\r\n expanded: true,\r\n};\r\n\r\nexport const StyledTutorialAccordion =\r\n withDefaultStyles(TutorialAccordion, getTutorialAccordionStyles);\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__1143__;","export const getTutorialAccordionStyles = () => ({\r\n tutorialAccordion: {\r\n paddingLeft: 32,\r\n borderBottom: '1px solid #edebe9',\r\n marginTop: 16,\r\n\r\n '& .panel-heading > .panel-title > a': {\r\n color: '#0078d4',\r\n fontSize: 18,\r\n },\r\n '& .panel-heading > .panel-title > a:after': {\r\n fontSize: 18,\r\n paddingTop: 0,\r\n paddingLeft: 8,\r\n paddingBottom: 0,\r\n paddingRight: 8,\r\n transform: 'rotate(180deg)',\r\n },\r\n '& .panel-heading > .panel-title > a.collapsed:after': {\r\n transform: 'rotate(90deg)',\r\n },\r\n '& .panel-collapse': {\r\n padding: '10px 10px 10px 40px',\r\n },\r\n },\r\n tutorialContainer: {\r\n display: 'flex',\r\n },\r\n tutorStep: {\r\n backgroundColor: '#f3f2f1',\r\n padding: 20,\r\n flex: '1 1 0px', // the 'px' unit is required to work on IE\r\n },\r\n stepSeparator: {\r\n marginLeft: 16,\r\n marginRight: 16,\r\n display: 'flex',\r\n alignItems: 'center',\r\n },\r\n titleSecondary: {\r\n paddingBottom: 4,\r\n marginBottom: 4,\r\n color: '#605e5c',\r\n fontSize: 14,\r\n },\r\n});\r\n","import Backbone from 'backbone';\r\nimport React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport { TutorialAccordion, StyledTutorialAccordion } from '../index';\r\n\r\n/**\r\n * the backbone view for the react tutorial accordion\r\n */\r\nexport class StyledTutorialAccordionView extends Backbone.View {\r\n initialize({\r\n title, subtitle, tutorStepComponents, accordion, expanded = true,\r\n }) {\r\n this.title = title;\r\n this.subtitle = subtitle;\r\n this.tutorStepComponents = tutorStepComponents;\r\n this.accordion = accordion;\r\n this.expanded = expanded;\r\n }\r\n\r\n render() {\r\n ReactDOM.render(\r\n (\r\n \r\n ), this.el\r\n );\r\n return this;\r\n }\r\n\r\n remove() {\r\n ReactDOM.unmountComponentAtNode(this.el);\r\n return super.remove();\r\n }\r\n}\r\n\r\nexport class TutorialAccordionView extends Backbone.View {\r\n initialize({\r\n title, subtitle, tutorStepComponents, accordion = true, expanded = true,\r\n }) {\r\n this.title = title;\r\n this.subtitle = subtitle;\r\n this.tutorStepComponents = tutorStepComponents;\r\n this.accordion = accordion;\r\n this.expanded = expanded;\r\n }\r\n\r\n render() {\r\n ReactDOM.render(\r\n (\r\n \r\n ), this.el\r\n );\r\n return this;\r\n }\r\n\r\n remove() {\r\n ReactDOM.unmountComponentAtNode(this.el);\r\n return super.remove();\r\n }\r\n}\r\n","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"underscore\"), require(\"@bingads-webui-universal/primitive-utilities\"), require(\"globalize\"), require(\"@bingads-webui-universal/i18n-cldr-data-modern/core.json\"), require(\"@bingads-webui-universal/i18n-cldr-data-modern/locales/en.json\"), require(\"@bingads-webui-universal/i18n-model\"), require(\"iana-tz-data\"), require(\"iana-tz-data/iana-tz-data.json\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"underscore\", \"@bingads-webui-universal/primitive-utilities\", \"globalize\", \"@bingads-webui-universal/i18n-cldr-data-modern/core.json\", \"@bingads-webui-universal/i18n-cldr-data-modern/locales/en.json\", \"@bingads-webui-universal/i18n-model\", \"iana-tz-data\", \"iana-tz-data/iana-tz-data.json\"], factory);\n\telse {\n\t\tvar a = typeof exports === 'object' ? factory(require(\"underscore\"), require(\"@bingads-webui-universal/primitive-utilities\"), require(\"globalize\"), require(\"@bingads-webui-universal/i18n-cldr-data-modern/core.json\"), require(\"@bingads-webui-universal/i18n-cldr-data-modern/locales/en.json\"), require(\"@bingads-webui-universal/i18n-model\"), require(\"iana-tz-data\"), require(\"iana-tz-data/iana-tz-data.json\")) : factory(root[\"underscore\"], root[\"@bingads-webui-universal/primitive-utilities\"], root[\"globalize\"], root[\"@bingads-webui-universal/i18n-cldr-data-modern/core.json\"], root[\"@bingads-webui-universal/i18n-cldr-data-modern/locales/en.json\"], root[\"@bingads-webui-universal/i18n-model\"], root[\"iana-tz-data\"], root[\"iana-tz-data/iana-tz-data.json\"]);\n\t\tfor(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];\n\t}\n})((typeof self !== 'undefined' ? self : this), function(__WEBPACK_EXTERNAL_MODULE__4__, __WEBPACK_EXTERNAL_MODULE__5__, __WEBPACK_EXTERNAL_MODULE__8__, __WEBPACK_EXTERNAL_MODULE__9__, __WEBPACK_EXTERNAL_MODULE__10__, __WEBPACK_EXTERNAL_MODULE__11__, __WEBPACK_EXTERNAL_MODULE__15__, __WEBPACK_EXTERNAL_MODULE__17__) {\nreturn ","\r\n\r\nexport * from './src/index';\r\n","export * from './fixed-i18n-mock';\r\nexport * from './model-i18n-mock';\r\nexport * from './static-i18n-mock';\r\nexport * from './static-i18n-model-mock';\r\n","import _ from 'underscore';\r\nimport * as putil from '@bingads-webui-universal/primitive-utilities';\r\nimport { staticI18nMock } from './static-i18n-mock';\r\n\r\nconst {\r\n isValidDecimal,\r\n parseDecimal,\r\n formatDecimal,\r\n} = staticI18nMock;\r\n\r\nclass FixedI18nMock {\r\n constructor(dictionary) {\r\n this.dictionary = dictionary;\r\n }\r\n\r\n getString(key, model) {\r\n if (!_.isString(key)) {\r\n throw new Error('Localization key must be a String');\r\n }\r\n\r\n if (!_.has(this.dictionary, key)) {\r\n return key;\r\n }\r\n\r\n let ret = this.dictionary[key];\r\n\r\n if (ret && model) {\r\n const compiled = putil.curlyTemplate(ret);\r\n\r\n ret = compiled(model);\r\n }\r\n\r\n return ret;\r\n }\r\n}\r\n\r\n_.extend(FixedI18nMock.prototype, {\r\n isValidDecimal,\r\n parseDecimal,\r\n formatDecimal,\r\n});\r\n\r\nexport { FixedI18nMock };\r\n","import _ from 'underscore';\r\n\r\nexport const staticI18nMock = {\r\n getString: _.identity,\r\n isValidDecimal: value => !_.isNaN(parseFloat(value)),\r\n parseDecimal: str => parseFloat(str),\r\n formatDecimal: float => `${float}`,\r\n};\r\n","import _ from 'underscore';\r\nimport Globalize from 'globalize';\r\nimport core from '@bingads-webui-universal/i18n-cldr-data-modern/core.json';\r\nimport enLocale from '@bingads-webui-universal/i18n-cldr-data-modern/locales/en.json';\r\nimport { I18nModel } from '@bingads-webui-universal/i18n-model';\r\nimport { ModuleI18nShim } from './shims/module-i18n-shim';\r\nimport { ComponentI18nShim } from './shims/component-i18n-shim';\r\n\r\nconst currency = 'USD';\r\nconst locale = 'en-US';\r\nI18nModel.setGlobalLocale(locale);\r\n\r\nGlobalize.load(core, enLocale);\r\n// eslint-disable-next-line\r\nGlobalize.loadTimeZone(require('iana-tz-data')); // JSON data\r\n\r\nexport const modelI18nMock = ({ dictionary = {}, options = {} } = {}) =>\r\n // Initializeing the I18nModel in the synchronous mode\r\n new I18nModel(_.extendOwn({\r\n locale,\r\n loadCLDRData: () => locale,\r\n loadTranslationData: () => dictionary,\r\n currency,\r\n }, options));\r\n\r\n// mocks 'component/i18n/loader'\r\nexport const modelComponentI18nMock = ({ dictionary = {}, options = {} } = {}) =>\r\n new ComponentI18nShim(modelI18nMock({ dictionary, options }));\r\n\r\n// mocks 'module/extension/requirejs/i18n'\r\nexport const modelModuleI18nMock = ({ dictionary = {}, options = {} } = {}) =>\r\n new ModuleI18nShim(modelI18nMock({ dictionary, options }));\r\n\r\n// Generates the object to mock such calls:\r\n// var i18n = window.globalLegacyI18n.get('component/i18n/loader!component/upgraded-url');\r\n//\r\n// Usage example:\r\n// const globalLegacyI18n = modelGlobalLegacyI18n({ options: { failFast: 'SAFE' }, dictionary: strings });\r\n// window.globalLegacyI18n = globalLegacyI18n;\r\n// ...\r\n// export const StyledApp = withI18n(withDefaultStyles(App, getAppStyles), globalLegacyI18n.main);\r\nexport const modelGlobalLegacyI18n = ({ dictionary = {}, options = {} } = {}) => (modelI18n => ({\r\n get(i18nRequireRequest) {\r\n const loaderName = i18nRequireRequest.split('!')[0];\r\n if (loaderName === 'component/i18n/loader') {\r\n return new ComponentI18nShim(modelI18n);\r\n } else if (loaderName === 'module/extension/requirejs/i18n') {\r\n return new ModuleI18nShim(modelI18n);\r\n }\r\n return modelI18n;\r\n },\r\n\r\n main: modelI18n,\r\n}))(modelI18nMock({ dictionary, options }));\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__8__;","module.exports = __WEBPACK_EXTERNAL_MODULE__9__;","module.exports = __WEBPACK_EXTERNAL_MODULE__10__;","module.exports = __WEBPACK_EXTERNAL_MODULE__11__;","import _ from 'underscore';\r\nimport { safeGetString } from './string-utils';\r\n\r\n/* eslint-disable no-throw-literal, prefer-rest-params, no-plusplus, prefer-spread */\r\nexport class ModuleI18nShim {\r\n constructor(realI18n) {\r\n this.realI18n = realI18n;\r\n }\r\n\r\n getString(key) {\r\n if (!_.isString(key)) {\r\n throw 'Localization key was not a String';\r\n }\r\n\r\n let res = safeGetString(this.realI18n, key) || '';\r\n\r\n if (res) {\r\n if (arguments.length > 1) {\r\n for (let i = 1; i < arguments.length; i++) {\r\n const regex = new RegExp(`\\\\{${i - 1}\\\\}`, 'gi');\r\n\r\n res = res.replace(regex, arguments[i]);\r\n }\r\n }\r\n }\r\n\r\n return res || '';\r\n }\r\n\r\n getStringOrDefault(key, defValue) {\r\n if (!_.isString(key)) {\r\n throw 'Localization key was not a String';\r\n }\r\n\r\n if (!_.isString(defValue)) {\r\n throw 'The default value must be specified and must be a String';\r\n }\r\n\r\n const args = _.toArray(arguments);\r\n args.splice(1, 1);\r\n\r\n return this.getString.apply(this, args) || defValue;\r\n }\r\n}\r\n","import _ from 'underscore';\r\n\r\nexport function checkKey(key) {\r\n return !_.isString(key);\r\n}\r\n\r\nexport const safeGetString = (realI18n, key) => {\r\n if (key === '') {\r\n return '';\r\n }\r\n\r\n try {\r\n return realI18n.getString(key);\r\n } catch (e) {\r\n if (e.name === 'RangeError') {\r\n return undefined;\r\n }\r\n throw e;\r\n }\r\n};\r\n","import { curlyTemplate } from '@bingads-webui-universal/primitive-utilities';\r\nimport { checkKey, safeGetString } from './string-utils';\r\n\r\nexport class ComponentI18nShim {\r\n constructor(realI18n) {\r\n this.realI18n = realI18n;\r\n }\r\n\r\n getString(key, ...args) {\r\n if (checkKey(key)) return '';\r\n\r\n let res = safeGetString(this.realI18n, key) || '';\r\n\r\n if (res) {\r\n // eslint-disable-next-line\r\n for (const i in args) {\r\n const regex = new RegExp(`\\\\{${i}\\\\}`, 'gi');\r\n\r\n res = res.replace(regex, args[i]);\r\n }\r\n }\r\n\r\n return res || '';\r\n }\r\n\r\n get(key, model /* , options */) {\r\n if (checkKey(key)) return '';\r\n\r\n let ret = safeGetString(this.realI18n, key);\r\n\r\n if (ret) {\r\n if (model) {\r\n const compiled = curlyTemplate(ret);\r\n\r\n ret = compiled(model);\r\n }\r\n }\r\n\r\n return ret;\r\n }\r\n}\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__15__;","import _ from 'underscore';\r\nimport core from '@bingads-webui-universal/i18n-cldr-data-modern/core.json';\r\nimport enLocale from '@bingads-webui-universal/i18n-cldr-data-modern/locales/en.json';\r\nimport timeZoneData from 'iana-tz-data/iana-tz-data.json';\r\nimport { I18nModel } from '@bingads-webui-universal/i18n-model';\r\nimport { curlyTemplate } from '@bingads-webui-universal/primitive-utilities';\r\n\r\nI18nModel.setGlobalLocale('en-US');\r\nI18nModel.loadCLDRData(core);\r\nI18nModel.loadCLDRData(enLocale);\r\nI18nModel.loadTimeZoneData(timeZoneData);\r\n\r\nconst staticI18nModelMock = new I18nModel({\r\n loadCLDRData: loc => loc,\r\n loadTranslationData: () => ({}),\r\n failFast: true,\r\n});\r\n\r\nstaticI18nModelMock.ready();\r\nstaticI18nModelMock.getString = (key, model, { preprocess = _.identity } = {}) => {\r\n let ret = key;\r\n if (ret) {\r\n ret = preprocess(ret);\r\n\r\n if (model) {\r\n const compiled = curlyTemplate(ret);\r\n\r\n ret = compiled(model);\r\n }\r\n }\r\n\r\n return ret;\r\n};\r\n\r\nexport { staticI18nModelMock };\r\n","module.exports = __WEBPACK_EXTERNAL_MODULE__17__;"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 34);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 152bbb232f1a16da2302","export { Toggle } from './src/toggle';\r\n\n\n\n// WEBPACK FOOTER //\n// ./d:/dbs/el/aapusc/private/client-hig/packages/toggle/index.js","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\nimport _ from 'underscore';\r\n\r\nexport class Toggle extends React.PureComponent {\r\n static propTypes = {\r\n checked: PropTypes.bool,\r\n className: PropTypes.string,\r\n disabled: PropTypes.bool,\r\n id: PropTypes.string,\r\n name: PropTypes.string,\r\n onChange: PropTypes.func.isRequired,\r\n }\r\n\r\n static defaultProps = {\r\n checked: false,\r\n className: 'toggle',\r\n disabled: false,\r\n id: null,\r\n name: null,\r\n }\r\n\r\n constructor(props) {\r\n super(props);\r\n this.props = props;\r\n this.state = {};\r\n }\r\n\r\n render() {\r\n const {\r\n name, disabled, className, checked, onChange,\r\n } = this.props;\r\n const { id = _.uniqueId('toggle-') } = this.props;\r\n return (\r\n \r\n );\r\n }\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./d:/dbs/el/aapusc/private/client-hig/packages/toggle/src/toggle.js"],"names":["bind","module","exports","plugins","gridConfig","preferenceConfig","grid","pgrid","nameToPluginRefMap","nameToDepsMap","softDependenciesMap","_","each","plugin","name","deps","isArray","softDependencies","softDependency","has","push","generatePluginNameMaps","isFunction","customDepsMap","sortedOrder","sortedList","graph","permVisited","tempVisited","notVisited","keys","length","visit","pop","topoSort","map","uniq","flatten","values","dep","generateDepGraph","mapObject","without","concat","difference","getOrderToInitializePlugin","gridFactory","factory","vnext","pluginName","use","create","config","performanceLog","merge","addPluginConfigToGridConfig","node","Error","unshift","Suggestion_lightbox_ABL_AddressValidation_Title","_TL_","Suggestion_lightbox_ABL_AddressValidation_MessageNoSuggestions","Suggestion_lightbox_ABL_AddressValidation_AddressInvalid_MessageNoSuggestions","Suggestion_lightbox_ABL_AddressValidation_SelectInvalidAddress","Suggestion_lightbox_ABL_AddressValidation_AddressSuggestionIntro","Suggestion_lightbox_ABL_AddressValidation_AddressMessageWithSuggestions","Suggestion_lightbox_ABL_AddressValidation_AddressInvalid_MessageWithSuggestions","Suggestion_lightbox_ABL_AddressValidation_AddressMidMessageBlock","Suggestion_lightbox_ABL_AddressValidation_AddressInvalid_MessageWarning","Suggestion_lightbox_ABL_AddressValidation_Banner_SaveInvalidAddress","Suggestion_lightbox_ABL_AddressValidation_PrimaryButton","Suggestion_lightbox_ABL_AddressValidation_SecondaryButton","InvoiceABLEnforcement_DialogTitle","InvoiceABLEnforcement_DialogDescription","InvoiceABLEnforcement_SubDescription1","InvoiceABLEnforcement_SubDescription2","InvoiceABLEnforcement_SubDescription3","InvoiceABLEnforcement_VerifyMessage","InvoiceABLEnforcement_DialogRedirect","Common_CancelLabel","i","aggregateStrings","legacyStrings","ValidationStringMap","addressTaxFormLegacyStrings","ablEnforcementLegacyStrings","DialogsLegacyStrings","ConfirmNoGSTINDialog","ConfirmTaxCertificateDialog","IndiaEInvoicingGenerationDialog","Remove","ConsolidatedBillingV2_BillingGroupChangeAlert","EInvoicing_StateValidationErrorMessage","EInvoicing_ZipCodeValidationErrorMessage","EInvoicing_GSTINValidationErrorMessage","BusinessAddressSelector_Tooltip_AriaLabel","CurrencySelector_Tooltip_AriaLabel","Preferred_Timezone_Tooltip_AriaLabel","CCMTErrorNumber_GstInNumberAddressNotMatch","Constants","CurrencyCode","CountryCode","AddFundsForm","i18n","className","estimatedTaxRate","topUpFundRange","topUpAmount","requiredTopUpAmount","isAutoRecharge","onToggleAutoRecharge","onAmountChange","showOptionalLabel","customizeErrors","currencyType","customizeCurrency","labelColClass","showAutoRechargeLabel","showAutoRechargeWarning","accountCurrencies","currentPaymentInstrument","legacyI18n","useMemo","buildLegacyI18n","ValidationLegacyStrings","isRequired","isFinite","requiredTopUpAmountTaxIncluded","getTaxIncludedTopUpAmount","topUpRange","getTopUpRange","inputSchema","properties","type","required","decimalLength","CurrencyDecimalLength","minimum","maximum","onValidate","useCallback","fund","amount","data","isValid","addFundsLabel","getString","displayIndiaEMandateInlineMessage","AccountUtils","isIndiaEmandateFailedPIAccount","account","BusinessAddress","Country","some","currency","INR","IN","currentPI","isAutoRechargeToggleEnabled","id","FormGroup","label","labelClass","ValidatedInputWithCurrency","key","min","max","validationProps","field","schema","errorProcessor","errors","oldError","InlineInfoAlert","ReactTemplate","model","formatCurrency","template","isEmpty","formatedPayment","getFormatedEstimatedPayment","rate","formatedTax","formatedAfterTax","renderTaxForm","helpPopupTopic","Toggle","checked","onChange","event","target","disabled","b","text","eMandateLink","href","IndiaEMandateOfficialUrl","rel","propTypes","shape","PropTypes","func","parseDecimal","string","bool","number","oneOfType","range","elementType","object","arrayOf","CreationDate","SupportsRecurringPayment","defaultProps","noop","fundingAmount","String","estimatedPayment","TaxUtils","getTaxAndBalance","currentBalance","taxAmount","appliedAmount","rawAmount","actingTaxRate","Math","parseFloat","toFixed","undefined","InputWithCurrency","props","TextInput","value","withError","withValidation","Validation_Number_Max_Length","Validation_Base_Field_Not_Valid","Validation_NotEmpty_Required_Field","Validation_Number_Range_Min","Validation_Number_Range_Max","Validation_Number_Range_Between","Validation_Number_Require_Numeric","BulkLinking_LinkingDetails_AutoRecharge","Label_AddFunds","Label_PaymentApplied","Label_SetupAutoRecharge","Label_Tax","Label_On","Label_Off","Label_Recommended","Form_Watermark_Optional","Auto_Recharge_Warning","IndiaEMandate_InlineWarning_FailedTransactionsPrimaryPI_Prepay_WithLink","IndiaEMandate_InlineWarning_EMandateLink","Prepay_AutoRechargeDescription","Prepay_RequiredTopUp_Warning","display","marginLeft","marginTop","marginBottom","verticalAlign","color","content","Account_CPFLabel","Account_CNPJLabel","Account_GSTINLabel","Account_PANLabel","Account_VATShortLabel","Account_VATIdLabel","Account_NITLabel","Account_BINLabel","Account_NPWPLabel","Account_TINLabel","Account_TaxIDLabel","Account_TINOrVATLabel","Account_TRNOrVATLabel","Account_VKNLabel","Account_VAT_TINLabel","Account_RFCLabel","Account_NDSKKSLabel","Account_AAHLabel","Account_CUITLabel","Account_VOENLabel","Account_IFULabel","Account_nTVALabel","Account_JCTLabel","Account_SSTLabel","Account_TBCLabel","Account_FINLabel","Account_VATRegNoLabel","Account_RIFLabel","Account_TPINLabel","Account_BRNLabel","Account_RUCLabel","Account_RUTLabel","Account_STRNLabel","Account_VAT_AbsentMessage","Account_VAT_AbsentMessage_Serbia","Account_ABNLabel","Account_NZGSTRegistrationNumberLabel","Account_GSTRegistrationNumberLabel","Account_PSTRegistrationNumberLabel","Account_QSTRegistrationNumberLabel","Account_CCMLabel","Account_IELabel","Account_UINLabel","Account_TRNLabel","TaxType_1","TaxType_2","Account_TaxTypeLabel","Label_Optional","Label_State_Tax_ID_Optional","Label_Required","Label_RequiredForBusinessCustomers","Label_RequiredForTaxRegisteredCustomers","Label_RequiredForVATRegisteredBusinessCustomers","Label_RequiredForCustomersClaimingTaxExemption","Label_RequiredForValueAddedTaxIVARegisteredCustomers","Label_RequiredForAllTheEntities","Account_ReverseChargeDocumentLabel","Account_ReverseChargeDocument_Download","Account_Attestation_Label","Account_ReverseChargeDocumentAttestation_Positive","Account_ReverseChargeDocumentAttestation_Negative","Account_ReverseChargeDocumentAttestation_Positive_StaticViewStatement","Account_ReverseChargeDocumentAttestation_Negative_StaticViewStatement","Account_ReverseChargeDocument_Uploaded","Account_TaxCertificate_Uploaded","Account_PANMissingMessage","Account_PANFormatValidationMessage","Account_VATValidationMessage","Account_UnitedArabEmiratesVATFormatValidationMessage","Account_IsraelVATFormatValidationMessage","Account_VietnamVATFormatValidationMessage","Account_NorwayVATFormatValidationMessage","Account_TurkeyVATFormatValidationMessage","Account_GlobalThailandVATFormatValidationMessage","Account_GeorgiaVATFormatValidationMessage","Account_BangladeshVATFormatValidationMessage","Account_IndonesiaVATFormatValidationMessage","Account_BelarusVATFormatValidationMessage","Account_IcelandVATFormatValidationMessage","Account_MoldovaVATFormatValidationMessage","Account_ZimbabweVATFormatValidationMessage","Account_GlobalNigeriaVATFormatValidationMessage","Account_BahrainVATFormatValidationMessage","Account_CambodiaVATFormatValidationMessage","Account_KenyaVATFormatValidationMessage","Account_SaudiArabiaVATFormatValidationMessage","Account_OmanVATFormatValidationMessage","Account_GhanaVATFormatValidationMessage","Account_CameroonVATFormatValidationMessage","Account_UzbekistanVATFormatValidationMessage","Account_FijiVATFormatValidationMessage","Account_GuatemalaVATFormatValidationMessage","Account_TheBahamasVATFormatValidationMessage","Account_PhilippinesVATFormatValidationMessage","FilePicker_ErrorMessage_Required_Global","Account_GSTINFormatValidationMessage","Account_CPFValidationMessage","Account_CNPJValidationMessage","Account_CNPJMissingMessage","Account_CCMMissingMessage","Account_CCMValidationMessage","Account_IEValidationMessage","Account_ABNValidationMessage","Account_NZGSTRegistrationNumberFormatValidationMessage","Account_NewZealandGSTRegistrationNumberFormatValidationMessage","Account_SGGSTRegistrationNumberFormatValidationMessage","Account_PIBLabel","Account_PIBNumberMissingMessage","Account_PIBNumberFormatValidationMessage","Account_LegalNumberLabel","Account_SerbiaLegalNumberFormatValidationMessage","Account_IndiaGSTINFormatValidationMessage","Account_LegalIdentifierNumber","Armenia_Legal_Identifier_Description","Azerbaijan_Legal_Identifier_Description","Brazil_Legal_Identifier_Description","China_Legal_Identifier_Description","Hungary_Legal_Identifier_Description","Turkey_Legal_Identifier_Description","India_Legal_Identifier_Description","Iraq_Legal_Identifier_Description","Kazakhstan_Legal_Identifier_Description","Kyrgyzstan_Legal_Identifier_Description","Moldova_Legal_Identifier_Description","Myanmar_Legal_Identifier_Description","Poland_Legal_Identifier_Description","Russia_Legal_Identifier_Description","Saudi_Arabia_Legal_Identifier_Description","South_Africa_Legal_Identifier_Description","South_Sudan_Legal_Identifier_Description","Tajikistan_Legal_Identifier_Description","Thailand_Legal_Identifier_Description","Ukraine_Legal_Identifier_Description","United_Arab_Emirates_Legal_Identifier_Description","Uzbekistan_Legal_Identifier_Description","Venezuela_Legal_Identifier_Description","Vietnam_Legal_Identifier_Description","Bangladesh_Legal_Identifier_Description","Bhutan_Legal_Identifier_Description","Nepal_Legal_Identifier_Description","Pakistan_Legal_Identifier_Description","Sri_Lanka_Legal_Identifier_Description","Maldives_Legal_Identifier_Description","Account_BusinessLocation_Label","BusinessAddressControl_Address","AddressControl_AddressLine1","AddressControl_AddressLine2","AddressControl_City","AddressControl_StateOrProvince","AddressControl_State","AddressControl_Province","AddressControl_ZipCode","AddressControl_PostalCode","AddressControl_ZipOrPostalCode","Billing_InvoiceSettings_EnterNewAddress","AddressControl_LegalBusinessName","Customer_CustomerNameRequiredValidationMessage","Customer_CustomerNameMaxLengthValidationMessage","Customer_CustomerNameMinLengthValidationMessage","Billing_Settings_UsersListPhoneNumber","Common_PhoneNumberRequired","Common_BusinessPhoneMaxLengthValidationMessage","Common_BusinessPhoneMinLengthValidationMessage","Common_PhoneNumberInvalid","Validation_String_Max_Length","Validation_String_Invalid_Characters","AddressControl_AddressLine3","AddressControl_AddressLine4","AddressControl_ProvinceOrRegion","AddressControl_Country","TimeZone","PreferredTimeZone","TaxOptionType","Account_VATCertificateVerificationLabel","Account_LocalVATRegistrationNumberLabel","Account_TaxCertification","Account_TaxCertificate","Account_TaxCertificate_Or_EquivalentProof","Account_TaxCertification_Colombia","Account_Tax_Exemption_Certificate","Account_ColombiaVATLabel","Account_ColombiaVatNumberValidationMessage","Account_ColombiaCertificateValidationMessage","Account_ColombiaCertificationExecutionDateValidationMessage","Account_ColombiaVATFormatValidationMessage","Account_CertificateSizeValidationMessage","Account_HungaryVATFormatValidationMessage","Account_NigeriaVATFormatValidationMessage","Account_PortugalVATFormatValidationMessage","Account_ThailandVATFormatValidationMessage","Account_AustraliaGSTNumberFormatValidationMessage","Account_CanadaGSTRegistrationNumberFormatValidationMessage","Account_CanadaBCPSTRegistrationNumberFormatValidationMessage","Account_CanadaQCQSTRegistrationNumberFormatValidationMessage","Account_CanadaMBPSTRegistrationNumberFormatValidationMessage","Account_CanadaSKPSTRegistrationNumberFormatValidationMessage","Account_ArmeniaVATFormatValidationMessage","Account_BarbadosVATFormatValidationMessage","Account_KazakhstanVATFormatValidationMessage","Account_LaosVATFormatValidationMessage","Account_MexicoVATFormatValidationMessage","Account_NepalVATFormatValidationMessage","Account_SouthAfricaVATFormatValidationMessage","Account_ArgentinaVATFormatValidationMessage","Account_AzerbaijanVATFormatValidationMessage","Account_BeninVATFormatValidationMessage","Account_ChinaVATFormatValidationMessage","Account_IvoryCoastVATFormatValidationMessage","Account_JapanVATFormatValidationMessage","Account_MalaysiaVATFormatValidationMessage","Account_MyanmarVATFormatValidationMessage","Account_SurinameVATFormatValidationMessage","Account_TajikistanVATFormatValidationMessage","Account_UkraineVATFormatValidationMessage","Account_VenezuelaVATFormatValidationMessage","Account_ZambiaVATFormatValidationMessage","Account_EgyptVATFormatValidationMessage","Account_EgyptTRNFormatValidationMessage","Account_SouthKoreaVATFormatValidationMessage","Account_PeruVATFormatValidationMessage","Account_UruguayVATFormatValidationMessage","Account_PanamaVATFormatValidationMessage","Account_PakistanVATFormatValidationMessage","Account_SenegalVATFormatValidationMessage","Account_TaiwanVATFormatValidationMessage","Account_UINValidationMessage","Common_NA_Text","FilePicker_ExploreFile","FilePicker_RemoveFile","FilePicker_AddNewFile","FilePicker_ErrorMessage_Required","FilePicker_ErrorMessage_Required_VAT","FilePicker_ErrorMessage_Required_VAT_Colombia","FilePicker_ErrorMessage_ExtensionNotAllowed","FileUpload_Failed","FileUpload_Succeed","Account_TaxCertificationStatus_Info_174","Account_TaxCertificationStatus_Info_175","Account_TaxCertificationStatus_Info_176","Account_TaxCertificationValidationResult","Account_TaxCertificationStatus_Approve","Account_TaxCertificationStatus_Reject","Account_TaxCertificationExecutionDate","ValueNoneLabel","AddressCountry_HelpPopup_AriaLabel","BusinessLocation_Tooltip_AriaLabel","AddressControl_LegalBusinessName_Tooltip_AriaLabel","Account_TaxCertification_ViewCert","Account_Tax_Certificate_Absent","Account_Tax_Certificate_Absent_Colombia","Account_TaxCertificationDeclineReason","Account_TaxCertificate_DeclineReasonType_1","Account_TaxCertificate_DeclineReasonType_2","Account_TaxCertificate_DeclineReasonType_3","Account_TaxCertificate_DeclineReasonType_4","Account_VatRequired","AccountGrid_TaxInformation_VatStatus_174","AccountGrid_TaxInformation_VatStatus_175","AccountGrid_TaxInformation_VatStatus_176","AccountGrid_TaxInformation_VatStatus_177","Account_ChileIVAorVATConfirmLabel","Account_ChileIVAorVATConfirmPositive","Account_ChileIVAorVATConfirmNegative","Account_ChileIVAOrVATTaxPayerPositiveLabel","Account_ChileIVAOrVATTaxPayerNegativeLabel","Account_ChileWHTConfirmLabel","Account_ChileWHTConfirmPositive","Account_ChileWHTConfirmNegative","Account_ChileWithholdingTaxExemptedPositiveLabel","Account_ChileWithholdingTaxExemptedNegativeLabel","Account_ChileVATLabel","Account_ChileVatNumberValidationMessage","Account_RUTNumberRequired","Label_RequiredForIVAorVATTaxPayerCustomers","GSTINNumberTooltipAriaLabel","GSTINNumberInputAriaLabel","PANNumberTooltipAriaLabel","PANNumberInputAriaLabel","SecurityAction","AutoBillingGroup","accountData","accountId","billtoCustomerId","billtoSAPId","initialBillingGroupId","setLoading","useState","enableDropdown","setEnableDropdown","selectedBillingGroup","setSelectedBillingGroup","initialSelectedOption","AutoGroupOptions","AddToExistingGroup","AutoGroupValueOptionMap","selectedKey","setSelectedKey","classes","useStyles","useJsData","jsData","Account","find","Promise","resolve","accountDataFetched","loading1","loading","getCustomerPermission","customerId","securityActions","CustomerUpdate","customerPermissions","accountDataFinal","requestPayload","address","get","currencyCode","taxInformation","useJsDataCallback","PotentialBillingGroups","potentialBillingGroups","loadPotentialBillingGroups","execute","loading2","useEffect","getDefaultSelectedBillingGroup","useLayoutEffect","onDropdownChange","autoGroupOptions","potentialBillingGroupsAvailable","compact","AutoGroup","onRenderField","BillingGroupDropdown","billingGroups","SetItLater","render","HelpPopup","topic","handleChoiceGroupChange","ev","option","Label","LabelId","ChoiceGroup","ariaLabelledBy","options","fallbackOption","dropdownOptions","billingGroup","Key","Value","defaultSelectedKey","Dropdown","placeholder","styles","dropdown","Object","freeze","null","createUseStyles","padding","width","fontWeight","Notification_lightbox_Coupon_Title_Signup_Success","Notification_lightbox_Coupon_Message_SmartSignup_Success","Notification_lightbox_Coupon_Message_SmartSignup_SuccessTaxable","Brief_SignupEvent","Notification_lightbox_Coupon_Title_SmartSignup_RedeemFailed","Notification_lightbox_Coupon_Message_SmartSignup_RedeemFailed","Notification_lightbox_Coupon_Message_Signup_Failure_PreviouslyAdvertised","Notification_lightbox_Coupon_Message_Signup_Failure_Generic","Notification_lightbox_Coupon_Title_Signup_Failure_ContactSupport","Notification_lightbox_Coupon_Message_Signup_Failure_ContactSupport","Notification_lightbox_Coupon_SubMessage_TimeIsTicking","Notification_lightbox_Continue","Notification_lightbox_GotIt","Notification_lightbox_Coupon_Message_MSANSignup_Success","Notification_lightbox_Coupon_Message_MSANSignup_SuccessTaxable","Label_BillingAddress","datePickerClassName","getDate","date","isString","parseDate","RIOThruDateOptions","hasIOExpiredMessage","minDate","isValidDate","isCivilDateInOpenRange","getCivilDateFromDate","Date","IODatePicker","maxDate","onChanged","staticDate","dateValue","alwaysShowError","allowImmediateStart","allowEndless","allowRecurringIO","seriesEndOption","isIOExpired","useI18n","customValidator","defaultValidator","ImmediateDatePicker","selectedDate","EndlessDatePicker","EndByOccurrences","SingleDatePicker","MaxDateForIODatePicker","instanceOf","nullable","isImmediateStartDate","InsertionOrderUtils","ImmediateDate","StartDateOptions","useDefaultStyles","getImmediateDatePickerStyles","disableDatePicker","isImmediateEffectiveDate","DateUtils","isDateWithoutTimeEqual","selectedImmediateDate","formattedMinDate","formatDate","raw","CommonConstants","StandardDateFormat","hideDefaultSelectedDate","onDateChanged","handleImmediateDateChange","selectedOptionKey","immediateDatePicker","datePicker","backupInput","marginRight","flex","backupIO","fontSize","order","justifyContent","flexDirection","alignItems","flexWrap","whiteSpace","lineHeight","paddingLeft","IOInlineSmartRecContainer","backgroundColor","DefaultPalette","themeLighterAlt","border","themePrimary","margin","IOInlineSmartRecIcon","top","IOInlineSmartRecButton","height","Container","alignSelf","Content","justsifyContent","gap","PropertyValue","RecommendationType","EntityConstants","types","InsertionOrderInlineSmartness","aid","showIOInlineSmartness","BAARecommendations","findAll","onJsonError","isStrictMode","suggestedStartDate","RecommendIOStartDate","ioItems","ioValidationFields","isRecurringIO","hideSpecificRecommendation","AccountId","startDate","FromDate","frequencyType","FrequencyType","spendCapAmount","SpendCapAmount","budgetSuggestionScenario","getBudgetSuggestionScenario","endDate","getEndDate","useForecastingDailySpend","forecastingDailySpend","forecastingDayCount","getForecastingDayCount","forecastingSpend","getForecastingSpend","isShowForecastingSpend","getIsShowForecastingSpend","isSpendCapAmountValid","IOInputItemNames","suggestionType","getBudgetSuggestionType","suggestedBudget","goDarkDays","canForecastDailySpend","BudgetSuggestionScenario","Invalid","withoutTime","formatStartDate","formatEndDate","AccountIOForecastingDailySpend","params","ForecastingDailySpend","EndlessDate","getFullYear","BudgetSuggestionType","Default","Endless","Rio","None","EioEndless","EioEndDate","RioEndless","RioEndDate","RioOccurence","ThruDate","SeriesEndOption","NoEndDate","EndByDate","RepeatCount","isEndlessIOEndDate","getNFrequencyEndDate","floor","MaxForecastingDayCount","getDaysOfARange","start","end","FrequencyDayCountMap","isNumber","getPrecision","sourceValue","isUnlimitedIOBudget","suggestedType","minValue","reservedDigits","len","toString","split","divisorDigits","divisor","pow","ceil","initialSpendCapAmount","isNull","WarningSpendCapAmountIncreaseFactor","isSingleAccount","RecurringInsertionOrderAdd","InsertionOrderCreation","generalRecommendationProps","RecommendationId","SeriesName","SeriesStartDate","BudgetPerOrder","Frequency","Number","useContext","I18nContext","validationLegacyStrings","IOFormInputSchema","selectedRadioKeys","SetEndDate","EndSeriesAfterOccurrences","itemName","isOccurrences","selectedRadio","setSelectedRadio","setDate","isDateValid","setIsDateValid","occurrences","setOccurrences","isOccurrencesValid","setIsOccurrencesValid","getEndlessDatePickerStyles","isDate","preDate","IODateRadio","radioKey","radioClassName","children","Radio","isSetEndDateInputDisabled","isSetOccurrencesInputDisabled","Fragment","ValidatedInput","skipValidation","IOInlineSmartnessItemNames","IOSpendCapAmount","originalSpendCapAmountValue","spendCapAmountValue","isWarningSpendCapAmountIncrease","allowUnlimited","isIOExhausted","budgetSuggestionProps","debounceSuggestionTime","ioInlineSmartnessInfo","isSuggestedBudgetLoading","showSuggestion","setShowSuggestion","onSpendCapAmountIncreaseOverValidate","useSpendCapAmountIncreaseOver","passiveMessages","warningMessage","onSpendCapAmountChanged","isSuggested","BudgetRecommendationItem","IsApplyButtonClicked","debouncedSuggestionChange","debounce","newShowSuggestion","cancel","SuggestedBudget","LastInputBudget","IsDisplayed","SuggestedDailySpend","EndlessSpendCapAmount","showErrorOnPassiveMessages","showSingleError","BudgetRIORecommendation","onApply","newI18n","UnlimitedBudget","getSpendCapAmountNumber","Unlimited","SetBudget","setSpendCapAmount","setIsSpendCapAmountValid","isUnlimitedRadioChecked","ioBudgetInputDisabled","BudgetRecommendation","BudgetEndlessRecommendation","StartDateRecommendation","IOInlineSmartRecommendationContainer","bold","registerIcons","icons","Insights","Glyphicon","glyph","getIOInlineSmartRecommendationContainerStyles","MessageBar","actions","MessageBarButton","onClick","isMultiline","messageBarIconProps","iconName","formatDecimal","minimumFractionDigits","maximumFractionDigits","FrequencyMonthI18nKeyMap","GeneralRecommendation","recommendationProps","getGeneralRecommendationStyles","RecommendationProperties","getRecommendationPropertiesStyles","propertyList","getDecimal","BackupSpendCapAmount","primarySpendCapAmountValue","extendDaysValue","backupSpendCapAmountValue","getBackupIOStyles","primarySpendCapAmountDecimal","validatedInputKey","validator","shouldSetBudget","isBackupSpendCapAmountOverOriginal","BackupIO","extendDaysDisabled","onExtendDaysChanged","showBackupExtendDays","backupSpendCapAmountDisabled","showBackupSpendCapAmount","numberOfExtendDays","BackupExtendDays","numberOfBudget","isExtendDaysOver","shouldSetExtendDays","BackupIOWithConfig","showOverOriginalWarning","Bold","InlineWarningAlert","InsertionOrder_BackupIOTip","InsertionOrder_BackupIOWithConfigTip","InsertionOrder_BackupExtendDays","InsertionOrder_BackupSetBudget","InsertionOrder_RecurringOccurrences","InsertionOrder_SPAExternalBulkCreateElectronicIo_NewLegalText","InsertionOrder_SPAInternalBulkCreateElectronicIo_NewLegalText","InsertionOrderError_SpendCapAmountIncreaseOverFactorTen","InsertionOrderError_EndDateExpired","InsertionOrderError_ExtendDaysLarger","InsertionOrderError_ExtendDays_NotZero","InsertionOrderError_BackupSpendCapAmount_NotZero","InsertionOrderError_BackupSpendCapAmount_OverOriginal","InsertionOrderError_SpendCapAmountExhausted","InsertionOrderForm_EndSeriesAfterOccurencesLabel","InsertionOrderForm_NoEndDateLabel","InsertionOrderForm_SetBudgetLabel","InsertionOrderForm_SetEndDateLabel","InsertionOrderForm_UnlimitedBudget_InlineWarningMessage","InsertionOrderForm_UnlimitedLabel","InsertionOrderWarning_BackupSpendCapAmount_OverOriginal","SignUpAgreementLinkText","IOTermsAndConditionsDescription","termsAndConditionsUrl","isInternal","buttonText","termsAndConditionsLink","Link","ioControlsStrings","ioFromStrings","AgencyLink_Invite_ImmediateDateString","ApplyLabel","Button_Submit","ColumnName_AccountId","Common_EditLabel","Common_SaveLabel","Grid_Filters_AddAnotherExpression","InsertionOrder_BulkCreateEIOWithRecommendation_CreateSectionTitle","InsertionOrder_BulkCreateEIOWithRecommendation_EmailSummaryAlert","InsertionOrder_BulkCreateEIOWithRecommendation_FeedbackLink","InsertionOrder_BulkCreateEIOWithRecommendation_UpdateSectionTitle","InsertionOrder_BulkCreateEIOWithRecommendationGird_EmailSummaryAlert","InsertionOrder_EditIOInRecurringSeriesName_InfoMessage","InsertionOrderError_DealPointIdOrRecordCenterIdRequired","InsertionOrderForm_AgencyIdOrPoLabel","InsertionOrderForm_BudgetLabel","InsertionOrderForm_BackupIOLabel","InsertionOrderForm_CommentLabel","InsertionOrderForm_CreateDescription","InsertionOrderForm_DealPointIdLabel","InsertionOrderForm_DescriptionEditEio","InsertionOrderForm_EndDateLabel","InsertionOrderForm_InternalBulkCreateElectronicIo_AutoApprovalText","InsertionOrderForm_OrderNameLabel","InsertionOrderForm_RecordCenterIdLabel","InsertionOrderForm_RemoveAllExpressionsLabel","InsertionOrderForm_RemoveExpressionLabel","InsertionOrderForm_SPABulkCreateIntroText","InsertionOrderForm_SPABulkCreatePanelIntroText","InsertionOrderForm_StartDateLabel","InsertionOrderForm_TitleCreateInsertionOrders","InsertionOrderForm_TitleEdit","InsertionOrderForm_TitleEnterInsertionOrder","InsertionOrderGrid_HeaderOptional","Label_Clear","LearnMore","CommonValidationMessage_DuplicateValue","CommonValidationMessage_InvalidDate","CommonValidationMessage_InvalidNumber","CommonValidationMessage_OutofRange","CommonValidationMessage_RequiredField","CommonValidationMessage_TextTooLong","InsertionOrder_RecurringBudgetPerOrder","InsertionOrder_RecurringEndAfter","InsertionOrder_RecurringEndByDate","InsertionOrder_RecurringEndOccurrences","InsertionOrder_RecurringFrequency","InsertionOrder_RecurringFrequencyOptionBIMonthly","InsertionOrder_RecurringFrequencyOptionMonthly","InsertionOrder_RecurringFrequencyOptionQuarterly","InsertionOrder_RecurringFrequencyOptionYearly","InsertionOrder_RecurringInsertionOrder_ValidationFailureMessage","InsertionOrder_RecurringNoEndDate","InsertionOrder_RecurringNotes","InsertionOrder_RecurringOccurrencesNotToUpdate","InsertionOrder_RecurringOccurrencesToUpdate","InsertionOrder_RecurringOrderName","InsertionOrder_RecurringPurchaseOrder","InsertionOrder_RecurringSeriesEndDate","InsertionOrder_RecurringSeriesName","InsertionOrder_RecurringSeriesStartDate","InsertionOrder_SPAExternalBulkCreateElectronicIo_LegalText","InsertionOrderForm_RecurringCreateIntroText","InsertionOrderForm_RecurringEditIntroText","InsertionOrderForm_TitleCreateRecurringInsertionOrders","InsertionOrderForm_TitleEditRecurringInsertionOrders","InsertionOrder_CreateUnlimitedEndlessIO_InfoMessage","isIOValid","SingleIoForm","defaultIO","isManualIO","isCreateMode","displayCurrency","mtIOEditableMap","cancelButtonCallback","submitButtonCallback","errorOnSubmitCallback","permissions","ioFormRef","useRef","insertionOrder","setInsertionOrder","isEndlessOrUnlimitedIO","setIsEndlessOrUnlimitedIO","editableIOFieldsMap","useIOEditableControl","current","scrollIntoView","newIO","isSubmitAllowed","isIOItemNeedValidation","AccountName","FriendlyName","isEqual","toDateString","AgencyIdOrPo","DealPointId","RecordCenterId","Comment","ref","replace","HelpLink","query","BaseIoForm","onInputChange","originalIO","customizeCurrencies","accountsList","isDisplayStaticAccountName","IsInSeries","isDealPointIdOrRecordCenterIdValid","DefaultIOPropTypes","DefaultAccountPropTypes","PermissionsPropTypes","emptyIO","DefaultEditableIOFieldsMap","DefaultIoFormData","DefaultIO","DefaultValidationFields","DefaultPropTypes","DefaultEditableIOFieldsMapPropTypes","minEffectiveDate","fixedFromDate","isAgencyLinking","isDisplayAccountSelector","isWithRecommendation","existedSeriesNames","isShowBackupIO","isBackupIOChanged","setIsBackupIOChanged","suggestedStartDateFromProps","InsertionOrderRow","DefaultExistedSeriesNames","InsertionOrderLabel","getIsShowBackupIOParam","showBackupIO","onChangedField","currentAccount","newIOItems","newValidationFields","newIOInlineSmartnessInfo","isNewSeriesEndOptionIsOccurrences","DisplayAccountName","AccountBackupIOConfigModel","CurrencyType","StartDateRecommendationItem","GeneralRecommendationItem","preIO","IOInlineSmartnessInfo","changeExtendDays","ExtendDays","changeBackupSpendCapAmount","renderValidationInput","InputComponent","isOptional","currencies","ClassNameWrapper","hideHelpPopup","onStartDateChanged","showStartDateRecommendation","useSuggestedBudget","showGeneralRecommendation","SuggestedStartDate","LastInputStartDate","StartDate","EndDate","Name","RIOSeriesNameInput","seriesName","IOAccountIdSelector","defaultAccountId","hideTitle","RIOFrequencySelector","frequency","SeriesEndDate","getMinDateForEndDate","Expired","NoBudget","IsEnabled","TextArea","InsertionOrderStatus","IOCreationSource","oneOf","Status","IOInputItemClassNames","Currency","BaseIOFormClassNames","CLEAR","UPDATE","UPDATEALL","REMOVE","REMOVEALL","ADD","getCurrentAccount","findWhere","first","setCurrentAccount","accountMap","isAutoApproval","IsAutoApproval","accountBackupIOConfigModel","selectedOption","onSelect","selectedItem","renderItem","element","style","float","recurringInsertionOrder","defaultRio","isOccurences","isThruDateNeedValidation","titleNameMap","helpPopupMap","LineByLineFormGroup","flyoutMessageHtml","originalSeriesName","currentSeriesNames","currentAccountIdSeriesName","accountIdNamesMap","allSeriesNamesForCurrentAccount","getIsDupSeriesName","checkName","toLowerCase","isDupSeriesName","FrequencyMonthCountMap","frequencyEnum","monthlyFrequency","invert","Monthly","dropdownItems","freq","currentFrequency","item","isSpendCapAmountEditChanged","originalThruDate","isSpendCapAmountEditabled","isExpiredIO","setEditableIOFieldsMap","preEditableIOFieldsMap","isObject","IOForm","ioPanelSettings","setFooterState","ioPanelIntroText","isSubmitDisbaled","recommendationId","ioPanelHeaderText","SingleIOPanelForm","isOpen","footerState","getSingleIOPanelFormStyles","Panel","IOPanel","closeButtonAriaLabel","headerText","isFooterAtBottom","isLightDismiss","onDismiss","onRenderFooterContent","PrimaryButton","DefaultButton","layerProps","IOLayer","errorColor","palette","maxHeight","background","result","getSingleIOFormStyles","textOverflow","textAlign","position","zIndex","overflowY","overflow","left","minWidth","minHeight","borderTop","RIOForm","RecurringIOFormBase","isRIORecommendationMode","singleAccountId","rioFormRef","setRecurringInsertionOrder","getRIOFormStyles","useSuggestedStartDate","generalRecommendationPropsFromRec","useGeneralRecommendation","submitButtonLabel","isRIOFormSubmitAllowed","RecurringIOForm","rest","jsDataFromContext","CcJsDataContext","initialJsData","CcJsDataContextProvider","RecurringIOPanelForm","isSubmitButtonDisabled","ioFormStrings","ioGridStrings","Account_AccountNameLabel","Account_CurrencyLabel","Column_Action_Delete_Text","Column_Action_Field_Text","ColumnName_Action","Grid_ShowRows","InsertionOrder_NoEndDate","InsertionOrder_RecurringEndDate","InsertionOrder_RecurringStartDate","InsertionOrder_Unlimited","InsertionOrderForm_CreateNewInsertionOrder","InsertionOrderForm_CreateRecommendationPanelIntroText","InsertionOrderForm_CreateRecommendationType","InsertionOrderForm_ProvideInsertionOrderDetails","InsertionOrderForm_RecommendationTypeLabel","InsertionOrderForm_SingleCreateInsertionOrder","InsertionOrderForm_UpdateRecommendationPanelIntroText","InsertionOrderForm_UpdateRecommendationType","InsertionOrderGrid_HeaderComment","InsertionOrderGrid_HeaderEndDate","InsertionOrderGrid_HeaderStartDate","Loading","RecommendationIOGrid_Title","entityConstants","InsertionOrdersGridFieldNames","primaryKey","singleIOItems","recurringIOItems","RecommendationIOGrid","recommendations","applyButtonCallback","feedbackLinkCallback","logger","editRIO","setEditRIO","editPanelVisible","setEditPanelVisible","selectedItems","setSelectedItems","allRIOs","setAllRIOs","selectAndRefreshHandler","setSelectAndRefreshHandler","hasSingleIO","io","contains","SingleIORecommendationType","getRecommendationIOGridStyle","applyButtonText","gridViewInstance","IOGridView","ios","hasRecurringIO","RecurringIORecommedationType","onApplyButtonClick","onSaveRIO","newIOs","rio","pick","EndOccurrences","parseInt","newIos","selectRowId","trace","RecommendationIOLog","SaveRIO","IORecommendationGrid","BackboneInstanceWrapper","instance","eventHandlers","on","handleEditLinkClicked","ioToEdit","selectAndRefresh","EditRIO","outputSelectedRows","selectedIOs","seriesEndOptions","SeriesStartDateString","SeriesEndDateString","PurchaseOrder","OrderName","Notes","events","onActionLinkClick","currentTarget","dataset","linkname","idString","ActionLinkName","Edit","this","trigger","gridView","items","slice","patch","dataSource","selectRow","Delete","ioIdToDelete","onRowSelected","initialize","isRecommendationGrid","pgridFactory","tableClasses","columns","getColumnConfig","el","selection","selectable","uiBlockerPlugin","Backbone","View","recurringIOColumns","title","property","request","formatBudgetToFixedDecimal","frequencyTextKey","hiddenColumnClass","singleIOColumns","InsertionOrderUpdate","StartDateText","EndDateText","endDateColumnTemplate","defaults","isSingleIORecommendation","formatEndlessIOEndDateInGrid","EndDateColumnFields","Action","actionColumnTemplate","displayDeleteLink","ActionColumnFields","formatUnlimitedIOBudgetInGrid","headClasses","bodyClasses","GridLoad","BulkApply","BackupIOLogsPrefix","BackupIOLogsScenario","SaveLink","CreateAnotherLink","GridViewInstanceEdit","GridViewInstanceDelete","pug","require","locals","pug_interp","pug_html","locals_for_with","attr","escape","call","endDateValue","borderRadius","IOBulkCreateGrid","paddingBottom","borderBottom","paddingTop","IOSingleCreateGrid","listStyleType","paddingRight","borderLeft","scrollIntoExpectedView","getBackupThruDate","extendDays","backupThruDate","valueOf","BulkCreateIOGridBase","getInitialNewIO","ioGridRef","gridIOs","setGridIOs","editIO","setEditIO","setNewIO","reRenderNewIOForm","setReRenderNewIOForm","setAlwaysShowError","isSubmitDisabled","setIsSubmitDisabled","getBulkCreateIoFormStyle","suggestedStartDateFromRec","calcSuggestedStartDate","calcGeneralRecommendationProps","newIORecommendationId","needValidateBackupIO","IsEnable","updateBackupIO","omit","isBackup","onSaveAllNewIOs","logBackupIOInfo","scenarioName","ioToCreateList","union","onSaveSingleIOAfterEdit","preIOs","handleDeleteLinkClicked","ioToDelete","filter","newIOFromForm","Button","uniqueId","preKey","btnStyle","BulkCreateIOGrid","message","budget","extendDay","extendBudget","backupStartDate","backupEndDate","backupBudget","endDateFromRec","latestEndDate","chain","reduce","_latestEndDate","SingleCreateIOGrid","onClear","getSingleCreateIoFormStyle","isUndefined","haveIO","Prepay_FundingPage_CheckInstructionsHeader","Prepay_FundingPage_CheckPayeeLabel","Prepay_FundingPage_CheckMailingAddressLabel","Prepay_FundingPage_CheckExpressMailingAddressLabel","Prepay_FundingPage_WhatToExpectLabel","Prepay_FundingPage_WhatToExpectCheck","Prepay_FundingPage_WireInstructionsHeader","OfflinePaymentInstructionLabel_bankName","Prepay_FundingPage_WhatToExpectWire","UpiId","formatAndSortPis","paymentInstruments","skipSort","pi","PaymentUtils","extendPi","sortPiList","getNotSetItem","displayName","PaymentMethodDropdown","selectedPiId","onSelectPi","skipFormat","includeNotSet","isForVNext","isUPIEnabled","isNukePIEnabled","dynamic","NukePI","pis","Id","Type","defaultPi","isOnHold","isExpired","isNukePIInvalid","cardStatus","Visa","MasterCard","Discover","JCB","JAL","PayPal","PiDropdownStyles","DropdownStyles","Next","PaymentOptionId","OrderedPaymentOptionId","OrderedPaymentOptionEnum","getPaymentOptionTextById","commonPropTypes","onPaymentOptionChange","PaymentOptionDropdown","selectedPo","paymentOptions","isNumberValue","pos","intersection","newPo","notSetPlaceholder","Select","hidden","po","PaymentOptionDropdownWithId","PaymentOptionDropdownWithEnum","Prepay","offlineInstructionDisplayLegacyStrings","AddFunds_SmartSignupLabel","Label_On_AutoRechargePromotion","AutoRecharge_InlineAlert_Signup","Prepay_FundingPage_AutoRechargeLabel","Prepay_FundingPage_AutoRechargeAmountDescription","Generic_Error","ScaChallengeFailed","OfflinePayment_InstructionsBlock_SPA","OfflinePayment_InstructionsBlock_SPA_Part2","Prepay_FundingPage_EstimatedTaxesLabel","Prepay_FundingPage_EstimatedAppliedPaymentAmountLabel","NewUserConsentToAgreement","SignUp_Agreements_World","SignUp_Agreements_Germany_Line2","SignUp_Agreements_Germany_Line3","SignUp_Agreements_Germany_Line4","Validation_String_Min_Length","installedModules","moduleId","l","modules","m","c","d","getter","o","defineProperty","enumerable","r","Symbol","toStringTag","t","mode","__esModule","ns","n","prototype","hasOwnProperty","p","s","generateHashId","treeId","keyHierarchy","btoa","encodeURIComponent","JSON","stringify","expandNode","rootNode","every","any","hasChildren","treeView","isExpanded","expand","focusNode","focusKeyHierarchy","callback","$el","scrollIntoViewIfNeeded","onfocus","activeKeyHierarchy","initial","keyHierarchyAtFlattenedIndex","generateA11yInfo","index","a11y","setSize","posInSet","AccessibleTreeview","VirtualizedTreeview","attributes","role","tabIndex","itemTemplate","compose","treeItemTemplate","isActive","isFocus","contentHtml","nodeTemplate","focus","e","clickItem","keydown","empty","append","select","slient","update","$","hasClass","collapse","which","keyCode","Enter","Space","ArrowLeft","ArrowRight","flattenedIndexForKeyHierarchy","ArrowUp","ArrowDown","preventDefault","__WEBPACK_EXTERNAL_MODULE__9__","__WEBPACK_EXTERNAL_MODULE__10__","__WEBPACK_EXTERNAL_MODULE__11__","Boolean","cssClass","expanded","attrs","__WEBPACK_EXTERNAL_MODULE__13__","levels","fallbackLevel","level","getChild","alertCenter","toast","toastId","show","dismissible","once","window","scrollTo","clearTimeout","toastTimerId","setTimeout","dismiss","AlertCenter","useCarouselForErrors","alertListView","AlertCarouselView","AlertListView","getAlertListView","setChild","listenTo","args","newId","alert","newAlertId","set","dismissAll","DeterministicView","__WEBPACK_EXTERNAL_MODULE__3__","__WEBPACK_EXTERNAL_MODULE__4__","updateView","helpers","ensureChildView","setState","alertIds","alerts","alertId","AlertView","ignore","getState","alertCssClasses","Warning","Confirmation","Info","slideUp","action","remove","hasIcon","customCssClass","icon","defaultIcon","$$obj","pug_index0","$$l","carouselId","__WEBPACK_EXTERNAL_MODULE__12__","view","carouselTarget","reversedAlertIds","reverse","page","total","columnEnums","convertOneQuery","operatorObj","operator","valueOrigin","Field","Operator","OperatorMapping","Values","trim","convertOnePredicate","predicate","OperatorIdMapping","convertFilterQueryToPredicateArray","oneQueryConverter","queryList","$and","convertPredicateArrayToFilterQuery","predicates","onePredicateConverter","$eq","$neq","$contains","$gte","$doesnotcontain","$gt","$lt","__WEBPACK_EXTERNAL_MODULE__33__","__WEBPACK_EXTERNAL_MODULE__44__","__WEBPACK_EXTERNAL_MODULE__45__","BusyBlocker","loadingText","restProps","state","useFormService","isLoading","matches","FORM_STATES","LOADING","FETCHING","isSaving","SAVING","defaultLoadingText","UiBlocker","blocking","SaveBlocker","LoadBlocker","__WEBPACK_EXTERNAL_MODULE__58__","useBasicFooterStyles","makeStyles","footer","shorthands","BasicFooter","saveButtonText","saveDisabled","cancelButtonText","mergeClasses","root","SaveButton","CancelButton","appearance","send","isBlocking","onSaveClicked","FORM_EVENTS","SAVE","onCancelClicked","CANCEL","showDialog","CANCELING","useConfig","confirmText","abortText","onConfirmFn","onCancelFn","onConfirm","CONFIRM_CANCEL","onCancel","ABORT_CANCEL","Dialog","open","DialogSurface","DialogBody","DialogTitle","DialogContent","DialogActions","shouldShowConfirmDialog","CONFIRMING","disableConfirmPopup","CONFIRM_SAVE","ABORT_SAVE","useTitleBarStyles","stack","tokens","colorNeutralBackground2","fontSizeBase500","fontWeightBold","lineHeightBase500","fontSizeBase400","lineHeightBase400","displayMode","useResponsiveSize","hideCloseButton","Dismiss20Regular","DrawerHeaderTitle","__WEBPACK_EXTERNAL_MODULE__64__","__WEBPACK_EXTERNAL_MODULE__65__","usePageTemplateStyles","pageLayout","mainContainer","contentContainer","footerContainer","Blocker","TitleBar","Footer","CancelDialog","ConfirmDialog","usePanelTemplateStyles","panelLayout","LOAD","Drawer","modalType","DrawerHeader","DrawerBody","DrawerFooter","__WEBPACK_EXTERNAL_MODULE__34__","useSelectableCard","rootEnabled","colorNeutralBackground1Hover","colorNeutralBackground1Pressed","rootDisabled","selectionBorder","borderWidth","strokeWidthThick","borderStyle","borderColor","colorBrandBackground","selectionBorderEnabled","colorBrandBackgroundHover","colorBrandBackgroundPressed","selectionBorderDisabled","colorNeutralStrokeDisabled","SelectableCard","size","selected","tooltipText","ariaLabel","showTooltip","setShowTooltip","showSelectionBorder","FloatingActionWrapper","wrapped","Tooltip","relationship","visible","Card","floatingAction","onMouseEnter","onMouseLeave","__WEBPACK_EXTERNAL_MODULE__278__","__WEBPACK_EXTERNAL_MODULE__279__","mergedConfig","defaultConfig","DefaultLayoutContainer","LayoutContainer","DefaultTemplate","Layout","component","BasicTopBar","topBarProps","blockerProps","StepList","stepListProps","StepBar","stepBarProps","StepContainer","SummaryPanel","summaryPanelProps","BasicStepFooter","footerProps","CancelWizardDialog","cancelDialogProps","mergedProps","customerSelectorLocalization","CustomerSelector_ViewAllCustomers","CustomerSelector_ManageCustomers","CustomerSelector_Default","CustomerSelector_Recent","CustomerSelector_DefaultCustomerDisplayNameFormat","CustomerSelector_SingleAccountCountText","CustomerSelector_MultipleAccountsCountText","CustomerSelector_Loading","Customers_Selection_SearchBox_DefaultText","ManagerAccount_Selection_SearchBox_DefaultText","bingadsHeaderLocalization","Header_Title","Header_Skip","BingadsHeader_Gear_Tooltip","Header_Gear_Tooltip_NewUI","BingadsHeader_AccountAccess","BingadsHeader_BillingAndPayments","BingadsHeader_ManagerAccounts","BingadsHeader_Accounts","BingadsHeader_MySettings","BingadsHeader_NotificationSettings","BingadsHeader_CentralizedSettings","BingadsHeader_Feedback","BingadsHeader_Support","BingadsHeader_LogOut","BingadsHeader_AccountsSummary_Caption","BingadsHeader_AccountsSummary_ToolTip","BingadsHeader_ManagerDashboard_Caption","BingadsHeader_ManagerDashboard_ToolTip","BingadsHeader_Home_Caption","BingadsHeader_Home_ToolTip","BingadsHeader_Ucm_Caption","BingadsHeader_Ucm_ToolTip","BingadsHeader_Campaign_Caption","BingadsHeader_Campaign_ToolTip","BingadsHeader_Reports_Caption","BingadsHeader_Reports_ToolTip","BingadsHeader_Opportunity_Caption","BingadsHeader_Opportunity_ToolTip","BingadsHeader_Tools_Caption","BingadsHeader_Tools_ToolTip","BingadsHeader_Import_New_Caption","BingadsHeader_Import_New_ToolTip","BingadsHeader_Import_Caption","BingadsHeader_Import_ToolTip","BingadsHeader_ImportFile_Caption","BingadsHeader_ImportFile_ToolTip","BingadsHeader_ImportSchedule_Caption","BingadsHeader_ImportSchedule_ToolTip","BingadsHeader_Help","BingadsHeader_CrossAccountSearch_Caption","BingadsHeader_CrossAccountSearch_ToolTip","BingadsHeader_AccountInfoManageLocation_Caption","BingadsHeader_AccountInfoManageLocation_ToolTip","BingadsHeader_Desktop_Caption","BingadsHeader_Desktop_ToolTip","BingadsHeader_ExcelAddIn_Caption","BingadsHeader_ExcelAddIn_ToolTip","BingadsHeader_AdPreview_Caption","BingadsHeader_AdPreview_ToolTip","BingadsHeader_KeywordResearch_Caption","BingadsHeader_KeywordResearch_ToolTip","BingadsHeader_Analytics_Caption","BingadsHeader_Analytics_ToolTip","BingadsHeader_Cashback_Caption","BingadsHeader_Cashback_ToolTip","BingadsHeader_AdsLab_Caption","BingadsHeader_AdsLab_ToolTip","BingadsHeader_Cam_Caption","BingadsHeader_Cam_ToolTip","BingadsHeader_SegmentBuilder_Caption","BingadsHeader_SegmentBuilder_ToolTip","BingadsHeader_KeywordPlanner_Caption","BingadsHeader_KeywordPlanner_ToolTip","BingadsHeader_BusinessPortal_Caption","BingadsHeader_BusinessPortal_ToolTip","BingadsHeader_HotelCenter_Caption","BingadsHeader_HotelCenter_ToolTip","BingadsHeader_AudienceDashboard_Caption","BingadsHeader_AudienceDashboard_ToolTip","BingadsHeader_SwitchExpertMode","New_Feature_Label","AccountSelector_AllAccountsTitle","AccountSelector_Search_Placeholder","AccountSelector_RecentsTitle","AccountSelector_Loading","AccountSelector_SwitchAccountsMessage","AccountSelector_ShowInactiveAccountsMessage","AccountSelector_ManagingCustomerNumberDisplayFormat","AccountSelector_ManagingAccountNumberDisplayFormat","BingadsHeader_TryUIVNext","feedbackLocalization","Feedback_Email","Feedback_Message","Feedback_IncludeScreenshot","Feedback_Dialog_SendButton","Feedback_AdditonInformationHint","Feedback_AdditonInformationLink","Feedback_SuccessfulMessage","Feedback_FailedMessage","Feedback_Dialog_CancelButton","Feedback_Dialog_Title","validationLocalization","Validation_Array_Size_Max","Validation_Array_Size_Between","Validation_Array_Items_Invalid","Validation_Array_Items_Duplicate","Validation_NegativeKeywords_ListName_Required","Validation_NegativeKeywords_Max_Count","Validation_NegativeKeywords_Invalid_Keywords","Validation_NegativeKeywords_Required","simpleFormLocalization","SimpleForm_Button_Save","SimpleForm_Button_Cancel","SimpleForm_TotalRemainingCharactersText","SimpleForm_TotalRemainingCharactersText_FieldsList","SimpleForm_LearnMore","requestCallModalLocalization","RequestCallModal_Continue","RequestCallModal_Cancel","RequestCallModal_Close","RequestCallModal_CallMeBack","RequestCallModal_ReasonForCall","RequestCallModal_Description","RequestCallModal_Description_Placeholder","RequestCallModal_AdvertiserSupport","RequestCallModal_AgencySupport","RequestCallModal_AdultSupport","RequestCallModal_ComplexSupportScenario","RequestCallModal_OnboardingConsult","RequestCallModal_OptimizationConsult","RequestCallModal_AgencyConsultation","RequestCallModal_SmartCampaign","RequestCallModal_DMCSupport","RequestCallModal_UPSupport","RequestCallModal_SmartPageSupport","RequestCallModal_DialogReadyLabel","msSupportChatLocalization","MsSupportChatModal_Continue","MsSupportChatModal_Cancel","MsSupportChatModal_Close","MsSupportChatModal_Title","MsSupportChatModal_Description","MsSupportChatModal_Description_Placeholder","MsSupportChatModal_VirtualAgent_WelcomeMessage","MsSupportChatModal_DialogReadyLabel","RequestCallModal_ConversionTracking","MsSupportChatModal_BR_Alert","MsSupportChatModal_EN_Alert","switchExpertModalLocalization","SwitchForm_Close","SwitchExpertModal_Header","SwitchExpertModal_BodyLabel","SwitchExpertModal_Feature1","SwitchExpertModal_Feature2","SwitchExpertModal_Feature3","SwitchExpertModal_LinkLearnMore","SwitchExpertModal_ButtonStay","SwitchExpertModal_ButtonSwitch","BingAdsHeaderStrings","__WEBPACK_EXTERNAL_MODULE__16__","FilePickerWithoutStylesBase","fileList","onFileChange","allowedFileExtensions","maxCount","shouldAutoRename","passiveErrorMessages","customPlaceholder","exploreBtnStyle","useFilePickerContext","fileValidation","file","getFileValidationStatus","validateFileExtensionsFailedMessage","i18nKeys","useThrowOut","validatedFileList","edited","displayEmptyFile","setEdited","setDisplayEmptyFile","setFileList","handleAddNewFile","errorMessages","newFileList","generateFile","handleChangeExistFile","findIndex","newFile","splice","handleDeleteFile","fileId","filePicker","fileData","FilePickerView","onDelete","EMPTY_FILEDATA_ID","emptyFileCount","validatedFileListCount","canRenderAddNewButton","isListValid","isRequiredValid","list","ErrorMessages","messages","renderErrorMessage","FilePickerWithoutStyles","FilePickerContextProvider","customStrings","customStringsShapes","FilePicker","FilePickerStyles","__WEBPACK_EXTERNAL_MODULE__441__","click","files","accept","join","FilePickerContext","createContext","Provider","removeDuplication","newFileName","currentFileNameList","nameIndex","retValue","fileExtname","path","extname","fileBasename","basename","indexOf","fileName","isExtnameValid","customValidateResult","generateGuid","MIN_COUNT","pluck","customString","__WEBPACK_EXTERNAL_MODULE__445__","FilePicker_ErrorMessage_ExtensionNotAllowed_WithAllowedExtensions","FilePicker_Placeholder","textDecoration","calculateEachFileValidationResult","setValidatedFileList","shouldValidateFile","__WEBPACK_EXTERNAL_MODULE__420__","__WEBPACK_EXTERNAL_MODULE__456__","containerSelector","autoDismissTime","selector","dismissTime","logInstrumentation","document","querySelector","ReactDOM","FloatingBanner","getUniqueAlertId","logType","React","Component","constructor","super","appendantInfo","methodName","memo","info","showBanner","logTrace","timerId","willLog","innerText","nextMessage","isValidElement","componentDidMount","afterUpdate","componentDidUpdate","componentWillUnmount","Alert","mapAlertLevel","onActionClicked","actionClicked","levelMapping","extend","HelpRailViewId","PureComponent","ApexPlatform","Refresh","railviewid","railViewId","__WEBPACK_EXTERNAL_MODULE__119__","__WEBPACK_EXTERNAL_MODULE__120__","AppPerfMarkerContext","dataReady","perfMarker","usePerfMarker","startedFetchingData","startedRendering","WrappedComponent","autoEnd","Hoc","forwardRef","fn","childPerfMarker","createChild","getDisplayName","childName","contextPerfMarker","parseDateWithCurrentTime","toLocaleDateString","datePickerElement","isShowDatePicker","setIsShowDatePicker","setPassiveMessages","seletedDateString","setSeletedDateString","maxCivilDate","minCivilDate","selectedCivilDate","onClickInput","preState","preSeletedDateString","isNaN","getTime","onBlur","relatedTarget","newDate","isDateInRange","isDirty","onKeyPress","SingleMonthCalendar","defaultNavigatedDate","getCivilDateToday","defaultSelectedDate","today","navigatedDate","onSelectDate","formatCivilDate","isMonthPickerEnabled","getFirstDayOfWeek","__WEBPACK_EXTERNAL_MODULE__1003__","__WEBPACK_EXTERNAL_MODULE__217__","__WEBPACK_EXTERNAL_MODULE__222__","MSSupportInlineHelpOptions","supportOptions","uiActivity","useInlineHelpStyles","isChatAvailable","IfShowLiveChat","RequestCallText","customSupportOptions","isCallAvailable","titleId","container","dangerouslySetInnerHTML","__html","optionButton","PersonSupportIcon","supportHelpLocalization","SupportHelp_RequestCall","ChatMultipleIcon","SupportHelp_LiveChat","optionText","__WEBPACK_EXTERNAL_MODULE__68__","ChevronUpIcon","viewBox","fill","xmlns","ChatIcon","OpenInNewWindow","fontSizeBase200","colorNeutralForeground3","MSSupportMenuButton","popoverPosition","isExpandedDefault","setExpanded","menuListProps","liveChat","requestCall","Menu","positioning","onOpenChange","MenuTrigger","disableButtonEnhancement","MenuButton","menuIcon","MenuPopover","MenuList","MenuGroup","MenuGroupHeader","MenuItem","Divider","TransferSelector","searchProps","isLoadingItems","allItems","isBeyondAccountLimit","onAddAll","onAdd","onRemoveAll","onRemove","onDismissCallback","getTransferSelectorStyles","allSelectorItems","generateAllItems","blockUiContainer","blockerIndicator","maxLimitContainer","doubleList","Row","Col","xs","TransferSelectorBox","SelectorList","visibleOptions","TransferResultBox","actionButton","showSearchBar","onSearch","getSelectorBoxStyles","onSearchProps","queryText","handleQueryChange","handleClearSearch","showSearchFieldSelect","searchFieldOptions","searchField","setSearchField","selectorBox","selectorBoxHeader","selectorBoxContent","searchGroup","searchBoxGroup","SearchBox","newValue","searchText","onQueryChange","maxLength","MaxSearchLetters","iconClasses","SearchIcon","clearIcon","searchFieldSelect","labelKey","addAll","addAllText","labelkey","sharedBasicStyle","doubleListHeight","containerBorder","right","flexGrow","selectorItemNode","opacity","selectorItemNodeName","wordBreak","selectorNodeArrow","cursor","selectorNodeArrowDisabled","selectorList","selectorListHeight","bingColor","headerStyle","selectedNodeArrow","doubleListBackgroundColor","resultListHeight","resultListBox","resultListHeader","resultListItemArrow","resultList","resultListItem","resultListItemContent","removeAll","padidngTop","removeAllText","clear","getResultBoxStyles","onKeyDown","renderResultNode","rowHeight","rowRenderer","isSelected","AutoSizer","defaultHeight","DefaultSelectorListHeight","defaultWidth","DefaultSelectorListWidth","List","rowCount","__WEBPACK_EXTERNAL_MODULE__1339__","__WEBPACK_EXTERNAL_MODULE__206__","__WEBPACK_EXTERNAL_MODULE__320__","__WEBPACK_EXTERNAL_MODULE__36__","PanelGroupId","TutorialAccordion","updateTheDomOutside","panelGroupDom","getElementById","hasAttribute","removeAttribute","heading","getElementsByClassName","subtitle","tutorStepComponents","accordion","stepSeparator","PanelGroup","tutorialAccordion","activeKey","eventKey","Heading","Title","toggle","Collapse","onEntered","triggerScrollbarReposition","onExited","titleSecondary","tutorialContainer","tutorStep","StyledTutorialAccordion","withDefaultStyles","getTutorialAccordionStyles","__WEBPACK_EXTERNAL_MODULE__1143__","transform","StyledTutorialAccordionView","unmountComponentAtNode","TutorialAccordionView","self","__WEBPACK_EXTERNAL_MODULE__5__","__WEBPACK_EXTERNAL_MODULE__8__","__WEBPACK_EXTERNAL_MODULE__15__","__WEBPACK_EXTERNAL_MODULE__17__","isValidDecimal","staticI18nMock","FixedI18nMock","dictionary","ret","putil","curlyTemplate","compiled","identity","str","locale","I18nModel","setGlobalLocale","Globalize","load","core","enLocale","loadTimeZone","modelI18nMock","extendOwn","loadCLDRData","loadTranslationData","ComponentI18nShim","ModuleI18nShim","modelI18n","i18nRequireRequest","loaderName","main","realI18n","res","safeGetString","arguments","regex","RegExp","getStringOrDefault","defValue","toArray","apply","checkKey","loadTimeZoneData","timeZoneData","staticI18nModelMock","loc","failFast","ready","preprocess","htmlFor"],"sourceRoot":""}