{"version":3,"file":"chunk.26fb4ba55125815a8989.js","mappings":"sGAAwEA,EAAOC,QAA8S,SAASC,EAAEC,EAAEC,EAAEC,GAAG,SAASC,EAAEC,EAAEC,GAAG,IAAIJ,EAAEG,GAAG,CAAC,IAAIJ,EAAEI,GAAG,CAAmE,GAAGE,EAAE,OAAOA,EAAEF,GAAE,GAAI,IAAIG,EAAE,IAAIC,MAAM,uBAAuBJ,EAAE,KAAK,MAAMG,EAAEE,KAAK,mBAAmBF,CAAC,CAAC,IAAIG,EAAET,EAAEG,GAAG,CAACN,QAAQ,CAAC,GAAGE,EAAEI,GAAG,GAAGO,KAAKD,EAAEZ,SAAQ,SAASC,GAAoB,OAAOI,EAAlBH,EAAEI,GAAG,GAAGL,IAAeA,EAAE,GAAEW,EAAEA,EAAEZ,QAAQC,EAAEC,EAAEC,EAAEC,EAAE,CAAC,OAAOD,EAAEG,GAAGN,OAAO,CAAC,IAAI,IAAIQ,OAAE,EAAoCF,EAAE,EAAEA,EAAEF,EAAEU,OAAOR,IAAID,EAAED,EAAEE,IAAI,OAAOD,CAAC,CAA9b,CAA4c,CAAC,EAAE,CAAC,SAASU,EAAQhB,EAAOC,GACz1B,aACA,IAAIgB,EAAmBC,MAAQA,KAAKD,iBAAoB,SAAUE,GAC9D,OAAQA,GAAOA,EAAIC,WAAcD,EAAM,CAAE,QAAWA,EACxD,EACAE,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQuB,mBAAgB,EACxB,IAAIC,EAAqBR,EAAgBD,EAAQ,qBAC7CQ,EAEe,oBAAZE,QAA0BA,QAAUD,EAAmBE,QAC9D1B,EAAQuB,cAAgBA,CAExB,EAAE,CAAC,mBAAmB,KAAK,EAAE,CAAC,SAASR,EAAQhB,EAAOC,GACtD,aACA,IAAI2B,EAAYZ,EAAQ,iBACpBa,EAAqB,CAAC,EAC1B,SAASC,EAAWC,GAChB,IAAIC,EACAC,EAAqBC,KAAKC,UAAUJ,GACxC,IAAKA,EAAQK,oBACTJ,EAAoBH,EAAmBI,IAEnC,OAAOD,EAGf,IAAIK,EAASC,SAASC,cAAc,UAChCC,EAAQT,EAAQU,gBAAkB,CAAC,EACnCC,EAAYX,EAAQW,WAAaJ,SAASK,KAuB9C,OAtBAN,EAAOO,IAAMb,EAAQa,IACrBP,EAAOQ,GAAKd,EAAQc,IAAM,GAC1BR,EAAOS,OAAQ,EACXf,EAAQgB,aACRV,EAAOW,aAAa,cAAe,GAAKjB,EAAQgB,aAEpD1B,OAAO4B,KAAKT,GAAOU,SAAQ,SAAUC,GACjCd,EAAOW,aAAa,QAAUG,EAAK,GAAKX,EAAMW,GAClD,IACAnB,EAAoB,IAAIJ,EAAUJ,eAAc,SAAU4B,EAASC,GAC/DhB,EAAOiB,iBAAiB,QAAQ,WAC5BF,EAAQf,EACZ,IACAA,EAAOiB,iBAAiB,SAAS,WAC7BD,EAAO,IAAI1C,MAAMoB,EAAQa,IAAM,oBACnC,IACAP,EAAOiB,iBAAiB,SAAS,WAC7BD,EAAO,IAAI1C,MAAMoB,EAAQa,IAAM,iBACnC,IACAF,EAAUa,YAAYlB,EAC1B,IACAR,EAAmBI,GAAsBD,EAClCA,CACX,CACAF,EAAW0B,WAAa,WACpB3B,EAAqB,CAAC,CAC1B,EACA7B,EAAOC,QAAU6B,CAEjB,EAAE,CAAC,gBAAgB,IAAI,EAAE,CAAC,SAASd,EAAQhB,EAAOC,GAClDD,EAAOC,QAAUe,EAAQ,qBAEzB,EAAE,CAAC,qBAAqB,IAAI,EAAE,CAAC,SAASA,EAAQhB,EAAOC,GACvD,aACAD,EAAOC,QAAU,SAAmBwD,GAEhC,OADAA,EAAKA,GAAMC,OAAOC,UAAUC,UACrB,WAAWC,KAAKJ,EAC3B,CAEA,EAAE,CAAC,GAAG,EAAE,CAAC,SAASzC,EAAQhB,EAAOC,GACjC,aACAD,EAAOC,QAAU,SAAoBwD,GAEjC,OADAA,EAAKA,GAAMC,OAAOC,UAAUC,UACrB,QAAQC,KAAKJ,EACxB,CAEA,EAAE,CAAC,GAAG,EAAE,CAAC,SAASzC,EAAQhB,EAAOC,GACjC,aACA,IAAI6D,EAAS9C,EAAQ,aACjB+C,EAAY/C,EAAQ,gBACpBgD,EAAehD,EAAQ,mBACvBiD,EAAUjD,EAAQ,cAClBkD,EAASlD,EAAQ,aACrBhB,EAAOC,QAAU,SAAkBwD,GAE/B,SAAmC,KADnCA,EAAKA,GAAMC,OAAOC,UAAUC,WAChBO,QAAQ,YAA6C,IAAzBV,EAAGU,QAAQ,UAC9CL,EAAOL,IACPM,EAAUN,IACVO,EAAaP,IACbQ,EAAQR,IACRS,EAAOT,GAChB,CAEA,EAAE,CAAC,kBAAkB,EAAE,YAAY,EAAE,aAAa,GAAG,eAAe,GAAG,YAAY,KAAK,EAAE,CAAC,SAASzC,EAAQhB,EAAOC,GACnH,aACAD,EAAOC,QAAU,SAAsBwD,GAEnC,OAAsC,KADtCA,EAAKA,GAAMC,OAAOC,UAAUC,WAClBO,QAAQ,cACtB,CAEA,EAAE,CAAC,GAAG,EAAE,CAAC,SAASnD,EAAQhB,EAAOC,GACjC,aACAD,EAAOC,QAAU,SAAgBwD,GAE7B,OAAgC,KADhCA,EAAKA,GAAMC,OAAOC,UAAUC,WAClBO,QAAQ,QACtB,CAEA,EAAE,CAAC,GAAG,EAAE,CAAC,SAASnD,EAAQhB,EAAOC,GACjC,aACAD,EAAOC,QAAU,SAAmBwD,GAEhC,OADAA,EAAKA,GAAMC,OAAOC,UAAUC,UACrB,WAAWC,KAAKJ,EAC3B,CAEA,EAAE,CAAC,GAAG,GAAG,CAAC,SAASzC,EAAQhB,EAAOC,GAClC,aACAD,EAAOC,QAAU,SAAewD,GAE5B,OAAiC,KADjCA,EAAKA,GAAMC,OAAOC,UAAUC,WAClBO,QAAQ,SACtB,CAEA,EAAE,CAAC,GAAG,GAAG,CAAC,SAASnD,EAAQhB,EAAOC,GAClC,aACAD,EAAOC,QAAU,SAAsBwD,GAEnC,OADAA,EAAKA,GAAMC,OAAOC,UAAUC,UACrB,SAASC,KAAKJ,EACzB,CAEA,EAAE,CAAC,GAAG,GAAG,CAAC,SAASzC,EAAQhB,EAAOC,GAClC,aACA,IAAImE,EAAQpD,EAAQ,YAIpBhB,EAAOC,QAAU,SAA8BwD,GAE3C,OADAA,EAAKA,GAAMC,OAAOC,UAAUC,UACrBQ,EAAMX,IALjB,SAA2BA,GACvB,MAAO,UAAUI,KAAKJ,EAC1B,CAGwBY,CAAkBZ,EAC1C,CAEA,EAAE,CAAC,WAAW,KAAK,GAAG,CAAC,SAASzC,EAAQhB,EAAOC,GAC/C,aACA,IAAImE,EAAQpD,EAAQ,YAChBsD,EAAetD,EAAQ,oBACvBuD,EAAe,UAUnBvE,EAAOC,QAAU,SAAqBwD,GAElC,OADAA,EAAKA,GAAMC,OAAOC,UAAUC,UACpBQ,EAAMX,IAXlB,SAAkBA,GACd,OAAOc,EAAaV,KAAKJ,EAC7B,CAUQe,CAASf,KATjB,SAAqBA,GACjB,OAAOA,EAAGU,QAAQ,UAAY,CAClC,CAQSM,CAAYhB,KACZa,EAAab,KARtB,SAAoBA,GAChB,OAAOA,EAAGU,QAAQ,SAAW,CACjC,CAOSO,CAAWjB,EACpB,CAEA,EAAE,CAAC,WAAW,GAAG,mBAAmB,KAAK,GAAG,CAAC,SAASzC,EAAQhB,EAAOC,GACrE,aACA,IAAImE,EAAQpD,EAAQ,YAChB2D,EAAuB3D,EAAQ,8BACnChB,EAAOC,QAAU,SAAsBwD,GAEnC,OADAA,EAAKA,GAAMC,OAAOC,UAAUC,YACxBQ,EAAMX,OAEFkB,EAAqBlB,IAIlB,6BAA6BI,KAAKJ,GAGjD,CAEA,EAAE,CAAC,WAAW,GAAG,6BAA6B,KAAK,GAAG,CAAC,SAASzC,EAAQhB,EAAOC,GAC/E,aACA,IAAI2E,EAAe5D,EAAQ,oBAC3BhB,EAAOC,QAAU,SAAwBwD,EAAIoB,GAKzC,OAJAA,OACgC,IAArBA,EACDA,EACAnB,OAAOoB,UAAUC,QACpBH,EAAanB,IAAOoB,CAC/B,CAEA,EAAE,CAAC,mBAAmB,KAAK,GAAG,CAAC,SAAS7D,EAAQhB,EAAOC,GACvD,aACA,IAAI+E,EAAWhE,EAAQ,eACvBhB,EAAOC,QAAU,SAAewD,EAAIwB,EAAa3C,QACzB,IAAhB2C,IAA0BA,GAAc,GAC5CxB,EAAKA,GAAMC,OAAOC,UAAUC,UAC5B,IAAIsB,EAAU,oBAAoBrB,KAAKJ,GACvC,OAAOwB,EAAcC,GAAWF,EAASvB,EAAInB,GAAY4C,CAC7D,CAEA,EAAE,CAAC,cAAc,KAAK,GAAG,CAAC,SAASlE,EAAQhB,EAAOC,GAClD,aACAD,EAAOC,QAAU,SAAkBwD,EAAInB,GAKnC,OAJAmB,EAAKA,GAAMC,OAAOC,UAAUC,UAC5BtB,EAAWA,GAAYoB,OAAOpB,SAGvB,YAAYuB,KAAKJ,IAAO,eAAgBnB,CACnD,CAEA,EAAE,CAAC,GAAG,GAAG,CAAC,SAAStB,EAAQhB,EAAOC,GAClC,aACAD,EAAOC,QAAU,SAAiBwD,GAE9B,OAAgC,KADhCA,EAAKA,GAAMC,OAAOC,UAAUC,WACjBO,QAAQ,UACW,IAA1BV,EAAGU,QAAQ,YACa,IAAxBV,EAAGU,QAAQ,OACnB,CAEA,EAAE,CAAC,GAAG,GAAG,CAAC,SAASnD,EAAQhB,EAAOC,GAClC,aACAD,EAAOC,QAAU,SAA0BwD,GAEvC,OADAA,EAAKA,GAAMC,OAAOC,UAAUC,UACrB,kBAAkBC,KAAKJ,EAClC,CAEA,EAAE,CAAC,GAAG,GAAG,CAAC,SAASzC,EAAQhB,EAAOC,GAClC,aACAD,EAAOC,QAAU,SAAgBwD,GAE7B,OAAgC,KADhCA,EAAKA,GAAMC,OAAOC,UAAUC,WAClBO,QAAQ,QACtB,CAEA,EAAE,CAAC,GAAG,GAAG,CAAC,SAASnD,EAAQhB,EAAOC,GAClC,aACA,IACIkF,EAAYnE,EAAQ,gBACpBsD,EAAetD,EAAQ,oBACvB4D,EAAe5D,EAAQ,oBACvBoE,EAAWpE,EAAQ,eACnBqE,EAAmBrE,EAAQ,gBAC3BgD,EAAehD,EAAQ,mBAU3B,SAASsE,EAAY7B,GAEjB,OADAA,EAAKA,GAAMC,OAAOC,UAAUC,WAClBO,QAAQ,eAAiB,CACvC,CAYAnE,EAAOC,QAAU,SAAwBwD,GAErC,OADAA,EAAKA,GAAMC,OAAOC,UAAUC,YACnBgB,EAAanB,IAClBa,EAAab,IAdrB,SAA0BA,GAGtB,OADAA,EAAKA,GAAMC,OAAOC,UAAUC,YACxBuB,EAAU1B,IAFa,mBAGMI,KAAKJ,KAAQ6B,EAAY7B,KAAQO,EAAaP,EAGnF,CAQQ8B,CAAiB9B,IACjB6B,EAAY7B,IA7BpB,SAAgCA,GAE5B,IAAI+B,GADJ/B,EAAKA,GAAMC,OAAOC,UAAUC,WACb4B,MAAM,kBACrB,QAAKA,GAGSC,SAASD,EAAM,GAAI,IAbM,EAe3C,CAsBQE,CAAuBjC,IAT/B,SAA6CA,GACzC,OAAQ2B,EAAS3B,KAAQ4B,EAAiB5B,IAAO,WAAWI,KAAKJ,EACrE,CAQQkC,CAAoClC,GAC5C,CAEA,EAAE,CAAC,eAAe,EAAE,cAAc,EAAE,kBAAkB,EAAE,mBAAmB,GAAG,mBAAmB,GAAG,eAAe,KAAK,GAAG,CAAC,SAASzC,EAAQhB,EAAOC,GACpJD,EAAOC,QAAUe,EAAQ,oBAEzB,EAAE,CAAC,oBAAoB,IAAI,GAAG,CAAC,SAASA,EAAQhB,EAAOC,GACvDD,EAAOC,QAAUe,EAAQ,sBAEzB,EAAE,CAAC,sBAAsB,IAAI,GAAG,CAAC,SAASA,EAAQhB,EAAOC,GACzDD,EAAOC,QAAUe,EAAQ,mBAEzB,EAAE,CAAC,mBAAmB,IAAI,GAAG,CAAC,SAASA,EAAQhB,EAAOC,GACtDD,EAAOC,QAAUe,EAAQ,oBAEzB,EAAE,CAAC,oBAAoB,IAAI,GAAG,CAAC,SAASA,EAAQhB,EAAOC,GACvDD,EAAOC,QAAUe,EAAQ,gBAEzB,EAAE,CAAC,gBAAgB,KAAK,GAAG,CAAC,SAASA,EAAQhB,EAAOC,GACpDD,EAAOC,QAAUe,EAAQ,uBAEzB,EAAE,CAAC,uBAAuB,KAAK,GAAG,CAAC,SAASA,EAAQhB,EAAOC,GAC3DD,EAAOC,QAAUe,EAAQ,wBAEzB,EAAE,CAAC,wBAAwB,KAAK,GAAG,CAAC,SAASA,EAAQhB,EAAOC,GAC5DD,EAAOC,QAAUe,EAAQ,0BAEzB,EAAE,CAAC,0BAA0B,KAAK,GAAG,CAAC,SAASA,EAAQhB,EAAOC,GAC9DD,EAAOC,QAAUe,EAAQ,gBAEzB,EAAE,CAAC,gBAAgB,KAAK,GAAG,CAAC,SAASA,EAAQhB,EAAOC,GACpDD,EAAOC,QAAUe,EAAQ,oBAEzB,EAAE,CAAC,oBAAoB,KAAK,GAAG,CAAC,SAASA,EAAQhB,EAAOC,GACxDD,EAAOC,QAAUe,EAAQ,yBAEzB,EAAE,CAAC,yBAAyB,KAAK,GAAG,CAAC,SAASA,EAAQhB,EAAOC,GAC7D,aACA,IAAI2F,EAA8B,WAC9B,SAASA,IACL1E,KAAK2E,QAAU,CAAC,CACpB,CA0CA,OAzCAD,EAAaE,UAAUC,GAAK,SAAUC,EAAOC,GACrC/E,KAAK2E,QAAQG,GACb9E,KAAK2E,QAAQG,GAAOE,KAAKD,GAGzB/E,KAAK2E,QAAQG,GAAS,CAACC,EAE/B,EACAL,EAAaE,UAAUK,IAAM,SAAUH,EAAOC,GAC1C,IAAIG,EAAiBlF,KAAK2E,QAAQG,GAClC,GAAKI,EAAL,CAGA,IAAIC,EAAkBD,EAAejC,QAAQ8B,GAC7CG,EAAeE,OAAOD,EAAiB,EAFvC,CAGJ,EACAT,EAAaE,UAAUS,MAAQ,SAAUP,GAErC,IADA,IAAIQ,EAAO,GACFC,EAAK,EAAGA,EAAKC,UAAU3F,OAAQ0F,IACpCD,EAAKC,EAAK,GAAKC,UAAUD,GAE7B,IAAIL,EAAiBlF,KAAK2E,QAAQG,GAC7BI,GAGLA,EAAelD,SAAQ,SAAU+C,GAC7BA,EAASU,WAAM,EAAQH,EAC3B,GACJ,EACAZ,EAAaE,UAAUc,YAAc,SAAUZ,GAC3C,IAAII,EAAiBlF,KAAK2E,QAAQG,GAClC,QAAKI,GAGEA,EAAerF,OAAS,CACnC,EACA6E,EAAaiB,YAAc,SAAUC,GACjCA,EAAYhB,UAAYzE,OAAO0F,OAAOnB,EAAaE,UAAW,CAC1DkB,YAAaF,GAErB,EACOlB,CACX,CA9CiC,GA+CjC5F,EAAOC,QAAU2F,CAEjB,EAAE,CAAC,GAAG,GAAG,CAAC,SAAS5E,EAAQhB,EAAOC,GAClC,aACA,IAAIgH,EAAoC,oBAAZvF,QACtBA,QACA,KACFwF,EAAiC,WACjC,SAASA,EAAgBnF,GACrB,IAAIoF,EAAQjG,KACW,mBAAZa,GAIXb,KAAKkG,SAAW,IAAIF,EAAgBxF,SAAQ,SAAU0B,EAASC,GAC3D8D,EAAME,iBAAmBjE,EACzB+D,EAAMG,gBAAkBjE,CAC5B,IACAtB,EAAUA,GAAW,CAAC,EACtBb,KAAKqG,WAAaxF,EAAQyF,WAAaN,EAAgBO,iBACvDvG,KAAKwG,UAAY3F,EAAQ4F,UAAYT,EAAgBU,gBACjDV,EAAgBW,sBAAsB9F,IACtCb,KAAKkG,SAASU,OAAM,WAIpB,IAEJ5G,KAAK6G,eAjBD7G,KAAKkG,SAAW,IAAIF,EAAgBxF,QAAQK,EAkBpD,CAuGA,OAtGAmF,EAAgBO,iBAAmB,SAAUO,GACzC,OAAOd,EAAgBxF,QAAQ0B,QAAQ4E,EAC3C,EACAd,EAAgBU,gBAAkB,SAAUK,GACxC,OAAOf,EAAgBxF,QAAQ2B,OAAO4E,EAC1C,EACAf,EAAgBgB,WAAa,SAAUC,GACnCjB,EAAgBxF,QAAUyG,CAC9B,EACAjB,EAAgBW,sBAAwB,SAAU9F,GAC9C,OAAIA,EAAQqG,eAAe,mCAChBC,QAAQtG,EAAQuG,iCAEpBD,QAAQnB,EAAgBoB,gCACnC,EAGApB,EAAgBqB,IAAM,SAAU/B,GAC5B,OAAOU,EAAgBxF,QAAQ6G,IAAI/B,EACvC,EACAU,EAAgBsB,WAAa,SAAUhC,GACnC,OAAOU,EAAgBxF,QAAQ8G,WAAWhC,EAC9C,EACAU,EAAgBuB,KAAO,SAAUjC,GAC7B,OAAOU,EAAgBxF,QAAQ+G,KAAKjC,EACxC,EACAU,EAAgB7D,OAAS,SAAUqF,GAC/B,OAAOxB,EAAgBxF,QAAQ2B,OAAOqF,EAC1C,EACAxB,EAAgB9D,QAAU,SAAUsF,GAChC,OAAOxB,EAAgBxF,QAAQ0B,QAAQsF,EAC3C,EACAxB,EAAgBpB,UAAU6C,KAAO,WAG7B,IAFA,IAAIC,EACApC,EAAO,GACFC,EAAK,EAAGA,EAAKC,UAAU3F,OAAQ0F,IACpCD,EAAKC,GAAMC,UAAUD,GAEzB,OAAQmC,EAAK1H,KAAKkG,UAAUuB,KAAKhC,MAAMiC,EAAIpC,EAC/C,EACAU,EAAgBpB,UAAUgC,MAAQ,WAG9B,IAFA,IAAIc,EACApC,EAAO,GACFC,EAAK,EAAGA,EAAKC,UAAU3F,OAAQ0F,IACpCD,EAAKC,GAAMC,UAAUD,GAEzB,OAAQmC,EAAK1H,KAAKkG,UAAUU,MAAMnB,MAAMiC,EAAIpC,EAChD,EACAU,EAAgBpB,UAAU1C,QAAU,SAAUsF,GAC1C,IAAIvB,EAAQjG,KACZ,OAAIA,KAAK2H,cAGT3H,KAAK4H,eACL5B,EAAgBxF,QAAQ0B,UACnBuF,MAAK,WACN,OAAOxB,EAAMI,WAAWmB,EAC5B,IACKC,MAAK,SAAUI,GAChB5B,EAAME,iBAAiB0B,EAC3B,IACKjB,OAAM,SAAUG,GACjBd,EAAMY,cACNZ,EAAM9D,OAAO4E,EACjB,KAbW/G,IAef,EACAgG,EAAgBpB,UAAUzC,OAAS,SAAUqF,GACzC,IAAIvB,EAAQjG,KACZ,OAAIA,KAAK2H,cAGT3H,KAAK8H,eACL9B,EAAgBxF,QAAQ0B,UACnBuF,MAAK,WACN,OAAOxB,EAAMO,UAAUgB,EAC3B,IACKC,MAAK,SAAUX,GAChBb,EAAM2B,eACN3B,EAAME,iBAAiBW,EAC3B,IACKF,OAAM,SAAUG,GACjB,OAAOd,EAAMG,gBAAgBW,EACjC,KAbW/G,IAef,EACAgG,EAAgBpB,UAAUiC,YAAc,WACpC7G,KAAK2H,aAAc,EACnB3H,KAAK+H,YAAa,EAClB/H,KAAKgI,YAAa,CACtB,EACAhC,EAAgBpB,UAAUgD,aAAe,WACrC5H,KAAK2H,aAAc,EACnB3H,KAAK+H,YAAa,EAClB/H,KAAKgI,YAAa,CACtB,EACAhC,EAAgBpB,UAAUkD,aAAe,WACrC9H,KAAK2H,aAAc,EACnB3H,KAAK+H,YAAa,EAClB/H,KAAKgI,YAAa,CACtB,EACAhC,EAAgBxF,QAAUuF,EACnBC,CACX,CA9HoC,GA+HpClH,EAAOC,QAAUiH,CAEjB,EAAE,CAAC,GAAG,GAAG,CAAC,SAASlG,EAAQhB,EAAOC,GAClC,aACA,IAAIkJ,EAAmBnI,EAAQ,wBAC3BoI,EAAuBpI,EAAQ,4BAC/BqI,EAAWrI,EAAQ,gBACvBhB,EAAOC,QAAU,SAAqB8B,QAClB,IAAZA,IAAsBA,EAAU,CAAC,GACrC,IAAIuH,EAAShH,SAASC,cAAc,UAChCgH,EAASF,EAASG,OAAO,CAAC,EAAGJ,EAAqBK,kBAAmB1H,GASzE,OARIwH,EAAOG,OAAiC,iBAAjBH,EAAOG,QAC9BL,EAASG,OAAOF,EAAOI,MAAOH,EAAOG,cAC9BH,EAAOG,OAElBP,EAAiBQ,cAAcL,EAAQC,GAClCD,EAAOM,aAAa,QACrBN,EAAOzG,GAAKyG,EAAOO,MAEhBP,CACX,CAEA,EAAE,CAAC,eAAe,GAAG,2BAA2B,GAAG,uBAAuB,KAAK,GAAG,CAAC,SAAStI,EAAQhB,EAAOC,GAC3G,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQuJ,YAAS,EAkBjBvJ,EAAQuJ,OAjBR,SAEAM,GAEI,IADA,IAAIC,EAAO,GACFtD,EAAK,EAAGA,EAAKC,UAAU3F,OAAQ0F,IACpCsD,EAAKtD,EAAK,GAAKC,UAAUD,GAU7B,OARAsD,EAAK7G,SAAQ,SAAU8G,GACA,iBAARA,GAGX3I,OAAO4B,KAAK+G,GAAK9G,SAAQ,SAAUC,GAC/B2G,EAAO3G,GAAO6G,EAAI7G,EACtB,GACJ,IACO2G,CACX,CAGA,EAAE,CAAC,GAAG,GAAG,CAAC,SAAS9I,EAAQhB,EAAOC,GAClC,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQwJ,uBAAoB,EAC5BxJ,EAAQwJ,kBAAoB,CACxB7G,IAAK,cACLqH,YAAa,EACbC,mBAAmB,EACnBC,UAAW,KAGf,EAAE,CAAC,GAAG,GAAG,CAAC,SAASnJ,EAAQhB,EAAOC,GAClC,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQ0J,mBAAgB,EAgBxB1J,EAAQ0J,cAfR,SAAuBS,EAEvBC,GACI,IAAK,IAAIlH,KAAOkH,EACZ,GAAIA,EAAWjC,eAAejF,GAAM,CAChC,IAAI5B,EAAQ8I,EAAWlH,GACV,MAAT5B,EACA6I,EAAQE,gBAAgBnH,GAGxBiH,EAAQpH,aAAaG,EAAK5B,EAElC,CAER,CAGA,EAAE,CAAC,GAAG,GAAG,CAAC,SAASP,EAAQhB,EAAOC,GAClC,aAWAD,EAAOC,QATP,WACE,MAAO,uCAAuCsK,QAAQ,SAAS,SAAUC,GACvE,IAAItK,EAAoB,GAAhBuK,KAAKC,SAAgB,EAG7B,OAFc,MAANF,EAAYtK,EAAQ,EAAJA,EAAU,GAEzByK,SAAS,GACpB,GACF,CAIA,EAAE,CAAC,GAAG,GAAG,CAAC,SAAS3J,EAAQhB,EAAOC,GAClC,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IAoBtDtB,EAAQ2K,SAnBR,SAAkBC,GACd,OAAO,WAEH,IADA,IAAIrE,EAAO,GACFC,EAAK,EAAGA,EAAKC,UAAU3F,OAAQ0F,IACpCD,EAAKC,GAAMC,UAAUD,GAEzBqE,YAAW,WACP,IACID,EAAGlE,WAAM,EAAQH,EACrB,CACA,MAAOyB,GAEH8C,QAAQC,IAAI,8BACZD,QAAQC,IAAI/C,EAEhB,CACJ,GAAG,EACP,CACJ,CAGA,EAAE,CAAC,GAAG,GAAG,CAAC,SAASjH,EAAQhB,EAAOC,GAClC,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IActDtB,EAAQgL,KAbR,SAAcJ,GACV,IAAIK,GAAS,EACb,OAAO,WAEH,IADA,IAAI1E,EAAO,GACFC,EAAK,EAAGA,EAAKC,UAAU3F,OAAQ0F,IACpCD,EAAKC,GAAMC,UAAUD,GAEpByE,IACDA,GAAS,EACTL,EAAGlE,WAAM,EAAQH,GAEzB,CACJ,CAGA,EAAE,CAAC,GAAG,GAAG,CAAC,SAASxF,EAAQhB,EAAOC,GAClC,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IAQtDtB,EAAQkL,kBANR,SAA2BC,EAASnF,GAChC,IAAKA,EACD,OAAOmF,EAEXA,EAAQzC,MAAK,SAAU0C,GAAQ,OAAOpF,EAAS,KAAMoF,EAAO,IAAGvD,OAAM,SAAUG,GAAO,OAAOhC,EAASgC,EAAM,GAChH,CAGA,EAAE,CAAC,GAAG,GAAG,CAAC,SAASjH,EAAQhB,EAAOC,GAClC,aACA,IAAIqL,EAAatK,EAAQ,kBACrBuK,EAASvK,EAAQ,cACjBwK,EAAwBxK,EAAQ,6BACpC,SAASyK,EAAYZ,GAEjB,OAAO,WAEH,IADA,IAII5E,EAJAO,EAAO,GACFC,EAAK,EAAGA,EAAKC,UAAU3F,OAAQ0F,IACpCD,EAAKC,GAAMC,UAAUD,GAYzB,MARuB,mBADTD,EAAKA,EAAKzF,OAAS,KAE7BkF,EAAWO,EAAKkF,MAChBzF,EAAWsF,EAAON,KAAKK,EAAWV,SAAS3E,KAMxCuF,EAAsBL,kBAAkBN,EAAGlE,MAAMzF,KAAMsF,GAAOP,EACzE,CACJ,CACAwF,EAAYE,cAAgB,SAAU7B,EAAQ/H,QAC1B,IAAZA,IAAsBA,EAAU,CAAC,GACrC,IAAI6J,EAAgB7J,EAAQ6J,eAAiB,GACzCC,GAA4D,IAApC9J,EAAQ+J,wBAkBpC,OAjBczK,OAAO0K,oBAAoBjC,EAAOhE,WAAWkG,QAAO,SAAUC,GACxE,IAAIC,EACAC,EAAsC,gBAAXF,GACS,mBAA7BnC,EAAOhE,UAAUmG,GACxBG,GAA0D,IAAnCR,EAAczH,QAAQ8H,GAOjD,OALIC,IADAL,GAI0C,MAArBI,EAAOI,OAAO,GAE/BF,GAA4BD,GAAsBE,CAC9D,IACQlJ,SAAQ,SAAU+I,GACtB,IAAIK,EAAWxC,EAAOhE,UAAUmG,GAChCnC,EAAOhE,UAAUmG,GAAUR,EAAYa,EAC3C,IACOxC,CACX,EACA9J,EAAOC,QAAUwL,CAEjB,EAAE,CAAC,iBAAiB,GAAG,aAAa,GAAG,4BAA4B,KAAK,GAAG,CAAC,SAASzK,EAAQhB,EAAOC,GACpG,aACA,IAAIsM,EAAYrL,MAAQA,KAAKqL,UAAa,WAStC,OARAA,EAAWlL,OAAOmI,QAAU,SAASnJ,GACjC,IAAK,IAAImM,EAAGjM,EAAI,EAAGH,EAAIsG,UAAU3F,OAAQR,EAAIH,EAAGG,IAE5C,IAAK,IAAIM,KADT2L,EAAI9F,UAAUnG,GACOc,OAAOyE,UAAUsC,eAAetH,KAAK0L,EAAG3L,KACzDR,EAAEQ,GAAK2L,EAAE3L,IAEjB,OAAOR,CACX,EACOkM,EAAS5F,MAAMzF,KAAMwF,UAChC,EACI+F,EAAYzL,EAAQ,oBACpB0L,EAAkC1L,EAAQ,uCAC1C2L,EAAwB3L,EAAQ,6BAChC4L,EAAoB5L,EAAQ,yBAC5B6L,EAAU7L,EAAQ,eAClB8L,EAAc,CAAC,EACfC,EAAY,CACZC,KAAM,OACNC,WAAY,aACZC,iBAAkB,mBAClBC,YAAa,cACbC,SAAU,WACVC,IAAK,MACLC,SAAU,WACVC,QAAS,UACTC,IAAK,MACLC,IAAK,MACLC,MAAO,QACPC,UAAW,aAEXC,EAAsB,CACtBb,EAAUC,KACVD,EAAUE,WACVF,EAAUG,iBACVH,EAAUI,YACVJ,EAAUK,SACVL,EAAUM,IACVN,EAAUO,SACVP,EAAUQ,QACVR,EAAUS,IACVT,EAAUU,IACVV,EAAUW,MACVX,EAAUY,WAEVE,EAAYhB,EAAQiB,MAAMF,GAC9B,SAASG,EAASC,GACd,OAAOlB,EAAYkB,IAAavB,EAAUuB,EAC9C,CAIA,SAASC,EAAgBpE,EAAMqE,QACO,IAA9BA,IAAwCA,GAA4B,GACxE,IAAIC,EAAWN,EAAU1J,QAAQ0F,GACjC,IAAKqE,IAA2C,IAAdC,EAC9B,MAAM,IAAIxN,MAAM,IAAMkJ,EAAO,mCAEjC,OAAOsE,CACX,CACA,SAASC,EAAeC,GACpB,IAAIC,EAAU,GACd,IAAK3B,EAAsB4B,iBAAiBF,GACxC,OAAOC,EAEX,GAA0B,IAAtBD,EAAWtN,OACX,OAhBG8M,EAAUW,KAAI,SAAUR,GAAY,OAAOnB,EAAQiB,MAAMC,EAASC,GAAY,IAkBrFH,EAAU3K,SAAQ,SAAU8K,GACxB,IAAIS,EAAoBV,EAASC,GACjCtB,EAAgCgC,0BAA0BL,EAAYI,EAAmBH,EAC7F,IACA,IAAIK,EAAY/B,EAAkBgC,cAAcN,GAChD,OAAIK,EACO,CAACA,GAELL,CACX,CACAF,EAAeS,YAAc,SAAUb,GACnC,OAAOnB,EAAQiB,MAAMC,EAASC,GAClC,EACAI,EAAeU,WAAa,SAAUjF,GAClC,IAAIsE,EAAWF,EAAgBpE,GAC/BgE,EAAUvH,OAAO6H,EAAU,EAC/B,EACAC,EAAeW,QAAU,SAAUxF,GAC/B,IAAIyF,EAAuBf,EAAgB1E,EAAO0F,MAAM,GACxDnC,EAAYvD,EAAO0F,MAAQ1F,GACG,IAA1ByF,GACAnB,EAAU3H,KAAKqD,EAAO0F,KAE9B,EACAb,EAAec,WAAa,SAAUlB,EAAUmB,GAC5C,IAAIC,EAAiBtC,EAAYkB,IAAavB,EAAUuB,GACxD,IAAKoB,EACD,MAAM,IAAIzO,MAAM,IAAOqN,EAAW,wDAEtC,GAAImB,EAAQF,MAAQG,EAAeH,OAASE,EAAQF,KAChD,MAAM,IAAItO,MAAM,oCAEpB,IAAI0O,EAAaxC,EAAQiB,MAAMsB,GAC/BC,EAAa9C,EAASA,EAAS,CAAC,EAAG8C,GAAaF,GAChDrC,EAAYuC,EAAWJ,MAAQI,CACnC,EACAjB,EAAekB,YAAc,SAAUzF,EAAMsE,GACzC,IAAIoB,EAAkBtB,EAAgBpE,GACtCgE,EAAUvH,OAAOiJ,EAAiB,GAClC1B,EAAUvH,OAAO6H,EAAU,EAAGtE,EAClC,EACAuE,EAAeoB,mBAAqB,WAChC3B,EAAYhB,EAAQiB,MAAMF,GAC1Bd,EAAc,CAAC,CACnB,EACAsB,EAAeqB,MAAQ1C,EACvB/M,EAAOC,QAAUmO,CAEjB,EAAE,CAAC,sCAAsC,GAAG,mBAAmB,GAAG,cAAc,GAAG,wBAAwB,GAAG,4BAA4B,KAAK,GAAG,CAAC,SAASpN,EAAQhB,EAAOC,GAC3K,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQyO,+BAA4B,EACpC,IAAI7B,EAAU7L,EAAQ,WAClB0O,EAAY1O,EAAQ,aAsBxBf,EAAQyO,0BArBR,SAAmCL,EAAYI,EAAmBH,GAC9D,IAAI/N,EAAGoP,EACP,IAAKpP,EAAI,EAAGA,EAAIkO,EAAkBmB,SAAS7O,OAAQR,IAAK,CACpD,IAAIsP,EAAUpB,EAAkBmB,SAASrP,GACzC,GAAKmP,EAAUI,QAAQzB,EAAYwB,GAAnC,CAGA,IAAIE,EAA0BlD,EAAQiB,MAAMW,GAExCkB,EADAK,MAAMC,QAAQJ,GACEK,OAAOL,EAAQ,IAAI9O,OAGnBmP,OAAOL,GAAS9O,OAEhCsN,EAAWtN,QAAU4O,IACrBI,EAAwBI,cAAgBR,GAE5CrB,EAAQpI,KAAK6J,GACb,KAZA,CAaJ,CACJ,CAGA,EAAE,CAAC,UAAU,GAAG,YAAY,KAAK,GAAG,CAAC,SAAS/O,EAAQhB,EAAOC,GAC7D,aAoMAD,EAAOC,QAnMS,CACZmQ,KAAM,CACFC,SAAU,OACVpB,KAAM,OACNW,SAAU,CAAC,GACXU,KAAM,CAAC,EAAG,EAAG,IACbC,QAAS,CAAC,GAAI,GAAI,IAClB3P,KAAM,CACFiJ,KAAM,MACN2G,KAAM,IAGdC,WAAY,CACRJ,SAAU,aACVpB,KAAM,aACNW,SAAU,CAAC,CAAC,GAAI,IAAK,CAAC,KAAM,MAAO,CAAC,IAAK,KAAM,CAAC,GAAI,IAAK,CAAC,IAAK,KAAM,MACrEU,KAAM,CAAC,EAAG,EAAG,IACbC,QAAS,CAAC,IACV3P,KAAM,CACFiJ,KAAM,MACN2G,KAAM,IAGd,mBAAoB,CAChBH,SAAU,mBACVpB,KAAM,mBACNW,SAAU,CAAC,GAAI,IACfU,KAAM,CAAC,EAAG,IACVC,QAAS,CAAC,IACV3P,KAAM,CACFiJ,KAAM,MACN2G,KAAM,IAGd,cAAe,CACXH,SAAU,cACVpB,KAAM,cACNW,SAAU,CAAC,CAAC,IAAK,KAAM,GAAI,GAAI,IAC/BU,KAAM,CAAC,EAAG,IACVC,QAAS,CAAC,GAAI,GAAI,IAClB3P,KAAM,CACFiJ,KAAM,MACN2G,KAAM,IAGdE,SAAU,CACNL,SAAU,WACVpB,KAAM,WACNW,SAAU,CAAC,KAAM,CAAC,IAAK,KAAM,IAC7BU,KAAM,CAAC,EAAG,EAAG,IACbC,QAAS,CAAC,GAAI,IACd3P,KAAM,CACFiJ,KAAM,MACN2G,KAAM,IAGdG,IAAK,CACDN,SAAU,MACVpB,KAAM,MACNW,SAAU,CAAC,KAAM,KAAM,CAAC,KAAM,OAC9BU,KAAM,CAAC,EAAG,EAAG,IACbC,QAAS,CAAC,GAAI,GAAI,GAAI,IACtB3P,KAAM,CACFiJ,KAAM,MACN2G,KAAM,IAGdI,SAAU,CACNP,SAAU,WACVpB,KAAM,WACNW,SAAU,CACN,IACA,CAAC,IAAK,KACN,CAAC,MAAO,OACR,CAAC,MAAO,OACR,CAAC,MAAO,OACR,CAAC,MAAO,OACR,CAAC,OAAQ,QACT,OACA,CAAC,OAAQ,QACT,CAAC,MAAO,OACR,CAAC,OAAQ,QACT,CAAC,IAAK,KACN,KACA,KACA,KACA,CAAC,OAAQ,QACT,CAAC,OAAQ,QACT,CAAC,KAAM,MACP,KACA,KACA,IACA,CAAC,KAAM,MACP,CAAC,KAAM,MACP,CAAC,KAAM,MACP,CAAC,KAAM,OAEXU,KAAM,CAAC,EAAG,EAAG,IACbC,QAAS,CAAC,GAAI,GAAI,GAAI,GAAI,GAAI,IAC9B3P,KAAM,CACFiJ,KAAM,MACN2G,KAAM,IAGdK,QAAS,CACLR,SAAU,UACVpB,KAAM,UACNW,SAAU,CACN,OACA,CAAC,IAAQ,QACT,CAAC,OAAQ,QACT,CAAC,OAAQ,QACT,CAAC,GAAI,IACL,GACA,GACA,GAEJU,KAAM,CAAC,EAAG,EAAG,IACbC,QAAS,CAAC,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,IACtC3P,KAAM,CACFiJ,KAAM,MACN2G,KAAM,IAGdM,IAAK,CACDT,SAAU,MACVpB,KAAM,MACNW,SAAU,CACN,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,CAAC,OAAQ,QACT,CAAC,MAAQ,QACT,OACA,OACA,OACA,CAAC,OAAQ,QACT,CAAC,OAAQ,QACT,CAAC,OAAQ,QACT,CAAC,OAAQ,QACT,CAAC,OAAQ,QACT,CAAC,OAAQ,QACT,CAAC,OAAQ,QACT,CAAC,OAAQ,QACT,CAAC,OAAQ,QACT,CAAC,MAAQ,QACT,CAAC,OAAQ,SAEbU,KAAM,CAAC,EAAG,EAAG,IACbC,QAAS,CAAC,IACV3P,KAAM,CACFiJ,KAAM,MACN2G,KAAM,IAGdO,IAAK,CACDV,SAAU,MACVpB,KAAM,MACNW,SAAU,CAAC,CAAC,KAAM,OAClBU,KAAM,CAAC,EAAG,EAAG,IACbC,QAAS,CAAC,GAAI,GAAI,GAAI,IACtB3P,KAAM,CACFiJ,KAAM,OACN2G,KAAM,IAGdQ,MAAO,CACHX,SAAU,QACVpB,KAAM,QACNW,SAAU,CAAC,OAAQ,SAAU,SAAU,OAAQ,OAAQ,OAAQ,QAC/DU,KAAM,CAAC,EAAG,EAAG,IACbC,QAAS,CAAC,IACV3P,KAAM,CACFiJ,KAAM,MACN2G,KAAM,IAGdS,UAAW,CACPZ,SAAU,YACVpB,KAAM,YACNW,SAAU,CAAC,QACXU,KAAM,CAAC,EAAG,EAAG,IACbC,QAAS,CAAC,IACV3P,KAAM,CACFiJ,KAAM,MACN2G,KAAM,IAMlB,EAAE,CAAC,GAAG,GAAG,CAAC,SAASxP,EAAQhB,EAAOC,GAClC,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQ6N,WAAQ,EAOhB7N,EAAQ6N,MANR,SAAesB,GACX,OAAKA,EAGElN,KAAKgP,MAAMhP,KAAKC,UAAUiN,IAFtB,IAGf,CAGA,EAAE,CAAC,GAAG,GAAG,CAAC,SAASpO,EAAQhB,EAAOC,GAClC,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQ2O,mBAAgB,EA6BxB3O,EAAQ2O,cAlBR,SAAuBN,GACnB,OAXJ,SAA8CA,GAC1C,IAAI6C,EAAyC7C,EAAQtC,QAAO,SAAUhE,GAAU,OAAOA,EAAOmI,aAAe,IAAGpP,OAMhH,OAAQoQ,EAAyC,GAC7CA,IAA2C7C,EAAQvN,MAC3D,CAESqQ,CAAqC9C,GAGnCA,EAAQ+C,QAAO,SAAU1C,EAAW3G,GACvC,OAAK2G,EAOD2C,OAAO3C,EAAUwB,eAAiBmB,OAAOtJ,EAAOmI,eACzCnI,EAEJ2G,EATI3G,CAUf,IAdW,IAef,CAGA,EAAE,CAAC,GAAG,GAAG,CAAC,SAAShH,EAAQhB,EAAOC,GAClC,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQsO,sBAAmB,EAI3BtO,EAAQsO,iBAHR,SAA0BF,GACtB,MAA6B,iBAAfA,GAA2BA,aAAsB6B,MACnE,CAGA,EAAE,CAAC,GAAG,GAAG,CAAC,SAASlP,EAAQhB,EAAOC,GAClC,aAIAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQ6P,aAAU,EAqBlB7P,EAAQ6P,QANR,SAAiBzB,EAAYwB,GACzB,OAAIG,MAAMC,QAAQJ,GAftB,SAAsBxB,EAAYkD,EAAKC,GACnC,IAAIC,EAAmBvB,OAAOqB,GAAKxQ,OAC/B2Q,EAASrD,EAAWqD,OAAO,EAAGD,GAC9BE,EAAoClM,SAASiM,EAAQ,IAGzD,OAFAH,EAAM9L,SAASyK,OAAOqB,GAAKG,OAAO,EAAGA,EAAO3Q,QAAS,IACrDyQ,EAAM/L,SAASyK,OAAOsB,GAAKE,OAAO,EAAGA,EAAO3Q,QAAS,IAC7C4Q,GAAqCJ,GACzCI,GAAqCH,CAC7C,CAQeI,CAAavD,EAAYwB,EAAQ,GAAIA,EAAQ,IAP5D,SAAwBxB,EAAYwB,GAEhC,OADAA,EAAUK,OAAOL,IACDgC,UAAU,EAAGxD,EAAWtN,UACpCsN,EAAWwD,UAAU,EAAGhC,EAAQ9O,OACxC,CAKW+Q,CAAezD,EAAYwB,EACtC,CAGA,EAAE,CAAC,GAAG,GAAG,CAAC,SAAS7O,EAAQhB,EAAOC,GAClC,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQ8R,cAAW,EACnB,IAAIC,EAAQhR,EAAQ,SAChBiR,EAAoC,oBAAXvO,QACzBA,OAAOhC,QACPqQ,EAA0B,WAC1B,SAASA,EAAShQ,QACE,IAAZA,IAAsBA,EAAU,CAAC,GACrCb,KAAKgR,OAASnQ,EAAQmQ,QAAU,IAChChR,KAAKiR,QAAUpQ,EAAQoQ,SAAW,GAClCjR,KAAKkR,aAAerQ,EAAQqQ,aAQ5BlR,KAAKmR,aAAetQ,EAAQsQ,cAAgB,GAC5CnR,KAAKoR,4BAA8BjK,QAAQtG,EAAQsQ,cACnDnR,KAAKqR,aAAc,EACnBrR,KAAKsR,UAAY,GACjBtR,KAAKuR,kCAAoCpK,QAAQnH,KAAKkR,cAAgBlR,KAAKoR,4BAC/E,CAiOA,OAhOAP,EAAS7J,WAAa,SAAU1G,GAC5BuQ,EAASrQ,QAAUF,CACvB,EACAuQ,EAASjI,OAAS,SAAU/H,GACxB,OAAO,IAAIgQ,EAAShQ,EACxB,EACAgQ,EAASjM,UAAU4M,eAAiB,SAAUC,GACrCzR,KAAKoR,6BAGVpR,KAAKmR,aAAanM,KAAKyM,EAC3B,EACAZ,EAASjM,UAAU8M,QAAU,SAAUC,GACnC,OAAmB,MAAfA,GAGsB,MAAtBA,EAAYC,QAGZD,EAAY7L,cAAgB6L,EAAYC,SAG5Cd,EAAMe,aAAa7M,KAAK2M,IACjB,EACX,EACAd,EAASjM,UAAUgE,OAAS,SAAU/H,GAClC,OAAOgQ,EAASjI,OAAO/H,EAC3B,EACAgQ,EAASjM,UAAUkN,KAAO,SAAUC,EAAW5H,EAAM6H,GACjD,GAAIhS,KAAKqR,YACL,OAAO,EAEX,IAAIL,EAAShR,KAAKgR,OAElB,GADAe,EAAY/R,KAAKiS,eAAeF,IAC5B,EAAIjB,EAAMoB,YAAYH,GACtB,OAAO,EAEX,IAAI,EAAIjB,EAAMoB,YAAYlB,GACtB,OAAO,EAES,mBAAT7G,IACP6H,EAAQ7H,EACRA,OAAOgI,GAEX,IAAIC,GAAU,EAAItB,EAAMuB,gBAAgBN,EAAWf,EAAQ7G,EAAM6H,GACjE,QAAKI,IAGDpS,KAAKoR,4BACLpR,KAAKsS,wBAAwBtQ,SAAQ,SAAUyP,IAC3C,EAAIX,EAAMyB,aAAad,EAAOW,EAASpB,EAC3C,KAGA,EAAIF,EAAM0B,WAAWJ,EAAS,CAC1BpB,OAAQA,EACRS,MAAOjP,OAAOiQ,KAAOjQ,OAAOkQ,QAG7B,EACX,EACA7B,EAASjM,UAAU+N,cAAgB,SAAUZ,EAAW5H,GACpD,IAAIlE,EAAQjG,KACZ,OAAO,IAAI6Q,EAASrQ,SAAQ,SAAU0B,EAASC,GACnB8D,EAAM6L,KAAKC,EAAW5H,GAAM,SAAUiI,GAC1DlQ,EAAQkQ,EACZ,KAEIjQ,EAAO,IAAI1C,MAAM,2BAA4BmT,OAAOb,EAAW,MAEvE,GACJ,EACAlB,EAASjM,UAAUC,GAAK,SAAUkN,EAAWc,GACzC,GAAI7S,KAAKqR,YACL,OAAO,EAGX,IAAIqB,EAAO1S,KACPgR,EAAShR,KAAKgR,OACd8B,EAAUD,EAEd,OADAd,EAAY/R,KAAKiS,eAAeF,KAC5B,EAAIjB,EAAMiC,yBAAyBhB,EAAWe,EAAS9B,KAGvDhR,KAAKuR,oCAELuB,EAAU,WAEN,IADA,IAAIxN,EAAO,GACFC,EAAK,EAAGA,EAAKC,UAAU3F,OAAQ0F,IACpCD,EAAKC,GAAMC,UAAUD,GAGpBmN,EAAKM,wBAAwBhT,MAAQA,KAAKgR,SAI1C0B,EAAKO,uBAAuBjT,MAAQA,KAAKkT,SAG9CL,EAAgBpN,WAAM,EAAQH,EAClC,GAGJtF,KAAKsR,UAAUtM,KAAK,CAChB+M,UAAWA,EACXe,QAASA,EACTD,gBAAiBA,IAErB/B,EAAMqC,YAAYnC,GAAUF,EAAMqC,YAAYnC,IAAW,CAAC,EAC1DF,EAAMqC,YAAYnC,GAAQe,GAAajB,EAAMqC,YAAYnC,GAAQe,IAAc,GAC/EjB,EAAMqC,YAAYnC,GAAQe,GAAW/M,KAAK8N,IACnC,EACX,EACAjC,EAASjM,UAAUK,IAAM,SAAU8M,EAAWc,GAC1C,IAAIC,EAAUD,EACd,GAAI7S,KAAKqR,YACL,OAAO,EAEX,GAAIrR,KAAKkR,aACL,IAAK,IAAI7R,EAAI,EAAGA,EAAIW,KAAKsR,UAAUzR,OAAQR,IAAK,CAC5C,IAAI+T,EAAWpT,KAAKsR,UAAUjS,GAC1B+T,EAASP,kBAAoBA,IAC7BC,EAAUM,EAASN,QAE3B,CAEJf,EAAY/R,KAAKiS,eAAeF,GAChC,IAAIf,EAAShR,KAAKgR,OAClB,IAAI,EAAIF,EAAMiC,yBAAyBhB,EAAWe,EAAS9B,GACvD,OAAO,EAEX,IAAIqC,EAAiBvC,EAAMqC,YAAYnC,IAAWF,EAAMqC,YAAYnC,GAAQe,GAC5E,IAAKsB,EACD,OAAO,EAEX,IAAShU,EAAI,EAAGA,EAAIgU,EAAexT,OAAQR,IACvC,GAAIgU,EAAehU,KAAOyT,EAEtB,OADAO,EAAejO,OAAO/F,EAAG,IAClB,EAGf,OAAO,CACX,EACAwR,EAASjM,UAAU0O,SAAW,WAC1B,IAAItT,KAAKqR,YAAT,CAGArR,KAAKqR,aAAc,EACnB,IAAK,IAAIhS,EAAI,EAAGA,EAAIW,KAAKsR,UAAUzR,OAAQR,IAAK,CAC5C,IAAI+T,EAAWpT,KAAKsR,UAAUjS,GAC9BW,KAAKiF,IAAImO,EAASrB,UAAWqB,EAASN,QAC1C,CACA9S,KAAKsR,UAAUzR,OAAS,CANxB,CAOJ,EACAgR,EAASjM,UAAUoO,wBAA0B,SAAUhC,GACnD,OAAKhR,KAAKkR,cAIHlR,KAAKuT,YAAYvC,EAC5B,EACAH,EAASjM,UAAU0N,sBAAwB,WACvC,OAAKtS,KAAKoR,4BAGHpR,KAAKmR,aACP7D,KAAI,SAAUmE,GAMf,OAAIA,aAAiB+B,kBACV/B,EAAMgC,cAEVhC,CACX,IACK3G,QAAO,SAAU4I,GAKlB,OAAOA,CACX,IApBW,EAqBf,EACA7C,EAASjM,UAAUqO,uBAAyB,SAAUC,GAClD,IAAKlT,KAAKoR,4BAEN,OAAO,EAEX,IAAIuC,EAAgB3T,KAAKsS,wBAAwBsB,MAAK,SAAUnC,GAC5D,OAAOA,IAAUyB,CACrB,IACA,OAAO/L,QAAQwM,EACnB,EACA9C,EAASjM,UAAU2O,YAAc,SAAUM,GACvC,IAAIC,EACAtU,EAAI4B,SAASC,cAAc,KAY/B,OAXA7B,EAAEuU,KAAOC,SAASD,KAEdD,EADe,WAAftU,EAAEyU,SACazU,EAAE0U,KAAK7K,QAAQ,QAAS,IAEnB,UAAf7J,EAAEyU,SACQzU,EAAE0U,KAAK7K,QAAQ,OAAQ,IAGvB7J,EAAE0U,KAEA1U,EAAEyU,SAAW,KAAOH,IAClBD,IAGnB7T,KAAKkR,cACElR,KAAKkR,aAAa2C,EAGjC,EACAhD,EAASjM,UAAUqN,eAAiB,SAAUF,GAC1C,OAAK/R,KAAKiR,QAGH,GAAG2B,OAAO5S,KAAKiR,QAAS,KAAK2B,OAAOb,GAFhCA,CAGf,EACAlB,EAASrQ,QAAUuQ,EACZF,CACX,CApP6B,GAqP7B9R,EAAQ8R,SAAWA,CAEnB,EAAE,CAAC,QAAQ,KAAK,GAAG,CAAC,SAAS/Q,EAAQhB,EAAOC,GAC5C,aACA,IAAI+R,EAAQhR,EAAQ,SAChBqU,EAAarU,EAAQ,eACzB,EAAIgR,EAAMsD,UACVtV,EAAOC,QAAUoV,EAAWtD,QAE5B,EAAE,CAAC,aAAa,GAAG,QAAQ,KAAK,GAAG,CAAC,SAAS/Q,EAAQhB,EAAOC,GAC5D,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQsV,OAAStV,EAAQqV,YAAS,EAClC,IAAIE,EAAKxU,EAAQ,MACbyU,GAAa,EAQjBxV,EAAQqV,OAPR,WACQG,GAAgC,oBAAX/R,SAGzB+R,GAAa,EACb/R,OAAOJ,iBAAiB,UAAWkS,EAAGE,WAAW,GACrD,EAOAzV,EAAQsV,OAJR,WACIE,GAAa,EACb/R,OAAOiS,oBAAoB,UAAWH,EAAGE,WAAW,EACxD,CAIA,EAAE,CAAC,KAAK,KAAK,GAAG,CAAC,SAAS1U,EAAQhB,EAAOC,GACzC,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQ2V,6BAA0B,EAClC,IAAIJ,EAAKxU,EAAQ,MAejBf,EAAQ2V,wBAdR,SAAiCtC,EAASpB,EAAQkC,GAC9C,IAAK,IAAI7T,EAAIiV,EAAGzC,aAAahS,OAAS,EAAGR,GAAK,EAAGA,IAAK,CAClD,IAAIsS,EAAc2C,EAAGzC,aAAaxS,GAC9BsS,EAAYgD,OACZL,EAAGzC,aAAazM,OAAO/F,EAAG,GAErB6T,IAAWvB,IAChB,EAAI2C,EAAG9B,WAAWJ,EAAS,CACvBpB,OAAQA,EACRS,MAAOE,EAAYc,KAG/B,CACJ,CAGA,EAAE,CAAC,KAAK,KAAK,GAAG,CAAC,SAAS3S,EAAQhB,EAAOC,GACzC,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQyT,eAAY,EACpB,IAAI8B,EAAKxU,EAAQ,MAiCjBf,EAAQyT,UAhCR,SAASA,EAAUJ,EAASvR,GACxB,IACI+T,EADAvV,EAAI,EAEJ2R,EAASnQ,EAAQmQ,OAAQS,EAAQ5Q,EAAQ4Q,MAC7C,IAgBI,IAfAA,EAAMoD,YAAYzC,EAASpB,IACvB,EAAIsD,EAAGQ,WAAWrD,IAAUA,EAAMsD,OAAOtC,MAAQjQ,OAAOiQ,KACxDD,EAAUJ,EAAS,CACfpB,OAAQA,EACRS,MAAOA,EAAMsD,OAAOtC,MAWpBmC,EAAqBnD,EAAMuD,OAAO3V,IACtCmT,EAAUJ,EAAS,CACfpB,OAAQA,EACRS,MAAOmD,IAEXvV,GAER,CACA,MAAO4V,GAEP,CACJ,CAGA,EAAE,CAAC,KAAK,KAAK,GAAG,CAAC,SAASnV,EAAQhB,EAAOC,GACzC,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQoU,YAAcpU,EAAQ8S,aAAe9S,EAAQmW,YAAS,EAC9DnW,EAAQmW,OAAS,eACjBnW,EAAQ8S,aAAe,GACvB9S,EAAQoU,YAAc,CAAC,CAEvB,EAAE,CAAC,GAAG,GAAG,CAAC,SAASrT,EAAQhB,EAAOC,GAClC,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQoW,cAAW,EACnB,IAAIb,EAAKxU,EAAQ,MAmBjBf,EAAQoW,SAlBR,SAAkBnE,EAAQlM,EAAOqF,EAAM6H,EAAO/S,GAC1C,GAAKqV,EAAGnB,YAAYnC,IAGfsD,EAAGnB,YAAYnC,GAAQlM,GAA5B,CAGA,IAAIQ,EAAO,GACP6E,GACA7E,EAAKN,KAAKmF,GAEV6H,GACA1M,EAAKN,KAAKgN,GAEd,IAAK,IAAI3S,EAAI,EAAGA,EAAIiV,EAAGnB,YAAYnC,GAAQlM,GAAOjF,OAAQR,IACtDiV,EAAGnB,YAAYnC,GAAQlM,GAAOzF,GAAGoG,MAAMxG,EAAGqG,EAT9C,CAWJ,CAGA,EAAE,CAAC,KAAK,KAAK,GAAG,CAAC,SAASxF,EAAQhB,EAAOC,GACzC,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQ+V,eAAY,EAgBpB/V,EAAQ+V,UAfR,SAAmBrD,GACf,OAAIA,EAAMgB,MAAQhB,GAGE,MAAhBA,EAAMsD,QAGNtD,EAAMsD,SAAWtD,IAGO,IAAxBA,EAAMsD,OAAOJ,MAIrB,CAGA,EAAE,CAAC,GAAG,GAAG,CAAC,SAAS7U,EAAQhB,EAAOC,GAClC,aACA,IAAIqW,EAAmBpV,MAAQA,KAAKoV,kBAAqBjV,OAAO0F,OAAS,SAAUzG,EAAGiW,EAAGC,EAAGC,QAC7EpD,IAAPoD,IAAkBA,EAAKD,GAC3B,IAAIE,EAAOrV,OAAOsV,yBAAyBJ,EAAGC,GACzCE,KAAS,QAASA,GAAQH,EAAEnV,WAAasV,EAAKE,UAAYF,EAAKG,gBAClEH,EAAO,CAAEI,YAAY,EAAMC,IAAK,WAAa,OAAOR,EAAEC,EAAI,IAE5DnV,OAAOC,eAAehB,EAAGmW,EAAIC,EAChC,EAAI,SAAUpW,EAAGiW,EAAGC,EAAGC,QACTpD,IAAPoD,IAAkBA,EAAKD,GAC3BlW,EAAEmW,GAAMF,EAAEC,EACb,GACGQ,EAAgB9V,MAAQA,KAAK8V,cAAiB,SAAST,EAAGtW,GAC1D,IAAK,IAAIY,KAAK0V,EAAa,YAAN1V,GAAoBQ,OAAOyE,UAAUsC,eAAetH,KAAKb,EAASY,IAAIyV,EAAgBrW,EAASsW,EAAG1V,EAC3H,EACAQ,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDyV,EAAahW,EAAQ,YAAaf,GAClC+W,EAAahW,EAAQ,gCAAiCf,GACtD+W,EAAahW,EAAQ,eAAgBf,GACrC+W,EAAahW,EAAQ,eAAgBf,GACrC+W,EAAahW,EAAQ,cAAef,GACpC+W,EAAahW,EAAQ,gBAAiBf,GACtC+W,EAAahW,EAAQ,mBAAoBf,GACzC+W,EAAahW,EAAQ,aAAcf,GACnC+W,EAAahW,EAAQ,qBAAsBf,GAC3C+W,EAAahW,EAAQ,kBAAmBf,GACxC+W,EAAahW,EAAQ,uBAAwBf,GAC7C+W,EAAahW,EAAQ,+BAAgCf,GACrD+W,EAAahW,EAAQ,WAAYf,GACjC+W,EAAahW,EAAQ,oBAAqBf,EAE1C,EAAE,CAAC,WAAW,GAAG,cAAc,GAAG,+BAA+B,GAAG,cAAc,GAAG,aAAa,GAAG,eAAe,GAAG,kBAAkB,GAAG,YAAY,GAAG,oBAAoB,GAAG,iBAAiB,GAAG,sBAAsB,GAAG,8BAA8B,GAAG,UAAU,GAAG,mBAAmB,KAAK,GAAG,CAAC,SAASe,EAAQhB,EAAOC,GACjU,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQmT,gBAAa,EAIrBnT,EAAQmT,WAHR,SAAoB6D,GAChB,MAAsB,iBAARA,CAClB,CAGA,EAAE,CAAC,GAAG,GAAG,CAAC,SAASjW,EAAQhB,EAAOC,GAClC,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQyV,eAAY,EACpB,IAAIF,EAAKxU,EAAQ,MAejBf,EAAQyV,UAdR,SAAmBvV,GACf,KAAI,EAAIqV,EAAGpC,YAAYjT,EAAEkL,MAAzB,CAGA,IAAIiI,GAAU,EAAIkC,EAAG0B,eAAe/W,GACpC,GAAKmT,EAAL,CAGA,IAAIjI,EAAOiI,EAAQ6D,UACfjE,EAAQI,EAAQJ,OACpB,EAAIsC,EAAGa,UAAU,IAAK/C,EAAQtN,MAAOqF,EAAM6H,EAAO/S,IAClD,EAAIqV,EAAGa,UAAUlW,EAAE+R,OAAQoB,EAAQtN,MAAOqF,EAAM6H,EAAO/S,IACvD,EAAIqV,EAAGI,yBAAyBzV,EAAEkL,KAAMiI,EAAQpB,OAAQ/R,EAAEiU,OAL1D,CAJA,CAUJ,CAGA,EAAE,CAAC,KAAK,KAAK,GAAG,CAAC,SAASpT,EAAQhB,EAAOC,GACzC,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQsT,oBAAiB,EACzB,IAAIiC,EAAKxU,EAAQ,MAmBjBf,EAAQsT,eAlBR,SAAwBvN,EAAOkM,EAAQ7G,EAAM6H,GACzC,IAAIkE,EACA9D,EAAU,CACVtN,MAAOA,EACPkM,OAAQA,GAES,mBAAVgB,IACPI,EAAQJ,OAAQ,EAAIsC,EAAG6B,kBAAkBnE,EAAOhB,IAEpDoB,EAAQ6D,UAAY9L,EACpB,IACI+L,EAAW5B,EAAGY,OAASlU,KAAKC,UAAUmR,EAC1C,CACA,MAAOnT,GACH,MAAM,IAAIQ,MAAM,8BAA8BmT,OAAO3T,EAAEmX,SAC3D,CACA,OAAOF,CACX,CAGA,EAAE,CAAC,KAAK,KAAK,GAAG,CAAC,SAASpW,EAAQhB,EAAOC,GACzC,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQwT,iBAAc,EAYtBxT,EAAQwT,YARR,SAAqBd,EAAOW,EAASpB,GACjC,IACIS,EAAMoD,YAAYzC,EAASpB,EAC/B,CACA,MAAOqF,GAEP,CACJ,CAGA,EAAE,CAAC,GAAG,GAAG,CAAC,SAASvW,EAAQhB,EAAOC,GAClC,aACA,IAAIgB,EAAmBC,MAAQA,KAAKD,iBAAoB,SAAUE,GAC9D,OAAQA,GAAOA,EAAIC,WAAcD,EAAM,CAAE,QAAWA,EACxD,EACAE,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQoX,sBAAmB,EAC3B,IAAIhC,EAAarU,EAAQ,eACrBwW,EAASvW,EAAgBD,EAAQ,oBAcrCf,EAAQoX,iBAbR,SAA0BxM,EAAIqH,GAC1B,IAAIuF,GAAO,EAAID,EAAO7V,WAUtB,OAHA0T,EAAWtD,SAASjI,OAAO,CACvBoI,OAAQA,IACTnM,GAAG0R,GARN,SAASC,EAAQrM,EAAMsM,GACnB9M,EAAGQ,EAAMsM,GACTtC,EAAWtD,SAASjI,OAAO,CACvBoI,OAAQA,IACT/L,IAAIsR,EAAMC,EACjB,IAIOD,CACX,CAGA,EAAE,CAAC,cAAc,GAAG,kBAAkB,KAAK,GAAG,CAAC,SAASzW,EAAQhB,EAAOC,GACvE,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQgU,6BAA0B,EAClC,IAAIuB,EAAKxU,EAAQ,MAUjBf,EAAQgU,wBATR,SAAiCjO,EAAO6E,EAAIqH,GACxC,SAAI,EAAIsD,EAAGpC,YAAYpN,IAGL,mBAAP6E,IAGJ,EAAI2K,EAAGpC,YAAYlB,EAC9B,CAGA,EAAE,CAAC,KAAK,KAAK,GAAG,CAAC,SAASlR,EAAQhB,EAAOC,GACzC,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,GAEtD,EAAE,CAAC,GAAG,GAAG,CAAC,SAASP,EAAQhB,EAAOC,GAClC,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQiX,mBAAgB,EACxB,IAAI1B,EAAKxU,EAAQ,MA6BjBf,EAAQiX,cA5BR,SAAuB/W,GACnB,IAAImT,EACJ,GAAInT,EAAEkL,KAAKuM,MAAM,EAAGpC,EAAGY,OAAOrV,UAAYyU,EAAGY,OACzC,OAAO,EAEX,IACI9C,EAAUpR,KAAKgP,MAAM/Q,EAAEkL,KAAKuM,MAAMpC,EAAGY,OAAOrV,QAChD,CACA,MAAOkH,GACH,OAAO,CACX,CACA,GAAIqL,EAAQJ,MAAO,CACf,IAAI2E,EAAgB1X,EAAE+R,OAClB4F,EAAgB3X,EAAEiU,OAClB2D,EAAezE,EAAQJ,MAC3BI,EAAQJ,MAAQ,SAAe8E,GAC3B,GAAKF,EAAL,CAGA,IAAIG,GAAe,EAAIzC,EAAGjC,gBAAgBwE,EAAcF,EAAeG,GAClEC,GAGLH,EAAc/B,YAAYkC,EAAcJ,EALxC,CAMJ,CACJ,CACA,OAAOvE,CACX,CAGA,EAAE,CAAC,KAAK,KAAK,GAAG,CAAC,SAAStS,EAAQhB,EAAOC,GACzC,aA0EA,IAAIiY,EAAiBpN,WAErB,SAASmF,EAAQkI,GACf,OAAO9P,QAAQ8P,QAAyB,IAAbA,EAAEpX,OAC/B,CAEA,SAASqX,IAAQ,CAajB,SAAS1W,EAAQmJ,GACf,KAAM3J,gBAAgBQ,GACpB,MAAM,IAAI2W,UAAU,wCACtB,GAAkB,mBAAPxN,EAAmB,MAAM,IAAIwN,UAAU,kBAElDnX,KAAKoX,OAAS,EAEdpX,KAAKqX,UAAW,EAEhBrX,KAAKsX,YAASnF,EAEdnS,KAAKuX,WAAa,GAElBC,EAAU7N,EAAI3J,KAChB,CAEA,SAASyX,EAAO/E,EAAMhJ,GACpB,KAAuB,IAAhBgJ,EAAK0E,QACV1E,EAAOA,EAAK4E,OAEM,IAAhB5E,EAAK0E,QAIT1E,EAAK2E,UAAW,EAChB7W,EAAQkX,cAAa,WACnB,IAAIC,EAAqB,IAAhBjF,EAAK0E,OAAe1N,EAASkO,YAAclO,EAASmO,WAC7D,GAAW,OAAPF,EAAJ,CAIA,IAAIG,EACJ,IACEA,EAAMH,EAAGjF,EAAK4E,OAChB,CAAE,MAAOrY,GAEP,YADAkD,EAAOuH,EAASQ,QAASjL,EAE3B,CACAiD,EAAQwH,EAASQ,QAAS4N,EAR1B,MAFmB,IAAhBpF,EAAK0E,OAAelV,EAAUC,GAAQuH,EAASQ,QAASwI,EAAK4E,OAWlE,KAlBE5E,EAAK6E,WAAWvS,KAAK0E,EAmBzB,CAEA,SAASxH,EAAQwQ,EAAMqF,GACrB,IAEE,GAAIA,IAAarF,EACf,MAAM,IAAIyE,UAAU,6CACtB,GACEY,IACqB,iBAAbA,GAA6C,mBAAbA,GACxC,CACA,IAAItQ,EAAOsQ,EAAStQ,KACpB,GAAIsQ,aAAoBvX,EAItB,OAHAkS,EAAK0E,OAAS,EACd1E,EAAK4E,OAASS,OACdC,EAAOtF,GAEF,GAAoB,mBAATjL,EAEhB,YADA+P,GApEM7N,EAoESlC,EApELwQ,EAoEWF,EAnEpB,WACLpO,EAAGlE,MAAMwS,EAASzS,UACpB,GAiEsCkN,EAGpC,CACAA,EAAK0E,OAAS,EACd1E,EAAK4E,OAASS,EACdC,EAAOtF,EACT,CAAE,MAAOzT,GACPkD,EAAOuQ,EAAMzT,EACf,CA7EF,IAAc0K,EAAIsO,CA8ElB,CAEA,SAAS9V,EAAOuQ,EAAMqF,GACpBrF,EAAK0E,OAAS,EACd1E,EAAK4E,OAASS,EACdC,EAAOtF,EACT,CAEA,SAASsF,EAAOtF,GACM,IAAhBA,EAAK0E,QAA2C,IAA3B1E,EAAK6E,WAAW1X,QACvCW,EAAQkX,cAAa,WACdhF,EAAK2E,UACR7W,EAAQ0X,sBAAsBxF,EAAK4E,OAEvC,IAGF,IAAK,IAAIjY,EAAI,EAAG8Y,EAAMzF,EAAK6E,WAAW1X,OAAQR,EAAI8Y,EAAK9Y,IACrDoY,EAAO/E,EAAMA,EAAK6E,WAAWlY,IAE/BqT,EAAK6E,WAAa,IACpB,CAKA,SAASa,EAAQR,EAAaC,EAAY3N,GACxClK,KAAK4X,YAAqC,mBAAhBA,EAA6BA,EAAc,KACrE5X,KAAK6X,WAAmC,mBAAfA,EAA4BA,EAAa,KAClE7X,KAAKkK,QAAUA,CACjB,CAQA,SAASsN,EAAU7N,EAAI+I,GACrB,IAAI2F,GAAO,EACX,IACE1O,GACE,SAAStJ,GACHgY,IACJA,GAAO,EACPnW,EAAQwQ,EAAMrS,GAChB,IACA,SAASiY,GACHD,IACJA,GAAO,EACPlW,EAAOuQ,EAAM4F,GACf,GAEJ,CAAE,MAAOC,GACP,GAAIF,EAAM,OACVA,GAAO,EACPlW,EAAOuQ,EAAM6F,EACf,CACF,CAEA/X,EAAQoE,UAAiB,MAAI,SAASiT,GACpC,OAAO7X,KAAKyH,KAAK,KAAMoQ,EACzB,EAEArX,EAAQoE,UAAU6C,KAAO,SAASmQ,EAAaC,GAE7C,IAAIW,EAAO,IAAIxY,KAAK8F,YAAYoR,GAGhC,OADAO,EAAOzX,KAAM,IAAIoY,EAAQR,EAAaC,EAAYW,IAC3CA,CACT,EAEAhY,EAAQoE,UAAmB,QApO3B,SAA4BG,GAC1B,IAAIe,EAAc9F,KAAK8F,YACvB,OAAO9F,KAAKyH,MACV,SAASpH,GAEP,OAAOyF,EAAY5D,QAAQ6C,KAAY0C,MAAK,WAC1C,OAAOpH,CACT,GACF,IACA,SAASiY,GAEP,OAAOxS,EAAY5D,QAAQ6C,KAAY0C,MAAK,WAE1C,OAAO3B,EAAY3D,OAAOmW,EAC5B,GACF,GAEJ,EAqNA9X,EAAQ6G,IAAM,SAASoR,GACrB,OAAO,IAAIjY,GAAQ,SAAS0B,EAASC,GACnC,IAAK4M,EAAQ0J,GACX,OAAOtW,EAAO,IAAIgV,UAAU,iCAG9B,IAAI7R,EAAOwJ,MAAMlK,UAAU8R,MAAM9W,KAAK6Y,GACtC,GAAoB,IAAhBnT,EAAKzF,OAAc,OAAOqC,EAAQ,IACtC,IAAIwW,EAAYpT,EAAKzF,OAErB,SAAS8Y,EAAItZ,EAAGuZ,GACd,IACE,GAAIA,IAAuB,iBAARA,GAAmC,mBAARA,GAAqB,CACjE,IAAInR,EAAOmR,EAAInR,KACf,GAAoB,mBAATA,EAQT,YAPAA,EAAK7H,KACHgZ,GACA,SAASA,GACPD,EAAItZ,EAAGuZ,EACT,GACAzW,EAIN,CACAmD,EAAKjG,GAAKuZ,EACU,KAAdF,GACJxW,EAAQoD,EAEZ,CAAE,MAAOiT,GACPpW,EAAOoW,EACT,CACF,CAEA,IAAK,IAAIlZ,EAAI,EAAGA,EAAIiG,EAAKzF,OAAQR,IAC/BsZ,EAAItZ,EAAGiG,EAAKjG,GAEhB,GACF,EAEAmB,EAAQ8G,WA3PR,SAAoBmR,GAElB,OAAO,IADCzY,MACK,SAASkC,EAASC,GAC7B,IAAMsW,QAA6B,IAAfA,EAAI5Y,OACtB,OAAOsC,EACL,IAAIgV,iBACKsB,EACL,IACAA,EACA,mEAIR,IAAInT,EAAOwJ,MAAMlK,UAAU8R,MAAM9W,KAAK6Y,GACtC,GAAoB,IAAhBnT,EAAKzF,OAAc,OAAOqC,EAAQ,IACtC,IAAIwW,EAAYpT,EAAKzF,OAErB,SAAS8Y,EAAItZ,EAAGuZ,GACd,GAAIA,IAAuB,iBAARA,GAAmC,mBAARA,GAAqB,CACjE,IAAInR,EAAOmR,EAAInR,KACf,GAAoB,mBAATA,EAaT,YAZAA,EAAK7H,KACHgZ,GACA,SAASA,GACPD,EAAItZ,EAAGuZ,EACT,IACA,SAAS3Z,GACPqG,EAAKjG,GAAK,CAAEwZ,OAAQ,WAAYP,OAAQrZ,GACpB,KAAdyZ,GACJxW,EAAQoD,EAEZ,GAIN,CACAA,EAAKjG,GAAK,CAAEwZ,OAAQ,YAAaxY,MAAOuY,GACpB,KAAdF,GACJxW,EAAQoD,EAEZ,CAEA,IAAK,IAAIjG,EAAI,EAAGA,EAAIiG,EAAKzF,OAAQR,IAC/BsZ,EAAItZ,EAAGiG,EAAKjG,GAEhB,GACF,EA+MAmB,EAAQ0B,QAAU,SAAS7B,GACzB,OAAIA,GAA0B,iBAAVA,GAAsBA,EAAMyF,cAAgBtF,EACvDH,EAGF,IAAIG,GAAQ,SAAS0B,GAC1BA,EAAQ7B,EACV,GACF,EAEAG,EAAQ2B,OAAS,SAAS9B,GACxB,OAAO,IAAIG,GAAQ,SAAS0B,EAASC,GACnCA,EAAO9B,EACT,GACF,EAEAG,EAAQ+G,KAAO,SAASkR,GACtB,OAAO,IAAIjY,GAAQ,SAAS0B,EAASC,GACnC,IAAK4M,EAAQ0J,GACX,OAAOtW,EAAO,IAAIgV,UAAU,kCAG9B,IAAK,IAAI9X,EAAI,EAAG8Y,EAAMM,EAAI5Y,OAAQR,EAAI8Y,EAAK9Y,IACzCmB,EAAQ0B,QAAQuW,EAAIpZ,IAAIoI,KAAKvF,EAASC,EAE1C,GACF,EAGA3B,EAAQkX,aAEmB,mBAAjBoB,cACN,SAASnP,GAEPmP,aAAanP,EACf,GACF,SAASA,GACPqN,EAAerN,EAAI,EACrB,EAEFnJ,EAAQ0X,sBAAwB,SAA+BnR,GACtC,oBAAZ8C,SAA2BA,SACpCA,QAAQkP,KAAK,wCAAyChS,EAE1D,EAEAjI,EAAOC,QAAUyB,CAEjB,EAAE,CAAC,GAAG,GAAG,CAAC,SAASV,EAAQhB,EAAOC,GAClC,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQmE,MAAQnE,EAAQia,MAAQja,EAAQoF,iBAAmBpF,EAAQka,gBAAkBla,EAAQma,qBAAkB,EAE/G,IAAIC,EAAwB,oBAAX3W,QACbA,OAAOC,WACPD,OAAOC,UAAUC,UAIjBuB,EAAYnE,EAAQ,2CAEpBsZ,EAAatZ,EAAQ,6CAErBoE,EAAWpE,EAAQ,0CAEnBoD,EAAQpD,EAAQ,uCACpBf,EAAQmE,MAAQA,EAEhB,IAAI8V,EAAQlZ,EAAQ,uCACpBf,EAAQia,MAAQA,EAIhB,IAAIK,EAAuB,wCAQ3Bta,EAAQma,gBAJR,SAAyB3W,GAErB,YADW,IAAPA,IAAiBA,EAAK4W,GACnBlV,EAAU1B,IAAO8W,EAAqB1W,KAAKJ,EACtD,EAMAxD,EAAQka,gBAJR,SAAyB1W,GAErB,YADW,IAAPA,IAAiBA,EAAK4W,IAClBlV,EAAU1B,IAAO6W,EAAW7W,KAAQ2B,EAAS3B,EACzD,EAMAxD,EAAQoF,iBAJR,SAA0B5B,GAEtB,YADW,IAAPA,IAAiBA,EAAK4W,GACnB,iBAAiBxW,KAAKJ,IAfjC,SAA6CA,GACzC,OAAQ2B,EAAS3B,IAAOA,EAAGU,QAAQ,YAAc,CACrD,CAawCwB,CAAoClC,EAC5E,CAGA,EAAE,CAAC,0CAA0C,GAAG,yCAAyC,GAAG,4CAA4C,GAAG,sCAAsC,GAAG,sCAAsC,KAAK,GAAG,CAAC,SAASzC,EAAQhB,EAAOC,GAC3P,aACA,IAAIua,EAAWxZ,EAAQ,gBACvBhB,EAAOC,QAAU,WAEb,QAAQ,EAAIua,EAASnV,mBACzB,CAEA,EAAE,CAAC,eAAe,KAAK,GAAG,CAAC,SAASrE,EAAQhB,EAAOC,GACnDD,EAAOC,QAAUe,EAAQ,mCAEzB,EAAE,CAAC,mCAAmC,KAAK,GAAG,CAAC,SAASA,EAAQhB,EAAOC,GACvE,aAEA,IAAIwa,EAAiBzZ,EAAQ,0BACzB0Z,EAAS1Z,EAAQ,YACjBwI,EAASxI,EAAQ,iBAAiBwI,OAClCmR,EAAU3Z,EAAQ,kBAClB4Z,EAAwB5Z,EAAQ,mCAChCyK,EAAczK,EAAQ,2BAQ1B,SAAS6Z,EAAgB9Y,GACvBb,KAAK4Z,QAAU/Y,EAAQgZ,MACzB,CAwBAF,EAAgB/U,UAAUkV,kBAAoB,SAAUjZ,GACtD,IACIsJ,EADA4P,EAAQlZ,EAAQkZ,MAGpB,OAAKA,UAUL5P,EAAO7B,EACL,CACE0R,MAAO,CAAE9G,OAAQ,oBACjB+G,mBAAoBF,GAEtBlZ,IAGUkZ,MAEL/Z,KAAK4Z,QACTM,QAAQ,CACPnP,OAAQ,MACRoP,SAAU,uCACVhQ,KAAMA,IAEPvD,OAAM,SAAUG,GACf,OAAOvG,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAOY,mBAAmBrM,KAChCrO,KAAM8Z,EAAOY,mBAAmB1a,KAChC0W,QACE,8EACFiE,QAAS,CACPC,cAAevT,KAIvB,KArCOvG,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAOe,oBAAoBxM,KACjCrO,KAAM8Z,EAAOe,oBAAoB7a,KACjC0W,QAAS,mDAkCjB,EAwBAuD,EAAgB/U,UAAU4V,0BAA4B,SAAU3Z,GAC9D,OAAKA,EAAQkZ,MAUN/Z,KAAK4Z,QACTM,QAAQ,CACPnP,OAAQ,MACRoP,SAAU,+CAAiDtZ,EAAQkZ,MACnE5P,KAAM,CACJ6P,MAAO,CAAE9G,OAAQ,oBACjB+G,mBAAoBpZ,EAAQkZ,SAG/BnT,OAAM,SAAUG,GACf,OAAOvG,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAOY,mBAAmBrM,KAChCrO,KAAM8Z,EAAOY,mBAAmB1a,KAChC0W,QACE,qFACFiE,QAAS,CACPC,cAAevT,KAIvB,IA9BOvG,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAOe,oBAAoBxM,KACjCrO,KAAM8Z,EAAOe,oBAAoB7a,KACjC0W,QAAS,2DA2BjB,EAcAuD,EAAgB/U,UAAU0O,SAAW,WAGnC,OAFAoG,EAAsB1Z,KAAMyZ,EAAQE,EAAgB/U,YAE7CpE,QAAQ0B,SACjB,EAEApD,EAAOC,QAAUwL,EAAYE,cAAckP,EAE3C,EAAE,CAAC,gBAAgB,IAAI,yBAAyB,IAAI,kCAAkC,IAAI,iBAAiB,IAAI,WAAW,GAAG,0BAA0B,KAAK,GAAG,CAAC,SAAS7Z,EAAQhB,EAAOC,GACxL,aAgBA,IAAIwa,EAAiBzZ,EAAQ,0BAE7BhB,EAAOC,QAAU,CACfwb,oBAAqB,CACnBxM,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,uBAER0a,mBAAoB,CAClBrM,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,sBAIV,EAAE,CAAC,yBAAyB,MAAM,GAAG,CAAC,SAASI,EAAQhB,EAAOC,GAC9D,aAMA,IAAI4a,EAAkB7Z,EAAQ,sBAC1B6a,EAA6B7a,EAAQ,uCACrC8a,EAAuB9a,EAAQ,iCAC/B+a,EAAkB/a,EAAQ,4BAE1ByK,EAAczK,EAAQ,2BAoC1BhB,EAAOC,QAAU,CACf8G,OAAQ0E,GA1BV,SAAgB1J,GACd,IAAI8H,EAAO,mBAEX,OAAOgS,EACJG,OAAO,CACNnS,KAAMA,EACNkR,OAAQhZ,EAAQgZ,OAChBkB,cAAela,EAAQka,gBAExBtT,MAAK,WACJ,OAAOmT,EAAqB/U,OAAO,CACjCkV,cAAela,EAAQka,cACvBlB,OAAQhZ,EAAQgZ,OAChBmB,MAAOna,EAAQma,MACfC,UAAWJ,EAAgBhV,OAAOhF,EAAQka,eAC1CpS,KAAMA,GAEV,IACClB,MAAK,SAAUoS,GAGd,OAFAhZ,EAAQgZ,OAASA,EAEV,IAAIF,EAAgB9Y,EAC7B,GACJ,IAQEqa,QA3CY,UA8Cd,EAAE,CAAC,sCAAsC,IAAI,2BAA2B,IAAI,gCAAgC,IAAI,qBAAqB,GAAG,0BAA0B,KAAK,GAAG,CAAC,SAASpb,EAAQhB,EAAOC,GACnM,aAEA,IAAIwa,EAAiBzZ,EAAQ,0BACzBqb,EAAYrb,EAAQ,oBACpB0Z,EAAS1Z,EAAQ,YACjB2Z,EAAU3Z,EAAQ,kBAClB4Z,EAAwB5Z,EAAQ,mCAChCyK,EAAczK,EAAQ,2BA2C1B,SAASsb,EAASva,GAChBb,KAAKqb,wBAA0BlU,SAAStG,EAAQya,mBAChDtb,KAAK4Z,QAAU/Y,EAAQgZ,OACvB7Z,KAAKub,eAAiB1a,EAAQ2a,cAE1Bxb,KAAK4Z,SACP5Z,KAAKyb,wBAET,CAEAL,EAASxW,UAAU8W,eAAiB,WAClC,OAAI1b,KAAK4Z,QACApZ,QAAQ0B,UAGVlC,KAAKub,eAAe9T,KACzB,SAAUoS,GACR7Z,KAAK4Z,QAAUC,EAEf7Z,KAAKyb,wBACP,EAAEE,KAAK3b,MAEX,EAEAob,EAASxW,UAAU6W,uBAAyB,WAC1C,IAAIG,EACF5b,KAAK4Z,QAAQiC,mBAAmBC,qBAAqBC,YAElDH,GAcLzb,OAAOC,eAAeJ,KAAM,qBAAsB,CAChDK,MAAOub,EAAeI,mBACtBrG,cAAc,EACdD,UAAU,GAEd,EAuDA0F,EAASxW,UAAUqX,qBAAuB,SAAUC,GAClD,OAAIlc,KAAKqb,wBACArb,KAAKmc,mCAAmCD,GAG1Clc,KAAK0b,iBAAiBjU,KAC3B,WACE,OAAOzH,KAAKmc,mCAAmCD,EACjD,EAAEP,KAAK3b,MAEX,EAEAob,EAASxW,UAAUuX,mCAAqC,SACtDD,GAEA,IAAIE,EACFpc,KAAK4Z,QAAQiC,mBAAmBC,qBAAqBC,YACnDM,EAAW,CACbC,YAAaF,EAASE,YACtBC,aAAcH,EAASG,aACvBC,qBAAsBJ,EAASI,sBAAwB,CAAC,eACxDC,kBAAmBL,EAASK,kBAAkBnP,KAAI,SAAUoP,GAC1D,MAAmB,eAAZA,EAA2B,aAAeA,CACnD,KAGF,OAAOvc,OAAOmI,OAAO,CAAC,EAAG+T,EAAUH,EACrC,EA4CAd,EAASxW,UAAU+X,kBAAoB,SAAU9b,GAC/C,IAAI6R,EAAO1S,KAEX,OAAKa,GAAYA,EAAQ+b,cAMlB5c,KAAK0b,iBACTjU,MAAK,WACJ,IAAIoV,EAAqB,CACvBC,cAAejc,EAAQ+b,cACvBG,WAAYlc,EAAQkc,YAAcva,OAAOwR,SAASgJ,SAClDhB,mBACEnb,EAAQmb,oBAAsBtJ,EAAKsJ,oBAOvC,OAJ2B,MAAvBnb,EAAQoc,cACVJ,EAAmBI,YAAcpc,EAAQoc,aAGpCvK,EAAKkH,QAAQM,QAAQ,CAC1BnP,OAAQ,OACRoP,SAAU,yBACVhQ,KAAM,CACJ6P,MAAO,CAAE9G,OAAQ,aACjB2J,mBAAoBA,IAG1B,IACCpV,MAAK,SAAUyV,GAGd,OAFA/B,EAAUgC,UAAUzK,EAAKkH,QAAS,wCAE3BpZ,QAAQ0B,QAAQgb,EACzB,IACCtW,OAAM,SAAUG,GAGf,OAFAoU,EAAUgC,UAAUzK,EAAKkH,QAAS,qCAEjB,yBAAb7S,EAAIrH,KACCc,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAO4D,qCAAqCrP,KAClDrO,KAAM8Z,EAAO4D,qCAAqC1d,KAClD0W,QAASoD,EAAO4D,qCAAqChH,QACrDiE,QAAS,CACPC,cAAevT,EAAIsT,QAAQC,kBAM5B9Z,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAO6D,sCAAsCtP,KACnDrO,KAAM8Z,EAAO6D,sCAAsC3d,KACnD0W,QAASoD,EAAO6D,sCAAsCjH,QACtDiE,QAAS,CACPC,cAAevT,KAIvB,IA1DOvG,QAAQ2B,OACb,IAAIoX,EAAeC,EAAO8D,mCA0DhC,EA6CAlC,EAASxW,UAAU2Y,SAAW,SAAU1c,GACtC,IAAI6R,EAAO1S,KAEX,OAAKa,EAAQ2c,MAMNxd,KAAK0b,iBACTjU,MAAK,WACJ,OAAOiL,EAAKkH,QAAQM,QAAQ,CAC1BnP,OAAQ,OACRoP,SAAU,uCACVhQ,KAAM,CACJ6P,MAAO,CACL9G,OAAQ,aAEVuK,kBAAmBtd,OAAOmI,OAAO,CAAC,EAAGzH,EAAQ2c,MAAO,CAElDE,YAAaC,KAAK3c,KAAKC,UAAUJ,EAAQ2c,MAAME,kBAIvD,IACCjW,MAAK,SAAUyV,GAGd,OAFA/B,EAAUgC,UAAUzK,EAAKkH,QAAS,+BAE3BpZ,QAAQ0B,QAAQgb,EAASU,cAAc,GAChD,IACChX,OAAM,SAAUG,GAGf,OAFAoU,EAAUgC,UAAUzK,EAAKkH,QAAS,4BAE3BpZ,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAOqE,uBAAuB9P,KACpCrO,KAAM8Z,EAAOqE,uBAAuBne,KACpC0W,QAASoD,EAAOqE,uBAAuBzH,QACvCiE,QAAS,CACPC,cAAevT,KAIvB,IAvCOvG,QAAQ2B,OACb,IAAIoX,EAAeC,EAAOsE,kCAuChC,EAcA1C,EAASxW,UAAU0O,SAAW,WAG5B,OAFAoG,EAAsB1Z,KAAMyZ,EAAQ2B,EAASxW,YAEtCpE,QAAQ0B,SACjB,EAEApD,EAAOC,QAAUwL,EAAYE,cAAc2Q,EAE3C,EAAE,CAAC,mBAAmB,IAAI,yBAAyB,IAAI,kCAAkC,IAAI,iBAAiB,IAAI,WAAW,GAAG,0BAA0B,KAAK,GAAG,CAAC,SAAStb,EAAQhB,EAAOC,GAC3L,aAuBA,IAAIwa,EAAiBzZ,EAAQ,0BAE7BhB,EAAOC,QAAU,CACfgf,sBAAuB,CACrBhQ,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,wBACN0W,QAAS,+CAEXkH,kCAAmC,CACjCvP,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,oCACN0W,QAAS,0DAEXiH,sCAAuC,CACrCtP,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,wCACN0W,QAAS,oEAEXgH,qCAAsC,CACpCrP,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,uCACN0W,QACE,kFAEJ0H,iCAAkC,CAChC/P,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,mCACN0W,QAAS,iDAEXyH,uBAAwB,CACtB9P,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,yBACN0W,QAAS,mEAIb,EAAE,CAAC,yBAAyB,MAAM,GAAG,CAAC,SAAStW,EAAQhB,EAAOC,GAC9D,aAOA,IAAIqc,EAAWtb,EAAQ,eACnBqb,EAAYrb,EAAQ,oBACpByZ,EAAiBzZ,EAAQ,0BACzB6a,EAA6B7a,EAAQ,uCACrC+a,EAAkB/a,EAAQ,4BAC1B8a,EAAuB9a,EAAQ,iCAC/B0Z,EAAS1Z,EAAQ,YAEjByK,EAAczK,EAAQ,2BA0D1BhB,EAAOC,QAAU,CACf8G,OAAQ0E,GA/CV,SAAgB1J,GACd,IAAI8H,EAAO,YAEX,OAAOgS,EACJG,OAAO,CACNnS,KAAMA,EACNkR,OAAQhZ,EAAQgZ,OAChBkB,cAAela,EAAQka,gBAExBtT,MAAK,WACJ,IAAIuW,EACAxC,EAAgBZ,EACjB/U,OAAO,CACNkV,cAAela,EAAQka,cACvBlB,OAAQhZ,EAAQgZ,OAChBmB,MAAOna,EAAQma,MACfC,UAAWJ,EAAgBhV,OAAOhF,EAAQka,eAC1CpS,KAAMA,IAEPlB,MAAK,SAAUoS,GACd,OAAKA,EAAOgC,mBAAmBC,qBAAqBC,aAMpDZ,EAAUgC,UAAUtD,EAAQ,wBAErBA,GAPErZ,QAAQ2B,OACb,IAAIoX,EAAeC,EAAOuE,uBAOhC,IAKF,OAHAld,EAAQ2a,cAAgBA,EACxBwC,EAAmB,IAAI5C,EAASva,GAE3BA,EAAQya,kBAQN0C,EAPExC,EAAc/T,MAAK,SAAUoS,GAGlC,OAFAmE,EAAiBpE,QAAUC,EAEpBmE,CACT,GAIJ,GACJ,IAQE9C,QAjEY,UAoEd,EAAE,CAAC,mBAAmB,IAAI,sCAAsC,IAAI,yBAAyB,IAAI,2BAA2B,IAAI,gCAAgC,IAAI,cAAc,GAAG,WAAW,GAAG,0BAA0B,KAAK,GAAG,CAAC,SAASpb,EAAQhB,EAAOC,GAC9P,aAEA,IAAIkf,EAAoBne,EAAQ,eAAeme,kBAE3CC,EAAUpe,EAAQ,qBAClBoa,EAAUpa,EAAQ,aAClBqe,EAAmBre,EAAQ,6BAC3ByZ,EAAiBzZ,EAAQ,0BACzBse,EAA0Bte,EAAQ,qCAClCue,EAA0Bve,EAAQ,uBAAuB+b,iBACzDyC,EAA0Bxe,EAAQ,oCAClCye,EAAcze,EAAQ,uBACtByK,EAAczK,EAAQ,2BACtBiK,EAAOjK,EAAQ,eACf4J,EAAW5J,EAAQ,mBACnBwI,EAASxI,EAAQ,iBAAiBwI,OAClC6S,EAAYrb,EAAQ,oBACpB0Z,EAAS1Z,EAAQ,YACjBob,EAAUpb,EAAQ,oBAAoBob,QACtCsD,EAAe1e,EAAQ,oBAAoB0e,aAC3C/E,EAAU3Z,EAAQ,kBAClB4Z,EAAwB5Z,EAAQ,mCAChC2e,EAAS3e,EAAQ,iBACjB4e,EAAiB5e,EAAQ,oBAAoB4e,eAC7CC,EAAkB7e,EAAQ,oBAAoB6e,gBAC9CC,EAAe9e,EAAQ,oBAAoB8e,aAE3CC,EAAgB,CAAC,EAoBrB,SAASC,EAAOC,GACd,IAAIC,EAAmBlD,EAOvB,GALAiD,EAAgBA,GAAiB,CAAC,EAElCC,EAAoBhe,KAAKC,UAAU8d,KACnCjD,EAAuBiD,EAAcjD,sBAGnC,MAAM,IAAIvC,EAAeC,EAAOyF,sCA8BlC,GA3BA,CAAC,YAAa,eAAgB,aAAajd,SAAQ,SAAUkd,GAC3D,GACEA,KAAYpD,IACXqC,EAAiBrC,EAAqBoD,IAEvC,MAAM,IAAI3F,EAAe,CACvBxL,KAAMyL,EAAO2F,4CAA4CpR,KACzDrO,KAAM8Z,EAAO2F,4CAA4Czf,KACzD0W,QAAS8I,EAAW,sCAG1B,IAOAlf,KAAK6b,iBAAmB,WACtB,OAAO7a,KAAKgP,MAAMgP,EACpB,EAEAhf,KAAKof,SAAWlF,EAChBla,KAAKqf,eAAiBrf,KAAK6b,mBAE3B7b,KAAKsf,kBAAoBxD,EAAqByD,aAAe,OAEzDzD,EAAqB0D,QAAS,CAChC,IAAKrB,EAAiBrC,EAAqB0D,QAAQC,KACjD,MAAM,IAAIlG,EAAe,CACvBxL,KAAMyL,EAAO2F,4CAA4CpR,KACzDrO,KAAM8Z,EAAO2F,4CAA4Czf,KACzD0W,QAAS,kDAIbpW,KAAK0f,SAAW,IAAIxB,EAAQ,CAC1BsB,QAAS1D,EAAqB0D,SAElC,CACF,CAEAV,EAAOa,WAAa,SAAU9e,GAC5B,IAAI+e,EAAgBC,EAChB3V,EAAU2U,EAAche,EAAQka,eAEpC,GAAI7Q,EAGF,OAFAiR,EAAUgC,UAAUjT,EAAS,6BAEtBA,EAGT,IACE2V,EAAWvB,EAAwBzd,EAAQka,cAC7C,CAAE,MAAOhU,GACP,OAAOvG,QAAQ2B,OACb,IAAIoX,EAAeC,EAAOsG,8BAE9B,CAkBA,OAhBA5V,EAAUmU,EAAwBwB,GAAUpY,MAAK,SAAUsX,GASzD,OARIle,EAAQma,QACV+D,EAAcgB,SAAU,GAG1BhB,EAAchE,cAAgBla,EAAQka,cAEtC6E,EAAiB,IAAId,EAAOC,EAG9B,IAEAF,EAAche,EAAQka,eAAiB7Q,EAEvCiR,EAAUgC,UAAUjT,EAAS,kCAEtBA,EACJzC,MAAK,SAAUoS,GAGd,OAFAsB,EAAUgC,UAAUyC,EAAgB,gCAE7B/F,CACT,IACCjT,OAAM,SAAUG,GAGf,cAFO8X,EAAche,EAAQka,eAEtBva,QAAQ2B,OAAO4E,EACxB,GACJ,EAGA+X,EAAOxc,WAAa,WAClBuc,EAAgB,CAAC,CACnB,EAEAC,EAAOla,UAAUob,0BAA4B,SAAUC,GACrD,IACI5X,EAAQ6X,EAAgBC,EAA0BC,EADlDC,EAAKjf,SAASkf,cAAc,iBAAmB5B,EAAiB,MAG/D2B,KACHA,EAAKjf,SAASmf,KAAKle,YAAYjB,SAASC,cAAc,YACnD0M,KAAO,mBACVsS,EAAGve,aAAa,QAAS4c,IAG3BrW,EAASrI,KAAK6b,mBACdqE,EAAiB,CACfM,WAAY,UACZC,IAAKpY,EAAOyT,qBAAqB4E,aAEnCP,EAA2B9X,EAAO8X,2BAGhCA,EAAyBQ,MAAM,KAAK3e,SAAQ,SAAU4e,GACpD,IAAIC,EAAYD,EAAOD,MAAM,KAER,gBAAjBE,EAAU,IAAwBA,EAAUhhB,OAAS,IACvDqgB,EAAeY,IAAMD,EAAU,GAEnC,IAGFT,EAAa,CACX9gB,EAAG2gB,EAAiBzP,OAAO,EAAG,IAC9BuQ,GAAIb,EACJc,IAAI,EACJ1V,EAAGqT,GAEL0B,EAAGY,KAAOjgB,KAAKC,UAAUmf,EAC3B,EA4FAtB,EAAOla,UAAUsV,QAAU,SAAUrZ,EAASkE,GAC5C,IAAI2N,EAAO1S,KACPkhB,EAAiB,IAAI1gB,SAAQ,SAAU0B,EAASC,GAClD,IAAIgf,EAAYC,EAAKC,EAASC,EA+MSvC,EA9MnCwC,EAAoBpa,QACD,iCAArBtG,EAAQsZ,UACNzH,EAAKmJ,mBAAmBC,qBAAqB0F,YAC1CC,mBAWP,GARoB,eAAhB5gB,EAAQugB,MACLvgB,EAAQkK,OAEDlK,EAAQsZ,WAClBgH,EAAa,oBAFbA,EAAa,kBAMbA,EACF,MAAM,IAAI5H,EAAe,CACvBxL,KAAMyL,EAAOkI,uBAAuB3T,KACpCrO,KAAM8Z,EAAOkI,uBAAuBhiB,KACpC0W,QAAS+K,EAAa,wCAiB1B,GAZEC,EADE,QAASvgB,EACLA,EAAQugB,IAER,YAGRE,EAAiB,CACfvW,OAAQlK,EAAQkK,OAChByU,QAAS9M,EAAKgN,SACdiC,QAAS9gB,EAAQ8gB,QACjBC,SAAUlP,EAAK2M,eAAewC,mBAGpB,cAART,EACFC,EAAU3O,EAAK4M,kBAEfgC,EAAenX,KAAOoU,EAAY7L,EAAK2M,eAAgBxe,EAAQsJ,UAC1D,IAAY,eAARiX,EAsBT,MAAM,IAAI7H,EAAe,CACvBxL,KAAMyL,EAAOsI,sBAAsB/T,KACnCrO,KAAM8Z,EAAOsI,sBAAsBpiB,KACnC0W,QAAS,4BAxBXiL,EACE7C,EAAa9L,EAAK2M,eAAevD,qBAAqBiG,aACxDlhB,EAAQsZ,SAAW,GACnBmH,EAAevW,OAAS,OACxBuW,EAAenX,KAAO7B,EACpB,CACE0Z,kBAAmB,CACjBC,SAAUvP,EAAK2M,eAAewC,kBAAkBI,SAChD/O,OAAQR,EAAK2M,eAAewC,kBAAkB3O,OAC9CgP,YAAaxP,EAAK2M,eAAewC,kBAAkBK,YACnDC,UAAWzP,EAAK2M,eAAewC,kBAAkBM,UACjDC,QAASlH,IAGbra,EAAQsJ,MAGVmX,EAAee,QAyJZ,CACLC,cAAe,YALwBvD,EApJnCrM,EAAK2M,gBAsJKc,0BAA4BpB,EAAchE,eAIxD,oBAAqBkD,EAlJrB,CAEAqD,EAAe7B,IAAM4B,EAAUxgB,EAAQsZ,SACvCmH,EAAeiB,mBAAqB,SAAUC,GAC5CrH,EAAUgC,UAAUzK,EAAM8P,EAC5B,EAEA9P,EAAK0M,SAASkC,GAAgB,SAAUva,EAAKoD,EAAM0O,GACjD,IAAI4J,EAAcC,GAElBA,EA0DN,SAA4B7J,EAAQ9R,GAClC,IAAI2b,EAoBJ,IAlBgB,IAAZ7J,EACF6J,EAAe,IAAInJ,EAAeC,EAAOmJ,wBACrB,MAAX9J,EACT6J,EAAe,IAAInJ,EAAeC,EAAOoJ,8BACrB,MAAX/J,EACT6J,EAAe,IAAInJ,EAAeC,EAAOqJ,mCACrB,MAAXhK,EACT6J,EAAe,IAAInJ,EAAeC,EAAOsJ,qBAChCjK,GAAU,IACnB6J,EAAe,IAAInJ,EAAeC,EAAOuJ,yBAChClK,EAAS,KAAOA,GAAU,OACnC6J,EAAetE,EAAwBrX,EAAK,CAC1CgH,KAAMyL,EAAOwJ,qBAAqBjV,KAClCrO,KAAM8Z,EAAOwJ,qBAAqBtjB,KAClC0W,QAASoD,EAAOwJ,qBAAqB5M,WAIrCsM,EAIF,OAHAA,EAAarI,QAAUqI,EAAarI,SAAW,CAAC,EAChDqI,EAAarI,QAAQ4I,WAAapK,EAE3B6J,CAEX,CArFqBQ,CAAmBrK,EAAQ9R,IAGxC5E,EAAOugB,GAKG,eAARtB,GAAwBjX,EAAKqP,OAC/BrX,EACEic,EAAwBjU,EAAKqP,OAAQ,CACnCzL,KAAMyL,EAAO2J,6BAA6BpV,KAC1CrO,KAAM8Z,EAAO2J,6BAA6BzjB,KAC1C0W,QAASoD,EAAO2J,6BAA6B/M,YAOnDqM,EAAena,EAAO,CAAE8a,YAAavK,GAAU1O,GAG7CoX,GACAkB,EAAajB,aACbiB,EAAajB,YAAY3hB,OAAS,IAElC6S,EAAKsN,0BAA0ByC,EAAajB,YAAY,GAAGzH,OAE3D0E,EAAO7d,WAAW,CAChBc,IAAKkd,EACL1d,mBAAmB,KAGvBgB,EAAQugB,GACV,GACF,IAEA,MAAwB,mBAAb1d,GACTA,EAAWgF,EAAKL,EAAS3E,SAEzBmc,EACGzZ,MAAK,SAAUyV,GACdnY,EAAS,KAAMmY,EAAUA,EAASkG,YACpC,IACCxc,OAAM,SAAUG,GACf,IAAI8R,EAAS9R,GAAOA,EAAIsT,SAAWtT,EAAIsT,QAAQ4I,WAE/Cle,EAASgC,EAAK,KAAM8R,EACtB,KAKGqI,CACT,EAgCApC,EAAOla,UAAUye,OAAS,WACxB,OAAOrjB,KAAK6b,kBACd,EAgBAiD,EAAOla,UAAU0e,WAAa,WAC5B,OAAOpI,CACT,EAcA4D,EAAOla,UAAU0O,SAAW/I,GAAY,WAMtC,cAHOsU,EAFI7e,KAEe6b,mBAAmBd,eAC7CrB,EAHW1Z,KAGiByZ,EAAQqF,EAAOla,YAEpCpE,QAAQ0B,SACjB,IAYApD,EAAOC,QAAU+f,CAEjB,EAAE,CAAC,sBAAsB,IAAI,mBAAmB,IAAI,gBAAgB,IAAI,gBAAgB,IAAI,yBAAyB,IAAI,mBAAmB,IAAI,kCAAkC,IAAI,oCAAoC,IAAI,mCAAmC,IAAI,kBAAkB,IAAI,4BAA4B,IAAI,iBAAiB,IAAI,cAAc,IAAI,cAAc,GAAG,WAAW,GAAG,sBAAsB,GAAG,YAAY,GAAG,oBAAoB,GAAG,0BAA0B,KAAK,GAAG,CAAC,SAAShf,EAAQhB,EAAOC,GAC3f,aAEAD,EAAOC,QAAU,CACfkf,kBAAmB,aAGrB,EAAE,CAAC,GAAG,GAAG,CAAC,SAASne,EAAQhB,EAAOC,GAClC,aA8BA,IAAIwa,EAAiBzZ,EAAQ,0BAE7BhB,EAAOC,QAAU,CACfogB,4CAA6C,CAC3CpR,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,+CAERgiB,uBAAwB,CACtB3T,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,0BAERoiB,sBAAuB,CACrB/T,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,yBAERuf,qCAAsC,CACpClR,KAAMwL,EAAehL,MAAMgV,SAC3B7jB,KAAM,uCACN0W,QAAS,iCAEX0J,6BAA8B,CAC5B/R,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,+BACN0W,QACE,uFAEJ2M,uBAAwB,CACtBhV,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,yBACN0W,QAAS,4CAEXuM,uBAAwB,CACtB5U,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,yBACN0W,QAAS,0CAEX4M,qBAAsB,CACpBjV,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,uBACN0W,QAAS,0CAEX+M,6BAA8B,CAC5BpV,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,+BACN0W,QAAS,0CAEX0M,oBAAqB,CACnB/U,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,sBACN0W,QAAS,kEAEXyM,kCAAmC,CACjC9U,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,oCACN0W,QAAS,uDAEXwM,6BAA8B,CAC5B7U,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,+BACN0W,QACE,kIAIN,EAAE,CAAC,yBAAyB,MAAM,GAAG,CAAC,SAAStW,EAAQhB,EAAOC,GAC9D,aAEA,IAAIwa,EAAiBzZ,EAAQ,0BACzByK,EAAczK,EAAQ,2BACtBoa,EAAUpa,EAAQ,aAClByW,EAAOzW,EAAQ,mBACf0jB,EAAY1jB,EAAQ,oBACpB0Z,EAAS1Z,EAAQ,YACjBoe,EAAUpe,EAAQ,qBAClB0e,EAAe1e,EAAQ,oBAAoB0e,aAC3CiF,EAAyB3jB,EAAQ,sCAEjCme,EAAoBne,EAAQ,eAAeme,kBAwG/Cnf,EAAOC,QAAU,CACf8c,iBAAkBtR,GAvGpB,SAA0BsV,GACxB,OAAO,IAAIrf,SAAQ,SAAU0B,EAASC,GACpC,IAAI4c,EAAezd,EAAOoiB,EAAWC,EACjCxB,EAAY5L,IACZsL,EAAoB,CACtB+B,cAAephB,OAAOwR,SAASE,KAC/B+N,SAAUuB,EAAUK,SACpBC,WAAYN,EAAUtI,QACtBhI,OAAQsQ,EAAUO,OAElB7B,YAAasB,EAAUQ,YACvBC,gBAAiBT,EAAUQ,YAC3B7B,UAAWA,GAGb7gB,EAAQue,EAASve,MACjBoiB,EAAY7D,EAAS6D,UAErBpiB,EAAM0Y,MAAQ6H,EACdvgB,EAAM4iB,wBAA0BV,EAAUW,0BAC1C7iB,EAAM8iB,cAAgB,IAEtBT,EAAa,CACXlE,IAAKiE,EACL3Y,OAAQ,MACRZ,KAAM7I,GAGJA,EAAM6e,0BAA4BN,EAASL,SACzCiE,EAAuB5D,EAASL,QAAQ6E,KAAMpG,KAChD0F,EAAWnE,QAAU,IAAItB,EAAQ,CAC/BsB,QAAS,CACPC,IAAKI,EAASL,QAAQC,IACtB6E,SAAU,CAAC,qBAKjBX,EAAW/B,SAAWC,GACbvgB,EAAMijB,kBACfZ,EAAWnE,QAAU,IAAItB,EAAQ,CAC/BsB,QAAS,CACPC,IAAKjB,EAAaqB,EAASkC,aAC3BuC,SAAU,CAAC,oBAIfX,EAAW/B,SAAWC,GAexB3H,EAAQyJ,GAAY,SAAU5c,EAAKmW,EAAUrE,GAC3C,IAAI2L,EAEJ,GAAIzd,EAoBF,OAlBEyd,EADa,MAAX3L,EACcW,EAAOqJ,kCACH,MAAXhK,EACOW,EAAOoJ,6BAEPpJ,EAAOuJ,4BAGzB5gB,EACE,IAAIoX,EAAe,CACjBxL,KAAMyW,EAAczW,KACpBrO,KAAM8kB,EAAc9kB,KACpB0W,QAASoO,EAAcpO,QACvBiE,QAAS,CACPC,cAAevT,MAQvBgY,EAAgB,CACd0F,kBAAmBnjB,EAAMijB,gBACrB,mBACA,eACJpE,yBAA0B7e,EAAM6e,yBAChC0B,kBAAmBA,EACnB/F,qBAAsBoB,GAGxBhb,EAAQ6c,EACV,GACF,GACF,IAMA,EAAE,CAAC,yBAAyB,IAAI,mBAAmB,IAAI,qCAAqC,IAAI,cAAc,GAAG,WAAW,GAAG,YAAY,GAAG,oBAAoB,GAAG,kBAAkB,GAAG,0BAA0B,KAAK,GAAG,CAAC,SAASjf,EAAQhB,EAAOC,GACrP,aAEA,IAAIwa,EAAiBzZ,EAAQ,0BACzBgf,EAAShf,EAAQ,YAEjByK,EAAczK,EAAQ,2BACtB4kB,EAAe5kB,EAAQ,iBA8C3BhB,EAAOC,QAAU,CACf8G,OAAQ0E,GAhBV,SAAgB1J,GACd,OAAKA,EAAQka,cAWN+D,EAAOa,WAAW9e,GAVhBL,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAM2W,EAAaC,8BAA8B5W,KACjDrO,KAAMglB,EAAaC,8BAA8BjlB,KACjD0W,QACE,mEAMV,IAQE8E,QAtDY,UAyDd,EAAE,CAAC,yBAAyB,IAAI,gBAAgB,IAAI,WAAW,GAAG,0BAA0B,KAAK,GAAG,CAAC,SAASpb,EAAQhB,EAAOC,GAC7H,aAEA,IAAI6lB,EAAc9kB,EAAQ,yBACtBwI,EAASxI,EAAQ,oBAAoBwI,OACrCuc,EAAW/kB,EAAQ,eACnBglB,EAAYhlB,EAAQ,gBACpBilB,EAAMjlB,EAAQ,SACdklB,EAAiBD,EAAIE,YACrBC,EAAiBplB,EAAQ,qBACzBqlB,EAAiBrlB,EAAQ,qBAEzBslB,EAAqB,EACrBC,EAAiC,IAiBrC,SAASC,EAAkBzkB,EAAS0kB,EAAe5N,GACjD,IAAIkB,EAAQ2M,EAASC,EAAalF,EAAMxV,EAAQsX,EAASqD,EACrDjG,EAAM5e,EAAQ4e,IACdD,EAAU3e,EAAQ2e,QAClBmC,EAAU9gB,EAAQ8gB,QAClBgE,EAAMZ,EAAIa,mBACV7gB,EAAW4S,EACXkO,EAAmB1e,QACrBqY,GAAWA,EAAQqG,iBAAiBpG,EAAK5e,EAAQsJ,OAGnDtJ,EAAQwhB,QAAU/Z,EAChB,CAAE,eAAgB,oBAClBzH,EAAQwhB,SASV5C,GALEgG,EADEI,EACY,IAAIX,EAAerkB,GAEnB,IAAIskB,EAAetkB,IAGjBilB,SAClBvF,EAAOkF,EAAYM,UACnBhb,EAAS0a,EAAYO,YACrB3D,EAAUoD,EAAYQ,aAEP,QAAXlb,IACF0U,EAAMmF,EAAYsB,SAASzG,EAAKc,GAChCA,EAAO,MAGLyE,EACFW,EAAIQ,mBAAqB,WACvB,GAAuB,IAAnBR,EAAIS,WAAR,CAIA,GAAmB,IAAfT,EAAI9M,QAAgBgN,EAQtB,cAHOhlB,EAAQ2e,aACf8F,EAAkBzkB,EAAS0kB,EAAe5N,GAS5C,GAJA+N,EAAaZ,EAAUa,EAAIU,cAC3Bb,EAAUC,EAAYa,kBAAkBZ,IACxC7M,EAAS4M,EAAYc,gBAAgBZ,EAAI9M,OAAQ6M,KAEnC,KAAO7M,EAAS,IAAK,CACjC,GACEgN,GAlEV,SAAgDtF,GAC9C,IAAIiG,GACDjG,EAAKpW,MACNoW,EAAK/G,QACL+G,EAAK/G,OAAO,IACZ+G,EAAK/G,OAAO,GAAGiN,YACflG,EAAK/G,OAAO,GAAGiN,WAAWD,WAE5B,MAAsB,YAAfA,GAA2C,aAAfA,CACrC,CA0DUE,CAAuChB,GAKvC,cAHO7kB,EAAQ2e,aACf8F,EAAkBzkB,EAAS0kB,EAAe5N,GAK5C,GAAI4N,EAAgBH,GA/E5B,SAA4BvM,GAC1B,OAAQA,GAAUA,IAAWwM,CAC/B,CA6EkDsB,CAAmB9N,GAI3D,OAHA0M,SACAD,EAAkBzkB,EAAS0kB,EAAe5N,GAI5C5S,EAASygB,GAAW,QAAS,KAAM3M,GAAU,IAC/C,MACE9T,EAAS,KAAMygB,EAAS3M,EApC1B,CAsCF,GAEIhY,EAAQwhB,UACV5C,EAAMmF,EAAYsB,SAASzG,EAAK4C,IAGlCsD,EAAIiB,OAAS,WACX7hB,EAAS,KAAM+f,EAAUa,EAAIU,cAAeV,EAAI9M,OAClD,EAEA8M,EAAIkB,QAAU,WAGZ9hB,EAAS,QAAS,KAAM,IAC1B,EAGA4gB,EAAImB,WAAa,WAAa,EAE9BnB,EAAIoB,UAAY,WACdhiB,EAAS,UAAW,MAAO,EAC7B,GAGF,IACE4gB,EAAIqB,KAAKjc,EAAQ0U,GAAK,EACxB,CAAE,MAAOwH,GAOP,IAAKpB,EACH,MAAMoB,EAOR,cAJOpmB,EAAQ2e,aAEf8F,EAAkBzkB,EAAS0kB,EAAe5N,EAG5C,CAEAgO,EAAIhE,QAAUA,EAEVqD,GACF7kB,OAAO4B,KAAKsgB,GAASrgB,SAAQ,SAAUklB,GACrCvB,EAAIwB,iBAAiBD,EAAW7E,EAAQ6E,GAC1C,IAGF,IACEvB,EAAIyB,KAAKvC,EAAS9Z,EAAQwV,GAC5B,CAAE,MAAOthB,GAET,CACF,CAMAH,EAAOC,QAAU,CACfmb,QALF,SAAiBrZ,EAAS8W,GACxB2N,EAAkBzkB,EAAS,EAAG8W,EAChC,EAMA,EAAE,CAAC,mBAAmB,IAAI,wBAAwB,IAAI,oBAAoB,GAAG,oBAAoB,GAAG,eAAe,GAAG,cAAc,GAAG,QAAQ,KAAK,GAAG,CAAC,SAAS7X,EAAQhB,EAAOC,GAChL,aAEA,SAASomB,EAAetkB,GACtBb,KAAKqnB,KAAOxmB,EAAQ4e,IACpBzf,KAAKsnB,MAAQzmB,EAAQsJ,KACrBnK,KAAKunB,QAAU1mB,EAAQkK,OACvB/K,KAAKwnB,SAAW3mB,EAAQwhB,OAC1B,CAEA8C,EAAevgB,UAAUkhB,OAAS,WAChC,OAAO9lB,KAAKqnB,IACd,EAEAlC,EAAevgB,UAAUmhB,QAAU,WACjC,OAAO/lB,KAAKsnB,KACd,EAEAnC,EAAevgB,UAAUohB,UAAY,WACnC,OAAOhmB,KAAKunB,OACd,EAEApC,EAAevgB,UAAUqhB,WAAa,WACpC,OAAOjmB,KAAKwnB,QACd,EAEArC,EAAevgB,UAAU0hB,kBAAoB,SAAUZ,GACrD,OAAOA,CACT,EAEAP,EAAevgB,UAAU2hB,gBAAkB,SAAU1N,GACnD,OAAOA,CACT,EAEA/Z,EAAOC,QAAUomB,CAEjB,EAAE,CAAC,GAAG,GAAG,CAAC,SAASrlB,EAAQhB,EAAOC,GAClC,aAEA,IAAI0oB,EAAuB3nB,EAAQ,WAC/BwI,EAASxI,EAAQ,0BAA0BwI,OAG3Cof,EAAqB,CACvBC,WAAY,CACV3b,iBAAkB,mBAClBE,SAAU,WACV0b,sBAAuB,UACvBzb,IAAK,MACLJ,WAAY,aACZ8b,KAAM,OACNC,WAAY,aACZC,UAAW,WACXjc,KAAM,OACNQ,IAAK,MACLE,MAAO,QACPC,UAAW,aAEbsP,YAAa,CACXjQ,KAAM,OACNC,WAAY,aACZG,SAAU,WACVF,iBAAkB,OAClB4b,sBAAuB,UACvBtb,IAAK,OAEP0b,aAAc,CACZlc,KAAM,OACNC,WAAY,aACZG,SAAU,WACVF,iBAAkB,oBAEpBic,UAAW,CACTnc,KAAM,OACNC,WAAY,aACZG,SAAU,WACVF,iBAAkB,OAClB4b,sBAAuB,UACvBtb,IAAK,OAEP4b,WAAY,CACVpc,KAAM,OACNC,WAAY,SACZG,SAAU,WACVF,iBAAkB,OAClBmc,OAAQ,SACRP,sBAAuB,UACvBzb,IAAK,QAqKT,SAASic,EAAa7c,EAAW8c,GAC/B,OAAO9c,EAAU4E,QAAO,SAAUmY,EAAKva,GACrC,OAAIsa,EAAqBnhB,eAAe6G,GAC/Bua,EAAI1V,OAAOyV,EAAqBta,IAGlCua,CACT,GAAG,GACL,CAEAxpB,EAAOC,QA1KP,SAAsCwpB,EAAcC,GASlD,OANID,EAAape,OAASoe,EAAa/O,OASzC,SAAwC+G,EAAMiI,GAC5C,IACItL,EADA6B,EAAgBwB,EAAKpW,KAAKse,oBAgJ9B,OA7IAvL,EAAW,CACT6E,YAAahD,EAAcgD,YAAY2G,cACvCnJ,aAAcR,EAAcQ,aAC5BtE,UAAW8D,EAAc9D,UACzBE,UAAW,CACTsE,IAAKV,EAAc4J,cAErBjI,WAAY3B,EAAc2B,WAC1BkI,MAAO,OAGL7J,EAAc8J,oBAChB3L,EAASsC,QAAU,CACjBC,IAAK+I,EAAI9I,SAASoJ,QAAQrJ,IAC1B6E,SAAUvF,EAAc8J,kBAAkBvb,KAAI,SAAUyb,GACtD,OAAOA,EAAQL,aACjB,MAIA3J,EAAciK,eAChB9L,EAAS8L,aAAejK,EAAciK,cAGpCjK,EAAchD,cAChBmB,EAASnB,YAAcgD,EAAchD,YACrCmB,EAASnB,YAAYU,kBAAoB2L,EACvCrJ,EAAchD,YAAYkN,oBAC1BvB,EAAmB3L,oBAGdmB,EAASnB,YAAYkN,qBAG1BlK,EAAcmK,QAChBhM,EAASgM,MAAQnK,EAAcmK,OAG7BnK,EAAcoK,QAChBjM,EAASiM,MAAQ,CACfC,gBAAiBrK,EAAcoK,MAAMzI,aAIrC3B,EAAc4I,YAChBzK,EAASmM,WAAatK,EAAc4I,WAAW0B,WAAW/b,KAAI,SAC5Dgc,GAEA,OAAOA,EAAUZ,aACnB,IAEAxL,EAASsE,YAAc,CACrB+H,mBAAoBnB,EAClBrJ,EAAc4I,WAAWsB,oBACzBvB,EAAmBC,aAGvBzK,EAASsM,oBAAsBzK,EAAc4I,WAAW6B,oBACxDtM,EAASuM,aAAe1K,EAAc4I,WAAW8B,eAEjDvM,EAASmM,WAAa,GACtBnM,EAASsE,YAAc,CACrB+H,mBAAoB,IAEtBrM,EAASsM,qBAAsB,GAG7BzK,EAAckJ,YAChB/K,EAASwM,WAAa,CACpBzM,YAAa8B,EAAckJ,UAAUhL,YACrC0M,SAAS,EACT5H,YAAahD,EAAckJ,UAAUlG,YAAY2G,cACjDkB,+BACE7K,EAAckJ,UAAU4B,oBAC1BC,eAAgB/K,EAAckJ,UAAU6B,eACxCrN,kBAAmB2L,EACjBrJ,EAAckJ,UAAUgB,oBACxBvB,EAAmBO,aAKrBlJ,EAAc6J,QAChB1L,EAAS6M,aAAe,CACtBrJ,WAAY3B,EAAc6J,MAAMlI,WAChCsJ,YAAajL,EAAc6J,MAAMoB,YACjCjI,YAAahD,EAAc6J,MAAM7G,YAAY2G,cAC7CuB,4BACElL,EAAc6J,MAAMqB,8BAItBlL,EAAcmL,QAChBhN,EAASiN,eAAgB,EACzBjN,EAASgN,OAAS5hB,EAAO,CAAC,EAAGyW,EAAcmL,QAC3ChN,EAASgN,OAAOE,gBAAkBlN,EAASgN,OAAO3N,aAClDW,EAASgN,OAAOnI,YAAc7E,EAASgN,OAAOnI,YAAY2G,qBAEnDxL,EAASgN,OAAO3N,cAEvBW,EAASiN,eAAgB,EAGvBpL,EAAcsL,WAChBnN,EAASmN,SAAW,CAClBV,SAAS,EACTW,kBAAmBvL,EAAcsL,SAASC,oBAI1CvL,EAAciJ,eAChB9K,EAAS8K,aAAe,CACtBuC,OAAQxL,EAAciJ,aAAawC,OACnCC,cAAe1L,EAAciJ,aAAayC,cAC1CC,iBAAkB3L,EAAciJ,aAAa0C,iBAC7CnB,mBAAoBnB,EAClBrJ,EAAciJ,aAAaiB,oBAC3BvB,EAAmBM,gBAKrBjJ,EAAcmJ,aAChBhL,EAASgL,WAAa,CACpByC,mBAAoB5L,EAAcmJ,WAAWyC,mBAC7ClO,kBAAmB2L,EACjBrJ,EAAcmJ,WAAWe,oBACzBvB,EAAmBQ,cAKrBnJ,EAAc6L,gBAChB1N,EAAS0N,cAAgB,CACvBC,QAAS9L,EAAc6L,cAAcC,QACrCC,MAAO,CACLC,UAAWhM,EAAc6L,cAAcI,kBAKtC9N,CACT,CA1JsB+N,CAA+B1C,EAAcC,GAE7Cf,EAAqBc,EAI3C,CAkKA,EAAE,CAAC,yBAAyB,IAAI,UAAU,KAAK,GAAG,CAAC,SAASzoB,EAAQhB,EAAOC,GAC3E,aAEA,IAAI0oB,EAAuB3nB,EAAQ,WAE/BorB,EAAiB,CAEnBlf,iBAAkB,mBAClBmc,OAAQ,WACRjc,SAAU,WACVI,IAAK,MACLE,MAAO,QACPC,UAAW,YACXmb,sBAAuB,UACvBzb,IAAK,MACLJ,WAAY,aACZ+b,WAAY,UACZC,UAAW,WACXjc,KAAM,QAIJqf,EAAe,CACjBC,IAAK,MACLC,GAAI,KACJC,QAAS,WAGPC,EAA6B,CAC/BC,OAAQ,QAgFV1sB,EAAOC,QA7EP,SAA+CwpB,GAS7C,OANIA,EAAape,OAASoe,EAAa/O,QAUnCrP,EAToDoe,EASxCpe,KAAKshB,mBACjB9D,EAAaxd,EAAKwd,WAClB+D,EAAU/D,EAAWgE,MAAQhE,EAAWgE,MAAMnb,OAAO,EAAG,GAAK,IAC7Dob,EAAUjE,EAAWiE,WAIvB,CACE,aACA,QACA,kBACA,aACA,UACA,WACA5pB,SAAQ,SAAUC,GACd2pB,EAAQ3pB,GACV2pB,EAAQ3pB,GAAOkpB,EAAaS,EAAQ3pB,IAEpC2pB,EAAQ3pB,GAAO,SAEnB,IAEA,CAAC,cAAe,oBAAqB,aAAaD,SAAQ,SAAUC,GAC7D2pB,EAAQ3pB,KACX2pB,EAAQ3pB,GAAO,UAEnB,KAGFib,EAAW,CACTsE,YAAa,CACX,CACEoK,QAASA,EACTC,UAAU,EACVC,YAAaJ,EAAU,aAAeA,EAAU,GAChD3R,MAAO5P,EAAKqT,MACZnD,QAAS,CACP0R,eAAgBpE,EAAWoE,eAC3BC,gBAAiBrE,EAAWqE,gBAC5BC,eAAgBtE,EAAWsE,eAC3BC,IAAKvE,EAAWuE,KAAO,GACvBpf,SAAUoe,EAAevD,EAAWwE,YAAc,UAClDC,SAAUzE,EAAWgE,OAAS,GAC9BD,QAASA,GAEX3d,KAAM,aACNse,iBAAkB,QAKpBliB,EAAKmiB,wBACPC,EACEpiB,EAAKmiB,sBAAsBE,4CAC7BtP,EAASsE,YAAY,GAAG8K,sBAAwB,CAC9CC,sBACEhB,EAA2BgB,IAC3BA,EAAsB7D,gBAIrBxL,GApEauK,EAAqBc,GAM3C,IAKMrL,EAAUqP,EAJVpiB,EACAwd,EACA+D,EACAE,CANN,CAqEA,EAAE,CAAC,UAAU,KAAK,GAAG,CAAC,SAAS9rB,EAAQhB,EAAOC,GAC9C,aAyDA,SAAS0tB,EAAcC,EAAWC,EAAaC,GAC7C,IAAIC,EACAC,EAAaH,EAAYlG,WAAWqG,WACpCC,EAAaL,EAAU,GAEF,IAArBA,EAAU7sB,QAUd+sB,EAAY5qB,SAAQ,SAAUgrB,GACxBA,EAAUC,QAAUF,IACtBF,EAAaG,EAEjB,IAEKH,IACHA,EAAa,CAAEI,MAAOF,EAAYH,YAAa,IAC/CA,EAAY5nB,KAAK6nB,IAGnBJ,EAAcC,EAAUhW,MAAM,GAAIiW,EAAaE,EAAWD,cApBxDA,EAAY5nB,KAAK,CACftF,KAAMotB,EACNG,MAAOF,EACP3W,QAASuW,EAAYvW,SAkB3B,CAEA,SAAS8W,EAAiB1T,GAOxB,MANqB,CACnBmO,WAAY,0BAGFnO,EAAO,GAAGyT,MAGxB,CAEAnuB,EAAOC,QA9FP,SAA8BwpB,GAC5B,IACI/B,EACF+B,EAAa/O,QACb+O,EAAa/O,OAAO,IACpB+O,EAAa/O,OAAO,GAAGiN,YACvB8B,EAAa/O,OAAO,GAAGiN,WAAWD,WAapC,MAXmB,eAAfA,EAqBN,SAAkC+B,GAChC,IAAIqE,EAYN,SAA0BpT,GACxB,IAAIoT,EAAc,GASlB,OAPApT,EAAOxX,SAAQ,SAAUqU,GACjBA,EAAMoQ,YAAcpQ,EAAMoQ,WAAWiG,WAG3CD,EAAcpW,EAAMoQ,WAAWiG,UAAUhW,MAAM,GAAIL,EAAOuW,EAC5D,IAEOA,CACT,CAvBoBO,CAAiB5E,EAAa/O,QAEhD,OAA2B,IAAvBoT,EAAY/sB,OACP,CAAEwW,MAAO,CAAED,QAASmS,EAAa/O,OAAO,GAAGpD,UAG7C,CACLC,MAAO,CAAED,QAAS8W,EAAiBN,IACnCA,YAAaA,EAEjB,CA/BeQ,CAAyB7E,GAC3B/B,EAYb,SAAuC+B,GACrC,MAAO,CACLlS,MAAO,CAAED,QAASmS,EAAa/O,OAAO,GAAGpD,SACzCwW,YAAa,GAEjB,CAhBeS,CAA8B9E,GAE9B,CACTlS,MAAO,CAAED,QAAS,4CAClBwW,YAAa,GAKnB,CA4EA,EAAE,CAAC,GAAG,GAAG,CAAC,SAAS9sB,EAAQhB,EAAOC,GAClC,aAwFAD,EAAOC,QAPP,WACE,MAAO,CACLuuB,MAhFF,qyCAiFEC,cAAe,sBAEnB,CAIA,EAAE,CAAC,GAAG,GAAG,CAAC,SAASztB,EAAQhB,EAAOC,GAClC,aAEA,IAAIuJ,EAASxI,EAAQ,0BAA0BwI,OA8C/C,SAASklB,EAAiCjN,EAAM1f,GAC9C,IAAI4sB,EAAKlN,EAAKoH,WACV+F,EAAiBD,GAAMA,EAAGC,eAC1BC,EAAUF,GAAMA,EAAGG,eACnB5B,EACFyB,IAAOA,EAAGzB,iBAAoB2B,GAAWA,EAAQhN,MAAM,KAAK,GAAGkN,QAC7D5B,EACFwB,IAAOA,EAAGxB,gBAAmB0B,GAAWA,EAAQhN,MAAM,KAAK,GAAGkN,QAC5DC,EAAY,CACdC,MAAO,CACLpG,WAAY,CACVqG,OAAQP,GAAMA,EAAGO,OACjBhC,gBAAiBA,EACjBC,eAAgBA,EAChBgC,IAAKR,GAAMA,EAAGQ,IACdlC,eAAgB0B,GAAMA,EAAG1B,gBAE3BlrB,QAAS,CAAC,IAgBd,OAZIA,EAAQqtB,2BACVJ,EAAUK,2BAA6B,CACrC7D,kBAAmB/J,EAAK+J,oBAIxBoD,IACFI,EAAUC,MAAMpG,WAAW+F,eAAiBA,GAG9CI,EAAUC,MAKZ,SAA2BxN,EAAMwN,GAC/B,IAAIK,EA0BJ,OAvBE7N,EAAKoH,YACLpH,EAAKoH,WAAW9mB,SAC4B,kBAArC0f,EAAKoH,WAAW9mB,QAAQutB,SAE/BA,EAAW7N,EAAKoH,WAAW9mB,QAAQutB,SAElC7N,EAAKJ,0BAA4BI,EAAKgE,iBACvChE,EAAKJ,yBAELiO,GAAW,EACF7N,EAAKgE,kBACd6J,GAAW,GAGW,kBAAbA,IACTL,EAAMltB,QAAUyH,EACd,CACE8lB,SAAUA,GAEZL,EAAMltB,UAIHktB,CACT,CAjCoBM,CAAkB9N,EAAMuN,EAAUC,OAE7CD,CACT,CA8CAhvB,EAAOC,QAdP,SAAgCwhB,GAC9B,IA/GsBlY,EAClB6lB,EACAI,EA6GAztB,EAAU,CACZqtB,yBAA0B/mB,QACxBoZ,EAAK+L,uBAAyB/L,EAAK+J,oBAIvC,MAAO,CACLgD,OAtHoBjlB,EAsHExH,EArHpBqtB,EAA2B7lB,EAAO6lB,yBAClCI,EAAW,+DAEXJ,IACFI,GAAY,8DAGdA,GACE,sXAuBEJ,IACFI,GACE,yHAKJA,EAAY,SAgFVR,UAAWN,EAAiCjN,EAAM1f,GAClD0sB,cAAe,qBAEnB,CAIA,EAAE,CAAC,yBAAyB,MAAM,GAAG,CAAC,SAASztB,EAAQhB,EAAOC,GAC9D,aAEA,IAAIulB,EAAW,CACbiK,sBAAuB,+BACvBxP,cAAe,iBAGbyP,EAAuB,CAAC,yCAE5B,SAAStQ,EAAQ7V,GACfrI,KAAK8oB,QAAUzgB,EAAOmX,OACxB,CAEAtB,EAAQtZ,UAAU6pB,mBAAqB,WACrC,OAAOzuB,KAAK8oB,QAAQrJ,GACtB,EAEAvB,EAAQtZ,UAAUihB,iBAAmB,SAAUpG,EAAKc,GAClD,IAAImO,EACAC,EAAO3uB,KAAK4uB,iBAAiBnP,GAEjC,SAAKzf,KAAK6uB,sBAAwBF,KAIlCD,EAAiB1uB,KAAK8oB,QAAQxE,SAASwK,MAAK,SAAU/F,GACpD,OAAOzE,EAASyE,KAAa4F,CAC/B,KAyBF,SAAsCpO,GACpC,OAAOiO,EAAqBM,MAAK,SAAU/sB,GAKzC,YAAiBoQ,IAJLpQ,EAAK4e,MAAM,KAAKxQ,QAAO,SAAU4e,EAAa9sB,GACxD,OAAO8sB,GAAeA,EAAY9sB,EACpC,GAAGse,EAGL,GACF,CA/BMyO,CAA6BzO,IAI1BmO,EACT,EAEAxQ,EAAQtZ,UAAUgqB,iBAAmB,SAAUnP,GAC7C,IAAIkP,EAEAM,EAAYxP,EAAIkB,MADE,mBAOtB,OAJIsO,EAAUpvB,OAAS,IACrB8uB,EAAOM,EAAU,GAAGtO,MAAM,KAAK,IAG1BgO,CACT,EAEAzQ,EAAQtZ,UAAUiqB,kBAAoB,WACpC,OAAO1nB,QAAQnH,KAAK8oB,QACtB,EAYAhqB,EAAOC,QAAUmf,CAEjB,EAAE,CAAC,GAAG,GAAG,CAAC,SAASpe,EAAQhB,EAAOC,GAClC,aAEA,IAAIkf,EAAoBne,EAAQ,mBAAmBme,kBAE/C3V,EAASxI,EAAQ,uBAAuBwI,OACxC4mB,EAAuBpvB,EAAQ,yCAE/BqvB,EAAsCrvB,EAAQ,yCAC9CsvB,EAAwCtvB,EAAQ,uCAEhDuvB,EAA6BvvB,EAAQ,8BACrCwvB,EAA+BxvB,EAAQ,4BAEvCyvB,EAAa,CACf,+BAAgCJ,EAChCpQ,cAAesQ,GAEbG,EAAW,CACb,+BAAgCJ,EAChCrQ,cAAeuQ,GAGjB,SAASpK,EAAerkB,GACtB,IAAI4uB,EAAgB5uB,EAAQ2e,QAAQoP,iBAAiB/tB,EAAQ4e,KAE7Dzf,KAAK0f,SAAW7e,EAAQ2e,QACxBxf,KAAKsnB,MAAQzmB,EAAQsJ,KACrBnK,KAAKunB,QAAU1mB,EAAQkK,OACvB/K,KAAKwnB,SAAW3mB,EAAQwhB,QACxBriB,KAAK0vB,mBAAqB,CACxBxc,OAAQrS,EAAQ+gB,SAAS1O,OACzBgP,YAAarhB,EAAQ+gB,SAASM,YAC9BC,UAAWthB,EAAQ+gB,SAASO,WAE9BniB,KAAK2vB,oBAAsB9uB,EAAQ0hB,oBAAsBqN,SAAShrB,UAElE5E,KAAK6vB,WAAaN,EAAWE,GAC7BzvB,KAAK8vB,SAAWN,EAASC,GAEzBzvB,KAAK2vB,oBAAoB,eAC3B,CAsFA,SAASI,EAAeC,GACtB,IAAIzP,EAAO,CAAC,EAcZ,OAZApgB,OAAO4B,KAAKiuB,GAAchuB,SAAQ,SAAUC,GAC1C,IAAIguB,EAAef,EAAqBjtB,GAEP,iBAAtB+tB,EAAa/tB,GACtBse,EAAK0P,GAAgBF,EAAeC,EAAa/tB,IACX,iBAAtB+tB,EAAa/tB,GAC7Bse,EAAK0P,GAAgBjhB,OAAOghB,EAAa/tB,IAEzCse,EAAK0P,GAAgBD,EAAa/tB,EAEtC,IAEOse,CACT,CApGA2E,EAAetgB,UAAUkhB,OAAS,WAChC,OAAO9lB,KAAK0f,SAAS+O,oBACvB,EAEAvJ,EAAetgB,UAAUmhB,QAAU,WACjC,IAAImK,EAAgBH,EAAe/vB,KAAKsnB,OACpC6I,EAAgBnwB,KAAK6vB,WAAWK,GAChC3P,EAAOjY,EACT,CAAE0Z,kBAAmBhiB,KAAK0vB,oBAC1BS,GAGF,OAAOnvB,KAAKC,UAAUsf,EACxB,EAEA2E,EAAetgB,UAAUohB,UAAY,WACnC,MAAO,MACT,EAEAd,EAAetgB,UAAUqhB,WAAa,WACpC,IAAIlL,EAAesH,EAenB,OAbIriB,KAAKsnB,MAAMnH,0BACbngB,KAAK2vB,oBAAoB,qCACzB5U,EAAgB/a,KAAKsnB,MAAMnH,2BAE3BngB,KAAK2vB,oBAAoB,4BACzB5U,EAAgB/a,KAAKsnB,MAAM/C,iBAG7BlC,EAAU,CACRC,cAAe,UAAYvH,EAC3B,oBAAqBkD,GAGhB3V,EAAO,CAAC,EAAGtI,KAAKwnB,SAAUnF,EACnC,EAEA6C,EAAetgB,UAAU0hB,kBAAoB,SAAUZ,GACrD,OAAO1lB,KAAK8vB,SAASpK,EAAY1lB,KACnC,EAEAklB,EAAetgB,UAAU2hB,gBAAkB,SACzCtD,EACAmN,GAEA,IAAIvX,EAAQ2N,EA+BZ,OA7BmB,MAAfvD,GACFuD,EACE4J,EAAe5W,QACf4W,EAAe5W,OAAO,IACtB4W,EAAe5W,OAAO,GAAGiN,YACzB2J,EAAe5W,OAAO,GAAGiN,WAAWD,WAGpC3N,EADEuX,EAAejmB,OAASimB,EAAe5W,OAChC,IACe,eAAfgN,EACA,IACe,kBAAfA,EACA,IACe,mBAAfA,EACA,IAkBf,SAAwBA,EAAY4J,GAClC,OAAQ5J,GAAc4J,EAAe5W,OAAO,GAAGpD,OACjD,CAnBeia,CAAe7J,EAAY4J,GAC3B,IAEA,KAKXvX,EAHUoK,GACD,IAKXjjB,KAAK2vB,oBAAoB,kBAAoB1M,GAC7CjjB,KAAK2vB,oBAAoB,4BAA8B9W,GAEhDA,CACT,EAwBA/Z,EAAOC,QAAUmmB,CAEjB,EAAE,CAAC,sBAAsB,IAAI,wCAAwC,IAAI,kBAAkB,GAAG,2BAA2B,GAAG,sCAAsC,GAAG,6BAA6B,GAAG,wCAAwC,KAAK,GAAG,CAAC,SAASplB,EAAQhB,EAAOC,GAC9Q,aAEA,IAAIgL,EAAOjK,EAAQ,kBACfwwB,EAAaxwB,EAAQ,iBAEzBhB,EAAOC,QAAU,SAAU8B,EAAS8W,GAClCA,EAAK5N,EAAK4N,GAAMiY,SAAShrB,WACzB/D,EAAQkK,QAAUlK,EAAQkK,QAAU,OAAOwlB,cAC3C1vB,EAAQ8gB,QAA6B,MAAnB9gB,EAAQ8gB,QAAkB,IAAQ9gB,EAAQ8gB,QAC5D9gB,EAAQsJ,KAAOtJ,EAAQsJ,MAAQ,CAAC,EAEhCmmB,EAAWpW,QAAQrZ,EAAS8W,EAC9B,CAEA,EAAE,CAAC,iBAAiB,IAAI,gBAAgB,KAAK,GAAG,CAAC,SAAS7X,EAAQhB,EAAOC,GACzE,aAEAD,EAAOC,QAAU,SAAUwhB,GACzB,IACEA,EAAOvf,KAAKgP,MAAMuQ,EACpB,CAAE,MAAOthB,GAET,CAEA,OAAOshB,CACT,CAEA,EAAE,CAAC,GAAG,GAAG,CAAC,SAASzgB,EAAQhB,EAAOC,GAClC,aAEAD,EAAOC,QAAU,SAAUgM,EAAQwV,GACjC,GAAsB,iBAAXxV,EACT,MAAM,IAAItL,MAAM,2BAOlB,MAJ6B,QAAzBsL,EAAO2d,eAAmC,MAARnI,IACpCA,EAAuB,iBAATA,EAAoBA,EAAOvf,KAAKC,UAAUsf,IAGnDA,CACT,CAEA,EAAE,CAAC,GAAG,GAAG,CAAC,SAASzgB,EAAQhB,EAAOC,GAClC,aAEA,IAAIimB,EACgB,oBAAXxiB,QACPA,OAAOguB,gBACP,oBAAqB,IAAIhuB,OAAOguB,eAQlC1xB,EAAOC,QAAU,CACfkmB,YAAaD,EACbY,iBARF,WACE,OAAOZ,EACH,IAAIxiB,OAAOguB,eACX,IAAIhuB,OAAOiuB,cACjB,EAOA,EAAE,CAAC,GAAG,GAAG,CAAC,SAAS3wB,EAAQhB,EAAOC,GAClC,aAUA,IAAIwa,EAAiBzZ,EAAQ,0BAE7BhB,EAAOC,QAAU,CACf2xB,iCAAkC,CAChC3iB,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,mCACN0W,QAAS,2CAEXua,2BAA4B,CAC1B5iB,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,8BAERkxB,uCAAwC,CACtC7iB,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,yCACN0W,QAAS,4DAIb,EAAE,CAAC,yBAAyB,MAAM,GAAG,CAAC,SAAStW,EAAQhB,EAAOC,GAC9D,aAEA,IAKI8xB,EALAnS,EAAiB5e,EAAQ,oBAAoB4e,eAC7CC,EAAkB7e,EAAQ,oBAAoB6e,gBAC9CC,EAAe9e,EAAQ,oBAAoB8e,aAC3Che,EAAad,EAAQ,iBAAiBc,WAsB1C,SAASkwB,IAAY,CAyCrB,SAASC,EAAsB7nB,GACzBA,GAAWA,EAAQ8nB,YACrB9nB,EAAQ8nB,WAAWC,YAAY/nB,EAEnC,CA3CA4nB,EAASlsB,UAAU+a,WAAa,SAAU9e,GACxC,IAAIkhB,EAAclhB,EAAQkhB,YACtBrP,EAAO1S,KAaX,OAXAA,KAAKmiB,UAAYthB,EAAQshB,WAyC3B,WACE,IAAI9iB,EACAsC,EAAK,GAET,IAAKtC,EAAI,EAAGA,EAAI,GAAIA,IAClBsC,GAAM4H,KAAK2nB,MAAsB,GAAhB3nB,KAAKC,UAAeC,SAAS,IAGhD,OAAO9H,CACT,CAlDwCwvB,GACjCtwB,EAAQshB,YACX0O,EAAkB7wB,KAAKmiB,WAEzBniB,KAAKoxB,UAoDH,wDApDiCpxB,KAAKmiB,UAwDtC,OAPc,IAAIkP,MAAOC,UAAY,IASrC,QAzDFtxB,KAAKuxB,gBA6DP,SAA+BpP,EAAWqP,EAAUzP,GAClD,IAAI1B,EAAKjf,SAASmf,KAAKle,YAAYjB,SAASC,cAAc,WACtDgH,EAAS,CACX/I,EAAG6iB,EACH7W,EAAGqT,EACH8S,EAAGD,GAgBL,MARoB,eAAhBzP,IACF1Z,EAAOqpB,SAAU,GAGnBrR,EAAGtS,KAAO,mBACVsS,EAAGve,aAAa,QAAS4c,GACzB2B,EAAGY,KAAOjgB,KAAKC,UAAUoH,GAElBgY,CACT,CAnFyBsR,CACrB3xB,KAAKmiB,UACLniB,KAAKoxB,UACLrP,GAGKnhB,EAAW,CAChBc,IAAKkd,IAEJnX,MAAK,SAAUmqB,GAGd,OAFAlf,EAAKmf,iBAAmBD,EAEjBlf,CACT,IACC9L,OAAM,WAIL,OAAO,IACT,GACJ,EAEAkqB,EAASlsB,UAAU0O,SAAW,WAC5Byd,EAAsB3vB,SAASkf,cAAc,+BAC7CyQ,EAAsB3vB,SAASkf,cAAc,wBAE7CyQ,EAAsB/wB,KAAKuxB,iBAC3BR,EAAsB/wB,KAAK6xB,iBAC7B,EAyDA/yB,EAAOC,QAAU,CACf+yB,MAnHF,SAAejxB,GACb,IAAIkxB,EAAW,IAAIjB,EAInB,QAFAjwB,EAAUA,GAAW,CAAC,GAETshB,WAAa0O,GACxBkB,EAAS5P,UAAY0O,EAEdrwB,QAAQ0B,QAAQ6vB,IAGlBA,EAASpS,WAAW9e,EAC7B,EAwGEmxB,oBAtGF,WACEnB,EAAkB,IACpB,EAuGA,EAAE,CAAC,gBAAgB,IAAI,mBAAmB,MAAM,GAAG,CAAC,SAAS/wB,EAAQhB,EAAOC,GAC5E,aAGA,IAAIoqB,EAAQrpB,EAAQ,WAChBmyB,EAAWnyB,EAAQ,cACnByZ,EAAiBzZ,EAAQ,0BACzB6a,EAA6B7a,EAAQ,uCACrC8a,EAAuB9a,EAAQ,iCAC/B+a,EAAkB/a,EAAQ,4BAC1B2Z,EAAU3Z,EAAQ,kBAClB4Z,EAAwB5Z,EAAQ,mCAEhCyK,EAAczK,EAAQ,2BACtB0Z,EAAS1Z,EAAQ,YAoNrBhB,EAAOC,QAAU,CACf8G,OAAQ0E,GA/HV,SAAgB1J,GACd,IAIIsJ,EAJAxB,EAAO,iBACP7B,EAAS,CACXorB,WAAY,IAId,OAAOvX,EACJG,OAAO,CACNnS,KAAMA,EACNkR,OAAQhZ,EAAQgZ,OAChBkB,cAAela,EAAQka,gBAExBtT,MAAK,WA6EJ,OA5EAX,EAAOqrB,0BAA4BtxB,EAAQya,kBAC3CxU,EAAOyU,eAAiBX,EACrB/U,OAAO,CACNkV,cAAela,EAAQka,cACvBlB,OAAQhZ,EAAQgZ,OAChBmB,MAAOna,EAAQma,MACfC,UAAWJ,EAAgBhV,OAAOhF,EAAQka,eAC1CpS,KAAMA,IAEPlB,MAAK,SAAUoS,GACd,IAAIuY,EACA/pB,EAASwR,EAAOgC,mBAEpB,IAAsB,IAAlBhb,EAAQsoB,OAAkB9gB,EAAOyT,qBAAqBqN,MAAO,CAC/D,IACEiJ,EAAgBjJ,EAAM2I,MAAM,CAC1B/P,YAAa1Z,EAAOyT,qBAAqBiG,YACzCrB,WAAYrY,EAAOyT,qBAAqBqN,MAAMC,iBAElD,CAAE,MAAOriB,GACP,OAAOvG,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAOmX,2BAA2B5iB,KACxCrO,KAAM8Z,EAAOmX,2BAA2BjxB,KACxC0W,QAASrP,EAAIqP,UAGnB,CAEAjM,EAAOioB,EAAcC,WACrBvrB,EAAOorB,WAAWltB,KAAKotB,EACzB,MACEjoB,EAAO,CAAC,EAGV,OAAO3J,QAAQ0B,QAAQ2X,EACzB,IACCpS,MAAK,SAAUoS,GACd,OAAOoY,EACJH,MAAM,CACL3P,UACEthB,EAAQyxB,mBACRzxB,EAAQof,kBACRpf,EAAQ0xB,cACVxQ,YACElI,EAAOgC,mBAAmBC,qBAAqBiG,cAElDta,MAAK,SAAU+qB,GACVA,IACFroB,EAAKsoB,eAAiBD,EAAiBrQ,UACvCrb,EAAOorB,WAAWltB,KAAKwtB,GAE3B,GACJ,IACC/qB,MAAK,WACJ,OAAiC,IAA7BX,EAAOorB,WAAWryB,OAObW,QAAQ2B,OACb,IAAIoX,EAAeC,EAAOoX,0CAI9B9pB,EAAOurB,WAAarxB,KAAKC,UAAUkJ,GACnCrD,EAAO4rB,cAAgBvoB,EAEhBrD,EACT,IAEFA,EAAOwM,SAWb,SAA8BxM,GAC5B,OAAOyD,GAAY,WACjB,OAAOzD,EAAOyU,eAAe9T,MAAK,WAChCX,EAAOorB,WAAWlwB,SAAQ,SAAU2wB,GAC9BA,GACFA,EAASrf,UAEb,IAEAoG,EAAsB5S,EAAQ2S,EAAQ3S,GACxC,GACF,GACF,CAvBwB8rB,CAAqB9rB,GACvCA,EAAO+rB,cAwBb,SAAmC/rB,GACjC,OAAOyD,GAAY,SAAuB1J,GAGxC,OAFAA,EAAUA,GAAW,CAAC,EAEfiG,EAAOyU,eAAe9T,MAAK,WAChC,OAAI5G,EAAQiyB,IACHtyB,QAAQ0B,QAAQ4E,EAAO4rB,eAGzBlyB,QAAQ0B,QAAQ4E,EAAOurB,WAChC,GACF,GACF,CApC6BU,CAA0BjsB,GAE7CA,EAAOqrB,yBACFrrB,EAAOyU,eAGTzU,CACT,GACJ,IAoCEoU,QA5NY,UA+Nd,EAAE,CAAC,sCAAsC,IAAI,yBAAyB,IAAI,kCAAkC,IAAI,2BAA2B,IAAI,gCAAgC,IAAI,iBAAiB,IAAI,WAAW,GAAG,aAAa,GAAG,UAAU,GAAG,0BAA0B,KAAK,GAAG,CAAC,SAASpb,EAAQhB,EAAOC,GAC9S,aAEA,IAAIi0B,EAAOlzB,EAAQ,iBACfmzB,EAAuBnzB,EAAQ,mCAE/BozB,EAAS,+CAETC,EAAkB,CACpBC,YAAaF,EACbG,GAAIH,EACJxB,QAAS,mDACT4B,WAAY,4CAEVC,EAAmB,CAAC,EAQxB,SAASC,EAAM3yB,GACb,IAAI4yB,EAAkCD,EAAME,oBAC1C7yB,EAAQ6f,YAGV,GAAI+S,EAIF,OAHAzzB,KAAKqyB,WAAaoB,OAClBzzB,KAAK2zB,WAAY,GAKnB3zB,KAAK4zB,oBAAsB5zB,KAAK6zB,uBAAuBhzB,GAEvDmyB,EAAKxpB,OAAOsqB,kBAEZ9zB,KAAK+zB,iBAAmB/zB,KAAKg0B,2BAC7Bh0B,KAAKqyB,WAAaryB,KAAKi0B,iBAEvBT,EAAMU,oBAAoBrzB,EAAQ6f,WAAY1gB,KAAKqyB,YAEnDryB,KAAKm0B,QAAUn0B,KAAKo0B,cACtB,CAEAZ,EAAME,oBAAsB,SAAUhT,GACpC,OAAO6S,EAAiB7S,EAC1B,EAEA8S,EAAMU,oBAAsB,SAAUxT,EAAYvW,GAChDopB,EAAiB7S,GAAcvW,CACjC,EAEAqpB,EAAM5uB,UAAU0O,SAAW,WACpBtT,KAAK2zB,YACRX,EAAKxpB,OAAO6qB,iBAEZr0B,KAAKs0B,gBAET,EAEAd,EAAM5uB,UAAU0vB,cAAgB,WAC9Bt0B,KAAKm0B,QAAQnD,WAAWC,YAAYjxB,KAAKm0B,QAC3C,EAEAX,EAAM5uB,UAAUqvB,eAAiB,WAC/B,OAAOhB,EAAqB,CAC1BsB,gBAAiBv0B,KAAK+zB,iBACtBS,gBAAiBx0B,KAAK4zB,oBAAoBjyB,IAE9C,EAEA6xB,EAAM5uB,UAAUovB,yBAA2B,WACzC,IAAIS,EAKJ,OAHAA,EAAOzB,EAAKxpB,OAAOkrB,YAAY,EAAG,GACtB1B,EAAK2B,MAAMC,IAAIC,SAASJ,EAGtC,EAEAjB,EAAM5uB,UAAUwvB,aAAe,WAC7B,IAAIU,EAAQ1sB,EACRsK,EAAO1S,KA2BX,OAzBA80B,EAAS,MAAQ90B,KAAK4zB,oBAAoBjyB,GAAK,MAAQ3B,KAAK+zB,kBAE5D3rB,EAAShH,SAASC,cAAc,WACzB0zB,MAAQ,EACf3sB,EAAOzG,GAnFc,sBAmFU3B,KAAK+zB,iBACpC3rB,EAAO4sB,OAAS,EAChB5sB,EAAOW,YAAc,EACrBX,EAAOa,UAAY,KACnBb,EAAOI,MAAMyE,SAAW,QACxB7E,EAAOI,MAAMysB,KAAO,YACpB7sB,EAAOI,MAAMiK,IAAM,YACnBrK,EAAO8sB,MAAQ,yBACf9sB,EAAOtG,aAAa,cAAe,QAEnCV,SAASmf,KAAKle,YAAY+F,GAC1BwB,YAAW,WACTxB,EAAO1G,IAAMgR,EAAKkhB,oBAAoBnU,IAAM,YAAcqV,EAC1D1sB,EAAO+sB,UACL,aACAziB,EAAKkhB,oBAAoBnU,IACzB,YACAqV,EACA,aACJ,GAAG,IAEI1sB,CACT,EAEAorB,EAAM5uB,UAAUivB,uBAAyB,SAAUhzB,GACjD,IAAI4e,EAAM0T,EAAgBtyB,EAAQkhB,aAElC,GAAW,MAAPtC,EACF,MAAM,IAAIhgB,MACRoB,EAAQkhB,YAAc,qDAI1B,MAAO,CACLtC,IAAKA,EACL9W,KAAM9H,EAAQkhB,YACdpgB,GAAId,EAAQ6f,WAEhB,EAEA5hB,EAAOC,QAAU,CACf+yB,MAnHF,SAAe1yB,GAGb,OAAO,IAAIo0B,EAFQ,MAALp0B,EAAYA,EAAI,CAAC,EAGjC,EAgHEo0B,MAAOA,EACPL,gBAAiBA,EAGnB,EAAE,CAAC,kCAAkC,IAAI,gBAAgB,MAAM,IAAI,CAAC,SAASrzB,EAAQhB,EAAOC,GAC5F,aACA,IAAIi0B,EAAO,CACToC,OAAQ,CAAC,EACTC,KAAM,CAAC,EACPC,YAAa,CAAC,EACdC,KAAM,CAAC,EACPC,KAAM,CAAC,EACPb,MAAO,CAAC,EACRc,UAAW,CACTC,QAAS,SAAUl2B,GACjBQ,KAAKyJ,SAAW,WACd,MAAO,YAAczJ,KAAKoW,OAC5B,EACApW,KAAKoW,QAAU5W,CACjB,EACAm2B,QAAS,SAAUn2B,GACjBQ,KAAKyJ,SAAW,WACd,MAAO,YAAczJ,KAAKoW,OAC5B,EACApW,KAAKoW,QAAU5W,CACjB,EACAo2B,IAAK,SAAUp2B,GACbQ,KAAKyJ,SAAW,WACd,MAAO,QAAUzJ,KAAKoW,OACxB,EACApW,KAAKoW,QAAU5W,CACjB,EACAq2B,SAAU,SAAUr2B,GAClBQ,KAAKyJ,SAAW,WACd,MAAO,cAAgBzJ,KAAKoW,OAC9B,EACApW,KAAKoW,QAAU5W,CACjB,IAmFJ,SAASL,EAAEK,EAAGiyB,EAAGnoB,GACf,GAAI,IAAMmoB,EAAE5xB,OACV,MAAM,IAAImzB,EAAKyC,UAAUE,QAAQ,0BACnC,IAAIG,EAAIt2B,EAAEiyB,EAAEnoB,GACVrK,EAAIwyB,EAAE,GAAKqE,EAAE,GACbx2B,EAAImyB,EAAEnoB,EAAI,EAAI,GAAKwsB,EAAE,GACrBC,EAAItE,EAAE,GAAKqE,EAAE,GACfrE,EAAIA,EAAEnoB,EAAI,EAAI,GAAKwsB,EAAE,GACrB,IAAIxgB,EACF0gB,EACAr2B,EAEAs2B,EADA/2B,EAAI42B,EAAEj2B,OAAS,EAAI,EAEnBwV,EAAI,EACJ6gB,EAAI,CAAC,EAAG,EAAG,EAAG,GAEhB12B,GADA8V,EAAI9V,EAAEw2B,EAAE1sB,IACF,GACN,IAAItK,EAAIsW,EAAE,GACR6gB,EAAI7gB,EAAE,GACN8gB,EAAI9gB,EAAE,GACN2B,EAAI3B,EAAE,GACR,IAAK2gB,EAAI,EAAGA,EAAI/2B,EAAG+2B,IAChB3gB,EACC9V,EAAEP,IAAM,IAAMD,EAAGM,GAAK,GAAM,KAAO62B,EAAGJ,GAAK,EAAK,KAAOK,EAAM,IAAJ3E,GAAWqE,EAAEzgB,GACrE2gB,EACCx2B,EAAEF,IAAM,IACRN,EAAG+2B,GAAK,GAAM,KACdI,EAAG1E,GAAK,EAAK,KACb2E,EAAM,IAAJn3B,GACF62B,EAAEzgB,EAAI,GACP1V,EACCH,EAAEu2B,IAAM,IACR/2B,EAAGyyB,GAAK,GAAM,KACd0E,EAAGl3B,GAAK,EAAK,KACbm3B,EAAM,IAAJ92B,GACFw2B,EAAEzgB,EAAI,GACPoc,EACCjyB,EAAEiyB,IAAM,IACRzyB,EAAGC,GAAK,GAAM,KACdk3B,EAAG72B,GAAK,EAAK,KACb82B,EAAM,IAAJL,GACFD,EAAEzgB,EAAI,GACPA,GAAK,EACLpW,EAAIqW,EACJhW,EAAI02B,EACJD,EAAIp2B,EACT,IAAKs2B,EAAI,EAAG,EAAIA,EAAGA,IAChBC,EAAE5sB,EAAI,GAAK2sB,EAAIA,GACbhf,EAAEhY,IAAM,KAAO,GACfgY,EAAG3X,GAAK,GAAM,MAAQ,GACtB2X,EAAG8e,GAAK,EAAK,MAAQ,EACtB9e,EAAM,IAAJwa,GACFqE,EAAEzgB,KACDC,EAAIrW,EACJA,EAAIK,EACJA,EAAIy2B,EACJA,EAAItE,EACJA,EAAInc,EACT,OAAO4gB,CACT,CA2LA,SAAS32B,EAAEC,EAAGiyB,GACZ,IAAInoB,EACFwsB,EACA72B,EACAK,EAAIE,EAAED,EACNw2B,EAAIv2B,EAAEiyB,EACNnc,EAAIhW,EAAE,GACN02B,EAAI12B,EAAE,GACNK,EAAIL,EAAE,GACNJ,EAAII,EAAE,GACN22B,EAAI32B,EAAE,GACN+V,EAAI/V,EAAE,GACN42B,EAAI52B,EAAE,GACNN,EAAIM,EAAE,GACR,IAAKgK,EAAI,EAAG,GAAKA,EAAGA,IAClB,GAAKA,EACAwsB,EAAIrE,EAAEnoB,IACLwsB,EAAIrE,EAAGnoB,EAAI,EAAK,IACjBrK,EAAIwyB,EAAGnoB,EAAI,GAAM,IACjBwsB,EAAIrE,EAAM,GAAJnoB,IACFwsB,IAAM,EAAMA,IAAM,GAAOA,IAAM,EAAMA,GAAK,GAAOA,GAAK,KACrD72B,IAAM,GAAOA,IAAM,GAAOA,IAAM,GAAOA,GAAK,GAAOA,GAAK,IAC1DwyB,EAAM,GAAJnoB,GACFmoB,EAAGnoB,EAAI,EAAK,IACd,GACHwsB,EACCA,EACA92B,GACEi3B,IAAM,EACLA,IAAM,GACNA,IAAM,GACNA,GAAK,GACLA,GAAK,GACLA,GAAK,IACPC,EAAKD,GAAK5gB,EAAI6gB,IACfH,EAAEzsB,GACHtK,EAAIk3B,EACJA,EAAI7gB,EACJA,EAAI4gB,EACJA,EAAK/2B,EAAI42B,EAAK,EACd52B,EAAIS,EACJA,EAAIq2B,EAEJ1gB,EACEwgB,IAFFE,EAAI1gB,GAGK3V,EAAMT,GAAK82B,EAAIr2B,KACnBq2B,IAAM,EACLA,IAAM,GACNA,IAAM,GACNA,GAAK,GACLA,GAAK,GACLA,GAAK,IACV,EACN12B,EAAE,GAAMA,EAAE,GAAKgW,EAAK,EACpBhW,EAAE,GAAMA,EAAE,GAAK02B,EAAK,EACpB12B,EAAE,GAAMA,EAAE,GAAKK,EAAK,EACpBL,EAAE,GAAMA,EAAE,GAAKJ,EAAK,EACpBI,EAAE,GAAMA,EAAE,GAAK22B,EAAK,EACpB32B,EAAE,GAAMA,EAAE,GAAK+V,EAAK,EACpB/V,EAAE,GAAMA,EAAE,GAAK42B,EAAK,EACpB52B,EAAE,GAAMA,EAAE,GAAKN,EAAK,CACtB,CA8OA,SAASq3B,EAAE72B,EAAGiyB,GACZ,IAAInoB,EACFwsB,EAAI9C,EAAKxpB,OAAO8sB,EAAE92B,GAClBP,EAAI,GACN,IAAKqK,KAAKwsB,EAAGA,EAAE5uB,eAAeoC,IAAMrK,EAAE+F,KAAK8wB,EAAExsB,IAC7C,IAAKA,EAAI,EAAGA,EAAIrK,EAAEY,OAAQyJ,IAAKrK,EAAEqK,GAAGmoB,EACtC,CACA,SAAS8E,EAAE/2B,EAAGiyB,GACZ,oBAAuBjvB,QACvBA,OAAOg0B,aACP,mBAAsBh0B,OAAOg0B,YAAYC,IACrCj3B,EAAEk3B,WAAWl0B,OAAOg0B,YAAYC,MAAOhF,EAAG,YAC1CjyB,EAAEk3B,YAAW,IAAIrF,MAAOsF,UAAWlF,EAAG,WAC5C,CACA,SAASmF,EAAEp3B,GACTA,EAAEiyB,EAAIoF,EAAEr3B,GAAGoT,OAAOikB,EAAEr3B,IACpBA,EAAE+2B,EAAI,IAAIvD,EAAKoC,OAAO0B,IAAIt3B,EAAEiyB,EAC9B,CACA,SAASoF,EAAEr3B,GACT,IAAK,IAAIiyB,EAAI,EAAG,EAAIA,IAAOjyB,EAAEu2B,EAAEtE,GAAMjyB,EAAEu2B,EAAEtE,GAAK,EAAK,GAAKjyB,EAAEu2B,EAAEtE,IAAKA,KACjE,OAAOjyB,EAAE+2B,EAAEQ,QAAQv3B,EAAEu2B,EACvB,CACA,SAASO,EAAE92B,EAAGiyB,GACZ,OAAO,WACLA,EAAEhsB,MAAMjG,EAAGgG,UACb,CACF,CA3oBAwtB,EAAKoC,OAAO0B,IAAM,SAAUt3B,GAC1BQ,KAAKg2B,EAAE,GAAG,GAAG,IAAMh2B,KAAKg3B,IACxB,IAAIvF,EACFnoB,EACAwsB,EACA72B,EACAK,EAAIU,KAAKg2B,EAAE,GAAG,GACdD,EAAI/1B,KAAKg2B,EAAE,GAET1gB,EAAI,EACR,GAAI,KAFJmc,EAAIjyB,EAAEK,SAES,IAAM4xB,GAAK,IAAMA,EAC9B,MAAM,IAAIuB,EAAKyC,UAAUE,QAAQ,wBAEnC,IADA31B,KAAKyxB,EAAI,CAAEqE,EAAIt2B,EAAEkX,MAAM,GAAMzX,EAAI,IAC5BO,EAAIiyB,EAAGjyB,EAAI,EAAIiyB,EAAI,GAAIjyB,IAC1B8J,EAAIwsB,EAAEt2B,EAAI,IACN,GAAMA,EAAIiyB,GAAM,IAAMA,GAAK,GAAMjyB,EAAIiyB,KACtCnoB,EACEhK,EAAEgK,IAAM,KAAO,GACfhK,EAAGgK,GAAK,GAAM,MAAQ,GACtBhK,EAAGgK,GAAK,EAAK,MAAQ,EACtBhK,EAAM,IAAJgK,GACF,GAAM9J,EAAIiyB,IACNnoB,EAAKA,GAAK,EAAMA,IAAM,GAAOgM,GAAK,GACnCA,EAAKA,GAAK,EAAM,KAAOA,GAAK,KACnCwgB,EAAEt2B,GAAKs2B,EAAEt2B,EAAIiyB,GAAKnoB,EAEpB,IAAKmoB,EAAI,EAAGjyB,EAAGiyB,IAAKjyB,IACjB8J,EAAIwsB,EAAM,EAAJrE,EAAQjyB,EAAIA,EAAI,GACpBP,EAAEwyB,GACD,GAAKjyB,GAAK,EAAIiyB,EACVnoB,EACAysB,EAAE,GAAGz2B,EAAEgK,IAAM,KACbysB,EAAE,GAAGz2B,EAAGgK,GAAK,GAAM,MACnBysB,EAAE,GAAGz2B,EAAGgK,GAAK,EAAK,MAClBysB,EAAE,GAAGz2B,EAAM,IAAJgK,GACnB,EACA0pB,EAAKoC,OAAO0B,IAAIlyB,UAAY,CAC1BmyB,QAAS,SAAUv3B,GACjB,OAAOL,EAAEa,KAAMR,EAAG,EACpB,EACAy3B,QAAS,SAAUz3B,GACjB,OAAOL,EAAEa,KAAMR,EAAG,EACpB,EACAw2B,EAAG,CACD,CAAC,GAAI,GAAI,GAAI,GAAI,IACjB,CAAC,GAAI,GAAI,GAAI,GAAI,KAEnBgB,EAAG,WACD,IAIE/3B,EACAK,EACAy2B,EAGAp2B,EACAT,EACA+2B,EACA5gB,EAZE7V,EAAIQ,KAAKg2B,EAAE,GACbvE,EAAIzxB,KAAKg2B,EAAE,GACX1sB,EAAI9J,EAAE,GACNs2B,EAAIrE,EAAE,GAINnc,EAAI,GACJ0gB,EAAI,GAKN,IAAK/2B,EAAI,EAAG,IAAQA,EAAGA,IAAK+2B,GAAG1gB,EAAErW,GAAMA,GAAK,EAAM,KAAOA,GAAK,IAAOA,GAAKA,EAC1E,IAAKK,EAAIy2B,EAAI,GAAIzsB,EAAEhK,GAAIA,GAAKK,GAAK,EAAGo2B,EAAIC,EAAED,IAAM,EAC9C,IAEIE,GADFA,EAAIF,EAAKA,GAAK,EAAMA,GAAK,EAAMA,GAAK,EAAMA,GAAK,IACnC,EAAU,IAAJE,EAAW,GAC3B3sB,EAAEhK,GAAK22B,EACPH,EAAEG,GAAK32B,EAEP+V,EAAK,UADLnW,EAAIoW,EAAGrW,EAAIqW,EAAG3V,EAAI2V,EAAEhW,MACG,MAAUL,EAAM,IAAQU,EAAM,SAAYL,EACjEJ,EAAK,IAAQoW,EAAE2gB,GAAO,SAAYA,EAClCh3B,EAAI,EACN,EAAIA,EACJA,IAECO,EAAEP,GAAGK,GAAKJ,EAAKA,GAAK,GAAOA,IAAM,EAC/BuyB,EAAExyB,GAAGg3B,GAAK5gB,EAAKA,GAAK,GAAOA,IAAM,EACxC,IAAKpW,EAAI,EAAG,EAAIA,EAAGA,IAAMO,EAAEP,GAAKO,EAAEP,GAAGyX,MAAM,GAAM+a,EAAExyB,GAAKwyB,EAAExyB,GAAGyX,MAAM,EACrE,GA8DFsc,EAAKkE,SAAW,CACdC,SAAU,SAAU33B,EAAGiyB,EAAGnoB,GAExB,OADA9J,EAAIwzB,EAAKkE,SAASE,EAAE53B,EAAEkX,MAAM+a,EAAI,IAAK,IAAU,GAAJA,IAAS/a,MAAM,QACnD,IAAWpN,EAAI9J,EAAIwzB,EAAKkE,SAASG,MAAM73B,EAAG8J,EAAImoB,EACvD,EACA6F,QAAS,SAAU93B,EAAGiyB,EAAGnoB,GACvB,IAAIwsB,EAAIvsB,KAAK2nB,OAAQO,EAAInoB,EAAK,IAC9B,QACwB,IAAnBmoB,EAAInoB,EAAI,EAAKmoB,GACXjyB,EAAGiyB,EAAI,GAAM,IAAO,GAAKqE,EAAOt2B,EAAGiyB,EAAI,GAAK,EAAK,KAAOqE,EACzDt2B,EAAGiyB,EAAI,GAAM,KAAOqE,IACtB,GAAKxsB,GAAK,CAEhB,EACAsJ,OAAQ,SAAUpT,EAAGiyB,GACnB,GAAI,IAAMjyB,EAAEK,QAAU,IAAM4xB,EAAE5xB,OAAQ,OAAOL,EAAEoT,OAAO6e,GACtD,IAAInoB,EAAI9J,EAAEA,EAAEK,OAAS,GACnBi2B,EAAI9C,EAAKkE,SAASK,WAAWjuB,GAC/B,OAAO,KAAOwsB,EACVt2B,EAAEoT,OAAO6e,GACTuB,EAAKkE,SAASE,EAAE3F,EAAGqE,EAAO,EAAJxsB,EAAO9J,EAAEkX,MAAM,EAAGlX,EAAEK,OAAS,GACzD,EACA23B,UAAW,SAAUh4B,GACnB,IAAIiyB,EAAIjyB,EAAEK,OACV,OAAO,IAAM4xB,EAAI,EAAI,IAAMA,EAAI,GAAKuB,EAAKkE,SAASK,WAAW/3B,EAAEiyB,EAAI,GACrE,EACA4F,MAAO,SAAU73B,EAAGiyB,GAClB,GAAI,GAAKjyB,EAAEK,OAAS4xB,EAAG,OAAOjyB,EAE9B,IAAI8J,GADJ9J,EAAIA,EAAEkX,MAAM,EAAGnN,KAAKkuB,KAAKhG,EAAI,MACnB5xB,OASV,OARA4xB,GAAQ,GACR,EAAInoB,GACFmoB,IACCjyB,EAAE8J,EAAI,GAAK0pB,EAAKkE,SAASQ,QACxBjG,EACAjyB,EAAE8J,EAAI,GAAM,YAAemoB,EAAI,EAC/B,IAEGjyB,CACT,EACAk4B,QAAS,SAAUl4B,EAAGiyB,EAAGnoB,GACvB,OAAO,KAAO9J,EAAIiyB,GAAKnoB,EAAQ,EAAJmoB,EAAQA,GAAM,GAAKjyB,GAAM,cAAgBA,CACtE,EACA+3B,WAAY,SAAU/3B,GACpB,OAAO+J,KAAKouB,MAAMn4B,EAAI,gBAAkB,EAC1C,EACAo4B,MAAO,SAAUp4B,EAAGiyB,GAClB,GAAIuB,EAAKkE,SAASM,UAAUh4B,KAAOwzB,EAAKkE,SAASM,UAAU/F,GAAI,OAAO,EACtE,IACEqE,EADExsB,EAAI,EAER,IAAKwsB,EAAI,EAAGA,EAAIt2B,EAAEK,OAAQi2B,IAAKxsB,GAAK9J,EAAEs2B,GAAKrE,EAAEqE,GAC7C,OAAO,IAAMxsB,CACf,EACA8tB,EAAG,SAAU53B,EAAGiyB,EAAGnoB,EAAGwsB,GACpB,IAAI72B,EAEJ,IADAA,EAAI,OACC,IAAW62B,IAAMA,EAAI,IAAK,IAAMrE,EAAGA,GAAK,GAAIqE,EAAE9wB,KAAKsE,GAAKA,EAAI,EACjE,GAAI,IAAMmoB,EAAG,OAAOqE,EAAEljB,OAAOpT,GAC7B,IAAKP,EAAI,EAAGA,EAAIO,EAAEK,OAAQZ,IACxB62B,EAAE9wB,KAAKsE,EAAK9J,EAAEP,KAAOwyB,GAAMnoB,EAAI9J,EAAEP,IAAO,GAAKwyB,EAI/C,OAHAxyB,EAAIO,EAAEK,OAASL,EAAEA,EAAEK,OAAS,GAAK,EACjCL,EAAIwzB,EAAKkE,SAASK,WAAWt4B,GAC7B62B,EAAE9wB,KAAKguB,EAAKkE,SAASQ,QAASjG,EAAIjyB,EAAK,GAAI,GAAKiyB,EAAIjyB,EAAI8J,EAAIwsB,EAAEtrB,MAAO,IAC9DsrB,CACT,EACA+B,EAAG,SAAUr4B,EAAGiyB,GACd,MAAO,CAACjyB,EAAE,GAAKiyB,EAAE,GAAIjyB,EAAE,GAAKiyB,EAAE,GAAIjyB,EAAE,GAAKiyB,EAAE,GAAIjyB,EAAE,GAAKiyB,EAAE,GAC1D,EACAqG,UAAW,SAAUt4B,GACnB,IAAIiyB,EAAGnoB,EACP,IAAKmoB,EAAI,EAAGA,EAAIjyB,EAAEK,SAAU4xB,EACzBnoB,EAAI9J,EAAEiyB,GACJjyB,EAAEiyB,GACAnoB,IAAM,GAAQA,IAAM,EAAK,OAAgB,MAAJA,IAAe,EAAMA,GAAK,GACtE,OAAO9J,CACT,GAEFwzB,EAAK2B,MAAMoD,WAAa,CACtBlD,SAAU,SAAUr1B,GAClB,IAEEs2B,EACA72B,EAHEwyB,EAAI,GACNnoB,EAAI0pB,EAAKkE,SAASM,UAAUh4B,GAG9B,IAAKs2B,EAAI,EAAGA,EAAIxsB,EAAI,EAAGwsB,MACV,EAAJA,KAAW72B,EAAIO,EAAEs2B,EAAI,IACzBrE,GAAKziB,OAAOgpB,aAAe/4B,IAAM,IAAO,IAAO,GAC/CA,IAAM,EACX,OAAOg5B,mBAAmBC,OAAOzG,GACnC,EACA0G,OAAQ,SAAU34B,GAChBA,EAAI44B,SAASC,mBAAmB74B,IAChC,IACE8J,EADEmoB,EAAI,GAENqE,EAAI,EACN,IAAKxsB,EAAI,EAAGA,EAAI9J,EAAEK,OAAQyJ,IACvBwsB,EAAKA,GAAK,EAAKt2B,EAAE84B,WAAWhvB,KAAK,GAAOA,KAAWmoB,EAAEzsB,KAAK8wB,GAAKA,EAAI,GAEtE,OADI,EAAJxsB,GAASmoB,EAAEzsB,KAAKguB,EAAKkE,SAASQ,QAAQ,GAAS,EAAJpuB,GAAQwsB,IAC5CrE,CACT,GAEFuB,EAAK2B,MAAMC,IAAM,CACfC,SAAU,SAAUr1B,GAClB,IACE8J,EADEmoB,EAAI,GAER,IAAKnoB,EAAI,EAAGA,EAAI9J,EAAEK,OAAQyJ,IACxBmoB,IAAmB,gBAAL,EAAPjyB,EAAE8J,KAA0BG,SAAS,IAAI+G,OAAO,GACzD,OAAOihB,EAAEjhB,OAAO,EAAGwiB,EAAKkE,SAASM,UAAUh4B,GAAK,EAClD,EACA24B,OAAQ,SAAU34B,GAChB,IAAIiyB,EAEFqE,EADAxsB,EAAI,GAKN,IAFAwsB,GADAt2B,EAAIA,EAAE6J,QAAQ,SAAU,KAClBxJ,OACNL,GAAQ,WACHiyB,EAAI,EAAGA,EAAIjyB,EAAEK,OAAQ4xB,GAAK,EAAGnoB,EAAEtE,KAAoC,EAA/BT,SAAS/E,EAAEgR,OAAOihB,EAAG,GAAI,KAClE,OAAOuB,EAAKkE,SAASG,MAAM/tB,EAAG,EAAIwsB,EACpC,GAEF9C,EAAKqC,KAAKkD,OAAS,SAAU/4B,GAC3BQ,KAAKyxB,EAAE,IAAMzxB,KAAKg3B,IAClBx3B,GACMQ,KAAKT,EAAIC,EAAED,EAAEmX,MAAM,GAAM1W,KAAKZ,EAAII,EAAEJ,EAAEsX,MAAM,GAAM1W,KAAKi2B,EAAIz2B,EAAEy2B,GAC/Dj2B,KAAKw4B,OACX,EACAxF,EAAKqC,KAAKkD,OAAOlD,KAAO,SAAU71B,GAChC,OAAO,IAAIwzB,EAAKqC,KAAKkD,QAASE,OAAOj5B,GAAGk5B,UAC1C,EACA1F,EAAKqC,KAAKkD,OAAO3zB,UAAY,CAC3B+zB,UAAW,IACXH,MAAO,WAIL,OAHAx4B,KAAKT,EAAIS,KAAK44B,EAAEliB,MAAM,GACtB1W,KAAKZ,EAAI,GACTY,KAAKi2B,EAAI,EACFj2B,IACT,EACAy4B,OAAQ,SAAUj5B,GAChB,iBAAoBA,IAAMA,EAAIwzB,EAAK2B,MAAMoD,WAAWI,OAAO34B,IAC3D,IAAIiyB,EACFnoB,EAAKtJ,KAAKZ,EAAI4zB,EAAKkE,SAAStkB,OAAO5S,KAAKZ,EAAGI,GAG7C,GAFAiyB,EAAIzxB,KAAKi2B,EAEL,kBADJz2B,EAAIQ,KAAKi2B,EAAIxE,EAAIuB,EAAKkE,SAASM,UAAUh4B,IAEvC,MAAM,IAAIwzB,EAAKyC,UAAUE,QAAQ,uCACnC,GAAI,oBAAuBkD,YAAa,CACtC,IAAI/C,EAAI,IAAI+C,YAAYvvB,GACtBrK,EAAI,EACN,IAAKwyB,EAAI,IAAMA,GAAM,IAAMA,EAAK,KAAQA,GAAKjyB,EAAGiyB,GAAK,IACnDlyB,EAAES,KAAM81B,EAAEgD,SAAS,GAAK75B,EAAG,IAAMA,EAAI,KAAOA,GAAK,EACnDqK,EAAElE,OAAO,EAAG,GAAKnG,EACnB,MACE,IAAKwyB,EAAI,IAAMA,GAAM,IAAMA,EAAK,KAAQA,GAAKjyB,EAAGiyB,GAAK,IACnDlyB,EAAES,KAAMsJ,EAAElE,OAAO,EAAG,KACxB,OAAOpF,IACT,EACA04B,SAAU,WACR,IAAIl5B,EACFiyB,EAAIzxB,KAAKZ,EACTkK,EAAItJ,KAAKT,EAEX,IAAKC,GADHiyB,EAAIuB,EAAKkE,SAAStkB,OAAO6e,EAAG,CAACuB,EAAKkE,SAASQ,QAAQ,EAAG,MAC7C73B,OAAS,EAAO,GAAJL,EAAQA,IAAKiyB,EAAEzsB,KAAK,GAE3C,IADAysB,EAAEzsB,KAAKuE,KAAK2nB,MAAMlxB,KAAKi2B,EAAI,aACtBxE,EAAEzsB,KAAc,EAAThF,KAAKi2B,GAAQxE,EAAE5xB,QAAUN,EAAES,KAAMyxB,EAAErsB,OAAO,EAAG,KAEzD,OADApF,KAAKw4B,QACElvB,CACT,EACAsvB,EAAG,GACHnH,EAAG,GACHuF,EAAG,WACD,SAASx3B,EAAEA,GACT,OAAQ,YAAeA,EAAI+J,KAAK2nB,MAAM1xB,IAAO,CAC/C,CACA,IAAK,IAAkBs2B,EAAG72B,EAAjBwyB,EAAI,EAAGnoB,EAAI,EAAS,GAAKmoB,EAAGnoB,IAAK,CAExC,IADArK,GAAI,EACC62B,EAAI,EAAGA,EAAIA,GAAKxsB,EAAGwsB,IACtB,GAAI,GAAMxsB,EAAIwsB,EAAG,CACf72B,GAAI,EACJ,KACF,CACFA,IACG,EAAIwyB,IAAMzxB,KAAK44B,EAAEnH,GAAKjyB,EAAE+J,KAAKwvB,IAAIzvB,EAAG,MACpCtJ,KAAKyxB,EAAEA,GAAKjyB,EAAE+J,KAAKwvB,IAAIzvB,EAAG,EAAI,IAC/BmoB,IACJ,CACF,GAgEFuB,EAAKgG,KAAO,SAAUx5B,GACpBQ,KAAKsJ,EAAI,CAAC,IAAI0pB,EAAKqC,KAAKkD,QACxBv4B,KAAKX,EAAI,CAAC,GACVW,KAAKi5B,EAAI,EACTj5B,KAAKm2B,EAAI,CAAC,EACVn2B,KAAKk5B,EAAI,EACTl5B,KAAKm5B,EAAI,CAAC,EACVn5B,KAAKo5B,EAAIp5B,KAAKV,EAAIU,KAAKq5B,EAAIr5B,KAAKs5B,EAAI,EACpCt5B,KAAKyxB,EAAI,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAC/BzxB,KAAK+1B,EAAI,CAAC,EAAG,EAAG,EAAG,GACnB/1B,KAAKu2B,OAAI,EACTv2B,KAAKu5B,EAAI/5B,EACTQ,KAAKsL,GAAI,EACTtL,KAAKs2B,EAAI,CAAEkD,SAAU,CAAC,EAAGC,OAAQ,CAAC,GAClCz5B,KAAKqV,EAAIrV,KAAK05B,EAAI,EAClB15B,KAAKo2B,EAAI,EACTp2B,KAAKq2B,EAAI,EACTr2B,KAAK25B,EAAI,MACT35B,KAAK45B,EAAI,CAAC,EAAG,GAAI,GAAI,GAAI,IAAK,IAAK,IAAO,IAAK,IAAK,IAAK,MACzD55B,KAAK65B,EAAI,IACT75B,KAAK85B,EAAI,EACX,EACA9G,EAAKgG,KAAKp0B,UAAY,CACpB8vB,YAAa,SAAUl1B,EAAGiyB,GACxB,IACEqE,EAEE72B,EAHAqK,EAAI,GAIR,IAFAwsB,EAAI91B,KAAK+5B,QAAQtI,MAEPzxB,KAAKqV,EACb,MAAM,IAAI2d,EAAKyC,UAAUI,SAAS,0BACpC,GAAIC,EAAI91B,KAAKq2B,EAAG,CACdP,IAAMA,EAAI91B,KAAKo2B,GACfn3B,EAAI,GACJ,IACE82B,EADEz2B,EAAI,EAGR,IADAU,KAAKo5B,EAAIn6B,EAAE,IAAK,IAAIoyB,MAAOsF,UAAY32B,KAAK65B,EACvC9D,EAAI,EAAG,GAAKA,EAAGA,IAAK92B,EAAE+F,KAAM,WAAcuE,KAAKC,SAAY,GAChE,IACEusB,EAAI,EACJA,EAAI/1B,KAAKsJ,EAAEzJ,SACTZ,EAAIA,EAAE2T,OAAO5S,KAAKsJ,EAAEysB,GAAG2C,YACxBp5B,GAAKU,KAAKX,EAAE02B,GACZ/1B,KAAKX,EAAE02B,GAAK,EACbD,KAAO91B,KAAKi5B,EAAK,GAAKlD,IACtBA,KASF,IAPA/1B,KAAKi5B,GAAK,GAAKj5B,KAAKsJ,EAAEzJ,SACnBG,KAAKsJ,EAAEtE,KAAK,IAAIguB,EAAKqC,KAAKkD,QAAWv4B,KAAKX,EAAE2F,KAAK,IACpDhF,KAAKV,GAAKA,EACVA,EAAIU,KAAKq5B,IAAMr5B,KAAKq5B,EAAI/5B,GACxBU,KAAKi5B,IACLj5B,KAAKyxB,EAAIuB,EAAKqC,KAAKkD,OAAOlD,KAAKr1B,KAAKyxB,EAAE7e,OAAO3T,IAC7Ce,KAAKu2B,EAAI,IAAIvD,EAAKoC,OAAO0B,IAAI92B,KAAKyxB,GAEhCqE,EAAI,EACJ,EAAIA,IAAO91B,KAAK+1B,EAAED,GAAM91B,KAAK+1B,EAAED,GAAK,EAAK,GAAK91B,KAAK+1B,EAAED,IACrDA,KAEJ,CACA,IAAKA,EAAI,EAAGA,EAAIt2B,EAAGs2B,GAAK,EACtB,IAAOA,EAAI,GAAK91B,KAAK25B,GAAK/C,EAAE52B,MACzBf,EAAI43B,EAAE72B,MACPsJ,EAAEtE,KAAK/F,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,IAE/B,OADA23B,EAAE52B,MACKsJ,EAAEoN,MAAM,EAAGlX,EACpB,EACAw6B,mBAAoB,SAAUx6B,EAAGiyB,GAC/B,GACE,IAAMjyB,GACN,wEACEiyB,EAEF,MAAM,IAAIuB,EAAKyC,UAAUE,QACvB,uEAEJ31B,KAAKu5B,EAAI/5B,CACX,EACAk3B,WAAY,SAAUl3B,EAAGiyB,EAAGnoB,GAC1BA,EAAIA,GAAK,OACT,IAAIwsB,EACF72B,EACAK,GAAI,IAAI+xB,MAAOsF,UACfZ,EAAI/1B,KAAKm2B,EAAE7sB,GACXgM,EAAItV,KAAK+5B,UACT/D,EAAI,EAKN,YAHA,KADAF,EAAI91B,KAAKm5B,EAAE7vB,MACMwsB,EAAI91B,KAAKm5B,EAAE7vB,GAAKtJ,KAAKs5B,UACtC,IAAWvD,IAAMA,EAAI/1B,KAAKm2B,EAAE7sB,GAAK,GACjCtJ,KAAKm2B,EAAE7sB,IAAMtJ,KAAKm2B,EAAE7sB,GAAK,GAAKtJ,KAAKsJ,EAAEzJ,cACtBL,GACb,IAAK,cACH,IAAWiyB,IAAMA,EAAI,GACrBzxB,KAAKsJ,EAAEysB,GAAG0C,OAAO,CAAC3C,EAAG91B,KAAKk5B,IAAK,EAAGzH,EAAGnyB,EAAG,EAAO,EAAJE,IAC3C,MACF,IAAK,SAEH,GAAI,0BADJ8J,EAAInJ,OAAOyE,UAAU6E,SAAS7J,KAAKJ,IACD,CAEhC,IADAP,EAAI,GACCqK,EAAI,EAAGA,EAAI9J,EAAEK,OAAQyJ,IAAKrK,EAAE+F,KAAKxF,EAAE8J,IACxC9J,EAAIP,CACN,MACE,IACE,mBAAqBqK,IAAM0sB,EAAI,GAAI1sB,EAAI,EACvCA,EAAI9J,EAAEK,SAAWm2B,EACjB1sB,IAEA,iBAAoB9J,EAAE8J,KAAO0sB,EAAI,GACrC,IAAKA,EAAG,CACN,QAAI,IAAWvE,EACb,IAAKnoB,EAAImoB,EAAI,EAAGnoB,EAAI9J,EAAEK,OAAQyJ,IAC5B,IAAKrK,EAAIO,EAAE8J,GAAI,EAAIrK,GAAKwyB,IAAMxyB,KAAU,EAC5Ce,KAAKsJ,EAAEysB,GAAG0C,OAAO,CAAC3C,EAAG91B,KAAKk5B,IAAK,EAAGzH,EAAGnyB,EAAGE,EAAEK,QAAQ+S,OAAOpT,GAC3D,CACA,MACF,IAAK,cACH,IAAWiyB,IAAMA,EAAIjyB,EAAEK,QACvBG,KAAKsJ,EAAEysB,GAAG0C,OAAO,CAAC3C,EAAG91B,KAAKk5B,IAAK,EAAGzH,EAAGnyB,EAAGE,EAAEK,SAC1CG,KAAKsJ,EAAEysB,GAAG0C,OAAOj5B,GACjB,MACF,QACEw2B,EAAI,EAER,GAAIA,EACF,MAAM,IAAIhD,EAAKyC,UAAUG,IACvB,uEAEJ51B,KAAKX,EAAE02B,IAAMtE,EACbzxB,KAAKV,GAAKmyB,EACVnc,IAAMtV,KAAKqV,IACRrV,KAAK+5B,YAAc/5B,KAAKqV,GAAKghB,EAAE,SAAU9sB,KAAK+G,IAAItQ,KAAKq5B,EAAGr5B,KAAKV,IAChE+2B,EAAE,WAAYr2B,KAAKi6B,eACvB,EACAF,QAAS,SAAUv6B,GAEjB,OADAA,EAAIQ,KAAK45B,OAAE,IAAWp6B,EAAIA,EAAIQ,KAAKu5B,GAC5Bv5B,KAAKq5B,GAAKr5B,KAAKq5B,GAAK75B,EACvBQ,KAAKX,EAAE,GAAKW,KAAK85B,IAAK,IAAIzI,MAAOsF,UAAY32B,KAAKo5B,EAChDp5B,KAAKq2B,EAAIr2B,KAAKo2B,EACdp2B,KAAKo2B,EACPp2B,KAAKV,GAAKE,EACVQ,KAAKq2B,EAAIr2B,KAAKqV,EACdrV,KAAKqV,CACX,EACA4kB,YAAa,SAAUz6B,GAErB,OADAA,EAAIQ,KAAK45B,EAAEp6B,GAAQQ,KAAKu5B,GACjBv5B,KAAKq5B,GAAK75B,GAAQQ,KAAKV,EAAIE,EAAb,EAAqBQ,KAAKV,EAAIE,CACrD,EACAs0B,gBAAiB,WACf,IAAK9zB,KAAKsL,EAAG,CAQX,GAPAtL,KAAKR,EAAI,CACP06B,kBAAmB5D,EAAEt2B,KAAMA,KAAKm6B,GAChCC,eAAgB9D,EAAEt2B,KAAMA,KAAKq6B,GAC7BC,kBAAmBhE,EAAEt2B,KAAMA,KAAKu6B,GAChCC,uBAAwBlE,EAAEt2B,KAAMA,KAAKy6B,GACrCC,eAAgBpE,EAAEt2B,KAAMA,KAAK26B,IAE3Bn4B,OAAOJ,iBACTI,OAAOJ,iBAAiB,OAAQpC,KAAKR,EAAE06B,mBAAmB,GACxD13B,OAAOJ,iBAAiB,YAAapC,KAAKR,EAAE46B,gBAAgB,GAC5D53B,OAAOJ,iBAAiB,WAAYpC,KAAKR,EAAE86B,mBAAmB,GAC9D93B,OAAOJ,iBACL,eACApC,KAAKR,EAAEg7B,wBACP,GAEFh4B,OAAOJ,iBAAiB,YAAapC,KAAKR,EAAEk7B,gBAAgB,OAC3D,KAAIt5B,SAASw5B,YAIb,MAAM,IAAI5H,EAAKyC,UAAUG,IAAI,sBAHhCx0B,SAASw5B,YAAY,SAAU56B,KAAKR,EAAE06B,mBACpC94B,SAASw5B,YAAY,cAAe56B,KAAKR,EAAE46B,gBAC3Ch5B,SAASw5B,YAAY,WAAY56B,KAAKR,EAAE86B,kBACW,CACvDt6B,KAAKsL,GAAI,CACX,CACF,EACA+oB,eAAgB,WACdr0B,KAAKsL,IACF9I,OAAOiS,qBACHjS,OAAOiS,oBAAoB,OAAQzU,KAAKR,EAAE06B,mBAAmB,GAC9D13B,OAAOiS,oBAAoB,YAAazU,KAAKR,EAAE46B,gBAAgB,GAC/D53B,OAAOiS,oBAAoB,WAAYzU,KAAKR,EAAE86B,mBAAmB,GACjE93B,OAAOiS,oBACL,eACAzU,KAAKR,EAAEg7B,wBACP,GAEFh4B,OAAOiS,oBAAoB,YAAazU,KAAKR,EAAEk7B,gBAAgB,IAC/Dt5B,SAASy5B,cACRz5B,SAASy5B,YAAY,SAAU76B,KAAKR,EAAE06B,mBACvC94B,SAASy5B,YAAY,cAAe76B,KAAKR,EAAE46B,gBAC3Ch5B,SAASy5B,YAAY,WAAY76B,KAAKR,EAAE86B,oBAC3Ct6B,KAAKsL,GAAI,EACd,EACAlJ,iBAAkB,SAAU5C,EAAGiyB,GAC7BzxB,KAAKs2B,EAAE92B,GAAGQ,KAAK05B,KAAOjI,CACxB,EACAhd,oBAAqB,SAAUjV,EAAGiyB,GAChC,IAAInoB,EACFwsB,EACA72B,EAAIe,KAAKs2B,EAAE92B,GACXF,EAAI,GACN,IAAKw2B,KAAK72B,EAAGA,EAAEiI,eAAe4uB,IAAM72B,EAAE62B,KAAOrE,GAAKnyB,EAAE0F,KAAK8wB,GACzD,IAAKxsB,EAAI,EAAGA,EAAIhK,EAAEO,OAAQyJ,WAAwBrK,EAAlB62B,EAAIx2B,EAAEgK,GACxC,EACAixB,EAAG,WACDhE,EAAEv2B,KAAM,EACV,EACAq6B,EAAG,SAAU76B,GACX,IAAIiyB,EAAGnoB,EACP,IACGmoB,EAAIjyB,EAAEyX,GAAKzX,EAAEs7B,SAAWt7B,EAAEu7B,SAAW,EACnCzxB,EAAI9J,EAAEo3B,GAAKp3B,EAAEw7B,SAAWx7B,EAAEy7B,SAAW,CAC1C,CAAE,MAAOnF,GACPxsB,EAAImoB,EAAI,CACV,CACA,GAAKA,GAAK,GAAKnoB,GAAKtJ,KAAK02B,WAAW,CAACjF,EAAGnoB,GAAI,EAAG,SAC/CitB,EAAEv2B,KAAM,EACV,EACA26B,EAAG,SAAUn7B,GACXA,EAAIA,EAAE07B,QAAQ,IAAM17B,EAAE27B,eAAe,GACrCn7B,KAAK02B,WAAW,CAACl3B,EAAE47B,OAAS57B,EAAEs7B,QAASt7B,EAAE67B,OAAS77B,EAAEw7B,SAAU,EAAG,SACjEzE,EAAEv2B,KAAM,EACV,EACAm6B,EAAG,WACD5D,EAAEv2B,KAAM,EACV,EACAy6B,EAAG,SAAUj7B,GAKX,GAJAA,EACEA,EAAE87B,6BAA6BrkB,GAC/BzX,EAAE87B,6BAA6B1E,GAC/Bp3B,EAAE87B,6BAA6BzE,EAC7Br0B,OAAO+4B,YAAa,CACtB,IAAI9J,EAAIjvB,OAAO+4B,YACf,iBAAoB9J,GAAKzxB,KAAK02B,WAAWjF,EAAG,EAAG,gBACjD,CACAjyB,GAAKQ,KAAK02B,WAAWl3B,EAAG,EAAG,iBAC3B+2B,EAAEv2B,KAAM,EACV,GA6BFgzB,EAAKxpB,OAAS,IAAIwpB,EAAKgG,KAAK,GAC5Bx5B,EAAG,IACD,IAAI+5B,EAAGiC,EAAGtC,EAAGlC,EACb,GAAKA,OAAI,IAAuBl4B,GAAUA,EAAOC,QAAU,CACzD,IAAIk6B,EACJ,IACEA,EAAIn5B,EAAQ,SACd,CAAE,MAAON,GACPy5B,EAAI,IACN,CACAjC,EAAIwE,EAAIvC,CACV,CACA,GAAIjC,GAAKwE,EAAEC,YACRlC,EAAIiC,EAAEC,YAAY,KAChBlC,EAAI,IAAIV,YAAY,IAAI6C,WAAWnC,GAAGoC,QACvC3I,EAAKxpB,OAAOktB,WAAW6C,EAAG,KAAM,8BAC/B,GACH,oBAAuB/2B,QACvB,oBAAuBq2B,YACvB,CAEA,GADAK,EAAI,IAAIL,YAAY,IAChBr2B,OAAOo5B,QAAUp5B,OAAOo5B,OAAOC,gBACjCr5B,OAAOo5B,OAAOC,gBAAgB3C,OAC3B,KAAI12B,OAAOs5B,WAAYt5B,OAAOs5B,SAASD,gBAEvC,MAAMr8B,EADTgD,OAAOs5B,SAASD,gBAAgB3C,EACtB,CACZlG,EAAKxpB,OAAOktB,WAAWwC,EAAG,KAAM,4BAClC,CACF,CAAE,MAAO15B,GACP,oBAAuBgD,QACrBA,OAAOqH,UACNA,QAAQC,IAAI,2DACbD,QAAQC,IAAItK,GAChB,MACA,IAAuBV,GAAUA,EAAOC,UAAYD,EAAOC,QAAUi0B,EAMrE,EAAE,CAAC,YAAS7gB,IAAY,IAAI,CAAC,SAASrS,EAAQhB,EAAOC,GACrD,aAeA,IAAIwa,EAAiBzZ,EAAQ,0BAE7BhB,EAAOC,QAAU,CACfg9B,2BAA4B,CAC1BhuB,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,6BACN0W,QAAS,gDAEX4lB,6BAA8B,CAC5Bt8B,KAAM,+BACN0W,QACE,oEACFrI,KAAMwL,EAAehL,MAAM+c,SAE7B2Q,mCAAoC,CAClCv8B,KAAM,qCACNqO,KAAMwL,EAAehL,MAAMkM,UAI/B,EAAE,CAAC,yBAAyB,MAAM,IAAI,CAAC,SAAS3a,EAAQhB,EAAOC,GAC/D,aAEA,IAAIoc,EAAYrb,EAAQ,oBACpBwI,EAASxI,EAAQ,iBAAiBwI,OAClCoR,EAAwB5Z,EAAQ,mCAChC8T,EAAO9T,EAAQ,eACfo8B,EAAiCp8B,EAAQ,4CACzCyZ,EAAiBzZ,EAAQ,0BACzB0Z,EAAS1Z,EAAQ,YACjB2Z,EAAU3Z,EAAQ,kBAClByK,EAAczK,EAAQ,2BAEtBq8B,EAAsC,CACxC,EAAG,8BACH,EAAG,+BAgCL,SAASC,EAAcv7B,GAQrB,GAPAb,KAAKub,eAAiB1a,EAAQ2a,cAC9Bxb,KAAK4Z,QAAU/Y,EAAQgZ,OACvB7Z,KAAKq8B,mBAAqBx7B,EAAQya,kBAElCtb,KAAKs8B,kBAAoBz7B,EAAQ07B,kBAAoB,EACrDv8B,KAAKw8B,kBAAoB37B,EAAQ47B,iBAE7Bz8B,KAAK08B,oCACP,MAAM,IAAInjB,EAAe,CACvB7Z,KAAM8Z,EAAOyiB,mCAAmCv8B,KAChD0W,QACE,yDACApW,KAAKs8B,kBACL,iGACFvuB,KAAMyL,EAAOyiB,mCAAmCluB,MAGtD,CAEAquB,EAAcx3B,UAAU8W,eAAiB,WACvC,OAAI1b,KAAK4Z,QACApZ,QAAQ0B,UAGVlC,KAAKub,eAAe9T,KACzB,SAAUoS,GACR7Z,KAAK4Z,QAAUC,CACjB,EAAE8B,KAAK3b,MAEX,EAEAo8B,EAAcx3B,UAAU83B,kCAAoC,WAG1D,QAAS18B,KAAKs8B,qBAAqBH,EACrC,EAEAC,EAAcx3B,UAAU+3B,kBAAoB,WAS1C,OARK38B,KAAK48B,iBACR58B,KAAK48B,eAAiBV,EACpBl8B,KAAK4Z,QAAQiC,mBACb7b,KAAKs8B,kBACLt8B,KAAKw8B,oBAIFx8B,KAAK48B,cACd,EAEAR,EAAcx3B,UAAUi4B,4BAA8B,SACpDC,GAEA,IAAIC,EAAgB/8B,KAAK28B,oBACrBK,EACFF,EAAmBG,kBACnBH,EAAmBG,iBAAiBC,oBAClCC,EACFJ,EAAcE,iBAAiBC,oBAC7BA,EAAsBF,GAAwBG,EAQlD,OANAL,EAAqBx0B,EAAO,CAAC,EAAGy0B,EAAeD,IAI5BG,iBAAiBC,oBAAsBA,EAEnDJ,CACT,EAEAV,EAAcx3B,UAAUw4B,4BAA8B,SACpDN,GAEA,IAAIC,EAAgB/8B,KAAK28B,oBAqBzB,OAnBIG,EAAmBO,uBACrBP,EAAmBO,sBAAsBr7B,SAAQ,SAAUs7B,GACzD,IAAIC,EAAuB3pB,EACzBmpB,EAAcM,sBACd,OACAC,EAAcvvB,MAGZwvB,GA2OV,SACEC,EACAD,GAEAp9B,OAAO4B,KAAKw7B,GAAsBv7B,SAAQ,SAAUy7B,GACH,iBAApCF,EAAqBE,GAC9BD,EAA+BC,GAAan1B,EAC1C,CAAC,EACDi1B,EAAqBE,GACrBD,EAA+BC,IAGjCD,EAA+BC,GAC7BD,EAA+BC,IAC/BF,EAAqBE,EAE3B,GACF,CA3PQC,CACEJ,EACAC,EAGN,IAGmBj1B,EAAO,CAAC,EAAGy0B,EAAeD,EAGjD,EAuEAV,EAAcx3B,UAAU+4B,yBAA2B,SAAUC,GAC3D,OAAK59B,KAAKq8B,mBAIHr8B,KAAK0b,iBAAiBjU,KAC3B,WACE,OAAOzH,KAAK69B,sCAAsCD,EACpD,EAAEjiB,KAAK3b,OANAA,KAAK69B,sCAAsCD,EAQtD,EAEAxB,EAAcx3B,UAAUi5B,sCAAwC,SAC9DD,GAEA,IAAId,EAAqBx0B,EAAO,CAAC,EAAGs1B,GAChCxb,EAAUpiB,KAAKs8B,kBACfwB,EACF3B,EAAoC/Z,GAOtC,OALAjH,EAAUgC,UACRnd,KAAKub,eACL,mBAAqB6G,EAAU,6BAG1BpiB,KAAK89B,GAAgChB,EAC9C,EAkCAV,EAAcx3B,UAAUm5B,cAAgB,SAAU7gB,GAChD,IAAIxK,EAAO1S,KAEX,OAAOQ,QAAQ0B,UACZuF,MAAK,WACJ,IAAI2K,EACA4rB,EACsB,IAAxB9gB,EAAS+gB,WACL/gB,EAASghB,kBAAkBC,iBAAiB3gB,MAC5CN,EAASkhB,mBAAmB5gB,MAC9B4S,EAAiBpvB,KAAKgP,MAAMguB,GAC5B3nB,EAAQ+Z,EAAe/Z,MAE3B,OAAIA,EACK7V,QAAQ2B,OAAOkU,IAGxB8E,EAAUgC,UACRzK,EAAK6I,eACL,0CAGE6U,EAAeiO,gBACjBjsB,EAAUge,EAAeiO,eAAe,GACxCljB,EAAUgC,UACRzK,EAAK6I,eACL,iDAGK/a,QAAQ0B,QAAQ,CACrB6X,MAAO3H,EAAQ2H,MACfhM,KAAMqE,EAAQrE,KACd+d,YAAa1Z,EAAQ0Z,gBAGzB1Z,EAAUge,EAAekO,gBAAgB,GACzCnjB,EAAUgC,UACRzK,EAAK6I,eACL,yDAGK/a,QAAQ0B,QAAQ,CACrB6X,MAAO3H,EAAQ2H,MACfhM,KAAMqE,EAAQrE,KACd+d,YAAa1Z,EAAQ0Z,YACrBzR,QAAS,CACPvN,SAAUsF,EAAQiI,QAAQvN,SAC1Bsf,SAAUha,EAAQiI,QAAQ+R,SAC1BV,QAAStZ,EAAQiI,QAAQqR,QACzB6S,mBAAoBnsB,EAAQiI,QAAQkkB,mBACpCrS,IAAK9Z,EAAQiI,QAAQ6R,KAEvBN,QAASxZ,EAAQwZ,WAErB,IACChlB,OAAM,SAAUyP,GAMf,OALA8E,EAAUgC,UACRzK,EAAK6I,eACL,uCAGK/a,QAAQ2B,OACb,IAAIoX,EAAe,CACjB7Z,KAAM8Z,EAAOwiB,6BAA6Bt8B,KAC1C0W,QAASoD,EAAOwiB,6BAA6B5lB,QAC7CrI,KAAMyL,EAAOwiB,6BAA6BjuB,KAC1CsM,QAAS,CACPC,cAAejE,KAIvB,GACJ,EAcA+lB,EAAcx3B,UAAU0O,SAAW,WAGjC,OAFAoG,EAAsB1Z,KAAMyZ,EAAQ2iB,EAAcx3B,YAE3CpE,QAAQ0B,SACjB,EAqBApD,EAAOC,QAAUwL,EAAYE,cAAc2xB,EAE3C,EAAE,CAAC,mBAAmB,IAAI,gBAAgB,IAAI,yBAAyB,IAAI,kCAAkC,IAAI,cAAc,IAAI,2CAA2C,IAAI,iBAAiB,IAAI,WAAW,IAAI,0BAA0B,KAAK,IAAI,CAAC,SAASt8B,EAAQhB,EAAOC,GAClR,aAMA,IAAIq9B,EAAgBt8B,EAAQ,oBACxByZ,EAAiBzZ,EAAQ,0BACzB+a,EAAkB/a,EAAQ,4BAC1B8a,EAAuB9a,EAAQ,iCAC/B6a,EAA6B7a,EAAQ,uCACrCyK,EAAczK,EAAQ,2BAEtB0Z,EAAS1Z,EAAQ,YAkKrBhB,EAAOC,QAAU,CACf8G,OAAQ0E,GAjDV,SAAgB1J,GACd,IAAI8H,EAAO,aAEX,OAAOgS,EACJG,OAAO,CACNnS,KAAMA,EACNkR,OAAQhZ,EAAQgZ,OAChBkB,cAAela,EAAQka,gBAExBtT,MAAK,WACJ,IAAI+T,EAAemX,EA0BnB,OAxBAnX,EAAgBZ,EACb/U,OAAO,CACNkV,cAAela,EAAQka,cACvBlB,OAAQhZ,EAAQgZ,OAChBmB,MAAOna,EAAQma,MACfC,UAAWJ,EAAgBhV,OAAOhF,EAAQka,eAC1CpS,KAAMA,IAEPlB,MAAK,SAAUoS,GACd,IAAIkF,EAAgBlF,EAAOgC,mBAG3B,OADAhb,EAAQgZ,OAASA,EACZkF,EAAcjD,qBAAqB4N,WAMjC7P,EALErZ,QAAQ2B,OACb,IAAIoX,EAAeC,EAAOuiB,4BAKhC,IAEFl7B,EAAQ2a,cAAgBA,EACxBmX,EAAW,IAAIyJ,EAAcv7B,GAExBA,EAAQya,kBAQNqX,EAPEnX,EAAc/T,MAAK,SAAUoS,GAGlC,OAFA8Y,EAAS/Y,QAAUC,EAEZ8Y,CACT,GAIJ,GACJ,IAQEzX,QAzKY,UA4Kd,EAAE,CAAC,sCAAsC,IAAI,yBAAyB,IAAI,2BAA2B,IAAI,gCAAgC,IAAI,WAAW,IAAI,mBAAmB,IAAI,0BAA0B,KAAK,IAAI,CAAC,SAASpb,EAAQhB,EAAOC,GAC/O,aAEA,IAAIwa,EAAiBzZ,EAAQ,6BACzB0Z,EAAS1Z,EAAQ,oBACjB0+B,EAAoB1+B,EAAQ,uBAAuB0+B,kBAsCvD1/B,EAAOC,QApCP,SAAkC0/B,EAAWp+B,GAC3C,IAAI0G,EAsBJ,OApBKy3B,EAAkBt3B,eAAeu3B,GAOlB,MAATp+B,GAgBb,SAAkBo+B,EAAWp+B,GAC3B,MAAqC,WAAjCm+B,EAAkBC,GACI,iBAAVp+B,GAAuC,iBAAVA,EACD,YAAjCm+B,EAAkBC,KACF,SAAlBzvB,OAAO3O,IAAuC,UAAlB2O,OAAO3O,GAI9C,CAxB+Bq+B,CAASD,EAAWp+B,KAC/C0G,EAAM,IAAIwS,EAAe,CACvBxL,KAAMyL,EAAOmlB,0CAA0C5wB,KACvDrO,KAAM8Z,EAAOmlB,0CAA0Cj/B,KACvD0W,QACE,UACA/V,EACA,yBACAo+B,EACA,kBAfJ13B,EAAM,IAAIwS,EAAe,CACvBxL,KAAMyL,EAAOolB,sCAAsC7wB,KACnDrO,KAAM8Z,EAAOolB,sCAAsCl/B,KACnD0W,QACE,QAAUqoB,EAAY,mDAerB13B,CACT,CAcA,EAAE,CAAC,4BAA4B,IAAI,sBAAsB,IAAI,mBAAmB,MAAM,IAAI,CAAC,SAASjH,EAAQhB,EAAOC,GACnH,aAEA,IAAIykB,EAAY1jB,EAAQ,uBACpB++B,EAAS/+B,EAAQ,qBAErBhB,EAAOC,QAAU,SAAoBkc,EAAW6jB,EAAa/e,GAC3D,OACE9E,EACA,QACAuI,EAAUtI,QACV,4BACA2jB,EAAO9e,GACP,SACA+e,CAEJ,CAEA,EAAE,CAAC,oBAAoB,IAAI,sBAAsB,MAAM,IAAI,CAAC,SAASh/B,EAAQhB,EAAOC,GACpF,aAEA,IAAIggC,EAAaj/B,EAAQ,uBAAuBk/B,qBAC5CC,EAAmBn/B,EAAQ,+BAC3Bo/B,EAAiBp/B,EAAQ,6BACzBq/B,EAAiBr/B,EAAQ,8BACzBs/B,EAAwB,CAAC,QAAS,SAAU,YAG5CC,EAAsB,CACxB,SACA,SACA,QACA,SACA,WACA,QACA,QAGF,SAASC,EAAwBp2B,GAC/B,OAAK+1B,EAAiBM,sBAOpBH,EAAsBn8B,QAAQiG,EAAQs2B,UAAY,GAClDH,EAAoBp8B,QAAQiG,EAAQ6E,MAAQ,EALpB,WAAjB7E,EAAQ6E,IAOnB,CAwBA,SAAS0xB,EAA2BC,GAClC,IAAIC,EAAez2B,EAEnB,IACEy2B,EAAgB,EAChBA,EAAgBD,EAAe7/B,OAC/B8/B,IAIA,GAAIL,EAFJp2B,EAAUw2B,EAAeC,IAGvB,OAAOz2B,EAIX,OAAO,IACT,CAEApK,EAAOC,QAAU,CACf6gC,yBAA0B,SAAUC,EAAcC,GAChD,IAAIC,EAAWjxB,MAAMlK,UAAU8R,MAAM9W,KAAKigC,EAAaE,UAMvD,CAL0BN,EAA2BM,GAC5BN,EAA2BM,EAASC,YAInBh+B,SAAQ,SAAU+rB,GACrDA,GAIDmR,EAAee,kBAAkBlS,EAAMrlB,aAAa,QACtDo3B,EAAwB/R,EAAMrlB,aAAa,MAE/C,GACF,EAEAw3B,yBAA0B,SAAUC,EAAgBC,GAClD,OAAO,SAAUj2B,GACf,IAAIk2B,EAAcC,EAAeT,EAAcU,EAC3CC,EAAgBp/B,SAASq/B,eAC3B,MAAQt2B,EAAK8iB,MAAQ,IAAM9iB,EAAKu2B,UAAY,IAAMP,GAGpD,GAAKK,EAML,GAFAX,EAAeV,EAAeqB,EAAe,QAAQ,GAEjDp/B,SAASu/B,MAAM9gC,OAAS,IAAMggC,EAChCO,EAAUN,8BADZ,CAOAO,GADAR,EAAe,GAAGnpB,MAAM9W,KAAKigC,EAAaE,WACd98B,QAAQu9B,GACpCD,EAhFN,SAAiCG,EAAWE,GAC1C,OAAQF,GACN,KAAK3B,EAAW8B,KACd,MAAO,CACLC,iBAAkB,SAAUC,GAC1B,OAAOA,EAAQ,CACjB,EACAC,aAAc,GAElB,KAAKjC,EAAWkC,QACd,MAAO,CACLH,iBAAkB,SAAUC,GAC1B,OAAOA,EAAQH,EAAyB,CAC1C,EACAI,YAAa,GAKnB,MAAO,CAAC,CACV,CA4DkBE,CAAwB/2B,EAAKu2B,UAAWb,EAAahgC,QAEjE,EAAG,CAED,GADAwgC,GAAgBE,EAAUS,YACtBT,EAAUO,iBAAiBT,GAC7B,OAEFC,EAAgBT,EAAaQ,EAC/B,QAAUf,EAAwBgB,IAE9BpB,EAAee,kBAAkBK,EAAc53B,aAAa,OAC9D03B,EAAUe,oBACRb,EAAc53B,aAAa,wBAG7B43B,EAAcc,OAnBhB,CAqBF,CACF,EAGF,EAAE,CAAC,8BAA8B,IAAI,sBAAsB,IAAI,6BAA6B,IAAI,4BAA4B,MAAM,IAAI,CAAC,SAASthC,EAAQhB,EAAOC,GAC/J,aAEA,IAAIsiC,EAAgBvhC,EAAQ,uBAAuBuhC,cAEnDviC,EAAOC,QAAU,SAA4BuiC,GAC3C,IAEIC,EAFAr4B,EAAU9H,SAASC,cAAc,SACjCmgC,EAAS,CAAC,EA0Bd,MAvBoB,MAAhBF,EAAS,KACXA,EAAWA,EAAS3wB,UAAU,IAGhCzH,EAAQu4B,UAAYH,EACpBp4B,EAAQV,MAAMk5B,QAAU,kBACxBx4B,EAAQV,MAAMyE,SAAW,mBACzB/D,EAAQV,MAAMysB,KAAO,sBACrB/rB,EAAQV,MAAMiK,IAAM,sBACpBrR,SAASmf,KAAKle,YAAY6G,GAE1Bq4B,EAAiB/+B,OAAOm/B,iBAAiBz4B,GAEzCm4B,EAAcr/B,SAAQ,SAAUwG,GAC9B,IAAInI,EAAQkhC,EAAe/4B,GAEvBnI,IACFmhC,EAAOh5B,GAASnI,EAEpB,IAEAe,SAASmf,KAAK0Q,YAAY/nB,GAEnBs4B,CACT,CAEA,EAAE,CAAC,sBAAsB,MAAM,IAAI,CAAC,SAAS1hC,EAAQhB,EAAOC,GAC5D,aAEA,IAAIuJ,EAASxI,EAAQ,oBAAoBwI,OACrCuS,EAAkB/a,EAAQ,+BAC1Bqe,EAAmBre,EAAQ,gCAC3B8hC,EAAa9hC,EAAQ,wBACrB+hC,EAAU/hC,EAAQ,sBAClBgiC,EAAMhiC,EAAQ,YACd8a,EAAuB9a,EAAQ,oCAC/ByZ,EAAiBzZ,EAAQ,6BACzBiiC,EAAajiC,EAAQ,iBACrBkiC,EAAqBliC,EAAQ,2BAC7B0jB,EAAY1jB,EAAQ,uBACpB0Z,EAAS1Z,EAAQ,oBACjBmiC,EACFniC,EAAQ,uBAAuBmiC,uBAC7B1rB,EAAOzW,EAAQ,mBACfq/B,EAAiBr/B,EAAQ,8BACzBm/B,EAAmBn/B,EAAQ,+BAC3BoiC,EAAS1e,EAAU0e,OACnBx9B,EAAe5E,EAAQ,4BACvBqiC,EAAcriC,EAAQ,kBACtBqb,EAAYrb,EAAQ,uBACpBsiC,EAAgB5e,EAAU4e,cAC1B3oB,EAAU3Z,EAAQ,qBAClBuiC,EAASviC,EAAQ,oBACjBwiC,EAAexiC,EAAQ,4BACvB4Z,EAAwB5Z,EAAQ,sCAChC4kB,EAAe5kB,EAAQ,oBACvByiC,EAAeziC,EAAQ,4BACvB0iC,EAA2B1iC,EAAQ,gCACnCyK,EAAczK,EAAQ,2BACtB2iC,EAAc3iC,EAAQ,kBACtB4iC,EAAwB5iC,EAAQ,6BAA6B6iC,QA6UjE,SAASC,EAAa/hC,GACpB,IAAIgiC,EAAgBC,EAAc7nB,EAAW8E,EAASgjB,EAClDrwB,EAAO1S,KACPgjC,EAAS,CAAC,EACVC,EAAoC,CAAC,EACrCC,EAAqB,GACrBpE,EAAcvoB,IAuBlB,GArBAvW,KAAKmjC,8BAAgC76B,EAAO,CAAC,EAAGzH,GAE5CA,EAAQgZ,QAEVoB,GADA6nB,EAAejiC,EAAQgZ,OAAOgC,oBACLC,qBAAqBb,UAC9C8E,EAAU+iB,EAAa/iB,UAEvB9E,EAAYJ,EAAgBhV,OAAOhF,EAAQka,eAC3CgF,EAAU5Y,QAAQtG,EAAQkf,UAG5B/f,KAAKojC,eAAiBxoB,EAAqB/U,OAAO,CAChDgU,OAAQhZ,EAAQgZ,OAChBkB,cAAela,EAAQka,cACvBC,MAAO+E,EACP9E,UAAWA,EACXtS,KAAM,kBAGRo6B,EAAkBhB,EAAW9mB,EAAW6jB,EAAa/e,IAEhDlf,EAAQmiC,QAAiD,IAAvC7iC,OAAO4B,KAAKlB,EAAQmiC,QAAQnjC,OACjD,MAAM,IAAI0Z,EAAe,CACvBxL,KAAM2W,EAAaC,8BAA8B5W,KACjDrO,KAAMglB,EAAaC,8BAA8BjlB,KACjD0W,QAAS,iEAIb1R,EAAa9E,KAAKI,MAElBA,KAAKqjC,eAAiB,GACtBrjC,KAAKsjC,YAAc,IAAI1B,EACvB5hC,KAAKujC,QAAUP,EACfhjC,KAAKoX,OAAS,CACZ4rB,OAAQ,CAAC,EACTQ,MAAOjB,EAAa,KAGtBviC,KAAKyjC,KAAO,IAAI3B,EAAI,CAClB7wB,QAAS6tB,EACT5tB,aAAciN,EACdhN,aAAc,CAAC3O,UAGjBxC,KAAKsjC,YAAYI,6BAA4B,WAC3ChxB,EAAK+wB,KAAKnwB,UACZ,IAGKzS,EAAQgZ,OAMXsB,EAAUgC,UACRnd,KAAKojC,eACL,oCAPFjoB,EAAUgC,UACRnd,KAAKojC,eACL,oDASJjjC,OAAO4B,KAAKlB,EAAQmiC,QAAQhhC,QAC1B,SAAUC,GACR,IAAIgrB,EAAO0W,EAAmBC,EAAmBnyB,EAAOoyB,EAExD,IAAKrgB,EAAU4e,cAAcl7B,eAAejF,GAC1C,MAAM,IAAIsX,EAAe,CACvBxL,KAAMyL,EAAOsqB,gCAAgC/1B,KAC7CrO,KAAM8Z,EAAOsqB,gCAAgCpkC,KAC7C0W,QAAS,IAAMnU,EAAM,4BAazB,GAJiC,iBAFjC0hC,GAHA1W,EAAQpsB,EAAQmiC,OAAO/gC,IAGGT,WAAayrB,EAAM8W,YAG3CJ,EAAoBviC,SAASkf,cAAcqjB,KAGxCA,GAAoD,IAA/BA,EAAkBK,SAC1C,MAAM,IAAIzqB,EAAe,CACvBxL,KAAMyL,EAAOyqB,qCAAqCl2B,KAClDrO,KAAM8Z,EAAOyqB,qCAAqCvkC,KAClD0W,QAASoD,EAAOyqB,qCAAqC7tB,QACrDiE,QAAS,CACP6pB,cAAejX,EAAM8W,SACrBI,eAAgBlX,EAAMzrB,UACtB4iC,SAAUniC,KAGT,GACL0hC,EAAkBrjB,cAAc,8BAEhC,MAAM,IAAI/G,EAAe,CACvBxL,KAAMyL,EAAO6qB,qCAAqCt2B,KAClDrO,KAAM8Z,EAAO6qB,qCAAqC3kC,KAClD0W,QAASoD,EAAO6qB,qCAAqCjuB,QACrDiE,QAAS,CACP6pB,cAAejX,EAAM8W,SACrBI,eAAgBlX,EAAMzrB,UACtB4iC,SAAUniC,KAchB,GATA2hC,EAAoBD,EAEhBtB,EAAOiC,gBAAgBV,KACzBA,EAAoBvB,EAAOkC,gBACzBX,EACA,iBAIA3W,EAAMuX,WAAwC,iBAApBvX,EAAMuX,UAClC,MAAM,IAAIjrB,EAAe,CACvBxL,KAAMyL,EAAOirB,qCAAqC12B,KAClDrO,KAAM8Z,EAAOirB,qCAAqC/kC,KAClD0W,QAAS,4CACTiE,QAAS,CACP+pB,SAAUniC,KAKhB,GAAIgrB,EAAMyX,WAAwC,iBAApBzX,EAAMyX,UAClC,MAAM,IAAInrB,EAAe,CACvBxL,KAAMyL,EAAOirB,qCAAqC12B,KAClDrO,KAAM8Z,EAAOirB,qCAAqC/kC,KAClD0W,QAAS,4CACTiE,QAAS,CACP+pB,SAAUniC,KAKhBwP,EAAQowB,EAAQ,CACd9zB,KAAM9L,EACN0G,KAAM,0BAA4B1G,EAClCuG,MAAOgb,EAAUmhB,mBACjBzP,MACEjI,EAAM2X,aACN,8BAAgCphB,EAAU4e,cAAcngC,GAAK4iC,QAEjE7kC,KAAKyjC,KAAKjyB,eAAeC,GAEzBzR,KAAKqjC,eAAer+B,KAAKS,MACvBzF,KAAKqjC,eACLlB,EAAYrD,EAAartB,EAAOmyB,GAAmB,WACjDlxB,EAAK0uB,MAAMn/B,EACb,KAGFjC,KAAK8kC,iBAAiB7iC,EAAK0hC,GAC3BX,EAAO/gC,GAAO,CACZ8iC,aAActzB,EACduzB,iBAAkBrB,GAEpBE,EAAoB,IAAIrjC,SAAQ,SAAU0B,GACxC+gC,EAAkChhC,GAAOC,CAC3C,IACAghC,EAAmBl+B,KAAK6+B,GAExB7jC,KAAKoX,OAAO4rB,OAAO/gC,GAAO,CACxBgjC,SAAS,EACTC,SAAS,EACTC,oBAAoB,EACpBC,WAAW,EACX5jC,UAAWmiC,GAIb/5B,YAAW,WACT6H,EAAM/P,IAAMqhC,CACd,GAAG,EACL,EAAEpnB,KAAK3b,OAGLA,KAAKmjC,8BAA8B3B,QACrCrhC,OAAO4B,KAAK/B,KAAKmjC,8BAA8B3B,QAAQx/B,SAAQ,SAC7D+hC,GAEA,IAAItC,EAAY/uB,EAAKywB,8BAA8B3B,OAAOuC,GAEjC,iBAAdtC,IACT/uB,EAAKywB,8BAA8B3B,OAAOuC,GACxC/B,EAAmBP,GAEzB,IAGFzhC,KAAKyjC,KAAK5+B,GAAGq9B,EAAOmD,yBAAyB,SAAUl7B,GACrDu4B,EAAsBv4B,GAAQA,EAAKxI,GACrC,IAEA3B,KAAKyjC,KAAK5+B,GACRq9B,EAAOoD,qBACP7C,EAAYvC,yBAAyBpB,EAAa,CAChDgB,wBAAyB,SAAU52B,GACjCwJ,EAAK+wB,KAAK3xB,KAAKowB,EAAOmD,wBAAyB,CAC7C1jC,GAAIuH,GAER,EACAi4B,oBAAqB,SAAUoE,GAC7B7yB,EAAK0uB,MAAMmE,EACb,KAIJvlC,KAAKyjC,KAAK5+B,GAAGq9B,EAAOsD,kBAAkB,SAAUxzB,GAC9CU,EAAK0wB,eAAe37B,MAAK,SAAUoS,GACjC7H,EAAM6H,EACR,GACF,IAEA7Z,KAAKyjC,KAAK5+B,GAAGq9B,EAAOuD,2BAA2B,WAC7CtqB,EAAUgC,UAAUzK,EAAK0wB,eAAgB,8BAC3C,IAEApjC,KAAKyjC,KAAK5+B,GAAGq9B,EAAOwD,eAAe,SAAUxZ,GAC3CxZ,EAAKrN,MAAM,eAAgB,CACzB6mB,IAAKA,GAET,IAEA2W,EAAiBj5B,YAAW,WAC1BuR,EAAUgC,UACRzK,EAAK0wB,eACL,uCAEF1wB,EAAKrN,MAAM,UACb,GAAG48B,GAEHzhC,QAAQ6G,IAAI67B,GAAoBz7B,MAAK,SAAU2F,GAC7C,IAm3B2C/E,EACzCs9B,EAp3BE3zB,EAAQ5E,EAAQ,GAEpBw4B,aAAa/C,GACb7wB,GAg3B2C3J,EA/2BHqK,EAAKywB,+BAg3B3CwC,EAAkBr9B,EAAO,CAAC,EAAGD,IAEjB26B,OAAS16B,EAAO,CAAC,EAAGq9B,EAAgB3C,QACpD7iC,OAAO4B,KAAK4jC,EAAgB3C,QAAQhhC,SAAQ,SAAUirB,GACpD0Y,EAAgB3C,OAAO/V,GAAS3kB,EAAO,CAAC,EAAGq9B,EAAgB3C,OAAO/V,WAC3D0Y,EAAgB3C,OAAO/V,GAAOzrB,SACvC,IAEOmkC,IAr3BLjzB,EAAKmzB,0BAELnzB,EAAKrN,MAAM,QACb,IAEArF,KAAKyjC,KAAK5+B,GAAGq9B,EAAO4D,aAAa,SAAU37B,EAAM6H,GAC/CixB,EAAkC94B,EAAK8iB,OAAOjb,EAChD,IAEAhS,KAAKyjC,KAAK5+B,GAAGq9B,EAAO6D,YA/TtB,SAAiC/C,GAC/B,OAAO,SAAU/sB,GACf,IAAIgX,EACA+Y,EAAkB/vB,EAAU+vB,gBAC5BC,EAAYD,EAAgBC,UAC5BzkC,EAAYwhC,EAAOiD,GAAWjB,iBAElC7kC,OAAO4B,KAAKikC,EAAgBhD,QAAQhhC,SAAQ,SAAUC,GACpD+jC,EAAgBhD,OAAO/gC,GAAKT,UAAYwhC,EAAO/gC,GAAK+iC,gBACtD,IAEA/X,EAAQ+Y,EAAgBhD,OAAOiD,GAE/BzkC,EAAU0kC,UAAUC,OAClB3iB,EAAU4iB,gBAAgBC,QAC1BpZ,EAAMmY,WAER5jC,EAAU0kC,UAAUC,OAAO3iB,EAAU4iB,gBAAgBE,MAAOrZ,EAAMiY,SAElE1jC,EAAU0kC,UAAUC,OAClB3iB,EAAU4iB,gBAAgBG,SACzBtZ,EAAMkY,oBAITnlC,KAAKoX,OAAS,CACZosB,MAAOwC,EAAgBxC,MACvBR,OAAQgD,EAAgBhD,QAG1BhjC,KAAKqF,MAAM4Q,EAAUlI,KAAMi4B,EAC7B,CACF,CA+RmCQ,CAAwBxD,GAAQrnB,KAAK3b,OAEtEA,KAAKsjC,YAAYI,6BAA4B,WAC3C,IAAIrK,EAAGoN,EAAMC,EAEb,IAAKrN,EAAI,EAAGA,EAAI3mB,EAAK2wB,eAAexjC,OAAQw5B,KAE1CqN,GADAD,EAAO/zB,EAAK2wB,eAAehK,IACbrI,YAEPC,YAAYwV,GAEnBC,EAAOR,UAAUS,OACfnjB,EAAU4iB,gBAAgBC,QAC1B7iB,EAAU4iB,gBAAgBG,QAC1B/iB,EAAU4iB,gBAAgBE,MAGhC,IAEAtmC,KAAKsjC,YAAYI,6BAA4B,WAC3ChB,GACF,IAEA1iC,KAAKsjC,YAAYI,6BAA4B,WAC3C,IAAIkD,EAAcntB,EAAQmpB,EAAah+B,WAAWgO,OAChD6G,EAAQ/U,EAAaE,YAGvB8U,EAAsBhH,EAAMk0B,EAC9B,GACF,CAEAliC,EAAaiB,YAAYi9B,GAEzBA,EAAah+B,UAAUkgC,iBAAmB,SAAU/2B,EAAMvM,GACxD,IAAIqlC,EAAQxnC,EACRqT,EAAO1S,KACP8mC,EAAWxE,EAAa9gC,GAE5B,GAAoB,MAAhBA,EAAUG,GAAd,CA2BA,IAlBAklC,EAAS/3B,MAAMlK,UAAU8R,MAAM9W,KAC7BwB,SAAS2lC,iBAAiB,cAAgBvlC,EAAUG,GAAK,OAEvDmlC,IAAa1lC,WAEfylC,EAASA,EAAOj0B,OACd9D,MAAMlK,UAAU8R,MAAM9W,KACpBknC,EAASC,iBAAiB,cAAgBvlC,EAAUG,GAAK,SAO/DklC,GAFAA,EAASA,EAAOj0B,OAAOusB,EAAe39B,EAAW,WAEjCsJ,QAAO,SAAU+5B,EAAO9D,EAAOtoB,GAC7C,OAAOA,EAAIxV,QAAQ4hC,KAAW9D,CAChC,IAEK1hC,EAAI,EAAGA,EAAIwnC,EAAOhnC,OAAQR,IAC7BwnC,EAAOxnC,GAAG+C,iBAAiB,QAAS4kC,GAAc,GAGpDhnC,KAAKsjC,YAAYI,6BAA4B,WAC3C,IAAKrkC,EAAI,EAAGA,EAAIwnC,EAAOhnC,OAAQR,IAC7BwnC,EAAOxnC,GAAGoV,oBAAoB,QAASuyB,GAAc,EAEzD,GAjCA,CAEA,SAASA,IACPt0B,EAAK0uB,MAAMrzB,EACb,CA8BF,EAEA60B,EAAah+B,UAAUqiC,sBAAwB,WAC7C,IAAIv0B,EAAO1S,KAEX,OAAOG,OAAO4B,KAAK/B,KAAKujC,SAASpzB,QAAO,SAAU+2B,EAAOja,GACvD,OAAOia,GAASx0B,EAAK6wB,QAAQtW,GAAO+X,gBACtC,GAAG,KACL,EAEApC,EAAah+B,UAAUihC,wBAA0B,WAC/C,IAAIsB,EAAiBtH,EAEjBz+B,SAASu/B,MAAM9gC,OAAS,EAC1BG,KAAKyjC,KAAK3xB,KAAKowB,EAAOmD,0BAEtB8B,EAAkBnnC,KAAKinC,yBACvBpH,EAAeV,EAAegI,EAAiB,QAAQ,IAGrD1E,EAAY7C,yBACVC,EACA,SAAUl+B,GACR3B,KAAKyjC,KAAK3xB,KAAKowB,EAAOmD,wBAAyB,CAC7C1jC,GAAIA,GAER,EAAEga,KAAK3b,OAGTA,KAAKyjC,KAAK3xB,KAAKowB,EAAOmD,yBAG5B,EAEAzC,EAAah+B,UAAUwiC,qCAAuC,SAAUrgC,GAGlEA,EAAIsT,SACJtT,EAAIsT,QAAQgtB,kBACZtgC,EAAIsT,QAAQgtB,iBAAiBxnC,OAAS,IAK1CkH,EAAIsT,QAAQitB,cAAgB,CAAC,EAC7BvgC,EAAIsT,QAAQgtB,iBAAiBrlC,QAC3B,SAAUirB,GACRlmB,EAAIsT,QAAQitB,cAAcra,GAASjtB,KAAKujC,QAAQtW,GAAO+X,gBACzD,EAAErpB,KAAK3b,OAEX,EAYA4iC,EAAah+B,UAAU2iC,cAAgB,WACrC,OAAOvnC,KAAKojC,eAAe37B,MAAK,SAAUoS,GACxC,OAAOA,EAAOgC,mBAAmBC,qBAAqBuN,UACxD,GACF,EAYAuZ,EAAah+B,UAAU4iC,sBAAwB,WAC7C,OAAOxnC,KAAKojC,eAAe37B,MAAK,SAAUoS,GAgBxC,OAfYA,EACTgC,mBACAC,qBAAqB0F,YAAY+H,mBAAmBjc,KAAI,SACvDR,GAEA,MAAiB,eAAbA,EAIK,aAGFA,CACT,GAGJ,GACF,EAgBA81B,EAAah+B,UAAU0O,SAAW,WAChC,IAAIZ,EAAO1S,KAEX,OAAO,IAAIQ,SAAQ,SAAU0B,EAASC,GACpCuQ,EAAK4wB,YAAYhwB,UAAS,SAAUvM,GAClCoU,EAAUgC,UACRzK,EAAK0wB,eACL,2CAGEr8B,EACF5E,EAAO4E,GAEP7E,GAEJ,GACF,GACF,EA8JA0gC,EAAah+B,UAAU2Y,SAAW,SAAU1c,GAC1C,IAAI6R,EAAO1S,KAMX,OAJKa,IACHA,EAAU,CAAC,GAGN,IAAIL,SAAQ,SAAU0B,EAASC,GACpCuQ,EAAK+wB,KAAK3xB,KAAKowB,EAAOuF,qBAAsB5mC,GAAS,SAAUqc,GAC7D,IAAInW,EAAMmW,EAAS,GACf9K,EAAU8K,EAAS,GAEnBnW,GACF2L,EAAK00B,qCAAqCrgC,GAC1C5E,EAAO,IAAIoX,EAAexS,KAE1B7E,EAAQkQ,EAEZ,GACF,GACF,EAiBAwwB,EAAah+B,UAAU8iC,SAAW,SAAUza,EAAO0a,GACjD,IAAI5gC,EA2BJ,OAzBKq7B,EAAcl7B,eAAe+lB,GAStBjtB,KAAKujC,QAAQr8B,eAAe+lB,GAUtCjtB,KAAKyjC,KAAK3xB,KAAKowB,EAAO0F,UAAW,CAC/B3a,MAAOA,EACP0a,UAAWA,IAXb5gC,EAAM,IAAIwS,EAAe,CACvBxL,KAAMyL,EAAOquB,gCAAgC95B,KAC7CrO,KAAM8Z,EAAOquB,gCAAgCnoC,KAC7C0W,QACE,wBACA6W,EACA,yEAfJlmB,EAAM,IAAIwS,EAAe,CACvBxL,KAAMyL,EAAOsuB,4BAA4B/5B,KACzCrO,KAAM8Z,EAAOsuB,4BAA4BpoC,KACzC0W,QACE,IACA6W,EACA,mFAkBFlmB,EACKvG,QAAQ2B,OAAO4E,GAGjBvG,QAAQ0B,SACjB,EAqBA0gC,EAAah+B,UAAUmjC,YAAc,SAAU9a,EAAO0a,GACpD,IAAI5gC,EA2BJ,OAzBKq7B,EAAcl7B,eAAe+lB,GAStBjtB,KAAKujC,QAAQr8B,eAAe+lB,GAUtCjtB,KAAKyjC,KAAK3xB,KAAKowB,EAAO8F,aAAc,CAClC/a,MAAOA,EACP0a,UAAWA,IAXb5gC,EAAM,IAAIwS,EAAe,CACvBxL,KAAMyL,EAAOquB,gCAAgC95B,KAC7CrO,KAAM8Z,EAAOquB,gCAAgCnoC,KAC7C0W,QACE,6BACA6W,EACA,yEAfJlmB,EAAM,IAAIwS,EAAe,CACvBxL,KAAMyL,EAAOsuB,4BAA4B/5B,KACzCrO,KAAM8Z,EAAOsuB,4BAA4BpoC,KACzC0W,QACE,IACA6W,EACA,qFAkBFlmB,EACKvG,QAAQ2B,OAAO4E,GAGjBvG,QAAQ0B,SACjB,EAqCA0gC,EAAah+B,UAAU9C,aAAe,SAAUjB,GAC9C,IAAIonC,EAAclhC,EAkClB,OAhCKq7B,EAAcl7B,eAAerG,EAAQosB,OAS9BjtB,KAAKujC,QAAQr8B,eAAerG,EAAQosB,QAU9Cgb,EAAezF,EAAyB3hC,EAAQ49B,UAAW59B,EAAQR,QAGjE0G,EAAMkhC,EAENjoC,KAAKyjC,KAAK3xB,KAAKowB,EAAOgG,cAAe,CACnCjb,MAAOpsB,EAAQosB,MACfwR,UAAW59B,EAAQ49B,UACnBp+B,MAAOQ,EAAQR,QAjBnB0G,EAAM,IAAIwS,EAAe,CACvBxL,KAAMyL,EAAOquB,gCAAgC95B,KAC7CrO,KAAM8Z,EAAOquB,gCAAgCnoC,KAC7C0W,QACE,6BACAvV,EAAQosB,MACR,yEAfJlmB,EAAM,IAAIwS,EAAe,CACvBxL,KAAMyL,EAAOsuB,4BAA4B/5B,KACzCrO,KAAM8Z,EAAOsuB,4BAA4BpoC,KACzC0W,QACE,IACAvV,EAAQosB,MACR,yFAyBFlmB,EACKvG,QAAQ2B,OAAO4E,GAGjBvG,QAAQ0B,SACjB,EA2BA0gC,EAAah+B,UAAUujC,gBAAkB,SAAUtnC,GACjD,IAEIunC,EAFA11B,EAAO1S,KACPqoC,EAAkBroC,KAAKmjC,8BAA8BH,OASzD,OANKqF,EAAgBrc,gBAETqc,EAAgBrc,gBAAgBsc,SAC1CF,EAAe,oDAFfA,EAAe,4DAKbA,EACK5nC,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAOirB,qCAAqC12B,KAClDrO,KAAM8Z,EAAOirB,qCAAqC/kC,KAClD0W,QAASgyB,KAKR,IAAI5nC,SAAQ,SAAU0B,GAC3BwQ,EAAK+wB,KAAK3xB,KAAKowB,EAAOqG,kBAAmB1nC,EAASqB,EACpD,GACF,EAwBA0gC,EAAah+B,UAAU4jC,WAAa,SAAU3nC,GAC5Cb,KAAKyjC,KAAK3xB,KAAKowB,EAAOuG,YAAa,CACjCxb,MAAOpsB,EAAQosB,MACf7W,QAASvV,EAAQuV,SAErB,EAuBAwsB,EAAah+B,UAAUwE,gBAAkB,SAAUvI,GACjD,IAAIonC,EAAclhC,EAiClB,OA/BKq7B,EAAcl7B,eAAerG,EAAQosB,OAS9BjtB,KAAKujC,QAAQr8B,eAAerG,EAAQosB,QAU9Cgb,EAAezF,EAAyB3hC,EAAQ49B,YAG9C13B,EAAMkhC,EAENjoC,KAAKyjC,KAAK3xB,KAAKowB,EAAOwG,iBAAkB,CACtCzb,MAAOpsB,EAAQosB,MACfwR,UAAW59B,EAAQ49B,YAhBvB13B,EAAM,IAAIwS,EAAe,CACvBxL,KAAMyL,EAAOquB,gCAAgC95B,KAC7CrO,KAAM8Z,EAAOquB,gCAAgCnoC,KAC7C0W,QACE,gCACAvV,EAAQosB,MACR,yEAfJlmB,EAAM,IAAIwS,EAAe,CACvBxL,KAAMyL,EAAOsuB,4BAA4B/5B,KACzCrO,KAAM8Z,EAAOsuB,4BAA4BpoC,KACzC0W,QACE,IACAvV,EAAQosB,MACR,0FAwBFlmB,EACKvG,QAAQ2B,OAAO4E,GAGjBvG,QAAQ0B,SACjB,EAYA0gC,EAAah+B,UAAU+jC,eAAiB,SAAU1b,EAAO2b,GACvD,OAAO5oC,KAAK8B,aAAa,CACvBmrB,MAAOA,EACPwR,UAAW,cACXp+B,MAAOuoC,GAEX,EAoBAhG,EAAah+B,UAAUikC,MAAQ,SAAU5b,GACvC,IAAIlmB,EA0BJ,OAxBKq7B,EAAcl7B,eAAe+lB,GAStBjtB,KAAKujC,QAAQr8B,eAAe+lB,GAUtCjtB,KAAKyjC,KAAK3xB,KAAKowB,EAAO4G,YAAa,CACjC7b,MAAOA,IAVTlmB,EAAM,IAAIwS,EAAe,CACvBxL,KAAMyL,EAAOquB,gCAAgC95B,KAC7CrO,KAAM8Z,EAAOquB,gCAAgCnoC,KAC7C0W,QACE,iBACA6W,EACA,yEAfJlmB,EAAM,IAAIwS,EAAe,CACvBxL,KAAMyL,EAAOsuB,4BAA4B/5B,KACzCrO,KAAM8Z,EAAOsuB,4BAA4BpoC,KACzC0W,QACE,IACA6W,EACA,qFAiBFlmB,EACKvG,QAAQ2B,OAAO4E,GAGjBvG,QAAQ0B,SACjB,EAuBA0gC,EAAah+B,UAAUw8B,MAAQ,SAAUnU,GACvC,IAAIlmB,EACAgiC,EAAc/oC,KAAKujC,QAAQtW,GAuC/B,OArCKmV,EAAcl7B,eAAe+lB,GAStBjtB,KAAKujC,QAAQr8B,eAAe+lB,IAUtC8b,EAAYhE,aAAa3D,QAEzBphC,KAAKyjC,KAAK3xB,KAAKowB,EAAO8G,oBAAqB,CACzC/b,MAAOA,IAGLgS,EAAiB/7B,SAInB0G,YAAW,WA7lCjB,IAAyB68B,EACnBwC,EACAC,EACAC,EAHmB1C,EA8lCIsC,EAAY/D,iBA7lCnCiE,EAAcxC,EAAK2C,wBACnBF,EAAmB3/B,KAAK2nB,MAAM+X,EAAYjU,OAAS,GACnDmU,EAAqB5/B,KAAK2nB,MAAM+X,EAAYlU,MAAQ,GAGtDkU,EAAYx2B,KACTjQ,OAAO6mC,YAAcH,GACpB9nC,SAASkoC,gBAAgBC,aAAeL,IAC5CD,EAAYO,MAAQL,GACpBF,EAAYQ,OAASP,GACrBD,EAAYhU,MACTzyB,OAAOknC,WAAaP,GACnB/nC,SAASkoC,gBAAgBK,YAAcR,IAklCrCJ,EAAY/D,iBAAiB4E,gBAEjC,GAr5CqB,IA83CvB7iC,EAAM,IAAIwS,EAAe,CACvBxL,KAAMyL,EAAOquB,gCAAgC95B,KAC7CrO,KAAM8Z,EAAOquB,gCAAgCnoC,KAC7C0W,QACE,iBACA6W,EACA,yEAfJlmB,EAAM,IAAIwS,EAAe,CACvBxL,KAAMyL,EAAOsuB,4BAA4B/5B,KACzCrO,KAAM8Z,EAAOsuB,4BAA4BpoC,KACzC0W,QACE,IACA6W,EACA,qFA8BFlmB,EACKvG,QAAQ2B,OAAO4E,GAGjBvG,QAAQ0B,SACjB,EAaA0gC,EAAah+B,UAAUilC,SAAW,WAChC,OAAO7pC,KAAKoX,MACd,EAmBAtY,EAAOC,QAAUwL,EAAYE,cAAcm4B,EAE3C,EAAE,CAAC,sBAAsB,IAAI,mBAAmB,IAAI,4BAA4B,IAAI,sBAAsB,IAAI,qCAAqC,IAAI,8BAA8B,IAAI,mCAAmC,IAAI,uBAAuB,IAAI,mBAAmB,IAAI,2BAA2B,IAAI,+BAA+B,IAAI,oBAAoB,IAAI,mBAAmB,IAAI,8BAA8B,IAAI,sBAAsB,IAAI,mBAAmB,IAAI,6BAA6B,IAAI,4BAA4B,IAAI,2BAA2B,IAAI,+BAA+B,IAAI,gBAAgB,IAAI,iBAAiB,IAAI,0BAA0B,IAAI,iBAAiB,IAAI,2BAA2B,GAAG,qBAAqB,GAAG,kBAAkB,GAAG,0BAA0B,GAAG,SAAW,KAAK,IAAI,CAAC,SAAS9iC,EAAQhB,EAAOC,GAC10B,aAEA,IAAImgC,EAAiBp/B,EAAQ,6BACzBi/B,EAAaj/B,EAAQ,uBAAuBk/B,qBAEhDlgC,EAAOC,QAAU,SAAqB4C,EAAI8P,EAAOjQ,EAAWsoC,GAC1D,IAAIC,EAAYt4B,EAAM/I,aAAa,QAC/BshC,EAAY5oC,SAASC,cAAc,OACnC4oC,EAAW7oC,SAAS8oC,yBACpBC,EAAuBjL,EAAekL,SACxCzoC,EACAooC,EACAhL,EAAW8B,KACXiJ,GAEEO,EAAsBnL,EAAekL,SACvCzoC,EACAooC,EACAhL,EAAWkC,QACX6I,GAYF,OATAE,EAAUxhC,MAAMqgC,MAAQ,OAExBoB,EAAS5nC,YAAY8nC,GACrBF,EAAS5nC,YAAYoP,GACrBw4B,EAAS5nC,YAAYgoC,GACrBJ,EAAS5nC,YAAY2nC,GAErBxoC,EAAUa,YAAY4nC,GAEf,CAACx4B,EAAOu4B,EACjB,CAEA,EAAE,CAAC,sBAAsB,IAAI,4BAA4B,MAAM,IAAI,CAAC,SAASlqC,EAAQhB,EAAOC,GAC5F,aAGA,IAAI6jC,EAAe9iC,EAAQ,4BACvB6a,EAA6B7a,EAAQ,uCACrC0Z,EAAS1Z,EAAQ,mBACjBwqC,EAA0BxqC,EAAQ,8CAClCyK,EAAczK,EAAQ,2BACtByZ,EAAiBzZ,EAAQ,0BAkT7BhB,EAAOC,QAAU,CAyCfurC,wBAAyBA,EACzBzkC,OAAQ0E,GA/DV,SAAgB1J,GACd,OAAO8Z,EACJG,OAAO,CACNnS,KAAM,gBACNoS,cAAela,EAAQka,cACvBlB,OAAQhZ,EAAQgZ,SAEjBpS,MAAK,WACJ,IAAIya,EAAc,IAAI0gB,EAAa/hC,GAEnC,OAAO,IAAIL,SAAQ,SAAU0B,EAASC,GACpC+f,EAAYrd,GAAG,SAAS,WACtB3C,EAAQggB,EACV,IACAA,EAAYrd,GAAG,WAAW,WACxB1C,EAAO,IAAIoX,EAAeC,EAAO+wB,uBACnC,GACF,GACF,GACJ,IAiDErvB,QAhWY,UAmWd,EAAE,CAAC,sCAAsC,IAAI,yBAAyB,IAAI,2BAA2B,IAAI,kBAAkB,IAAI,0BAA0B,GAAG,6CAA6C,KAAK,IAAI,CAAC,SAASpb,EAAQhB,EAAOC,GAC3O,aAEA,IAAIkF,EAAYnE,EAAQ,2CACpB0qC,EAAa1qC,EAAQ,6CACrBoD,EAAQpD,EAAQ,uCAChBoE,EAAWpE,EAAQ,0CAUvBhB,EAAOC,QAAU,CACfkF,UAAWA,EACXumC,WAAYA,EACZC,YAPF,WACE,OAAOvmC,KAAchB,GACvB,EAMEwnC,UAAW5qC,EAAQ,2CACnBoD,MAAOA,EACPQ,aAAc5D,EAAQ,+CACtBy/B,oBAfF,WACE,OAAOt7B,KAAeumC,KAAgBtnC,GACxC,EAgBA,EAAE,CAAC,0CAA0C,GAAG,yCAAyC,GAAG,4CAA4C,GAAG,0CAA0C,GAAG,sCAAsC,GAAG,8CAA8C,KAAK,IAAI,CAAC,SAASpD,EAAQhB,EAAOC,GACjT,aAEA,IAAI4rC,EAAY7qC,EAAQ,uBACpB0Z,EAAS1Z,EAAQ,YAGjB0jB,EAAY,CACdtI,QAHY,UAIZ0vB,qBAAsB,GACtBC,eAAgB,CACdC,MAAO,QACPC,KAAM,OACNC,MAAO,QACPC,UAAW,WACXC,gBAAiB,iBACjBC,iBAAkB,kBAEpBC,kBAAmB,CACjBpd,OAAQ,GACRqd,WAAY,EACZzd,eAAgB,EAChB5B,gBAAiB,EACjBC,eAAgB,EAChBgC,IAAK,GAEPmY,gBAAiB,CACfC,QAAS,kCACTE,QAAS,kCACTD,MAAO,iCAETtH,qBAAsB,CACpB6B,KAAM,SACNI,QAAS,SAEX0D,mBAAoB,CAClB2G,OAAQ,OACRvW,MAAO,OACPC,OAAQ,OACRuW,MAAO,QAETC,uBAAwB,CACtB,MAAOhyB,EAAOiyB,6CAId,MAAOjyB,EAAOkyB,oDAEhBrK,cAAe,CACb,kBACA,kBACA,0BACA,2BACA,kBACA,qBACA,qBACA,yBACA,8BACA,qBACA,aACA,aACA,QACA,YACA,OACA,cACA,YACA,mBACA,eACA,aACA,eACA,0BACA,oBACA,0BACA,yBACA,uBACA,cACA,iBACA,cACA,SACA,aACA,eACA,gBACA,cACA,UACA,UACA,UACA,cACA,gBACA,iBACA,eACA,aACA,cACA,cAEFe,cAAe,CACbrW,eAAgB,CACdpjB,KAAM,kBACNk8B,MAAO,mBAET7W,OAAQ,CACNrlB,KAAM,qBACNk8B,MAAO,sBAET5W,IAAK,CACHtlB,KAAM,MACNk8B,MAAO,OAETjX,eAAgB,CACdjlB,KAAM,aACNk8B,MAAO,mBAET7Y,gBAAiB,CACfrjB,KAAM,mBACNk8B,MAAO,oBAET5Y,eAAgB,CACdtjB,KAAM,kBACNk8B,MAAO,mBAETwG,WAAY,CACV1iC,KAAM,cACNk8B,MAAO,gBAGXrG,kBAAmB,CACjB,eAAgB,UAChB,gBAAiB,UACjBmN,SAAU,UACV/C,YAAa,UAEfgD,qBAAsB,CACpB,kBAAmB,UACnB,qBAAsB,YACtBC,WAAY,SACZ,mBAAoB,eACpB,kBAAmB,cACnB5d,IAAK,SACL,cAAe,wBAInBzK,EAAU0e,OAASyI,EACjB,CACE,YACA,0BACA,gBACA,4BACA,cACA,gBACA,cACA,cACA,mBACA,mBACA,eACA,0BACA,gBACA,cACA,oBACA,uBACA,uBACA,sBACA,mBAEF,kBAGF7rC,EAAOC,QAAUykB,CAEjB,EAAE,CAAC,sBAAsB,IAAI,WAAW,MAAM,IAAI,CAAC,SAAS1jB,EAAQhB,EAAOC,GAC3E,aAsCA,IAAIwa,EAAiBzZ,EAAQ,6BAE7BhB,EAAOC,QAAU,CACfwrC,sBAAuB,CACrBx8B,KAAMwL,EAAehL,MAAM+c,QAC3B5rB,KAAM,wBACN0W,QAAS,sDAEX0tB,gCAAiC,CAC/B/1B,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,mCAERukC,qCAAsC,CACpCl2B,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,uCACN0W,QAAS,iDAEXiuB,qCAAsC,CACpCt2B,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,uCACN0W,QAAS,gDAEX0xB,4BAA6B,CAC3B/5B,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,+BAERmoC,gCAAiC,CAC/B95B,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,mCAERosC,yCAA0C,CACxC/9B,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,2CACN0W,QAAS,0CAEXq1B,6CAA8C,CAC5C19B,KAAMwL,EAAehL,MAAMw9B,SAC3BrsC,KAAM,+CACN0W,QAAS,4DAEXs1B,mDAAoD,CAClD39B,KAAMwL,EAAehL,MAAMw9B,SAC3BrsC,KAAM,qDACN0W,QAAS,gDAEX41B,kCAAmC,CACjCj+B,KAAMwL,EAAehL,MAAMw9B,SAC3BrsC,KAAM,oCACN0W,QAAS,+CAEX61B,2BAA4B,CAC1Bl+B,KAAMwL,EAAehL,MAAMw9B,SAC3BrsC,KAAM,6BACN0W,QAAS,4DAEX81B,6BAA8B,CAC5Bn+B,KAAMwL,EAAehL,MAAMw9B,SAC3BrsC,KAAM,+BACN0W,QACE,+EAEJwoB,sCAAuC,CACrC7wB,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,yCAERi/B,0CAA2C,CACzC5wB,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,6CAER+kC,qCAAsC,CACpC12B,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,wCAIV,EAAE,CAAC,4BAA4B,MAAM,IAAI,CAAC,SAASI,EAAQhB,EAAOC,GAClE,aAiBAD,EAAOC,QAfP,SAAwBmK,EAASijC,GAI/B,IAHA,IAAIzF,EAASx9B,EAAQ8nB,WACjBob,EAAU,GAEG,MAAV1F,GACiB,MAAlBA,EAAOlH,SAAmBkH,EAAOlH,QAAQ9W,gBAAkByjB,GAC7DC,EAAQpnC,KAAK0hC,GAGfA,EAASA,EAAO1V,WAGlB,OAAOob,CACT,CAIA,EAAE,CAAC,GAAG,IAAI,CAAC,SAAStsC,EAAQhB,EAAOC,GACnC,aAEA,IAAIkgC,EAAmBn/B,EAAQ,uBAC3B0jB,EAAY1jB,EAAQ,eACpBsiC,EAAgBjiC,OAAO4B,KAAKyhB,EAAU4e,eACtCrD,EAAavb,EAAUwb,qBAEvBE,EAAiB,CACnBkL,SAAU,SAAUjK,EAAgBpyB,EAAM2yB,EAAW5tB,GACnD,IAAIib,EAAQ3sB,SAASC,cAAc,SAcnC,OAFE49B,EAAiBM,uBAAyBN,EAAiByL,aAM7D3c,EAAMjsB,aAAa,cAAe,QAClCisB,EAAMjsB,aAAa,eAAgB,OACnCisB,EAAMjsB,aAAa,2BAA4B4+B,GAC/C3S,EAAMjsB,aAAa,sBAAuBiM,GAC1CggB,EAAMjsB,aACJ,KACA,MAAQiM,EAAO,IAAM2yB,EAAY,IAAMP,GAEzCpS,EAAMjsB,aACJ,QACAd,KAAKC,UA3BoB,CACzBqqC,OAAQ,kBACR5J,QAAS,mBACT1M,OAAQ,iBACRC,KAAM,kBACNoX,QAAS,eACTp/B,SAAU,sBACVwF,IAAK,kBACLsiB,MAAO,mBAoBJ1rB,QAAQ,SAAU,IAClBA,QAAQ,KAAM,MAGnB0kB,EAAMmY,UAAUoG,IAAI,mBAEpBve,EAAM3rB,iBAAiB,SAAS,SAAU0C,GACxCgO,EAAQhO,GAWHm6B,EAAiBM,uBACpBxR,EAAMwe,MAEV,IAEOxe,GArCE3sB,SAAS8oC,wBAsCpB,EACAvH,QAAS,SAAU6J,GACjB,IAAIC,EAECD,EAIHC,EAAc,CAACrrC,SAASq/B,eAAe+L,KAHvCC,EAAcrrC,SAAS2lC,iBAAiB,8BACxC0F,EAAc,GAAG/1B,MAAM9W,KAAK6sC,IAK9BA,EAAYzqC,SAAQ,SAAUykC,GAE1BA,GACkB,IAAlBA,EAAKzC,UACL9E,EAAee,kBAAkBwG,EAAK/9B,aAAa,QAEnD+9B,EAAKzV,WAAWC,YAAYwV,EAEhC,GACF,EACAxG,kBAAmB,SAAUuM,GAC3B,IAAIE,EAAcC,EAAaC,EAAeC,EAE9C,QAAKL,MAILE,EAAeF,EAAS7rB,MAAM,MAEb9gB,OAAS,KAI1B8sC,EAAkC,OAApBD,EAAa,GAC3BE,EAAgBxK,EAAcn/B,QAAQypC,EAAa,KAAO,EAC1DG,EACEH,EAAa,KAAO3N,EAAW8B,MAC/B6L,EAAa,KAAO3N,EAAWkC,QAE1B95B,QAAQwlC,GAAeC,GAAiBC,GACjD,GAGF/tC,EAAOC,QAAUmgC,CAEjB,EAAE,CAAC,sBAAsB,IAAI,cAAc,MAAM,IAAI,CAAC,SAASp/B,EAAQhB,EAAOC,GAC9E,aAEA,IAAImO,EAAiBpN,EAAQ,oBAE7BhB,EAAOC,QAAU,SAAUivB,GACzB,IAAI5gB,EAAUF,EAAe8gB,GAY7B,OAVA5gB,EAAQpL,SAAQ,SAAU8qC,GAKN,eAAdA,EAAK/+B,OACP++B,EAAK/+B,KAAO,cAEhB,IAEOX,CACT,CAEA,EAAE,CAAC,mBAAmB,KAAK,IAAI,CAAC,SAAStN,EAAQhB,EAAOC,GACxD,aAsCA,IAAIguC,EAAkBjtC,EAAQ,sBAC1Bsc,EAAWtc,EAAQ,eACnB+Z,EAAS/Z,EAAQ,YACjBktC,EAAgBltC,EAAQ,oBACxBmtC,EAAentC,EAAQ,mBACvBotC,EAAeptC,EAAQ,mBACvBooB,EAAapoB,EAAQ,gBACrBoc,EAAiBpc,EAAQ,qBACzBoqB,EAASpqB,EAAQ,YACjBqtC,EAAiBrtC,EAAQ,qBACzBstC,EAAgBttC,EAAQ,oBACxButC,EAAOvtC,EAAQ,UACf2pB,EAAe3pB,EAAQ,oBACvB4P,EAAW5P,EAAQ,cACnB8qB,EAAgB9qB,EAAQ,qBACxBwtC,EAAextC,EAAQ,mBACvB8oB,EAAQ9oB,EAAQ,WAChBkoB,EAAeloB,EAAQ,mBACvBytC,EAA0BztC,EAAQ,+BAGtChB,EAAOC,QAAU,CAEfguC,gBAAiBA,EAEjB3wB,SAAUA,EAEVvC,OAAQA,EAERmzB,cAAeA,EAEfC,aAAcA,EAEdC,aAAcA,EAEdhlB,WAAYA,EAEZklB,cAAeA,EAEflxB,eAAgBA,EAEhBgO,OAAQA,EAERijB,eAAgBA,EAEhB1jB,aAAcA,EAEd/Z,SAAUA,EAEVkb,cAAeA,EAEf0iB,aAAcA,EAEd1kB,MAAOA,EAEPZ,aAAcA,EAEdqlB,KAAMA,EAENE,wBAAyBA,EAKzBryB,QA7CY,UAgDd,EAAE,CAAC,qBAAqB,GAAG,cAAc,GAAG,WAAW,GAAG,mBAAmB,GAAG,mBAAmB,IAAI,kBAAkB,IAAI,kBAAkB,IAAI,eAAe,IAAI,oBAAoB,IAAI,WAAW,IAAI,oBAAoB,IAAI,8BAA8B,IAAI,SAAS,IAAI,mBAAmB,IAAI,aAAa,IAAI,oBAAoB,IAAI,kBAAkB,IAAI,UAAU,IAAI,kBAAkB,MAAM,IAAI,CAAC,SAASpb,EAAQhB,EAAOC,GAC7a,aAEA,IAAIuf,EAA0Bxe,EAAQ,+BAClC0tC,EAAY1tC,EAAQ,gBACpB0jB,EAAY1jB,EAAQ,eA2BxBhB,EAAOC,QAzBP,SAAqBggB,EAAe5U,GAClC,IAAIlI,EACAX,EAAQ6I,EAAOqjC,EAAUrjC,GAAQ,CAAC,EAClCsjC,EAAYnvB,EAAwBS,EAAchE,eAAezZ,MACjE0Y,EAAQwzB,EAAUzuB,EAAc8C,mBAIpC,IAAK5f,KAFLX,EAAM4iB,wBAA0BV,EAAUW,0BAE9B7iB,EAAM0Y,MACZ1Y,EAAM0Y,MAAM9S,eAAejF,KAC7B+X,EAAM/X,GAAOX,EAAM0Y,MAAM/X,IAY7B,OARAX,EAAM0Y,MAAQA,EAEVyzB,EAAUlpB,gBACZjjB,EAAMijB,gBAAkBkpB,EAAUlpB,gBAElCjjB,EAAM6e,yBAA2BstB,EAAUttB,yBAGtC7e,CACT,CAIA,EAAE,CAAC,cAAc,IAAI,8BAA8B,IAAI,eAAe,MAAM,IAAI,CAAC,SAASxB,EAAQhB,EAAOC,GACzG,aAEA,IAAIykB,EAAY1jB,EAAQ,eACpBye,EAAcze,EAAQ,kBA8C1BhB,EAAOC,QAAU,CACfoe,UA7CF,SAA4BuwB,EAAyBlrB,EAAMzd,GACzD,IAAI4oC,EAAYtc,KAAKoF,MAErB,OAAOj2B,QAAQ0B,QAAQwrC,GACpBjmC,MAAK,SAAUoS,GACd,IAAI+zB,EAAqBvc,KAAKoF,MAC1B1X,EAAgBlF,EAAOgC,mBACvB3B,EAAUL,EAAOuF,SACjBK,EAAMV,EAAcjD,qBAAqBX,UAAUsE,IACnDtV,EAAO,CACTgR,UAAW,CACT,CACEqH,KAAMgB,EAAUqqB,iBAAmBrrB,EACnCsrB,QACEvkC,KAAK2nB,MAAM0c,EAAqB,OAChCrkC,KAAK2nB,MAAMyc,EAAY,KACzBA,UAAWA,KAKjBzzB,EACE,CACEuF,IAAKA,EACL1U,OAAQ,OACRZ,KAAMoU,EAAYQ,EAAe5U,GACjCwX,QAAS6B,EAAUuqB,8BAErBhpC,EAEJ,IACC6B,OAAM,SAAUG,GAOXhC,GACFA,EAASgC,EAEb,GACJ,EAMA,EAAE,CAAC,iBAAiB,IAAI,cAAc,MAAM,IAAI,CAAC,SAASjH,EAAQhB,EAAOC,GACzE,aAEA,IAAI6B,EAAad,EAAQ,uCAEzBhB,EAAOC,QAAU,CACf6B,WAAYA,EAGd,EAAE,CAAC,sCAAsC,IAAI,IAAI,CAAC,SAASd,EAAQhB,EAAOC,GAC1E,aAEA,IAAIivC,EACuB,mBAAlB7tC,OAAOmI,OAAwBnI,OAAOmI,OAAS2lC,EAExD,SAASA,EAAeC,GACtB,IAAI7uC,EAAG6T,EAAQjR,EAEf,IAAK5C,EAAI,EAAGA,EAAImG,UAAU3F,OAAQR,IAEhC,IAAK4C,KADLiR,EAAS1N,UAAUnG,GAEb6T,EAAOhM,eAAejF,KACxBisC,EAAYjsC,GAAOiR,EAAOjR,IAKhC,OAAOisC,CACT,CAEApvC,EAAOC,QAAU,CACfuJ,OAAQ0lC,EACRG,QAASF,EAGX,EAAE,CAAC,GAAG,IAAI,CAAC,SAASnuC,EAAQhB,EAAOC,GACnC,aAEA,IAAIwa,EAAiBzZ,EAAQ,qBACzB4kB,EAAe5kB,EAAQ,YACvBob,EAAU,UAoDdpc,EAAOC,QAAU,CACf+b,OAnDF,SAAoCja,GAClC,IAAIgZ,EAAQkB,EAAepS,EAE3B,OAAK9H,GAWL8H,EAAO9H,EAAQ8H,KACfkR,EAAShZ,EAAQgZ,OACjBkB,EAAgBla,EAAQka,cAEnBlB,GAAWkB,EAYXA,GAAiBlB,EAAOyJ,eAAiBpI,EAiBvC1a,QAAQ0B,UAhBN1B,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAM2W,EAAa0pB,sBAAsBrgC,KACzCrO,KAAMglB,EAAa0pB,sBAAsB1uC,KACzC0W,QACE,mBACAyD,EAAOyJ,aACP,SACA3a,EACA,aACAuS,EACA,qDAvBC1a,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAM2W,EAAaC,8BAA8B5W,KACjDrO,KAAMglB,EAAaC,8BAA8BjlB,KAGjD0W,QAAS,iDAAmDzN,EAAO,QArBhEnI,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAM2W,EAAa2pB,iCAAiCtgC,KACpDrO,KAAMglB,EAAa2pB,iCAAiC3uC,KACpD0W,QACE,mEAuCV,EAMA,EAAE,CAAC,oBAAoB,IAAI,WAAW,MAAM,IAAI,CAAC,SAAStW,EAAQhB,EAAOC,GACzE,aAEA,IAAIgL,EAAOjK,EAAQ,UAEnB,SAASF,EAAK+J,EAAI5E,GACW,IAAd4E,EAAG9J,QAGd8J,IACA5E,EAAS,OAET4E,EAAG5E,EAEP,CAEAjG,EAAOC,QAAU,SAAUuvC,EAAW32B,GACpC,IAAItY,EACAQ,EAASyuC,EAAUzuC,OACnB6Y,EAAY7Y,EACZkF,EAAWgF,EAAK4N,GAEpB,GAAe,IAAX9X,EAmBJ,IAAKR,EAAI,EAAGA,EAAIQ,EAAQR,IACtBO,EAAK0uC,EAAUjvC,GAAIkvC,QAnBnBxpC,EAAS,MAKX,SAASwpC,EAAOxnC,GACVA,EACFhC,EAASgC,GAMO,IADlB2R,GAAa,IAEX3T,EAAS,KAEb,CAKF,CAEA,EAAE,CAAC,SAAS,MAAM,IAAI,CAAC,SAASjF,EAAQhB,EAAOC,GAC/C,aAEA,IAAI4rC,EAAY7qC,EAAQ,eASxB,SAASyZ,EAAe1Y,GACtB,IAAK0Y,EAAehL,MAAMrH,eAAerG,EAAQkN,MAC/C,MAAM,IAAItO,MAAMoB,EAAQkN,KAAO,yBAGjC,IAAKlN,EAAQnB,KACX,MAAM,IAAID,MAAM,wBAGlB,IAAKoB,EAAQuV,QACX,MAAM,IAAI3W,MAAM,2BAGlBO,KAAK2I,KAAO,iBAMZ3I,KAAKN,KAAOmB,EAAQnB,KAMpBM,KAAKoW,QAAUvV,EAAQuV,QAMvBpW,KAAK+N,KAAOlN,EAAQkN,KAMpB/N,KAAKqa,QAAUxZ,EAAQwZ,OACzB,CAEAd,EAAe3U,UAAYzE,OAAO0F,OAAOpG,MAAMmF,WAC/C2U,EAAe3U,UAAUkB,YAAcyT,EAcvCA,EAAehL,MAAQo8B,EAAU,CAC/B,WACA,WACA,UACA,WACA,YAGFpxB,EAAei1B,cAAgB,SAAUznC,GACvC,OACEA,aAAewS,GACfxS,EAAIsT,SACJtT,EAAIsT,QAAQC,cAELf,EAAei1B,cAAcznC,EAAIsT,QAAQC,eAG3CvT,CACT,EAEAjI,EAAOC,QAAUwa,CAEjB,EAAE,CAAC,cAAc,MAAM,IAAI,CAAC,SAASzZ,EAAQhB,EAAOC,GACpD,aAUAD,EAAOC,QAAU,SAAU+J,GACzB,OAAO3I,OAAO4B,KAAK+G,GAAKqH,QAAO,SAAUs+B,EAAQxsC,GAK/C,OAFAwsC,EAXJ,SAAsBxsC,GACpB,OAAOA,EACJoH,QAAQ,oBAAqB,SAC7BA,QAAQ,2BAA4B,SACpCqf,aACL,CAIyBgmB,CAAazsC,IAET6G,EAAI7G,GAEtBwsC,CACT,GAAG,CAAC,EACN,CAEA,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS3uC,EAAQhB,EAAOC,GACnC,aAEA,IAAImc,EAAU,UACV2I,EAAW,MAmBf/kB,EAAOC,QAAU,CACf8uC,iBAAkBhqB,EAAW,IAC7BkqB,6BAA8B,IAC9BY,YAfgB,CAChBrb,WAAY,sCACZ5B,QAAS,uCAcTkd,gBArBoB,CACpBtb,WAAY,uCACZ5B,QAAS,gDAoBT/S,gBAAiB,mBACjBD,eAAgB,gDAChBE,aAAc,kCACdiwB,gCAAiC,4BACjCrwB,aAhBiB,CACjB8U,WAAY,6CACZ5B,QAAS,sDAeTuQ,uBAAwB,IACxB/mB,QAASA,EACT8I,YAAa,SACbD,OAAQ,SACRF,SAAUA,EACVM,0BAA2B,iBAAgCjJ,EAG7D,EAAE,CAAC,GAAG,IAAI,CAAC,SAASpb,EAAQhB,EAAOC,GACnC,aAEA,IAAIwa,EAAiBzZ,EAAQ,qBACzB4kB,EAAe5kB,EAAQ,YAE3BhB,EAAOC,QAAU,SAAU4zB,EAAUiU,GACnCA,EAAY5kC,SAAQ,SAAU8sC,GAC5Bnc,EAASmc,GAAc,WACrB,MAAM,IAAIv1B,EAAe,CACvBxL,KAAM2W,EAAaqqB,6BAA6BhhC,KAChDrO,KAAMglB,EAAaqqB,6BAA6BrvC,KAChD0W,QAAS04B,EAAa,qCAE1B,CACF,GACF,CAEA,EAAE,CAAC,oBAAoB,IAAI,WAAW,MAAM,IAAI,CAAC,SAAShvC,EAAQhB,EAAOC,GACzE,aAEA,IAAIwa,EAAiBzZ,EAAQ,qBAiB7BhB,EAAOC,QAfP,SAAiCiwC,EAAaC,GAC5C,OAAID,aAAuBz1B,EAClBy1B,EAGF,IAAIz1B,EAAe,CACxBxL,KAAMkhC,EAAclhC,KACpBrO,KAAMuvC,EAAcvvC,KACpB0W,QAAS64B,EAAc74B,QACvBiE,QAAS,CACPC,cAAe00B,IAGrB,CAIA,EAAE,CAAC,oBAAoB,MAAM,IAAI,CAAC,SAASlvC,EAAQhB,EAAOC,GAC1D,aAGA,IAAI4vC,EAAc7uC,EAAQ,eAAe6uC,YASzC7vC,EAAOC,QAAU,CACf8G,OARF,SAAyBkV,GAGvB,OAAO4zB,EAAYrb,UACrB,EAOA,EAAE,CAAC,cAAc,MAAM,IAAI,CAAC,SAASxzB,EAAQhB,EAAOC,GACpD,aAEA,IAAImwC,EAAOpvC,EAAQ,0BAA0BovC,KACzCN,EAAkB9uC,EAAQ,oBAAoB8uC,gBA6ClD9vC,EAAOC,QA5BP,SAAiCgc,GAC/B,IAAIo0B,EAAmBC,EAXnBC,EACAttB,EAWA5X,EAAO,CACT7I,MAAO,CAAC,EACRoiB,UAAW,IAqBb,MAvCO,4CAA4C/gB,KAqB5BoY,IAjBnBs0B,EAkB4Ct0B,EAlBnB4F,MAAM,KAC/BoB,EAAcstB,EAAO,GAiBvBD,EAdK,CACL1uB,WAHe2uB,EAAO34B,MAAM,GAAG44B,KAAK,KAIpCvtB,YAAaA,GAab5X,EAAK4X,YAAcqtB,EAAsBrtB,YACzC5X,EAAK7I,MAAMijB,gBAAkBxJ,EAC7B5Q,EAAKuZ,UACHkrB,EAAgBQ,EAAsBrtB,aACtC,cACAqtB,EAAsB1uB,WACtB,iCAEFyuB,EAAoBnuC,KAAKgP,MAAMk/B,EAAKn0B,IACpC5Q,EAAK4X,YAAcotB,EAAkBptB,YACrC5X,EAAK7I,MAAM6e,yBACTgvB,EAAkBhvB,yBACpBhW,EAAKuZ,UAAYyrB,EAAkBzrB,UACnCvZ,EAAKqV,QAAU2vB,EAAkB3vB,SAG5BrV,CACT,CAIA,EAAE,CAAC,mBAAmB,IAAI,yBAAyB,MAAM,IAAI,CAAC,SAASrK,EAAQhB,EAAOC,GACtF,aAEA,IAAIwa,EAAiBzZ,EAAQ,qBACzB2e,EAAS3e,EAAQ,YACjB4kB,EAAe5kB,EAAQ,YAEvBob,EAAU,UAqDdpc,EAAOC,QAAU,CACf8G,OApDF,SAA8BhF,GAC5B,IAAIqJ,EAAU1J,QAAQ0B,UAEtB,OAAIrB,EAAQgZ,OACHrZ,QAAQ0B,QAAQrB,EAAQgZ,SAG3BrX,OAAO+sC,WAAa/sC,OAAO+sC,UAAU11B,SACzC3P,EAAUuU,EACP7d,WAAW,CACVc,IAAKb,EAAQoa,UAAY,QAAUC,EAAU,sBAE9CtU,OAAM,SAAUG,GACf,OAAOvG,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAM2W,EAAa8qB,6BAA6BzhC,KAChDrO,KAAMglB,EAAa8qB,6BAA6B9vC,KAChD0W,QAASsO,EAAa8qB,6BAA6Bp5B,QACnDiE,QAAS,CACPC,cAAevT,KAIvB,KAGGmD,EAAQzC,MAAK,WAClB,OAAIjF,OAAO+sC,UAAU11B,OAAOqB,UAAYA,EAC/B1a,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAM2W,EAAa0pB,sBAAsBrgC,KACzCrO,KAAMglB,EAAa0pB,sBAAsB1uC,KACzC0W,QACE,mBACA5T,OAAO+sC,UAAU11B,OAAOqB,QACxB,SACAra,EAAQ8H,KACR,aACAuS,EACA,qDAKD1Y,OAAO+sC,UAAU11B,OAAOhU,OAAO,CACpCkV,cAAela,EAAQka,cACvBC,MAAOna,EAAQma,OAEnB,IACF,EAMA,EAAE,CAAC,WAAW,IAAI,oBAAoB,IAAI,WAAW,MAAM,IAAI,CAAC,SAASlb,EAAQhB,EAAOC,GACxF,aAEAD,EAAOC,QAAU,SAAU4K,GACzB,OAAO,WAEL,IAAIrE,EAAOE,UAEXoE,YAAW,WACTD,EAAGlE,MAAM,KAAMH,EACjB,GAAG,EACL,CACF,CAEA,EAAE,CAAC,GAAG,IAAI,CAAC,SAASxF,EAAQhB,EAAOC,GACnC,aAEA,IAAI0wC,EAAwB3vC,EAAQ,6BAEpC,SAAS8hC,IACP5hC,KAAK0vC,kBAAoB,GAEzB1vC,KAAK2vC,gBAAiB,CACxB,CAEA/N,EAAWh9B,UAAU8+B,4BAA8B,SAAU/5B,GACzC,mBAAPA,GACT3J,KAAK0vC,kBAAkB1qC,KAAK2E,EAEhC,EAEAi4B,EAAWh9B,UAAU0O,SAAW,SAAUvO,GACpC/E,KAAK2vC,eACP5qC,EAAS,IAAItF,MAAM,wCAKrBO,KAAK2vC,gBAAiB,EAEtBF,EACEzvC,KAAK0vC,kBACL,SAAU3oC,GACR/G,KAAK0vC,kBAAoB,GACzB1vC,KAAK2vC,gBAAiB,EAEE,mBAAb5qC,GACTA,EAASgC,EAEb,EAAE4U,KAAK3b,OAEX,EAEAlB,EAAOC,QAAU6iC,CAEjB,EAAE,CAAC,4BAA4B,MAAM,IAAI,CAAC,SAAS9hC,EAAQhB,EAAOC,GAClE,aAYAD,EAAOC,QAVP,SAAmB6wC,EAAQ16B,GAGzB,OAFAA,EAAmB,MAAVA,EAAiB,GAAKA,EAExB06B,EAAOz/B,QAAO,SAAU0/B,EAAaxvC,GAG1C,OAFAwvC,EAAYxvC,GAAS6U,EAAS7U,EAEvBwvC,CACT,GAAG,CAAC,EACN,CAIA,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS/vC,EAAQhB,EAAOC,GACnC,aAuBA,IAAIwa,EAAiBzZ,EAAQ,qBAE7BhB,EAAOC,QAAU,CACfsvC,iCAAkC,CAChCtgC,KAAMwL,EAAehL,MAAMgV,SAC3B7jB,KAAM,oCAERilB,8BAA+B,CAC7B5W,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,iCAER0uC,sBAAuB,CACrBrgC,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,yBAER8vC,6BAA8B,CAC5BzhC,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,+BACN0W,QAAS,gDAEX24B,6BAA8B,CAC5BhhC,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,gCAIV,EAAE,CAAC,oBAAoB,MAAM,IAAI,CAAC,SAASI,EAAQhB,EAAOC,GAC1D,aAEAD,EAAOC,QAAU,SAAsBmK,GACrC,KAAOA,EAAQ8nB,YACb9nB,EAAUA,EAAQ8nB,WAGpB,OAAO9nB,CACT,CAEA,EAAE,CAAC,GAAG,IAAI,CAAC,SAASpJ,EAAQhB,EAAOC,GACnC,aAEAD,EAAOC,QAAU,SAAU+wC,EAAO7tC,EAAK5B,GACrC,IAAIhB,EAEJ,IAAKA,EAAI,EAAGA,EAAIywC,EAAMjwC,OAAQR,IAC5B,GAAIywC,EAAMzwC,GAAG6H,eAAejF,IAAQ6tC,EAAMzwC,GAAG4C,KAAS5B,EACpD,OAAOyvC,EAAMzwC,GAIjB,OAAO,IACT,CAEA,EAAE,CAAC,GAAG,IAAI,CAAC,SAASS,EAAQhB,EAAOC,GACnC,aAEA,IAAIgxC,EAAQjwC,EAAQ,sBAChBkwC,EAAclwC,EAAQ,6BACtBmwC,EAAQnwC,EAAQ,sBAChBgiC,EAAMhiC,EAAQ,YACdoiC,EAASpiC,EAAQ,oBACjB0Z,EAAS1Z,EAAQ,oBACjB0jB,EAAY1jB,EAAQ,uBACpByW,EAAOzW,EAAQ,mBACf+hC,EAAU/hC,EAAQ,sBAClByZ,EAAiBzZ,EAAQ,yBACzBm/B,EAAmBn/B,EAAQ,+BAC3BwI,EAASxI,EAAQ,kBAAkBwI,OACnCumC,EACF/uC,EAAQ,mBAAmB+uC,gCAEzBqB,EAAuB,CAAC,OAAQ,mBAAoB,gBAExD,SAASh5B,IAAQ,CAkBjB,SAASi5B,EAAatvC,IAhBtB,SAAqCA,GACnC,IAAKA,EACH,MAAM,IAAIpB,MAAM,mCASlB,GANAywC,EAAqBluC,SAAQ,SAAUC,GACrC,IAAKpB,EAAQqG,eAAejF,GAC1B,MAAM,IAAIxC,MAAM,iBAAmBwC,EAAM,oBAE7C,KAEK,WAAWU,KAAK9B,EAAQ8H,MAC3B,MAAM,IAAIlJ,MAAM,sCAEpB,EAGE2wC,CAA4BvvC,GAE5Bb,KAAKqwC,WAAa95B,IAAOlN,QAAQ,KAAM,IAEvCrJ,KAAKswC,SAAW,CACd3nC,KAAM9H,EAAQ8H,KAAO,IAAM3I,KAAKqwC,WAChCE,iBAAkB1vC,EAAQ0vC,iBAC1BC,aAAc3vC,EAAQ2vC,aACtBxb,OAAQn0B,EAAQm0B,OAChBD,MAAOl0B,EAAQk0B,MACftiB,IAAK5R,EAAQ4R,IACbwiB,KAAMp0B,EAAQo0B,MAEhBj1B,KAAKywC,MAAQ5vC,EAAQ4vC,OAAS,CAAC,EAE/BzwC,KAAKyjC,KAAO,IAAI3B,EAAI,CAAE7wB,QAASjR,KAAKqwC,aACpCrwC,KAAK0wC,eACP,CAEAP,EAAavrC,UAAU+a,WAAa,SAAU5a,GAC5C,IAAI4rC,EAA4B,WAC9B5rC,IACA/E,KAAKyjC,KAAKx+B,IAAIi9B,EAAO0O,qBAAsBD,EAC7C,EAAEh1B,KAAK3b,MAEPA,KAAKyjC,KAAK5+B,GAAGq9B,EAAO0O,qBAAsBD,GAC1C3wC,KAAK6wC,qBACP,EAEAV,EAAavrC,UAAUisC,oBAAsB,WAC3C,IAAIC,EAAYttB,EAAUutB,oBAAsB,IAAM/wC,KAAKqwC,WACvDW,EAAWhxC,KAAKswC,SAASC,iBAE7BvwC,KAAKixC,eAAiBpP,EAAQ,CAC5B,eAAe,EACfl5B,KAAMmoC,EACN5b,MAAO4b,EACPpvC,IAAKsvC,EACLE,MAAO1tB,EAAU2tB,qBACjBnc,OAAQ,EACRD,MAAO,EACPvsB,MAAO,CACLyE,SAAU,WACVgoB,KAAM,aAIV7zB,SAASmf,KAAKle,YAAYrC,KAAKixC,eACjC,EAEAd,EAAavrC,UAAU8rC,cAAgB,WACrC1wC,KAAKyjC,KAAK5+B,GACRq9B,EAAOkP,sBACP,SAAUz4B,EAAK3G,GACThS,KAAKqxC,qBACPrxC,KAAKqxC,oBAAoBzxC,KAAK,KAAM+Y,EAAI5R,IAAK4R,EAAIvG,SAEnDpS,KAAKsxC,OAAOC,QAEZvxC,KAAKqxC,oBAAsB,KAEvBr/B,GACFA,GAEJ,EAAE2J,KAAK3b,OAGTA,KAAKyjC,KAAK5+B,GACRgqC,EACA,SAAU78B,GACRA,EAAMhS,KAAKywC,MACb,EAAE90B,KAAK3b,MAEX,EAEAmwC,EAAavrC,UAAUoiB,KAAO,SAAUnmB,EAASkE,GAM/C,GALAlE,EAAUA,GAAW,CAAC,EACtBb,KAAKsxC,OAAStxC,KAAKwxC,wBAAwB3wC,GAE3Cb,KAAKsxC,OAAO3xB,WAAW5a,KAEnB/E,KAAKsxC,kBAAkBtB,GAA3B,CAYA,GALA1nC,EAAOtI,KAAKywC,MAAO5vC,EAAQ4vC,OAE3BzwC,KAAKqxC,oBAAsBtsC,EAC3B/E,KAAKsxC,OAAOtqB,OAERhnB,KAAKyxC,gBAOP,OANAzxC,KAAK0xC,qBAED3sC,GACFA,EAAS,IAAIwU,EAAeC,EAAOm4B,mCAKvC3xC,KAAK4xC,oBAhBL,CAiBF,EAEAzB,EAAavrC,UAAUitC,SAAW,SAAUpyB,GACtCzf,KAAKsxC,SAAWtxC,KAAKyxC,iBACvBzxC,KAAKsxC,OAAOO,SAASpyB,EAEzB,EAEA0wB,EAAavrC,UAAU2sC,MAAQ,WACxBvxC,KAAKyxC,iBACRzxC,KAAKsxC,OAAOC,OAEhB,EAEApB,EAAavrC,UAAUw8B,MAAQ,WACxBphC,KAAKyxC,iBACRzxC,KAAKsxC,OAAOlQ,OAEhB,EAEA+O,EAAavrC,UAAUktC,cAAgB,SAAUjxC,GAG/C,OAFAA,EAAUA,GAAW,CAAC,EAEf,CACL0wC,MAAO,WACD1wC,EAAQkxC,aACVlxC,EAAQkxC,cAGV/xC,KAAKuxC,OACP,EAAE51B,KAAK3b,MACPohC,MAAO,WACDvgC,EAAQmxC,aACVnxC,EAAQmxC,cAGVhyC,KAAKohC,OACP,EAAEzlB,KAAK3b,MAEX,EAEAmwC,EAAavrC,UAAUqtC,kBAAoB,WACzC,MAAO,CACLV,MAAOr6B,EACPkqB,MAAOlqB,EAEX,EAEAi5B,EAAavrC,UAAU0O,SAAW,WAChCtT,KAAKuxC,QACLvxC,KAAKixC,eAAejgB,WAAWC,YAAYjxB,KAAKixC,gBAChDjxC,KAAKixC,eAAiB,KACtBjxC,KAAK0xC,eACP,EAEAvB,EAAavrC,UAAU6sC,cAAgB,WACrC,OAAsB,MAAfzxC,KAAKsxC,QAAkBtxC,KAAKsxC,OAAOY,UAC5C,EAEA/B,EAAavrC,UAAU8sC,cAAgB,WACrC1xC,KAAKsxC,OAAS,KACda,cAAcnyC,KAAKoyC,gBACnBpyC,KAAKoyC,eAAiB,IACxB,EAEAjC,EAAavrC,UAAUgtC,mBAAqB,WAe1C,OAdA5xC,KAAKoyC,eAAiBC,YACpB,WACMryC,KAAKyxC,kBACPzxC,KAAK0xC,gBACD1xC,KAAKqxC,qBACPrxC,KAAKqxC,oBACH,IAAI93B,EAAeC,EAAO84B,6BAIlC,EAAE32B,KAAK3b,MACPwjB,EAAU+uB,qBAGLvyC,KAAKoyC,cACd,EAEAjC,EAAavrC,UAAU4sC,wBAA0B,SAAU3wC,GACzD,IAAI2xC,EAAWvT,EAAiBwT,iBAC5BC,EAAoBvrC,QAAQ3E,OAAOmwC,aAEnCC,EAActqC,EAAO,CAAC,EAAGtI,KAAKswC,SAAUzvC,GAE5C,OAAI6xC,EACK,IAAI1C,EAAY4C,GACdJ,EACF,IAAIzC,EAAM6C,GAGZ,IAAI3C,EAAM2C,EACnB,EAEA9zC,EAAOC,QAAUoxC,CAEjB,EAAE,CAAC,wBAAwB,IAAI,kBAAkB,IAAI,8BAA8B,IAAI,sBAAsB,IAAI,mBAAmB,IAAI,mBAAmB,IAAI,iBAAiB,IAAI,qBAAqB,IAAI,qBAAqB,IAAI,4BAA4B,IAAI,qBAAqB,GAAG,kBAAkB,GAAG,SAAW,KAAK,IAAI,CAAC,SAASrwC,EAAQhB,EAAOC,GAChW,aAEA,IAAIoxC,EAAerwC,EAAQ,mBAuB3BhB,EAAOC,QAAU,CACf8G,OAAQ,SAA4BhF,EAASkE,GAC3C,IAAI8tC,EAAe,IAAI1C,EAAatvC,GAEpCgyC,EAAalzB,YAAW,WACtB5a,EAAS8tC,EACX,GACF,EAGF,EAAE,CAAC,kBAAkB,MAAM,IAAI,CAAC,SAAS/yC,EAAQhB,EAAOC,GACxD,aAEA,IAAI8iC,EAAU/hC,EAAQ,sBAClBwI,EAASxI,EAAQ,mBAAmBwI,OACpC22B,EAAmBn/B,EAAQ,kCAE3BgzC,EAAiB,CACnB7lC,SAAU,QACVwF,IAAK,EACLwiB,KAAM,EACNwU,OAAQ,EACRsJ,QAAS,EACTC,OAAQ,EACR1H,OAAQ,EACR2H,QAAS,OACTC,OAAQ,MACRC,WAAY,WAGd,SAASj8B,IAAQ,CAQjB,SAAS+4B,EAAMpvC,GACbb,KAAKozC,QAAU,KACfpzC,KAAKsxC,OAAS,KACdtxC,KAAKswC,SAAWzvC,GAAW,CAAC,EAC5Bb,KAAKqzC,WAAarzC,KAAKswC,SAAS9uC,WAAaJ,SAASmf,IACxD,CAEA0vB,EAAMrrC,UAAU+a,WAAazI,EAE7B+4B,EAAMrrC,UAAUoiB,KAAO,WACrB,IAAIssB,EAAgB,CAClB5xC,IAAK1B,KAAKswC,SAASE,aACnB7nC,KAAM3I,KAAKswC,SAAS3nC,KACpBM,UAAW,MACX+rB,OAAQ,OACRD,MAAO,OACPvsB,MAAOF,EAAO,CAAC,EAAGwqC,GAClB5d,MAAO,kBAGL+J,EAAiB/7B,SAGf+7B,EAAiBsU,mBACnBvzC,KAAKwzC,iBAELF,EAAc9qC,MAAQ,CAAC,GAGzBxI,KAAKyzC,IAAMryC,SAASC,cAAc,OAElCiH,EAAOtI,KAAKyzC,IAAIjrC,MAAOsqC,EAAgB,CACrC9d,OAAQ,OACRD,MAAO,OACP2e,SAAU,OACV,6BAA8B,UAGhC1zC,KAAKsxC,OAASzP,EAAQyR,GACtBtzC,KAAKyzC,IAAIpxC,YAAYrC,KAAKsxC,SAE1BtxC,KAAKyzC,IAAMzzC,KAAKsxC,OAASzP,EAAQyR,GAEnCtzC,KAAKozC,SAAU,EAEfpzC,KAAKqzC,WAAWhxC,YAAYrC,KAAKyzC,IACnC,EAEAxD,EAAMrrC,UAAUw8B,MAAQlqB,EAExB+4B,EAAMrrC,UAAU2sC,MAAQ,WACtBvxC,KAAKqzC,WAAWpiB,YAAYjxB,KAAKyzC,KACjCzzC,KAAKsxC,OAAS,KACdtxC,KAAKozC,SAAU,EACXnU,EAAiBsU,kBACnBvzC,KAAK2zC,kBAET,EAEA1D,EAAMrrC,UAAUstC,SAAW,WACzB,OAAO/qC,QAAQnH,KAAKozC,QACtB,EAEAnD,EAAMrrC,UAAUitC,SAAW,SAAU+B,GACnC5zC,KAAKsxC,OAAO5vC,IAAMkyC,CACpB,EAEA3D,EAAMrrC,UAAU+uC,iBAAmB,WACjCvyC,SAASmf,KAAK/X,MAAMkrC,SAAW1zC,KAAK6zC,qBAAqBC,cACzD1yC,SAASmf,KAAK/X,MAAMyE,SAAWjN,KAAK6zC,qBAAqBE,cACzDvxC,OAAOwxC,SACLh0C,KAAK6zC,qBAAqB5e,KAC1Bj1B,KAAK6zC,qBAAqBphC,YAErBzS,KAAK6zC,oBACd,EAEA5D,EAAMrrC,UAAU4uC,eAAiB,WAC/B,IAAIS,EAAM7yC,SAASkoC,gBAGnBtpC,KAAK6zC,qBAAuB,CAC1B5e,MAAOzyB,OAAO0xC,aAAeD,EAAIE,aAAeF,EAAIG,YAAc,GAClE3hC,KAAMjQ,OAAO6xC,aAAeJ,EAAIK,YAAcL,EAAIM,WAAa,GAC/DT,cAAe1yC,SAASmf,KAAK/X,MAAMkrC,SACnCK,cAAe3yC,SAASmf,KAAK/X,MAAMyE,UAErC7L,SAASmf,KAAK/X,MAAMkrC,SAAW,SAC/BtyC,SAASmf,KAAK/X,MAAMyE,SAAW,QAC/BzK,OAAOwxC,SAAS,EAAG,EACrB,EAEAl1C,EAAOC,QAAUkxC,CAEjB,EAAE,CAAC,kBAAkB,IAAI,iCAAiC,IAAI,qBAAqB,KAAK,IAAI,CAAC,SAASnwC,EAAQhB,EAAOC,GACrH,aAEA,IAAIwa,EAAiBzZ,EAAQ,4BACzB0Z,EAAS1Z,EAAQ,uBAErB,SAASoX,IAAQ,CAEjB,SAAS84B,EAAYnvC,GACnBb,KAAKozC,QAAU,KACfpzC,KAAKswC,SAAWzvC,CAClB,CAEAmvC,EAAYprC,UAAU+a,WAAa,SAAU5a,GAC3C,IAAI2N,EAAO1S,KAEXwC,OAAOmwC,YAAY6B,WAAa,SAAUztC,EAAKqL,GAC7C,IAAIqiC,GAAkBriC,IAAYrL,EAElC2L,EAAK0gC,SAAU,EAEXrsC,GAAO0tC,EAET1vC,EAAS,IAAIwU,EAAeC,EAAO84B,6BAKrCvtC,EAAS,KAAMqN,EACjB,CACF,EAEA49B,EAAYprC,UAAUoiB,KAAO,SAAUnmB,GACrC,IAAI4e,EAGJA,GADA5e,EAAUA,GAAW,CAAC,GACR2vC,cAAgBxwC,KAAKswC,SAASE,aAE5CxwC,KAAKozC,SAAU,EACf5wC,OAAOmwC,YAAY3rB,KAAKvH,EAC1B,EAEAuwB,EAAYprC,UAAUw8B,MAAQlqB,EAE9B84B,EAAYprC,UAAU2sC,MAAQr6B,EAE9B84B,EAAYprC,UAAUstC,SAAW,WAC/B,OAAO/qC,QAAQnH,KAAKozC,QACtB,EAEApD,EAAYprC,UAAUitC,SAAW,SAAU+B,GACzC5zC,KAAKgnB,KAAK,CAAEwpB,aAAcoD,GAC5B,EAEA90C,EAAOC,QAAUixC,CAEjB,EAAE,CAAC,2BAA2B,IAAI,sBAAsB,MAAM,IAAI,CAAC,SAASlwC,EAAQhB,EAAOC,GAC3F,aAEA,IAAIykB,EAAY1jB,EAAQ,6BACpBmN,EAAWnN,EAAQ,cAEvB,SAAS40C,EAAkB3mC,EAAM4mC,EAAqBrlC,GACpD,YAAmC,IAAxBqlC,EACFA,EAGF1nC,EAASc,GAAMuB,EACxB,CAEAxQ,EAAOC,QAAU,SAA6B8B,GAC5C,IAAIm0B,EAASn0B,EAAQm0B,QAAUxR,EAAUoxB,qBACrC7f,EAAQl0B,EAAQk0B,OAASvR,EAAUqxB,oBACnCpiC,EAAMiiC,EAAkB,MAAO7zC,EAAQ4R,IAAKuiB,GAC5CC,EAAOyf,EAAkB,OAAQ7zC,EAAQo0B,KAAMF,GAEnD,MAAO,CACLvR,EAAUsxB,mBACV,UAAY9f,EACZ,SAAWD,EACX,OAAStiB,EACT,QAAUwiB,GACVqa,KAAK,IACT,CAEA,EAAE,CAAC,4BAA4B,IAAI,aAAa,MAAM,IAAI,CAAC,SAASxvC,EAAQhB,EAAOC,GACnF,aAEA,IAAIg2C,EAAiBj1C,EAAQ,qBAI7B,SAASiwC,EAAMlvC,GACbb,KAAKsxC,OAAS,KACdtxC,KAAKswC,SAAWzvC,GAAW,CAAC,CAC9B,CAEAkvC,EAAMnrC,UAAU+a,WAPhB,WAAiB,EASjBowB,EAAMnrC,UAAUoiB,KAAO,WACrBhnB,KAAKsxC,OAAS9uC,OAAOwkB,KACnBhnB,KAAKswC,SAASE,aACdxwC,KAAKswC,SAAS3nC,KACdosC,EAAe/0C,KAAKswC,UAExB,EAEAP,EAAMnrC,UAAUw8B,MAAQ,WACtBphC,KAAKsxC,OAAOlQ,OACd,EAEA2O,EAAMnrC,UAAU2sC,MAAQ,WAClBvxC,KAAKsxC,OAAO38B,QAGhB3U,KAAKsxC,OAAOC,OACd,EAEAxB,EAAMnrC,UAAUstC,SAAW,WACzB,OAAQlyC,KAAKsxC,QAAUnqC,QAAQnH,KAAKsxC,OAAO38B,OAC7C,EAEAo7B,EAAMnrC,UAAUitC,SAAW,SAAU+B,GACnC5zC,KAAKsxC,OAAOt9B,SAASD,KAAO6/B,CAC9B,EAEA90C,EAAOC,QAAUgxC,CAEjB,EAAE,CAAC,oBAAoB,MAAM,IAAI,CAAC,SAASjwC,EAAQhB,EAAOC,GAC1D,aAiBA,SAASi2C,EAAOC,EAAcC,EAAaC,GACzC,OAAQF,EAAeC,GAAe,EAAIC,CAC5C,CAEAr2C,EAAOC,QAAU,CACf0T,IApBF,SAAauiB,GAKX,OAAOggB,EAHLxyC,OAAO4yC,aAAeh0C,SAASkoC,gBAAgBC,aAGrBvU,EAFM,MAAlBxyB,OAAO6yC,QAAkB7yC,OAAO8yC,UAAY9yC,OAAO6yC,QAGrE,EAeEpgB,KAbF,SAAcF,GAIZ,OAAOigB,EAHWxyC,OAAO+yC,YAAcn0C,SAASkoC,gBAAgBK,YAGrC5U,EAFQ,MAAlBvyB,OAAOgzC,QAAkBhzC,OAAOizC,WAAajzC,OAAOgzC,QAGvE,EASER,OAAQA,EAGV,EAAE,CAAC,GAAG,IAAI,CAAC,SAASl1C,EAAQhB,EAAOC,GACnC,aAEAD,EAAOC,QAAU,CACfmE,MAAOpD,EAAQ,uCACfyzC,eAAgBzzC,EAAQ,iDACxB2yC,eAAgB3yC,EAAQ,gDAG1B,EAAE,CAAC,sCAAsC,GAAG,gDAAgD,GAAG,+CAA+C,KAAK,IAAI,CAAC,SAASA,EAAQhB,EAAOC,GAChL,aAEAD,EAAOC,QAAU,CACfgyC,oBAAqB,WACrBI,qBAAsB,2BACtB2D,mBAAoB,uBACpBD,oBAAqB,IACrBD,qBAAsB,IACtBrC,oBAAqB,IACrBmD,oBAAqB,IAGvB,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS51C,EAAQhB,EAAOC,GACnC,aAUA,IAAIwa,EAAiBzZ,EAAQ,yBAE7BhB,EAAOC,QAAU,CACfuzC,2BAA4B,CAC1BvkC,KAAMwL,EAAehL,MAAMgV,SAC3B7jB,KAAM,6BACN0W,QAAS,iDAEXu7B,gCAAiC,CAC/B5jC,KAAMwL,EAAehL,MAAMgV,SAC3B7jB,KAAM,kCACN0W,QAAS,yBAIb,EAAE,CAAC,wBAAwB,MAAM,IAAI,CAAC,SAAStW,EAAQhB,EAAOC,GAC9D,aAEA,IAAI4rC,EAAY7qC,EAAQ,mBAExBhB,EAAOC,QAAU4rC,EACf,CAAC,uBAAwB,yBACzB,gBAGF,EAAE,CAAC,kBAAkB,MAAM,IAAI,CAAC,SAAS7qC,EAAQhB,EAAOC,GACxD,aAEA,IAAImc,EAAU,UACV5S,EAASxI,EAAQ,YAAYwI,OAEjC,SAASqtC,EAA+B52B,EAAe6e,GACrD,IAAIhc,EAAW7C,EAAc8C,kBACzB+zB,EAA8B,CAChCC,QAAS,YACT,uBAAwB92B,EAAcjD,qBAAqB4E,WAC3D,uBAAwB,KACxB,uBAAwBxF,EACxB,qBAAsBla,KAAKC,UAAU,CACnCiS,OAAQ0O,EAAS1O,OACjBgP,YAAaN,EAASM,YACtBC,UAAWP,EAASO,UACpBC,QAASlH,EACT+G,SAAUL,EAASK,YAIvB,OAAO3Z,EAAO,CAAC,EAAGstC,EAA6BhY,EACjD,CAEA9+B,EAAOC,QAAU,SAAUggB,EAAewd,EAAkBE,GAC1D,IAAItyB,EAAM2rC,EACNC,EAA0Bh3B,EAAcjD,qBAAqB4N,WAC7D3H,EACiD,eAAnDhD,EAAcjD,qBAAqBiG,YAC/B,aACA,OAiGN,OA/FyB,IAArBwa,GACFpyB,EAAO,CACL8zB,WAAY,EACZ+X,gBAAiB,EACjBj0B,YAAaA,EACbsb,sBAAuB,CACrB,CACEtvB,KAAM,OACNqS,WAAY,CACV61B,mBAAoB,CAAC,WAAY,kBACjC/Y,oBAAqB6Y,EAAwBt5B,kBAAkBnP,KAC7D,SAAUw/B,GACR,OAAOA,EAAKvc,aACd,KAGJ2lB,0BAA2B,CACzBnoC,KAAM,kBACNqS,WAAYu1B,EAA+B52B,EAAe,CACxD,qCACEg3B,EAAwBnsB,qCAOhC6S,IACFtyB,EAAKgsC,aAAe,CAClBz1B,WAAY+b,IAIZsZ,EAAwBjsB,iBAC1BgsB,EAAsB,CACpB/nC,KAAM,SACNqS,WAAY,CAEVg2B,iBAAkB,CAChBC,eAAgB,CACd,CACEC,MAAO,CACLC,UAAWR,EAAwBjsB,gBAErC0sB,mBAAmB,MAM3BN,0BAA2B,CACzBnoC,KAAM,kBACNqS,WAAYu1B,EAA+B52B,EAAe,CACxD,2BAA4Bg3B,EAAwBjsB,mBAK1D3f,EAAKkzB,sBAAsBr4B,KAAK8wC,MAGlC3rC,EAAO,CACL4X,YAAaA,EACbsb,sBAAuB,CAAC,OAAQ,kBAChCoZ,oCAAqC,CACnCC,iBAAkB,kBAClBt2B,WAAYu1B,EAA+B52B,EAAe,CACxD,qCACEg3B,EAAwBnsB,kCAG9BqT,iBAAkB,CAChBC,oBAAqB6Y,EAAwBt5B,kBAAkBnP,KAC7D,SAAUw/B,GACR,OAAOA,EAAKvc,aACd,MAKkC,qBAApCxR,EAAc0F,oBAChBta,EAAKssC,oCAAoCr2B,WACvC,uBACErB,EAAchE,eAGhB0hB,IACFtyB,EAAKuW,WAAa+b,GAGhBF,IACFpyB,EAAK8zB,WAAa1B,IAIfpyB,CACT,CAEA,EAAE,CAAC,WAAW,MAAM,IAAI,CAAC,SAASrK,EAAQhB,EAAOC,GACjD,aAEAD,EAAOC,QAAU,SAAkB2U,GACjCA,EAAMA,GAAOlR,OAEb,IACE,OAAOkR,EAAIhB,OAASgB,EAAIjB,GAC1B,CAAE,MAAOxT,GACP,OAAO,CACT,CACF,CAEA,EAAE,CAAC,GAAG,IAAI,CAAC,SAASa,EAAQhB,EAAOC,GACnC,aAEA,SAAS43C,EAAwBC,GAC/B,IAAIC,EAAYD,EAAWj2B,MAAM,KAEjC,OAAO,IAAI0Q,KAAKwlB,EAAU,GAAIA,EAAU,GAAIA,EAAU,GACxD,CAQA/3C,EAAOC,QANP,SAAgC+3C,EAAWC,GACzC,OACEJ,EAAwBG,IAAcH,EAAwBI,EAElE,CAIA,EAAE,CAAC,GAAG,IAAI,CAAC,SAASj3C,EAAQhB,EAAOC,GACnC,aAQAD,EAAOC,QAAU,CACfi4C,QAPF,SAAiB/iC,GAGf,MAAoB,YAFTA,GAAYzR,OAAOwR,SAASC,SAGzC,EAMA,EAAE,CAAC,GAAG,IAAI,CAAC,SAASnU,EAAQhB,EAAOC,GACnC,aAEA,IAAIk4C,EACAC,EAAa,CACf,aAAc,EACd,wBAAyB,EACzB,uBAAwB,EACxB,oBAAqB,GAyBvBp4C,EAAOC,QAhBP,SAA0B0gB,GACxB,IAAI03B,EAIJ,OAFA13B,EAAMA,EAAIiJ,gBAEL,UAAU/lB,KAAK8c,MAIpBw3B,EAASA,GAAU71C,SAASC,cAAc,MACnC0S,KAAO0L,EACd03B,EAA6BF,EAAOj6B,SAdtB2D,MAAM,KAAKjK,OAAO,GAAG44B,KAAK,KAgBjC4H,EAAWhwC,eAAeiwC,GACnC,CAIA,EAAE,CAAC,GAAG,IAAI,CAAC,SAASr3C,EAAQhB,EAAOC,GACnC,aAEAD,EAAOC,QAAU,SAAUsB,GACzB,OAAOW,KAAKgP,MAAMhP,KAAKC,UAAUZ,GACnC,CAEA,EAAE,CAAC,GAAG,IAAI,CAAC,SAASP,EAAQhB,EAAOC,GACnC,aAEAD,EAAOC,QAAU,SAAU+J,GACzB,OAAO3I,OAAO4B,KAAK+G,GAAKgC,QAAO,SAAU7I,GACvC,MAA2B,mBAAb6G,EAAI7G,EACpB,GACF,CAEA,EAAE,CAAC,GAAG,IAAI,CAAC,SAASnC,EAAQhB,EAAOC,GACnC,aAaAD,EAAOC,QAXP,SAAc4K,GACZ,IAAIK,GAAS,EAEb,OAAO,WACAA,IACHA,GAAS,EACTL,EAAGlE,MAAM,KAAMD,WAEnB,CACF,CAIA,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS1F,EAAQhB,EAAOC,GACnC,aA0BA,SAASq4C,EAAe33B,GAGtB,OAFAA,EAAMA,GAAOjd,OAAOwR,SAASD,KAEtB,KAAKpR,KAAK8c,EACnB,CA2BA,SAASxe,EAAU6zB,EAAQuiB,GACzB,IAAI/hC,EAAG6gB,EAAGx2B,EA3CMU,EA4CZitB,EAAQ,GAEZ,IAAK3tB,KAAKm1B,EACHA,EAAO5tB,eAAevH,KAI3Bw2B,EAAIrB,EAAOn1B,GAIP2V,EAFA+hC,GArDUh3C,EAsDCy0B,IAnDI,iBAAVz0B,GACiB,iBAAjBA,EAAMR,QAC6B,mBAA1CM,OAAOyE,UAAU6E,SAAS7J,KAAKS,GAkDzBg3C,EAAY,KAEZA,EAAY,IAAM13C,EAAI,IAGxBA,EAEW,iBAANw2B,EACT7I,EAAMtoB,KAAK/D,EAAUk1B,EAAG7gB,IAExBgY,EAAMtoB,KAAKqzB,mBAAmB/iB,GAAK,IAAM+iB,mBAAmBlC,KAIhE,OAAO7I,EAAMgiB,KAAK,IACpB,CAcAxwC,EAAOC,QAAU,CACfiR,MApEF,SAAeyP,GAKb,OAAK23B,EAFL33B,EAAMA,GAAOjd,OAAOwR,SAASD,OAMrB0L,EAAIkB,MAAM,KAAK,IAAM,IACftX,QAAQ,OAAQ,IAAIsX,MAAM,KAEzBxQ,QAAO,SAAUmnC,EAAUC,GACxC,IAAIC,EAAQD,EAAS52B,MAAM,KACvB1e,EAAMg2B,mBAAmBuf,EAAM,IAC/Bn3C,EAAQ43B,mBAAmBuf,EAAM,IAIrC,OAFAF,EAASr1C,GAAO5B,EAETi3C,CACT,GAAG,CAAC,GAdK,CAAC,CAiBZ,EA8CEr2C,UAAWA,EACXilB,SAfF,SAAkBzG,EAAKqV,GASrB,OARArV,EAAMA,GAAO,GAEC,MAAVqV,GAAoC,iBAAXA,GAxF/B,SAAmBhsB,GACjB,IAAI7G,EAEJ,IAAKA,KAAO6G,EACV,GAAIA,EAAI5B,eAAejF,GACrB,OAAO,EAIX,OAAO,CACT,CA8EsDw1C,CAAU3iB,KAC5DrV,IAA6B,IAAtBA,EAAIxc,QAAQ,KAAc,IAAM,GACvCwc,IAA6B,IAAtBA,EAAIxc,QAAQ,KAAc,IAAM,GACvCwc,GAAOxe,EAAU6zB,IAGZrV,CACT,EAME23B,eAAgBA,EAGlB,EAAE,CAAC,GAAG,IAAI,CAAC,SAASt3C,EAAQhB,EAAOC,GACnC,aAEA,IAAIwX,EAAOzW,EAAQ,mBACfwiC,EAAexiC,EAAQ,oBAK3B,SAASwkC,EAAgBp7B,GAGvB,MAA8B,yBAF9BA,EAAUo5B,EAAap5B,IAERO,UACjB,CAEA,SAASiuC,EAAcxuC,GAGrB,OAAKo7B,EAFLp7B,EAAUo5B,EAAap5B,IAMhBA,EAAQgL,KAHN,IAIX,CAiCApV,EAAOC,QAAU,CACfulC,gBAAiBA,EACjBoT,cAAeA,EACfnT,gBAlCF,SAASA,EAAgBr7B,EAASs4B,GAChC,IAAImW,EAAYrV,EAAap5B,GAASoX,cAAc,SAChDs3B,EAAaF,EAAcxuC,GAC3B2uC,EAAW,eAAiBthC,IAC5BuhC,EAAO12C,SAASC,cAAc,QAC9B02C,EAAe32C,SAASC,cAAc,OAmB1C,OAjBAy2C,EAAKh2C,aAAa,OAAQ+1C,GAC1B3uC,EAAQ7G,YAAYy1C,GAEpBC,EAAaj2C,aAAa,OAAQ+1C,GAClCD,EAAWv1C,YAAY01C,GAEnBvW,IACGmW,IACHA,EAAYv2C,SAASC,cAAc,SACnC6H,EAAQ7G,YAAYs1C,IAGtBA,EAAUK,MAAMC,WACd,oBAAsBJ,EAAW,SAAWrW,EAAS,OAIrD8C,EAAgBsT,GACXrT,EAAgBwT,EAAcvW,GAGhCuW,CACT,EAQA,EAAE,CAAC,mBAAmB,IAAI,kBAAkB,KAAK,IAAI,CAAC,SAASj4C,EAAQhB,EAAOC,GAC9E,aAEAD,EAAOC,QAAU,SAAUm5C,GACzB,OAAkC,IAA9BA,EAAYj1C,QAAQ,KACfi1C,EAGFA,EAAYxvB,cAAcrf,QAAQ,WAAW,SAAU/E,GAC5D,OAAOA,EAAM,GAAGisB,aAClB,GACF,CAEA,EAAE,CAAC,GAAG,IAAI,CAAC,SAASzwB,EAAQhB,EAAOC,GACnC,aAMAD,EAAOC,QAJP,SAAgBghB,GACd,OAAOA,EAAU,GAAK,MACxB,CAIA,EAAE,CAAC,GAAG,IAAI,CAAC,SAASjgB,EAAQhB,EAAOC,GACnC,aAKA,IAAIo5C,EAAiC,mBAATjJ,KAAsBA,KAAOkJ,EAEzD,SAASA,EAAaC,GACpB,IAAI74C,EAAGiyB,EAAGnoB,EAAOgvC,EAAIC,EAAQl5C,EAIzBm5C,EACF,oEACE1xC,EAAS,GAEb,IAPoB,IAAI2xC,OACtB,+FAMiB91C,KAAK01C,GACtB,MAAM,IAAI54C,MAAM,2DAGlBJ,EAAI,EACJ,GAMEG,GAAW,GALNg5C,EAAWv1C,QAAQo1C,EAAaltC,OAAO9L,QAKxB,GAJpBi5C,EAAKE,EAAWv1C,QAAQo1C,EAAaltC,OAAO9L,QAIX,EAAK,EACtCoyB,GAAW,GAAL6mB,IAAa,GAJnBC,EAAKC,EAAWv1C,QAAQo1C,EAAaltC,OAAO9L,QAIZ,EAAK,GACrCiK,GAAW,EAALivC,IAAa,EAAW,GAJzBC,EAAWv1C,QAAQo1C,EAAaltC,OAAO9L,MAM5CyH,GACEkI,OAAOgpB,aAAax4B,IACnBiyB,EAAIziB,OAAOgpB,aAAavG,GAAK,KAC7BnoB,EAAI0F,OAAOgpB,aAAa1uB,GAAK,UACzBjK,EAAIg5C,EAAax4C,QAE1B,OAAOiH,CACT,CAEAhI,EAAOC,QAAU,CACfmwC,KAAM,SAAUmJ,GACd,OAAOF,EAAev4C,KAAK4C,OAAQ61C,EACrC,EACAK,MAAON,EAGT,EAAE,CAAC,GAAG,IAAI,CAAC,SAASt4C,EAAQhB,EAAOC,GACnC,aAEAD,EAAOC,QAAU,CACf45C,mCAAoC,CAClC,YACA,UACA,eACA,iBACA,cACA,SACA,YAEFC,mDAAoD,CAClD,YACA,UACA,eACA,iBACA,cACA,SACA,UACA,iBACA,YACA,QACA,SACA,8BACA,gBACA,QACA,mBACA,aAEFC,6BAA8B,CAC5B,gBACA,WACA,aACA,eAEFC,gCAAiC,CAC/B,WACA,OACA,WACA,aACA,iBAEFC,gDAAiD,CAC/C,YACA,UACA,eACA,iBACA,cACA,UAEFC,0CAA2C,CAAC,YAC5CC,kDAAmD,CACjD,WACA,oBACA,cAEFC,uDAAwD,CACtD,oBACA,YAIJ,EAAE,CAAC,GAAG,IAAI,CAAC,SAASp5C,EAAQhB,EAAOC,GACnC,aAEA,IAAI8zC,EAAe/yC,EAAQ,oCACvByZ,EAAiBzZ,EAAQ,6BACzB++B,EAAS/+B,EAAQ,qBAEjBmiC,EACFniC,EAAQ,uBAAuBmiC,uBAC7B9mB,EAAYrb,EAAQ,uBACpB2Z,EAAU3Z,EAAQ,qBAClB4Z,EAAwB5Z,EAAQ,sCAChCse,EAA0Bte,EAAQ,wCAClCkG,EAAkBlG,EAAQ,+BAC1B8kB,EAAc9kB,EAAQ,yBACtByK,EAAczK,EAAQ,2BACtB0jB,EAAY1jB,EAAQ,eACpB0Z,EAAS1Z,EAAQ,oBAcrB,SAASq5C,EAAat4C,GACpBb,KAAK4Z,QAAU/Y,EAAQgZ,OACvB7Z,KAAKo5C,WACHv4C,EAAQgZ,OAAOgC,mBAAmBC,qBAAqBb,UAAvDpa,eAGFb,KAAKq5C,SAAWx4C,EAAQgZ,OAAOgC,mBAAmBkE,QAClD/f,KAAKs5C,iBACHt5C,KAAKo5C,WACL,oCACAva,EAAO7+B,KAAKq5C,UACZ,QACFr5C,KAAKu5C,0BAA2B,EAChCv5C,KAAKw5C,aAAe,UACpBx5C,KAAKy5C,mBAAqB54C,EAAQypB,iBACpC,CAyxBA,SAASovB,EAA6B74C,GACpC,IAAI84C,EAAc94C,EAAQ84C,aAAe,CAAC,EACtCC,EAC6B,iBAAxB/4C,EAAQ+4C,YACX/4C,EAAQ+4C,YAAYlxB,cACpB7nB,EAAQ+4C,YAEd,MAAoB,qBAAhBA,GAEuB,SAAhBA,IAEPD,EAAYzyC,eAAe,YAC3ByyC,EAAYzyC,eAAe,YAKjC,CAEA,SAAS2yC,EAAwBh5C,GAC/B,IAAIxB,EAAGy6C,EAEP,IAAKz6C,EAAI,EAAGA,EAAImkB,EAAUq1B,6BAA6Bh5C,OAAQR,IAE7D,GADAy6C,EAASt2B,EAAUq1B,6BAA6Bx5C,IAC3CwB,EAAQqG,eAAe4yC,GAC1B,OAAOA,EAIX,OAAO,CACT,CAEA,SAASC,EAA0BC,GACjC,IAAI36C,EAAGg6B,EAAG4gB,EAAMH,EAEhB,IAAKzgB,EAAI,EAAGA,EAAI2gB,EAAMn6C,OAAQw5B,IAE5B,IADA4gB,EAAOD,EAAM3gB,GACRh6B,EAAI,EAAGA,EAAImkB,EAAUs1B,gCAAgCj5C,OAAQR,IAEhE,GADAy6C,EAASt2B,EAAUs1B,gCAAgCz5C,IAC9C46C,EAAK/yC,eAAe4yC,GACvB,OAAOA,EAKb,OAAO,CACT,CAoEA,SAASI,EAAiBr5C,GACxB,IAAIxB,EAAGy6C,EAAQK,EAAsBC,EAAuBR,EAE5D,IAAK/4C,EACH,OAAO,EAGT,GAAI64C,EAA6B74C,IAG/B,GAAkC,sBAFlC+4C,EAAc/4C,EAAQ+4C,aAAe,IAErBlxB,cACd,IACErpB,EAAI,EACJA,EAAImkB,EAAUo1B,mDAAmD/4C,OACjER,IACA,CAGA,GAFAy6C,EACEt2B,EAAUo1B,mDAAmDv5C,IAC1DwB,EAAQqG,eAAe4yC,GAC1B,OAAOA,EAET,GAAe,YAAXA,GAAmC,mBAAXA,GAE1B,GADAK,EAAuBN,EAAwBh5C,EAAQi5C,IAErD,OAAOA,EAAS,IAAMK,OAEnB,GAAe,cAAXL,IACTM,EAAwBL,EAA0Bl5C,EAAQi5C,KAExD,OAAOA,EAAS,IAAMM,CAG5B,MACK,GAAkC,SAA9BR,EAAYlxB,cACrB,OApGN,SAA+B7nB,GAC7B,IAAIxB,EAAGy6C,EAAQO,EACXV,EAAc94C,EAAQ84C,aAAe,CAAC,EAE1C,IACEt6C,EAAI,EACJA,EAAImkB,EAAUu1B,gDAAgDl5C,OAC9DR,IAGA,GADAy6C,EAASt2B,EAAUu1B,gDAAgD15C,IAC9DwB,EAAQqG,eAAe4yC,GAC1B,OAAOA,EAIX,GAAIH,EAAYzyC,eAAe,YAC7B,IACE7H,EAAI,EACJA,EAAImkB,EAAUw1B,0CAA0Cn5C,OACxDR,IAKA,GAHAy6C,EAASt2B,EAAUw1B,0CAA0C35C,IAGxDs6C,EAAYW,QAAQpzC,eAAe4yC,GACtC,MAAO,uBAAyBA,OAG/B,GAAIH,EAAYzyC,eAAe,YAGpC,IAFAmzC,EAAWV,EAAYU,UAAY,CAAC,GAEvBnzC,eAAe,aAC1B,IACE7H,EAAI,EACJA,EACAmkB,EAAU01B,uDAAuDr5C,OACjER,IAKA,GAHAy6C,EACEt2B,EAAU01B,uDAAuD75C,IAE9Dg7C,EAASnzC,eAAe4yC,GAC3B,MAAO,wBAA0BA,OAIrC,IACEz6C,EAAI,EACJA,EAAImkB,EAAUy1B,kDAAkDp5C,OAChER,IAIA,GAFAy6C,EAASt2B,EAAUy1B,kDAAkD55C,IAEhEg7C,EAASnzC,eAAe4yC,GAC3B,MAAO,wBAA0BA,EAMzC,OAAO,CACT,CAuCaS,CAAsB15C,OAE1B,CACL,IAAKxB,EAAI,EAAGA,EAAImkB,EAAUm1B,mCAAmC94C,OAAQR,IAGnE,GAFAy6C,EAASt2B,EAAUm1B,mCAAmCt5C,IAEjDwB,EAAQqG,eAAe4yC,GAC1B,OAAOA,EAIX,IAAKj5C,EAAQ25C,SAAS/6B,IACpB,MAAO,eAET,IAAK5e,EAAQ25C,SAASC,WACpB,MAAO,sBAET,IAA0B,IAAtB55C,EAAQ65C,YAAuB75C,EAAQ85C,WACzC,MAAO,YAEX,CAEA,OAAO,CACT,CA59BA30C,EAAgBoB,iCAAkC,EA0BlD+xC,EAAav0C,UAAUg2C,YAAc,WACnC,IAAIloC,EAAO1S,KACP6Z,EAAS7Z,KAAK4Z,QACdipB,EAAiBj5B,YAAW,WAC9BuR,EAAUgC,UAAUtD,EAAQ,+BAC9B,GAAGooB,GAEH,OAAO,IAAIzhC,SAAQ,SAAU0B,GAC3B2wC,EAAahtC,OACX,CACE8C,KAAM,0BACN4nC,iBACE79B,EAAK0mC,WACL,uBACAva,EAAOnsB,EAAK2mC,UACZ,QACF7I,aAAc99B,EAAK4mC,mBAErB,SAAUuB,GACRnoC,EAAKooC,cAAgBD,EACrBjV,aAAa/C,GACb1nB,EAAUgC,UAAUtD,EAAQ,gCAC5B3X,EAAQwQ,EACV,GAEJ,GACF,EAuRAymC,EAAav0C,UAAUm2C,aAAe,SAAUl6C,GAC9C,IAAIm6C,EACFC,EACAC,EACAV,EACA1lB,EACA5qB,EACAwjB,EACAytB,EACAC,EACE1oC,EAAO1S,KACPq7C,EAAYr7C,KAAK86C,cAAczK,WAUnC,OADA2K,EAAgBd,EAAiBr5C,KAE/Bo6C,EAAe,IAAI1hC,EACjBC,EAAO8hC,qDAEoB,iBAAlBN,IACTC,EAAa5gC,QAAU,qBAAuB2gC,EAAgB,aAGzDx6C,QAAQ2B,OAAO84C,KAExBE,EAAgBt6C,EAAQs6C,eAAiB,CAAC,EAC1CD,EAAUr6C,EAAQq6C,SAAW,CAAC,EAC9BV,EAAW35C,EAAQ25C,UAAY,CAAC,EAChC9sB,EAAiB7sB,EAAQ6sB,gBAAkB,CAAC,EAC5CoH,EAAS,CACPymB,OAAQ16C,EAAQ06C,OAChBC,IAAK36C,EAAQ26C,IACb9tB,eAAgB,CACd+tB,MAAO/tB,EAAeguB,cACtBC,MAAOjuB,EAAekuB,gBACtBC,KAAMnuB,EAAeouB,SACrBrL,MAAO/iB,EAAequB,OACtB1Q,WAAY3d,EAAe2d,WAC3B/uB,YAAaoR,EAAepR,aAE9B0/B,UAAWn7C,EAAQm7C,UACnBrC,YAAa94C,EAAQ84C,YACrBsC,UAAWr3B,EAAYsB,SACrBxT,EAAK0mC,WACH,qCACAva,EAAOnsB,EAAK2mC,UACZ,QACF,CACEpoC,QAASoqC,EACTr8C,EAAGw7C,EAASyB,WAAazB,EAAS/6B,IAClCtgB,EAAGq7C,EAAS0B,kBAAoB1B,EAASC,WACzCnxC,EAAG,IAGPuyC,KAAMX,EAAQY,SACdvpB,cAAe1xB,EAAQ0xB,cACvBjW,YAAa4+B,EAAQ5+B,YACrB8N,gBAAiBvpB,EAAQ0b,aACzB4/B,eAAgBt7C,EAAQs7C,eACxBC,kBAAmB,CACjBC,UAAWx7C,EAAQoc,YACnBq/B,4BAA6Bz7C,EAAQy7C,4BACrCC,OAAQ17C,EAAQ07C,OAChBC,YAAa37C,EAAQ47C,yBAEvBC,UAAW77C,EAAQ87C,UACnBC,cAAe/7C,EAAQ+4C,YACvBiD,OAAQ,OACRC,SAAUj8C,EAAQk8C,QAClBtB,MAAOP,EAAQQ,cACfC,MAAOT,EAAQU,gBACfoB,UAAWn8C,EAAQm8C,UACnB1yB,kBAAmB5X,EAAK+mC,mBACxBwD,4BAA6Bp8C,EAAQ85C,WACrCuC,WAAYr8C,EAAQs8C,MACpBC,uBAAwBv8C,EAAQu8C,uBAChCC,MAAOx8C,EAAQw8C,MACfC,iBAAkBz8C,EAAQy8C,iBAC1BjS,WAAY6P,EAAQ7P,WACpBqP,UAAW75C,EAAQ65C,UACnB6C,UAAW34B,EAAYsB,SACrBxT,EAAK0mC,WACH,qCACAva,EAAOnsB,EAAK2mC,UACZ,QACF,CACEpoC,QAASoqC,EACTr8C,EAAGw7C,EAAS/6B,IACZtgB,EAAGq7C,EAASC,aAGhB+C,eAAgB38C,EAAQ28C,eACxB/M,MAAOyK,EAAQa,QAGjBrpC,EAAK8mC,aAAe34C,EAAQ+4C,YAAYlxB,cACpChW,EAAK6mC,0BACPp+B,EAAUgC,UACRzK,EAAKkH,QACLlH,EAAK8mC,aAAe,qDAGfh5C,QAAQ2B,OACb,IAAIoX,EAAeC,EAAOikC,sCAI9B/qC,EAAK6mC,0BAA2B,EAEhCrvC,EAAU,IAAIlE,EAIT0zC,EAA6B74C,KAChC6R,EAAKgrC,sBAAwBhrC,EAAKirC,6BAChC,SAAU/kC,GACR1O,EAAQhI,QAAQ0W,EAClB,IACA,SAAU7R,GACRmD,EAAQ/H,OAAO4E,EACjB,IAGF2L,EAAKooC,cAAc9zB,KACjB,CACE+N,MAAOomB,EAAcpmB,OAjdF,KAkdnBC,OAAQmmB,EAAcnmB,QAjdF,KAmdtBtiB,EAAKgrC,wBAIThrC,EAAKkH,QACFM,QAAQ,CACPnP,OAAQ,OACRoP,SAAU,wBACVhQ,KAAM2qB,IAEPrtB,MAAK,SAAUyV,GACd,IAAI02B,EAAc12B,EAAS0gC,gBAAgBhK,YAE3Cz4B,EAAUgC,UACRzK,EAAKkH,QACLlH,EAAK8mC,aAAe,uCAEtB9mC,EAAKmrC,qBAAuBh9C,EAExB64C,EAA6B74C,IAC/B6R,EAAK6mC,0BAA2B,EAEL,iBAAhB3F,GAA4BA,EAAY/zC,OACjDqK,EAAQ/H,OACN,IAAIoX,EACFC,EAAOskC,uDAIX1C,EAAwBv6C,EAAQk9C,eAAe,CAC7CC,UAAW9gC,EAAS0gC,gBAAgBK,0BAGDz9C,QACnC46C,EAAsB3zC,MAAK,WACzByC,EAAQhI,SACV,IAEAgI,EAAQhI,WAIZrB,EAAQk9C,eACN,CAAEC,UAAW9gC,EAAS0gC,gBAAgBK,eACtC,WACEvrC,EAAKooC,cAAcjJ,SAAS30B,EAAS0gC,gBAAgBhK,YACvD,GAGN,IACChtC,OAAM,SAAUG,GACf,IAAI8R,EAAS9R,EAAIsT,SAAWtT,EAAIsT,QAAQ4I,WAExCvQ,EAAKooC,cAAcvJ,QACnB7+B,EAAK6mC,0BAA2B,EAEjB,MAAX1gC,EAeJ3O,EAAQ/H,OACNic,EAAwBrX,EAAK,CAC3BgH,KAAMyL,EAAO0kC,mCAAmCnwC,KAChDrO,KAAM8Z,EAAO0kC,mCAAmCx+C,KAChD0W,QAASoD,EAAO0kC,mCAAmC9nC,WAlBrDlM,EAAQ/H,OACN,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAO2kC,qCAAqCpwC,KAClDrO,KAAM8Z,EAAO2kC,qCAAqCz+C,KAClD0W,QAASoD,EAAO2kC,qCAAqC/nC,QACrDiE,QAAS,CACPC,cAAevT,KAezB,IAEKmD,GACT,EAmBAivC,EAAav0C,UAAU2Y,SAAW,SAAUuX,GAC1C,IAAIpiB,EAAO1S,KACP6Z,EAAS7Z,KAAK4Z,QASlB,OAPAkb,EAASA,GAAUlQ,EAAY5U,SAGpBouC,aACTtpB,EAASA,EAAOspB,YAGdtpB,EAAOxrB,GAAKwrB,EAAOupB,YACd79C,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAO8kC,uBAAuBvwC,KACpCrO,KAAM8Z,EAAO8kC,uBAAuB5+C,KACpC0W,QAASoD,EAAO8kC,uBAAuBloC,QACvCiE,QAAS,CACPC,cAAe,CACbikC,UAAWzpB,EAAOypB,UAClB/gC,MAAOsX,EAAO0pB,eAKb1pB,EAAOypB,UACT/9C,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAO0kC,mCAAmCnwC,KAChDrO,KAAM8Z,EAAO0kC,mCAAmCx+C,KAChD0W,QAASoD,EAAO0kC,mCAAmC9nC,QACnDiE,QAAS,CACPC,cAAe,CACbikC,UAAWzpB,EAAOypB,UAClB/gC,MAAOsX,EAAO0pB,eAOjB3kC,EACJK,QAAQ,CACPC,SAAU,kCACVpP,OAAQ,OACRZ,KAAMnK,KAAKy+C,oBAAoB3pB,KAEhCrtB,MAAK,SAAUyV,GACd,IAAI9K,EAAUM,EAAKgsC,uBAAuBxhC,GAc1C,OAZI1a,OAAOmwC,YACTx3B,EAAUgC,UACRtD,EACAnH,EAAK8mC,aAAe,mDAGtBr+B,EAAUgC,UACRtD,EACAnH,EAAK8mC,aAAe,uCAIjBpnC,CACT,IACCxL,OAAM,SAAUG,GAMf,OALAoU,EAAUgC,UACRtD,EACAnH,EAAK8mC,aAAe,sCAGfh5C,QAAQ2B,OACbic,EAAwBrX,EAAK,CAC3BgH,KAAMyL,EAAOmlC,kCAAkC5wC,KAC/CrO,KAAM8Z,EAAOmlC,kCAAkCj/C,KAC/C0W,QAASoD,EAAOmlC,kCAAkCvoC,UAGxD,GACJ,EASA+iC,EAAav0C,UAAUg6C,YAAc,WAC/B5+C,KAAK6+C,yBACP1jC,EAAUgC,UACRnd,KAAK4Z,QACL5Z,KAAKw5C,aAAe,mDAGxBx5C,KAAK86C,cAAcvJ,OACrB,EASA4H,EAAav0C,UAAUk6C,YAAc,WACnC9+C,KAAK86C,cAAc1Z,OACrB,EAEA+X,EAAav0C,UAAU+4C,4BAA8B,SACnDz7C,EACAC,GAEA,IAAIuQ,EAAO1S,KACP6Z,EAAS7Z,KAAK4Z,QAElB,OAAO,SAAU7S,EAAK+tB,GAEpB,GADApiB,EAAK6mC,0BAA2B,EAC5BxyC,EACF,GAAiB,+BAAbA,EAAIrH,KAAuC,CAC7C,GAAIo1B,GAA+B,qBAArBA,EAAOypB,UASnB,OANApjC,EAAUgC,UACRtD,EACAnH,EAAK8mC,aAAe,wCAEtBr3C,EAAO,IAAIoX,EAAeC,EAAO0kC,qCAUnC/iC,EAAUgC,UACRtD,EACAnH,EAAK8mC,aAAe,8CAEtBr3C,EAAO,IAAIoX,EAAeC,EAAOulC,6BACnC,MACEh4C,EAAIrH,MACJqH,EAAIrH,KAAKuD,QAAQ,oCAAsC,GAEvDd,EACE,IAAIoX,EAAe,CACjB7Z,KAAM8Z,EAAOwlC,iCAAiCt/C,KAC9CqO,KAAMyL,EAAOwlC,iCAAiCjxC,KAC9CqI,QAASoD,EAAOwlC,iCAAiC5oC,QACjDiE,QAAS,CACPC,cAAevT,WAKd+tB,IACJtyB,OAAOmwC,aACVjgC,EAAKooC,cAAcjJ,SAASn/B,EAAK4mC,kBAGnC5mC,EACG6K,SAASuX,GACTrtB,KAAKvF,GACL0E,MAAMzE,GACNsF,MAAK,WACJiL,EAAKooC,cAAcvJ,OACrB,IAEN,CACF,EAEA4H,EAAav0C,UAAU85C,uBAAyB,SAAUxhC,GACxD,IAAI9K,EACA6sC,EAAU,CAAC,EAqBf,OAnBI/hC,EAASmhB,iBACX4gB,EAAU/hC,EAASmhB,eAAe,IAGpCjsB,EAAU,CACR2H,MAAOklC,EAAQllC,MACfM,QAAS,CAAC,EACVtM,KAAMkxC,EAAQlxC,MAGZkxC,EAAQ5kC,UACN4kC,EAAQ5kC,QAAQ6kC,YAClB9sC,EAAQiI,QAAU4kC,EAAQ5kC,QAAQ6kC,WAEhCD,EAAQ5kC,QAAQkY,gBAClBngB,EAAQmgB,cAAgB0sB,EAAQ5kC,QAAQkY,gBAIrCngB,CACT,EAmBA+mC,EAAav0C,UAAUu6C,sBAAwB,WAC7C,IAAIrqB,EAASlQ,EAAY5U,QAEzB,QAAI8kB,EAAOypB,WAIJp3C,QACL2tB,EAAO0pB,WAAa1pB,EAAOsqB,eAAiBtqB,EAAOuqB,YAEvD,EAEAlG,EAAav0C,UAAU65C,oBAAsB,SAAU3pB,GACrD,IACIhZ,EADsB9b,KAAK4Z,QAAQiC,mBACQC,qBAY/C,MAXW,CACTwO,kBAAmBtqB,KAAKy5C,mBACxB6F,cAAe,CACb/sB,cAAeuC,EAAO0pB,WAAa1pB,EAAOtX,MAC1CygC,aAAcnpB,EAAOsqB,eAAiBtqB,EAAOkpB,UAC7CuB,QAASzqB,EAAOuqB,aAAevqB,EAAO0qB,QACtCC,WAAY3jC,EAAqBoO,OAAOw1B,iBACxC7C,OAAQ,QAKd,EAmMA1D,EAAav0C,UAAU0O,SAAW,WAChC,IAAIZ,EAAO1S,KAQX,OANA0S,EAAKooC,cAAcxnC,WAEnBoG,EAAsBhH,EAAM+G,EAAQ0/B,EAAav0C,YAEjDuW,EAAUgC,UAAUzK,EAAKkH,QAAS,oCAE3BpZ,QAAQ0B,SACjB,EAEApD,EAAOC,QAAUwL,EAAYE,cAAc0uC,EAE3C,EAAE,CAAC,sBAAsB,IAAI,4BAA4B,IAAI,sBAAsB,IAAI,qCAAqC,IAAI,uCAAuC,IAAI,mCAAmC,IAAI,oBAAoB,IAAI,wBAAwB,IAAI,oBAAoB,IAAI,mBAAmB,IAAI,cAAc,IAAI,8BAA8B,GAAG,0BAA0B,KAAK,IAAI,CAAC,SAASr5C,EAAQhB,EAAOC,GACpa,aAMA,IAAIoc,EAAYrb,EAAQ,oBACpB6a,EAA6B7a,EAAQ,uCACrC8a,EAAuB9a,EAAQ,iCAC/B+a,EAAkB/a,EAAQ,4BAC1Bq5C,EAAer5C,EAAQ,4BAEvByK,EAAczK,EAAQ,2BACtByZ,EAAiBzZ,EAAQ,0BACzB0Z,EAAS1Z,EAAQ,mBA6GrBhB,EAAOC,QAAU,CACf8G,OAAQ0E,GAvCV,SAAgB1J,GACd,IAAI8H,EAAO,gBAEX,OAAOgS,EACJG,OAAO,CACNnS,KAAMA,EACNkR,OAAQhZ,EAAQgZ,OAChBkB,cAAela,EAAQka,gBAExBtT,MAAK,WACJ,OAAOmT,EAAqB/U,OAAO,CACjCkV,cAAela,EAAQka,cACvBlB,OAAQhZ,EAAQgZ,OAChBmB,MAAOna,EAAQma,MACfC,UAAWJ,EAAgBhV,OAAOhF,EAAQka,eAC1CpS,KAAMA,GAEV,IACClB,MAAK,SAAUoS,GACd,IACIxR,EAASwR,EAAOgC,mBAIpB,OAFAhb,EAAQgZ,OAASA,GAEiC,IAA9CxR,EAAOyT,qBAAqBqO,cACvB3pB,QAAQ2B,OACb,IAAIoX,EAAeC,EAAOmmC,6BAI9BxkC,EAAUgC,UAAUtD,EAAQ,6BAEL,IAAIs/B,EAAat4C,GAEZ+5C,cAC9B,GACJ,IAQE1/B,QAtHY,UAyHd,EAAE,CAAC,mBAAmB,IAAI,sCAAsC,IAAI,yBAAyB,IAAI,2BAA2B,IAAI,gCAAgC,IAAI,2BAA2B,IAAI,kBAAkB,IAAI,0BAA0B,KAAK,IAAI,CAAC,SAASpb,EAAQhB,EAAOC,GACrR,aAqBA,IAAIwa,EAAiBzZ,EAAQ,6BAE7BhB,EAAOC,QAAU,CACf4gD,0BAA2B,CACzB5xC,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,4BACN0W,QAAS,kDAEXqnC,kCAAmC,CACjC1vC,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,oCACN0W,QAAS,gDAEXkoC,uBAAwB,CACtBvwC,KAAMwL,EAAehL,MAAMw9B,SAC3BrsC,KAAM,yBACN0W,QAAS,0DAEX2oC,4BAA6B,CAC3BhxC,KAAMwL,EAAehL,MAAMw9B,SAC3BrsC,KAAM,8BACN0W,QAAS,2DAEX4oC,iCAAkC,CAChCjxC,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,mCACN0W,QACE,uGAEJ8nC,mCAAoC,CAClCnwC,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,qCACN0W,QAAS,qCAEXklC,oDAAqD,CACnDvtC,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,sDACN0W,QAAS,6CAEX0nC,oDAAqD,CACnD/vC,KAAMwL,EAAehL,MAAM+c,QAC3B5rB,KAAM,sDACN0W,QAAS,sDAEXuoC,kCAAmC,CACjC5wC,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,oCACN0W,QAAS,mDAEX+nC,qCAAsC,CACpCpwC,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,uCACN0W,QAAS,sCAIb,EAAE,CAAC,4BAA4B,MAAM,IAAI,CAAC,SAAStW,EAAQhB,EAAOC,GAClE,aAEA,IAAI8zC,EAAe/yC,EAAQ,oCACvByZ,EAAiBzZ,EAAQ,6BACzB0Z,EAAS1Z,EAAQ,oBAEjB2Z,EAAU3Z,EAAQ,qBAClByK,EAAczK,EAAQ,2BACtBqb,EAAYrb,EAAQ,uBACpB4Z,EAAwB5Z,EAAQ,sCAChCse,EAA0Bte,EAAQ,wCAClC0jB,EAAY1jB,EAAQ,uBAEpBmiC,EACFniC,EAAQ,uBAAuBmiC,uBA+CjC,SAAS2d,EAAW/+C,GAClB,IAAIke,EAAgBle,EAAQgZ,OAAOgC,mBAEnC7b,KAAK4Z,QAAU/Y,EAAQgZ,OACvB7Z,KAAKo5C,WACHr6B,EAAcjD,qBAAqBb,UAAnC8D,eACF/e,KAAKq5C,SAAWt6B,EAAcgB,QAC9B/f,KAAK6/C,iBAAkB,EAErBr9C,OAAOmwC,aAC0C,mBAA1CnwC,OAAOmwC,YAAYmN,mBAE1B9/C,KAAK+/C,aAAev9C,OAAOmwC,YAAYmN,qBAAuB,SAE9D9/C,KAAK+/C,aACH//C,KAAKo5C,WACL,wBACCp5C,KAAKq5C,SAAW,GAAK,QACtB,OAEN,CAEAuG,EAAWh7C,UAAUg2C,YAAc,WACjC,IAAIloC,EAAO1S,KAEX,OAAO,IAAIQ,SAAQ,SAAU0B,GAC3B,IAAI2gC,EAAiBj5B,YAAW,WAC9BuR,EAAUgC,UAAUzK,EAAKkH,QAAS,4BACpC,GAAGqoB,GAEH4Q,EAAahtC,OACX,CACE8C,KAAM6a,EAAUw8B,mBAChBhrB,OAAQxR,EAAUy8B,aAClBlrB,MAAOvR,EAAU08B,YACjB3P,iBACE79B,EAAK0mC,WACL,wBACC1mC,EAAK2mC,SAAW,GAAK,QACtB,QACF7I,aACE99B,EAAK0mC,WACL,kCACC1mC,EAAK2mC,SAAW,GAAK,QACtB,UAEJ,SAAUwB,GACRnoC,EAAKooC,cAAgBD,EACrBjV,aAAa/C,GACb1nB,EAAUgC,UAAUzK,EAAKkH,QAAS,6BAClC1X,EAAQwQ,EACV,GAEJ,GACF,EA0DAktC,EAAWh7C,UAAU2Y,SAAW,SAAU1c,GACxC,IAAI6R,EAAO1S,KAEX,OAAKa,GA0RP,SAA0BA,GACxB,IAAIxB,EAAGy6C,EAEP,IAAKz6C,EAAI,EAAGA,EAAImkB,EAAU28B,8BAA8BtgD,OAAQR,IAG9D,GAFAy6C,EAASt2B,EAAU28B,8BAA8B9gD,IAE5CwB,EAAQqG,eAAe4yC,GAC1B,OAAO,EAIX,OAAO,CACT,CAtSkBI,CAAiBr5C,GACxBL,QAAQ2B,OACb,IAAIoX,EAAeC,EAAO4mC,8CAI1B1tC,EAAKmtC,gBACAr/C,QAAQ2B,OACb,IAAIoX,EAAeC,EAAO6mC,8CAIvB,IAAI7/C,SAAQ,SAAU0B,EAASC,GACpCuQ,EAAK4tC,4BAA4Bz/C,GAAS+F,MAAMzE,GAEhDuQ,EAAKooC,cAAc9zB,KACjBnmB,EAAQ0/C,aACR7tC,EAAK8tC,wBAAwBt+C,EAASC,GAE1C,GACF,EAEAy9C,EAAWh7C,UAAU07C,4BAA8B,SAAUz/C,GAC3D,IAAI6R,EAAO1S,KAIX,OAFAA,KAAK6/C,iBAAkB,EAEhB7/C,KAAK4Z,QACTM,QAAQ,CACPnP,OAAQ,OACRoP,SAAU,2BACVhQ,KAAM,CACJs2C,aAAc,CACZC,UAAWl+C,OAAOwR,SAASC,SAAW,KAAOzR,OAAOwR,SAASgJ,SAC7D2jC,SAAU9/C,EAAQ8/C,SAClBpkC,aAAc1b,EAAQ0b,aACtBqkC,YAAa5gD,KAAK+/C,iBAIvBt4C,MAAK,SAAUyV,GACd,IAQI2jC,EARAjN,EACFlhC,EAAK0mC,WACL,kCACC1mC,EAAK2mC,SAAW,GAAK,QACtB,SACEv9B,EACFpJ,EAAKkH,QAAQiC,mBAAmBC,qBAC9BzT,EAASxH,EAAQwH,QAAU,CAAC,EAGhCw4C,EAAc,CACZ9+B,YAAajG,EAAqBiG,YAClC0+B,aAAcvjC,EAASujC,aACvBG,YAAaluC,EAAKqtC,aAClBp1B,mBAAoB7O,EAAqBoM,WAAWyC,mBACpDm2B,iBAAkBhlC,EAAqBoM,WAAWzL,kBAClD2F,QAASoB,EAAUu9B,oBAGrB5gD,OAAO4B,KAAKsG,GAAQrG,SAAQ,SAAUC,GACT,mBAAhBoG,EAAOpG,KAChB4+C,EAAY5+C,GAAOoG,EAAOpG,GAE9B,IAEA2xC,GAAezzC,OAAO4B,KAAK8+C,GACxBvzC,KAAI,SAAUrL,GACb,OAAOA,EAAM,IAAM4+C,EAAY5+C,EACjC,IACCqtC,KAAK,KAER58B,EAAKooC,cAAcjJ,SAAS+B,EAC9B,IACChtC,OAAM,SAAUG,GACf,IAAI8R,EAAS9R,EAAIsT,SAAWtT,EAAIsT,QAAQ4I,WAIxC,OAFAvQ,EAAKsuC,eAEU,MAAXnoC,EACKrY,QAAQ2B,OACbic,EAAwBrX,EAAKyS,EAAOynC,oCAIjCzgD,QAAQ2B,OACbic,EAAwBrX,EAAKyS,EAAO0nC,wBAExC,GACJ,EAEAtB,EAAWh7C,UAAU47C,wBAA0B,SAAUt+C,EAASC,GAChE,IAAIuQ,EAAO1S,KAEX,OAAIwC,OAAOmwC,YACF,SAAUwO,EAAgB/uC,GAG/B,OAFAM,EAAKmtC,iBAAkB,EAEnBsB,GACFhmC,EAAUgC,UACRzK,EAAKkH,QACL,2DAEFzX,EACEic,EACE+iC,EACA3nC,EAAO4nC,2BAKDhvC,EAAQgsC,gBAUpB1rC,EAAK2uC,oBAAoBjvC,EAAQgsC,YAAY32C,KAAKvF,GAAS0E,MAAMzE,IAT/DgZ,EAAUgC,UACRzK,EAAKkH,QACL,mDAEFzX,EAAO,IAAIoX,EAAeC,EAAO0nC,yBAMrC,EAGK,SAAUI,EAAiBlvC,GAChC,GAAIkvC,EAGF,OAFA5uC,EAAKmtC,iBAAkB,EAEM,+BAAzByB,EAAgB5hD,MAClByb,EAAUgC,UACRzK,EAAKkH,QACL,+CAEFzX,EAAO,IAAIoX,EAAeC,EAAO4nC,2BAMjCE,EAAgB5hD,MAChB4hD,EAAgB5hD,KAAKuD,QAAQ,oCAAsC,GAEnEkY,EAAUgC,UACRzK,EAAKkH,QACL,+CAEFzX,EACE,IAAIoX,EAAe,CACjB7Z,KAAM8Z,EAAO+nC,6BAA6B7hD,KAC1CqO,KAAMyL,EAAO+nC,6BAA6BxzC,KAC1CqI,QAASoD,EAAO+nC,6BAA6BnrC,QAC7CiE,QAAS,CACPC,cAAegnC,QAQvBnmC,EAAUgC,UAAUzK,EAAKkH,QAAS,kCAClClH,EAAKsuC,oBACL7+C,EACEic,EAAwBkjC,EAAiB9nC,EAAO0nC,0BAMpDxuC,EAAK2uC,oBAAoBjvC,GAAS3K,KAAKvF,GAAS0E,MAAMzE,EACxD,CACF,EAEAy9C,EAAWh7C,UAAUy8C,oBAAsB,SAAUjvC,GACnD,IAAIM,EAAO1S,KAEX,MAAyB,YAArBoS,EAAQovC,UACVrmC,EAAUgC,UAAUzK,EAAKkH,QAAS,0CAClClH,EAAKsuC,eAEExgD,QAAQ2B,OAAO,IAAIoX,EAAeC,EAAO4nC,2BA4DpD,SAAkChvC,GAChC,MAAO,CACLA,EAAQqvC,eACRrvC,EAAQsvC,YACRtvC,EAAQuvC,uBACR7yB,MAAK,SAAU5lB,GACf,OAAkB,MAAXA,GAA+B,SAAZA,CAC5B,GACF,CAjEM04C,CAAyBxvC,IAC3B+I,EAAUgC,UACRzK,EAAKkH,QACL,kDAEFlH,EAAKsuC,eAEExgD,QAAQ2B,OACb,IAAIoX,EAAeC,EAAOqoC,gDAIvBnvC,EAAKkH,QACTM,QAAQ,CACPC,SAAU,mCACVpP,OAAQ,OACRZ,KAAM,CACJ23C,eAAgB,CACdC,oBAAqB3vC,EAAQuvC,sBAC7BlB,aAAcruC,EAAQsvC,YACtBM,cAAe5vC,EAAQqvC,mBAI5Bh6C,MAAK,SAAUyV,GAWd,OAVAxK,EAAKsuC,eACDx+C,OAAOmwC,YACTx3B,EAAUgC,UACRzK,EAAKkH,QACL,+CAGFuB,EAAUgC,UAAUzK,EAAKkH,QAAS,mCAG7BsD,EAAS+kC,gBAAgB,EAClC,IACCr7C,OAAM,SAAUs7C,GAWf,OAVAxvC,EAAKsuC,eACDx+C,OAAOmwC,YACTx3B,EAAUgC,UACRzK,EAAKkH,QACL,8CAGFuB,EAAUgC,UAAUzK,EAAKkH,QAAS,kCAG7BpZ,QAAQ2B,OACbic,EACE8jC,EACA1oC,EAAO2oC,wCAGb,GACJ,EAYAvC,EAAWh7C,UAAUo8C,aAAe,WAClChhD,KAAK6/C,iBAAkB,EACvB7/C,KAAK86C,cAAcvJ,OACrB,EAcAqO,EAAWh7C,UAAU0O,SAAW,WAC9B,IAAIZ,EAAO1S,KAEX,OAAO,IAAIQ,SAAQ,SAAU0B,GAC3BwQ,EAAKooC,cAAcxnC,WAEnBoG,EAAsBhH,EAAM+G,EAAQmmC,EAAWh7C,YAE/CuW,EAAUgC,UAAUzK,EAAKkH,QAAS,iCAElC1X,GACF,GACF,EAgBApD,EAAOC,QAAUwL,EAAYE,cAAcm1C,EAE3C,EAAE,CAAC,sBAAsB,IAAI,4BAA4B,IAAI,sBAAsB,IAAI,qCAAqC,IAAI,uCAAuC,IAAI,mCAAmC,IAAI,oBAAoB,IAAI,sBAAsB,IAAI,mBAAmB,IAAI,0BAA0B,KAAK,IAAI,CAAC,SAAS9/C,EAAQhB,EAAOC,GACvV,aAKA,IAAIwa,EAAiBzZ,EAAQ,0BACzB6a,EAA6B7a,EAAQ,uCACrCm/B,EAAmBn/B,EAAQ,8BAC3B8/C,EAAa9/C,EAAQ,yBACrB8a,EAAuB9a,EAAQ,iCAC/B+a,EAAkB/a,EAAQ,4BAE1B0Z,EAAS1Z,EAAQ,mBACjByK,EAAczK,EAAQ,2BAiF1B,SAASsiD,IACP,OAAOj7C,QAAQ3E,OAAOmwC,aAAe1T,EAAiBwT,iBACxD,CAEA3zC,EAAOC,QAAU,CACf8G,OAAQ0E,GA9DV,SAAgB1J,GACd,IAAI8H,EAAO,aAEX,OAAOgS,EACJG,OAAO,CACNnS,KAAMA,EACNkR,OAAQhZ,EAAQgZ,OAChBkB,cAAela,EAAQka,gBAExBtT,MAAK,WACJ,OAAK26C,IAME5hD,QAAQ0B,UALN1B,QAAQ2B,OACb,IAAIoX,EAAeC,EAAO6oC,kCAKhC,IACC56C,MAAK,WACJ,OAAOmT,EAAqB/U,OAAO,CACjCkV,cAAela,EAAQka,cACvBlB,OAAQhZ,EAAQgZ,OAChBmB,MAAOna,EAAQma,MACfC,UAAWJ,EAAgBhV,OAAOhF,EAAQka,eAC1CpS,KAAMA,GAEV,IACClB,MAAK,SAAUoS,GAMd,OAHAhZ,EAAQgZ,OAASA,EACDhZ,EAAQgZ,OAAOgC,mBAAmBC,qBAE/BoM,WAME,IAAI03B,EAAW/+C,GAEV+5C,cAPjBp6C,QAAQ2B,OACb,IAAIoX,EAAeC,EAAO8oC,wBAOhC,GACJ,IAoBEF,YAAaA,EAKblnC,QA9FY,UAiGd,EAAE,CAAC,sCAAsC,IAAI,yBAAyB,IAAI,2BAA2B,IAAI,gCAAgC,IAAI,wBAAwB,IAAI,6BAA6B,IAAI,kBAAkB,IAAI,0BAA0B,KAAK,IAAI,CAAC,SAASpb,EAAQhB,EAAOC,GAC5R,aAEAD,EAAOC,QAAU,CACf0zC,eAAgB3yC,EAAQ,gDAG1B,EAAE,CAAC,+CAA+C,KAAK,IAAI,CAAC,SAASA,EAAQhB,EAAOC,GACpF,aAEAD,EAAOC,QAAU,CACfihD,mBAAoB,6BACpBE,YAAa,IACbD,aAAc,IACdc,mBAAoB,KACpBZ,8BAA+B,CAAC,WAAY,gBAG9C,EAAE,CAAC,GAAG,IAAI,CAAC,SAASrgD,EAAQhB,EAAOC,GACnC,aAsBA,IAAIwa,EAAiBzZ,EAAQ,6BAE7BhB,EAAOC,QAAU,CACfsjD,iCAAkC,CAChCt0C,KAAMwL,EAAehL,MAAMw9B,SAC3BrsC,KAAM,mCACN0W,QAAS,6BAEXksC,uBAAwB,CACtBv0C,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,yBACN0W,QAAS,gDAEXgqC,4CAA6C,CAC3CryC,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,8CACN0W,QAAS,yCAEXiqC,4CAA6C,CAC3CtyC,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,8CACN0W,QAAS,mDAEX+rC,uCAAwC,CACtCp0C,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,yCACN0W,QAAS,iDAEXmrC,6BAA8B,CAC5BxzC,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,+BACN0W,QACE,yGAEJyrC,6CAA8C,CAC5C9zC,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,+CACN0W,QACE,8FAEJgrC,wBAAyB,CACvBrzC,KAAMwL,EAAehL,MAAMw9B,SAC3BrsC,KAAM,0BACN0W,QAAS,wDAEX6qC,kCAAmC,CACjClzC,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,oCACN0W,QAAS,2CAEX8qC,uBAAwB,CACtBnzC,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,yBACN0W,QAAS,yCAIb,EAAE,CAAC,4BAA4B,MAAM,IAAI,CAAC,SAAStW,EAAQhB,EAAOC,GAClE,aAEA,IAAIoc,EAAYrb,EAAQ,uBACpBwI,EAASxI,EAAQ,oBAAoBwI,OACrCw5B,EAAMhiC,EAAQ,YACd4Z,EAAwB5Z,EAAQ,sCAChCo8B,EAAiCp8B,EAAQ,+CACzC+hC,EAAU/hC,EAAQ,sBAClByW,EAAOzW,EAAQ,mBACf++B,EAAS/+B,EAAQ,qBACjB2Z,EAAU3Z,EAAQ,qBAClB4E,EAAe5E,EAAQ,4BACvByZ,EAAiBzZ,EAAQ,6BAEzB0jB,EAAY1jB,EAAQ,uBACpBoiC,EAAS1e,EAAU0e,OACnB1oB,EAASgK,EAAUhK,OACnBjP,EAAczK,EAAQ,2BA6GtByiD,EAAqB,CACvBC,KAAM,OACNC,WAAY,aACZ,mBAAoB,OACpB,cAAe,SACfC,SAAU,WACVv2C,IAAK,MACLw2C,SAAU,WACVC,QAAS,WA8BX,SAASC,EAAwBhiD,GAC/B,IAAIiiD,EAAwBjiD,EAAQiiD,uBAAyB,CAAC,EAE9Dp+C,EAAa9E,KAAKI,MAElBA,KAAK+iD,aAAexsC,IACpBvW,KAAK4Z,QAAU/Y,EAAQgZ,OACvB7Z,KAAKgjD,uBAAyB,CAC5BC,WAA+C,IAApCH,EAAsBG,UACjCh7B,WAA+C,IAApC66B,EAAsB76B,WAEnCjoB,KAAKs8B,kBAAiD,IAA7Bz7B,EAAQ07B,iBAAyB,EAAI,EAC9Dv8B,KAAKw8B,kBAvCgC,uBAwCrCx8B,KAAKkjD,yBACHljD,KAAKmjD,2CACPnjD,KAAKojD,gCAAkCjjD,OAAO4B,KAC5C/B,KAAKkjD,0BACL51C,IACA,SAAUrL,GACR,OAAOjC,KAAKkjD,yBAAyBjhD,EACvC,EAAE0Z,KAAK3b,OAETA,KAAKyjC,KAAO,IAAI3B,EAAI,CAAE7wB,QAASjR,KAAK+iD,cACtC,CAEAr+C,EAAaiB,YAAYk9C,GAEzBA,EAAwBj+C,UAAUu+C,yCAChC,WACE,IAAIpkC,EAAgB/e,KAAK4Z,QAAQiC,mBAC7Bk6B,EAA0Bh3B,EAAcjD,qBAAqB4N,WAC7Dnc,EAAoBwR,EAAcjD,qBAAqB0F,YACvD6hC,EAA0B,CAAC,EAuC/B,OApCErjD,KAAKgjD,uBAAuBC,WAC5B11C,GACAA,EAAkBgc,mBAAmB1pB,OAAS,IAE9CwjD,EAAwBJ,UAAY,CAClCK,iBAAkB,aAClBn5C,KAAM,CACJsS,kBAAmBlP,EAAkBgc,mBAAmBpZ,QACtD,SAAU5B,EAAOzB,GAKf,OAJIA,KAAYy1C,GACdh0C,EAAMvJ,KAAKu9C,EAAmBz1C,IAGzByB,CACT,GACA,OAONvO,KAAKgjD,uBAAuB/6B,WAC5B8tB,GACAA,EAAwBpsB,UAExB05B,EAAwBp7B,UAAY,CAClCq7B,iBAAkB,yBAClBn5C,KAAM+xB,EACJnd,EACA/e,KAAKs8B,kBACLt8B,KAAKw8B,qBAKJ6mB,CACT,EAEFR,EAAwBj+C,UAAU+a,WAAa,WAC7C,IAAI8I,EAAsBzoB,KAAK4Z,QAAQiC,mBACnCnJ,EAAO1S,KAeX,OAbAA,KAAKsxC,OAASzP,EAAQ,CACpB0hB,qBAAqB,EACrB56C,KAAM,kCACNuoC,MAAO,kCACPlc,OAAQ,EACRD,MAAO,EACPvsB,MAAO,CACLyE,SAAU,WACVgoB,KAAM,WAERC,MAAO,yBAG2C,IAAhDl1B,KAAKojD,gCAAgCvjD,OAChCW,QAAQ2B,OACb,IAAIoX,EACFC,EAAOgqC,qDAKN,IAAIhjD,SAAQ,SAAU0B,GA5H/B,IAAoB+Y,EAAW6jB,EAAa/e,EA6HxCrN,EAAK+wB,KAAK5+B,GAAGq9B,EAAO4D,aAAa,SAAU9zB,GACzCA,EAAMU,EAAKkH,QACb,IACAlH,EAAK+wB,KAAK5+B,GAAGq9B,EAAOuhB,yBAAyB,WAC3CtoC,EAAUgC,UAAUzK,EAAKkH,QAAS,+BAClClH,EAAK+wB,KAAK5+B,GAAGq9B,EAAOwhB,yBAAyB,SAAUC,GACrD,IAAIC,EAA6B,CAC/Bh7C,OAAQ,CACN+6C,gBAAiBA,GAEnBE,WAAY,SAAUC,GACpBpxC,EAAK+wB,KAAK3xB,KAAKowB,EAAO6hB,wBAAyBD,EACjD,GAGFpxC,EAAKrN,MAAM,wBAAyBu+C,GACpClxC,EAAKrN,MAAM,wBAAyBu+C,EACtC,IACAlxC,EAAK+wB,KAAK5+B,GAAGq9B,EAAO8hB,wBAAwB,SAAUC,GACpD,IAAIC,EAA4B,CAC9Bt7C,OAAQ,CACNq7C,eAAgBA,GAElBJ,WAAY,SAAUC,GACpBpxC,EAAK+wB,KAAK3xB,KAAKowB,EAAOiiB,uBAAwBL,EAChD,GAGFpxC,EAAKrN,MAAM,uBAAwB6+C,GACnCxxC,EAAKrN,MAAM,uBAAwB6+C,EACrC,IACAhiD,EAAQwQ,EACV,IAKAA,EAAK4+B,OAAO5vC,KAlKIuZ,EAmKdwN,EAAoB3M,qBAAqBb,UAnKhB6jB,EAoKzBpsB,EAAKqwC,aApKiChjC,EAqKtC0I,EAAoB1I,QApKV9E,EAKZoG,0CAIAwd,EAAO9e,GACP,SACA+e,GA2JA19B,SAASmf,KAAKle,YAAYqQ,EAAK4+B,OACjC,GACF,EAwBAuR,EAAwBj+C,UAAUw/C,2CAChC,SAAUr2C,EAAM6vB,GACd,IAAI7e,EAEJ,IAAKhR,EACH,MAAM,IAAIwL,EACRC,EAAO6qC,kFAIX,IAAKrkD,KAAKgjD,uBAAuBj1C,GAC/B,MAAM,IAAIwL,EACRC,EAAO8qC,iFAOX,OAHAvlC,EAAgBzW,EAAO,CAAC,EAAGtI,KAAKkjD,yBAAyBn1C,KAC3C5D,KAAO7B,EAAO,CAAC,EAAGyW,EAAc5U,KAAMyzB,GAE7C7e,CACT,EAqIF8jC,EAAwBj+C,UAAU2Y,SAAW,SAAUwB,GACrD,IAAIrM,EAAO1S,KAIX,OAAO,IAAIQ,SAAQ,SAAU0B,EAASC,GACpCuQ,EAAK+wB,KAAK3xB,KACRowB,EAAOqiB,4BACP,CACElB,wBACEtkC,EAAcskC,yBACd3wC,EAAK0wC,gCACP/oC,QAAS0E,EAAc1E,QACvBxZ,QAASke,EAAcle,UAEzB,SAAUqc,GACR,IAAIsnC,EAAWtnC,EAAS,GACpB9K,EAAU8K,EAAS,GAEnBsnC,EACFriD,EAAOuQ,EAAK+xC,yBAAyBD,KAKvCrpC,EAAUgC,UAAUzK,EAAKkH,QAAS,sCAClC1X,EAAQ,CACN6X,MAAO3H,EAAQ2H,MACfhM,KAAMqE,EAAQrE,KACd+d,YAAa1Z,EAAQ0Z,YACrBzR,QAAS,CACPqqC,mBAAoBtyC,EAAQiI,QAAQqqC,mBACpC53C,SAAUsF,EAAQiI,QAAQvN,SAC1Bsf,SAAUha,EAAQiI,QAAQ+R,SAC1BV,QAAStZ,EAAQiI,QAAQqR,SAE3BE,QAASxZ,EAAQwZ,UAErB,GAEJ,GACF,EA2BAi3B,EAAwBj+C,UAAU+/C,eAAiB,SAAU5lC,GAC3D,IACI6lC,EADAlyC,EAAO1S,KAIX,OAAKwC,OAAOqiD,eASR9lC,EAAcskC,0BAChBtkC,EAAcskC,wBAAwBrhD,SAAQ,SAAUqG,GACtD,IAAIi7C,EAAmBj7C,EAAOi7C,iBAExBA,KAAoB9/B,EAAUshC,oBAClCF,EAA2BtB,EAE/B,IAEIsB,GACKpkD,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAOurC,2CAA2Ch3C,KACxDrO,KAAM8Z,EAAOurC,2CAA2CrlD,KACxD0W,QACEwuC,EAA2B,yCAM9B,IAAIpkD,SAAQ,SAAU0B,EAASC,GACpCuQ,EAAK+wB,KAAK3xB,KACRowB,EAAO8iB,iBACP,CACE3B,wBACEtkC,EAAcskC,yBACd3wC,EAAK0wC,gCACP/oC,QAAS0E,EAAc1E,QACvBxZ,QAASke,EAAcle,UAEzB,SAAUqc,GACR,IAAI7G,EAAQ6G,EAAS,GACjB9K,EAAU8K,EAAS,GAEnB7G,EACFlU,EAAOuQ,EAAKuyC,2BAA2B5uC,KAKzC8E,EAAUgC,UACRzK,EAAKkH,QACL,oCAAsCxH,GAGxClQ,EAAQkQ,GACV,GAEJ,KAzDE+I,EAAUgC,UACRzK,EAAKkH,QACL,kDAGKpZ,QAAQ0B,SAAQ,GAqD3B,EAcA2gD,EAAwBj+C,UAAU0O,SAAW,WAQ3C,OAPAtT,KAAKyjC,KAAKnwB,WACVtT,KAAKsxC,OAAOtgB,WAAWC,YAAYjxB,KAAKsxC,QAExC53B,EAAsB1Z,KAAMyZ,EAAQopC,EAAwBj+C,YAE5DuW,EAAUgC,UAAUnd,KAAK4Z,QAAS,sCAE3BpZ,QAAQ0B,SACjB,EAEA2gD,EAAwBj+C,UAAU6/C,yBAA2B,SAAUpuC,GACrE,IAAI6uC,EAEJ,OAAQ7uC,EAAM1N,MACZ,IAAK,aAYH,OAXAu8C,EAAiB,IAAI3rC,EAAe,CAClCxL,KAAMyL,EAAO2rC,yBAAyBp3C,KACtCrO,KAAM8Z,EAAO2rC,yBAAyBzlD,KACtC0W,QAASoD,EAAO2rC,yBAAyB/uC,QACzCiE,QAAS,CACPC,cAAejE,KAInB8E,EAAUgC,UAAUnd,KAAK4Z,QAAS,qCAE3BsrC,EACT,IAAK,wCACHA,EAAiB,IAAI3rC,EAAe,CAClCxL,KAAMyL,EAAO4rC,6CAA6Cr3C,KAC1DrO,KAAM8Z,EAAO4rC,6CAA6C1lD,KAC1D0W,QAASoD,EAAO4rC,6CAA6ChvC,QAC7DiE,QAAS,CACPC,cAAejE,KAGnB,MACF,IAAK,sDACH6uC,EAAiB,IAAI3rC,EAAe,CAClCxL,KAAMyL,EAAO6rC,kDAAkDt3C,KAC/DrO,KAAM8Z,EAAO6rC,kDAAkD3lD,KAC/D0W,QACEoD,EAAO6rC,kDAAkDjvC,QAC3DiE,QAAS,CACPC,cAAejE,KAGnB,MACF,IAAK,iDACH6uC,EAAiB,IAAI3rC,EAAe,CAClCxL,KAAMyL,EAAO8rC,6CAA6Cv3C,KAC1DrO,KAAM8Z,EAAO8rC,6CAA6C5lD,KAC1D0W,QAASoD,EAAO8rC,6CAA6ClvC,QAC7DiE,QAAS,CACPC,cAAejE,KAGnB,MACF,QACE6uC,EAAiB,IAAI3rC,EAAe,CAClC7Z,KAAM8Z,EAAO+rC,8BAA8B7lD,KAC3CqO,KAAMsI,EAAMtI,MAAQwL,EAAehL,MAAMw9B,SACzC31B,QAASoD,EAAO+rC,8BAA8BnvC,QAC9CiE,QAAS,CACPC,cAAejE,KAOvB,OAFA8E,EAAUgC,UAAUnd,KAAK4Z,QAAS,mCAE3BsrC,CACT,EAEArC,EAAwBj+C,UAAUqgD,2BAA6B,SAC7D5uC,GAEA,IAAI6uC,EAEJ,OAAQ7uC,EAAM1N,MACZ,IAAK,wCACHu8C,EAAiB,IAAI3rC,EAAe,CAClCxL,KAAMyL,EAAO4rC,6CAA6Cr3C,KAC1DrO,KAAM8Z,EAAO4rC,6CAA6C1lD,KAC1D0W,QAASoD,EAAO4rC,6CAA6ChvC,QAC7DiE,QAAS,CACPC,cAAejE,KAGnB,MACF,IAAK,kBACH6uC,EAAiB,IAAI3rC,EAAe,CAClCxL,KAAMyL,EAAOgsC,6CAA6Cz3C,KAC1DrO,KAAM8Z,EAAOgsC,6CAA6C9lD,KAC1D0W,QAASoD,EAAOgsC,6CAA6CpvC,QAC7DiE,QAAS,CACPC,cAAejE,KAGnB,MACF,QACE6uC,EAAiB,IAAI3rC,EAAe,CAClC7Z,KAAM8Z,EAAOisC,wCAAwC/lD,KACrDqO,KAAMyL,EAAOisC,wCAAwC13C,KACrDqI,QAASoD,EAAOisC,wCAAwCrvC,QACxDiE,QAAS,CACPC,cAAejE,KAOvB,OAFA8E,EAAUgC,UAAUnd,KAAK4Z,QAAS,2CAE3BsrC,CACT,EAEApmD,EAAOC,QAAUwL,EAAYE,cAAco4C,EAE3C,EAAE,CAAC,sBAAsB,IAAI,mBAAmB,IAAI,4BAA4B,IAAI,qCAAqC,IAAI,8CAA8C,IAAI,oBAAoB,IAAI,oBAAoB,IAAI,sBAAsB,IAAI,2BAA2B,GAAG,qBAAqB,GAAG,kBAAkB,GAAG,0BAA0B,GAAG,SAAW,KAAK,IAAI,CAAC,SAAS/iD,EAAQhB,EAAOC,GAC9Y,aAQA,IAAI8jD,EAA0B/iD,EAAQ,8BAClC6a,EAA6B7a,EAAQ,uCACrC8a,EAAuB9a,EAAQ,iCAC/B+a,EAAkB/a,EAAQ,4BAC1ByK,EAAczK,EAAQ,2BAuE1BhB,EAAOC,QAAU,CACf8G,OAAQ0E,GA7BV,SAAgB1J,GACd,IAAI8H,EAAO,kBAEX,OAAOgS,EACJG,OAAO,CACNnS,KAAMA,EACNkR,OAAQhZ,EAAQgZ,OAChBkB,cAAela,EAAQka,gBAExBtT,MAAK,WACJ,OAAOmT,EAAqB/U,OAAO,CACjCkV,cAAela,EAAQka,cACvBlB,OAAQhZ,EAAQgZ,OAChBmB,MAAOna,EAAQma,MACfC,UAAWJ,EAAgBhV,OAAOhF,EAAQka,eAC1CpS,KAAMA,GAEV,IACClB,MAAK,SAAUoS,GAMd,OAHAhZ,EAAQgZ,OAASA,EACQ,IAAIgpC,EAAwBhiD,GAEvB8e,YAChC,GACJ,IAQEzE,QA5EY,UA+Ed,EAAE,CAAC,sCAAsC,IAAI,2BAA2B,IAAI,gCAAgC,IAAI,6BAA6B,IAAI,0BAA0B,KAAK,IAAI,CAAC,SAASpb,EAAQhB,EAAOC,GAC7M,aAEA,IAAI4rC,EAAY7qC,EAAQ,uBACpB0Z,EAAS1Z,EAAQ,YAEjB0jB,EAAY,CAAC,EAEjBA,EAAU0e,OAASyI,EACjB,CACE,mBACA,cACA,0BACA,8BACA,0BACA,0BACA,yBACA,0BAEF,oBAGFnnB,EAAUhK,OAASA,EAEnBgK,EAAUshC,kBAAoB,CAC5B,cAAc,EACd,0BAA0B,GAG5BhmD,EAAOC,QAAUykB,CAEjB,EAAE,CAAC,sBAAsB,IAAI,WAAW,MAAM,IAAI,CAAC,SAAS1jB,EAAQhB,EAAOC,GAC3E,aAkCA,IAAIwa,EAAiBzZ,EAAQ,6BAE7BhB,EAAOC,QAAU,CACfykD,mDAAoD,CAClDz1C,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,qDACN0W,QACE,wEAEJ+uC,yBAA0B,CACxBp3C,KAAMwL,EAAehL,MAAMw9B,SAC3BrsC,KAAM,2BACN0W,QAAS,iCAEXgvC,6CAA8C,CAC5Cr3C,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,+CACN0W,QAAS,8DAEXqvC,wCAAyC,CACvC13C,KAAMwL,EAAehL,MAAM+c,QAC3B5rB,KAAM,0CACN0W,QAAS,sDAEXovC,6CAA8C,CAC5Cz3C,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,+CACN0W,QACE,+JAEJ2uC,2CAA4C,CAC1Ch3C,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,8CAER2lD,kDAAmD,CACjDt3C,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,oDACN0W,QAAS,6DAEXkvC,6CAA8C,CAC5Cv3C,KAAMwL,EAAehL,MAAM+c,QAC3B5rB,KAAM,+CACN0W,QAAS,6DAEXmvC,8BAA+B,CAC7B7lD,KAAM,gCACN0W,QAAS,2CAEXiuC,iFACE,CACEt2C,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,mFACN0W,QACE,6EAENkuC,gFACE,CACEv2C,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,kFACN0W,QACE,uFAIR,EAAE,CAAC,4BAA4B,MAAM,IAAI,CAAC,SAAStW,EAAQhB,EAAOC,GAClE,aAwCA,IAAIwa,EAAiBzZ,EAAQ,0BAE7BhB,EAAOC,QAAU,CACf2mD,mBAAoB,CAClB33C,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,qBACN0W,QAAS,4CAEXuvC,kCAAmC,CACjC53C,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,oCACN0W,QACE,iPAEJwvC,mCAAoC,CAClC73C,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,qCACN0W,QAAS,6CAEXyvC,mBAAoB,CAClB93C,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,qBACN0W,QAAS,qCAEX0vC,4BAA6B,CAC3B/3C,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,8BACN0W,QAAS,+CAEX2vC,qDAAsD,CACpDh4C,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,wDAERsmD,mDAAoD,CAClDj4C,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,qDACN0W,QAAS,+DAEX6vC,wDAAyD,CACvDl4C,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,0DACN0W,QACE,uGAEJ8vC,+CAAgD,CAC9Cn4C,KAAMwL,EAAehL,MAAMw9B,SAC3BrsC,KAAM,iDACN0W,QAAS,oDAEX+vC,kDAAmD,CACjDp4C,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,oDACN0W,QAAS,iDAEXgwC,8BAA+B,CAC7Br4C,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,gCACN0W,QAAS,uCAEXiwC,+BAAgC,CAC9Bt4C,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,iCACN0W,QAAS,4BAIb,EAAE,CAAC,yBAAyB,MAAM,IAAI,CAAC,SAAStW,EAAQhB,EAAOC,GAC/D,aAMA,IAAI4b,EAA6B7a,EAAQ,uCACrCyK,EAAczK,EAAQ,2BACtBwmD,EAAiBxmD,EAAQ,qBAuD7BhB,EAAOC,QAAU,CACf8G,OAAQ0E,GA5BV,SAAgB1J,GAGd,OAAO8Z,EACJG,OAAO,CACNnS,KAJO,kBAKPkR,OAAQhZ,EAAQgZ,OAChBkB,cAAela,EAAQka,gBAExBtT,MAAK,WAGJ,OAFe,IAAI6+C,EAAezlD,GAElB+5C,YAAY/5C,EAC9B,GACJ,IAeEuhD,YANF,WACE,OAAO,CACT,EASElnC,QA7DY,UAgEd,EAAE,CAAC,sCAAsC,IAAI,oBAAoB,IAAI,0BAA0B,KAAK,IAAI,CAAC,SAASpb,EAAQhB,EAAOC,GACjI,aAEA,IAAIoc,EAAYrb,EAAQ,oBACpBwI,EAASxI,EAAQ,iBAAiBwI,OAClCsS,EAAuB9a,EAAQ,iCAC/B+a,EAAkB/a,EAAQ,4BAC1BkG,EAAkBlG,EAAQ,+BAC1ByK,EAAczK,EAAQ,2BACtByZ,EAAiBzZ,EAAQ,0BACzBse,EAA0Bte,EAAQ,qCAClC0Z,EAAS1Z,EAAQ,YACjB0jB,EAAY1jB,EAAQ,8BACpB+yC,EAAe/yC,EAAQ,iCACvBwe,EAA0Bxe,EAAQ,oCAClC2Z,EAAU3Z,EAAQ,kBAClB++B,EAAS/+B,EAAQ,kBACjB4Z,EAAwB5Z,EAAQ,mCAChC8kB,EAAc9kB,EAAQ,sBAEtBmiC,EAAyBniC,EAAQ,oBAAoBmiC,uBAErDskB,EAAqD,CACvD,SACA,WACA,4CAoMF,SAASD,EAAezlD,GACtBb,KAAKy5C,mBAAqB54C,EAAQypB,kBAKlCtqB,KAAKwmD,wBAA0Br/C,QAAQtG,EAAQ4lD,uBACjD,CArMAzgD,EAAgBoB,iCAAkC,EAuMlDk/C,EAAe1hD,UAAUg2C,YAAc,SAAU/5C,GAC/C,IAAIwH,EAyDJ,OAvDIxH,EAAQgZ,QACVxR,EAASxH,EAAQgZ,OAAOgC,mBACxB7b,KAAK0mD,0BAA4B,CAC/BC,YAAat+C,EAAO8X,yBACpB4B,YAAa1Z,EAAOyT,qBAAqBiG,eAG3C1Z,EAASiW,EAAwBzd,EAAQka,eACzC/a,KAAK0mD,0BAA4B,CAC/BC,YAAat+C,EAAO/G,MAAM6e,yBAC1B4B,YAAa1Z,EAAO0Z,cAIxB/hB,KAAKojC,eAAiBxoB,EACnB/U,OAAO,CACNkV,cAAela,EAAQka,cACvBlB,OAAQhZ,EAAQgZ,OAChBmB,MAAOna,EAAQma,MACfC,UAAWJ,EAAgBhV,OAAOhF,EAAQka,eAC1CpS,KAAM,oBAEPlB,KACC,SAAUoS,GAmBR,OAlBA7Z,KAAKqf,eAAiBxF,EAAOgC,mBAKxB7b,KAAKy5C,qBACHz5C,KAAKqf,eAAevD,qBAAqBqO,eAIhB,IAD5BnqB,KAAKqf,eAAevD,qBAAqBoO,OACtC08B,uBAEH5mD,KAAK6mD,YAAc,IAAIttC,EACrBC,EAAOmsC,oCANT3lD,KAAK6mD,YAAc,IAAIttC,EAAeC,EAAOksC,qBAW7C1lD,KAAK6mD,YACArmD,QAAQ2B,OAAOnC,KAAK6mD,cAG7B1rC,EAAUgC,UAAUtD,EAAQ,+BAC5B7Z,KAAK8mD,qBAAuB9mD,KAAK+mD,mBAAmBltC,GAE7CA,EACT,EAAE8B,KAAK3b,OAKPa,EAAQgZ,OACH7Z,KAAKojC,eAAe37B,KACzB,WACE,OAAOzH,IACT,EAAE2b,KAAK3b,OAIJQ,QAAQ0B,QAAQlC,KACzB,EAEAsmD,EAAe1hD,UAAUmiD,mBAAqB,SAAUltC,GACtD,IAAImtC,EAAsB,IAAIhhD,EAC1BqC,EAASwR,EAAOgC,mBAChBorC,EAAar9C,YAAW,WAC1BuR,EAAUgC,UAAUtD,EAAQ,2CAC5BmtC,EAAoB7kD,OAClB,IAAIoX,EACFC,EAAOwsC,oDAGb,GAAG/jB,GA8BH,OA5BAjiC,KAAKo5C,WACH/wC,EAAOyT,qBAAqBoO,OAAOjP,UAAnC5S,eACFrI,KAAKq5C,SAAWhxC,EAAO0X,QAEvB/f,KAAKs5C,iBACHt5C,KAAKo5C,WACL,6BACAva,EAAO7+B,KAAKq5C,UACZ,QAEFxG,EAAahtC,OACX,CACE8C,KAAM,yBACN4nC,iBACEvwC,KAAKo5C,WACL,uBACAva,EAAO7+B,KAAKq5C,UACZ,QACF7I,aAAcxwC,KAAKs5C,kBAErB,SAAUuB,GACR76C,KAAK86C,cAAgBD,EACrBjV,aAAaqhB,GAEbD,EAAoB9kD,SACtB,EAAEyZ,KAAK3b,OAGFgnD,CACT,EAkJAV,EAAe1hD,UAAUsiD,cAAgB,SAAUrmD,GACjD,OAAKA,GAAY2iB,EAAU2jC,eAAejgD,eAAerG,EAAQumD,OAMjEjsC,EAAUgC,UAAUnd,KAAKojC,eAAgB,iCAElCpjC,KAAKqnD,uBAAuBxmD,GAAS4G,MAAK,SAAUyV,GAUzD,MAPqB,aAAjBrc,EAAQumD,KACExiC,EAAY5U,MAAMkN,EAAS0gC,gBAAgBhK,aACjCp2B,MAEVN,EAASoqC,eAAeC,OAIxC,KAlBS/mD,QAAQ2B,OACb,IAAIoX,EAAeC,EAAOssC,6BAkBhC,EAEAQ,EAAe1hD,UAAUyiD,uBAAyB,SAAUxmD,EAASwH,GACnE,IAAIqK,EAAO1S,KACPma,EAAW,iBAAmBqJ,EAAU2jC,eAAetmD,EAAQumD,MAUnE,cAROpnD,KAAKwnD,wBAEZn/C,EAASA,GAAU,CAAC,GAEQ,IAAxBxH,EAAQ4mD,aACVtsC,EAAUgC,UAAUnd,KAAKojC,eAAgB,kCAGpCpjC,KAAKojC,eACT37B,MAAK,SAAUoS,GACd,OAAOA,EACJK,QAAQ,CACPC,SAAUA,EACVpP,OAAQ,OACRZ,KAAMuI,EAAKg1C,2BAA2B7mD,EAASwH,KAEhDZ,MAAK,SAAU0C,GAGd,OAFAuI,EAAK80C,wBAA0B3mD,EAAQg8C,OAEhC1yC,CACT,GACJ,IACCvD,OAAM,SAAUG,GAGf,OAAI2L,EAAKm0C,YACArmD,QAAQ2B,OAAOuQ,EAAKm0C,aAKd,OAFN9/C,EAAIsT,SAAWtT,EAAIsT,QAAQ4I,YAG3BziB,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAO4sC,8BAA8Br4C,KAC3CrO,KAAM8Z,EAAO4sC,8BAA8B1mD,KAC3C0W,QAASoD,EAAO4sC,8BAA8BhwC,QAC9CiE,QAAS,CACPC,cAAevT,MAMhBvG,QAAQ2B,OACbic,EAAwBrX,EAAK,CAC3BgH,KAAMyL,EAAOqsC,mBAAmB93C,KAChCrO,KAAM8Z,EAAOqsC,mBAAmBnmD,KAChC0W,QAASoD,EAAOqsC,mBAAmBzvC,UAGzC,GACJ,EA8DAkwC,EAAe1hD,UAAU+iD,cAAgB,SAAU9mD,GACjD,IAAI6R,EAAO1S,KAGX,OAAKa,GAAWb,KAAK4nD,kBAAkB/mD,EAAS2iB,EAAUqkC,mBACxD1sC,EAAUgC,UACRzK,EAAK0wB,eACL,iDAGK5iC,QAAQ2B,OACb,IAAIoX,EAAeC,EAAO6sC,kCAIzBrmD,KAAK8nD,0BAA0BjnD,IAoBpCsa,EAAUgC,UAAUnd,KAAKojC,eAAgB,iCAElCpjC,KAAKojC,eACT37B,MAAK,SAAUoS,GACd,OAAOA,EAAOK,QAAQ,CACpBC,SAtCS,uCAuCTpP,OAAQ,OACRZ,KAAMuI,EAAKq1C,yBAAyBlnD,IAExC,IACC+F,OAAM,SAAUG,GAGf,OAAe,OAFFA,EAAIsT,SAAWtT,EAAIsT,QAAQ4I,aAGtC9H,EAAUgC,UACRzK,EAAK0wB,eACL,yCAGK5iC,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAO4sC,8BAA8Br4C,KAC3CrO,KAAM8Z,EAAO4sC,8BAA8B1mD,KAC3C0W,QAASoD,EAAO4sC,8BAA8BhwC,QAC9CiE,QAAS,CACPC,cAAevT,QAMvBoU,EAAUgC,UACRzK,EAAK0wB,eACL,iCAAmC5pB,EAAOqsC,mBAAmBnmD,MAGxDc,QAAQ2B,OACbic,EAAwBrX,EAAK,CAC3BgH,KAAMyL,EAAOqsC,mBAAmB93C,KAChCrO,KAAM8Z,EAAOqsC,mBAAmBnmD,KAChC0W,QAASoD,EAAOqsC,mBAAmBzvC,WAGzC,MA9DA+E,EAAUgC,UACRzK,EAAK0wB,eACL,yDAGK5iC,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAO4sC,8BAA8Br4C,KAC3CrO,KAAM8Z,EAAO4sC,8BAA8B1mD,KAC3C0W,QAASoD,EAAO4sC,8BAA8BhwC,QAC9CiE,QAAS,CACPC,cAAe,IAAI7a,MACjB,6EAmDZ,EA+BA6mD,EAAe1hD,UAAUojD,4BAA8B,SAAUnnD,GAC/D,IAAIonD,EACAv1C,EAAO1S,KAEX,OAAIA,KAAKkoD,mCACP/sC,EAAUgC,UACRnd,KAAKojC,eACL,yEAGK5iC,QAAQ2B,OACb,IAAIoX,EACFC,EAAO2sC,sDAKbI,EAAmDvkD,SAAQ,SAAUmmD,GAC9DtnD,EAAQqG,eAAeihD,KAC1BF,EAAuBE,EAE3B,IAEIF,EACKznD,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAOusC,qDAAqDh4C,KAClErO,KAAM8Z,EAAOusC,qDAAqDrmD,KAClE0W,QAAS,kBAAoB6xC,EAAuB,mBAK1DjoD,KAAKkoD,mCAAoC,EACzCloD,KAAKooD,kBAAkBvnD,GAEvBA,EAAUyH,EAAO,CAAC,EAAGzH,EAAS,CAC5BumD,KAAM,aAGRjsC,EAAUgC,UACRnd,KAAKojC,eACL,uDAGKpjC,KAAKqoD,6CACT5gD,MAAK,WACJ,IAAI6gD,EAA4B,IAAItiD,EAChCuiD,EAAqC71C,EACtC20C,uBAAuBxmD,EAAS,CAC/B08C,UAAW7qC,EAAK81C,0BAA0B,kBAC1CvM,UAAWvpC,EAAK81C,0BAA0B,kBAE3C/gD,MAAK,SAAUyV,GACd,IAAI02B,EAAc12B,EAAS0gC,gBAAgBhK,YAI3C,OAFAlhC,EAAKooC,cAAcjJ,SAAS+B,GAErB0U,CACT,IAOF,OALA51C,EAAKooC,cAAc9zB,KACjB,CAAC,EACDtU,EAAK+1C,4BAA4BH,IAG5BC,CACT,IACC3hD,OAAM,SAAUG,GAIf,OAHA2L,EAAKw1C,mCAAoC,EACzCx1C,EAAKg2C,uBAEY,+BAAb3hD,EAAIrH,MACNyb,EAAUgC,UACRzK,EAAK0wB,eACL,oEAGK5iC,QAAQ2B,OACb,IAAIoX,EACFC,EAAO0sC,mDAKTxzC,EAAKooC,eACPpoC,EAAKooC,cAAcvJ,QAInBxqC,EAAIrH,MACJqH,EAAIrH,KAAKuD,QAAQ,oCAAsC,GAEvDkY,EAAUgC,UACRzK,EAAK0wB,eACL,uEAGK5iC,QAAQ2B,OACb,IAAIoX,EAAe,CACjB7Z,KAAM8Z,EAAOysC,wDACVvmD,KACHqO,KAAMyL,EAAOysC,wDACVl4C,KACHqI,QACEoD,EAAOysC,wDACJ7vC,QACLiE,QAAS,CACPC,cAAevT,OAMhBvG,QAAQ2B,OAAO4E,GACxB,IACCU,MAAK,SAAUyV,GASd,OARAxK,EAAKooC,cAAcvJ,QACnB7+B,EAAKw1C,mCAAoC,EACzCx1C,EAAKg2C,uBACLvtC,EAAUgC,UACRzK,EAAK0wB,eACL,yDAGK5iC,QAAQ0B,QAAQgb,EACzB,KACJ,EAEAopC,EAAe1hD,UAAUwjD,kBAAoB,SAAUvnD,GACjDA,EAAQ8nD,wBAIP3oD,KAAK4oD,iBACR5oD,KAAK4oD,eAAiBxnD,SAASC,cAAc,OAC7CrB,KAAK4oD,eAAe9mD,aAClB,wDACA,GAEF9B,KAAK4oD,eAAepgD,MAAMyE,SAAW,QACrCjN,KAAK4oD,eAAepgD,MAAMiK,IAAM,EAChCzS,KAAK4oD,eAAepgD,MAAMihC,OAAS,EACnCzpC,KAAK4oD,eAAepgD,MAAMysB,KAAO,EACjCj1B,KAAK4oD,eAAepgD,MAAMghC,MAAQ,EAClCxpC,KAAK4oD,eAAepgD,MAAM0qC,OAAS,KACnClzC,KAAK4oD,eAAepgD,MAAM2qC,WAAa,QACvCnzC,KAAK4oD,eAAepgD,MAAM6jC,QAAU,MACpCrsC,KAAK4oD,eAAexmD,iBAClB,QACA,WACEpC,KAAK6oD,mCACP,EAAEltC,KAAK3b,QAIXoB,SAASmf,KAAKle,YAAYrC,KAAK4oD,gBACjC,EAEAtC,EAAe1hD,UAAU8jD,qBAAuB,WACxC1oD,KAAK4oD,gBAAkB5oD,KAAK4oD,eAAe53B,YAIjDhxB,KAAK4oD,eAAe53B,WAAWC,YAAYjxB,KAAK4oD,eAClD,EAWAtC,EAAe1hD,UAAUkkD,kCAAoC,WAQ3D,OAPI9oD,KAAKkoD,mCACP/sC,EAAUgC,UACRnd,KAAKojC,eACL,oEAIGpjC,KAAKqoD,6CAA6C5gD,KACvD,WACEzH,KAAK86C,cAAcvJ,OACrB,EAAE51B,KAAK3b,MAEX,EAWAsmD,EAAe1hD,UAAUikD,kCAAoC,WAC3D,OAAO7oD,KAAKqoD,6CAA6C5gD,KACvD,WACEzH,KAAK86C,cAAc1Z,OACrB,EAAEzlB,KAAK3b,MAEX,EAEAsmD,EAAe1hD,UAAU6jD,4BAA8B,SACrDH,GAEA,IAAI51C,EAAO1S,KAKX,OAAO,SAAU+G,EAAKqL,GAChBrL,EACFuhD,EAA0BnmD,OAAO4E,GACxBqL,IACTM,EAAKooC,cAAcjJ,SAASn/B,EAAK4mC,kBACjC5mC,EACGq2C,gBAAgB,CACf9K,aAAc7rC,EAAQoL,MACtBwrC,QAAS52C,EAAQotC,QACjByJ,UAAW72C,EAAQ4rC,UACnBkL,QAAS92C,EAAQ+2C,UAElB1hD,MAAK,SAAUkR,GACd2vC,EAA0BpmD,QAAQyW,EACpC,IACC/R,OAAM,SAAUwiD,GACfd,EAA0BnmD,OAAOinD,EACnC,IAEN,CACF,EAEA9C,EAAe1hD,UAAUyjD,2CACvB,WACE,IAAI31C,EAAO1S,KAEX,OAAOA,KAAKojC,eAAe37B,MAAK,WAC9B,OAAOiL,EAAKo0C,oBACd,GACF,EAEFR,EAAe1hD,UAAU4jD,0BAA4B,SAAU1X,GAC7D,IAAIuK,EAAYr7C,KAAK86C,cAAczK,WAEnC,OACErwC,KAAKo5C,WACL,SACAtI,EACAjS,EAAO7+B,KAAKq5C,UACZ,iBACAgC,CAEJ,EA+BAiL,EAAe1hD,UAAUmkD,gBAAkB,SAAUM,GACnD,IAEIj3C,EAFAM,EAAO1S,KACPspD,GAAc,EAEdzoD,EAAU,CACZumD,KACEiC,EAAgBE,eAAiBF,EAAgBJ,UAC7C,QACA,WACNpM,OAAQwM,EAAgBxM,QAAU78C,KAAKwnD,yBAErC1yB,EAAS,CAEX00B,QAASH,EAAgBpL,aACzBsL,aAAcF,EAAgBE,aAC9BhK,QAAS8J,EAAgBL,QACzBhL,UAAWqL,EAAgBJ,UAC3BE,QAASE,EAAgBH,QACzBO,kBAAmBJ,EAAgBI,mBAcrC,OAXIJ,EAAgBniD,eAAe,WACjCoiD,EAAcD,EAAgBK,OAGhC7oD,EAAQ6oD,MAAQJ,EAEhBnuC,EAAUgC,UACRnd,KAAKojC,eACL,wCAGKpjC,KAAKojC,eACT37B,MAAK,SAAUoS,GACd,OAAOA,EAAOK,QAAQ,CACpBC,SAAU,kCACVpP,OAAQ,OACRZ,KAAMuI,EAAK+rC,oBAAoB59C,EAASi0B,IAE5C,IACCrtB,MAAK,SAAUyV,GAcd,OAbA9K,EAAUM,EAAKgsC,uBAAuBxhC,GAEtC/B,EAAUgC,UACRzK,EAAK0wB,eACL,wCAEEhxB,EAAQu3C,wBACVxuC,EAAUgC,UACRzK,EAAK0wB,eACL,mCAIGhxB,CACT,IACCxL,OAAM,SAAUG,GACf,OAAI2L,EAAKm0C,YACArmD,QAAQ2B,OAAOuQ,EAAKm0C,cAG7B1rC,EAAUgC,UACRzK,EAAK0wB,eACL,uCAGK5iC,QAAQ2B,OACbic,EAAwBrX,EAAK,CAC3BgH,KAAMyL,EAAOosC,mCAAmC73C,KAChDrO,KAAM8Z,EAAOosC,mCAAmClmD,KAChD0W,QAASoD,EAAOosC,mCAAmCxvC,WAGzD,GACJ,EAmBAkwC,EAAe1hD,UAAUglD,YAAc,WACrC,OAAO5pD,KAAKojC,eAAe37B,MAAK,SAAUoS,GACxC,OAAOA,EAAOgC,mBAAmBC,qBAAqBoO,OAAO2/B,QAC/D,GACF,EA+DAvD,EAAe1hD,UAAUklD,cAAgB,SAAUjpD,GACjD,IACIkpD,EAAc,IAAI/jD,EAClBzE,EAAkBV,GAAWA,EAAQU,gBAAmB,CAAC,EACzDyoD,EACFzoD,EAAe,kBAAoBA,EAAe,sBAmFpD,OAjFKyoD,IACHA,EACEhqD,KAAK0mD,0BAA0BC,aAC/B3mD,KAAK0mD,0BAA0BC,YAAYhmC,MAAM,KAAK,IAG1D3gB,KAAKiqD,cAAgB7oD,SAASC,cAAc,iBAS5CR,EAAUyH,EACR,CAAC,EACD,CACE4hD,WAAY,WAEdrpD,IAEaU,eAOXV,EAAQ6oD,MACV7oD,EAAQg8C,OAASh8C,EAAQg8C,QAAU,YAEnCh8C,EAAQg8C,OAASh8C,EAAQg8C,QAAU,YACnCh8C,EAAQspD,SAAWtpD,EAAQspD,UAAY,OAGnC,iCACNnqD,KAAKiqD,cAAcrjC,OAAS,WAC1BmjC,EAAY7nD,SACd,EAEA/B,OAAO4B,KAAKR,GAAgBS,QAC1B,SAAUy8B,GACRz+B,KAAKiqD,cAAcnoD,aACjB,QAAU28B,EAAUp1B,QAAQ,UAAW,IACvC9H,EAAek9B,GAEnB,EAAE9iB,KAAK3b,QAGLa,EAAQ,aACEL,QAAQ0B,QAAQrB,EAAQ,cAExBb,KAAK4pD,eAGTniD,KACR,SAAU9F,GACRd,EAAQ,aAAec,EAEnB3B,KAAKwmD,yBAA2BwD,IAClChqD,KAAKiqD,cAAcnoD,aAAa,qBAAsBkoD,GAGtDhqD,KAAKoqD,oBAAoB,CACvBzoD,GAAIA,EACJqoD,YAAaA,EACbzO,OAAQh6C,EAAeg6C,OACvB4O,SAAUtpD,EAAQspD,SAClBzpC,WAAY7f,EAAQ,kBAIxBb,KAAKiqD,cAAcvoD,IAAMkjB,EAAYsB,SArCnC,iCAqCiDrlB,GACnDO,SAASK,KAAK4oD,aACZrqD,KAAKiqD,cACL7oD,SAASK,KAAK6oD,kBAElB,EAAE3uC,KAAK3b,OAGF+pD,EAAYtiD,KACjB,WACE,OAAOzH,IACT,EAAE2b,KAAK3b,MAEX,EAEAsmD,EAAe1hD,UAAUwlD,oBAAsB,SAAUvpD,GACvD,IAAIqZ,EACAvY,EAAKd,EAAQc,GACbqoD,EAAcnpD,EAAQmpD,YAEtBO,EAAoB,eADdvqD,KAAK0mD,0BAA0B3kC,YACF,GAAK,WACxCtC,EA1uCJ,oDA0uCiCpW,QAAQ,QAASkhD,GAC9CC,EAAiB,CACnB,YAAa7oD,EACb,gBAAiBqoD,GAGfnpD,EAAQ06C,SACViP,EAAejP,OAAS16C,EAAQ06C,QAE9B16C,EAAQspD,WACVK,EAAeL,SAAWtpD,EAAQspD,UAEhCtpD,EAAQ6f,aACV8pC,EAAe,eAAiB3pD,EAAQ6f,aAG1CxG,EAAU,IAAIsW,gBACNxJ,KAAK,MAAOpC,EAAYsB,SAASzG,EAAK+qC,IAC9CtwC,EAAQkN,MACV,EAEAk/B,EAAe1hD,UAAU8iD,2BAA6B,SACpD7mD,EACAwH,GAEA,IAAIpG,EACA6Z,EAAuB9b,KAAKqf,eAAevD,qBAI3C+gC,EAASh8C,EAAQg8C,OACjBe,EAAkB,CAGpBL,UAAWl1C,EAAOk1C,WAAa,2CAC/BtB,UAAW5zC,EAAO4zC,WAAa,2CAC/BwO,mBAA2C,IAAxB5pD,EAAQ4mD,YAC3Bn9B,kBAAmBtqB,KAAKy5C,mBACxB2C,kBAAmB,CACjBC,UAAWx7C,EAAQoc,aAAenB,EAAqBoO,OAAOjN,YAC9DytC,WAAY7pD,EAAQ07C,OACpBC,aAAc37C,EAAQ8pD,uBAAuBlhD,WAC7CmhD,iBAAqD,IAApC/pD,EAAQgqD,wBACzBC,gBAAiBjqD,EAAQiqD,iBAE3BC,gBAAiBlqD,EAAQkqD,iBAG3B,GAAqB,aAAjBlqD,EAAQumD,KAAqB,CA4B/B,IAAKnlD,KA3BL27C,EAAgBrC,OAAS16C,EAAQ06C,OACjCqC,EAAgBxzB,gBAAkBvpB,EAAQspD,SAC1CvM,EAAgBoN,wBAA0BnqD,EAAQmqD,wBAE9CnO,IAIa,YAAXA,IACFA,EAAS,QAEXe,EAAgBf,OAASA,GAGvBh8C,EAAQqG,eAAe,eACzB02C,EAAgBZ,UAAYn8C,EAAQm8C,WAGlCn8C,EAAQqG,eAAe,8CACzB02C,EAAgBqN,yCACdpqD,EAAQoqD,0CAGRpqD,EAAQqG,eAAe,qBACzB02C,EAAgBmN,gBAAkBlqD,EAAQkqD,iBAGhClqD,EAAQqqD,wBACdrqD,EAAQqqD,wBAAwBhkD,eAAejF,KACjD27C,EAAgB37C,GAAOpB,EAAQqqD,wBAAwBjpD,IAIvDpB,EAAQqG,eAAe,6BACzB02C,EAAgBuN,wBAA0BtqD,EAAQsqD,wBAEtD,MACEvN,EAAgB+F,gBAAkB9iD,EAAQqqD,wBAEtCrqD,EAAQuqD,8BACVxN,EAAgB9xB,YAAcjrB,EAAQuqD,6BAc1C,OALAprD,KAAKqrD,mBAAqBxqD,EAAQyxB,kBAC9BzxB,EAAQyxB,oBACVsrB,EAAgBrrB,cAAgBvyB,KAAKqrD,oBAGhCzN,CACT,EAWA0I,EAAe1hD,UAAUkjD,0BAA4B,SAAUjnD,GAC7D,QACEA,EAAQspD,UACRtpD,EAAQqG,eAAe,oBACvB4H,MAAMC,QAAQlO,EAAQkqD,mBAEflqD,EAAQkqD,gBAAgBO,OAAM,SAAUrR,GAC7C,OACEA,EAAKsB,QACLtB,EAAKsB,OAAO4O,UACZtpD,EAAQspD,SAASzhC,gBAAkBuxB,EAAKsB,OAAO4O,SAASzhC,aAE5D,GAIJ,EAWA49B,EAAe1hD,UAAUgjD,kBAAoB,SAAU/mD,EAAS0qD,GAC9D,IAAIlsD,EAAGy6C,EAIP,GAFAyR,EAAWA,GAAY,IAGpB1qD,EAAQqG,eAAe,YACvBrG,EAAQqG,eAAe,aAExB,OAAO,EAGT,IAAK7H,EAAI,EAAGA,EAAIksD,EAAS1rD,OAAQR,IAG/B,GAFAy6C,EAASyR,EAASlsD,IAEbwB,EAAQqG,eAAe4yC,GAC1B,OAAO,EAIX,OAAO,CACT,EAEAwM,EAAe1hD,UAAUmjD,yBAA2B,SAAUlnD,GAC5D,IACI+8C,EAAkB,CACpBtzB,kBAAmBtqB,KAAKy5C,mBACxBuE,UAAWn9C,EAAQm9C,WAAan9C,EAAQsoD,QACxC/+B,gBAAiBvpB,EAAQspD,UA0C3B,OAvCItpD,EAAQqG,eAAe,YACzB02C,EAAgBrC,OAAS16C,EAAQ06C,QAG/B16C,EAAQqG,eAAe,eACzB02C,EAAgBZ,UAAYn8C,EAAQm8C,WAGlCn8C,EAAQqG,eAAe,qBACzB02C,EAAgBmN,gBAAkBlqD,EAAQkqD,iBAIxClqD,EAAQqG,eAAe,qBACzBiU,EAAUgC,UArBDnd,KAsBFojC,eACL,0EAGFwa,EAAgBnC,MAAQ56C,EAAQ8iD,gBAAgBlI,MAE5C56C,EAAQ8iD,gBAAgBz8C,eAAe,WACzC02C,EAAgBjC,MAAQ96C,EAAQ8iD,gBAAgBhI,OAGlDiC,EAAgB/B,KAAOh7C,EAAQ8iD,gBAAgB9H,KAC/C+B,EAAgBnN,MAAQ5vC,EAAQ8iD,gBAAgBlT,MAChDmN,EAAgBvS,WAAaxqC,EAAQ8iD,gBAAgBtY,WACrDuS,EAAgBthC,YAAczb,EAAQ8iD,gBAAgBrnC,YAElDzb,EAAQ8iD,gBAAgBz8C,eAAe,WACzC02C,EAAgBP,MAAQx8C,EAAQ8iD,gBAAgBtG,OAG9Cx8C,EAAQ8iD,gBAAgBz8C,eAAe,mBACzC02C,EAAgB4N,cAAgB3qD,EAAQ8iD,gBAAgB6H,gBAIrD5N,CACT,EAEA0I,EAAe1hD,UAAU65C,oBAAsB,SAAU59C,EAASi0B,GAChE,IAAIrM,EAAsBzoB,KAAKqf,eAC3BvD,EAAuB2M,EAAoB3M,qBAC3C2vC,EACwC,qBAA1ChjC,EAAoBhE,kBAClBinC,EAA+B,UAAjB7qD,EAAQumD,KAGtBj9C,EAAO,CACTm1C,cAAe,CACb/sB,cAHFvyB,KAAKqrD,oBAAsBv2B,EAAOy0B,cAAgBz0B,EAAO00B,QAIvD3oD,QAAS,CACPutB,SAAUs9B,IAAgBD,GAAqB5qD,EAAQ6oD,SAsB7D,OAjBIgC,EACFvhD,EAAKm1C,cAAcqM,sBAAwB72B,EAAOy0B,cAElDp/C,EAAKm1C,cAAcrB,aAAenpB,EAAOkpB,WAAalpB,EAAOq0B,QAC7Dh/C,EAAKm1C,cAAcC,QAAUzqB,EAAOyqB,QACpCp1C,EAAKm1C,cAAcG,WACjB3jC,EAAqBoO,OAAOw1B,iBAE1B7+C,EAAQg8C,SACV1yC,EAAKm1C,cAAczC,OAASh8C,EAAQg8C,SAIpC78C,KAAKy5C,qBACPtvC,EAAKmgB,kBAAoBtqB,KAAKy5C,oBAGzBtvC,CACT,EAEAm8C,EAAe1hD,UAAU85C,uBAAyB,SAAUxhC,GAC1D,IAAI9K,EACA6sC,EAAU,CAAC,EA4Bf,OA1BI/hC,EAASmhB,iBACX4gB,EAAU/hC,EAASmhB,eAAe,IAGpCjsB,EAAU,CACR2H,MAAOklC,EAAQllC,MACfM,QAAS,CAAC,EACVtM,KAAMkxC,EAAQlxC,MAGZkxC,EAAQ5kC,SAAW4kC,EAAQ5kC,QAAQ6kC,YACrC9sC,EAAQiI,QAAU4kC,EAAQ5kC,QAAQ6kC,WAGhCD,EAAQ5kC,SAAW4kC,EAAQ5kC,QAAQsvC,yBACrCv3C,EAAQu3C,uBAAyB1K,EAAQ5kC,QAAQsvC,wBAG/C1K,EAAQ5kC,SAAW4kC,EAAQ5kC,QAAQuxC,mBACrCx5C,EAAQw5C,iBAAmB3M,EAAQ5kC,QAAQuxC,kBAGzC3M,EAAQ5kC,SAAW4kC,EAAQ5kC,QAAQwxC,qBACrCz5C,EAAQy5C,mBAAqB5M,EAAQ5kC,QAAQwxC,oBAGxCz5C,CACT,EAcAk0C,EAAe1hD,UAAU0O,SAAW,WAClC,IAAIZ,EAAO1S,KAQX,OANA0Z,EAAsB1Z,KAAMyZ,EAAQ6sC,EAAe1hD,YAE/C5E,KAAKiqD,eAAiBjqD,KAAKiqD,cAAcj5B,YAC3ChxB,KAAKiqD,cAAcj5B,WAAWC,YAAYjxB,KAAKiqD,eAG1CjqD,KAAK8mD,qBACTlgD,OAAM,WAEP,IACCa,MAAK,WACJ,OAAKiL,EAAKooC,cAIHpoC,EAAKooC,cAAcxnC,WAHjB9S,QAAQ0B,SAInB,GACJ,EAEApD,EAAOC,QAAUwL,EAAYE,cAAc67C,EAE3C,EAAE,CAAC,mBAAmB,IAAI,gBAAgB,IAAI,yBAAyB,IAAI,mBAAmB,IAAI,kCAAkC,IAAI,oCAAoC,IAAI,2BAA2B,IAAI,mCAAmC,IAAI,gCAAgC,IAAI,gCAAgC,IAAI,iBAAiB,IAAI,qBAAqB,IAAI,iBAAiB,IAAI,6BAA6B,IAAI,WAAW,IAAI,8BAA8B,GAAG,0BAA0B,KAAK,IAAI,CAAC,SAASxmD,EAAQhB,EAAOC,GAC9gB,aAEA,IAAI8zC,EAAe/yC,EAAQ,oCACvByZ,EAAiBzZ,EAAQ,6BACzBse,EAA0Bte,EAAQ,wCAClC++B,EAAS/+B,EAAQ,qBACjBiK,EAAOjK,EAAQ,kBACfob,EAAU,UACVsI,EAAY1jB,EAAQ,uBACpBmiC,EACFniC,EAAQ,uBAAuBmiC,uBAC7B9mB,EAAYrb,EAAQ,uBACpB2Z,EAAU3Z,EAAQ,qBAClB4J,EAAW5J,EAAQ,sBACnB0Z,EAAS1Z,EAAQ,oBACjB4Z,EAAwB5Z,EAAQ,sCAChC8kB,EAAc9kB,EAAQ,yBACtByK,EAAczK,EAAQ,2BA4D1B,SAASgsD,EAAOjrD,GACdb,KAAK4Z,QAAU/Y,EAAQgZ,OACvB7Z,KAAKo5C,WACHv4C,EAAQgZ,OAAOgC,mBAAmBC,qBAAqBoO,OAAOjP,UAC9D,QACAC,EACFlb,KAAKq5C,SAAWx4C,EAAQgZ,OAAOgC,mBAAmBkE,QAClD/f,KAAKs5C,iBACHt5C,KAAKo5C,WACL,6BACAva,EAAO7+B,KAAKq5C,UACZ,QACFr5C,KAAKu5C,0BAA2B,CAClC,CAEAuS,EAAOlnD,UAAUg2C,YAAc,WAC7B,IAAIloC,EAAO1S,KACP6Z,EAAS7Z,KAAK4Z,QACdipB,EAAiBj5B,YAAW,WAC9BuR,EAAUgC,UAAUtD,EAAQ,wBAC9B,GAAGooB,GAEH,OAAO,IAAIzhC,SAAQ,SAAU0B,GAC3B2wC,EAAahtC,OACX,CACE8C,KAAM6a,EAAUw8B,mBAChBzP,iBACE79B,EAAK0mC,WACL,uBACAva,EAAOnsB,EAAK2mC,UACZ,QACF7I,aAAc99B,EAAK4mC,mBAErB,SAAUuB,GACRnoC,EAAKooC,cAAgBD,EACrBjV,aAAa/C,GACb1nB,EAAUgC,UAAUtD,EAAQ,yBAC5B3X,EAAQwQ,EACV,GAEJ,GACF,EAiJAo5C,EAAOlnD,UAAU2Y,SAAW,SAAU1c,EAASkE,GAC7C,IAEIgnD,EAAiBC,EAFjBt5C,EAAO1S,KACP6Z,EAAS7Z,KAAK4Z,QAOlB,OAJI7U,IACFA,EAAWgF,EAAKL,EAAS3E,KAGtBlE,GAAY2iB,EAAU2jC,eAAejgD,eAAerG,EAAQumD,OAYjE2E,EAAkB,IAAIvrD,SAAQ,SAAU0B,EAASC,GAC3CuQ,EAAK6mC,0BACPp+B,EAAUgC,UAAUtD,EAAQ,4CAE5B1X,EAAO,IAAIoX,EAAeC,EAAOyyC,uCAEjCv5C,EAAK6mC,0BAA2B,EAE3B/2C,OAAOmwC,aACVx3B,EAAUgC,UAAUtD,EAAQ,+BAGF,IAAxBhZ,EAAQ4mD,aACVtsC,EAAUgC,UAAUtD,EAAQ,0BAGA,IAA1BhZ,EAAQqrD,eACV/wC,EAAUgC,UAAUtD,EAAQ,2BAG9BnH,EAAKy5C,qBAAqBtrD,GAAS+F,MAAMzE,GAEzCuQ,EAAKooC,cAAc9zB,KACjB,CAAC,EACDtU,EAAK+1C,4BAA4B5nD,EAASqB,EAASC,IAGzD,IAEI4C,GACFgnD,EACGtkD,MAAK,SAAUkR,GACd5T,EAAS,KAAM4T,EACjB,IACC/R,MAAM7B,GAEF/E,KAAK86C,cAAchJ,cAAc,CACtCC,YAAa,WACX52B,EAAUgC,UAAUtD,EAAQ,yCAC9B,KAIGkyC,IAtDLC,EAAc,IAAIzyC,EAAeC,EAAOssC,6BAEpC/gD,GACFA,EAASinD,GAEFhsD,KAAK86C,cAAc7I,qBAGrBzxC,QAAQ2B,OAAO6pD,GA+C1B,EAEAF,EAAOlnD,UAAU6jD,4BAA8B,SAC7C5nD,EACAqB,EACAC,GAEA,IAAIuQ,EAAO1S,KACP6Z,EAAS7Z,KAAK4Z,QAElB,OAAIpX,OAAOmwC,YACF,SAAU5rC,EAAKqL,GACpB,IAAIg6C,EACFh6C,GAAWA,EAAQuc,MAAyC,YAAjCvc,EAAQuc,KAAKhe,UAAU,EAAG,GAEvD+B,EAAK6mC,0BAA2B,EAG5BxyC,GAAOqlD,GACTjxC,EAAUgC,UACRtD,EACA,kDAGF1X,EAAO,IAAIoX,EAAeC,EAAO6yC,uBACxBj6C,GACTM,EACG45C,gBAAgBzrD,EAASuR,EAAQgsC,YACjC32C,KAAKvF,GACL0E,MAAMzE,EAEb,EAGK,SAAU4E,EAAK+tB,GACpBpiB,EAAK6mC,0BAA2B,EAE5BxyC,EACe,+BAAbA,EAAIrH,MACNyb,EAAUgC,UAAUtD,EAAQ,sCAC5B1X,EAAO,IAAIoX,EAAeC,EAAO6yC,uBAEjCtlD,EAAIrH,MACJqH,EAAIrH,KAAKuD,QAAQ,oCAAsC,GAEvDd,EACE,IAAIoX,EAAe,CACjB7Z,KAAM8Z,EAAO+yC,yBAAyB7sD,KACtCqO,KAAMyL,EAAO+yC,yBAAyBx+C,KACtCqI,QAASoD,EAAO+yC,yBAAyBn2C,QACzCiE,QAAS,CACPC,cAAevT,MAKd+tB,GACTpiB,EAAK45C,gBAAgBzrD,EAASi0B,GAAQrtB,KAAKvF,GAAS0E,MAAMzE,EAE9D,CACF,EAEA2pD,EAAOlnD,UAAU0nD,gBAAkB,SAAUzrD,EAASi0B,GACpD,IAAIpiB,EAAO1S,KACP6Z,EAAS7Z,KAAK4Z,QAMlB,OAJKpX,OAAOmwC,aACV3yC,KAAK86C,cAAcjJ,SAAS7xC,KAAKs5C,kBAG5Bz/B,EACJK,QAAQ,CACPC,SAAU,kCACVpP,OAAQ,OACRZ,KAAMnK,KAAKy+C,oBAAoB59C,EAASi0B,KAEzCrtB,MAAK,SAAUyV,GACd,IAAI9K,EAAUM,EAAKgsC,uBAAuBxhC,GAc1C,OAZI1a,OAAOmwC,YACTx3B,EAAUgC,UAAUtD,EAAQ,2CAE5BsB,EAAUgC,UAAUtD,EAAQ,+BAG1BzH,EAAQu3C,wBACVxuC,EAAUgC,UAAUtD,EAAQ,0BAG9BnH,EAAKooC,cAAcvJ,QAEZn/B,CACT,IACCxL,OAAM,SAAUG,GASf,OARIvE,OAAOmwC,YACTx3B,EAAUgC,UAAUtD,EAAQ,0CAE5BsB,EAAUgC,UAAUtD,EAAQ,8BAG9BnH,EAAKooC,cAAcvJ,QAEZ/wC,QAAQ2B,OACbic,EAAwBrX,EAAK,CAC3BgH,KAAMyL,EAAOosC,mCAAmC73C,KAChDrO,KAAM8Z,EAAOosC,mCAAmClmD,KAChD0W,QAASoD,EAAOosC,mCAAmCxvC,UAGzD,GACJ,EAEA01C,EAAOlnD,UAAU85C,uBAAyB,SAAUxhC,GAClD,IAAI9K,EACA6sC,EAAU,CAAC,EAoBf,OAlBI/hC,EAASmhB,iBACX4gB,EAAU/hC,EAASmhB,eAAe,IAGpCjsB,EAAU,CACR2H,MAAOklC,EAAQllC,MACfM,QAAS,CAAC,EACVtM,KAAMkxC,EAAQlxC,MAGZkxC,EAAQ5kC,SAAW4kC,EAAQ5kC,QAAQ6kC,YACrC9sC,EAAQiI,QAAU4kC,EAAQ5kC,QAAQ6kC,WAGhCD,EAAQ5kC,SAAW4kC,EAAQ5kC,QAAQsvC,yBACrCv3C,EAAQu3C,uBAAyB1K,EAAQ5kC,QAAQsvC,wBAG5Cv3C,CACT,EAEA05C,EAAOlnD,UAAU65C,oBAAsB,SAAU59C,EAASi0B,GACxD,IAAIrM,EAAsBzoB,KAAK4Z,QAAQiC,mBACnCC,EAAuB2M,EAAoB3M,qBAC3C2vC,EACwC,qBAA1ChjC,EAAoBhE,kBAClBta,EAAO,CACTm1C,cAAe,CACb/sB,cAAeuC,EAAO03B,UAAY13B,EAAOtX,MACzC3c,QAAS,CACPutB,SAA2B,UAAjBvtB,EAAQumD,OAAqBqE,KAkB7C,OAbI32B,EAAO03B,SACTriD,EAAKm1C,cAAcqM,sBAAwB72B,EAAO03B,UAElDriD,EAAKm1C,cAAcrB,aAAenpB,EAAOkpB,UACzC7zC,EAAKm1C,cAAcC,QAAUzqB,EAAO0qB,QACpCr1C,EAAKm1C,cAAcG,WACjB3jC,EAAqBoO,OAAOw1B,iBAE1B7+C,EAAQqG,eAAe,YACzBiD,EAAKm1C,cAAczC,OAASh8C,EAAQg8C,SAIjC1yC,CACT,EAEA2hD,EAAOlnD,UAAUunD,qBAAuB,SAAUtrD,GAChD,IAAI6R,EAAO1S,KACP6Z,EAAS7Z,KAAK4Z,QACdO,EAAW,iBAAmBqJ,EAAU2jC,eAAetmD,EAAQumD,MAEnE,OAAOvtC,EACJK,QAAQ,CACPC,SAAUA,EACVpP,OAAQ,OACRZ,KAAMnK,KAAK0nD,2BAA2B7mD,KAEvC4G,MAAK,SAAUyV,GACd,IAAI02B,EAGFA,EADmB,aAAjB/yC,EAAQumD,KACIlqC,EAAS0gC,gBAAgBhK,YAEzB12B,EAASoqC,eAAemF,YAGb,WAAvB5rD,EAAQ6rD,aACV9Y,EAAchvB,EAAYsB,SAAS0tB,EAAa,CAC9C8Y,WAAY,YAIZlqD,OAAOmwC,aACTx3B,EAAUgC,UAAUtD,EAAQ,0CAG9BnH,EAAKooC,cAAcjJ,SAAS+B,EAC9B,IACChtC,OAAM,SAAUG,GACf,IAAI8R,EAAS9R,EAAIsT,SAAWtT,EAAIsT,QAAQ4I,WAKxC,OAHAvQ,EAAKooC,cAAcvJ,QACnB7+B,EAAK6mC,0BAA2B,EAEjB,MAAX1gC,EACKrY,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAO4sC,8BAA8Br4C,KAC3CrO,KAAM8Z,EAAO4sC,8BAA8B1mD,KAC3C0W,QAASoD,EAAO4sC,8BAA8BhwC,QAC9CiE,QAAS,CACPC,cAAevT,MAMhBvG,QAAQ2B,OACbic,EAAwBrX,EAAK,CAC3BgH,KAAMyL,EAAOqsC,mBAAmB93C,KAChCrO,KAAM8Z,EAAOqsC,mBAAmBnmD,KAChC0W,QAASoD,EAAOqsC,mBAAmBzvC,UAGzC,GACJ,EAEA01C,EAAOlnD,UAAU8iD,2BAA6B,SAAU7mD,GACtD,IAAIoB,EACA6Z,EACF9b,KAAK4Z,QAAQiC,mBAAmBC,qBAC9Bu/B,EAAYr7C,KAAK86C,cAAczK,WAC/BuN,EAAkB,CACpBL,UACEzhC,EAAqBoO,OAAOjP,UAC5B,QACAC,EACA,uBACA2jB,EAAO7+B,KAAKq5C,UACZ,iBACAgC,EACFY,UACEngC,EAAqBoO,OAAOjP,UAC5B,QACAC,EACA,qBACA2jB,EAAO7+B,KAAKq5C,UACZ,iBACAgC,EACFoP,mBAA2C,IAAxB5pD,EAAQ4mD,YAC3ByE,eAAyC,IAA1BrrD,EAAQqrD,cACvB9P,kBAAmB,CACjBC,UAAWx7C,EAAQoc,aAAenB,EAAqBoO,OAAOjN,YAC9DytC,WAAY7pD,EAAQ07C,OACpBC,aAAc37C,EAAQ8pD,uBAAuBlhD,WAC7CmhD,iBAAqD,IAApC/pD,EAAQgqD,wBACzBC,gBAAiBjqD,EAAQiqD,kBAc7B,GATEtoD,OAAOmwC,aAC0C,mBAA1CnwC,OAAOmwC,YAAYmN,qBAE1BlC,EAAgBL,UACd/6C,OAAOmwC,YAAYmN,qBAAuB,SAC5ClC,EAAgB3B,UACdz5C,OAAOmwC,YAAYmN,qBAAuB,UAGzB,aAAjBj/C,EAAQumD,KAQV,IAAKnlD,KAPL27C,EAAgBrC,OAAS16C,EAAQ06C,OACjCqC,EAAgBxzB,gBAAkBvpB,EAAQspD,SAEtCtpD,EAAQqG,eAAe,YACzB02C,EAAgBf,OAASh8C,EAAQg8C,QAGvBh8C,EAAQqqD,wBACdrqD,EAAQqqD,wBAAwBhkD,eAAejF,KACjD27C,EAAgB37C,GAAOpB,EAAQqqD,wBAAwBjpD,SAI3D27C,EAAgB+F,gBAAkB9iD,EAAQqqD,wBAEtCrqD,EAAQuqD,8BACVxN,EAAgB9xB,YAAcjrB,EAAQuqD,6BAI1C,OAAOxN,CACT,EASAkO,EAAOlnD,UAAUg6C,YAAc,WACzB5+C,KAAKu5C,0BACPp+B,EAAUgC,UAAUnd,KAAK4Z,QAAS,sCAEpC5Z,KAAK86C,cAAcvJ,OACrB,EASAua,EAAOlnD,UAAUk6C,YAAc,WAC7B9+C,KAAK86C,cAAc1Z,OACrB,EAcA0qB,EAAOlnD,UAAU0O,SAAW/I,GAAY,WACtC,IAAImI,EAAO1S,KAQX,OANA0S,EAAKooC,cAAcxnC,WAEnBoG,EAAsBhH,EAAM+G,EAAQqyC,EAAOlnD,YAE3CuW,EAAUgC,UAAUzK,EAAKkH,QAAS,6BAE3BpZ,QAAQ0B,SACjB,IAEApD,EAAOC,QAAU+sD,CAEjB,EAAE,CAAC,sBAAsB,IAAI,4BAA4B,IAAI,sBAAsB,IAAI,qCAAqC,IAAI,uCAAuC,IAAI,qBAAqB,IAAI,mCAAmC,IAAI,oBAAoB,IAAI,iBAAiB,IAAI,wBAAwB,IAAI,oBAAoB,IAAI,sBAAsB,IAAI,mBAAmB,IAAI,0BAA0B,KAAK,IAAI,CAAC,SAAShsD,EAAQhB,EAAOC,GACzb,aAOA,IAAIoc,EAAYrb,EAAQ,oBACpB6a,EAA6B7a,EAAQ,uCACrC8a,EAAuB9a,EAAQ,iCAC/B+a,EAAkB/a,EAAQ,4BAC1ByZ,EAAiBzZ,EAAQ,0BACzB0Z,EAAS1Z,EAAQ,mBACjBgsD,EAAShsD,EAAQ,qBAEjByK,EAAczK,EAAQ,2BA8G1BhB,EAAOC,QAAU,CACf8G,OAAQ0E,GArDV,SAAgB1J,GACd,IAAI8H,EAAO,SAEX,OAAOgS,EACJG,OAAO,CACNnS,KAAMA,EACNkR,OAAQhZ,EAAQgZ,OAChBkB,cAAela,EAAQka,gBAExBtT,MAAK,WACJ,OAAOmT,EAAqB/U,OAAO,CACjCkV,cAAela,EAAQka,cACvBlB,OAAQhZ,EAAQgZ,OAChBmB,MAAOna,EAAQma,MACfC,UAAWJ,EAAgBhV,OAAOhF,EAAQka,eAC1CpS,KAAMA,GAEV,IACClB,MAAK,SAAUoS,GACd,IACIxR,EAASwR,EAAOgC,mBAIpB,OAFAhb,EAAQgZ,OAASA,GAEiC,IAA9CxR,EAAOyT,qBAAqBqO,cACvB3pB,QAAQ2B,OAAO,IAAIoX,EAAeC,EAAOksC,sBAGlDvqC,EAAUgC,UAAUtc,EAAQgZ,OAAQ,sBAE/B,IAAIiyC,EAAOjrD,GAEN+5C,cACZ,GACJ,IAoBEwH,YANF,WACE,OAAO,CACT,EASElnC,QAtHY,UAyHd,EAAE,CAAC,mBAAmB,IAAI,sCAAsC,IAAI,yBAAyB,IAAI,2BAA2B,IAAI,gCAAgC,IAAI,oBAAoB,IAAI,kBAAkB,IAAI,0BAA0B,KAAK,IAAI,CAAC,SAASpb,EAAQhB,EAAOC,GAC9Q,aAEAD,EAAOC,QAAU,CACfihD,mBAAoB,yBACpBmH,eAAgB,CACdwF,SAAU,0BACVjD,MAAO,2BAET7B,iBAAkB,CAAC,YAAa,YAGlC,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS/nD,EAAQhB,EAAOC,GACnC,aAoBA,IAAIwa,EAAiBzZ,EAAQ,6BAE7BhB,EAAOC,QAAU,CACf2mD,mBAAoB,CAClB33C,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,qBACN0W,QAAS,4CAEX61C,mCAAoC,CAClCl+C,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,qCACN0W,QAAS,2CAEXwvC,mCAAoC,CAClC73C,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,qCACN0W,QAAS,6CAEXyvC,mBAAoB,CAClB93C,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,qBACN0W,QAAS,qCAEX0vC,4BAA6B,CAC3B/3C,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,8BACN0W,QAAS,+CAEXm2C,yBAA0B,CACxBx+C,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,2BACN0W,QACE,oFAEJi2C,oBAAqB,CACnBt+C,KAAMwL,EAAehL,MAAMw9B,SAC3BrsC,KAAM,sBACN0W,QAAS,oDAEXgwC,8BAA+B,CAC7Br4C,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,gCACN0W,QAAS,uCAIb,EAAE,CAAC,4BAA4B,MAAM,IAAI,CAAC,SAAStW,EAAQhB,EAAOC,GAClE,aAGA,IAAIwL,EAAczK,EAAQ,2BACtB6a,EAA6B7a,EAAQ,uCACrC8sD,EAA0B9sD,EAAQ,+BAsCtChB,EAAOC,QAAU,CACf8G,OAAQ0E,GAjBV,SAAgB1J,GAGd,OAAO8Z,EACJG,OAAO,CACNnS,KAJO,0BAKPkR,OAAQhZ,EAAQgZ,OAChBkB,cAAela,EAAQka,gBAExBtT,MAAK,WAGJ,OAFe,IAAImlD,GAEHjtC,WAAW9e,EAC7B,GACJ,IAQEqa,QA3CY,UA8Cd,EAAE,CAAC,sCAAsC,IAAI,8BAA8B,IAAI,0BAA0B,KAAK,IAAI,CAAC,SAASpb,EAAQhB,EAAOC,GAC3I,aAEA,IAAIwL,EAAczK,EAAQ,2BACtBqb,EAAYrb,EAAQ,oBACpB+a,EAAkB/a,EAAQ,4BAC1B8a,EAAuB9a,EAAQ,iCAMnC,SAAS8sD,IAA2B,CAEpCA,EAAwBhoD,UAAU+a,WAAa,SAAU9e,GACvD,IAAI6R,EAAO1S,KAqBX,OAnBAA,KAAKojC,eAAiBxoB,EACnB/U,OAAO,CACNkV,cAAela,EAAQka,cACvBlB,OAAQhZ,EAAQgZ,OAChBmB,MAAOna,EAAQma,MACfC,UAAWJ,EAAgBhV,OAAOhF,EAAQka,eAC1CpS,KAAM,4BAEP/B,OAAM,SAAUG,GAGf,OAFA2L,EAAKm0C,YAAc9/C,EAEZvG,QAAQ2B,OAAO4E,EACxB,IAEFoU,EAAUgC,UACRnd,KAAKojC,eACL,yCAGK5iC,QAAQ0B,QAAQlC,KACzB,EA0BA4sD,EAAwBhoD,UAAUioD,6BAA+B,WAC/D,IAAIhzC,EACAnH,EAAO1S,KAEX,OAAOA,KAAKojC,eACT37B,MAAK,SAAUmY,GAGd,OAFA/F,EAAS+F,GAEK1F,QAAQ,CACpBkH,IAAK,aACLjX,KAAM,CACJmjB,MACE,iGAQR,IACC7lB,MAAK,SAAUX,GACd,IAAIgmD,EAAkBhmD,EAAOqD,KAAKojC,wBAAwBuf,gBACtDC,EAAiBjmD,EAAOqD,KAAKojC,wBAAwBwf,eAWzD,OATA5xC,EAAUgC,UACRtD,EACA,iDAAmDizC,GAErD3xC,EAAUgC,UACRtD,EACA,gDAAkDkzC,GAG7C,CACLD,gBAAiBA,EACjBC,eAAgBA,EAEpB,IACCnmD,OAAM,WACL,OAAI8L,EAAKm0C,YACArmD,QAAQ2B,OAAOuQ,EAAKm0C,cAG7B1rC,EAAUgC,UAAUtD,EAAQ,uCAErB,CACLizC,iBAAiB,EACjBC,gBAAgB,GAEpB,GACJ,EAEAjuD,EAAOC,QAAUwL,EAAYE,cAAcmiD,EAE3C,EAAE,CAAC,mBAAmB,IAAI,2BAA2B,IAAI,gCAAgC,IAAI,0BAA0B,KAAK,IAAI,CAAC,SAAS9sD,EAAQhB,EAAOC,GACzJ,aAEA,IAAIwa,EAAiBzZ,EAAQ,6BACzBktD,EAAaltD,EAAQ,oBACrB+yC,EAAe/yC,EAAQ,oCACvBqb,EAAYrb,EAAQ,uBACpB++B,EAAS/+B,EAAQ,qBACjBmtD,EACFntD,EAAQ,uBAAuBotD,wBAC7Bh+B,EAAuBpvB,EAAQ,sCAE/BogD,EAAc,IACdD,EAAe,IA0OnBnhD,EAAOC,QAAU,CACfouD,cArMF,SAAuBtzC,EAAQhZ,GAG7B,IAAIsJ,EAAO,CACTijD,WAAY,CACVC,oBAAqBxsD,EAAQysD,kBAC7BC,gBAAiB,CACfC,aAAc3sD,EAAQyb,aAExBmxC,KAAM5sD,EAAQ4sD,KACdC,gCAAiC7sD,EAAQ85C,WACzCgT,aAAc9sD,EAAQ+sD,aAExBrR,OAAQ17C,EAAQ07C,OAChBsR,WAAYhtD,EAAQo7C,UACpB6R,WAAYjtD,EAAQ08C,UACpBwQ,oBAAqBltD,EAAQypB,mBAc/B,OAXIzpB,EAAQ6sB,gBACVu/B,EAAsBjrD,SAAQ,SAAU83C,GACtC,IAAIkU,EAAW9+B,EAAqB4qB,GAChCkU,KAAYntD,EAAQ6sB,iBACtBvjB,EAAKijD,WAAWG,gBAAgBzT,GAC9Bj5C,EAAQ6sB,eAAesgC,GAE7B,IAIKn0C,EACJK,QAAQ,CACPkH,IAAK,YACLrW,OAAQ,OACRoP,SAAU,aACVhQ,KAAMA,IAEP1C,MAAK,SAAUyV,GACd,IAAI+wC,EAAmB/wC,EAAS9G,QAAQmK,KAAK0tC,iBAE7C,IAAKA,EACH,MAAM,IAAI10C,EAAeyzC,EAAWkB,4BAGtC,MAAO,CACLzB,YAAawB,EAAiBxB,YAC9B9gC,MAAOsiC,EAAiBtiC,MACxBwiC,mBAAoBF,EAAiBE,mBAEzC,IACCvnD,OAAM,WACL,MAAM,IAAI2S,EAAeyzC,EAAWkB,2BACtC,GACJ,EAiJEE,UAnIF,SAAmBv0C,EAAQhZ,GACzB,IACIwtD,EAAgBxtD,EAAQoa,UAAY,QACpCD,EAAQna,EAAQma,QAAS,EAE7B,OAAO,IAAIxa,SAAQ,SAAU0B,EAASC,GACpC,IAAImsD,EA6DC,CACL77C,IALAlJ,KAAKouB,OAAOn1B,OAAO4yC,YAAc6K,GAAgB,GAAKz9C,OAAO8yC,UAM7DrgB,KAJA1rB,KAAKouB,OAAOn1B,OAAO+yC,WAAa2K,GAAe,GAAK19C,OAAOizC,YAzD3D5C,EAAahtC,OACX,CACE8C,KATU,kBAUV4nC,iBACE8d,EAAgB,kBAAoBxvB,EAAO7jB,GAAS,QACtDw1B,aACE6d,EAAgB,sBAAwBxvB,EAAO7jB,GAAS,QAC1DvI,IAAK67C,EAAc77C,IACnBwiB,KAAMq5B,EAAcr5B,KACpBD,OAAQirB,EACRlrB,MAAOmrB,IAET,SAAUqO,GACRpzC,EAAUgC,UAAUtD,EAAQ,0BAC5B00C,EAAqBvnC,KAAK,CAAC,GAAG,SAAUjgB,EAAK+tB,GAC3C,OA2BV,SAAyBA,GACvB,OAAOA,GAAUA,EAAO05B,OAC1B,CA7BcC,CAAgB35B,IAClBy5B,EAAqBhd,QAEdrvC,KA4BnB,SAA0B4yB,EAAQze,GAChC,OACGye,GAAUA,EAAO45B,QACjBr4C,GAAwB,+BAAfA,EAAM3W,IAEpB,CA9BcivD,CAAiB75B,EAAQ/tB,IAC3BwnD,EAAqBhd,QAEdpvC,EACL,IAAIoX,EAAeyzC,EAAW4B,2BAIlCL,EAAqBhd,QAEdpvC,EACL,IAAIoX,EAAeyzC,EAAW6B,2BAElC,IAEAN,EAAqB1c,SAAShxC,EAAQ4rD,YACxC,GAEJ,GACF,EAoFEqC,eAzCF,SAAwBj1C,EAAQhZ,GAG9B,IAAIsJ,EAAO,CACT4kD,mBAAoB,CAClBC,OAAQnuD,EAAQ8qB,MAChB+hC,gCAAiC7sD,EAAQ85C,WACzCsU,qBAAsBpuD,EAAQstD,mBAC9BR,aAAc9sD,EAAQ+sD,aAExBG,oBAAqBltD,EAAQypB,mBAI/B,OAAOzQ,EACJK,QAAQ,CACPkH,IAAK,YACLrW,OAAQ,OACRoP,SAAU,sCACVhQ,KAAMA,IAEP1C,MAAK,SAAUyV,GACd,IAAKA,EAASnD,MACZ,MAAM,IAAIR,EAAeyzC,EAAWkC,yBAGtC,MAAO,CACLn1C,MAAOmD,EAASnD,MAChBo1C,aAActuD,EAAQ8qB,MACtBgvB,WAAY95C,EAAQ85C,WACpBiT,YAAa/sD,EAAQ+sD,YAEzB,IACChnD,OAAM,WACL,MAAM,IAAI2S,EAAeyzC,EAAWkC,wBACtC,GACJ,EAMEhP,YAAaA,EACbD,aAAcA,EAGhB,EAAE,CAAC,sBAAsB,IAAI,4BAA4B,IAAI,mCAAmC,IAAI,qCAAqC,IAAI,oBAAoB,IAAI,sBAAsB,IAAI,mBAAmB,MAAM,IAAI,CAAC,SAASngD,EAAQhB,EAAOC,GACrP,aAEA,IAAIwL,EAAczK,EAAQ,2BACtByZ,EAAiBzZ,EAAQ,6BACzBktD,EAAaltD,EAAQ,oBACrB0jB,EAAY1jB,EAAQ,uBACpBsvD,EAAWtvD,EAAQ,aACnBo6C,EAAmBp6C,EAAQ,gCAC3Bqb,EAAYrb,EAAQ,uBAEpBwI,EAASxI,EAAQ,oBAAoBwI,OAQzC,SAAS+mD,EAAKxuD,GACZ,IAAIgb,EAAmBhb,EAAQgZ,OAAOgC,mBAEtC7b,KAAK4Z,QAAU/Y,EAAQgZ,OACvB7Z,KAAKo5C,WACHv9B,EAAiBC,qBAAqBb,UAAtCY,eACF7b,KAAKq5C,SAAWx9B,EAAiBkE,QACjC/f,KAAKsvD,WAAatvD,KAAKo5C,WAAa,sCACpCp5C,KAAKuvD,WAAavvD,KAAKo5C,WAAa,qCAEpCj+B,EAAUgC,UAAUnd,KAAK4Z,QAAS,6BACpC,CAwCAy1C,EAAKzqD,UAAU2Y,SAAW,SAAU1c,GAClC,IAAI6R,EAAO1S,KACPwvD,EAAuBlnD,EACzB,CAAE2zC,UAAWvpC,EAAK68C,WAAYhS,UAAW7qC,EAAK48C,YAC9CzuD,GAGF,OAAKA,GAAWq5C,EAAiBr5C,EAAS2iB,EAAUqkC,mBAClD1sC,EAAUgC,UAAUzK,EAAKkH,QAAS,yCAE3BpZ,QAAQ2B,OACb,IAAIoX,EAAeyzC,EAAWyC,yCAI7BjsC,EAAUksC,kBAAkBC,SAAS9uD,EAAQ+sD,aAQ3CwB,EACJjC,cAAcz6C,EAAKkH,QAAS41C,GAC5B/nD,MAAK,SAAUmoD,GAKd,OAJAz0C,EAAUgC,UAAUzK,EAAKkH,QAAS,+BAClC/Y,EAAQ8qB,MAAQikC,EAAgBjkC,MAChC9qB,EAAQstD,mBAAqByB,EAAgBzB,mBAEtCiB,EAAShB,UAAU17C,EAAKkH,QAAS,CACtC6yC,YAAamD,EAAgBnD,YAC7BxxC,UAAWvI,EAAK0mC,YAEpB,IACC3xC,MAAK,WAGJ,OAFA0T,EAAUgC,UAAUzK,EAAKkH,QAAS,yBAE3Bw1C,EAASN,eAAep8C,EAAKkH,QAAS,CAC3Cu0C,mBAAoBttD,EAAQstD,mBAC5BxiC,MAAO9qB,EAAQ8qB,MACfgvB,WAAY95C,EAAQ85C,WACpBiT,YAAa/sD,EAAQ+sD,YACrBtjC,kBAAmBzpB,EAAQypB,mBAE/B,IACC7iB,MAAK,SAAUooD,GAGd,OAFA10C,EAAUgC,UAAUzK,EAAKkH,QAAS,6BAE3BpZ,QAAQ0B,QAAQ2tD,EACzB,IACCjpD,OAAM,SAAUG,GAGf,OAFAoU,EAAUgC,UAAUzK,EAAKkH,QAAS,QAAU7S,EAAIsT,QAAU,WAEnD7Z,QAAQ2B,OAAO4E,EACxB,KAvCAoU,EAAUgC,UAAUzK,EAAKkH,QAAS,yCAE3BpZ,QAAQ2B,OACb,IAAIoX,EAAeyzC,EAAW8C,4BAqCpC,EAEAhxD,EAAOC,QAAUwL,EAAYE,cAAc4kD,EAE3C,EAAE,CAAC,sBAAsB,IAAI,mBAAmB,IAAI,4BAA4B,IAAI,sBAAsB,IAAI,mBAAmB,IAAI,+BAA+B,IAAI,YAAY,IAAI,0BAA0B,KAAK,IAAI,CAAC,SAASvvD,EAAQhB,EAAOC,GACpP,aAGA,IAAIoc,EAAYrb,EAAQ,oBACpBuvD,EAAOvvD,EAAQ,mBACf+a,EAAkB/a,EAAQ,4BAC1B8a,EAAuB9a,EAAQ,iCAC/B6a,EAA6B7a,EAAQ,uCACrCyK,EAAczK,EAAQ,2BAyD1BhB,EAAOC,QAAU,CACf8G,OAAQ0E,GA5BV,SAAgB1J,GACd,IAAI8H,EAAO,OAEX,OAAOgS,EACJG,OAAO,CACNnS,KAAMA,EACNkR,OAAQhZ,EAAQgZ,OAChBkB,cAAela,EAAQka,gBAExBtT,MAAK,WACJ,OAAOmT,EAAqB/U,OAAO,CACjCkV,cAAela,EAAQka,cACvBlB,OAAQhZ,EAAQgZ,OAChBmB,MAAOna,EAAQma,MACfC,UAAWJ,EAAgBhV,OAAOhF,EAAQka,eAC1CpS,KAAMA,GAEV,IACClB,MAAK,SAAUoS,GAKd,OAJAhZ,EAAQgZ,OAASA,EAEjBsB,EAAUgC,UAAUtc,EAAQgZ,OAAQ,2BAE7B,IAAIw1C,EAAKxuD,EAClB,GACJ,IAQEqa,QA9DY,UAiEd,EAAE,CAAC,mBAAmB,IAAI,sCAAsC,IAAI,2BAA2B,IAAI,gCAAgC,IAAI,kBAAkB,IAAI,0BAA0B,KAAK,IAAI,CAAC,SAASpb,EAAQhB,EAAOC,GACzN,aAEAD,EAAOC,QAAU,CACf8oD,iBAAkB,CAChB,OACA,oBACA,cACA,aACA,oBACA,eAEFqF,wBAAyB,CACvB,iBACA,iBACA,eACA,eACA,eAEFwC,kBAAmB,CAAC,UAAW,aAGjC,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS5vD,EAAQhB,EAAOC,GACnC,aAEA,IAAIwa,EAAiBzZ,EAAQ,6BAc7BhB,EAAOC,QAAU,CACfmvD,2BAA4B,CAC1BngD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,6BACN0W,QAAS,8BACTiE,QAAS,kBAEXu0C,uBAAwB,CACtB7gD,KAAMwL,EAAehL,MAAMw9B,SAC3BrsC,KAAM,yBACN0W,QAAS,mCACTiE,QAAS,qBAEXy1C,0BAA2B,CACzB/hD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,4BACN0W,QAAS,gCAEXy4C,yBAA0B,CACxB9gD,KAAMwL,EAAehL,MAAM+c,QAC3B5rB,KAAM,2BACN0W,QAAS,6BACTiE,QAAS,cAEXo1C,sCAAuC,CACrC1hD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,wCACN0W,QAAS,yCAEX84C,wBAAyB,CACvBnhD,KAAMwL,EAAehL,MAAM+c,QAC3B5rB,KAAM,0BACN0W,QAAS,0BACTiE,QAAS,mBAIb,EAAE,CAAC,4BAA4B,MAAM,IAAI,CAAC,SAASva,EAAQhB,EAAOC,GAClE,aA0BAD,EAAOC,QAhBP,SAA0B8B,EAAS0qD,GACjC,IAAIlsD,EAAGy6C,EAIP,IAFAyR,EAAWA,GAAY,GAElBlsD,EAAI,EAAGA,EAAIksD,EAAS1rD,OAAQR,IAG/B,GAFAy6C,EAASyR,EAASlsD,IAEbwB,EAAQqG,eAAe4yC,GAC1B,OAAO,EAIX,OAAO,CACT,CAIA,EAAE,CAAC,GAAG,IAAI,CAAC,SAASh6C,EAAQhB,EAAOC,GACnC,aAEA,IAAIuJ,EAASxI,EAAQ,uBAAuBwI,OACxC6S,EAAYrb,EAAQ,0BACpByZ,EAAiBzZ,EAAQ,gCACzBqe,EAAmBre,EAAQ,mCAC3BkG,EAAkBlG,EAAQ,+BAC1B4E,EAAe5E,EAAQ,4BACvB0Z,EAAS1Z,EAAQ,uBACjB+hC,EAAU/hC,EAAQ,sBAClBgiC,EAAMhiC,EAAQ,YACd0jB,EAAY1jB,EAAQ,0BACpByW,EAAOzW,EAAQ,mBACfoiC,EAASpiC,EAAQ,uBACjB++B,EAAS/+B,EAAQ,wBACjB+uC,EACF/uC,EAAQ,0BAA0B+uC,gCAEhC3zB,EAAU,UAMd,SAAS60C,EAAclvD,GACrB6D,EAAa9E,KAAKI,MAElBA,KAAK4Z,QAAU/Y,EAAQgZ,OACvB7Z,KAAKub,eAAiB1a,EAAQ2a,cAC9Bxb,KAAKgwD,eAAiBnvD,EAElBb,KAAK4Z,SACP5Z,KAAKq5C,SAAWr5C,KAAK4Z,QAAQiC,mBAAmBkE,QAChD/f,KAAKo5C,WACHp5C,KAAK4Z,QAAQiC,mBAAmBC,qBAAqBb,YAEvDjb,KAAKq5C,SAAWlyC,QAAQtG,EAAQkf,SAChC/f,KAAKo5C,WAAav4C,EAAQoa,WAE5Bjb,KAAKo5C,WAAap5C,KAAKo5C,WAAa,QAAUl+B,CAChD,CAlBAlV,EAAgBoB,iCAAkC,EAoBlD1C,EAAaiB,YAAYoqD,GAEzBA,EAAcnrD,UAAU8W,eAAiB,WACvC,OAAI1b,KAAK4Z,QACApZ,QAAQ0B,UAGVlC,KAAKub,eAAe9T,KACzB,SAAUoS,GACR7Z,KAAK4Z,QAAUC,CACjB,EAAE8B,KAAK3b,MAEX,EAEA+vD,EAAcnrD,UAAUqrD,oBAAsB,WAC5C,MAAM,IAAI12C,EAAeC,EAAO02C,yCAClC,EAEAH,EAAcnrD,UAAUurD,WAAa,SAAUtvD,EAASuvD,GACtD,IAAIC,EAAkBh6C,EAClB3D,EAAO1S,KAMX,OAJAowD,EAAiBA,GAAkB,CAAC,GAEpC/5C,EAAQrW,KAAKswD,yBAAyBzvD,EAASuvD,IAGtC5vD,QAAQ2B,OAAOkU,IAGxBrW,KAAKuwD,uBAAwB,EAE7BF,EAAmBrwD,KAAKwwD,yBAAyB3vD,GAE1Cb,KAAKywD,kBAAkBJ,GAC3B5oD,MAAK,SAAU0C,GAMd,OALAgR,EAAUgC,UACRzK,EAAK6I,eACL,4CAGK7I,EAAKg+C,eAAeL,EAAiBt2C,MAAO5P,EACrD,IACC1C,MAAK,SAAUyV,GAOd,OANA/B,EAAUgC,UACRzK,EAAK6I,eACL,gDACE2B,EAASyzC,OAAOC,qBAGbl+C,EAAKm+C,kBAAkB3zC,EAAUmzC,EAC1C,IACC5oD,MAAK,SAAUyV,GACd,OAAOxK,EAAKo+C,sCACV5zC,EACAmzC,EAEJ,IACC5oD,MAAK,SAAU2K,GAQd,OAPAM,EAAKq+C,0BAEL51C,EAAUgC,UACRzK,EAAK6I,eACL,8CAGKnJ,CACT,IACCxL,OAAM,SAAUG,GAQf,OAPA2L,EAAKq+C,0BAEL51C,EAAUgC,UACRzK,EAAK6I,eACL,2CAGK/a,QAAQ2B,OAAO4E,EACxB,IACJ,EAEAgpD,EAAcnrD,UAAUosD,2CACtB,WACE,MAAM,IAAIz3C,EAAeC,EAAO02C,yCAClC,EAEFH,EAAcnrD,UAAUqsD,kBAAoB,WAC1C,MAAM,IAAI13C,EAAeC,EAAO02C,yCAClC,EAEAH,EAAcnrD,UAAUssD,cAAgB,WACtC,MAAM,IAAI33C,EAAeC,EAAO02C,yCAClC,EAEAH,EAAcnrD,UAAUmsD,wBAA0B,WAChD/wD,KAAKuwD,uBAAwB,EAC7BvwD,KAAKmxD,uBAAyB,KAEU,mBAA7BnxD,KAAKoxD,qBACdpxD,KAAKoxD,qBAET,EAEArB,EAAcnrD,UAAU8rD,eAAiB,SAAU32C,EAAO5P,GACxD,IAAIuI,EAAO1S,KACPyf,EAAM,mBAAqB1F,EAAQ,yBAEvC,OAAO/Z,KAAK0b,iBAAiBjU,MAAK,WAChC,OAAOiL,EAAKkH,QACTM,QAAQ,CACPC,SAAUsF,EACV1U,OAAQ,OACRZ,KAAMA,IAEPvD,OAAM,SAAUG,GACf,IAEIsqD,EAFAx4C,EAAS9R,GAAOA,EAAIsT,SAAWtT,EAAIsT,QAAQ4I,WAC3CquC,EAAmB,iDAevB,OAZe,MAAXz4C,GACFw4C,EAAc73C,EAAO+3C,8CACrBD,GAAoB,QACA,MAAXz4C,GACTw4C,EAAc73C,EAAOg4C,gCACrBF,GAAoB,QAEpBD,EAAc73C,EAAOi4C,qBAGvBt2C,EAAUgC,UAAUzK,EAAK6I,eAAgB+1C,GAElC9wD,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMsjD,EAAYtjD,KAClBrO,KAAM2xD,EAAY3xD,KAClB0W,QAASi7C,EAAYj7C,QACrBiE,QAAS,CACPC,cAAevT,KAIvB,GACJ,GACF,EAEAgpD,EAAcnrD,UAAU0rD,yBAA2B,SACjDzvD,EACAuvD,GAEA,IAAIsB,EAEJ,OAAmC,IAA/B1xD,KAAKuwD,sBACA,IAAIh3C,EAAeC,EAAOm4C,qCACvB9wD,EAAQkZ,MAERlZ,EAAQ06C,SAClBmW,EAAc,aAFdA,EAAc,UAKXA,IACHA,EAAc1xD,KAAKgxD,2CACjBnwD,EACAuvD,IAIAsB,EACK,IAAIn4C,EAAe,CACxBxL,KAAMyL,EAAOo4C,mCAAmC7jD,KAChDrO,KAAM8Z,EAAOo4C,mCAAmClyD,KAChD0W,QAAS,mCAAqCs7C,EAAc,MAIzD,KACT,EAEA3B,EAAcnrD,UAAUksD,sCAAwC,SAC9De,EACAhxD,GAEA,IAAI6R,EAAO1S,KAaX,OAXAa,EAAUA,GAAW,CAAC,EAEtBb,KAAK8xD,qBAAuBD,EAAev0B,cAK3C5qB,EAAKy+C,uBACHz+C,EAAKy+C,wBAA0B,IAAInrD,EACrC0M,EAAKq/C,sBAAsBF,EAAgBhxD,GAEpC6R,EAAKy+C,uBAAuB1pD,MAAK,SAAU2K,GAYhD,OAXA+I,EAAUgC,UACRzK,EAAK6I,eACL,sDACEvM,OAAOoD,EAAQ4/C,mBAEnB72C,EAAUgC,UACRzK,EAAK6I,eACL,6DACEvM,OAAOoD,EAAQ6/C,yBAGZ7/C,CACT,GACF,EAEA29C,EAAcnrD,UAAUmtD,sBAAwB,SAC9CF,EACAhxD,GAEA,IAGIwZ,EAHA63C,EAA6B/qD,QAC/B0qD,EAAelB,QAAUkB,EAAelB,OAAOwB,QAIjDh3C,EAAUgC,UACRnd,KAAKub,eACL,wDACEvM,OAAOkjD,IAGPA,EACFlyD,KAAKixD,kBAAkBY,EAAgBhxD,KAEvCwZ,EAAUra,KAAKoyD,oBACbP,EAAev0B,cACfu0B,EAAexlC,mBAETgmC,oBAAsBR,EAAexlC,iBAE7CrsB,KAAKmxD,uBAAuBjvD,QAAQmY,GAExC,EAEA01C,EAAcnrD,UAAUisD,kBAAoB,SAAU3zC,GAIpD,OAHAld,KAAK8xD,qBAAuB50C,EAASogB,cACrCt9B,KAAKmxD,uBAAyB,IAAInrD,EAE3BxF,QAAQ0B,QAAQgb,EACzB,EAEA6yC,EAAcnrD,UAAUwtD,oBAAsB,SAC5C90B,EACAjR,GAEA,MAAO,CACLtS,MAAOujB,EAAcvjB,MACrBhM,KAAMuvB,EAAcvvB,KACpB6d,QAAS0R,EAAc1R,QACvBvR,QAASijB,EAAcjjB,QACvByR,YACEwR,EAAcxR,aACdwR,EAAcxR,YAAYziB,QAAQ,MAAO,KAC3C2oD,iBAAkB3lC,GAAoBA,EAAiB2lC,iBACvDC,uBACE5lC,GAAoBA,EAAiB4lC,uBACvC5lC,iBAAkBiR,EAAcjR,iBAEpC,EAEA0jC,EAAcnrD,UAAU4rD,yBAA2B,SAAU3vD,GAC3D,OAAOyH,EAAO,CAAC,EAAGzH,EACpB,EAEAkvD,EAAcnrD,UAAU6rD,kBAAoB,SAAU5vD,GACpD,IAAIsJ,EAAO,CACToxC,OAAQ16C,EAAQ06C,QAclB,OAXkC,IAA9B16C,EAAQ4gB,oBACVtX,EAAKmoD,kBAAoB9vD,OAAO+vD,OAAOC,WACvCroD,EAAKsoD,mBAAqBjwD,OAAOC,UAAUiwD,cAC3CvoD,EAAKwoD,0BAA2B,EAChCxoD,EAAKyoD,gBAAkBpwD,OAAOC,UAAUowD,SACxC1oD,EAAK2oD,oBAAsBtwD,OAAO+vD,OAAOv9B,OACzC7qB,EAAK4oD,mBAAqBvwD,OAAO+vD,OAAOx9B,MACxC5qB,EAAK6oD,iBAAkB,IAAI3hC,MAAO4hC,oBAClC9oD,EAAK+oD,cAAgB,WAGhB1yD,QAAQ0B,QAAQiI,EACzB,EAEA4lD,EAAcnrD,UAAUuuD,sBAAwB,SAAUhpD,GACxD,IAAIipD,EAAepyD,KAAKgP,MAAM7F,EAAKkpD,eAE/BD,EAAa5E,QACfxuD,KAAKmxD,uBAAuBjvD,QAC1BlC,KAAKoyD,oBACHgB,EAAa91B,cACb81B,EAAa/mC,mBAIjB+mC,EAAa/mC,kBACb+mC,EAAa/mC,iBAAiB4lC,uBAE9BjyD,KAAKmxD,uBAAuBjvD,QAC1BlC,KAAKoyD,oBACHpyD,KAAK8xD,qBACLsB,EAAa/mC,mBAIjBrsB,KAAKmxD,uBAAuBhvD,OAC1B,IAAIoX,EAAe,CACjBxL,KAAMwL,EAAehL,MAAM+c,QAC3B5rB,KAAM,wBACN0W,QAASg9C,EAAa/8C,MAAMD,UAIpC,EAEA25C,EAAcnrD,UAAU0uD,iBAAmB,WACzC,IAAIp2C,EAAUmP,EAId,OAFArsB,KAAKuwD,uBAAwB,EAExBvwD,KAAK8xD,sBAMVzlC,EAAmBrsB,KAAK8xD,qBAAqBzlC,iBAE7CnP,EAAW5U,EAAO,CAAC,EAAGtI,KAAK8xD,qBAAsB,CAC/CG,uBACE5lC,GAAoBA,EAAiB4lC,uBACvCD,iBAAkB3lC,GAAoBA,EAAiB2lC,iBACvDK,oBACEhmC,GAAoBA,EAAiBgmC,sBAGlC7xD,QAAQ0B,QAAQgb,IAfd1c,QAAQ2B,OACb,IAAIoX,EAAeC,EAAO+5C,iCAehC,EAEAxD,EAAcnrD,UAAU4uD,YAAc,SAAU3yD,GAC9C,IAAI4nB,EAAsBzoB,KAAK4Z,QAAQiC,mBACnC43C,EAAYjxD,OAAOwR,SAASD,KAAK4M,MAAM,KAAK,GAC5CkxC,EAAiBhxD,EAAQgxD,eACzB5gD,EAAUsF,IACVm9C,EAAM,IAAI5xB,EAAI,CAChB7wB,QAASA,EACTC,aAAciN,IAEZw1C,EACF3zD,KAAKo5C,WACL,mEACA/gB,mBAAmBpnB,GACnB,IAqBF,OAnBAyiD,EAAI7uD,GAAGgqC,GAAiC,SAAU78B,GAChDA,EAAM,CACJyW,oBAAqBA,EACrB1O,MAAOlZ,EAAQkZ,MACfo4C,OAAQN,EAAeM,OACvByB,MAAO/B,EAAe+B,MACtBC,QACEhC,EAAegC,QACf,2BACA34C,EACA,qCACAmd,mBAAmBs7B,GACrBG,GAAIjC,EAAeiC,GACnBC,UAAWN,GAEf,IAEAC,EAAI7uD,GAAGq9B,EAAO8xB,wBAAyBnzD,EAAQozD,oBAExCP,CACT,EAEA3D,EAAcnrD,UAAUsvD,eAAiB,SAAUrzD,GACjD,IAAI4e,EACFzf,KAAKo5C,WACL,kCACAva,EAAO7+B,KAAKq5C,UACZ,oBACAx4C,EAAQszD,WASV,OARiBtyB,EAAQ,CACvBngC,IAAK+d,EACLuV,OA1ZgB,IA2ZhBD,MA1Ze,IA2ZfpsB,KAAM6a,EAAUw8B,mBAAqB,IAAMhgD,KAAKo0D,OAAOnjD,QACvDikB,MAAO,iCAIX,EAEA66B,EAAcnrD,UAAUyvD,iBAAmB,SAAUxzD,GACnDb,KAAKo0D,OAASp0D,KAAKwzD,YAAY3yD,GAC/Bb,KAAKs0D,UAAYt0D,KAAKk0D,eAAerzD,EACvC,EAEAkvD,EAAcnrD,UAAU2vD,oBAAsB,WACxCv0D,KAAKo0D,SACPp0D,KAAKo0D,OAAO9gD,WACZtT,KAAKo0D,OAAS,MAGZp0D,KAAKs0D,WAAat0D,KAAKs0D,UAAUtjC,aACnChxB,KAAKs0D,UAAUtjC,WAAWC,YAAYjxB,KAAKs0D,WAC3Ct0D,KAAKs0D,UAAY,MAGft0D,KAAKw0D,aACPpzD,SAASqT,oBAAoB,QAASzU,KAAKw0D,YAC3Cx0D,KAAKw0D,WAAa,KAEtB,EAEAzE,EAAcnrD,UAAU0O,SAAW,WAKjC,OAJA6H,EAAUgC,UAAUnd,KAAKub,eAAgB,qCAEzCvb,KAAKu0D,sBAEE/zD,QAAQ0B,SACjB,EAEApD,EAAOC,QAAUgxD,CAEjB,EAAE,CAAC,yBAAyB,IAAI,sBAAsB,IAAI,+BAA+B,IAAI,yBAAyB,IAAI,kCAAkC,IAAI,uBAAuB,IAAI,yBAAyB,IAAI,sBAAsB,IAAI,sBAAsB,IAAI,2BAA2B,GAAG,8BAA8B,GAAG,qBAAqB,GAAG,kBAAkB,GAAG,SAAW,KAAK,IAAI,CAAC,SAASjwD,EAAQhB,EAAOC,GACra,aAKA,IAAI01D,EAAoB30D,EAAQ,cAEhC,SAAS40D,EAAyB7zD,GAChC4zD,EAAkB70D,KAAKI,KAAMa,EAC/B,CAEA6zD,EAAyB9vD,UAAYzE,OAAO0F,OAC1C4uD,EAAkB7vD,UAClB,CACEkB,YAAa2uD,IAIjBC,EAAyB9vD,UAAU+vD,4BAA8B,SAC/DvsD,GAEA,IAAIwsD,EAAQxzD,SAASC,cAAc,OA0BnC,OAxBAuzD,EAAMz/B,UACJ,8kBAmBFy/B,EACGt0C,cAAc,iDACdje,YAAY+F,GAERwsD,CACT,EAEAF,EAAyB9vD,UAAUiwD,oCACjC,SAAUC,GACR,IAAIj0D,EACF4zD,EAAkB7vD,UAAUiwD,oCAAoCj1D,KAC9DI,KACA80D,GAKJ,OAFAj0D,EAAQk0D,QAAQC,UAAY,aAErBn0D,CACT,EAEF/B,EAAOC,QAAU21D,CAEjB,EAAE,CAAC,aAAa,MAAM,IAAI,CAAC,SAAS50D,EAAQhB,EAAOC,GACnD,aAEA,IAAI01D,EAAoB30D,EAAQ,cAEhC,SAASm1D,EAAuBp0D,GAC9B4zD,EAAkB70D,KAAKI,KAAMa,EAC/B,CAEAo0D,EAAuBrwD,UAAYzE,OAAO0F,OAAO4uD,EAAkB7vD,UAAW,CAC5EkB,YAAa2uD,IAGfQ,EAAuBrwD,UAAU+vD,4BAA8B,SAC7DvsD,GAEA,IAAIwsD,EAAQxzD,SAASC,cAAc,OAC/B6zD,EAAiB/tD,QACnBnH,KAAKgwD,gBACHhwD,KAAKgwD,eAAemF,mBACpBn1D,KAAKgwD,eAAemF,kBAAkBJ,SACtC/0D,KAAKgwD,eAAemF,kBAAkBJ,QAAQK,mBA8DlD,OA3DAR,EAAMz/B,UACJ,yyBAiDG+/B,IACHN,EAAMt0C,cACJ,6CACA9X,MAAMk5B,QAAU,QAEpBkzB,EACGt0C,cAAc,iDACdje,YAAY+F,GAERwsD,CACT,EAEA91D,EAAOC,QAAUk2D,CAEjB,EAAE,CAAC,aAAa,MAAM,IAAI,CAAC,SAASn1D,EAAQhB,EAAOC,GACnD,aAEA,IAAIs2D,EAAkBv1D,EAAQ,YAC1Bm1D,EAAyBn1D,EAAQ,oBACjC40D,EAA2B50D,EAAQ,sBACnCw1D,EAAwBx1D,EAAQ,mBAEpChB,EAAOC,QAAU,CACfw2D,OAAQF,EACR,iBAAkBJ,EAClB,mBAAoBP,EACpB,gBAAiBY,EAGnB,EAAE,CAAC,qBAAqB,IAAI,mBAAmB,IAAI,kBAAkB,IAAI,WAAW,MAAM,IAAI,CAAC,SAASx1D,EAAQhB,EAAOC,GACvH,aAEA,IAAI01D,EAAoB30D,EAAQ,cAC5ByZ,EAAiBzZ,EAAQ,gCACzB0Z,EAAS1Z,EAAQ,uBACjB6qC,EAAY7qC,EAAQ,0BAExB,SAASw1D,EAAsBz0D,GAC7B4zD,EAAkB70D,KAAKI,KAAMa,EAC/B,CAEAy0D,EAAsB1wD,UAAYzE,OAAO0F,OAAO4uD,EAAkB7vD,UAAW,CAC3EkB,YAAa2uD,IAGfa,EAAsBpzB,OAASyI,EAC7B,CAAC,mCACD,4BAGF2qB,EAAsB1wD,UAAUqrD,oBAAsB,SAAUj+C,GAC9DyiD,EAAkB7vD,UAAUqrD,oBAAoBrwD,KAAKI,KAAMgS,GAE3DhS,KAAK6E,GACHywD,EAAsBpzB,OAAOszB,iCAC7B,SAAUpjD,EAASqjD,GACjBzjD,EAAM,kCAAmCI,EAASqjD,EACpD,GAEJ,EAEAH,EAAsB1wD,UAAUiwD,oCAAsC,SACpEC,GAEA,IAAIj0D,EACF4zD,EAAkB7vD,UAAUiwD,oCAAoCj1D,KAC9DI,KACA80D,GAKJ,OAFAj0D,EAAQk0D,QAAQC,UAAY,SAErBn0D,CACT,EAEAy0D,EAAsB1wD,UAAU8wD,mBAAqB,WACnD11D,KAAKqF,MACHiwD,EAAsBpzB,OAAOszB,gCAC7B,CACEtsD,QAASlJ,KAAK21D,WAEhB,WAEA,GAEJ,EAEAL,EAAsB1wD,UAAUgxD,iCAAmC,WACjE51D,KAAK61D,oBAAoB,kBAAmB71D,KAAK81D,eAAen6C,KAAK3b,MACvE,EAEAs1D,EAAsB1wD,UAAUkxD,eAAiB,SAC/CC,EACA17C,EACAnY,EACAC,GAEA,IAAIX,EAAWw0D,EAEVD,GAAiB17C,GAEa,QAAxBA,EAAQu/B,aAGO,aAAtBv/B,EAAQlQ,KAAKorB,MAA6C,WAAtBlb,EAAQlQ,KAAKorB,QAFnDygC,GAAW,GAFXA,GAAW,EASTA,EACF7zD,EAAO,IAAIoX,EAAeC,EAAOy8C,4CAKnCz0D,EAAYJ,SAASC,cAAc,QACzB8zB,UAAY4gC,EAEI,aAAtB17C,EAAQlQ,KAAKorB,MACf/zB,EAAUgH,MAAMk5B,QAAU,OAC1BtgC,SAASmf,KAAKle,YAAYb,GAC1BU,KAC+B,WAAtBmY,EAAQlQ,KAAKorB,MACtBv1B,KAAKqF,MACHiwD,EAAsBpzB,OAAOszB,gCAC7B,CACEtsD,QAAS1H,IAEX,WACEU,GACF,IAGN,EAEApD,EAAOC,QAAUu2D,CAEjB,EAAE,CAAC,+BAA+B,IAAI,yBAAyB,IAAI,sBAAsB,IAAI,aAAa,MAAM,IAAI,CAAC,SAASx1D,EAAQhB,EAAOC,GAC7I,aAEA,IAAIgxD,EAAgBjwD,EAAQ,UACxB4J,EAAW5J,EAAQ,yBAEvB,SAASu1D,EAAgBx0D,GACvBkvD,EAAcnwD,KAAKI,KAAMa,EAC3B,CAEAw0D,EAAgBzwD,UAAYzE,OAAO0F,OAAOkqD,EAAcnrD,UAAW,CACjEkB,YAAauvD,IAGfA,EAAgBzwD,UAAUqrD,oBAAsB,WAEhD,EAEAoF,EAAgBzwD,UAAUsxD,kCAAoC,SAC5DC,GAcA,OAZAA,EAASzoC,eAAe+tB,MAAQ0a,EAASzoC,eAAeguB,cACxDya,EAASzoC,eAAeiuB,MAAQwa,EAASzoC,eAAekuB,gBACxDua,EAASzoC,eAAemuB,KAAOsa,EAASzoC,eAAeouB,SACvDqa,EAASzoC,eAAe+iB,MAAQ0lB,EAASzoC,eAAequB,OACxDoa,EAASzoC,eAAepR,YACtB65C,EAASzoC,eAAe0oC,yBACnBD,EAASzoC,eAAeguB,qBACxBya,EAASzoC,eAAekuB,uBACxBua,EAASzoC,eAAeouB,gBACxBqa,EAASzoC,eAAequB,cACxBoa,EAASzoC,eAAe0oC,kBAExBD,CACT,EAEAd,EAAgBzwD,UAAUyxD,cAAgB,SAAUx1D,GAClD,IAAI6R,EAAO1S,KAWX,OATAA,KAAKq0D,iBAAiB,CACpBt6C,MAAOlZ,EAAQkZ,MACf83C,eAAgBhxD,EAAQgxD,eACxBsC,WAAYtzD,EAAQszD,WACpBF,mBAAoB,SAAU9pD,GAC5BuI,EAAK4jD,oBAAoBnsD,EAAMtJ,EACjC,IAGKb,KAAKs0D,SACd,EAEAe,EAAgBzwD,UAAU0xD,oBAAsB,SAAUnsD,EAAMtJ,GAC9Db,KAAKo0D,OAAO9gD,WAEZzS,EAAQ01D,cAGR7sD,EACE,WACE1J,KAAKmzD,sBAAsBhpD,EAC7B,EAAEwR,KAAK3b,MAHT0J,EAKF,EAEA2rD,EAAgBzwD,UAAUosD,2CACxB,SAAUnwD,GACR,IAAI6wD,EAQJ,MANgC,mBAArB7wD,EAAQ21D,SACjB9E,EAAc,uBAC0B,mBAAxB7wD,EAAQ01D,cACxB7E,EAAc,0BAGTA,CACT,EAEF2D,EAAgBzwD,UAAU4rD,yBAA2B,SAAU3vD,GAC7D,IAAI41D,EAAkB1G,EAAcnrD,UAAU4rD,yBAAyB5wD,KACrEI,KACAa,GAOF,OAJA41D,EAAgBD,SAAW9sD,EAAS7I,EAAQ21D,UAC5CC,EAAgBF,YAAc7sD,EAAS7I,EAAQ01D,aAC/CE,EAAgBtC,YAAoC,IAAvBtzD,EAAQszD,WAE9BsC,CACT,EAEApB,EAAgBzwD,UAAU6rD,kBAAoB,SAAU5vD,GACtD,IAAI6R,EAAO1S,KAEX,OAAO+vD,EAAcnrD,UAAU6rD,kBAC5B7wD,KAAKI,KAAMa,GACX4G,MAAK,SAAU0C,GAOd,OANItJ,EAAQs1D,UAAYt1D,EAAQs1D,SAASzoC,iBACvCvjB,EAAKgsD,SAAWzjD,EAAKwjD,kCACnBr1D,EAAQs1D,WAILhsD,CACT,GACJ,EAEAkrD,EAAgBzwD,UAAUqsD,kBAAoB,SAC5CY,EACAhxD,GAEAA,EAAQ21D,SACN,KACAx2D,KAAKq2D,cAAc,CACjBlC,WAAYtzD,EAAQszD,WACpBtC,eAAgBA,EAAelB,OAC/B52C,MAAO83C,EAAev0B,cAAcvjB,MACpCw8C,YAAa11D,EAAQ01D,cAG3B,EAEAz3D,EAAOC,QAAUs2D,CAEjB,EAAE,CAAC,wBAAwB,IAAI,SAAS,MAAM,IAAI,CAAC,SAASv1D,EAAQhB,EAAOC,GAC3E,aAEA,IAAIgxD,EAAgBjwD,EAAQ,UACxBwI,EAASxI,EAAQ,uBAAuBwI,OACxCoB,EAAW5J,EAAQ,yBACnByZ,EAAiBzZ,EAAQ,gCACzBse,EAA0Bte,EAAQ,2CAClCqb,EAAYrb,EAAQ,0BACpB2e,EAAS3e,EAAQ,uBACjB0Z,EAAS1Z,EAAQ,uBACjB6qC,EAAY7qC,EAAQ,0BACpB0jB,EAAY1jB,EAAQ,0BACpBkG,EAAkBlG,EAAQ,+BAE1BmiC,EACFniC,EAAQ,0BAA0BmiC,uBAChCpe,EAAW/jB,EAAQ,0BAA0B+jB,SAC7C3I,EAAU,UAEVw7C,EAAqB,CACvB,WACA,YAKA,kBACA,mBACA,qBAGEC,EAAsB,CAAC,YAAa,6BAIxC,SAASlC,EAAkB5zD,GACzBkvD,EAAcnwD,KAAKI,KAAMa,GAEzBb,KAAK42D,qBAAsB,EAC3B52D,KAAK62D,gBAAkB,CACrBC,6BAA8B,IAC9BhzC,WAAYD,EAAW,IAAM3I,GAE/Blb,KAAK+2D,qBAAuBl2D,EAC5Bb,KAAKg3D,6BAA+B,IAAIhxD,EACxChG,KAAKi3D,cAAcp2D,GACnBb,KAAKk3D,gBAAkB,EACzB,CAyyBA,SAASC,EAAmBjkD,EAAQtK,EAAQsM,GAC1CtM,EAAOsM,EAAS,SAAWhC,EAAOwoC,cAClC9yC,EAAOsM,EAAS,SAAWhC,EAAO0oC,gBAClChzC,EAAOsM,EAAS,SAAWhC,EAAOkkD,MAClCxuD,EAAOsM,EAAS,QAAUhC,EAAO4oC,SACjClzC,EAAOsM,EAAS,SAAWhC,EAAO6oC,OAClCnzC,EAAOsM,EAAS,cAAgBhC,EAAOm4B,WACvCziC,EAAOsM,EAAS,eAAiBhC,EAAOkjD,iBAC1C,CA/zBApwD,EAAgBoB,iCAAkC,EAgBlDqtD,EAAkB7vD,UAAYzE,OAAO0F,OAAOkqD,EAAcnrD,UAAW,CACnEkB,YAAa2uD,IAGfA,EAAkBvyB,OAASyI,EACzB,CACE,kBACA,oBACA,WACA,YACA,kBACA,mBACA,qBAEF,uBAGF8pB,EAAkB7vD,UAAUqrD,oBAAsB,SAAUj+C,GAC1DhS,KAAK6E,GAAG4vD,EAAkBvyB,OAAOm1B,iBAAiB,SAAUltD,EAAMsrD,GAChEzjD,EAAM,kBAAmB7H,EAAMsrD,EACjC,IACAz1D,KAAK6E,GAAG4vD,EAAkBvyB,OAAOo1B,mBAAmB,WAClDtlD,EAAM,oBACR,IACAhS,KAAK6E,GAAG4vD,EAAkBvyB,OAAO,aAAa,WAC5ClwB,EAAM,6BACR,IACAhS,KAAK6E,GAAG4vD,EAAkBvyB,OAAO,cAAc,WAC7ClwB,EAAM,8BACR,IACAhS,KAAK6E,GAAG4vD,EAAkBvyB,OAAO,oBAAoB,WACnDlwB,EAAM,qCACR,IACAhS,KAAK6E,GAAG4vD,EAAkBvyB,OAAO,qBAAqB,WACpDlwB,EAAM,oCACR,IACAhS,KAAK6E,GAAG4vD,EAAkBvyB,OAAO,sBAAsB,WACrDlwB,EAAM,qCACR,GACF,EAEAyiD,EAAkB7vD,UAAUssD,cAAgB,SAAUrwD,GACpD,IAAIsJ,EAAO7B,EAAO,CAAC,EAAGzH,GAClB6R,EAAO1S,KAEX,OAAOA,KAAKu3D,mBACT9vD,MAAK,SAAU9F,GACdwI,EAAKqtD,cAAgB71D,CACvB,IACC8F,MAAK,WACJ,OAAOiL,EAAK+kD,2BAA2B52D,EAAQqrB,IACjD,IACCtlB,OAAM,WAGP,IACCa,MAAK,WACJ,OAAOiL,EAAKgJ,gBACd,IACCjU,MAAK,WAMJ,OALA0C,EAAKutD,eAAiBhlD,EAAKmkD,gBAC3B1sD,EAAKgW,yBACHzN,EAAKkH,QAAQiC,mBAAmBsE,yBAClChW,EAAK+Z,wBAA0B,iBAAmBhJ,EAE3C/Q,CACT,GACJ,EAEAsqD,EAAkB7vD,UAAUksD,sCAAwC,SAClEe,EACAhxD,GAEA,OAAOb,KAAKi3D,gBAAgBxvD,KAC1B,WACE,OAAOsoD,EAAcnrD,UAAUksD,sCAAsClxD,KACnEI,KACA6xD,EACAhxD,EAEJ,EAAE8a,KAAK3b,MAEX,EAEAy0D,EAAkB7vD,UAAU+yD,oBAAsB,SAAUC,GAC1D53D,KAAK42D,qBAAsB,EAC3B52D,KAAK63D,2BACL18C,EAAUgC,UACRnd,KAAKub,eACL,8CAAgDq8C,GAG9C53D,KAAK83D,kBACP93D,KAAK83D,iBAAiB51D,SAE1B,EAEAuyD,EAAkB7vD,UAAU6yD,2BAA6B,SAAUvrC,GACjE,IAAIxZ,EAAO1S,KACP+3D,EAAkB1mC,KAAKoF,MAE3B,OAAOj0B,OAAOw1D,SAASC,QAAQ,cAAe/rC,GAAKzkB,MAAK,SACtDywD,GAEAxlD,EAAKmkD,gBAAgBsB,sCACnB9mC,KAAKoF,MAAQshC,EACfrlD,EAAKmkD,gBAAgBuB,iCACnBF,GAAcA,EAAWG,MAC7B,GACF,EAEA5D,EAAkB7vD,UAAU0zD,wBAA0B,SACpDC,EACA7qC,GAUA,OARIA,IAEFypC,EAAmBzpC,EAAgB6qC,EAAuB,WAC1DA,EAAsBC,mBAAqB9qC,EAAe+qC,YAC1DF,EAAsBG,iBAAmBhrC,EAAeivB,UACxD4b,EAAsBI,eAAiBjrC,EAAeqvB,SAGjDwb,CACT,EAEA9D,EAAkB7vD,UAAUg0D,yBAA2B,SACrDL,GAEA,IAAI5U,EAAkB4U,EAAsB5U,gBAS5C,OAPIA,IAEFwT,EAAmBxT,EAAiB4U,EAAuB,mBAEpDA,EAAsB5U,iBAGxB4U,CACT,EAEA9D,EAAkB7vD,UAAU+vD,4BAA8B,SAAUvsD,GAClE,IAAIwsD,EAAQxzD,SAASC,cAAc,OAUnC,OARAuzD,EAAMz/B,UACJ,wFAGFy/B,EACGt0C,cAAc,wDACdje,YAAY+F,GAERwsD,CACT,EAEAH,EAAkB7vD,UAAUi0D,qBAAuB,SAAUzwD,GAC3D,IAAIwsD,EAAQ50D,KAAK20D,4BAA4BvsD,GACzC0wD,EAAMlE,EAAMt0C,cAAc,6CAC1By4C,EAAWnE,EAAMt0C,cAAc,yCAC/B5N,EAAO1S,KAEX,SAASg5D,IACPpE,EAAM5jC,WAAWC,YAAY2jC,GAC7BliD,EAAK4gD,iBAAiB95C,EAAOy/C,+BAC7B73D,SAASqT,oBAAoB,QAAS/B,EAAK8hD,YAC3C9hD,EAAK8hD,WAAa,IACpB,CAyBA,OAvBAx0D,KAAKw0D,WAAa,SAAUv1D,GACZ,WAAVA,EAAEgD,KAID2yD,EAAM5jC,YAKXgoC,GACF,EAEIF,GACFA,EAAI12D,iBAAiB,QAAS42D,GAG5BD,GACFA,EAAS32D,iBAAiB,QAAS42D,GAGrC53D,SAASgB,iBAAiB,QAASpC,KAAKw0D,YAEjCI,CACT,EAEAH,EAAkB7vD,UAAU8wD,mBAAqB,WAC/Ct0D,SAASmf,KAAKle,YAAYrC,KAAK21D,SACjC,EAEAlB,EAAkB7vD,UAAUqyD,cAAgB,SAAUnC,GACpD,IAAIpiD,EAAO1S,KACPk5D,EAAY7nC,KAAKoF,MAErB,OAAIz2B,KAAK83D,mBAIThD,EAAeA,GAAgB,CAAC,EAEhC90D,KAAK83D,iBAAmB,IAAI9xD,EAC5BhG,KAAKm5D,sBAAwB,iBAE7BzmD,EACG0mD,oBAAoBtE,GACpBrtD,MAAK,WACJ,OAAKjF,OAAOw1D,SAQLtlD,EAAK2mD,sBAAsB,CAChCvE,aAAcA,EACdwE,eAAgBJ,KAThBxmD,EAAKymD,sBAAwB,8BAEtB34D,QAAQ2B,OACb,IAAIoX,EAAeC,EAAO+/C,oCAQhC,IACC3yD,OAAM,SAAUG,GACf,IAAIsP,EAAQ+H,EAAwBrX,EAAK,CACvCgH,KAAMyL,EAAO+/C,kCAAkCxrD,KAC/CrO,KAAM8Z,EAAO+/C,kCAAkC75D,KAC/C0W,QAASoD,EAAO+/C,kCAAkCnjD,UAGpD1D,EAAKskD,6BAA6B70D,OAAOkU,GAEzC7T,OAAOojC,aAAalzB,EAAK8mD,gCACzBr+C,EAAUgC,UACRzK,EAAKkH,QACL,iDAEFlH,EAAKilD,oBACH,6BAA+BjlD,EAAKymD,sBAExC,KAzCOn5D,KAAK83D,gBA4ChB,EAEArD,EAAkB7vD,UAAUy0D,sBAAwB,SAAUhxD,GAC5D,IAAIqK,EAAO1S,KAEX,OAAOA,KAAK0b,iBACTjU,MAAK,WAIJ,OAFEiL,EAAKkH,QAAQiC,mBAAmBC,qBAAqB2N,YAGzD,IACChiB,MAAK,SAAUgyD,GACd,IAAIC,EAAMD,EAAcE,0BACpB7E,EAAezsD,EAAOysD,aACtBwE,EAAiBjxD,EAAOixD,eACxBM,EACFlnD,EAAKmiD,oCAAoCC,GAE3C4B,EAAmB10D,SAAQ,SAAU+P,GACnCW,EAAKmjD,oBAAoB9jD,GAAW,WAClCW,EAAKrN,MAAMovD,EAAkBvyB,OAAOnwB,EAAUwe,eAChD,GACF,IACA7d,EAAKmjD,oBACH,yBACAnjD,EAAKmnD,wCAGPnnD,EAAKkjD,mCAELpzD,OAAOw1D,SAAS8B,UAAUF,GAE1Bp3D,OAAOw1D,SAASlmC,MAAM,OAAQ,CAC5B4nC,IAAKA,IAGPhnD,EAAKmkD,gBAAgBkD,wCACnB1oC,KAAKoF,MAAQ6iC,EAEf5mD,EAAKmjD,oBACH,qBACAnjD,EAAKsnD,mCAET,IACCpzD,OAAM,SAAUG,GAGf,OAFA2L,EAAKymD,sBAAwB,qCAEtB34D,QAAQ2B,OAAO4E,EACxB,GACJ,EAEA0tD,EAAkB7vD,UAAUixD,oBAAsB,SAAU9jD,EAAW4F,GACrE3X,KAAKk3D,gBAAgBlyD,KAAK+M,GAC1BvP,OAAOw1D,SAASnzD,GAAGkN,EAAW4F,EAChC,EAEA88C,EAAkB7vD,UAAUgxD,iCAAmC,WAE/D,EAEAnB,EAAkB7vD,UAAUiwD,oCAAsC,SAChEC,GAEA,IAAI8E,EAAwB9E,EAAaK,mBAAqB,CAAC,EAC3D8E,EAAkBL,EAAsB7E,SAAW,CAAC,EAmBxD,OAjBK6E,EAAsBM,SAAWpF,EAAaqF,iBACjDP,EAAsBM,QAAU,CAC9BE,MAAO,YAIXR,EAAsB7E,QAAU,CAAC,EAE7BkF,EAAgB/yD,eAAe,oBACjC0yD,EAAsB7E,QAAQsF,eAC5BJ,EAAgBI,gBAEhBJ,EAAgB/yD,eAAe,uBACjC0yD,EAAsB7E,QAAQK,kBAC5B6E,EAAgB7E,mBAGbwE,CACT,EAEAnF,EAAkB7vD,UAAUw0D,oBAAsB,SAAUtE,GAC1D,IAAIpiD,EAAO1S,KAEX,OAAOA,KAAK0b,iBACTjU,MAAK,WACJ,IAAI6yD,EAAe5nD,EAAK6nD,2BAUxB,OARA7nD,EAAK8mD,+BAAiCh3D,OAAOoH,YAAW,WACtDuR,EAAUgC,UACRzK,EAAKkH,QACL,kDAEFlH,EAAKilD,oBAAoB,6BAC3B,GAAG7C,EAAanzC,SAAWsgB,GAEpBxjB,EAAO7d,WAAW,CAAEc,IAAK44D,GAClC,IACC1zD,OAAM,SAAUG,GAGf,OAFA2L,EAAKymD,sBAAwB,6BAEtB34D,QAAQ2B,OACbic,EACErX,EACAyS,EAAOghD,yCAGb,GACJ,EAEA/F,EAAkB7vD,UAAU21D,yBAA2B,WACrD,IAAIE,EAAgBz6D,KAAK4Z,QAAQiC,mBAAmBC,qBAEpD,OAAI2+C,GAA+C,eAA9BA,EAAc14C,YAC1ByB,EAAUk3C,uBAAuBpnC,WAGnC9P,EAAUk3C,uBAAuBhpC,OAC1C,EAEA+iC,EAAkB7vD,UAAUi1D,qCAAuC,WACjE,IAAInnD,EAAO1S,KAEX,OAAO,SAAUmK,GACfuI,EAAKskD,6BAA6B90D,QAAQiI,EAAKgY,WAE/C3f,OAAOojC,aAAalzB,EAAK8mD,gCACzBr+C,EAAUgC,UACRzK,EAAK6I,eACL,oDAGF7I,EAAKolD,iBAAiB51D,SACxB,CACF,EAEAuyD,EAAkB7vD,UAAU2yD,iBAAmB,WAC7C,OAAOv3D,KAAKg3D,4BACd,EAEAvC,EAAkB7vD,UAAU+1D,sBAAwB,SAClDC,EACAlB,GAEA,IAAIhnD,EAAO1S,KACP+Z,EAAQ/Z,KAAK8xD,qBAAqB/3C,MAClC0F,EACF,mBAAqB1F,EAAQ,wCAC3B8gD,EACFD,GACAA,EAA+BE,SAC/BF,EAA+BE,QAAQC,cACvCH,EAA+BE,QAAQC,aAAaC,gBAoBtD,OAlBIH,IAGF1/C,EAAUgC,UACRnd,KAAKub,eACL,6DAA+Ds/C,GA3b9B,OA8b/BA,GACF76D,KAAKqF,MAAMovD,EAAkBvyB,OAAOo1B,oBAIxCn8C,EAAUgC,UACRnd,KAAKub,eACL,mEAGKvb,KAAK0b,iBACTjU,MAAK,WACJ,OAAOiL,EAAKkH,QAAQM,QAAQ,CAC1BnP,OAAQ,OACRoP,SAAUsF,EACVtV,KAAM,CACJuvD,IAAKA,EACLz/C,mBAAoBF,IAG1B,IACCtS,MAAK,SAAUyV,GACd,IAAIogB,EAAgBpgB,EAASogB,eAAiB5qB,EAAKo/C,qBAC/CmJ,EAAoBvoD,EAAK0/C,oBAC3B90B,EACApgB,EAASmP,kBAUX,OAPA4uC,EAAkBL,+BAChBA,EACFz/C,EAAUgC,UACRzK,EAAKkH,QACL,qEAGKpZ,QAAQ0B,QAAQ+4D,EACzB,IACCr0D,OAAM,SAAUG,GACf,IAAIsP,EAAQ,IAAIkD,EAAe,CAC7BxL,KAAMyL,EAAO0hD,kCAAkCntD,KAC/CrO,KAAM8Z,EAAO0hD,kCAAkCx7D,KAC/C0W,QAASoD,EAAO0hD,kCAAkC9kD,QAClDiE,QAAS,CACPC,cAAevT,KASnB,OALAoU,EAAUgC,UACRzK,EAAKkH,QACL,mEAGKpZ,QAAQ2B,OAAOkU,EACxB,GACJ,EAEAo+C,EAAkB7vD,UAAUo1D,iCAAmC,WAC7D,IAAItnD,EAAO1S,KAaX,OAAO,SAAUmK,EAAMgxD,GACrB,IAAIjW,EAQJ,GANA/pC,EAAUgC,UACRzK,EAAK6I,eACL,6DACEpR,EAAKixD,WAAW1yC,eAGfhW,EAAKy+C,uBAQV,OAAQhnD,EAAKixD,YAEX,IAAK,UACL,IAAK,WACL,IAAK,UACH1oD,EACGioD,sBAAsBxwD,EAAMgxD,GAC5B1zD,MAAK,SAAUX,GACd4L,EAAKy+C,uBAAuBjvD,QAAQ4E,EACtC,IACCF,OAAM,SAAUG,GACf2L,EAAKy+C,uBAAuBhvD,OAAO4E,EACrC,IACF,MAEF,IAAK,QAOH,OANAoU,EAAUgC,UACRzK,EAAK6I,eACL,uDACEpR,EAAKkxD,aAGDlxD,EAAKkxD,aACX,KAAK,MACL,KAAK,MACHnW,EAAiB,IAAI3rC,EACnBC,EAAO8hD,qCAET,MACF,KAAK,MACL,KAAK,MACL,KAAK,MACHpW,EAAiB,IAAI3rC,EACnBC,EAAO+hD,wCAET,MACF,KAAK,MACL,KAAK,MACHrW,EAAiB,IAAI3rC,EACnBC,EAAOgiD,iCAET,MACF,KAAK,MACL,KAAK,MACHtW,EAAiB,IAAI3rC,EACnBC,EAAOiiD,8BAET,MACF,KAAK,MAIHtgD,EAAUgC,UACRzK,EAAK6I,eACL,6CAEF2pC,EAAiB,IAAI3rC,EACnBC,EAAOy/C,+BAET,MACF,QACE/T,EAAiB,IAAI3rC,EACnBC,EAAOkiD,4BAIbxW,EAAe7qC,QAAU,CACvBC,cAAe,CACb5a,KAAMyK,EAAKkxD,YACXvvC,YAAa3hB,EAAKwxD,mBAItBjpD,EAAKy+C,uBAAuBhvD,OAAO+iD,QAhFrCxyC,EAAKilD,oBACH,mCAAqCxtD,EAAKkxD,YAoFhD,CACF,EAEA5G,EAAkB7vD,UAAU0rD,yBAA2B,SACrDzvD,EACAuvD,GAEA,OAAKvvD,EAAQqrB,IAQN6jC,EAAcnrD,UAAU0rD,yBAAyB1wD,KACtDI,KACAa,EACAuvD,GAVO,IAAI72C,EAAe,CACxBxL,KAAMyL,EAAOo4C,mCAAmC7jD,KAChDrO,KAAM8Z,EAAOo4C,mCAAmClyD,KAChD0W,QAAS,0CASf,EAEAq+C,EAAkB7vD,UAAUosD,2CAC1B,SAAUnwD,EAASuvD,GACjB,IAAIsB,EASJ,MANsC,mBAA7B7wD,EAAQ+6D,kBACdxL,EAAeyL,oCAEhBnK,EAAc,gCAGTA,CACT,EAEF+C,EAAkB7vD,UAAU4rD,yBAA2B,SAAU3vD,GAC/D,IAAI41D,EAAkB1G,EAAcnrD,UAAU4rD,yBAAyB5wD,KACrEI,KACAa,GAEE03D,EAAwB9B,EAAgB8B,uBAAyB,CAAC,EAoBtE,OAlBAA,EAAwBv4D,KAAKs4D,wBAC3BC,EACA13D,EAAQ6sB,gBAEV6qC,EAAwBv4D,KAAK44D,yBAAyBL,GAElD13D,EAAQ+6D,mBACVnF,EAAgBmF,iBAAmBlyD,EAAS7I,EAAQ+6D,mBAElD/6D,EAAQs8C,QACVob,EAAsBpb,MAAQt8C,EAAQs8C,OAEpCt8C,EAAQi7D,oBACVvD,EAAsBuD,kBAAoBj7D,EAAQi7D,mBAGpDrF,EAAgB8B,sBAAwBA,EAEjC9B,CACT,EAEAhC,EAAkB7vD,UAAUisD,kBAAoB,SAC9CgB,EACAhxD,GAEA,IAAI6R,EAAO1S,KAEX,OAAO+vD,EAAcnrD,UAAUisD,kBAC5BjxD,KAAKI,KAAM6xD,GACXpqD,MAAK,SAAUyV,GACd,OAAO,IAAI1c,SAAQ,SAAU0B,EAASC,GAOpC,SAASszD,IACPvzD,EAAQgb,EACV,CANAA,EAAS6+C,2BAA6B50D,QACpC+V,EAASyzC,QAAUzzC,EAASyzC,OAAOwB,QAOrCz/C,EAAKy+C,uBAAuBvqD,MAAMzE,GAI9BtB,EAAQ+6D,iBACV/6D,EAAQ+6D,iBAAiB1+C,EAAUu4C,GAEnC/iD,EAAKrN,MAAMovD,EAAkBvyB,OAAOm1B,gBAAiBn6C,EAAUu4C,EAEnE,GACF,GACJ,EAEAhB,EAAkB7vD,UAAUqsD,kBAAoB,SAAUY,IAGpD7xD,KAAK42D,qBAAwB/E,EAAelB,OAAOqL,eAKvDx5D,OAAOw1D,SAASiE,SACd,MACA,CACEC,OAAQrK,EAAelB,OAAOwB,OAC9BgK,QAAStK,EAAelB,OAAOiD,OAEjC,CACEwI,aAAc,CAAEC,cAAexK,EAAelB,OAAOqL,gBAG3D,EAEAvH,EAAkB7vD,UAAU6rD,kBAAoB,SAAU5vD,GACxD,IAAI6R,EAAO1S,KAEX,OAAO+vD,EAAcnrD,UAAU6rD,kBAC5B7wD,KAAKI,KAAMa,GACX4G,MAAK,SAAU0C,GASd,GARAA,EAAKmyD,eAAiBz7D,EAAQ03D,sBAE1B13D,EAAQ07D,cACVpyD,EAAKoyD,YAAc17D,EAAQ07D,aAEzB17D,EAAQ27D,qBACVryD,EAAKqyD,mBAAqB37D,EAAQ27D,oBAEhC37D,EAAQ47D,uBAAwB,CAClC,IAAK9F,EAAoBhH,SAAS9uD,EAAQ47D,wBACxC,MAAM,IAAIljD,EAAe,CACvB7Z,KAAM8Z,EAAOkjD,yCAAyCh9D,KACtDqO,KAAMyL,EAAOkjD,yCAAyC3uD,KACtDqI,QACE,2BACAvV,EAAQ47D,uBACR,yDACA9F,EAAoBrnB,KAAK,QACzB,MAGNnlC,EAAKsyD,uBAAyB57D,EAAQ47D,sBACxC,CA2BA,OA1BI57D,EAAQ87D,eACVxyD,EAAKwyD,aAAe97D,EAAQ87D,cAE1B97D,EAAQ+7D,oBACVzyD,EAAKyyD,kBAAoB/7D,EAAQ+7D,mBAE/B/7D,EAAQg8D,qBACV1yD,EAAK0yD,mBAAqBh8D,EAAQg8D,oBAEhCh8D,EAAQi8D,iBACV3yD,EAAK2yD,eAAiBj8D,EAAQi8D,gBAE5Bj8D,EAAQqrB,MACV/hB,EAAK+hB,IAAMrrB,EAAQqrB,KAGE,MAAnBrrB,EAAQk8D,UACV5yD,EAAK4yD,QAAUl8D,EAAQk8D,SAEgB,MAArCl8D,EAAQm8D,4BACV7yD,EAAK4yD,QAAUl8D,EAAQm8D,2BAErBn8D,EAAQo8D,eACV9yD,EAAK8yD,aAAep8D,EAAQo8D,cAGvBvqD,EAAKw+C,cAAc/mD,EAC5B,GACJ,EAEAsqD,EAAkB7vD,UAAU0uD,iBAAmB,SAAU4J,GACvD,IAAIxqD,EAAO1S,KAEX,OAAO+vD,EAAcnrD,UAAU0uD,iBAC5B1zD,KAAKI,MACLyH,MAAK,SAAUyV,GASd,OARIxK,EAAKy+C,yBACP+L,EACEA,GACA,IAAI3jD,EAAeC,EAAO2jD,0CAE5BzqD,EAAKy+C,uBAAuBhvD,OAAO+6D,IAG9BhgD,CACT,GACJ,EAEAu3C,EAAkB7vD,UAAUizD,yBAA2B,WACrD73D,KAAKk3D,gBAAgBl1D,SAAQ,SAAU+P,GACrCvP,OAAOw1D,SAAS/yD,IAAI8M,EACtB,IAEA/R,KAAKk3D,gBAAkB,EACzB,EAEAzC,EAAkB7vD,UAAU0O,SAAW,WAUrC,OATI9Q,OAAOw1D,UACTh4D,KAAK63D,2BAQA9H,EAAcnrD,UAAU0O,SAAS1T,KAAKI,KAC/C,EAEAy0D,EAAkB7vD,UAAUwsD,oBAAsB,WAChD,IAAI1+C,EAAO1S,KACPk5D,EAAY7nC,KAAKoF,MAErB,OAAO/jB,EAAKY,WAAW7L,MAAK,WAC1BiL,EAAK2mD,sBAAsB,CACzBvE,aAAcpiD,EAAKqkD,qBACnBuC,eAAgBJ,GAEpB,GACF,EAYAp6D,EAAOC,QAAU01D,CAEjB,EAAE,CAAC,yBAAyB,IAAI,sBAAsB,IAAI,sBAAsB,IAAI,+BAA+B,IAAI,yBAAyB,IAAI,0CAA0C,IAAI,wBAAwB,IAAI,yBAAyB,IAAI,yBAAyB,IAAI,sBAAsB,IAAI,SAAS,IAAI,8BAA8B,KAAK,IAAI,CAAC,SAAS30D,EAAQhB,EAAOC,GAC/X,aAEA,IAAIwL,EAAczK,EAAQ,2BACtB2Z,EAAU3Z,EAAQ,qBAClB4Z,EAAwB5Z,EAAQ,sCAChC4E,EAAe5E,EAAQ,4BACvBs9D,EAAat9D,EAAQ,gBAqXzB,SAASu9D,EAAax8D,GACpB,IAAI6R,EAAO1S,KACPs9D,EAAYF,EAAWv8D,EAAQm0D,WAEnCtwD,EAAa9E,KAAKI,MAElBA,KAAKu9D,WAAa,IAAID,EAAUz8D,GAChCb,KAAKu9D,WAAWtN,qBAAoB,WAClCv9C,EAAKrN,MAAMI,MAAMiN,EAAMlN,UACzB,GACF,CAEAd,EAAaiB,YAAY03D,GA6LzBA,EAAaz4D,UAAUurD,WAAa,SAAUtvD,GAC5C,IAAIuvD,EAQJ,OANIpwD,KAAK0F,YAAY,qBACnB0qD,EAAiB,CACfyL,mCAAmC,IAIhC77D,KAAKu9D,WAAWpN,WAAWtvD,EAASuvD,EAC7C,EAyBAiN,EAAaz4D,UAAUksD,sCAAwC,SAC7De,GAMA,MAJ8B,iBAAnBA,IACTA,EAAiB7wD,KAAKgP,MAAM6hD,IAGvB7xD,KAAKu9D,WAAWzM,sCAAsCe,EAC/D,EA0BAwL,EAAaz4D,UAAUssD,cAAgB,SAAUrwD,GAC/C,OAAOb,KAAKu9D,WAAWrM,cAAcrwD,GAAS4G,MAAK,SAAU0C,GAC3D,OAAOnJ,KAAKC,UAAUkJ,EACxB,GACF,EAmFAkzD,EAAaz4D,UAAU0uD,iBAAmB,WACxC,OAAOtzD,KAAKu9D,WAAWjK,kBACzB,EAcA+J,EAAaz4D,UAAU0O,SAAW,WAChC,IAAIszB,EAAcntB,EAAQ4jD,EAAaz4D,WAAWgO,OAChD6G,EAAQ/U,EAAaE,YAKvB,OAFA8U,EAAsB1Z,KAAM4mC,GAErB5mC,KAAKu9D,WAAWjqD,UACzB,EAEAxU,EAAOC,QAAUwL,EAAYE,cAAc4yD,EAE3C,EAAE,CAAC,qCAAqC,IAAI,oBAAoB,IAAI,eAAe,IAAI,2BAA2B,GAAG,0BAA0B,KAAK,IAAI,CAAC,SAASv9D,EAAQhB,EAAOC,GACjL,aAGA,IAAIs+D,EAAev9D,EAAQ,6BACvBk3C,EAAUl3C,EAAQ,mBAAmBk3C,QACrCr8B,EAA6B7a,EAAQ,uCACrC8a,EAAuB9a,EAAQ,iCAC/B+a,EAAkB/a,EAAQ,4BAC1ByZ,EAAiBzZ,EAAQ,0BACzBqb,EAAYrb,EAAQ,oBACpB0Z,EAAS1Z,EAAQ,mBAEjByK,EAAczK,EAAQ,2BAwN1BhB,EAAOC,QAAU,CACf8G,OAAQ0E,GAlHV,SAAgB1J,GACd,IAAI8H,EAAO,YACPqsD,EAgFN,SAAsBn0D,GACpB,IAAIuhB,EAAUpT,OAAOnO,EAAQuhB,SAAW,IAExC,IAAKA,GAAuB,MAAZA,EACd,MAAM,IAAI7I,EAAe,CACvB7Z,KAAM8Z,EAAOgkD,4BAA4B99D,KACzCqO,KAAMyL,EAAOgkD,4BAA4BzvD,KACzCqI,QAASoD,EAAOgkD,4BAA4BpnD,UAIhD,OAAQgM,GACN,IAAK,IACL,IAAK,mBACH,MAAO,iBACT,IAAK,qBACH,MAAO,mBACT,IAAK,kBACH,MAAO,gBACT,QACE,MAAM,IAAI7I,EAAe,CACvB7Z,KAAM8Z,EAAOikD,6BAA6B/9D,KAC1CqO,KAAMyL,EAAOikD,6BAA6B1vD,KAC1CqI,QACE,YACAvV,EAAQuhB,QACR,qHAGV,CA7GkBs7C,CAAa78D,GAE7B,OAAO8Z,EACJG,OAAO,CACNnS,KAAMA,EACNkR,OAAQhZ,EAAQgZ,OAChBkB,cAAela,EAAQka,gBAExBtT,MAAK,WACJ,IAAIwT,EAAYJ,EAAgBhV,OAAOhF,EAAQka,eAC3CS,EAAgBZ,EACjB/U,OAAO,CACNkV,cAAela,EAAQka,cACvBlB,OAAQhZ,EAAQgZ,OAChBmB,MAAOna,EAAQma,MACfC,UAAWA,EACXtS,KAAMA,IAEPlB,MAAK,SAAUoS,GACd,IAAIxD,EACAhO,EAASwR,EAAOgC,mBAChB8hD,EAAWt1D,EAAOyT,qBAgCtB,OA9BAjb,EAAQgZ,OAASA,EAEZ8jD,EAASn0C,sBACZnT,EAAQmD,EAAOokD,qBAGgB,qBAA7Bv1D,EAAOoc,oBACTpO,EAAQmD,EAAOqkD,sCAGuB,eAAzBF,EAAS57C,cAEHi1B,MACnB3gC,EAAQmD,EAAOskD,wBAID,WAAd9I,GAEE2I,EAASl0C,cACTk0C,EAASl0C,aAAakwC,4BAGxBx+C,EAAUgC,UACRtc,EAAQgZ,OACR,0EAEFxD,EAAQmD,EAAOukD,4BAGb1nD,EACK7V,QAAQ2B,OAAO,IAAIoX,EAAelD,KAG3C8E,EAAUgC,UAAUtc,EAAQgZ,OAAQ,8BAE7BA,EACT,IACE8Y,EAAW,IAAI0qC,EAAa,CAC9BxjD,OAAQhZ,EAAQgZ,OAChBoB,UAAWA,EACXO,cAAeA,EACf2+C,eAAgBt5D,EAAQs5D,eACxBhF,kBAAmBt0D,EAAQs0D,kBAC3BH,UAAWA,IAGb,OAAIn0D,EAAQgZ,OACH2B,EAAc/T,MAAK,WACxB,OAAOkrB,CACT,IAGKA,CACT,GACJ,IAuCEzX,QA/NY,UAkOd,EAAE,CAAC,mBAAmB,IAAI,sCAAsC,IAAI,yBAAyB,IAAI,2BAA2B,IAAI,gCAAgC,IAAI,kBAAkB,IAAI,4BAA4B,IAAI,kBAAkB,IAAI,0BAA0B,KAAK,IAAI,CAAC,SAASpb,EAAQhB,EAAOC,GAC5S,aAEAD,EAAOC,QAAU,CACfihD,mBAAoB,+BACpB0a,uBAAwB,CACtBpnC,WAAY,4DACZ5B,QAAS,iEAIb,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS5xB,EAAQhB,EAAOC,GACnC,aAiDA,IAAIwa,EAAiBzZ,EAAQ,6BAE7BhB,EAAOC,QAAU,CACf6+D,oBAAqB,CACnB7vD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,sBACN0W,QAAS,+CAEXynD,qCAAsC,CACpC9vD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,uCACN0W,QAAS,+DAEX0nD,uBAAwB,CACtB/vD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,yBACN0W,QAAS,6BAEX2nD,2BAA4B,CAC1BhwD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,6BACN0W,QACE,yIAEJqnD,6BAA8B,CAC5B1vD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,gCAER65D,kCAAmC,CACjCxrD,KAAMwL,EAAehL,MAAM+c,QAC3B5rB,KAAM,oCACN0W,QAAS,mEAEXokD,wCAAyC,CACvCzsD,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,0CACN0W,QAAS,uDAEXklD,oCAAqC,CACnCvtD,KAAMwL,EAAehL,MAAM+c,QAC3B5rB,KAAM,sCACN0W,QAAS,kDAEXmlD,uCAAwC,CACtCxtD,KAAMwL,EAAehL,MAAM+c,QAC3B5rB,KAAM,yCACN0W,QAAS,4CAEXolD,gCAAiC,CAC/BztD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,kCACN0W,QACE,+EAEJqlD,6BAA8B,CAC5B1tD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,+BACN0W,QACE,6EAEJslD,2BAA4B,CAC1B3tD,KAAMwL,EAAehL,MAAM+c,QAC3B5rB,KAAM,6BACN0W,QACE,qFAEJ6iD,8BAA+B,CAC7BlrD,KAAMwL,EAAehL,MAAMw9B,SAC3BrsC,KAAM,gCACN0W,QAAS,qBAEX+mD,yCAA0C,CACxCpvD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,2CACN0W,QAAS,+CAEXu7C,mCAAoC,CAClC5jD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,qCACN0W,QACE,wEAEJw7C,mCAAoC,CAClC7jD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,sCAERw7D,kCAAmC,CACjCntD,KAAMwL,EAAehL,MAAM+c,QAC3B5rB,KAAM,oCACN0W,QAAS,6DAEXm7C,8CAA+C,CAC7CxjD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,gDACN0W,QACE,qGAEJo7C,gCAAiC,CAC/BzjD,KAAMwL,EAAehL,MAAMw9B,SAC3BrsC,KAAM,kCACN0W,QACE,6FAEJq7C,qBAAsB,CACpB1jD,KAAMwL,EAAehL,MAAM+c,QAC3B5rB,KAAM,uBACN0W,QAAS,oDAEX6/C,wCAAyC,CACvCloD,KAAMwL,EAAehL,MAAM+c,QAC3B5rB,KAAM,0CACN0W,QACE,sFAEJm9C,gCAAiC,CAC/BxlD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,kCACN0W,QAAS,sCAEX4nD,2CAA4C,CAC1CjwD,KAAMwL,EAAehL,MAAMgV,SAC3B7jB,KAAM,6CACN0W,QAAS,2CAEX85C,yCAA0C,CACxCniD,KAAMwL,EAAehL,MAAMgV,SAC3B7jB,KAAM,2CACN0W,QAAS,8CAEXsmD,yCAA0C,CACxC3uD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,2CACN0W,QAAS,wCAEXonD,4BAA6B,CAC3BzvD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,8BACN0W,QACE,qLAIN,EAAE,CAAC,4BAA4B,MAAM,IAAI,CAAC,SAAStW,EAAQhB,EAAOC,GAClE,aAEA,IAAI4rC,EAAY7qC,EAAQ,uBAExBhB,EAAOC,QAAU4rC,EAAU,CAAC,2BAA4B,gBAExD,EAAE,CAAC,sBAAsB,MAAM,IAAI,CAAC,SAAS7qC,EAAQhB,EAAOC,GAC5D,aAMA,IAAI4jD,EAAW7iD,EAAQ,qBACnB6a,EAA6B7a,EAAQ,uCACrCyZ,EAAiBzZ,EAAQ,0BACzB8a,EAAuB9a,EAAQ,iCAC/B+a,EAAkB/a,EAAQ,4BAC1Bqb,EAAYrb,EAAQ,oBACpB0Z,EAAS1Z,EAAQ,mBAEjByK,EAAczK,EAAQ,2BAuD1BhB,EAAOC,QAAU,CACf8G,OAAQ0E,GArCV,SAAgB1J,GACd,IAAI8H,EAAO,WAEX,OAAOgS,EACJG,OAAO,CACNnS,KAAMA,EACNkR,OAAQhZ,EAAQgZ,OAChBkB,cAAela,EAAQka,gBAExBtT,MAAK,WACJ,OAAOmT,EAAqB/U,OAAO,CACjCkV,cAAela,EAAQka,cACvBlB,OAAQhZ,EAAQgZ,OAChBmB,MAAOna,EAAQma,MACfC,UAAWJ,EAAgBhV,OAAOhF,EAAQka,eAC1CpS,KAAMA,GAEV,IACClB,MAAK,SAAUoS,GACd,IAAIxR,EAASwR,EAAOgC,mBAIpB,OAFAhb,EAAQgZ,OAASA,EAGdxR,EAAOyT,qBAAqBuO,WACoB,IAAjDhiB,EAAOyT,qBAAqBuO,SAASV,SAKvCxO,EAAUgC,UAAUtc,EAAQgZ,OAAQ,wBAE7B,IAAI8oC,EAAS9hD,IALXL,QAAQ2B,OAAO,IAAIoX,EAAeC,EAAOykD,sBAMpD,GACJ,IAQE/iD,QA9DY,UAiEd,EAAE,CAAC,mBAAmB,IAAI,sCAAsC,IAAI,yBAAyB,IAAI,2BAA2B,IAAI,gCAAgC,IAAI,kBAAkB,IAAI,oBAAoB,IAAI,0BAA0B,KAAK,IAAI,CAAC,SAASpb,EAAQhB,EAAOC,GAC9Q,aAEA,IAAI4rC,EAAY7qC,EAAQ,uBAExBhB,EAAOC,QAAU,CACfmjC,OAAQyI,EACN,CACE,mCACA,uBACA,0BAEF,cAEFuzB,yBAA0B,gCAG5B,EAAE,CAAC,sBAAsB,MAAM,IAAI,CAAC,SAASp+D,EAAQhB,EAAOC,GAC5D,aAuCA,IAAIwa,EAAiBzZ,EAAQ,6BAE7BhB,EAAOC,QAAU,CACfk/D,qBAAsB,CACpBlwD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,uBACN0W,QAAS,8CAEX+nD,wCAAyC,CACvCpwD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,0CACN0W,QACE,uFAEJgoD,yCAA0C,CACxCrwD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,2CACN0W,QAAS,8CAEXioD,iDAAkD,CAChDtwD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,mDACN0W,QACE,qGAEJkoD,0CAA2C,CACzCvwD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,4CACN0W,QACE,sEAEJmoD,oCAAqC,CACnCxwD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,sCACN0W,QAAS,yDAEXooD,2CAA4C,CAC1CzwD,KAAMwL,EAAehL,MAAMw9B,SAC3BrsC,KAAM,6CACN0W,QAAS,8CAEXqoD,kCAAmC,CACjC1wD,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,oCACN0W,QAAS,mCAEXsoD,0CAA2C,CACzC3wD,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,4CACN0W,QAAS,sCAEXuoD,oCAAqC,CACnC5wD,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,sCACN0W,QAAS,0CAEXwoD,mCAAoC,CAClC7wD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,qCACN0W,QAAS,2DAEXyoD,6BAA8B,CAC5B9wD,KAAMwL,EAAehL,MAAMw9B,SAC3BrsC,KAAM,+BACN0W,QAAS,+CAIb,EAAE,CAAC,4BAA4B,MAAM,IAAI,CAAC,SAAStW,EAAQhB,EAAOC,GAClE,aAEA,IAAIoc,EAAYrb,EAAQ,uBACpByZ,EAAiBzZ,EAAQ,6BACzBgiC,EAAMhiC,EAAQ,YACd0jB,EAAY1jB,EAAQ,eACpBqe,EAAmBre,EAAQ,gCAC3B++B,EAAS/+B,EAAQ,qBACjB4Z,EAAwB5Z,EAAQ,sCAChC0Z,EAAS1Z,EAAQ,YACjBoiC,EAAS1e,EAAU0e,OACnBL,EAAU/hC,EAAQ,sBAClB2Z,EAAU3Z,EAAQ,qBAElByW,EAAOzW,EAAQ,mBACfyK,EAAczK,EAAQ,2BACtB+uC,EACF/uC,EAAQ,uBAAuB+uC,gCAQjC,SAAS8T,EAAS9hD,GAChBb,KAAKswC,SAAWzvC,CAClB,CAqBA8hD,EAAS/9C,UAAUk6D,kBAAoB,SAAUj+D,GAC/C,IAAI6R,EAAO1S,KACP6Z,EAAS7Z,KAAKswC,SAASz2B,OACvB1M,EAAatM,EAAQisC,KAAOjsC,EAAQisC,KAAK9e,OAAS,KAClDif,EAAepsC,EAAQosC,aAE3B,OAAI9/B,GAAc8/B,EACTzsC,QAAQ2B,OACb,IAAIoX,EAAeC,EAAO8kD,4CAEnBnxD,EACF0M,EACJK,QAAQ,CACPnP,OAAQ,MACRoP,SAAU,4CACVhQ,KAAM,CACJ6P,MAAO,CAAE9G,OAAQ,YACjByU,WAAY,CACVqG,OAAQ7gB,MAIb1F,MAAK,SAAUyV,GAGd,OAFA/B,EAAUgC,UAAUtD,EAAQ,kCAErBqD,CACT,IACCtW,OAAM,SAAUG,GACf,IAAI8R,EAAS9R,EAAIsT,SAAWtT,EAAIsT,QAAQ4I,WAIxC,OAFA9H,EAAUgC,UAAUtD,EAAQ,gCAEb,MAAXhB,EACKrY,QAAQ2B,OAAO4E,GAGjBvG,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAOklD,0CAA0C3wD,KACvDrO,KAAM8Z,EAAOklD,0CAA0Ch/D,KACvD0W,QAASoD,EAAOklD,0CAA0CtoD,QAC1DiE,QAAS,CACPC,cAAevT,KAIvB,IACOkmC,EACJA,EAAaxJ,KAMX/wB,EAAKqsD,0BAA0Bt3D,MAAK,WACzC,OAAO,IAAIjH,SAAQ,SAAU0B,EAASC,GACpCuQ,EAAK+wB,KAAK3xB,KACRowB,EAAO88B,iCACP,CAAE/xB,aAAcA,IAChB,SAAU/vB,GACJA,EAASnW,IACX5E,EAAO,IAAIoX,EAAe2D,EAASnW,MAKrC7E,EAAQgb,EAAS9K,QACnB,GAEJ,GACF,IArBS5R,QAAQ2B,OACb,IAAIoX,EAAeC,EAAO2kD,0CAuBzB39D,QAAQ2B,OACb,IAAIoX,EAAeC,EAAO6kD,kDAE9B,EA0BA1b,EAAS/9C,UAAUq6D,OAAS,SAAUp+D,GACpC,IAKIsJ,EALAuI,EAAO1S,KACP6Z,EAAS7Z,KAAKswC,SAASz2B,OACvBizB,EAAOjsC,EAAQisC,KACfoyB,EAASr+D,EAAQq+D,OACjBjyB,EAAepsC,EAAQosC,aAG3B,IAAKiyB,EACH,OAAO1+D,QAAQ2B,OACb,IAAIoX,EAAeC,EAAOolD,qCAI9B,GAAI3xB,EACF,OAAKA,EAAaxJ,KAIPqJ,EACFtsC,QAAQ2B,OACb,IAAIoX,EAAeC,EAAO8kD,4CAIvB,IAAI99D,SAAQ,SAAU0B,EAASC,GACpCuQ,EAAKqsD,0BAA0Bt3D,MAAK,WAClCiL,EAAK+wB,KAAK3xB,KACRowB,EAAOi9B,qBACP,CAAElyB,aAAcA,EAAciyB,OAAQA,IACtC,SAAUhiD,GACJA,EAASnW,IACX5E,EAAO,IAAIoX,EAAe2D,EAASnW,MAKrC7E,EAAQgb,EAAS9K,QACnB,GAEJ,GACF,IAzBS5R,QAAQ2B,OACb,IAAIoX,EAAeC,EAAO2kD,0CAyBzB,GAAIrxB,GAAQA,EAAK9e,OAAQ,CAU9B,GATA7jB,EAAO,CACL6P,MAAO,CAAE9G,OAAQ,YACjBksD,mBAAoB,CAClBpxC,OAAQ8e,EAAK9e,OACbqxC,kBAAmBH,EAAO5iD,YAC1BgjD,aAAcJ,EAAOlxC,SAIrB8e,EAAKlf,eACPzjB,EAAKi1D,mBAAmBxxC,eAAiBkf,EAAKlf,oBACzC,GAAIkf,EAAK9gB,iBAAmB8gB,EAAK7gB,eAAgB,CACtD,IAAI6gB,EAAK9gB,kBAAmB8gB,EAAK7gB,eAI/B,OAAOzrB,QAAQ2B,OACb,IAAIoX,EAAeC,EAAO+kD,sCAJ5Bp0D,EAAKi1D,mBAAmBnzC,eAAiB6gB,EAAK7gB,eAC9C9hB,EAAKi1D,mBAAmBpzC,gBAAkB8gB,EAAK9gB,eAMnD,CAEA,OAAOnS,EACJK,QAAQ,CACPnP,OAAQ,OACRoP,SAAU,wBACVhQ,KAAMA,IAEP1C,MAAK,SAAUyV,GAGd,OAFA/B,EAAUgC,UAAUtD,EAAQ,iCAErB,CACL0lD,aAAcriD,EAASsiD,qBACvBC,gBAAiBviD,EAASuiD,gBAE9B,IACC74D,OAAM,SAAUG,GACf,IAAIsP,EACAwC,EAAS9R,EAAIsT,SAAWtT,EAAIsT,QAAQ4I,WAgBxC,OAde,MAAXpK,EACFxC,EAAQtP,EACC8R,EAAS,KAClBxC,EAAQ,IAAIkD,EACVC,EAAOglD,6CAEHnkD,QAAU,CAAEC,cAAevT,IAEjCsP,EAAQ,IAAIkD,EAAeC,EAAOilD,oCAC5BpkD,QAAU,CAAEC,cAAevT,GAGnCoU,EAAUgC,UAAUtD,EAAQ,8BAErBrZ,QAAQ2B,OAAOkU,EACxB,GACJ,CAEA,OAAO7V,QAAQ2B,OACb,IAAIoX,EAAeC,EAAO6kD,kDAE9B,EA6BA1b,EAAS/9C,UAAU2Y,SAAW,SAAU1c,GACtC,IAAIsJ,EACAuI,EAAO1S,KACP6Z,EAAS7Z,KAAKswC,SAASz2B,OACvBizB,EAAOjsC,EAAQisC,KACfG,EAAepsC,EAAQosC,aAE3B,OAAIH,GAAQG,EACHzsC,QAAQ2B,OACb,IAAIoX,EAAeC,EAAO8kD,4CAEnBxxB,GACT3iC,EAAO,CACL6P,MAAO,CAAE9G,OAAQ,YACjByU,WAAY,CACVqG,OAAQntB,EAAQisC,KAAK9e,OACrBntB,QAAS,CACPu+D,mBAAoB,CAClBz9D,GAAId,EAAQ0+D,iBAMhB1+D,EAAQ6+D,UACVv1D,EAAKwd,WAAW9mB,QAAQu+D,mBAAmBM,QAAU7+D,EAAQ6+D,SAG3D5yB,EAAKlf,eACPzjB,EAAKwd,WAAWiG,eAAiBkf,EAAKlf,eAC7Bkf,EAAK9gB,iBAAmB8gB,EAAK7gB,iBACtC9hB,EAAKwd,WAAWsE,eAAiB6gB,EAAK7gB,eACtC9hB,EAAKwd,WAAWqE,gBAAkB8gB,EAAK9gB,iBAGrCnrB,EAAQisC,KAAK7e,MACf9jB,EAAKwd,WAAWsG,IAAMptB,EAAQisC,KAAK7e,KAG9BpU,EACJK,QAAQ,CACPnP,OAAQ,OACRoP,SAAU,+BACVhQ,KAAMA,IAEP1C,MAAK,SAAUyV,GACd,IAAIyiD,EAAgBziD,EAASsE,YAAY,GAOzC,cALOm+C,EAAc9zC,gBACd8zC,EAActzC,iBAErBlR,EAAUgC,UAAUtD,EAAQ,2BAErB8lD,CACT,IACC/4D,OAAM,SAAUG,GACf,IAAIsP,EACAwC,EAAS9R,EAAIsT,SAAWtT,EAAIsT,QAAQ4I,WAgBxC,OAdA9H,EAAUgC,UAAUtD,EAAQ,yBAEb,MAAXhB,EACFxC,EAAQtP,EACC8R,EAAS,KAClBxC,EAAQ,IAAIkD,EAAeC,EAAOqlD,+BAC5BxkD,QAAU,CAAEC,cAAevT,IAEjCsP,EAAQ,IAAIkD,EACVC,EAAOmlD,sCAEHtkD,QAAU,CAAEC,cAAevT,GAG5BvG,QAAQ2B,OAAOkU,EACxB,KACO42B,EACJA,EAAaxJ,KAMX,IAAIjjC,SAAQ,SAAU0B,EAASC,GACpCuQ,EAAKqsD,0BAA0Bt3D,MAAK,WAClCiL,EAAK+wB,KAAK3xB,KACRowB,EAAO09B,uBACP/+D,GACA,SAAUqc,GACJA,EAASnW,IACX5E,EAAO,IAAIoX,EAAe2D,EAASnW,MAKrC7E,EAAQgb,EAAS9K,QACnB,GAEJ,GACF,IArBS5R,QAAQ2B,OACb,IAAIoX,EAAeC,EAAO2kD,0CAuBzB39D,QAAQ2B,OACb,IAAIoX,EAAeC,EAAO6kD,kDAE9B,EAUA1b,EAAS/9C,UAAU0O,SAAW,WAQ5B,OAPItT,KAAKyjC,OACPzjC,KAAK6/D,mBAAmB7uC,WAAWC,YAAYjxB,KAAK6/D,oBACpD7/D,KAAKyjC,KAAKnwB,YAGZoG,EAAsB1Z,KAAMyZ,EAAQkpC,EAAS/9C,YAEtCpE,QAAQ0B,SACjB,EAEAygD,EAAS/9C,UAAUm6D,wBAA0B,WAC3C,IAAI9jD,EAAW8E,EACX+e,EAAcvoB,IACd7D,EAAO1S,KAEX,OAAIA,KAAK8/D,iCAIT9/D,KAAK8/D,+BAAiC,IAAIt/D,SAAQ,SAAU0B,GAC1D+Y,EACEvI,EAAK49B,SAASz2B,OAAOgC,mBAAmBC,qBAAqBb,UAC/D8E,EAAUrN,EAAK49B,SAASz2B,OAAOgC,mBAAmBkE,QAElDrN,EAAK+wB,KAAO,IAAI3B,EAAI,CAClB7wB,QAAS6tB,EACT5tB,aAAciN,IAEhBzL,EAAKmtD,mBAAqBh+B,EAAQ,CAChCl5B,KAAM6a,EAAU06C,yBAA2B,IAAMp/B,EACjDp9B,IACEuZ,mDAIA4jB,EAAO9e,GACP,QACFiV,OAAQ,EACRD,MAAO,IAGTriB,EAAK+wB,KAAK5+B,GAAGgqC,GAAiC,SAAU78B,GACtDA,EAAMU,EAAK49B,SAASz2B,QAEpB3X,GACF,IAEAd,SAASmf,KAAKle,YAAYqQ,EAAKmtD,mBACjC,KAhCS7/D,KAAK8/D,8BAmChB,EAEAhhE,EAAOC,QAAUwL,EAAYE,cAAck4C,EAE3C,EAAE,CAAC,sBAAsB,IAAI,4BAA4B,IAAI,sBAAsB,IAAI,qCAAqC,IAAI,+BAA+B,IAAI,oBAAoB,IAAI,oBAAoB,IAAI,cAAc,IAAI,WAAW,IAAI,qBAAqB,GAAG,kBAAkB,GAAG,0BAA0B,GAAG,SAAW,KAAK,IAAI,CAAC,SAAS7iD,EAAQhB,EAAOC,GAC3W,aAEAD,EAAOC,QAAU,CACfghE,cAAe,0DAGjB,EAAE,CAAC,GAAG,IAAI,CAAC,SAASjgE,EAAQhB,EAAOC,GACnC,aAqBA,IAAIwa,EAAiBzZ,EAAQ,0BAE7BhB,EAAOC,QAAU,CACfihE,gCAAiC,CAC/BjyD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,mCAERugE,2CAA4C,CAC1ClyD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,8CAERwgE,kCAAmC,CACjCnyD,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,oCACN0W,QAAS,mCAEX+pD,6BAA8B,CAC5BpyD,KAAMwL,EAAehL,MAAMw9B,SAC3BrsC,KAAM,+BACN0W,QAAS,uDAEXgqD,qCAAsC,CACpCryD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,uCACN0W,QAAS,sDAEXiqD,2CAA4C,CAC1CtyD,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,6CACN0W,QAAS,0CAEXkqD,oCAAqC,CACnCvyD,KAAMwL,EAAehL,MAAMw9B,SAC3BrsC,KAAM,sCACN0W,QAAS,0CAEXmqD,4BAA6B,CAC3BxyD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,8BACN0W,QAAS,mCAEXoqD,uCAAwC,CACtCzyD,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,yCACN0W,QAAS,8BAIb,EAAE,CAAC,yBAAyB,MAAM,IAAI,CAAC,SAAStW,EAAQhB,EAAOC,GAC/D,aAMA,IAAI4b,EAA6B7a,EAAQ,uCACrCyZ,EAAiBzZ,EAAQ,0BACzB8a,EAAuB9a,EAAQ,iCAC/B+a,EAAkB/a,EAAQ,4BAC1B0Z,EAAS1Z,EAAQ,YACjB2gE,EAAgB3gE,EAAQ,qBAExByK,EAAczK,EAAQ,2BA8C1BhB,EAAOC,QAAU,CACf8G,OAAQ0E,GApCV,SAAgB1J,GACd,IAAI8H,EAAO,kBAEX,OAAOgS,EACJG,OAAO,CACNnS,KAAMA,EACNkR,OAAQhZ,EAAQgZ,OAChBkB,cAAela,EAAQka,gBAExBtT,MAAK,WACJ,OAAOmT,EAAqB/U,OAAO,CACjCkV,cAAela,EAAQka,cACvBlB,OAAQhZ,EAAQgZ,OAChBmB,MAAOna,EAAQma,MACfC,UAAWJ,EAAgBhV,OAAOhF,EAAQka,eAC1CpS,KAAMA,GAEV,IACClB,MAAK,SAAUoS,GAOd,OAJAhZ,EAAQgZ,OAASA,EAGfhZ,EAAQgZ,OAAOgC,mBAAmBC,qBAAqB8O,cAOlD,IAAI61C,EAAc5/D,GALhBL,QAAQ2B,OACb,IAAIoX,EAAeC,EAAO+mD,6BAKhC,GACJ,IAQErlD,QArDY,UAwDd,EAAE,CAAC,sCAAsC,IAAI,yBAAyB,IAAI,2BAA2B,IAAI,gCAAgC,IAAI,WAAW,IAAI,oBAAoB,IAAI,0BAA0B,KAAK,IAAI,CAAC,SAASpb,EAAQhB,EAAOC,GAChP,aAEA,IAAIwa,EAAiBzZ,EAAQ,0BACzB0jB,EAAY1jB,EAAQ,eACpB0Z,EAAS1Z,EAAQ,YACjB4kB,EAAe5kB,EAAQ,iBACvBqb,EAAYrb,EAAQ,oBACpBiK,EAAOjK,EAAQ,eACf4Z,EAAwB5Z,EAAQ,mCAChC2Z,EAAU3Z,EAAQ,kBAClByK,EAAczK,EAAQ,2BAEtB4gE,EAAiCC,EAAsB,iBACvDC,EAA+BD,EAAsB,eAczD,SAASF,EAAc5/D,GACrBb,KAAK4Z,QAAU/Y,EAAQgZ,OAEvB7Z,KAAK6gE,wBAAyB,EAE9B1lD,EAAUgC,UAAUnd,KAAK4Z,QAAS,4BACpC,CAsVA,SAASknD,EAAU/5D,GACjB,IAAIsP,EACAwC,EAAS9R,EAAIsT,SAAWtT,EAAIsT,QAAQ4I,WAaxC,OAVE5M,EAAQ,IAAIkD,EADC,MAAXV,EACyB6L,EAAaq8C,gCAC/BloD,EAAS,IACSW,EAAO8mD,oCAGhC9mD,EAAO6mD,6CAGLhmD,QAAU,CAAEC,cAAevT,GAE1BsP,CACT,CAEA,SAAS2qD,EAAkC9jD,EAAUnP,GACnD,IAAI5D,EAAO+S,EAAS/S,KAAK4D,GAAMuvB,cAE3BxR,EAAc,+BADN3hB,EAAKkQ,QAAQsR,MAGzB,MAAO,CACL5R,MAAO5P,EAAKxI,GACZ0Y,QAAS,CAAC,EACVyR,YAAaA,EACb/d,KAAM,kBAEV,CAiCA,SAASkzD,EAAiB9/D,EAAQ4D,GAChC,SAASm8D,IACP,IAAI96C,EAAapmB,KAAKomB,WAEjBA,GAA6B,WAAfA,GAA0C,aAAfA,IAa9CjlB,EAAOsT,oBAAoB,QAAS0sD,GACpChgE,EAAOsT,oBAAoB,OAAQysD,GACnC//D,EAAOsT,oBAAoB,mBAAoBysD,GAb7Cn8D,EAAS,KAAMvC,OAAO4+D,OAE1B,CAEA,SAASD,IACPhgE,EAAO6vB,WAAWC,YAAY9vB,GAE9B4D,EAAS,IAAIwU,EAAeC,EAAO0mD,mCACrC,CAQA/+D,EAAOiB,iBAAiB,QAAS++D,GACjChgE,EAAOiB,iBAAiB,OAAQ8+D,GAChC//D,EAAOiB,iBAAiB,mBAAoB8+D,EAC9C,CAEA,SAASG,EAA+BnmB,GACtC,MAAO,CACLQ,cAAeR,EAAQQ,cACvBE,gBAAiBV,EAAQU,gBACzBC,KAAMX,EAAQY,SACdrL,MAAOyK,EAAQa,OACfulB,QAASpmB,EAAQ7P,WAErB,CAEA,SAASk2B,EAA2Bp3D,EAAMkQ,GACV,aAA1BA,EAAQmnD,cACVr3D,EAAKs3D,gBAAkB,CACrB/kB,UAAWriC,EAAQqiC,UACnBI,SAAUziC,EAAQyiC,UAEe,aAA1BziC,EAAQmnD,gBACjBr3D,EAAKu3D,cAAgB,CACnBC,aAActnD,EAAQsnD,cAG5B,CAEA,SAAShB,EAAsB5yD,GAC7B,MAEE,oBACAA,EACA,oBACAA,EAJA,sBAOAA,EARK,0IAqBT,CAxVA0yD,EAAc77D,UAAU2Y,SAAW,SAAU1c,GAG3C,OAFAA,EAAUA,GAAW,CAAC,GAET+gE,YAUT/gE,EAAQghE,aAAehhE,EAAQihE,UAC1BthE,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAOymD,2CAA2ClyD,KACxDrO,KAAM8Z,EAAOymD,2CAA2CvgE,KACxD0W,QACE,sEAGGvV,EAAQghE,YACV7hE,KAAK+hE,qBAAqBlhE,GACxBA,EAAQihE,UACV9hE,KAAKgiE,mBAAmBnhE,GAG1BL,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAOwmD,gCAAgCjyD,KAC7CrO,KAAM8Z,EAAOwmD,gCAAgCtgE,KAC7C0W,QAAS,4DA5BJ5V,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAOwmD,gCAAgCjyD,KAC7CrO,KAAM8Z,EAAOwmD,gCAAgCtgE,KAC7C0W,QAAS,sCA2BjB,EAEAqqD,EAAc77D,UAAUm9D,qBAAuB,SAAUlhE,GACvD,IAAIgZ,EAAS7Z,KAAK4Z,QACdioD,EAAchhE,EAAQghE,YACtB13D,EAAO,CACT83D,WAAYphE,EAAQ+gE,YACpBM,cAAeL,EAAYK,cAC3BC,cAAeN,EAAYM,cAC3B5F,YAAasF,EAAYtF,YAAYhsC,cACrC7C,eAAgB2zC,EACdQ,EAAYn0C,gBAAkB,CAAC,IAMnC,OAFA6zC,EAA2Bp3D,EAAM03D,GAE1BhoD,EACJK,QAAQ,CACPkH,IAAK,aACLjX,KAAM,CACJmjB,MAAOozC,EACP5yC,UAAW,CACTC,MAAO,CACLnD,cAAezgB,OAKtB1C,MAAK,SAAUyV,GAMd,OALA/B,EAAUgC,UACRtD,EACA,oDAGKrZ,QAAQ0B,QACb8+D,EAAkC9jD,EAAU,yBAEhD,IACCtW,OAAM,SAAUG,GACf,IAAIsP,EAAQyqD,EAAU/5D,GAOtB,OALAoU,EAAUgC,UACRtD,EACA,iDAGKrZ,QAAQ2B,OAAOkU,EACxB,GACJ,EAEAoqD,EAAc77D,UAAUo9D,mBAAqB,SAAUnhE,GACrD,IAAI6R,EAAO1S,KACP6Z,EAAS7Z,KAAK4Z,QACdkC,EAAuBjC,EAAOgC,mBAAmBC,qBACjDsmD,EAAoD,eAArCtmD,EAAqBiG,YACpCsgD,EAAcvmD,EAAqB8O,cAAcE,MAErD,OAAKjqB,EAAQihE,UAAU7kD,YAUlBolD,EAMDriE,KAAK6gE,uBACArgE,QAAQ2B,OACb,IAAIoX,EAAeC,EAAO4mD,wCAG9BpgE,KAAK6gE,wBAAyB,EAEvB,IAAIrgE,SAAQ,SAAU0B,EAASC,GACpCuQ,EAAK4vD,YAAW,SAAUC,EAAcz3C,GAClCy3C,EACFpgE,EAAOogE,IAKTz3C,EACGjlB,OAAO,CACN28D,WAAY3hE,EAAQihE,UAAU7kD,YAC9BghB,WAAY,KACZwkC,IAAKL,EAAe,aAAe,UACnCngE,IAAKogE,EAAYt3C,UACjB23C,QAAS,OACTC,eAAe,EACfC,OAAQ,WACNlwD,EAAKmuD,wBAAyB,EAE9B1lD,EAAUgC,UACRtD,EACA,uDAGF1X,EAAO,IAAIoX,EAAeC,EAAO2mD,8BACnC,EACA0C,UAAW,SAAUC,EAAalhD,GAChC,IAAIkgD,EAAYjhE,EAAQihE,UACpB33D,EAAO,CACT24D,YAAaA,EACbC,UAAWX,EACPxgD,EAASohD,WACT,mBACJzG,YAAa36C,EAASq9B,QAAQgkB,QAAQ1yC,cACtC0xC,WAAYphE,EAAQ+gE,YACpBl0C,eAAgB2zC,EACdS,EAAUp0C,gBAAkB,CAAC,IAIjC6zC,EAA2Bp3D,EAAM23D,GAEjCjoD,EACGK,QAAQ,CACPkH,IAAK,aACLjX,KAAM,CACJmjB,MAAOszC,EACP9yC,UAAW,CACTC,MAAO,CACLm1C,YAAa/4D,OAKpB1C,MAAK,SAAUyV,GACdxK,EAAKmuD,wBAAyB,EAE9B1lD,EAAUgC,UACRtD,EACA,kDAGF3X,EACE8+D,EACE9jD,EACA,uBAGN,IACCtW,OAAM,SAAUs7C,GACf,IAAI7rC,EAEJ3D,EAAKmuD,wBAAyB,EAC9BxqD,EAAQyqD,EAAU5e,GAElB/mC,EAAUgC,UACRtD,EACA,+CAGF1X,EAAOkU,EACT,GACJ,IAED2Q,OAEH7L,EAAUgC,UACRtD,EACA,gDAEJ,GACF,KAvGSrZ,QAAQ2B,OACb,IAAIoX,EAAeC,EAAOgnD,yCAXrBhgE,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAOwmD,gCAAgCjyD,KAC7CrO,KAAM8Z,EAAOwmD,gCAAgCtgE,KAC7C0W,QAAS,2DA8GjB,EAiCAqqD,EAAc77D,UAAU09D,WAAa,SAAUv9D,GAC7C,IAAIo+D,EAAgBhiE,EAEpB4D,EAAWgF,EAAKhF,GAEZvC,OAAO4+D,MACTr8D,EAAS,KAAMvC,OAAO4+D,QAKxB+B,EAAiB/hE,SAASkf,cACxB,eAAiBkD,EAAUu8C,cAAgB,OAI3CkB,EAAiBkC,EAAgBp+D,KAEjC5D,EAASC,SAASC,cAAc,WAEzBK,IAAM8hB,EAAUu8C,cACvB5+D,EAAOS,OAAQ,EAEfq/D,EAAiB9/D,EAAQ4D,GAEzB3D,SAASmf,KAAKle,YAAYlB,GAE1BnB,KAAKojE,aAAejiE,EAExB,EAwFAs/D,EAAc77D,UAAU0O,SAAW,WAOjC,OANItT,KAAKojE,cACPhiE,SAASmf,KAAK0Q,YAAYjxB,KAAKojE,cAGjC1pD,EAAsB1Z,KAAMyZ,EAAQgnD,EAAc77D,YAE3CpE,QAAQ0B,SACjB,EAEApD,EAAOC,QAAUwL,EAAYE,cAAcg2D,EAE3C,EAAE,CAAC,mBAAmB,IAAI,yBAAyB,IAAI,kCAAkC,IAAI,gBAAgB,IAAI,iBAAiB,IAAI,cAAc,IAAI,cAAc,IAAI,WAAW,IAAI,0BAA0B,KAAK,IAAI,CAAC,SAAS3gE,EAAQhB,EAAOC,GACrP,aAUA,IAAIwa,EAAiBzZ,EAAQ,0BAE7BhB,EAAOC,QAAU,CACfskE,gEAAiE,CAC/Dt1D,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,kEACN0W,QACE,oFAEJktD,6CAA8C,CAC5Cv1D,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,gDAER6jE,kDAAmD,CACjDx1D,KAAMwL,EAAehL,MAAM+c,QAC3B5rB,KAAM,qDAIV,EAAE,CAAC,yBAAyB,MAAM,IAAI,CAAC,SAASI,EAAQhB,EAAOC,GAC/D,aAMA,IAAI4b,EAA6B7a,EAAQ,uCACrC8a,EAAuB9a,EAAQ,iCAC/B+a,EAAkB/a,EAAQ,4BAC1B0jE,EAAe1jE,EAAQ,mBAEvByK,EAAczK,EAAQ,2BAiC1BhB,EAAOC,QAAU,CACf8G,OAAQ0E,GAvBV,SAAgB1J,GACd,IAAI8H,EAAO,gBAEX,OAAOgS,EACJG,OAAO,CACNnS,KAAMA,EACNkR,OAAQhZ,EAAQgZ,OAChBkB,cAAela,EAAQka,gBAExBtT,MAAK,WACJ,OAAO,IAAI+7D,EAAa,CACtBhoD,cAAeZ,EAAqB/U,OAAO,CACzCkV,cAAela,EAAQka,cACvBlB,OAAQhZ,EAAQgZ,OAChBmB,MAAOna,EAAQma,MACfC,UAAWJ,EAAgBhV,OAAOhF,EAAQka,eAC1CpS,KAAMA,KAGZ,GACJ,IAQEuS,QAxCY,UA2Cd,EAAE,CAAC,sCAAsC,IAAI,2BAA2B,IAAI,gCAAgC,IAAI,kBAAkB,IAAI,0BAA0B,KAAK,IAAI,CAAC,SAASpb,EAAQhB,EAAOC,GAClM,aAEA,IAAIoc,EAAYrb,EAAQ,oBACpByZ,EAAiBzZ,EAAQ,0BACzB0Z,EAAS1Z,EAAQ,YACjB4Z,EAAwB5Z,EAAQ,mCAChC2Z,EAAU3Z,EAAQ,kBAClByK,EAAczK,EAAQ,2BA2B1B,SAAS0jE,EAAa3iE,GACpBb,KAAKub,eAAiB1a,EAAQ2a,aAChC,CA4IA,SAASioD,EAA2BnmC,GAClC,IAAIomC,EAAyB,CAC3B3pD,MAAOujB,EAAcvjB,MACrBtZ,QAAS68B,EAAc78B,QACvB4Z,QAASijB,EAAcjjB,QACvBspD,gBAAiBrmC,EAAcqmC,gBAC/B51D,KAAMuvB,EAAcvvB,MAWtB,OARIuvB,EAAcxR,cAChB43C,EAAuB53C,YAAcwR,EAAcxR,aAGjDwR,EAAc1R,UAChB83C,EAAuB93C,QAAU0R,EAAc1R,SAG1C83C,CACT,CA3IAF,EAAa5+D,UAAUg/D,oBAAsB,SAAU/iE,GACrD,IAAIgjE,EAMJ,OAFAA,GAAwC,KAFxChjE,EAAUA,GAAW,CAAC,GAECgjE,aAAwB,EAAI,EAE5C7jE,KAAKub,eACT9T,MAAK,SAAUoS,GACd,OAAOA,EAAOK,QAAQ,CACpBC,SAAU,kBACVpP,OAAQ,MACRZ,KAAM,CACJ05D,aAAcA,IAGpB,IACCp8D,KACC,SAAUq8D,GAMR,OALA3oD,EAAUgC,UACRnd,KAAKub,eACL,iDAGKuoD,EAAsBC,eAAez2D,IAC1Cm2D,EAEJ,EAAE9nD,KAAK3b,MAEb,EAaAwjE,EAAa5+D,UAAUo/D,oBAAsB,SAAU/pD,GACrD,OAAOja,KAAKub,eAAe9T,MAAK,SAAUoS,GAIxC,MAFkD,iBAAhDA,EAAOgC,mBAAmB4I,kBAUrB5K,EACJK,QAAQ,CACPkH,IAAK,aACLjX,KAAM,CACJmjB,MAxGR,wLAyGQQ,UAAW,CACTC,MAAO,CACLk2C,iBAAkBhqD,IAGtBsT,cAAe,2CAGlB9lB,MAAK,WACJ0T,EAAUgC,UACRtD,EACA,gDAIJ,IACCjT,OAAM,SAAUyP,GACf,IACI6uC,EADA5qC,EAAgBjE,EAAMgE,QAAQC,cAuClC,OApCAa,EAAUgC,UACRtD,EACA,8CAIAS,EAAc,IAC6B,cAA3CA,EAAc,GAAGmM,WAAWD,aAE5B0+B,EAAiB,IAAI3rC,EAAe,CAClCxL,KAAMyL,EAAO8pD,6CAA6Cv1D,KAC1DrO,KAAM8Z,EAAO8pD,6CAA6C5jE,KAC1D0W,QACE,8CACA6D,EACA,wBACFI,QAAS,CACPC,cAAeA,MAKhB4qC,IACHA,EAAiB,IAAI3rC,EAAe,CAClCxL,KAAMyL,EAAO+pD,kDAAkDx1D,KAC/DrO,KAAM8Z,EAAO+pD,kDAAkD7jE,KAC/D0W,QACE,mHACA6D,EACA,KACFI,QAAS,CACPC,cAAeA,MAKd9Z,QAAQ2B,OAAO+iD,EACxB,IArEO1kD,QAAQ2B,OACb,IAAIoX,EACFC,EAAO6pD,iEAoEf,GACF,EAkCAG,EAAa5+D,UAAU0O,SAAW,WAGhC,OAFAoG,EAAsB1Z,KAAMyZ,EAAQ+pD,EAAa5+D,YAE1CpE,QAAQ0B,SACjB,EAEApD,EAAOC,QAAUwL,EAAYE,cAAc+4D,EAE3C,EAAE,CAAC,mBAAmB,IAAI,yBAAyB,IAAI,kCAAkC,IAAI,iBAAiB,IAAI,WAAW,IAAI,0BAA0B,KAAK,IAAI,CAAC,SAAS1jE,EAAQhB,EAAOC,GAC7L,aACA,IAKImlE,GAJDlkE,MAAQA,KAAKD,iBACd,SAAUE,GACR,OAAOA,GAAOA,EAAIC,WAAaD,EAAM,CAAEQ,QAASR,EAClD,GACoCH,EAAQ,oBAC9ChB,EAAOC,QAAU,SAA4B8B,GAE3C,OADe,IAAIqjE,EAAgBzjE,QAAQI,GAC3B8e,YAClB,CAEA,EAAE,CAAC,kBAAkB,MAAM,IAAI,CAAC,SAAS7f,EAAQhB,EAAOC,GACxD,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQolE,mCACNplE,EAAQqlE,0CACRrlE,EAAQslE,6BACRtlE,EAAQulE,oCACRvlE,EAAQwlE,6BACRxlE,EAAQylE,yCACN,EACJzlE,EAAQylE,oCACN,oRACFzlE,EAAQwlE,6BACN,4PACFxlE,EAAQulE,oCACN,8KACFvlE,EAAQslE,6BACN,8KACFtlE,EAAQqlE,0CACN,kKACFrlE,EAAQolE,mCACN,2qBAEF,EAAE,CAAC,GAAG,IAAI,CAAC,SAASrkE,EAAQhB,EAAOC,GACnC,aACA,IAAIsM,EACDrL,MAAQA,KAAKqL,UACd,WAWE,OAVAA,EACElL,OAAOmI,QACP,SAAUnJ,GACR,IAAK,IAAImM,EAAGjM,EAAI,EAAGH,EAAIsG,UAAU3F,OAAQR,EAAIH,EAAGG,IAE9C,IAAK,IAAIM,KADT2L,EAAI9F,UAAUnG,GAERc,OAAOyE,UAAUsC,eAAetH,KAAK0L,EAAG3L,KAAIR,EAAEQ,GAAK2L,EAAE3L,IAE7D,OAAOR,CACT,EACKkM,EAAS5F,MAAMzF,KAAMwF,UAC9B,EACEzF,EACDC,MAAQA,KAAKD,iBACd,SAAUE,GACR,OAAOA,GAAOA,EAAIC,WAAaD,EAAM,CAAEQ,QAASR,EAClD,EACFE,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtD,IAAI8T,EAAapU,EAAgBD,EAAQ,aACrC2kE,EAAY1kE,EAAgBD,EAAQ,uBACpCwW,EAASvW,EAAgBD,EAAQ,oBACjC4kE,EAAW5kE,EAAQ,oBACnB6kE,EAAY7kE,EAAQ,aAGpB8kE,EAA6B,WAC/B,SAASA,EAAa/jE,GACpBb,KAAK6kE,UAAW,EAChB7kE,KAAKyiE,IAAM5hE,EAAQkhB,YACnB/hB,KAAK2B,GAAK2U,EAAO7V,UACjBT,KAAK8kE,UAAYjkE,EAAQikE,UACzB9kE,KAAKid,YAAcpc,EAAQoc,YAC3Bjd,KAAK+kE,mBAAqBlkE,EAAQkkE,mBAClC/kE,KAAKglE,+BAAiChlE,KAAK+kE,mBAC3C,IAAIE,EAAWpkE,EAAQ4e,IAAM,IAAMzf,KAAKyiE,IAAM,IAAMziE,KAAK2B,GACzD3B,KAAK0zD,IAAM,IAAIv/C,EAAW1T,QAAQ,CAChCwQ,QAASjR,KAAK2B,GACduP,aAAcrQ,EAAQqQ,aACtBC,aAAc,KAEhBnR,KAAKklE,WAAarkE,EAAQqkE,WAC1BllE,KAAKmd,UAAYtc,EAAQsc,UACzBnd,KAAKQ,QAAUK,EAAQL,QACvBR,KAAKmlE,SAAW/jE,SAASC,cAAc,OACvCrB,KAAKmlE,SAASrjE,aAAa,wBAAyB9B,KAAK2B,IACzD3B,KAAKmlE,SAASrjE,aAAa,OAAQ,SACnC9B,KAAKmlE,SAAS38D,MAAMyE,SAAW,QAC/BjN,KAAKmlE,SAAS38D,MAAMk5B,QAAU,OAC9B1hC,KAAKmlE,SAAS38D,MAAMwsB,OAAS,MAC7Bh1B,KAAKmlE,SAAS38D,MAAMusB,MAAQ,MAC5B/0B,KAAKmlE,SAAS38D,MAAMkrC,SAAW,SAC/B1zC,KAAKmlE,SAAS38D,MAAM0qC,OAAS,IAC7BlzC,KAAKoI,OAASq8D,EAAUhkE,QAAQ,CAC9BiB,IAAKujE,EACLt8D,KAAM,uBACNH,MAAO,CACLk5B,QAAS,OACTz0B,SAAU,QACVwF,IAAK,IACLg3B,OAAQ,IACRD,MAAO,IACPvU,KAAM,IACND,OAAQ,OACRD,MAAO,OACPme,OAAQ,WAEVhe,MAAO,kBAETl1B,KAAK0zD,IAAIliD,eAAexR,KAAKoI,OAC/B,CA2UA,OA1UAw8D,EAAahgE,UAAU+a,WAAa,WAClC,IAAI1Z,EAAQjG,KACZ,OAAO,IAAIA,KAAKQ,SAAQ,SAAU0B,GAChC+D,EAAMytD,IAAI7uD,GAAG6/D,EAASU,4BAA4B,WAChDljE,EAAQ+D,EACV,IACAA,EAAMytD,IAAI7uD,GAAG6/D,EAASW,mCAAmC,WACvDp/D,EAAMkX,UAAU,oDAChBlX,EAAMq/D,cACR,IACAlkE,SAASmf,KAAKle,YAAY4D,EAAMmC,QAChChH,SAASmf,KAAKle,YAAY4D,EAAMk/D,SAClC,GACF,EACAP,EAAahgE,UAAU2gE,kBAAoB,WACzC,IAAIt/D,EAAQjG,KACZA,KAAK6kE,UAAW,EAChB,IAAI36D,EAAU,IAAIlK,KAAKQ,SAAQ,SAAU0B,EAASC,GAChD8D,EAAMu/D,mCAAqCrjE,EAC3C,IAAIsjE,EAAkB,WAEpBx/D,EAAMytD,IAAIzuD,IACRy/D,EAASgB,gCACTC,GAEF1/D,EAAMytD,IAAIzuD,IACRy/D,EAASkB,4BACTC,EAGJ,EACIA,EAAsB,SAAU9+D,GAClC0+D,IACAx/D,EAAMkX,UAAU,wCAChBhb,EAAO,CACL2jE,sBAAsB,EACtBxtD,OAAQ,gBACRvR,IAAKA,GAET,EACI4+D,EAA2B,WAC7BF,IACAx/D,EAAM8/D,iCAAiC,YACvC9/D,EAAMkX,UACJ,4DAEFhb,EAAO,CACL2jE,sBAAsB,EACtBxtD,OAAQ,qBAEZ,EACArS,EAAM+/D,iBAAmB,SAAU5zD,GACjCqzD,IACAvjE,EAAQkQ,EACV,EACAnM,EAAMytD,IAAI7uD,GACR6/D,EAASgB,gCACTC,GAEF1/D,EAAMytD,IAAI7uD,GAAG6/D,EAASkB,4BAA6BC,EACrD,IAKA,OAJA7lE,KAAKoI,OAAOI,MAAMk5B,QAAU,QAC5B1hC,KAAKimE,SAAS,kDACdjmE,KAAKoI,OAAOg5B,QACZphC,KAAKslE,eACEp7D,EACJzC,MAAK,SAAUX,GAGd,cAFOb,EAAMigE,sBACNjgE,EAAMu/D,mCACN1+D,CACT,IACCF,OAAM,SAAUG,GAGf,cAFOd,EAAMigE,sBACNjgE,EAAMu/D,mCACNv/D,EAAMzF,QAAQ2B,OAAO4E,EAC9B,GACJ,EACA69D,EAAahgE,UAAUuhE,iBAAmB,SAAUr/D,GAClD,IAAIb,EAAQjG,KACRA,KAAK6kE,UAGTj7D,YAAW,WACL3D,EAAM+/D,kBACR//D,EAAM+/D,iBAAiBl/D,UAElBb,EAAM+/D,gBACf,GArI4C,IAsI9C,EACApB,EAAahgE,UAAUwhE,gBAAkB,SAAUr/D,GAC7C/G,KAAKwlE,oCACPxlE,KAAKwlE,mCAAmCz+D,EAE5C,EACA69D,EAAahgE,UAAUyhE,gBAAkB,WACvCrmE,KAAKimE,SAAS,IACdjmE,KAAKoI,OAAOI,MAAMk5B,QAAU,OAC5B1hC,KAAK0zD,IAAI5hD,KAAK4yD,EAAS4B,kCACvBtmE,KAAK6kE,UAAW,CAClB,EACAD,EAAahgE,UAAU2hE,aAAe,SAAUnwD,GAC1CpW,KAAK6kE,WAGT7kE,KAAK0zD,IAAI5hD,KAAK4yD,EAAS8B,4BAA6B,CAClDpwD,QAASA,IAEXpW,KAAKimE,SAAS7vD,GAChB,EACAwuD,EAAahgE,UAAU6hE,cAAgB,SAAU9kE,EAAI+e,GAC/C1gB,KAAK6kE,WAGT7kE,KAAK0zD,IAAI5hD,KAAK4yD,EAASgC,8BAA+B,CACpD/kE,GAAIA,EACJ+e,WAAYA,IAEd1gB,KAAKimE,SAAS,4CAChB,EACArB,EAAahgE,UAAU+hE,UAAY,WAC7B3mE,KAAK6kE,WAGT7kE,KAAK0zD,IAAI5hD,KAAK4yD,EAASkC,yBACvB5mE,KAAKimE,SAAS,4BAChB,EACArB,EAAahgE,UAAUiiE,YAAc,WAC/B7mE,KAAK6kE,WAGT7kE,KAAK0zD,IAAI5hD,KAAK4yD,EAASoC,2BACvB9mE,KAAKimE,SAAS,+BAChB,EACArB,EAAahgE,UAAU0gE,aAAe,WACpC,IAAIr/D,EAAQjG,KACZ,OAAOA,KAAK+mE,mCACTt/D,MAAK,SAAUX,GACd,IAAIkgE,EACF,IAAI31C,KAAKvqB,EAAOmgE,WAAW31C,UAC3B,IAAID,KAAKvqB,EAAOogE,WAAW51C,UACzB61C,EAAc91C,KAAKoF,MAAQuwC,EAE/B,OADA/gE,EAAMwgE,cAAc3/D,EAAOnF,GAAImF,EAAO4Z,YAC/Bza,EAAMmhE,oBAAoBtgE,EAAO+R,OAAQsuD,EAClD,IACC1/D,MAAK,SAAUX,GACd,GAAKA,EAAL,CAMA,IAAIugE,EAAWvgE,EAAOwgE,UAAY,GAClCD,EAAW,IAAMA,EAASh+D,QAAQ,IAAK,IACvCpD,EAAMkgE,iBAAiB,CACrBlsD,mBAAoBnT,EAAOygE,gBAC3BF,SAAUA,EACVnoB,UAAWp4C,EAAOo4C,UAClBv9C,GAAIsE,EAAMigE,gBAAkB,IAV9B,CAYF,IACCt/D,OAAM,SAAUG,GACXA,EAAI++D,uBAIR7/D,EAAMkX,UAAU,0CAChBlX,EAAMmgE,gBAAgBr/D,GACxB,GACJ,EACA69D,EAAahgE,UAAUwiE,oBAAsB,SAAUvuD,EAAQsuD,GAC7D,IAAIlhE,EAAQjG,KACZ,OAAKA,KAAKkmE,eAGN70C,KAAKoF,MAAQ0wC,EACRnnE,KAAK+lE,iCAAiC,WAAWt+D,MAAK,WAG3D,OAFAxB,EAAMsgE,aAAa,wBACnBtgE,EAAMkX,UAAU,oDACTlX,EAAMzF,QAAQ2B,OAAO,CAC1B2jE,sBAAsB,EACtBxtD,OAAQ,WAEZ,IAEKtY,KAAKwnE,mCAAmC//D,MAAK,SAAUyV,GAC5D,IAAKjX,EAAMigE,iBAAmBhpD,EAC5B,OAAOjX,EAAMzF,QAAQ0B,UAEvB,IAAIulE,EAAYvqD,EAASrE,OACzB,GAAI4uD,IAAc5uD,EAKhB,OAJAA,EAAS4uD,EACTxhE,EAAMkX,UACJ,wCAA0CtE,EAAO6P,eAE3C7P,GACN,IAAK,UAIH,MACF,IAAK,UACL,IAAK,SACL,IAAK,WACH,IAAIzC,EACS,aAAXyC,EACI,iCACA,uBAGN,OAFA5S,EAAMsgE,aAAanwD,GAEZnQ,EAAMzF,QAAQ2B,OAAO,CAC1B2jE,sBAAsB,EACtBxtD,OAAQO,IAEZ,IAAK,UACH5S,EAAM4gE,cACN,MACF,IAAK,WAEH,OADA5gE,EAAM0gE,YACC1gE,EAAMzF,QAAQ0B,QAAQgb,GAMnC,OAAO,IAAIjX,EAAMzF,SAAQ,SAAU0B,EAASC,GAC1CyH,YAAW,WACT3D,EACGmhE,oBAAoBvuD,EAAQsuD,GAC5B1/D,KAAKvF,GACL0E,MAAMzE,EACX,GArR6B,IAsR/B,GACF,IA5DSnC,KAAKQ,QAAQ0B,SA6DxB,EACA0iE,EAAahgE,UAAU0O,SAAW,WAChCtT,KAAK0zD,IAAIpgD,WACLtT,KAAKoI,OAAO4oB,YACdhxB,KAAKoI,OAAO4oB,WAAWC,YAAYjxB,KAAKoI,QAEtCpI,KAAKmlE,SAASn0C,YAChBhxB,KAAKmlE,SAASn0C,WAAWC,YAAYjxB,KAAKmlE,SAE9C,EACAP,EAAahgE,UAAUqhE,SAAW,SAAU7vD,GAC1CpW,KAAKmlE,SAAS38D,MAAMk5B,QAAUtrB,EAAU,QAAU,OAClDpW,KAAKmlE,SAASuC,YAActxD,CAC9B,EACAwuD,EAAahgE,UAAU+iE,oDACrB,SAAU9qB,GACR,OAAO78C,KAAKklE,WAAWP,EAAUH,oCAAqC,CACpEz2C,MAAO,CACLhM,YAAa/hB,KAAKyiE,IAClB5lB,OAAQA,KAETp1C,MAAK,SAAUyV,GAChB,OAAOA,EACJ0qD,gCAAgCC,yBACrC,GACF,EACFjD,EAAahgE,UAAUkjE,gCAAkC,SAAUjrB,GACjE,IAAI9uB,EAAQ,CACV8uB,OAAQA,EACRkoB,mBAAoB/kE,KAAK+kE,mBACzBgD,eAAgB,WAQlB,OANI/nE,KAAK8kE,YACP/2C,EAAMi6C,kBAAoBhoE,KAAK8kE,WAE7B9kE,KAAKid,cACP8Q,EAAM9Q,YAAcjd,KAAKid,aAEpBjd,KAAKklE,WAAWP,EAAUJ,6BAA8B,CAC7Dx2C,MAAOA,IACNtmB,MAAK,SAAUyV,GAChB,OAAOA,EAAS+qD,0BAA0BC,mBAC5C,GACF,EACAtD,EAAahgE,UAAUmiE,iCAAmC,WACxD,IAAI9gE,EAAQjG,KAIZ,OAHqBA,KAAKglE,8BACtBhlE,KAAK2nE,oDAAoD,gBACzD3nE,KAAK8nE,gCAAgC,iBACnBrgE,MAAK,SAAU0gE,GACnCliE,EAAMigE,eAAiBiC,EAAQxmE,GAC/B,IAAI+e,EAAaza,EAAM6+D,WAAaqD,EAAQznD,WAC5C,MAAO,CACL/e,GAAIwmE,EAAQxmE,GACZkX,OAAQsvD,EAAQtvD,OAChB6H,WAAYA,EACZwmD,UAAWiB,EAAQjB,UACnBD,UAAWkB,EAAQlB,UAEvB,GACF,EACArC,EAAahgE,UAAUmhE,iCAAmC,SACxDltD,EACAuvD,GAKA,QAH0B,IAAtBA,IACFA,EAAoB,CAAC,IAElBpoE,KAAKkmE,eACR,OAAOlmE,KAAKQ,QAAQ0B,UAEtB,IAAIiI,EAAO,CACT4jB,MAAO1iB,EACL,CAAE1J,GAAI3B,KAAKkmE,eAAgBrtD,OAAQA,GACnCuvD,IAGA96C,EAAQttB,KAAKglE,8BACbL,EAAUL,oCACVK,EAAUN,6BACd,OAAOrkE,KAAKklE,WAAW53C,EAAOnjB,GAAM1C,MAAK,WAEzC,GACF,EACAm9D,EAAahgE,UAAU4iE,iCAAmC,WACxD,IAAKxnE,KAAKkmE,eACR,OAAOlmE,KAAKQ,QAAQ0B,UAEtB,IAAIorB,EAAQttB,KAAKglE,8BACbL,EAAUP,0CACVO,EAAUR,mCACd,OAAOnkE,KAAKklE,WAAW53C,EAAO,CAC5B3rB,GAAI3B,KAAKkmE,iBACRz+D,MAAK,SAAUyV,GAChB,OAAOA,EAASupB,IAClB,GACF,EACOm+B,CACR,CAxXgC,GAyXjC7lE,EAAQ0B,QAAUmkE,CAElB,EAAE,CAAC,mBAAmB,IAAI,YAAY,IAAI,qBAAqB,GAAG,kBAAkB,GAAG,SAAW,KAAK,IAAI,CAAC,SAAS9kE,EAAQhB,EAAOC,GACpI,aAGA,IAAIoc,EAAYrb,EAAQ,oBACpB6a,EAA6B7a,EAAQ,uCACrC8a,EAAuB9a,EAAQ,iCAC/B+a,EAAkB/a,EAAQ,4BAC1B0Z,EAAS1Z,EAAQ,mBACjByK,EAAczK,EAAQ,2BACtByZ,EAAiBzZ,EAAQ,0BACzBuoE,EAAQvoE,EAAQ,WAChBwoE,EAAgBxoE,EAAQ,2BAgK5BhB,EAAOC,QAAU,CACf8G,OAAQ0E,GAvFV,SAAgB1J,GACd,IAAI8H,EAAO,QAEX,OAAOgS,EACJG,OAAO,CACNnS,KAAMA,EACNkR,OAAQhZ,EAAQgZ,OAChBkB,cAAela,EAAQka,gBAExBtT,MAAK,WACJ,IAAI+T,EAAemX,EAEnB,OAAI9xB,EAAQikE,WAA0C,iBAAtBjkE,EAAQikE,UAC/BtkE,QAAQ2B,OACb,IAAIoX,EAAeC,EAAO+uD,2BAK5B1nE,EAAQ2nE,mBAC6B,iBAA9B3nE,EAAQ2nE,kBAERhoE,QAAQ2B,OACb,IAAIoX,EAAeC,EAAOivD,sCAI9BjtD,EAAgBZ,EACb/U,OAAO,CACNkV,cAAela,EAAQka,cACvBlB,OAAQhZ,EAAQgZ,OAChBmB,MAAOna,EAAQma,MACfC,UAAWJ,EAAgBhV,OAAOhF,EAAQka,eAC1CpS,KAAMA,IAEPlB,MAAK,SAAUoS,GACd,IAAIkF,EAAgBlF,EAAOgC,mBAI3B,OAFAhb,EAAQgZ,OAASA,EAEZkF,EAAcjD,qBAAqBiO,aAIjClQ,EAHErZ,QAAQ2B,OAAO,IAAIoX,EAAeC,EAAOkvD,mBAIpD,IAEF7nE,EAAQ2a,cAAgBA,EACxBmX,EAAW,IAAI01C,EAAMxnE,GAErBsa,EAAUgC,UAAU3B,EAAe,qBAE5BA,EAAc/T,MAAK,WACxB,OAAOkrB,CACT,IACF,GACJ,IAgCEg2C,mBANF,SAA4B9nE,GAC1B,OAAOynE,EAAcK,mBAAmB9nE,EAC1C,EASEqa,QAtKY,UAyKd,EAAE,CAAC,mBAAmB,IAAI,sCAAsC,IAAI,yBAAyB,IAAI,2BAA2B,IAAI,gCAAgC,IAAI,kBAAkB,IAAI,0BAA0B,IAAI,UAAU,IAAI,0BAA0B,KAAK,IAAI,CAAC,SAASpb,EAAQhB,EAAOC,GAClS,aAEA,IAAIkF,EAAYnE,EAAQ,2CACpBoE,EAAWpE,EAAQ,0CACnBoD,EAAQpD,EAAQ,uCAChB8oE,EAAc9oE,EAAQ,8CACtB4D,EAAe5D,EAAQ,+CACvB+C,EAAY/C,EAAQ,2CAmCxBhB,EAAOC,QAAU,CACfkF,UAAWA,EACXI,iBAnCF,WACE,OACEJ,KAAezB,OAAOC,UAAUC,UAAUgmB,cAAczlB,QAAQ,OAAS,CAE7E,EAgCEiB,SAAUA,EACVhB,MAAOA,EACPK,YATF,WACE,OAAOL,KAAWgB,GACpB,EAQErB,UAAWA,EACX+lE,YAAaA,EACbllE,aAAcA,EACdmlE,gCA5BF,WACE,IAAItmE,EAAKC,OAAOC,UAAUC,UAAUgmB,cAGpC,OAAInmB,EAAGU,QAAQ,WAAa,GAAKV,EAAGU,QAAQ,SAAW,KAIlDgB,MAIE1B,EAAGU,QAAQ,WAAa,GAAKV,EAAGU,QAAQ,cAAgB,EACjE,EAgBE6lE,8BArCF,WACE,QAAK5lE,MAIEQ,MAAmBklE,IAC5B,EAkCA,EAAE,CAAC,0CAA0C,GAAG,yCAAyC,GAAG,sCAAsC,GAAG,6CAA6C,GAAG,8CAA8C,GAAG,0CAA0C,KAAK,IAAI,CAAC,SAAS9oE,EAAQhB,EAAOC,GAClT,aAUAD,EAAOC,QAAU,CACfgqE,uCAAwC,IACxCC,8BAA+B,IAC/BC,6BAA8B,gCAC9BC,+BAAgC,uCAChCC,oBAAqB,mCAGvB,EAAE,CAAC,GAAG,IAAI,CAAC,SAASrpE,EAAQhB,EAAOC,GACnC,aAiCA,IAAIwa,EAAiBzZ,EAAQ,6BAE7BhB,EAAOC,QAAU,CACf2pE,kBAAmB,CACjB36D,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,oBACN0W,QAAS,2CAEXgzD,kCAAmC,CACjCr7D,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,oCACN0W,QAAS,2CAEXizD,sCAAuC,CACrCt7D,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,wCACN0W,QAAS,gCAEXkzD,iBAAkB,CAChBv7D,KAAMwL,EAAehL,MAAM+c,QAC3B5rB,KAAM,mBACN0W,QAAS,oCAEXmzD,mBAAoB,CAClBx7D,KAAMwL,EAAehL,MAAMw9B,SAC3BrsC,KAAM,qBACN0W,QAAS,yCAEXozD,eAAgB,CACdz7D,KAAMwL,EAAehL,MAAMw9B,SAC3BrsC,KAAM,iBACN0W,QACE,qEAEJqzD,wBAAyB,CACvB17D,KAAMwL,EAAehL,MAAMw9B,SAC3BrsC,KAAM,0BACN0W,QAAS,sCAEXszD,oBAAqB,CACnB37D,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,sBACN0W,QAAS,2CAEXuzD,uBAAwB,CACtB57D,KAAMwL,EAAehL,MAAMw9B,SAC3BrsC,KAAM,yBACN0W,QACE,yEAEJwzD,wCAAyC,CACvC77D,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,0CACN0W,QAAS,wDAEXwvD,4BAA6B,CAC3B73D,KAAMwL,EAAehL,MAAM+c,QAC3B5rB,KAAM,8BACN0W,QAAS,qDAEXyzD,0CAA2C,CACzC97D,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,4CACN0W,QAAS,4DAEX0zD,gDAAiD,CAC/C/7D,KAAMwL,EAAehL,MAAM+c,QAC3B5rB,KAAM,kDACN0W,QAAS,+CAEX2zD,0CAA2C,CACzCh8D,KAAMwL,EAAehL,MAAMw9B,SAC3BrsC,KAAM,4CACN0W,QAAS,+CAEX4zD,2CAA4C,CAC1Cj8D,KAAMwL,EAAehL,MAAMw9B,SAC3BrsC,KAAM,6CACN0W,QAAS,wCAEX6zD,0CAA2C,CACzCl8D,KAAMwL,EAAehL,MAAMw9B,SAC3BrsC,KAAM,4CACN0W,QAAS,sDAEX8zD,yCAA0C,CACxCn8D,KAAMwL,EAAehL,MAAM+c,QAC3B5rB,KAAM,2CACN0W,QAAS,mCAEXmyD,yBAA0B,CACxBx6D,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,2BACN0W,QAAS,gCAEXqyD,mCAAoC,CAClC16D,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,qCACN0W,QAAS,0CAEX+zD,0BAA2B,CACzBp8D,KAAMwL,EAAehL,MAAM+c,QAC3B5rB,KAAM,4BACN0W,QAAS,+BAEXg0D,mBAAoB,CAClBr8D,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,eACN0W,QACE,qHAIN,EAAE,CAAC,4BAA4B,MAAM,IAAI,CAAC,SAAStW,EAAQhB,EAAOC,GAClE,aACAoB,OAAOC,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQ6mE,4BACN7mE,EAAQsmE,kCACRtmE,EAAQunE,iCACRvnE,EAAQqmE,2BACRrmE,EAAQ2nE,8BACR3nE,EAAQynE,4BACRznE,EAAQ2mE,gCACR3mE,EAAQ+nE,0BACR/nE,EAAQ6nE,wBACR7nE,EAAQsrE,2CACN,EACJtrE,EAAQsrE,sCACN,wCACFtrE,EAAQ6nE,wBAA0B,0BAClC7nE,EAAQ+nE,0BAA4B,4BACpC/nE,EAAQ2mE,gCAAkC,kCAC1C3mE,EAAQynE,4BAA8B,8BACtCznE,EAAQ2nE,8BAAgC,gCACxC3nE,EAAQqmE,2BAA6B,6BACrCrmE,EAAQunE,iCAAmC,mCAC3CvnE,EAAQsmE,kCAAoC,oCAC5CtmE,EAAQ6mE,4BAA8B,6BAEtC,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS9lE,EAAQhB,EAAOC,GACnC,aACA,IAAIurE,EAAiBxqE,EAAQ,eAY7BhB,EAAOC,QAVP,SAAqB8B,GACnB,OAAIA,EAAQ0pE,wBACHD,EAAenB,oBAEpBtoE,EAAQ2pE,kBACHF,EAAerB,6BAEjBqB,EAAepB,8BACxB,CAIA,EAAE,CAAC,cAAc,MAAM,IAAI,CAAC,SAASppE,EAAQhB,EAAOC,GACpD,aAEA,IAAIkgC,EAAmBn/B,EAAQ,uBAC3B2qE,EAAW3qE,EAAQ,uBAiEvBhB,EAAOC,QAAU,CACf4pE,mBAhEF,SAA4B9nE,GAC1B,IACE6pE,EAEAC,EACAC,EACE3mE,EAAYg7B,EAAiBh7B,YAC7B4mE,EAAiB5mE,GAAag7B,EAAiB/7B,QAC/C+V,EAAkBhV,GAAag7B,EAAiB/6B,WAChD4mE,EACF7rC,EAAiB2pC,eAAiB3vD,EA+BpC,OA3BAyxD,GAC6D,MAH7D7pE,EAAUA,GAAW,CAAC,GAGXkqE,sBAAwBlqE,EAAQmqE,cAC3CL,GAAyC9pE,EAAQqG,eAC/C,uBAEErG,EAAQoqE,mBAQZL,GAAyB/pE,EAAQqG,eAAe,kBAC5CrG,EAAQqqE,kBAMVP,GAA2CF,MAGdxrC,EAAiB17B,eAC9C07B,EAAiB4pC,mCACjB5pC,EAAiBp8B,iBAOhB+nE,IACA3rC,EAAiB56B,oBAAsB46B,EAAiBv7B,mBAKtDmnE,EAIAF,EAIEE,EAHEC,EAJAJ,EAQX,EAMA,EAAE,CAAC,sBAAsB,IAAI,sBAAsB,MAAM,IAAI,CAAC,SAAS5qE,EAAQhB,EAAOC,GACtF,aAEA,IAAI8zC,EAAe/yC,EAAQ,oCACvB++B,EAAS/+B,EAAQ,qBACjBkG,EAAkBlG,EAAQ,+BAC1B0Z,EAAS1Z,EAAQ,oBACjByZ,EAAiBzZ,EAAQ,6BAGzBqrE,EACF,grFACEC,EACF,8GAEElrB,EAAc,IACdD,EAAe,IACforB,EAAc,CAChBtS,SAAU,6BACVuS,eAAgB,oCAChBC,kBAAmB,2BACnBC,aAAc,4BACdC,eAAgB,8BAChBr1D,QAAS,gBACTs1D,aAAc,qBACdC,UAAW,mBAKb,SAASvd,EAAUvtD,GACjB,IAAI0tD,EAAuB1tD,EAAQ0tD,qBAC/Bqd,EAAW/qE,EAAQ+qE,SACnBC,EAAuBhrE,EAAQgrE,qBAC/BC,EAAqBjrE,EAAQirE,mBAC7BC,EAA4BlrE,EAAQkrE,0BACpCC,EAAkB,IAAIhmE,EAkD1B,OAhDA5E,SACGq/B,eAAe4qC,EAAYI,gBAC3BrpE,iBAAiB,SAAS,WACzBmsD,EAAqBntB,OACvB,IACFhgC,SACGq/B,eAAe4qC,EAAYG,cAC3BppE,iBAAiB,SAAS,WACzBmsD,EAAqBhd,QACrBu6B,IACAG,GACF,IACF1d,EAAqBvnC,KAAK,CAAC,GAAG,SAAUs6B,GAGlCA,EACF0qB,EAAgB7pE,OAAOm/C,GAEvBuqB,EALuB,GAMpBpkE,MAAK,SAAU0C,GACd6hE,EAAgB9pE,QAAQiI,EAC1B,IACCvD,OAAM,SAAUslE,GASfH,IAA4BtkE,MAAK,SAAUg/B,GACrB,YAAhBA,EAAK5tB,OACPmzD,EAAgB7pE,OACd,IAAIoX,EAAeC,EAAOiwD,0BAG5BuC,EAAgB7pE,OAAO+pE,EAE3B,GACF,IAGJ3d,EAAqBhd,QACrB06B,GACF,IACA1d,EAAqB1c,SAAS+5B,GAEvBI,CACT,CAcA,SAASC,IACP7qE,SAASq/B,eAAe,8BAA8ByF,UAAUoG,IAAI,SACtE,CAqGA,SAAS6/B,IACP,IACIC,EACFC,EACAC,EACAC,EACAC,EACAC,EACAhB,EACAD,EA3GEkB,EAeAC,EAYAC,EAiBAC,EAgBAC,EAaAC,EA0BAC,EAA0B5rE,SAASq/B,eAAe4qC,EAAYtS,UAU9DiU,EACFA,EAAwB9mC,UAAUS,OAAO,WAI3CylC,EAAwBhrE,SAASC,cAAc,SAC/CgrE,EAAcjrE,SAASC,cAAc,OACrCirE,EAA2BlrE,SAASC,cAAc,OAClDkrE,EAAenrE,SAASC,cAAc,OACtCmrE,EAAkBprE,SAASC,cAAc,OACzCorE,EAAkBrrE,SAASC,cAAc,OACzCoqE,EAAiBrqE,SAASC,cAAc,UACxCmqE,EAAepqE,SAASC,cAAc,UAEtC+qE,EAAsBzqE,GAAK,qCAC3ByqE,EAAsBj3C,WA5HlBu3C,EAAiB,CACnB,IAAMrB,EAAYC,eAAiB,KACnC,iBACA,IACA,IAAMD,EAAYtS,SAAW,KAC7B,uBACA,mBACA,mBACA,UACA,WACA,aACA,eACA,kCACA,KAEE4T,EAA0B,CAC5B,IAAMtB,EAAYE,kBAAoB,KACtC,iBACA,yBACA,2BACA,uBACA,eACA,gBACA,0BACA,KAGEqB,EAAqB,CACvB,IAAMvB,EAAYG,aAAe,KACjC,gBACA,gBACA,+DACA,sBACA,oBACA,mBACA,qBACA,sBACA,iCACA,gBACA,kBACA,oBACA,KAGEqB,EAAuB,CACzB,IAAMxB,EAAYI,eAAiB,KACnC,gBACA,gBACA,uBACA,uBACA,gBACA,+DACA,sBACA,oBACA,mBACA,kBACA,oBACA,KAGEqB,EAAgB,CAClB,IAAMzB,EAAYj1D,QAAU,KAC5B,+DACA,sBACA,oBACA,mBACA,qBACA,sBACA,kBACA,oBACA,KAGE22D,EAAoB,CACtB,IAAM1B,EAAYK,aAAe,KACjC,+DACA,sBACA,oBACA,mBACA,qBACA,sBACA,kBACA,oBACA,gBACA,KAGcgB,EAAe95D,OAC7B+5D,EACAC,EACAC,EACAC,EACAC,GAGez9B,KAAK,OA+BtB+8B,EAAY1qE,GAAK0pE,EAAYtS,SAE7BuT,EAAyB3qE,GAAK0pE,EAAYE,kBAE1CgB,EAAa5qE,GAAK0pE,EAAYM,UAC9BY,EAAap3C,UAAYg2C,EAEzBqB,EAAgB7qE,GAAK0pE,EAAYj1D,QACjCo2D,EAAgBS,UAAY,6BAE5BR,EAAgB9qE,GAAK0pE,EAAYK,aACjCe,EAAgBQ,UAAY7B,EAE5BK,EAAe9pE,GAAK0pE,EAAYI,eAChCA,EAAewB,UAAY,mBAE3BzB,EAAa7pE,GAAK0pE,EAAYG,aAC9BA,EAAayB,UAAY,iBAEzB7rE,SAASK,KAAKY,YAAY+pE,GAC1BE,EAAyBjqE,YAAYkqE,GACrCD,EAAyBjqE,YAAYmqE,GACrCF,EAAyBjqE,YAAYoqE,GACrCH,EAAyBjqE,YAAYopE,GACrCa,EAAyBjqE,YAAYmpE,GACrCa,EAAYhqE,YAAYiqE,GACxBlrE,SAASmf,KAAKle,YAAYgqE,GAE1BA,EAAYjqE,iBAAiB,SAAS,SAAU0C,GAC9CA,EAAMooE,iBACR,IACF,CA3OAlnE,EAAgBoB,iCAAkC,EAuSlDtI,EAAOC,QAAU,CACfouE,YAhDF,SAAqBtsE,GAGnB,OAFAsrE,IAEO/d,EAAUvtD,EACnB,EA6CEutD,UAAWA,EACXgf,qBA/BF,SAA8BvsE,GAC5B,IAAImrE,EAAkB,IAAIhmE,EAEtBiV,EAAYpa,EAAQoa,UACpBD,EAAQna,EAAQma,QAAS,EACzBszC,EA7MG,CACL77C,IALAlJ,KAAKouB,OAAOn1B,OAAO4yC,YAAc6K,GAAgB,GAAKz9C,OAAO8yC,UAM7DrgB,KAJA1rB,KAAKouB,OAAOn1B,OAAO+yC,WAAa2K,GAAe,GAAK19C,OAAOizC,YAgNzD4Y,EAAgBpzC,sBAmBpB,OAjBA43B,EAAahtC,OACX,CACE8C,KARY,uBASZ4nC,iBACE8d,EAAgB,kBAAoBxvB,EAAO7jB,GAAS,QACtDw1B,aACE6d,EAAgB,uBAAyBxvB,EAAO7jB,GAAS,QAC3DvI,IAAK67C,EAAc77C,IACnBwiB,KAAMq5B,EAAcr5B,KACpBD,OAAQirB,EACRlrB,MAAOmrB,IAET,SAAUqO,GACRyd,EAAgB9pE,QAAQqsD,EAC1B,IAGKyd,CACT,EAME9rB,YAAaA,EACbD,aAAcA,EAGhB,EAAE,CAAC,4BAA4B,IAAI,mCAAmC,IAAI,oBAAoB,IAAI,mBAAmB,IAAI,8BAA8B,KAAK,IAAI,CAAC,SAASngD,EAAQhB,EAAOC,GACzL,aAEA,IAAIoc,EAAYrb,EAAQ,oBACpB6oE,EAAqB7oE,EAAQ,2BAC7Bm/B,EAAmBn/B,EAAQ,8BAC3B0jB,EAAY1jB,EAAQ,sBACpB0Z,EAAS1Z,EAAQ,mBACjB8kB,EAAc9kB,EAAQ,sBACtBqe,EAAmBre,EAAQ,6BAC3B2Z,EAAU3Z,EAAQ,kBAClB4Z,EAAwB5Z,EAAQ,mCAChCyK,EAAczK,EAAQ,2BACtByZ,EAAiBzZ,EAAQ,0BACzB2qE,EAAW3qE,EAAQ,oBACnBkG,EAAkBlG,EAAQ,+BAC1ButE,EAAcvtE,EAAQ,0BACtBwtE,EAAkBxtE,EAAQ,+BAC1BovB,EAAuBpvB,EAAQ,mCAM/BytE,EAAqBztE,EAAQ,eAC7B0tE,EAAiB1tE,EAAQ,sBAEzBob,EAAU,UAsBd,SAASmtD,EAAMxnE,GACb,IAAI6R,EAAO1S,KAEXA,KAAKytE,sBAAwB5sE,EAAQkqE,uBAAwB,EAC7D/qE,KAAK0tE,mBAAqB7sE,EAAQ2pE,oBAAqB,EACvDxqE,KAAKub,eAAiB1a,EAAQ2a,cAC9Bxb,KAAK2tE,qBAAqD,IAA/B9sE,EAAQoqE,mBACnCjrE,KAAK4tE,gBAA2C,IAA1B/sE,EAAQqqE,cAC9BlrE,KAAK6tE,eAAyC,IAAzBhtE,EAAQmqE,aAC7BhrE,KAAK8tE,oBAAmD,IAA9BjtE,EAAQktE,kBAClC/tE,KAAKguE,WAAantE,EAAQikE,UAC1B9kE,KAAKiuE,aAAeptE,EAAQoc,YAC5Bjd,KAAKkuE,mBAAqBrtE,EAAQ2nE,kBAClCxoE,KAAKmuE,sBAAwBttE,EAAQutE,qBACrCpuE,KAAKquE,qBAAuBxtE,EAAQkkE,oBAAsB,IAAIx0C,cAC9DvwB,KAAKsuE,sBAAwBtuE,KAAKquE,oBAClCruE,KAAKuuE,sBAAuD,IAAhC1tE,EAAQ2tE,oBACpCxuE,KAAKyuE,kBACHzuE,KAAK6tE,eAAiB7tE,KAAK0uE,eAAiB1uE,KAAKytE,sBACnDztE,KAAK2uE,yBACH3uE,KAAKytE,uBAAyBztE,KAAK0uE,aACrC1uE,KAAK4uE,sBAAwBnE,KAAczqE,KAAKuuE,qBAChDvuE,KAAK6uE,yBAA6D,IAAnChuE,EAAQiuE,uBACvC9uE,KAAK+uE,eAAiB,EACtB/uE,KAAKgvE,+BACHnuE,EAAQouE,gCAAiC,EAC3CjvE,KAAKkvE,gCACHruE,EAAQsuE,iCAAkC,EAC5CnvE,KAAKovE,WAAavuE,EAAQm8C,UAC1Bh9C,KAAKqvE,gBAAkBxuE,EAAQyuE,eAC/BtvE,KAAKuvE,gBAAkB1uE,EAAQs7C,eAC/Bn8C,KAAKwvE,WAAa3uE,EAAQ4uE,UAC1BzvE,KAAK0vE,gBAAkB7uE,EAAQ28C,eAC/Bx9C,KAAK2vE,aAAe9uE,EAAQ+uE,YAE5B5vE,KAAK6vE,iCACH7vE,KAAK4uE,wBAA0B5uE,KAAKsuE,qBAEtCnzD,EAAUgC,UACRnd,KAAKub,eACL,iCAAmCvM,OAAO7H,QAAQnH,KAAK6tE,iBAUrD7tE,KAAK8vE,wBACP30D,EAAUgC,UACRnd,KAAKub,eACL,qCAEOvb,KAAKyuE,kBACdzuE,KAAKub,eAAiBvb,KAAKub,eAAe9T,MAAK,SAAUoS,GACvD,IAAIxR,EAASwR,EAAOgC,mBAAmBC,qBAEvC,OAAOyxD,EAAmB,CACxB9tD,IACEpX,EAAO4S,UACP,QACAC,EACA,iCACF6G,YACyB,eAAvB1Z,EAAO0Z,YAA+B,aAAe,UACvD+iD,UAAWpyD,EAAKs7D,YAAc3lE,EAAO0hB,aAAarJ,WAClDqkD,mBAAoBryD,EAAK27D,oBACzBpxD,YAAavK,EAAKu7D,aAClBztE,QAASA,QACT0kE,WAAY,SAAU53C,EAAOnjB,GAC3B,OAAO0P,EACJK,QAAQ,CACPkH,IAAK,aACLjX,KAAM,CACJmjB,MAAOA,EACPQ,UAAW3jB,KAGd1C,MAAK,SAAUyV,GACd,OAAOA,EAAS/S,IAClB,GACJ,EACAgT,UAAW,SAAUpL,GACnBoJ,EAAUgC,UAAUzK,EAAK6I,eAAgBxJ,EAC3C,EACAb,aAAciN,IAEb1W,MAAK,SAAUsoE,GAOd,OANAr9D,EAAKs9D,sBAAwBD,EAC7B50D,EAAUgC,UACRzK,EAAK6I,eACL,gCAGK1B,CACT,IACCjT,OAAM,WAOL,OANAuU,EAAUgC,UACRzK,EAAK6I,eACL,mCAEF7I,EAAK+7D,mBAAoB,EAElB50D,CACT,GACJ,IACS7Z,KAAK6vE,mCAId7vE,KAAKiwE,uBArI6B,IAsIlCjwE,KAAKkwE,+BArI+B,IAuIpClwE,KAAKub,eAAiBvb,KAAKub,eAAe9T,MAAK,SAAUoS,GACvD,IAAIs2D,EAAuBC,EACvBC,EAAoB39D,EAAKk8D,sBACzB,gBACA,yBACAvmE,EAASwR,EAAOgC,mBA+CpB,OA7CAu0D,EAAkB9C,EACfF,qBAAqB,CACpBnyD,UAAW5S,EAAOyT,qBAAqBb,UACvCD,MAAO3S,EAAO0X,UAEftY,MAAK,SAAU8mD,GACd77C,EAAK49D,sBAAwB/hB,CAC/B,IACC3nD,OAAM,SAAU2pE,GACf,OAAOA,CACT,IAEF79D,EAAK89D,iCACHnoE,EAAOyT,qBAAqBiG,YAAYwO,cAE1C4/C,EAAwBz9D,EACrB+9D,2BAA2B52D,GAC3BpS,MAAK,WAMJ,OALA0T,EAAUgC,UACRzK,EAAK6I,eACL,SAAW80D,EAAoB,cAG1Bx2D,CACT,IACCjT,OAAM,SAAUG,GAMf,OALAoU,EAAUgC,UACRzK,EAAK6I,eACL,SAAW80D,EAAoB,iBAG1B7vE,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAOqwD,0CAA0C97D,KACvDrO,KAAM8Z,EAAOqwD,0CAA0CnqE,KACvD0W,QAASs6D,EAAkB3pE,GACvBA,EAAIsT,QAAQC,cAAc,GAAGlE,QAC7BoD,EAAOqwD,0CAA0CzzD,QACrDiE,QAAS,CACPC,cAAevT,KAIvB,IAEKf,EAAgBqB,IAAI,CAAC+oE,EAAiBD,IAC1C1oE,MAAK,SAAU2F,GACd,IAAIujE,EAAuBvjE,EAAQ,GAEnC,OAAO5M,QAAQ0B,QAAQyuE,EACzB,IACC/pE,OAAM,SAAUgqE,GAEf,OAAOpwE,QAAQ2B,OAAOyuE,EACxB,GACJ,IAEJ,CAEA,SAASF,EAAkB3pE,GACzB,OACEA,EAAIsT,SACJtT,EAAIsT,QAAQC,eACZvT,EAAIsT,QAAQC,cAAc,IAC1BvT,EAAIsT,QAAQC,cAAc,GAAGmM,YAC0B,eAAvD1f,EAAIsT,QAAQC,cAAc,GAAGmM,WAAWD,YACc,eAAtDzf,EAAIsT,QAAQC,cAAc,GAAGmM,WAAWmxC,SAE5C,CA+hCA,SAASiZ,EAAsBx7C,GAC7B,IAEIy7C,GAFkBz7C,GAAQ7yB,OAAOwR,SAASqhB,KAAK1kB,UAAU,IAAIgQ,MAAM,KAErCxQ,QAAO,SAAUmnC,EAAUC,GAC3D,IAAIC,EAAQD,EAAS52B,MAAM,KAKvBowD,EAAa94C,mBAAmBuf,EAAM,IAAInuC,QAAQ,MAAO,IACzDpH,EAAMitB,EAAqB6hD,GAC3B1wE,EAAQ43B,mBAAmBuf,EAAM,IAIrC,OAFAF,EAASr1C,GAAO5B,EAETi3C,CACT,GAAG,CAAC,GAMJ,OAJIw5B,EAAaE,aACfF,EAAanvE,GAAKmvE,EAAaE,YAG1BF,CACT,CAEA,SAASG,EAAe5J,GAKtB,MAAO,KAJPA,EAAWA,GAAY,IAIDh+D,QAAQ,IAAK,GACrC,CAuBA,SAAS6nE,IACP,IAAIC,EAWJ,YATsC,IAA3B3uE,OAAOpB,SAASgwE,OAEzBD,EAAmB,wBAC0B,IAA7B3uE,OAAOpB,SAASiwE,SAChCF,EAAmB,0BAC8B,IAAjC3uE,OAAOpB,SAASkwE,eAChCH,EAAmB,0BAGdA,CACT,CAlzCAnrE,EAAgBoB,iCAAkC,EAkNlDihE,EAAMzjE,UAAU6rE,2BAA6B,SAC3C52D,EACA03D,GAEA,IACIrnE,EAASsnE,EADT9+D,EAAO1S,KAGPyxE,EADgB53D,EAAOgC,mBACYC,qBAAqBiO,aACxD2nD,GAA4B,EAEhC,IAAK1xE,KAAK6vE,iCACR,OAAOrvE,QAAQ0B,UAGjB,GAAIlC,KAAKsuE,qBACPpkE,EAAU2P,EACPK,QAAQ,CACPkH,IAAK,aACLjX,KAAM,CACJmjB,MAAOkgD,EAAehJ,oCACtB12C,UAAW,CACTC,MAAO,CACLhM,YAAa/hB,KAAKwwE,iCAClB3zB,OAAQ,oBAKfp1C,MAAK,SAAUyV,GACd,OAAOA,EACJ/S,KAAKy9D,gCAAgCC,yBAC1C,QACG,CAEL,IACG7nE,KAAKgvE,gCACJhvE,KAAKkvE,mCACNuC,EAAmBxnD,4BAEpB,OAAOzpB,QAAQ2B,OAAO,IAAIoX,EAAeC,EAAO4wD,qBAG9CpqE,KAAKovE,YACPpvE,KAAKovE,WAAWptE,SAAQ,SAAUi4C,GAChCA,EAAK03B,cAAgB13B,EAAK03B,eAAiB,GAC7C,IAEFH,EAAqB,CACnBlC,eAAgBtvE,KAAKqvE,gBACrBlzB,eAAgBn8C,KAAKuvE,gBACrBE,UAAWzvE,KAAKwvE,WAChBhyB,eAAgBx9C,KAAK0vE,gBACrBE,YAAa5vE,KAAK2vE,aAClB3yB,UAAWh9C,KAAKovE,YAElBsC,EAA4BvxE,OAAO4B,KAAKyvE,GAAoB1iD,MAAK,SAC/D8iD,GAEA,YAAsCz/D,IAA/Bq/D,EAAmBI,EAC5B,IACA1nE,EAAU2P,EACPK,QAAQ,CACPkH,IAAK,aACLjX,KAAM,CACJmjB,MAAOkgD,EAAejJ,6BACtBz2C,UAAW,CACTC,MAAO,CACLg3C,mBAAoB/kE,KAAKquE,oBACzBxxB,OAAQ,WACRkrB,eAAgB,aAChB9qD,YAAajd,KAAKiuE,aAClB4D,gBAAiB,CACf5C,8BACEjvE,KAAKgvE,+BACPG,+BACEnvE,KAAKkvE,gCACPsC,mBAAoBE,EAChBF,OACAr/D,QAMb1K,MAAK,SAAUyV,GACd,OAAOA,EAAS/S,KAAK89D,0BAA0BC,mBACjD,GACJ,CAEA,OAAOh+D,EAAQzC,MAAK,SAAU0gE,GAC5B,IACI2J,EAA0B,OADZ,IAAIzgD,KAAK82C,EAAQlB,WAAa,IAAI51C,KAAK82C,EAAQjB,YAMjEthC,aAAalzB,EAAKq/D,+BAClBr/D,EAAKq/D,8BAAgCnoE,YAAW,WAC1C8I,EAAKs/D,yBAGTt/D,EAAK+9D,2BAA2B52D,GAAQ,EAC1C,GAAGi4D,GAECP,GAAkC7+D,EAAKs/D,0BAI3Ct/D,EAAKu/D,2BAA6B9J,EAAQtvD,OAC1CnG,EAAKw/D,uBAAyB/J,EAAQxmE,GACxC,GACF,EAEA0mE,EAAMzjE,UAAUutE,UAAY,SAAU1yD,GAChCzf,KAAKkuE,mBAq/BP1rE,OAAOC,UAAUwf,UACjB,mBAAmBtf,KAAKH,OAAOC,UAAUwf,WAp/BvC9G,EAAUgC,UACRnd,KAAKub,eACL,qCAGF/Y,OAAOwR,SAASD,KAAO0L,GAEvBjd,OAAOmwC,aAC4B,mBAA5BnwC,OAAOmwC,YAAY3rB,MAE1B7L,EAAUgC,UACRnd,KAAKub,eACL,sCAEF/Y,OAAOmwC,YAAY3rB,KAAKvH,KAExBtE,EAAUgC,UAAUnd,KAAKub,eAAgB,iCACzC/Y,OAAOwkB,KAAKvH,KAGdtE,EAAUgC,UAAUnd,KAAKub,eAAgB,iCAGvC0jB,EAAiB6pC,iCACjB9oE,KAAKoyE,6BAEL5vE,OAAOwR,SAASD,KAAO0L,EAEvBjd,OAAOwkB,KAAKvH,GAGlB,EAEA4oD,EAAMzjE,UAAUkhB,OAAS,WACvB,OAAO9lB,KAAKub,eAAe9T,KACzB,SAAUoS,GACR,IAAIkF,EAAgBlF,EAAOgC,mBACvBiZ,EAAS,CAAC,EACVu9C,EACFryE,KAAKkuE,oBACL1rE,OAAOwR,SAASD,KAAK1K,QAAQ7G,OAAOwR,SAASqhB,KAAM,IACjDo8C,EAAqB1yD,EAAcjD,qBAAqBiO,aACxDlI,EAAoB9C,EAAc8C,kBAClCmI,EAAcynD,EAAmBznD,YACjCsoD,EAAgB,CAClBt4D,MAAO,CACLoI,QAASP,EAAkBiC,WAC3B5B,YAAaL,EAAkBK,YAC/BD,SAAUJ,EAAkBI,SAC5BE,UAAWN,EAAkBM,YAiDjC,OA7CAniB,KAAKq5C,SAAWt6B,EAAcgB,QAC9B/f,KAAKo5C,WAAar6B,EAAcjD,qBAAqBb,UAErDo3D,EAAaA,EAAWhpE,QAAQ,MAAO,IAGnCrJ,KAAKkyE,yBACHlyE,KAAKsuE,qBAKPtkD,GAAe,SAAWhqB,KAAKkyE,uBAE/Bp9C,EAAOy9C,YAAcvyE,KAAKkyE,wBAI1BlyE,KAAKwyE,4BAA8BxyE,KAAK2uE,0BACtC3uE,KAAK2uE,2BACP0D,EACEryE,KAAKo5C,WAAa,QAAUl+B,EAAU,6BAE1C4Z,EAAO,aAAeu9C,EAAa,kBACnCv9C,EAAO,YAAcu9C,EAAa,iBAClCv9C,EAAO,WAAau9C,EAAa,kBAEjCv9C,EAAO,aAAe,OACtBA,EAAO,YAAc,OACrBA,EAAO,WAAa,QAGjB90B,KAAK6uE,wBAGR/5C,EAAOg6C,uBAAyB,EAFhCh6C,EAAOg6C,uBAAyB,EAKlCh6C,EAAOvyB,GAAKC,OAAOC,UAAUC,UAC7BoyB,EAAO29C,sBACLzyE,KAAKguE,YAAcyD,EAAmB/wD,WACxCoU,EAAO49C,uBAAyB1oD,EAChC8K,EAAO69C,sBAAwBlB,EAAmB1vD,YAClD+S,EAAO89C,mBAAqBj1D,KAAK3c,KAAKC,UAAUqxE,IAG9CjF,EAAY,CACV9C,wBAAyBvqE,KAAK2uE,yBAC9BnE,kBAAmBxqE,KAAK0tE,qBAE1B,IACA9oD,EAAY3jB,UAAU6zB,EAE1B,EAAEnZ,KAAK3b,MAEX,EAUAqoE,EAAMzjE,UAAU+jE,mBAAqB,WACnC,OAAOA,EAAmBA,mBAAmB,CAC3CsC,mBAAoBjrE,KAAK2tE,oBACzBzC,cAAelrE,KAAK4tE,eACpB5C,aAAchrE,KAAK6tE,cACnB9C,qBAAsB/qE,KAAKytE,uBAE/B,EAUApF,EAAMzjE,UAAUkrE,sBAAwB,WACtC,OAAO9vE,KAAK6yE,wBACd,EAIAxK,EAAMzjE,UAAUiuE,uBAAyB,SAAUx9C,GACjD,IAAIP,EAAS+7C,EAAsBx7C,GAEnC,YAEE,KADQP,EAAOg+C,cAAgBh+C,EAAOi+C,YAAcj+C,EAAOk+C,YAG/D,EAEA3K,EAAMzjE,UAAU4tE,yBAA2B,WAIzC,QAAIxyE,KAAKkuE,qBASDluE,KAAK4uE,qBACf,EAEAvG,EAAMzjE,UAAU8pE,WAAa,WAC3B,QAASzvC,EAAiB/7B,SAAW+7B,EAAiBh7B,YACxD,EAwCAokE,EAAMzjE,UAAU2Y,SAAW,SAAU1c,GACnC,IAAI6R,EAAO1S,KAKX,OAFAa,EAAUA,GAAW,CAAC,GAEe,IAAjCb,KAAKgyE,wBACAxxE,QAAQ2B,OACb,IAAIoX,EAAeC,EAAO4vD,qCAI9BppE,KAAKgyE,yBAA0B,GAC3BhyE,KAAKyuE,kBASezuE,KAAKizE,0BAA0BpyE,GAC5Cb,KAAK2uE,yBAWQ3uE,KAAKkzE,gCAClBlzE,KAAK4uE,sBAcQ5uE,KAAKmzE,qCAazBnzE,KAAKozE,0CAA0CvyE,IAIhD4G,MAAK,SAAU2K,GACd,OAAOM,EAAK6I,eACT9T,MAAK,SAAUoS,GACd,OAAOnH,EAAK+9D,2BAA2B52D,EACzC,IACCpS,MAAK,WAGJ,OAFAiL,EAAKs/D,yBAA0B,EAkrBzC,SAA+B5/D,GAC7B,IAAIihE,EAAmB,CACrBt5D,MAAO3H,EAAQ6H,mBACflM,KAAM,eACNsM,QAAS,CACPgtD,SAAU4J,EAAe7+D,EAAQi1D,UACjCiM,iBAAkBlhE,EAAQzQ,KAW9B,OAPIyQ,EAAQ8sC,YACVm0B,EAAiBh5D,QAAQ6kC,UAAY9sC,EAAQ8sC,UAC7Cm0B,EAAiBh5D,QAAQ6kC,UAAUooB,SAAW2J,EAC5C7+D,EAAQ8sC,UAAUooB,WAIf+L,CACT,CAlsBiBE,CAAsBnhE,EAC/B,GACJ,IACCxL,OAAM,SAAUG,GACf,OAAO2L,EAAK6I,eACT9T,MAAK,SAAUoS,GAId,OAAOnH,EAAK+9D,2BAA2B52D,EACzC,IACCpS,MAAK,WAGJ,OAFAiL,EAAKs/D,yBAA0B,EAExBxxE,QAAQ2B,OAAO4E,EACxB,GACJ,IACJ,EA8BAshE,EAAMzjE,UAAUknE,mBAAqB,WACnC,OAAK9rE,KAAKgyE,yBAMVhyE,KAAKwzE,iCAMDxzE,KAAKyzE,kBACPzzE,KAAKyzE,iBAAiBtxE,OACpB,IAAIoX,EAAeC,EAAOowD,0CAIvBppE,QAAQ6G,IAAI,CACjBrH,KAAK0zE,8BACL1zE,KAAK2zE,gCAnBEnzE,QAAQ2B,OACb,IAAIoX,EAAeC,EAAO6vD,uCAoBhC,EAEAhB,EAAMzjE,UAAUsuE,8BAAgC,WAC9C,IAAIxgE,EAAO1S,KAKX,OAHAmb,EAAUgC,UAAUzK,EAAK6I,eAAgB,kCACzCvb,KAAKyzE,iBAAmB,IAAIztE,EAErBhG,KAAK8lB,SAASre,MAAK,SAAUgY,GAiClC,OAhCA6tD,EACGH,YAAY,CACXtB,qBACEn5D,EAAKkhE,2CAA2Cj4D,KAAKjJ,GACvDo5D,mBAAoBp5D,EAAKo5D,mBAAmBnwD,KAAKjJ,GACjD67C,qBAAsB77C,EAAK49D,sBAC3B1E,SAAUnsD,EACVzE,MAAOtI,EAAK2mC,SACZ0yB,0BAA2Br5D,EAAKmhE,2BAA2Bl4D,KAAKjJ,KAEjEjL,MAAK,SAAU2K,GACd+I,EAAUgC,UACRzK,EAAK6I,eACL,oCAGF7I,EAAK+gE,iBAAiBvxE,QAAQ,CAC5B+X,mBAAoB7H,EAAQm1D,gBAC5BF,SAAUj1D,EAAQk1D,SAClBpoB,UAAW9sC,EAAQ8sC,UACnBv9C,GAAI+Q,EAAKw/D,wBAEb,IACCtrE,OAAM,SAAUG,GACfoU,EAAUgC,UACRzK,EAAK6I,eACL,oCAGF7I,EAAK+gE,iBAAiBtxE,OAAO4E,EAC/B,IAEK2L,EAAK+gE,gBACd,GACF,EAEApL,EAAMzjE,UAAUkvE,2BAA6B,SAAUnyE,GACrD,IAAI+Q,EAAO1S,KAEX,OAAOA,KAAKub,eACT9T,MAAK,SAAUoS,GACd,IAAIyT,EAAQ5a,EAAK47D,qBACbd,EAAepJ,0CACfoJ,EAAerJ,mCAEnB,OAAOtqD,EAAOK,QAAQ,CACpBkH,IAAK,aACLjX,KAAM,CACJmjB,MAAOA,EACPQ,UAAW,CACTnsB,GAAIA,KAIZ,IACC8F,MAAK,SAAUyV,GACd,OAAOA,EAAS/S,KAAKs8B,IACvB,GACJ,EASA4hC,EAAMzjE,UAAUgvE,2CAA6C,SAC3DG,GAEA,IAAIrhE,EAAO1S,KAEX,OAAO0S,EAAKmhE,6BAA6BpsE,MAAK,SAAUg/B,GACtD,IAAIutC,EAAevtC,EAAK5tB,OAExB,GAAIm7D,IAAiBthE,EAAKu/D,2BAQxB,OAPAv/D,EAAKu/D,2BAA6B+B,EAElC74D,EAAUgC,UACRzK,EAAK6I,eACL,0CAGMy4D,GACN,IAAK,WACH,OAAOxzE,QAAQ0B,QAAQukC,GACzB,IAAK,WACH,OAAOjmC,QAAQ2B,OACb,IAAIoX,EAAeC,EAAOiwD,0BAE9B,IAAK,SACH,OAAOjpE,QAAQ2B,OACb,IAAIoX,EAAeC,EAAO2wD,4BAMlC,OAAO,IAAI3pE,SAAQ,SAAU0B,EAASC,GACpC,OAAI4xE,EAAarhE,EAAKq8D,gBACpBgF,IAEOrhE,EACJkhE,2CAA2CG,GAC3CtsE,KAAKvF,GACL0E,MAAMzE,IAGJA,EAAO,IAAIoX,EAAeC,EAAO2wD,2BAC1C,GACF,GACF,EAEA9B,EAAMzjE,UAAUivE,2BAA6B,WAG3C,OAFW7zE,KAGR8zE,2BAHQ9zE,KAGwBkyE,wBAChCtrE,OAAM,SAAUqtE,GACf,OAAOzzE,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAOkwD,oBAAoB37D,KACjCrO,KAAM8Z,EAAOkwD,oBAAoBhqE,KACjC0W,QAASoD,EAAOkwD,oBAAoBtzD,QACpCiE,QAAS45D,IAGf,IACCxsE,MAAK,SAAUg/B,GACd,OAAOjmC,QAAQ0B,QAAQukC,EACzB,GACJ,EAEA4hC,EAAMzjE,UAAUsvE,qBAAuB,WACrC,IAAIxhE,EAAO1S,KAEX,OAAIqxB,KAAKoF,MAAQ/jB,EAAKyhE,+BACb3zE,QAAQ2B,OACb,IAAIoX,EAAeC,EAAOywD,4CAIvBjqE,KAAK8zE,2BAA2B9zE,KAAKkyE,wBACzCtrE,OAAM,SAAUqtE,GACf,OAAOzzE,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAOswD,gDAAgD/7D,KAC7DrO,KAAM8Z,EAAOswD,gDAAgDpqE,KAC7D0W,QACEoD,EAAOswD,gDAAgD1zD,QACzDiE,QAAS,CACPC,cAAe25D,KAIvB,IACCxsE,MAAK,SAAUg/B,GACd,IAAIghC,EAAYhhC,EAAK5tB,OAErB,GAAI4uD,IAAc/0D,EAAKu/D,2BASrB,OARAv/D,EAAKu/D,2BAA6BxK,EAElCtsD,EAAUgC,UACRzK,EAAK6I,eACL,8CACEksD,EAAU/+C,eAGN++C,GACN,IAAK,UACL,IAAK,SACL,IAAK,WACH,OAAOjnE,QAAQ2B,OACb,IAAIoX,EACFC,EAAO,qCAAuCiuD,KAGpD,IAAK,WACH,OAAOjnE,QAAQ0B,QAAQukC,GAS7B,OAAO,IAAIjmC,SAAQ,SAAU0B,EAASC,GACpCyH,YAAW,WACT8I,EAAKwhE,uBAAuBzsE,KAAKvF,GAAS0E,MAAMzE,EAClD,GAAGuQ,EAAKu9D,uBACV,GACF,GACJ,EAEA5H,EAAMzjE,UAAUuuE,mCAAqC,WACnD,IAAIzgE,EAAO1S,KAkCX,OAhCAmb,EAAUgC,UACRnd,KAAKub,eACL,sCAGFvb,KAAKm0E,+BACH9iD,KAAKoF,MAAQz2B,KAAKkwE,+BACpBlwE,KAAKyzE,iBAAmB,IAAIztE,EAE5BhG,KAAKk0E,uBACFzsE,MAAK,SAAU2K,GACd+I,EAAUgC,UACRzK,EAAK6I,eACL,wCAGF7I,EAAK+gE,iBAAiBvxE,QAAQ,CAC5B+X,mBAAoB7H,EAAQm1D,gBAC5BF,SAAUj1D,EAAQk1D,SAClBpoB,UAAW9sC,EAAQ8sC,UACnBv9C,GAAI+Q,EAAKw/D,wBAEb,IACCtrE,OAAM,SAAUG,GACfoU,EAAUgC,UACRzK,EAAK6I,eACL,wCAGF7I,EAAK+gE,iBAAiBtxE,OAAO4E,EAC/B,IAEK/G,KAAK8lB,SAASre,MAAK,SAAUgY,GAGlC,OAFA/M,EAAKy/D,UAAU1yD,GAER/M,EAAK+gE,gBACd,GACF,EAEApL,EAAMzjE,UAAUwtE,2BAA6B,WAC3C,QAAKnzC,EAAiB/7B,WAIU,IAA5BlD,KAAK0tE,oBAIF1tE,KAAK8tE,mBACd,EAEAzF,EAAMzjE,UAAUwuE,0CAA4C,SAAUvyE,GACpE,IACIuzE,EAA4BC,EAD5B3hE,EAAO1S,KAGX,GAAIA,KAAK8vE,wBACP,OAAO9vE,KAAKs0E,+BAQd,SAASC,EAAal/C,GACpB,IAAIhf,EAEJ3D,EACG4hE,6BAA6Bj/C,GAC7BzuB,OAAM,SAAUG,GACfsP,EAAQtP,CACV,IACCU,MAAK,SAAUkR,GAEXjG,EAAKy7D,uBACN3rE,OAAOwR,SAASqhB,OAAS3iB,EAAK8hE,gBAE9BhyE,OAAOwR,SAASqhB,KAAO3iB,EAAK8hE,eAE9B9hE,EAAK8gE,iCAEDn9D,EACF3D,EAAK+gE,iBAAiBtxE,OAAOkU,GAE7B3D,EAAK+gE,iBAAiBvxE,QAAQyW,UAEzBjG,EAAK+gE,gBACd,GACJ,CAgCA,OA7DAt4D,EAAUgC,UAAUnd,KAAKub,eAAgB,+BACzCvb,KAAKyzE,iBAAmB,IAAIztE,EAE5BhG,KAAKw0E,cAAgBhyE,OAAOwR,SAASqhB,KA8BrCr1B,KAAKy0E,sBAAwB,SAAUx1E,GACrC,IAAIo2B,EAAOp2B,EAAEy1E,OAAO/zD,MAAM,KAAK,GAE1BjO,EAAKmgE,uBAAuBx9C,KAIjC++C,GAA6B,EAC7BxuC,aAAayuC,GACbE,EAAal/C,GACf,EAEA7yB,OAAOJ,iBAAiB,aAAcpC,KAAKy0E,uBAAuB,GAKlEz0E,KAAK20E,0BAA4B,WAC/B,IAAIC,EACF/zE,EAAQg0E,qBAAuBrxD,EAAUwlD,8BAEtCxmE,OAAOpB,SAASgwE,QACdgD,IACHC,EAAkCzqE,WAAW2qE,EAAcK,GAGjE,EAEO50E,KAAK8lB,SAASre,MAAK,SAAUgY,GAWlC,OAVA/M,EAAKy/D,UAAU1yD,GAGf7V,YAAW,WACTpH,OAAOpB,SAASgB,iBACd8uE,IACAx+D,EAAKiiE,0BAET,GAAGnxD,EAAUulD,wCAENr2D,EAAK+gE,gBACd,GACF,EAEApL,EAAMzjE,UAAUquE,0BAA4B,WAC1C,IAAIvgE,EAAO1S,KAkDX,OAhDAmb,EAAUgC,UAAUnd,KAAKub,eAAgB,gCAEzCvb,KAAKyzE,iBAAmB,IAAIztE,EAE5BhG,KAAKub,eACF9T,MAAK,WACJ,OAAOiL,EAAKs9D,sBAAsBzK,mBACpC,IACC99D,MAAK,SAAU2K,GACdM,EAAKs9D,sBAAsB3J,kBAE3BlrD,EAAUgC,UACRzK,EAAK6I,eACL,kCAGF7I,EAAK+gE,iBAAiBvxE,QAAQkQ,EAChC,IACCxL,OAAM,SAAUG,GACfoU,EAAUgC,UACRzK,EAAK6I,eACL,kCAGE7I,EAAKs9D,uBACPt9D,EAAKs9D,sBAAsB3J,kBAGzBt/D,GAAsB,sBAAfA,EAAIuR,OACb5F,EAAK+gE,iBAAiBtxE,OACpB,IAAIoX,EAAeC,EAAOmwD,yBAM9Bj3D,EAAK+gE,iBAAiBtxE,OACpB,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAOosD,4BAA4B73D,KACzCrO,KAAM8Z,EAAOosD,4BAA4BlmE,KACzC0W,QAASoD,EAAOosD,4BAA4BxvD,QAC5CiE,QAAS,CACPC,cAAevT,KAIvB,IAEK/G,KAAKyzE,gBACd,EAEApL,EAAMzjE,UAAU8uE,4BAA8B,WAC5C,IAAIhhE,EAAO1S,KAEX,OAAOA,KAAKub,eAAe9T,MAAK,SAAUoS,GACxC,IAAIyT,EAEJ,OAAI5a,EAAKw/D,wBACP5kD,EAAQ5a,EAAK47D,qBACTd,EAAelJ,oCACfkJ,EAAenJ,6BAEZxqD,EAAOK,QAAQ,CACpBkH,IAAK,aACLjX,KAAM,CACJmjB,MAAOA,EACPQ,UAAW,CACTC,MAAO,CACLpsB,GAAI+Q,EAAKw/D,uBACTr5D,OAAQ,iBAOXrY,QAAQ0B,SACjB,GACF,EAEAmmE,EAAMzjE,UAAU+uE,2BAA6B,WAC3C,IAAIjhE,EAAO1S,KAEX,OAAOA,KAAKub,eAAe9T,MAAK,WAK9B,OAJIiL,EAAKs9D,uBACPt9D,EAAKs9D,sBAAsBjK,iCAAiC,YAGvDvlE,QAAQ0B,SACjB,GACF,EAcAmmE,EAAMzjE,UAAU0O,SAAW,WACzB,IAAIZ,EAAO1S,KAIX,OAFAA,KAAKwzE,iCAEExzE,KAAKub,eAAe9T,KACzB,WACMiL,EAAKs9D,uBACPt9D,EAAKs9D,sBAAsB18D,WAG7BsyB,aAAalzB,EAAKq/D,+BAClBr/D,EAAKghE,8BAELh6D,EAAsB1Z,KAAMyZ,EAAQ4uD,EAAMzjE,WAC5C,EAAE+W,KAAK3b,MAEX,EAEAqoE,EAAMzjE,UAAU4uE,+BAAiC,WAC/ChxE,OAAOiS,oBAAoB,aAAczU,KAAKy0E,uBAC9CjyE,OAAOpB,SAASqT,oBACdy8D,IACAlxE,KAAK20E,kCAGA30E,KAAK20E,iCACL30E,KAAKy0E,qBACd,EAcApM,EAAMzjE,UAAU0vE,6BAA+B,SAAUj/C,GACvD,IAAI3iB,EAAO1S,KACP80B,EAAS+7C,EAAsBx7C,GAKnC,OAAO,IAAI70B,SAAQ,SAAU0B,EAASC,GAC/BuQ,EAAK47D,qBA+BCx5C,EAAOg+C,cAChB33D,EAAUgC,UACRzK,EAAK6I,eACL,kCAGFrZ,EAAQ4yB,IACCA,EAAOi+C,YAChB53D,EAAUgC,UAAUzK,EAAK6I,eAAgB,gCACzCpZ,EACE,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAO8vD,iBAAiBv7D,KAC9BrO,KAAM8Z,EAAO8vD,iBAAiB5pE,KAC9B0W,QAASoD,EAAO8vD,iBAAiBlzD,QACjCiE,QAAS,CACPC,cAAe,CACblE,QAAS6hB,mBAAmBnD,EAAOsT,cACnC1oC,KAAMo1B,EAAOggD,gBAKZhgD,EAAOk+C,aAChB73D,EAAUgC,UAAUzK,EAAK6I,eAAgB,iCACzCpZ,EAAO,IAAIoX,EAAeC,EAAO+vD,uBAGjCpuD,EAAUgC,UACRzK,EAAK6I,eACL,yCAEFpZ,EAAO,IAAIoX,EAAeC,EAAOgwD,kBA7DjC92D,EACGwhE,uBACAzsE,MAAK,SAAU2K,GAMd,OALA+I,EAAUgC,UACRzK,EAAK6I,eACL,+DAGKrZ,EAAQ,CACb+X,mBAAoB7H,EAAQm1D,gBAC5BF,SAAUj1D,EAAQk1D,SAClBpoB,UAAW9sC,EAAQ8sC,UACnBv9C,GAAI+Q,EAAKw/D,wBAEb,IACCtrE,OAAM,SAAUG,GAEbA,EAAIgH,OAASyL,EAAOwwD,2CAA2Cj8D,MAG/D5L,EAAO4E,GAGToU,EAAUgC,UACRzK,EAAK6I,eACL,6DAGFrZ,EAAQ4yB,EACV,IAmCJpiB,EAAKqiE,0BACP,GACF,EAEA1M,EAAMzjE,UAAUmwE,yBAA2B,WACrC/0E,KAAKmuE,uBAKgC,mBAAhC3rE,OAAOwyE,QAAQC,cACtBzyE,OAAOwR,SAASqhB,MAEhB2/C,QAAQE,UACN,CAAC,EACD,GACA1yE,OAAOwR,SAASD,KAAK2C,MAAM,EAAGlU,OAAOwR,SAASD,KAAK9Q,QAAQ,MAGjE,EAiFAnE,EAAOC,QAAUwL,EAAYE,cAAc49D,EAE3C,EAAE,CAAC,mBAAmB,IAAI,yBAAyB,IAAI,kCAAkC,IAAI,mBAAmB,IAAI,4BAA4B,IAAI,iBAAiB,IAAI,qBAAqB,IAAI,kCAAkC,IAAI,cAAc,IAAI,qBAAqB,IAAI,6BAA6B,IAAI,qBAAqB,IAAI,kBAAkB,IAAI,yBAAyB,IAAI,0BAA0B,IAAI,8BAA8B,IAAI,8BAA8B,GAAG,0BAA0B,KAAK,IAAI,CAAC,SAASvoE,EAAQhB,EAAOC,GAC7hB,aAqBA,IAAIwa,EAAiBzZ,EAAQ,0BAE7BhB,EAAOC,QAAU,CACfo2E,0BAA2B,CACzBpnE,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,4BACN0W,QAAS,mDAEXg/D,oCAAqC,CACnCrnE,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,sCACN0W,QAAS,mCAEXi/D,+BAAgC,CAC9BtnE,KAAMwL,EAAehL,MAAMkM,SAC3B/a,KAAM,iCACN0W,QAAS,yDAEXk/D,2BAA4B,CAC1BvnE,KAAMwL,EAAehL,MAAMmM,QAC3Bhb,KAAM,6BACN0W,QACE,uEAIN,EAAE,CAAC,yBAAyB,MAAM,IAAI,CAAC,SAAStW,EAAQhB,EAAOC,GAC/D,aAOA,IAAI4b,EAA6B7a,EAAQ,uCACrCyZ,EAAiBzZ,EAAQ,0BACzB8a,EAAuB9a,EAAQ,iCAC/B+a,EAAkB/a,EAAQ,4BAC1By1E,EAAez1E,EAAQ,mBACvBqb,EAAYrb,EAAQ,oBACpB0Z,EAAS1Z,EAAQ,YAEjByK,EAAczK,EAAQ,2BA8C1BhB,EAAOC,QAAU,CACf8G,OAAQ0E,GApCV,SAAgB1J,GACd,IAAI8H,EAAO,gBAEX,OAAOgS,EACJG,OAAO,CACNnS,KAAMA,EACNkR,OAAQhZ,EAAQgZ,OAChBkB,cAAela,EAAQka,gBAExBtT,MAAK,WACJ,OAAOmT,EAAqB/U,OAAO,CACjCkV,cAAela,EAAQka,cACvBlB,OAAQhZ,EAAQgZ,OAChBmB,MAAOna,EAAQma,MACfC,UAAWJ,EAAgBhV,OAAOhF,EAAQka,eAC1CpS,KAAMA,GAEV,IACClB,MAAK,SAAUoS,GAGd,OAFAhZ,EAAQgZ,OAASA,EAGdhZ,EAAQgZ,OAAOgC,mBAAmBC,qBAAqBkM,cAO1D7M,EAAUgC,UAAUtc,EAAQgZ,OAAQ,4BAE7B,IAAI07D,EAAa10E,IAPfL,QAAQ2B,OACb,IAAIoX,EAAeC,EAAO27D,2BAOhC,GACJ,IAQEj6D,QArDY,UAwDd,EAAE,CAAC,mBAAmB,IAAI,sCAAsC,IAAI,yBAAyB,IAAI,2BAA2B,IAAI,gCAAgC,IAAI,WAAW,IAAI,kBAAkB,IAAI,0BAA0B,KAAK,IAAI,CAAC,SAASpb,EAAQhB,EAAOC,GACrQ,aAEA,IAAIwa,EAAiBzZ,EAAQ,0BACzBqb,EAAYrb,EAAQ,oBACpB0Z,EAAS1Z,EAAQ,YACjB0tC,EAAY1tC,EAAQ,qBACpB2Z,EAAU3Z,EAAQ,kBAClB4Z,EAAwB5Z,EAAQ,mCAChCyK,EAAczK,EAAQ,2BACtBuoB,EAAuB,CACzBm6B,KAAM,OACNC,WAAY,aACZC,SAAU,WACV,mBAAoB,QA0DtB,SAAS6yB,EAAa10E,GACpBb,KAAK4Z,QAAU/Y,EAAQgZ,MACzB,CA+BA07D,EAAa3wE,UAAU4wE,kBAAoB,SAAU30E,GACnD,IAAI+xC,EACA92B,EACF9b,KAAK4Z,QAAQiC,mBAAmBC,qBAC9B25D,EAA4B35D,EAAqBkM,aAErD,IAAKnnB,EACH,MAAM,IAAI0Y,EAAeC,EAAO47D,qCAkBlC,OAfAxiC,EAAcpF,EAAU3sC,IACZ0pB,OAASqoB,EAAYroB,QAAUkrD,EAA0BlrD,OACrEqoB,EAAYnoB,cAAgBgrD,EAA0BhrD,cACtDmoB,EAAYloB,iBACVkoB,EAAYloB,kBAAoB+qD,EAA0B/qD,iBAC5DkoB,EAAY8iC,SAAW9iC,EAAY8iC,UAAY,CAAC,EAChD9iC,EAAY8iC,SAASC,UAAY,OACjC/iC,EAAY8iC,SAAS3gB,QAAUniB,EAAY8iC,SAAS3gB,SAAW,CAAC,EAE3DniB,EAAY8iC,SAAS3gB,QAAQ6gB,aAChChjC,EAAY8iC,SAAS3gB,QAAQ6gB,WAC3B95D,EAAqBkM,aAAauB,mBAjDrBpZ,QAAO,SAAUmY,EAAKva,GACrC,OAAIsa,EAAqBnhB,eAAe6G,GAC/Bua,EAAI1V,OAAOyV,EAAqBta,IAGlCua,CACT,GAAG,KA+CIsqB,CACT,EAYA2iC,EAAa3wE,UAAU2Y,SAAW,SAAUw3C,GAC1C,IAAIriD,EAAO1S,KAEX,OAAK+0D,EAAQ8gB,QAAW9gB,EAAQ+gB,QAAW/gB,EAAQghB,eAM5C/1E,KAAK4Z,QACTM,QAAQ,CACPnP,OAAQ,OACRoP,SAAU,sCACVhQ,KAAM,CACJ6P,MAAO,CACL9G,OAAQ,iBAEV8iE,iBAAkB,CAChBC,OAAQlhB,EAAQ8gB,OAChBK,qBAAsBnhB,EAAQghB,eAC9BI,aAAcphB,EAAQ+gB,WAI3BruE,MAAK,SAAUyV,GAGd,OAFA/B,EAAUgC,UAAUzK,EAAKkH,QAAS,mCAE3BsD,EAASk5D,kBAAkB,EACpC,IACCxvE,OAAM,SAAUG,GAGf,OAFAoU,EAAUgC,UAAUzK,EAAKkH,QAAS,gCAE3BpZ,QAAQ2B,OACb,IAAIoX,EAAe,CACjBxL,KAAMyL,EAAO87D,2BAA2BvnE,KACxCrO,KAAM8Z,EAAO87D,2BAA2B51E,KACxC0W,QAASoD,EAAO87D,2BAA2Bl/D,QAC3CiE,QAAS,CACPC,cAAevT,KAIvB,IAtCOvG,QAAQ2B,OACb,IAAIoX,EAAeC,EAAO67D,gCAsChC,EAcAE,EAAa3wE,UAAU0O,SAAW,WAGhC,OAFAoG,EAAsB1Z,KAAMyZ,EAAQ87D,EAAa3wE,YAE1CpE,QAAQ0B,SACjB,EAEApD,EAAOC,QAAUwL,EAAYE,cAAc8qE,EAE3C,EAAE,CAAC,mBAAmB,IAAI,yBAAyB,IAAI,kCAAkC,IAAI,oBAAoB,IAAI,iBAAiB,IAAI,WAAW,IAAI,0BAA0B,MAAM,CAAC,EAAE,CAAC,KAljxBoL,CAkjxB9K,I","sources":["webpack://www.bowling.com/./node_modules/braintree-web/dist/browser/index.js"],"sourcesContent":["(function(f){if(typeof exports===\"object\"&&typeof module!==\"undefined\"){module.exports=f()}else if(typeof define===\"function\"&&define.amd){define([],f)}else{var g;if(typeof window!==\"undefined\"){g=window}else if(typeof global!==\"undefined\"){g=global}else if(typeof self!==\"undefined\"){g=self}else{g=this}g.braintree = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;idata
, is the returned server data. If no callback is provided, `getRewardsBalance` returns a promise that resolves with the server data.\n * @returns {(Promise|void)} Returns a promise if no callback is provided.\n * @example\n * var americanExpress = require('braintree-web/american-express');\n *\n * americanExpress.create({client: clientInstance}, function (createErr, americanExpressInstance) {\n * var options = {nonce: existingBraintreeNonce};\n * americanExpressInstance.getRewardsBalance(options, function (getErr, payload) {\n * if (getErr || payload.error) {\n * // Handle error\n * return;\n * }\n *\n * console.log('Rewards amount: ' + payload.rewardsAmount);\n * });\n * });\n */\nAmericanExpress.prototype.getRewardsBalance = function (options) {\n var nonce = options.nonce;\n var data;\n\n if (!nonce) {\n return Promise.reject(\n new BraintreeError({\n type: errors.AMEX_NONCE_REQUIRED.type,\n code: errors.AMEX_NONCE_REQUIRED.code,\n message: \"getRewardsBalance must be called with a nonce.\",\n })\n );\n }\n\n data = assign(\n {\n _meta: { source: \"american-express\" },\n paymentMethodNonce: nonce,\n },\n options\n );\n\n delete data.nonce;\n\n return this._client\n .request({\n method: \"get\",\n endpoint: \"payment_methods/amex_rewards_balance\",\n data: data,\n })\n .catch(function (err) {\n return Promise.reject(\n new BraintreeError({\n type: errors.AMEX_NETWORK_ERROR.type,\n code: errors.AMEX_NETWORK_ERROR.code,\n message:\n \"A network error occurred when getting the American Express rewards balance.\",\n details: {\n originalError: err,\n },\n })\n );\n });\n};\n\n/**\n * Gets the Express Checkout nonce profile given a nonce from American Express.\n * @public\n * @param {object} options Request options\n * @param {string} options.nonce An existing nonce from American Express (note that this is not a nonce from Braintree).\n * @param {callback} [callback] The second argument, data
, is the returned server data. If no callback is provided, `getExpressCheckoutProfile` returns a promise that resolves with the server data.\n * @returns {(Promise|void)} Returns a promise if no callback is provided.\n * @example\n * var americanExpress = require('braintree-web/american-express');\n *\n * americanExpress.create({client: clientInstance}, function (createErr, americanExpressInstance) {\n * var options = {nonce: existingAmericanExpressNonce};\n * americanExpressInstance.getExpressCheckoutProfile(options, function (getErr, payload) {\n * if (getErr) {\n * // Handle error\n * return;\n * }\n *\n * console.log('Number of cards: ' + payload.amexExpressCheckoutCards.length);\n * });\n * });\n */\nAmericanExpress.prototype.getExpressCheckoutProfile = function (options) {\n if (!options.nonce) {\n return Promise.reject(\n new BraintreeError({\n type: errors.AMEX_NONCE_REQUIRED.type,\n code: errors.AMEX_NONCE_REQUIRED.code,\n message: \"getExpressCheckoutProfile must be called with a nonce.\",\n })\n );\n }\n\n return this._client\n .request({\n method: \"get\",\n endpoint: \"payment_methods/amex_express_checkout_cards/\" + options.nonce,\n data: {\n _meta: { source: \"american-express\" },\n paymentMethodNonce: options.nonce,\n },\n })\n .catch(function (err) {\n return Promise.reject(\n new BraintreeError({\n type: errors.AMEX_NETWORK_ERROR.type,\n code: errors.AMEX_NETWORK_ERROR.code,\n message:\n \"A network error occurred when getting the American Express Checkout nonce profile.\",\n details: {\n originalError: err,\n },\n })\n );\n });\n};\n\n/**\n * Cleanly tear down anything set up by {@link module:braintree-web/american-express.create|create}.\n * @public\n * @param {callback} [callback] Called once teardown is complete. No data is returned if teardown completes successfully.\n * @example\n * americanExpressInstance.teardown();\n * @example data
, is the Apple Pay merchant session object. If no callback is provided, `performValidation` returns a promise.\n * Pass the merchant session to your Apple Pay session's `completeMerchantValidation` method.\n * @returns {(Promise|void)} Returns a promise if no callback is provided.\n * @example\n * var applePay = require('braintree-web/apple-pay');\n *\n * applePay.create({client: clientInstance}, function (applePayErr, applePayInstance) {\n * if (applePayErr) {\n * // Handle error here\n * return;\n * }\n *\n * var paymentRequest = applePayInstance.createPaymentRequest({\n * total: {\n * label: 'My Company',\n * amount: '19.99'\n * }\n * });\n * var session = new ApplePaySession(3, paymentRequest);\n *\n * session.onvalidatemerchant = function (event) {\n * applePayInstance.performValidation({\n * validationURL: event.validationURL,\n * displayName: 'My Great Store'\n * }, function (validationErr, validationData) {\n * if (validationErr) {\n * console.error(validationErr);\n * session.abort();\n * return;\n * }\n *\n * session.completeMerchantValidation(validationData);\n * });\n * };\n * });\n */\nApplePay.prototype.performValidation = function (options) {\n var self = this;\n\n if (!options || !options.validationURL) {\n return Promise.reject(\n new BraintreeError(errors.APPLE_PAY_VALIDATION_URL_REQUIRED)\n );\n }\n\n return this._waitForClient()\n .then(function () {\n var applePayWebSession = {\n validationUrl: options.validationURL,\n domainName: options.domainName || window.location.hostname,\n merchantIdentifier:\n options.merchantIdentifier || self.merchantIdentifier,\n };\n\n if (options.displayName != null) {\n applePayWebSession.displayName = options.displayName;\n }\n\n return self._client.request({\n method: \"post\",\n endpoint: \"apple_pay_web/sessions\",\n data: {\n _meta: { source: \"apple-pay\" },\n applePayWebSession: applePayWebSession,\n },\n });\n })\n .then(function (response) {\n analytics.sendEvent(self._client, \"applepay.performValidation.succeeded\");\n\n return Promise.resolve(response);\n })\n .catch(function (err) {\n analytics.sendEvent(self._client, \"applepay.performValidation.failed\");\n\n if (err.code === \"CLIENT_REQUEST_ERROR\") {\n return Promise.reject(\n new BraintreeError({\n type: errors.APPLE_PAY_MERCHANT_VALIDATION_FAILED.type,\n code: errors.APPLE_PAY_MERCHANT_VALIDATION_FAILED.code,\n message: errors.APPLE_PAY_MERCHANT_VALIDATION_FAILED.message,\n details: {\n originalError: err.details.originalError,\n },\n })\n );\n }\n\n return Promise.reject(\n new BraintreeError({\n type: errors.APPLE_PAY_MERCHANT_VALIDATION_NETWORK.type,\n code: errors.APPLE_PAY_MERCHANT_VALIDATION_NETWORK.code,\n message: errors.APPLE_PAY_MERCHANT_VALIDATION_NETWORK.message,\n details: {\n originalError: err,\n },\n })\n );\n });\n};\n\n/**\n * Tokenizes an Apple Pay payment. This will likely be called in your `ApplePaySession`'s `onpaymentauthorized` callback.\n * @public\n * @param {object} options Options\n * @param {object} options.token The `payment.token` property of an {@link external:ApplePayPaymentAuthorizedEvent}.\n * @param {callback} [callback] The second argument, data
, is a {@link ApplePay~tokenizePayload|tokenizePayload}. If no callback is provided, `tokenize` returns a promise that resolves with a {@link ApplePay~tokenizePayload|tokenizePayload}.\n * @returns {(Promise|void)} Returns a promise if no callback is provided.\n * @example\n * var applePay = require('braintree-web/apple-pay');\n *\n * applePay.create({client: clientInstance}, function (applePayErr, applePayInstance) {\n * if (applePayErr) {\n * // Handle error here\n * return;\n * }\n *\n * var paymentRequest = applePayInstance.createPaymentRequest({\n * total: {\n * label: 'My Company',\n * amount: '19.99'\n * }\n * });\n * var session = new ApplePaySession(3, paymentRequest);\n *\n * session.onpaymentauthorized = function (event) {\n * applePayInstance.tokenize({\n * token: event.payment.token\n * }, function (tokenizeErr, tokenizedPayload) {\n * if (tokenizeErr) {\n * session.completePayment(ApplePaySession.STATUS_FAILURE);\n * return;\n * }\n * // Send the tokenizedPayload to your server here!\n *\n * // Once the transaction is complete, call completePayment\n * // to close the Apple Pay sheet\n * session.completePayment(ApplePaySession.STATUS_SUCCESS);\n * });\n * };\n *\n * // ...\n * });\n */\nApplePay.prototype.tokenize = function (options) {\n var self = this;\n\n if (!options.token) {\n return Promise.reject(\n new BraintreeError(errors.APPLE_PAY_PAYMENT_TOKEN_REQUIRED)\n );\n }\n\n return this._waitForClient()\n .then(function () {\n return self._client.request({\n method: \"post\",\n endpoint: \"payment_methods/apple_payment_tokens\",\n data: {\n _meta: {\n source: \"apple-pay\",\n },\n applePaymentToken: Object.assign({}, options.token, {\n // The gateway requires this key to be base64-encoded.\n paymentData: btoa(JSON.stringify(options.token.paymentData)),\n }),\n },\n });\n })\n .then(function (response) {\n analytics.sendEvent(self._client, \"applepay.tokenize.succeeded\");\n\n return Promise.resolve(response.applePayCards[0]);\n })\n .catch(function (err) {\n analytics.sendEvent(self._client, \"applepay.tokenize.failed\");\n\n return Promise.reject(\n new BraintreeError({\n type: errors.APPLE_PAY_TOKENIZATION.type,\n code: errors.APPLE_PAY_TOKENIZATION.code,\n message: errors.APPLE_PAY_TOKENIZATION.message,\n details: {\n originalError: err,\n },\n })\n );\n });\n};\n\n/**\n * Cleanly tear down anything set up by {@link module:braintree-web/apple-pay.create|create}.\n * @public\n * @param {callback} [callback] Called once teardown is complete. No data is returned if teardown completes successfully.\n * @example\n * applePayInstance.teardown();\n * @example data
, is the returned server data.\n * @example\n * braintree.client
module. It is used for creating {@link Client} instances that service communication to Braintree servers.\n * @param {object} options Object containing all {@link Client} options:\n * @param {string} options.authorization A tokenizationKey or clientToken.\n * @param {callback} [callback] The second argument, data
, is the {@link Client} instance.\n * @returns {(Promise|void)} Returns a promise if no callback is provided.\n * @example\n * var createClient = require('braintree-web/client').create;\n *\n * createClient({\n * authorization: CLIENT_AUTHORIZATION\n * }, function (createErr, clientInstance) {\n * if (createErr) {\n * if (createErr.code === 'CLIENT_AUTHORIZATION_INVALID') {\n * // either the client token has expired, and a new one should be generated\n * // or the tokenization key was deactivated or deleted\n * } else {\n * console.log('something went wrong creating the client instance', createErr);\n * }\n * return;\n * }\n *\n * // set up other components\n * });\n * @static\n */\nfunction create(options) {\n if (!options.authorization) {\n return Promise.reject(\n new BraintreeError({\n type: sharedErrors.INSTANTIATION_OPTION_REQUIRED.type,\n code: sharedErrors.INSTANTIATION_OPTION_REQUIRED.code,\n message:\n \"options.authorization is required when instantiating a client.\",\n })\n );\n }\n\n return Client.initialize(options);\n}\n\nmodule.exports = {\n create: wrapPromise(create),\n /**\n * @description The current version of the SDK, i.e. `{@pkg version}`.\n * @type {string}\n */\n VERSION: VERSION,\n};\n\n},{\"../lib/braintree-error\":124,\"../lib/errors\":135,\"./client\":78,\"@braintree/wrap-promise\":43}],83:[function(_dereq_,module,exports){\n\"use strict\";\n\nvar querystring = _dereq_(\"../../lib/querystring\");\nvar assign = _dereq_(\"../../lib/assign\").assign;\nvar prepBody = _dereq_(\"./prep-body\");\nvar parseBody = _dereq_(\"./parse-body\");\nvar xhr = _dereq_(\"./xhr\");\nvar isXHRAvailable = xhr.isAvailable;\nvar GraphQLRequest = _dereq_(\"./graphql/request\");\nvar DefaultRequest = _dereq_(\"./default-request\");\n\nvar MAX_TCP_RETRYCOUNT = 1;\nvar TCP_PRECONNECT_BUG_STATUS_CODE = 408;\n\nfunction requestShouldRetry(status) {\n return !status || status === TCP_PRECONNECT_BUG_STATUS_CODE;\n}\n\nfunction graphQLRequestShouldRetryWithClientApi(body) {\n var errorClass =\n !body.data &&\n body.errors &&\n body.errors[0] &&\n body.errors[0].extensions &&\n body.errors[0].extensions.errorClass;\n\n return errorClass === \"UNKNOWN\" || errorClass === \"INTERNAL\";\n}\n\nfunction _requestWithRetry(options, tcpRetryCount, cb) {\n var status, resBody, ajaxRequest, body, method, headers, parsedBody;\n var url = options.url;\n var graphQL = options.graphQL;\n var timeout = options.timeout;\n var req = xhr.getRequestObject();\n var callback = cb;\n var isGraphQLRequest = Boolean(\n graphQL && graphQL.isGraphQLRequest(url, options.data)\n );\n\n options.headers = assign(\n { \"Content-Type\": \"application/json\" },\n options.headers\n );\n\n if (isGraphQLRequest) {\n ajaxRequest = new GraphQLRequest(options);\n } else {\n ajaxRequest = new DefaultRequest(options);\n }\n\n url = ajaxRequest.getUrl();\n body = ajaxRequest.getBody();\n method = ajaxRequest.getMethod();\n headers = ajaxRequest.getHeaders();\n\n if (method === \"GET\") {\n url = querystring.queryify(url, body);\n body = null;\n }\n\n if (isXHRAvailable) {\n req.onreadystatechange = function () {\n if (req.readyState !== 4) {\n return;\n }\n\n if (req.status === 0 && isGraphQLRequest) {\n // If a merchant experiences a connection\n // issue to the GraphQL endpoint (possibly\n // due to a Content Security Policy), retry\n // the request against the old client API.\n delete options.graphQL;\n _requestWithRetry(options, tcpRetryCount, cb);\n\n return;\n }\n\n parsedBody = parseBody(req.responseText);\n resBody = ajaxRequest.adaptResponseBody(parsedBody);\n status = ajaxRequest.determineStatus(req.status, parsedBody);\n\n if (status >= 400 || status < 200) {\n if (\n isGraphQLRequest &&\n graphQLRequestShouldRetryWithClientApi(parsedBody)\n ) {\n delete options.graphQL;\n _requestWithRetry(options, tcpRetryCount, cb);\n\n return;\n }\n\n if (tcpRetryCount < MAX_TCP_RETRYCOUNT && requestShouldRetry(status)) {\n tcpRetryCount++;\n _requestWithRetry(options, tcpRetryCount, cb);\n\n return;\n }\n callback(resBody || \"error\", null, status || 500);\n } else {\n callback(null, resBody, status);\n }\n };\n } else {\n if (options.headers) {\n url = querystring.queryify(url, headers);\n }\n\n req.onload = function () {\n callback(null, parseBody(req.responseText), req.status);\n };\n\n req.onerror = function () {\n // XDomainRequest does not report a body or status for errors, so\n // hardcode to 'error' and 500, respectively\n callback(\"error\", null, 500);\n };\n\n // This must remain for IE9 to work\n req.onprogress = function () {};\n\n req.ontimeout = function () {\n callback(\"timeout\", null, -1);\n };\n }\n\n try {\n req.open(method, url, true);\n } catch (requestOpenError) {\n // If a merchant has a Content Security Policy and they have\n // not allowed our endpoints, some browsers may\n // synchronously throw an error. If it is not a GraphQL\n // request, we throw the error. If it is a GraphQL request\n // we remove the GraphQL option and try the request against\n // the old client API.\n if (!isGraphQLRequest) {\n throw requestOpenError;\n }\n\n delete options.graphQL;\n\n _requestWithRetry(options, tcpRetryCount, cb);\n\n return;\n }\n\n req.timeout = timeout;\n\n if (isXHRAvailable) {\n Object.keys(headers).forEach(function (headerKey) {\n req.setRequestHeader(headerKey, headers[headerKey]);\n });\n }\n\n try {\n req.send(prepBody(method, body));\n } catch (e) {\n /* ignored */\n }\n}\n\nfunction request(options, cb) {\n _requestWithRetry(options, 0, cb);\n}\n\nmodule.exports = {\n request: request,\n};\n\n},{\"../../lib/assign\":121,\"../../lib/querystring\":157,\"./default-request\":84,\"./graphql/request\":91,\"./parse-body\":93,\"./prep-body\":94,\"./xhr\":95}],84:[function(_dereq_,module,exports){\n\"use strict\";\n\nfunction DefaultRequest(options) {\n this._url = options.url;\n this._data = options.data;\n this._method = options.method;\n this._headers = options.headers;\n}\n\nDefaultRequest.prototype.getUrl = function () {\n return this._url;\n};\n\nDefaultRequest.prototype.getBody = function () {\n return this._data;\n};\n\nDefaultRequest.prototype.getMethod = function () {\n return this._method;\n};\n\nDefaultRequest.prototype.getHeaders = function () {\n return this._headers;\n};\n\nDefaultRequest.prototype.adaptResponseBody = function (parsedBody) {\n return parsedBody;\n};\n\nDefaultRequest.prototype.determineStatus = function (status) {\n return status;\n};\n\nmodule.exports = DefaultRequest;\n\n},{}],85:[function(_dereq_,module,exports){\n\"use strict\";\n\nvar errorResponseAdapter = _dereq_(\"./error\");\nvar assign = _dereq_(\"../../../../lib/assign\").assign;\n\n/* eslint-disable camelcase */\nvar cardTypeTransforms = {\n creditCard: {\n AMERICAN_EXPRESS: \"American Express\",\n DISCOVER: \"Discover\",\n INTERNATIONAL_MAESTRO: \"Maestro\",\n JCB: \"JCB\",\n MASTERCARD: \"MasterCard\",\n SOLO: \"Solo\",\n UK_MAESTRO: \"UK Maestro\",\n UNION_PAY: \"UnionPay\",\n VISA: \"Visa\",\n ELO: \"Elo\",\n HIPER: \"Hiper\",\n HIPERCARD: \"Hipercard\",\n },\n applePayWeb: {\n VISA: \"visa\",\n MASTERCARD: \"mastercard\",\n DISCOVER: \"discover\",\n AMERICAN_EXPRESS: \"amex\",\n INTERNATIONAL_MAESTRO: \"maestro\",\n ELO: \"elo\",\n },\n visaCheckout: {\n VISA: \"Visa\",\n MASTERCARD: \"MasterCard\",\n DISCOVER: \"Discover\",\n AMERICAN_EXPRESS: \"American Express\",\n },\n googlePay: {\n VISA: \"visa\",\n MASTERCARD: \"mastercard\",\n DISCOVER: \"discover\",\n AMERICAN_EXPRESS: \"amex\",\n INTERNATIONAL_MAESTRO: \"maestro\",\n ELO: \"elo\",\n },\n masterpass: {\n VISA: \"visa\",\n MASTERCARD: \"master\",\n DISCOVER: \"discover\",\n AMERICAN_EXPRESS: \"amex\",\n DINERS: \"diners\",\n INTERNATIONAL_MAESTRO: \"maestro\",\n JCB: \"jcb\",\n },\n};\n/* eslint-enable camelcase */\n\nfunction configurationResponseAdapter(responseBody, ctx) {\n var adaptedResponse;\n\n if (responseBody.data && !responseBody.errors) {\n adaptedResponse = adaptConfigurationResponseBody(responseBody, ctx);\n } else {\n adaptedResponse = errorResponseAdapter(responseBody);\n }\n\n return adaptedResponse;\n}\n\nfunction adaptConfigurationResponseBody(body, ctx) {\n var configuration = body.data.clientConfiguration;\n var response;\n\n response = {\n environment: configuration.environment.toLowerCase(),\n clientApiUrl: configuration.clientApiUrl,\n assetsUrl: configuration.assetsUrl,\n analytics: {\n url: configuration.analyticsUrl,\n },\n merchantId: configuration.merchantId,\n venmo: \"off\",\n };\n\n if (configuration.supportedFeatures) {\n response.graphQL = {\n url: ctx._graphQL._config.url,\n features: configuration.supportedFeatures.map(function (feature) {\n return feature.toLowerCase();\n }),\n };\n }\n\n if (configuration.braintreeApi) {\n response.braintreeApi = configuration.braintreeApi;\n }\n\n if (configuration.applePayWeb) {\n response.applePayWeb = configuration.applePayWeb;\n response.applePayWeb.supportedNetworks = mapCardTypes(\n configuration.applePayWeb.supportedCardBrands,\n cardTypeTransforms.applePayWeb\n );\n\n delete response.applePayWeb.supportedCardBrands;\n }\n\n if (configuration.ideal) {\n response.ideal = configuration.ideal;\n }\n\n if (configuration.kount) {\n response.kount = {\n kountMerchantId: configuration.kount.merchantId,\n };\n }\n\n if (configuration.creditCard) {\n response.challenges = configuration.creditCard.challenges.map(function (\n challenge\n ) {\n return challenge.toLowerCase();\n });\n\n response.creditCards = {\n supportedCardTypes: mapCardTypes(\n configuration.creditCard.supportedCardBrands,\n cardTypeTransforms.creditCard\n ),\n };\n response.threeDSecureEnabled = configuration.creditCard.threeDSecureEnabled;\n response.threeDSecure = configuration.creditCard.threeDSecure;\n } else {\n response.challenges = [];\n response.creditCards = {\n supportedCardTypes: [],\n };\n response.threeDSecureEnabled = false;\n }\n\n if (configuration.googlePay) {\n response.androidPay = {\n displayName: configuration.googlePay.displayName,\n enabled: true,\n environment: configuration.googlePay.environment.toLowerCase(),\n googleAuthorizationFingerprint:\n configuration.googlePay.googleAuthorization,\n paypalClientId: configuration.googlePay.paypalClientId,\n supportedNetworks: mapCardTypes(\n configuration.googlePay.supportedCardBrands,\n cardTypeTransforms.googlePay\n ),\n };\n }\n\n if (configuration.venmo) {\n response.payWithVenmo = {\n merchantId: configuration.venmo.merchantId,\n accessToken: configuration.venmo.accessToken,\n environment: configuration.venmo.environment.toLowerCase(),\n enrichedCustomerDataEnabled:\n configuration.venmo.enrichedCustomerDataEnabled,\n };\n }\n\n if (configuration.paypal) {\n response.paypalEnabled = true;\n response.paypal = assign({}, configuration.paypal);\n response.paypal.currencyIsoCode = response.paypal.currencyCode;\n response.paypal.environment = response.paypal.environment.toLowerCase();\n\n delete response.paypal.currencyCode;\n } else {\n response.paypalEnabled = false;\n }\n\n if (configuration.unionPay) {\n response.unionPay = {\n enabled: true,\n merchantAccountId: configuration.unionPay.merchantAccountId,\n };\n }\n\n if (configuration.visaCheckout) {\n response.visaCheckout = {\n apikey: configuration.visaCheckout.apiKey,\n encryptionKey: configuration.visaCheckout.encryptionKey,\n externalClientId: configuration.visaCheckout.externalClientId,\n supportedCardTypes: mapCardTypes(\n configuration.visaCheckout.supportedCardBrands,\n cardTypeTransforms.visaCheckout\n ),\n };\n }\n\n if (configuration.masterpass) {\n response.masterpass = {\n merchantCheckoutId: configuration.masterpass.merchantCheckoutId,\n supportedNetworks: mapCardTypes(\n configuration.masterpass.supportedCardBrands,\n cardTypeTransforms.masterpass\n ),\n };\n }\n\n if (configuration.usBankAccount) {\n response.usBankAccount = {\n routeId: configuration.usBankAccount.routeId,\n plaid: {\n publicKey: configuration.usBankAccount.plaidPublicKey,\n },\n };\n }\n\n return response;\n}\n\nfunction mapCardTypes(cardTypes, cardTypeTransformMap) {\n return cardTypes.reduce(function (acc, type) {\n if (cardTypeTransformMap.hasOwnProperty(type)) {\n return acc.concat(cardTypeTransformMap[type]);\n }\n\n return acc;\n }, []);\n}\n\nmodule.exports = configurationResponseAdapter;\n\n},{\"../../../../lib/assign\":121,\"./error\":87}],86:[function(_dereq_,module,exports){\n\"use strict\";\n\nvar errorResponseAdapter = _dereq_(\"./error\");\n\nvar CARD_BRAND_MAP = {\n /* eslint-disable camelcase */\n AMERICAN_EXPRESS: \"American Express\",\n DINERS: \"Discover\",\n DISCOVER: \"Discover\",\n ELO: \"Elo\",\n HIPER: \"Hiper\",\n HIPERCARD: \"Hipercard\",\n INTERNATIONAL_MAESTRO: \"Maestro\",\n JCB: \"JCB\",\n MASTERCARD: \"MasterCard\",\n UK_MAESTRO: \"Maestro\",\n UNION_PAY: \"UnionPay\",\n VISA: \"Visa\",\n /* eslint-enable camelcase */\n};\n\nvar BIN_DATA_MAP = {\n YES: \"Yes\",\n NO: \"No\",\n UNKNOWN: \"Unknown\",\n};\n\nvar AUTHENTICATION_INSIGHT_MAP = {\n PSDTWO: \"psd2\",\n};\n\nfunction creditCardTokenizationResponseAdapter(responseBody) {\n var adaptedResponse;\n\n if (responseBody.data && !responseBody.errors) {\n adaptedResponse = adaptTokenizeCreditCardResponseBody(responseBody);\n } else {\n adaptedResponse = errorResponseAdapter(responseBody);\n }\n\n return adaptedResponse;\n}\n\nfunction adaptTokenizeCreditCardResponseBody(body) {\n var data = body.data.tokenizeCreditCard;\n var creditCard = data.creditCard;\n var lastTwo = creditCard.last4 ? creditCard.last4.substr(2, 4) : \"\";\n var binData = creditCard.binData;\n var response, regulationEnvironment;\n\n if (binData) {\n [\n \"commercial\",\n \"debit\",\n \"durbinRegulated\",\n \"healthcare\",\n \"payroll\",\n \"prepaid\",\n ].forEach(function (key) {\n if (binData[key]) {\n binData[key] = BIN_DATA_MAP[binData[key]];\n } else {\n binData[key] = \"Unknown\";\n }\n });\n\n [\"issuingBank\", \"countryOfIssuance\", \"productId\"].forEach(function (key) {\n if (!binData[key]) {\n binData[key] = \"Unknown\";\n }\n });\n }\n\n response = {\n creditCards: [\n {\n binData: binData,\n consumed: false,\n description: lastTwo ? \"ending in \" + lastTwo : \"\",\n nonce: data.token,\n details: {\n cardholderName: creditCard.cardholderName,\n expirationMonth: creditCard.expirationMonth,\n expirationYear: creditCard.expirationYear,\n bin: creditCard.bin || \"\",\n cardType: CARD_BRAND_MAP[creditCard.brandCode] || \"Unknown\",\n lastFour: creditCard.last4 || \"\",\n lastTwo: lastTwo,\n },\n type: \"CreditCard\",\n threeDSecureInfo: null,\n },\n ],\n };\n\n if (data.authenticationInsight) {\n regulationEnvironment =\n data.authenticationInsight.customerAuthenticationRegulationEnvironment;\n response.creditCards[0].authenticationInsight = {\n regulationEnvironment:\n AUTHENTICATION_INSIGHT_MAP[regulationEnvironment] ||\n regulationEnvironment.toLowerCase(),\n };\n }\n\n return response;\n}\n\nmodule.exports = creditCardTokenizationResponseAdapter;\n\n},{\"./error\":87}],87:[function(_dereq_,module,exports){\n\"use strict\";\n\nfunction errorResponseAdapter(responseBody) {\n var response;\n var errorClass =\n responseBody.errors &&\n responseBody.errors[0] &&\n responseBody.errors[0].extensions &&\n responseBody.errors[0].extensions.errorClass;\n\n if (errorClass === \"VALIDATION\") {\n response = userErrorResponseAdapter(responseBody);\n } else if (errorClass) {\n response = errorWithClassResponseAdapter(responseBody);\n } else {\n response = {\n error: { message: \"There was a problem serving your request\" },\n fieldErrors: [],\n };\n }\n\n return response;\n}\n\nfunction errorWithClassResponseAdapter(responseBody) {\n return {\n error: { message: responseBody.errors[0].message },\n fieldErrors: [],\n };\n}\n\nfunction userErrorResponseAdapter(responseBody) {\n var fieldErrors = buildFieldErrors(responseBody.errors);\n\n if (fieldErrors.length === 0) {\n return { error: { message: responseBody.errors[0].message } };\n }\n\n return {\n error: { message: getLegacyMessage(fieldErrors) },\n fieldErrors: fieldErrors,\n };\n}\n\nfunction buildFieldErrors(errors) {\n var fieldErrors = [];\n\n errors.forEach(function (error) {\n if (!(error.extensions && error.extensions.inputPath)) {\n return;\n }\n addFieldError(error.extensions.inputPath.slice(1), error, fieldErrors);\n });\n\n return fieldErrors;\n}\n\nfunction addFieldError(inputPath, errorDetail, fieldErrors) {\n var fieldError;\n var legacyCode = errorDetail.extensions.legacyCode;\n var inputField = inputPath[0];\n\n if (inputPath.length === 1) {\n fieldErrors.push({\n code: legacyCode,\n field: inputField,\n message: errorDetail.message,\n });\n\n return;\n }\n\n fieldErrors.forEach(function (candidate) {\n if (candidate.field === inputField) {\n fieldError = candidate;\n }\n });\n\n if (!fieldError) {\n fieldError = { field: inputField, fieldErrors: [] };\n fieldErrors.push(fieldError);\n }\n\n addFieldError(inputPath.slice(1), errorDetail, fieldError.fieldErrors);\n}\n\nfunction getLegacyMessage(errors) {\n var legacyMessages = {\n creditCard: \"Credit card is invalid\",\n };\n\n var field = errors[0].field;\n\n return legacyMessages[field];\n}\n\nmodule.exports = errorResponseAdapter;\n\n},{}],88:[function(_dereq_,module,exports){\n\"use strict\";\n\nvar CONFIGURATION_QUERY =\n \"query ClientConfiguration { \" +\n \" clientConfiguration { \" +\n \" analyticsUrl \" +\n \" environment \" +\n \" merchantId \" +\n \" assetsUrl \" +\n \" clientApiUrl \" +\n \" creditCard { \" +\n \" supportedCardBrands \" +\n \" challenges \" +\n \" threeDSecureEnabled \" +\n \" threeDSecure { \" +\n \" cardinalAuthenticationJWT \" +\n \" } \" +\n \" } \" +\n \" applePayWeb { \" +\n \" countryCode \" +\n \" currencyCode \" +\n \" merchantIdentifier \" +\n \" supportedCardBrands \" +\n \" } \" +\n \" googlePay { \" +\n \" displayName \" +\n \" supportedCardBrands \" +\n \" environment \" +\n \" googleAuthorization \" +\n \" paypalClientId \" +\n \" } \" +\n \" ideal { \" +\n \" routeId \" +\n \" assetsUrl \" +\n \" } \" +\n \" kount { \" +\n \" merchantId \" +\n \" } \" +\n \" masterpass { \" +\n \" merchantCheckoutId \" +\n \" supportedCardBrands \" +\n \" } \" +\n \" paypal { \" +\n \" displayName \" +\n \" clientId \" +\n \" assetsUrl \" +\n \" environment \" +\n \" environmentNoNetwork \" +\n \" unvettedMerchant \" +\n \" braintreeClientId \" +\n \" billingAgreementsEnabled \" +\n \" merchantAccountId \" +\n \" currencyCode \" +\n \" payeeEmail \" +\n \" } \" +\n \" unionPay { \" +\n \" merchantAccountId \" +\n \" } \" +\n \" usBankAccount { \" +\n \" routeId \" +\n \" plaidPublicKey \" +\n \" } \" +\n \" venmo { \" +\n \" merchantId \" +\n \" accessToken \" +\n \" environment \" +\n \" enrichedCustomerDataEnabled\" +\n \" } \" +\n \" visaCheckout { \" +\n \" apiKey \" +\n \" externalClientId \" +\n \" supportedCardBrands \" +\n \" } \" +\n \" braintreeApi { \" +\n \" accessToken \" +\n \" url \" +\n \" } \" +\n \" supportedFeatures \" +\n \" } \" +\n \"}\";\n\nfunction configuration() {\n return {\n query: CONFIGURATION_QUERY,\n operationName: \"ClientConfiguration\",\n };\n}\n\nmodule.exports = configuration;\n\n},{}],89:[function(_dereq_,module,exports){\n\"use strict\";\n\nvar assign = _dereq_(\"../../../../lib/assign\").assign;\n\nfunction createMutation(config) {\n var hasAuthenticationInsight = config.hasAuthenticationInsight;\n var mutation = \"mutation TokenizeCreditCard($input: TokenizeCreditCardInput!\";\n\n if (hasAuthenticationInsight) {\n mutation += \", $authenticationInsightInput: AuthenticationInsightInput!\";\n }\n\n mutation +=\n \") { \" +\n \" tokenizeCreditCard(input: $input) { \" +\n \" token \" +\n \" creditCard { \" +\n \" bin \" +\n \" brandCode \" +\n \" last4 \" +\n \" cardholderName \" +\n \" expirationMonth\" +\n \" expirationYear\" +\n \" binData { \" +\n \" prepaid \" +\n \" healthcare \" +\n \" debit \" +\n \" durbinRegulated \" +\n \" commercial \" +\n \" payroll \" +\n \" issuingBank \" +\n \" countryOfIssuance \" +\n \" productId \" +\n \" } \" +\n \" } \";\n\n if (hasAuthenticationInsight) {\n mutation +=\n \" authenticationInsight(input: $authenticationInsightInput) {\" +\n \" customerAuthenticationRegulationEnvironment\" +\n \" }\";\n }\n\n mutation += \" } }\";\n\n return mutation;\n}\n\nfunction createCreditCardTokenizationBody(body, options) {\n var cc = body.creditCard;\n var billingAddress = cc && cc.billingAddress;\n var expDate = cc && cc.expirationDate;\n var expirationMonth =\n cc && (cc.expirationMonth || (expDate && expDate.split(\"/\")[0].trim()));\n var expirationYear =\n cc && (cc.expirationYear || (expDate && expDate.split(\"/\")[1].trim()));\n var variables = {\n input: {\n creditCard: {\n number: cc && cc.number,\n expirationMonth: expirationMonth,\n expirationYear: expirationYear,\n cvv: cc && cc.cvv,\n cardholderName: cc && cc.cardholderName,\n },\n options: {},\n },\n };\n\n if (options.hasAuthenticationInsight) {\n variables.authenticationInsightInput = {\n merchantAccountId: body.merchantAccountId,\n };\n }\n\n if (billingAddress) {\n variables.input.creditCard.billingAddress = billingAddress;\n }\n\n variables.input = addValidationRule(body, variables.input);\n\n return variables;\n}\n\nfunction addValidationRule(body, input) {\n var validate;\n\n if (\n body.creditCard &&\n body.creditCard.options &&\n typeof body.creditCard.options.validate === \"boolean\"\n ) {\n validate = body.creditCard.options.validate;\n } else if (\n (body.authorizationFingerprint && body.tokenizationKey) ||\n body.authorizationFingerprint\n ) {\n validate = true;\n } else if (body.tokenizationKey) {\n validate = false;\n }\n\n if (typeof validate === \"boolean\") {\n input.options = assign(\n {\n validate: validate,\n },\n input.options\n );\n }\n\n return input;\n}\n\nfunction creditCardTokenization(body) {\n var options = {\n hasAuthenticationInsight: Boolean(\n body.authenticationInsight && body.merchantAccountId\n ),\n };\n\n return {\n query: createMutation(options),\n variables: createCreditCardTokenizationBody(body, options),\n operationName: \"TokenizeCreditCard\",\n };\n}\n\nmodule.exports = creditCardTokenization;\n\n},{\"../../../../lib/assign\":121}],90:[function(_dereq_,module,exports){\n\"use strict\";\n\nvar features = {\n tokenize_credit_cards: \"payment_methods/credit_cards\", // eslint-disable-line camelcase\n configuration: \"configuration\",\n};\n\nvar disallowedInputPaths = [\"creditCard.options.unionPayEnrollment\"];\n\nfunction GraphQL(config) {\n this._config = config.graphQL;\n}\n\nGraphQL.prototype.getGraphQLEndpoint = function () {\n return this._config.url;\n};\n\nGraphQL.prototype.isGraphQLRequest = function (url, body) {\n var featureEnabled;\n var path = this.getClientApiPath(url);\n\n if (!this._isGraphQLEnabled() || !path) {\n return false;\n }\n\n featureEnabled = this._config.features.some(function (feature) {\n return features[feature] === path;\n });\n\n if (containsDisallowedlistedKeys(body)) {\n return false;\n }\n\n return featureEnabled;\n};\n\nGraphQL.prototype.getClientApiPath = function (url) {\n var path;\n var clientApiPrefix = \"/client_api/v1/\";\n var pathParts = url.split(clientApiPrefix);\n\n if (pathParts.length > 1) {\n path = pathParts[1].split(\"?\")[0];\n }\n\n return path;\n};\n\nGraphQL.prototype._isGraphQLEnabled = function () {\n return Boolean(this._config);\n};\n\nfunction containsDisallowedlistedKeys(body) {\n return disallowedInputPaths.some(function (keys) {\n var value = keys.split(\".\").reduce(function (accumulator, key) {\n return accumulator && accumulator[key];\n }, body);\n\n return value !== undefined; // eslint-disable-line no-undefined\n });\n}\n\nmodule.exports = GraphQL;\n\n},{}],91:[function(_dereq_,module,exports){\n\"use strict\";\n\nvar BRAINTREE_VERSION = _dereq_(\"../../constants\").BRAINTREE_VERSION;\n\nvar assign = _dereq_(\"../../../lib/assign\").assign;\nvar snakeCaseToCamelCase = _dereq_(\"../../../lib/snake-case-to-camel-case\");\n\nvar creditCardTokenizationBodyGenerator = _dereq_(\"./generators/credit-card-tokenization\");\nvar creditCardTokenizationResponseAdapter = _dereq_(\"./adapters/credit-card-tokenization\");\n\nvar configurationBodyGenerator = _dereq_(\"./generators/configuration\");\nvar configurationResponseAdapter = _dereq_(\"./adapters/configuration\");\n\nvar generators = {\n \"payment_methods/credit_cards\": creditCardTokenizationBodyGenerator,\n configuration: configurationBodyGenerator,\n};\nvar adapters = {\n \"payment_methods/credit_cards\": creditCardTokenizationResponseAdapter,\n configuration: configurationResponseAdapter,\n};\n\nfunction GraphQLRequest(options) {\n var clientApiPath = options.graphQL.getClientApiPath(options.url);\n\n this._graphQL = options.graphQL;\n this._data = options.data;\n this._method = options.method;\n this._headers = options.headers;\n this._clientSdkMetadata = {\n source: options.metadata.source,\n integration: options.metadata.integration,\n sessionId: options.metadata.sessionId,\n };\n this._sendAnalyticsEvent = options.sendAnalyticsEvent || Function.prototype;\n\n this._generator = generators[clientApiPath];\n this._adapter = adapters[clientApiPath];\n\n this._sendAnalyticsEvent(\"graphql.init\");\n}\n\nGraphQLRequest.prototype.getUrl = function () {\n return this._graphQL.getGraphQLEndpoint();\n};\n\nGraphQLRequest.prototype.getBody = function () {\n var formattedBody = formatBodyKeys(this._data);\n var generatedBody = this._generator(formattedBody);\n var body = assign(\n { clientSdkMetadata: this._clientSdkMetadata },\n generatedBody\n );\n\n return JSON.stringify(body);\n};\n\nGraphQLRequest.prototype.getMethod = function () {\n return \"POST\";\n};\n\nGraphQLRequest.prototype.getHeaders = function () {\n var authorization, headers;\n\n if (this._data.authorizationFingerprint) {\n this._sendAnalyticsEvent(\"graphql.authorization-fingerprint\");\n authorization = this._data.authorizationFingerprint;\n } else {\n this._sendAnalyticsEvent(\"graphql.tokenization-key\");\n authorization = this._data.tokenizationKey;\n }\n\n headers = {\n Authorization: \"Bearer \" + authorization,\n \"Braintree-Version\": BRAINTREE_VERSION,\n };\n\n return assign({}, this._headers, headers);\n};\n\nGraphQLRequest.prototype.adaptResponseBody = function (parsedBody) {\n return this._adapter(parsedBody, this);\n};\n\nGraphQLRequest.prototype.determineStatus = function (\n httpStatus,\n parsedResponse\n) {\n var status, errorClass;\n\n if (httpStatus === 200) {\n errorClass =\n parsedResponse.errors &&\n parsedResponse.errors[0] &&\n parsedResponse.errors[0].extensions &&\n parsedResponse.errors[0].extensions.errorClass;\n\n if (parsedResponse.data && !parsedResponse.errors) {\n status = 200;\n } else if (errorClass === \"VALIDATION\") {\n status = 422;\n } else if (errorClass === \"AUTHORIZATION\") {\n status = 403;\n } else if (errorClass === \"AUTHENTICATION\") {\n status = 401;\n } else if (isGraphQLError(errorClass, parsedResponse)) {\n status = 403;\n } else {\n status = 500;\n }\n } else if (!httpStatus) {\n status = 500;\n } else {\n status = httpStatus;\n }\n\n this._sendAnalyticsEvent(\"graphql.status.\" + httpStatus);\n this._sendAnalyticsEvent(\"graphql.determinedStatus.\" + status);\n\n return status;\n};\n\nfunction isGraphQLError(errorClass, parsedResponse) {\n return !errorClass && parsedResponse.errors[0].message;\n}\n\nfunction formatBodyKeys(originalBody) {\n var body = {};\n\n Object.keys(originalBody).forEach(function (key) {\n var camelCaseKey = snakeCaseToCamelCase(key);\n\n if (typeof originalBody[key] === \"object\") {\n body[camelCaseKey] = formatBodyKeys(originalBody[key]);\n } else if (typeof originalBody[key] === \"number\") {\n body[camelCaseKey] = String(originalBody[key]);\n } else {\n body[camelCaseKey] = originalBody[key];\n }\n });\n\n return body;\n}\n\nmodule.exports = GraphQLRequest;\n\n},{\"../../../lib/assign\":121,\"../../../lib/snake-case-to-camel-case\":159,\"../../constants\":79,\"./adapters/configuration\":85,\"./adapters/credit-card-tokenization\":86,\"./generators/configuration\":88,\"./generators/credit-card-tokenization\":89}],92:[function(_dereq_,module,exports){\n\"use strict\";\n\nvar once = _dereq_(\"../../lib/once\");\nvar AJAXDriver = _dereq_(\"./ajax-driver\");\n\nmodule.exports = function (options, cb) {\n cb = once(cb || Function.prototype);\n options.method = (options.method || \"GET\").toUpperCase();\n options.timeout = options.timeout == null ? 60000 : options.timeout;\n options.data = options.data || {};\n\n AJAXDriver.request(options, cb);\n};\n\n},{\"../../lib/once\":156,\"./ajax-driver\":83}],93:[function(_dereq_,module,exports){\n\"use strict\";\n\nmodule.exports = function (body) {\n try {\n body = JSON.parse(body);\n } catch (e) {\n /* ignored */\n }\n\n return body;\n};\n\n},{}],94:[function(_dereq_,module,exports){\n\"use strict\";\n\nmodule.exports = function (method, body) {\n if (typeof method !== \"string\") {\n throw new Error(\"Method must be a string\");\n }\n\n if (method.toLowerCase() !== \"get\" && body != null) {\n body = typeof body === \"string\" ? body : JSON.stringify(body);\n }\n\n return body;\n};\n\n},{}],95:[function(_dereq_,module,exports){\n\"use strict\";\n\nvar isXHRAvailable =\n typeof window !== \"undefined\" &&\n window.XMLHttpRequest &&\n \"withCredentials\" in new window.XMLHttpRequest();\n\nfunction getRequestObject() {\n return isXHRAvailable\n ? new window.XMLHttpRequest()\n : new window.XDomainRequest();\n}\n\nmodule.exports = {\n isAvailable: isXHRAvailable,\n getRequestObject: getRequestObject,\n};\n\n},{}],96:[function(_dereq_,module,exports){\n\"use strict\";\n\n/**\n * @name BraintreeError.Data Collector - Creation Error Codes\n * @description Errors that occur when [creating the Data Collector component](./module-braintree-web_data-collector.html#.create).\n * @property {MERCHANT} DATA_COLLECTOR_KOUNT_NOT_ENABLED Occurs when Kount is enabled in creation options but is not enabled on the Braintree control panel.\n * @property {MERCHANT} DATA_COLLECTOR_KOUNT_ERROR Occurs when Kount errors while setting up.\n * @property {MERCHANT} DATA_COLLECTOR_REQUIRES_CREATE_OPTIONS Occurs when Kount or PayPal Fraudnet could not be enabled.\n */\n\nvar BraintreeError = _dereq_(\"../lib/braintree-error\");\n\nmodule.exports = {\n DATA_COLLECTOR_KOUNT_NOT_ENABLED: {\n type: BraintreeError.types.MERCHANT,\n code: \"DATA_COLLECTOR_KOUNT_NOT_ENABLED\",\n message: \"Kount is not enabled for this merchant.\",\n },\n DATA_COLLECTOR_KOUNT_ERROR: {\n type: BraintreeError.types.MERCHANT,\n code: \"DATA_COLLECTOR_KOUNT_ERROR\",\n },\n DATA_COLLECTOR_REQUIRES_CREATE_OPTIONS: {\n type: BraintreeError.types.MERCHANT,\n code: \"DATA_COLLECTOR_REQUIRES_CREATE_OPTIONS\",\n message: \"Data Collector must be created with Kount and/or PayPal.\",\n },\n};\n\n},{\"../lib/braintree-error\":124}],97:[function(_dereq_,module,exports){\n\"use strict\";\n\nvar FRAUDNET_FNCLS = _dereq_(\"../lib/constants\").FRAUDNET_FNCLS;\nvar FRAUDNET_SOURCE = _dereq_(\"../lib/constants\").FRAUDNET_SOURCE;\nvar FRAUDNET_URL = _dereq_(\"../lib/constants\").FRAUDNET_URL;\nvar loadScript = _dereq_(\"../lib/assets\").loadScript;\n\nvar cachedSessionId;\n\nfunction setup(options) {\n var fraudNet = new Fraudnet();\n\n options = options || {};\n\n if (!options.sessionId && cachedSessionId) {\n fraudNet.sessionId = cachedSessionId;\n\n return Promise.resolve(fraudNet);\n }\n\n return fraudNet.initialize(options);\n}\n\nfunction clearSessionIdCache() {\n cachedSessionId = null;\n}\n\nfunction Fraudnet() {}\n\nFraudnet.prototype.initialize = function (options) {\n var environment = options.environment;\n var self = this;\n\n this.sessionId = options.sessionId || _generateSessionId();\n if (!options.sessionId) {\n cachedSessionId = this.sessionId;\n }\n this._beaconId = _generateBeaconId(this.sessionId);\n this._parameterBlock = _createParameterBlock(\n this.sessionId,\n this._beaconId,\n environment\n );\n\n return loadScript({\n src: FRAUDNET_URL,\n })\n .then(function (block) {\n self._thirdPartyBlock = block;\n\n return self;\n })\n .catch(function () {\n // if the fraudnet script fails to load\n // we just resolve with nothing\n // and data collector ignores it\n return null;\n });\n};\n\nFraudnet.prototype.teardown = function () {\n removeElementIfOnPage(document.querySelector('iframe[title=\"ppfniframe\"]'));\n removeElementIfOnPage(document.querySelector('iframe[title=\"pbf\"]'));\n\n removeElementIfOnPage(this._parameterBlock);\n removeElementIfOnPage(this._thirdPartyBlock);\n};\n\nfunction removeElementIfOnPage(element) {\n if (element && element.parentNode) {\n element.parentNode.removeChild(element);\n }\n}\n\nfunction _generateSessionId() {\n var i;\n var id = \"\";\n\n for (i = 0; i < 32; i++) {\n id += Math.floor(Math.random() * 16).toString(16);\n }\n\n return id;\n}\n\nfunction _generateBeaconId(sessionId) {\n var timestamp = new Date().getTime() / 1000;\n\n return (\n \"https://b.stats.paypal.com/counter.cgi\" +\n \"?i=127.0.0.1\" +\n \"&p=\" +\n sessionId +\n \"&t=\" +\n timestamp +\n \"&a=14\"\n );\n}\n\nfunction _createParameterBlock(sessionId, beaconId, environment) {\n var el = document.body.appendChild(document.createElement(\"script\"));\n var config = {\n f: sessionId,\n s: FRAUDNET_SOURCE,\n b: beaconId,\n };\n\n // for some reason, the presence of the sandbox\n // attribute in a production environment causes\n // some weird behavior with what url paths are\n // hit, so instead, we only apply this attribute\n // when it is not a production environment\n if (environment !== \"production\") {\n config.sandbox = true;\n }\n\n el.type = \"application/json\";\n el.setAttribute(\"fncls\", FRAUDNET_FNCLS);\n el.text = JSON.stringify(config);\n\n return el;\n}\n\nmodule.exports = {\n setup: setup,\n clearSessionIdCache: clearSessionIdCache,\n};\n\n},{\"../lib/assets\":120,\"../lib/constants\":126}],98:[function(_dereq_,module,exports){\n\"use strict\";\n/** @module braintree-web/data-collector */\n\nvar kount = _dereq_(\"./kount\");\nvar fraudnet = _dereq_(\"./fraudnet\");\nvar BraintreeError = _dereq_(\"../lib/braintree-error\");\nvar basicComponentVerification = _dereq_(\"../lib/basic-component-verification\");\nvar createDeferredClient = _dereq_(\"../lib/create-deferred-client\");\nvar createAssetsUrl = _dereq_(\"../lib/create-assets-url\");\nvar methods = _dereq_(\"../lib/methods\");\nvar convertMethodsToError = _dereq_(\"../lib/convert-methods-to-error\");\nvar VERSION = \"3.100.0\";\nvar wrapPromise = _dereq_(\"@braintree/wrap-promise\");\nvar errors = _dereq_(\"./errors\");\n\n/**\n * @class\n * @global\n * @name DataCollector\n * @description Do not use this constructor directly. Use {@link module:braintree-web/data-collector.create|braintree-web.data-collector.create} instead.\n * @classdesc This class is used for fraud integration with PayPal and Kount. Instances of this class have {@link DataCollector#deviceData|deviceData} which is used to correlate user sessions with server transactions.\n */\n\n/**\n * @memberof DataCollector\n * @name deviceData\n * @type string\n * @description JSON string to pass with server transactions.\n * @instance\n */\n\n/**\n * @memberof DataCollector\n * @name rawDeviceData\n * @type object\n * @description The device data as an object instead of a string.\n * @instance\n */\n\n/**\n * @memberof DataCollector\n * @name teardown\n * @function\n * @description Cleanly remove anything set up by {@link module:braintree-web/data-collector.create|create}.\n * @param {callback} [callback] Called on completion. If no callback is provided, `teardown` returns a promise.\n * @instance\n * @example\n * dataCollectorInstance.teardown();\n * @example ';\n }, 10);\n\n return iframe;\n};\n\nKount.prototype._initializeEnvironment = function (options) {\n var url = environmentUrls[options.environment];\n\n if (url == null) {\n throw new Error(\n options.environment + \" is not a valid environment for kount.environment\"\n );\n }\n\n return {\n url: url,\n name: options.environment,\n id: options.merchantId,\n };\n};\n\nmodule.exports = {\n setup: setup,\n Kount: Kount,\n environmentUrls: environmentUrls,\n};\n\n},{\"../lib/camel-case-to-snake-case\":125,\"./vendor/sjcl\":100}],100:[function(_dereq_,module,exports){\n\"use strict\";\nvar sjcl = {\n cipher: {},\n hash: {},\n keyexchange: {},\n mode: {},\n misc: {},\n codec: {},\n exception: {\n corrupt: function (a) {\n this.toString = function () {\n return \"CORRUPT: \" + this.message;\n };\n this.message = a;\n },\n invalid: function (a) {\n this.toString = function () {\n return \"INVALID: \" + this.message;\n };\n this.message = a;\n },\n bug: function (a) {\n this.toString = function () {\n return \"BUG: \" + this.message;\n };\n this.message = a;\n },\n notReady: function (a) {\n this.toString = function () {\n return \"NOT READY: \" + this.message;\n };\n this.message = a;\n },\n },\n};\nsjcl.cipher.aes = function (a) {\n this.l[0][0][0] || this.G();\n var b,\n c,\n d,\n e,\n f = this.l[0][4],\n g = this.l[1];\n b = a.length;\n var k = 1;\n if (4 !== b && 6 !== b && 8 !== b)\n throw new sjcl.exception.invalid(\"invalid aes key size\");\n this.b = [(d = a.slice(0)), (e = [])];\n for (a = b; a < 4 * b + 28; a++) {\n c = d[a - 1];\n if (0 === a % b || (8 === b && 4 === a % b))\n (c =\n (f[c >>> 24] << 24) ^\n (f[(c >> 16) & 255] << 16) ^\n (f[(c >> 8) & 255] << 8) ^\n f[c & 255]),\n 0 === a % b &&\n ((c = (c << 8) ^ (c >>> 24) ^ (k << 24)),\n (k = (k << 1) ^ (283 * (k >> 7))));\n d[a] = d[a - b] ^ c;\n }\n for (b = 0; a; b++, a--)\n (c = d[b & 3 ? a : a - 4]),\n (e[b] =\n 4 >= a || 4 > b\n ? c\n : g[0][f[c >>> 24]] ^\n g[1][f[(c >> 16) & 255]] ^\n g[2][f[(c >> 8) & 255]] ^\n g[3][f[c & 255]]);\n};\nsjcl.cipher.aes.prototype = {\n encrypt: function (a) {\n return t(this, a, 0);\n },\n decrypt: function (a) {\n return t(this, a, 1);\n },\n l: [\n [[], [], [], [], []],\n [[], [], [], [], []],\n ],\n G: function () {\n var a = this.l[0],\n b = this.l[1],\n c = a[4],\n d = b[4],\n e,\n f,\n g,\n k = [],\n l = [],\n p,\n n,\n h,\n m;\n for (e = 0; 0x100 > e; e++) l[(k[e] = (e << 1) ^ (283 * (e >> 7))) ^ e] = e;\n for (f = g = 0; !c[f]; f ^= p || 1, g = l[g] || 1)\n for (\n h = g ^ (g << 1) ^ (g << 2) ^ (g << 3) ^ (g << 4),\n h = (h >> 8) ^ (h & 255) ^ 99,\n c[f] = h,\n d[h] = f,\n n = k[(e = k[(p = k[f])])],\n m = (0x1010101 * n) ^ (0x10001 * e) ^ (0x101 * p) ^ (0x1010100 * f),\n n = (0x101 * k[h]) ^ (0x1010100 * h),\n e = 0;\n 4 > e;\n e++\n )\n (a[e][f] = n = (n << 24) ^ (n >>> 8)),\n (b[e][h] = m = (m << 24) ^ (m >>> 8));\n for (e = 0; 5 > e; e++) (a[e] = a[e].slice(0)), (b[e] = b[e].slice(0));\n },\n};\nfunction t(a, b, c) {\n if (4 !== b.length)\n throw new sjcl.exception.invalid(\"invalid aes block size\");\n var d = a.b[c],\n e = b[0] ^ d[0],\n f = b[c ? 3 : 1] ^ d[1],\n g = b[2] ^ d[2];\n b = b[c ? 1 : 3] ^ d[3];\n var k,\n l,\n p,\n n = d.length / 4 - 2,\n h,\n m = 4,\n q = [0, 0, 0, 0];\n k = a.l[c];\n a = k[0];\n var r = k[1],\n v = k[2],\n w = k[3],\n x = k[4];\n for (h = 0; h < n; h++)\n (k =\n a[e >>> 24] ^ r[(f >> 16) & 255] ^ v[(g >> 8) & 255] ^ w[b & 255] ^ d[m]),\n (l =\n a[f >>> 24] ^\n r[(g >> 16) & 255] ^\n v[(b >> 8) & 255] ^\n w[e & 255] ^\n d[m + 1]),\n (p =\n a[g >>> 24] ^\n r[(b >> 16) & 255] ^\n v[(e >> 8) & 255] ^\n w[f & 255] ^\n d[m + 2]),\n (b =\n a[b >>> 24] ^\n r[(e >> 16) & 255] ^\n v[(f >> 8) & 255] ^\n w[g & 255] ^\n d[m + 3]),\n (m += 4),\n (e = k),\n (f = l),\n (g = p);\n for (h = 0; 4 > h; h++)\n (q[c ? 3 & -h : h] =\n (x[e >>> 24] << 24) ^\n (x[(f >> 16) & 255] << 16) ^\n (x[(g >> 8) & 255] << 8) ^\n x[b & 255] ^\n d[m++]),\n (k = e),\n (e = f),\n (f = g),\n (g = b),\n (b = k);\n return q;\n}\nsjcl.bitArray = {\n bitSlice: function (a, b, c) {\n a = sjcl.bitArray.M(a.slice(b / 32), 32 - (b & 31)).slice(1);\n return void 0 === c ? a : sjcl.bitArray.clamp(a, c - b);\n },\n extract: function (a, b, c) {\n var d = Math.floor((-b - c) & 31);\n return (\n (((b + c - 1) ^ b) & -32\n ? (a[(b / 32) | 0] << (32 - d)) ^ (a[(b / 32 + 1) | 0] >>> d)\n : a[(b / 32) | 0] >>> d) &\n ((1 << c) - 1)\n );\n },\n concat: function (a, b) {\n if (0 === a.length || 0 === b.length) return a.concat(b);\n var c = a[a.length - 1],\n d = sjcl.bitArray.getPartial(c);\n return 32 === d\n ? a.concat(b)\n : sjcl.bitArray.M(b, d, c | 0, a.slice(0, a.length - 1));\n },\n bitLength: function (a) {\n var b = a.length;\n return 0 === b ? 0 : 32 * (b - 1) + sjcl.bitArray.getPartial(a[b - 1]);\n },\n clamp: function (a, b) {\n if (32 * a.length < b) return a;\n a = a.slice(0, Math.ceil(b / 32));\n var c = a.length;\n b = b & 31;\n 0 < c &&\n b &&\n (a[c - 1] = sjcl.bitArray.partial(\n b,\n a[c - 1] & (2147483648 >> (b - 1)),\n 1\n ));\n return a;\n },\n partial: function (a, b, c) {\n return 32 === a ? b : (c ? b | 0 : b << (32 - a)) + 0x10000000000 * a;\n },\n getPartial: function (a) {\n return Math.round(a / 0x10000000000) || 32;\n },\n equal: function (a, b) {\n if (sjcl.bitArray.bitLength(a) !== sjcl.bitArray.bitLength(b)) return !1;\n var c = 0,\n d;\n for (d = 0; d < a.length; d++) c |= a[d] ^ b[d];\n return 0 === c;\n },\n M: function (a, b, c, d) {\n var e;\n e = 0;\n for (void 0 === d && (d = []); 32 <= b; b -= 32) d.push(c), (c = 0);\n if (0 === b) return d.concat(a);\n for (e = 0; e < a.length; e++)\n d.push(c | (a[e] >>> b)), (c = a[e] << (32 - b));\n e = a.length ? a[a.length - 1] : 0;\n a = sjcl.bitArray.getPartial(e);\n d.push(sjcl.bitArray.partial((b + a) & 31, 32 < b + a ? c : d.pop(), 1));\n return d;\n },\n Y: function (a, b) {\n return [a[0] ^ b[0], a[1] ^ b[1], a[2] ^ b[2], a[3] ^ b[3]];\n },\n byteswapM: function (a) {\n var b, c;\n for (b = 0; b < a.length; ++b)\n (c = a[b]),\n (a[b] =\n (c >>> 24) | ((c >>> 8) & 0xff00) | ((c & 0xff00) << 8) | (c << 24));\n return a;\n },\n};\nsjcl.codec.utf8String = {\n fromBits: function (a) {\n var b = \"\",\n c = sjcl.bitArray.bitLength(a),\n d,\n e;\n for (d = 0; d < c / 8; d++)\n 0 === (d & 3) && (e = a[d / 4]),\n (b += String.fromCharCode(((e >>> 8) >>> 8) >>> 8)),\n (e <<= 8);\n return decodeURIComponent(escape(b));\n },\n toBits: function (a) {\n a = unescape(encodeURIComponent(a));\n var b = [],\n c,\n d = 0;\n for (c = 0; c < a.length; c++)\n (d = (d << 8) | a.charCodeAt(c)), 3 === (c & 3) && (b.push(d), (d = 0));\n c & 3 && b.push(sjcl.bitArray.partial(8 * (c & 3), d));\n return b;\n },\n};\nsjcl.codec.hex = {\n fromBits: function (a) {\n var b = \"\",\n c;\n for (c = 0; c < a.length; c++)\n b += ((a[c] | 0) + 0xf00000000000).toString(16).substr(4);\n return b.substr(0, sjcl.bitArray.bitLength(a) / 4);\n },\n toBits: function (a) {\n var b,\n c = [],\n d;\n a = a.replace(/\\s|0x/g, \"\");\n d = a.length;\n a = a + \"00000000\";\n for (b = 0; b < a.length; b += 8) c.push(parseInt(a.substr(b, 8), 16) ^ 0);\n return sjcl.bitArray.clamp(c, 4 * d);\n },\n};\nsjcl.hash.sha256 = function (a) {\n this.b[0] || this.G();\n a\n ? ((this.u = a.u.slice(0)), (this.o = a.o.slice(0)), (this.h = a.h))\n : this.reset();\n};\nsjcl.hash.sha256.hash = function (a) {\n return new sjcl.hash.sha256().update(a).finalize();\n};\nsjcl.hash.sha256.prototype = {\n blockSize: 512,\n reset: function () {\n this.u = this.K.slice(0);\n this.o = [];\n this.h = 0;\n return this;\n },\n update: function (a) {\n \"string\" === typeof a && (a = sjcl.codec.utf8String.toBits(a));\n var b,\n c = (this.o = sjcl.bitArray.concat(this.o, a));\n b = this.h;\n a = this.h = b + sjcl.bitArray.bitLength(a);\n if (0x1fffffffffffff < a)\n throw new sjcl.exception.invalid(\"Cannot hash more than 2^53 - 1 bits\");\n if (\"undefined\" !== typeof Uint32Array) {\n var d = new Uint32Array(c),\n e = 0;\n for (b = 512 + b - ((512 + b) & 0x1ff); b <= a; b += 512)\n u(this, d.subarray(16 * e, 16 * (e + 1))), (e += 1);\n c.splice(0, 16 * e);\n } else\n for (b = 512 + b - ((512 + b) & 0x1ff); b <= a; b += 512)\n u(this, c.splice(0, 16));\n return this;\n },\n finalize: function () {\n var a,\n b = this.o,\n c = this.u,\n b = sjcl.bitArray.concat(b, [sjcl.bitArray.partial(1, 1)]);\n for (a = b.length + 2; a & 15; a++) b.push(0);\n b.push(Math.floor(this.h / 0x100000000));\n for (b.push(this.h | 0); b.length; ) u(this, b.splice(0, 16));\n this.reset();\n return c;\n },\n K: [],\n b: [],\n G: function () {\n function a(a) {\n return (0x100000000 * (a - Math.floor(a))) | 0;\n }\n for (var b = 0, c = 2, d, e; 64 > b; c++) {\n e = !0;\n for (d = 2; d * d <= c; d++)\n if (0 === c % d) {\n e = !1;\n break;\n }\n e &&\n (8 > b && (this.K[b] = a(Math.pow(c, 0.5))),\n (this.b[b] = a(Math.pow(c, 1 / 3))),\n b++);\n }\n },\n};\nfunction u(a, b) {\n var c,\n d,\n e,\n f = a.u,\n g = a.b,\n k = f[0],\n l = f[1],\n p = f[2],\n n = f[3],\n h = f[4],\n m = f[5],\n q = f[6],\n r = f[7];\n for (c = 0; 64 > c; c++)\n 16 > c\n ? (d = b[c])\n : ((d = b[(c + 1) & 15]),\n (e = b[(c + 14) & 15]),\n (d = b[c & 15] =\n (((d >>> 7) ^ (d >>> 18) ^ (d >>> 3) ^ (d << 25) ^ (d << 14)) +\n ((e >>> 17) ^ (e >>> 19) ^ (e >>> 10) ^ (e << 15) ^ (e << 13)) +\n b[c & 15] +\n b[(c + 9) & 15]) |\n 0)),\n (d =\n d +\n r +\n ((h >>> 6) ^\n (h >>> 11) ^\n (h >>> 25) ^\n (h << 26) ^\n (h << 21) ^\n (h << 7)) +\n (q ^ (h & (m ^ q))) +\n g[c]),\n (r = q),\n (q = m),\n (m = h),\n (h = (n + d) | 0),\n (n = p),\n (p = l),\n (l = k),\n (k =\n (d +\n ((l & p) ^ (n & (l ^ p))) +\n ((l >>> 2) ^\n (l >>> 13) ^\n (l >>> 22) ^\n (l << 30) ^\n (l << 19) ^\n (l << 10))) |\n 0);\n f[0] = (f[0] + k) | 0;\n f[1] = (f[1] + l) | 0;\n f[2] = (f[2] + p) | 0;\n f[3] = (f[3] + n) | 0;\n f[4] = (f[4] + h) | 0;\n f[5] = (f[5] + m) | 0;\n f[6] = (f[6] + q) | 0;\n f[7] = (f[7] + r) | 0;\n}\nsjcl.prng = function (a) {\n this.c = [new sjcl.hash.sha256()];\n this.i = [0];\n this.H = 0;\n this.v = {};\n this.F = 0;\n this.J = {};\n this.L = this.f = this.j = this.T = 0;\n this.b = [0, 0, 0, 0, 0, 0, 0, 0];\n this.g = [0, 0, 0, 0];\n this.C = void 0;\n this.D = a;\n this.s = !1;\n this.B = { progress: {}, seeded: {} };\n this.m = this.S = 0;\n this.w = 1;\n this.A = 2;\n this.O = 0x10000;\n this.I = [0, 48, 64, 96, 128, 192, 0x100, 384, 512, 768, 1024];\n this.P = 3e4;\n this.N = 80;\n};\nsjcl.prng.prototype = {\n randomWords: function (a, b) {\n var c = [],\n d;\n d = this.isReady(b);\n var e;\n if (d === this.m)\n throw new sjcl.exception.notReady(\"generator isn't seeded\");\n if (d & this.A) {\n d = !(d & this.w);\n e = [];\n var f = 0,\n g;\n this.L = e[0] = new Date().valueOf() + this.P;\n for (g = 0; 16 > g; g++) e.push((0x100000000 * Math.random()) | 0);\n for (\n g = 0;\n g < this.c.length &&\n ((e = e.concat(this.c[g].finalize())),\n (f += this.i[g]),\n (this.i[g] = 0),\n d || !(this.H & (1 << g)));\n g++\n );\n this.H >= 1 << this.c.length &&\n (this.c.push(new sjcl.hash.sha256()), this.i.push(0));\n this.f -= f;\n f > this.j && (this.j = f);\n this.H++;\n this.b = sjcl.hash.sha256.hash(this.b.concat(e));\n this.C = new sjcl.cipher.aes(this.b);\n for (\n d = 0;\n 4 > d && ((this.g[d] = (this.g[d] + 1) | 0), !this.g[d]);\n d++\n );\n }\n for (d = 0; d < a; d += 4)\n 0 === (d + 1) % this.O && y(this),\n (e = z(this)),\n c.push(e[0], e[1], e[2], e[3]);\n y(this);\n return c.slice(0, a);\n },\n setDefaultParanoia: function (a, b) {\n if (\n 0 === a &&\n \"Setting paranoia=0 will ruin your security; use it only for testing\" !==\n b\n )\n throw new sjcl.exception.invalid(\n \"Setting paranoia=0 will ruin your security; use it only for testing\"\n );\n this.D = a;\n },\n addEntropy: function (a, b, c) {\n c = c || \"user\";\n var d,\n e,\n f = new Date().valueOf(),\n g = this.v[c],\n k = this.isReady(),\n l = 0;\n d = this.J[c];\n void 0 === d && (d = this.J[c] = this.T++);\n void 0 === g && (g = this.v[c] = 0);\n this.v[c] = (this.v[c] + 1) % this.c.length;\n switch (typeof a) {\n case \"number\":\n void 0 === b && (b = 1);\n this.c[g].update([d, this.F++, 1, b, f, 1, a | 0]);\n break;\n case \"object\":\n c = Object.prototype.toString.call(a);\n if (\"[object Uint32Array]\" === c) {\n e = [];\n for (c = 0; c < a.length; c++) e.push(a[c]);\n a = e;\n } else\n for (\n \"[object Array]\" !== c && (l = 1), c = 0;\n c < a.length && !l;\n c++\n )\n \"number\" !== typeof a[c] && (l = 1);\n if (!l) {\n if (void 0 === b)\n for (c = b = 0; c < a.length; c++)\n for (e = a[c]; 0 < e; ) b++, (e = e >>> 1);\n this.c[g].update([d, this.F++, 2, b, f, a.length].concat(a));\n }\n break;\n case \"string\":\n void 0 === b && (b = a.length);\n this.c[g].update([d, this.F++, 3, b, f, a.length]);\n this.c[g].update(a);\n break;\n default:\n l = 1;\n }\n if (l)\n throw new sjcl.exception.bug(\n \"random: addEntropy only supports number, array of numbers or string\"\n );\n this.i[g] += b;\n this.f += b;\n k === this.m &&\n (this.isReady() !== this.m && A(\"seeded\", Math.max(this.j, this.f)),\n A(\"progress\", this.getProgress()));\n },\n isReady: function (a) {\n a = this.I[void 0 !== a ? a : this.D];\n return this.j && this.j >= a\n ? this.i[0] > this.N && new Date().valueOf() > this.L\n ? this.A | this.w\n : this.w\n : this.f >= a\n ? this.A | this.m\n : this.m;\n },\n getProgress: function (a) {\n a = this.I[a ? a : this.D];\n return this.j >= a ? 1 : this.f > a ? 1 : this.f / a;\n },\n startCollectors: function () {\n if (!this.s) {\n this.a = {\n loadTimeCollector: B(this, this.V),\n mouseCollector: B(this, this.W),\n keyboardCollector: B(this, this.U),\n accelerometerCollector: B(this, this.R),\n touchCollector: B(this, this.X),\n };\n if (window.addEventListener)\n window.addEventListener(\"load\", this.a.loadTimeCollector, !1),\n window.addEventListener(\"mousemove\", this.a.mouseCollector, !1),\n window.addEventListener(\"keypress\", this.a.keyboardCollector, !1),\n window.addEventListener(\n \"devicemotion\",\n this.a.accelerometerCollector,\n !1\n ),\n window.addEventListener(\"touchmove\", this.a.touchCollector, !1);\n else if (document.attachEvent)\n document.attachEvent(\"onload\", this.a.loadTimeCollector),\n document.attachEvent(\"onmousemove\", this.a.mouseCollector),\n document.attachEvent(\"keypress\", this.a.keyboardCollector);\n else throw new sjcl.exception.bug(\"can't attach event\");\n this.s = !0;\n }\n },\n stopCollectors: function () {\n this.s &&\n (window.removeEventListener\n ? (window.removeEventListener(\"load\", this.a.loadTimeCollector, !1),\n window.removeEventListener(\"mousemove\", this.a.mouseCollector, !1),\n window.removeEventListener(\"keypress\", this.a.keyboardCollector, !1),\n window.removeEventListener(\n \"devicemotion\",\n this.a.accelerometerCollector,\n !1\n ),\n window.removeEventListener(\"touchmove\", this.a.touchCollector, !1))\n : document.detachEvent &&\n (document.detachEvent(\"onload\", this.a.loadTimeCollector),\n document.detachEvent(\"onmousemove\", this.a.mouseCollector),\n document.detachEvent(\"keypress\", this.a.keyboardCollector)),\n (this.s = !1));\n },\n addEventListener: function (a, b) {\n this.B[a][this.S++] = b;\n },\n removeEventListener: function (a, b) {\n var c,\n d,\n e = this.B[a],\n f = [];\n for (d in e) e.hasOwnProperty(d) && e[d] === b && f.push(d);\n for (c = 0; c < f.length; c++) (d = f[c]), delete e[d];\n },\n U: function () {\n C(this, 1);\n },\n W: function (a) {\n var b, c;\n try {\n (b = a.x || a.clientX || a.offsetX || 0),\n (c = a.y || a.clientY || a.offsetY || 0);\n } catch (d) {\n c = b = 0;\n }\n 0 != b && 0 != c && this.addEntropy([b, c], 2, \"mouse\");\n C(this, 0);\n },\n X: function (a) {\n a = a.touches[0] || a.changedTouches[0];\n this.addEntropy([a.pageX || a.clientX, a.pageY || a.clientY], 1, \"touch\");\n C(this, 0);\n },\n V: function () {\n C(this, 2);\n },\n R: function (a) {\n a =\n a.accelerationIncludingGravity.x ||\n a.accelerationIncludingGravity.y ||\n a.accelerationIncludingGravity.z;\n if (window.orientation) {\n var b = window.orientation;\n \"number\" === typeof b && this.addEntropy(b, 1, \"accelerometer\");\n }\n a && this.addEntropy(a, 2, \"accelerometer\");\n C(this, 0);\n },\n};\nfunction A(a, b) {\n var c,\n d = sjcl.random.B[a],\n e = [];\n for (c in d) d.hasOwnProperty(c) && e.push(d[c]);\n for (c = 0; c < e.length; c++) e[c](b);\n}\nfunction C(a, b) {\n \"undefined\" !== typeof window &&\n window.performance &&\n \"function\" === typeof window.performance.now\n ? a.addEntropy(window.performance.now(), b, \"loadtime\")\n : a.addEntropy(new Date().valueOf(), b, \"loadtime\");\n}\nfunction y(a) {\n a.b = z(a).concat(z(a));\n a.C = new sjcl.cipher.aes(a.b);\n}\nfunction z(a) {\n for (var b = 0; 4 > b && ((a.g[b] = (a.g[b] + 1) | 0), !a.g[b]); b++);\n return a.C.encrypt(a.g);\n}\nfunction B(a, b) {\n return function () {\n b.apply(a, arguments);\n };\n}\nsjcl.random = new sjcl.prng(6);\na: try {\n var D, E, F, G;\n if ((G = \"undefined\" !== typeof module && module.exports)) {\n var H;\n try {\n H = _dereq_(\"crypto\");\n } catch (a) {\n H = null;\n }\n G = E = H;\n }\n if (G && E.randomBytes)\n (D = E.randomBytes(128)),\n (D = new Uint32Array(new Uint8Array(D).buffer)),\n sjcl.random.addEntropy(D, 1024, \"crypto['randomBytes']\");\n else if (\n \"undefined\" !== typeof window &&\n \"undefined\" !== typeof Uint32Array\n ) {\n F = new Uint32Array(32);\n if (window.crypto && window.crypto.getRandomValues)\n window.crypto.getRandomValues(F);\n else if (window.msCrypto && window.msCrypto.getRandomValues)\n window.msCrypto.getRandomValues(F);\n else break a;\n sjcl.random.addEntropy(F, 1024, \"crypto['getRandomValues']\");\n }\n} catch (a) {\n \"undefined\" !== typeof window &&\n window.console &&\n (console.log(\"There was an error collecting entropy from the browser:\"),\n console.log(a));\n}\n\"undefined\" !== typeof module && module.exports && (module.exports = sjcl);\n\"function\" === typeof define &&\n define([], function () {\n return sjcl;\n });\n\n},{\"crypto\":undefined}],101:[function(_dereq_,module,exports){\n\"use strict\";\n\n/**\n * @name BraintreeError.Google Payment - Creation Error Codes\n * @description Errors that occur when [creating the Google Payment component](./module-braintree-web_google-payment.html#.create).\n * @property {MERCHANT} GOOGLE_PAYMENT_NOT_ENABLED Occurs when Google Pay is not enabled on the Braintree control panel.\n * @property {MERCHANT} GOOGLE_PAYMENT_UNSUPPORTED_VERSION Occurs when a Google Pay version is used that is not supported by the Braintree SDK.\n */\n\n/**\n * @name BraintreeError.Google Payment - parseResponse Error Codes\n * @description Errors that occur when [parsing the response from Google](./GooglePayment.html#parseResponse).\n * @property {UNKNOWN} GOOGLE_PAYMENT_GATEWAY_ERROR Occurs when Google Pay could not be tokenized.\n */\n\nvar BraintreeError = _dereq_(\"../lib/braintree-error\");\n\nmodule.exports = {\n GOOGLE_PAYMENT_NOT_ENABLED: {\n type: BraintreeError.types.MERCHANT,\n code: \"GOOGLE_PAYMENT_NOT_ENABLED\",\n message: \"Google Pay is not enabled for this merchant.\",\n },\n GOOGLE_PAYMENT_GATEWAY_ERROR: {\n code: \"GOOGLE_PAYMENT_GATEWAY_ERROR\",\n message:\n \"There was an error when tokenizing the Google Pay payment method.\",\n type: BraintreeError.types.UNKNOWN,\n },\n GOOGLE_PAYMENT_UNSUPPORTED_VERSION: {\n code: \"GOOGLE_PAYMENT_UNSUPPORTED_VERSION\",\n type: BraintreeError.types.MERCHANT,\n },\n};\n\n},{\"../lib/braintree-error\":124}],102:[function(_dereq_,module,exports){\n\"use strict\";\n\nvar analytics = _dereq_(\"../lib/analytics\");\nvar assign = _dereq_(\"../lib/assign\").assign;\nvar convertMethodsToError = _dereq_(\"../lib/convert-methods-to-error\");\nvar find = _dereq_(\"../lib/find\");\nvar generateGooglePayConfiguration = _dereq_(\"../lib/generate-google-pay-configuration\");\nvar BraintreeError = _dereq_(\"../lib/braintree-error\");\nvar errors = _dereq_(\"./errors\");\nvar methods = _dereq_(\"../lib/methods\");\nvar wrapPromise = _dereq_(\"@braintree/wrap-promise\");\n\nvar CREATE_PAYMENT_DATA_REQUEST_METHODS = {\n 1: \"_createV1PaymentDataRequest\",\n 2: \"_createV2PaymentDataRequest\",\n};\n\n/**\n * @typedef {object} GooglePayment~tokenizePayload\n * @property {string} nonce The payment method nonce.\n * @property {object} details Additional account details.\n * @property {string} details.cardType Type of card, ex: Visa, MasterCard.\n * @property {string} details.lastFour Last four digits of card number.\n * @property {string} details.lastTwo Last two digits of card number.\n * @property {boolean} details.isNetworkTokenized True if the card is network tokenized.\n * @property {string} details.bin First six digits of card number.\n * @property {string} description A human-readable description.\n * @property {string} type The payment method type, `CreditCard` or `AndroidPayCard`.\n * @property {object} binData Information about the card based on the bin.\n * @property {string} binData.commercial Possible values: 'Yes', 'No', 'Unknown'.\n * @property {string} binData.countryOfIssuance The country of issuance.\n * @property {string} binData.debit Possible values: 'Yes', 'No', 'Unknown'.\n * @property {string} binData.durbinRegulated Possible values: 'Yes', 'No', 'Unknown'.\n * @property {string} binData.healthcare Possible values: 'Yes', 'No', 'Unknown'.\n * @property {string} binData.issuingBank The issuing bank.\n * @property {string} binData.payroll Possible values: 'Yes', 'No', 'Unknown'.\n * @property {string} binData.prepaid Possible values: 'Yes', 'No', 'Unknown'.\n * @property {string} binData.productId The product id.\n */\n\n/**\n * @class GooglePayment\n * @param {object} options Google Payment {@link module:braintree-web/google-payment.create create} options.\n * @description Do not use this constructor directly. Use {@link module:braintree-web/google-payment.create|braintree-web.google-payment.create} instead.\n * @classdesc This class represents a Google Payment component produced by {@link module:braintree-web/google-payment.create|braintree-web/google-payment.create}. Instances of this class have methods for initializing the Google Pay flow.\n */\nfunction GooglePayment(options) {\n this._createPromise = options.createPromise;\n this._client = options.client;\n this._useDeferredClient = options.useDeferredClient;\n // NEXT_MAJOR_VERSION this should be updated to 2 (or whatever the current latest version is)\n this._googlePayVersion = options.googlePayVersion || 1;\n this._googleMerchantId = options.googleMerchantId;\n\n if (this._isUnsupportedGooglePayAPIVersion()) {\n throw new BraintreeError({\n code: errors.GOOGLE_PAYMENT_UNSUPPORTED_VERSION.code,\n message:\n \"The Braintree SDK does not support Google Pay version \" +\n this._googlePayVersion +\n \". Please upgrade the version of your Braintree SDK and contact support if this error persists.\",\n type: errors.GOOGLE_PAYMENT_UNSUPPORTED_VERSION.type,\n });\n }\n}\n\nGooglePayment.prototype._waitForClient = function () {\n if (this._client) {\n return Promise.resolve();\n }\n\n return this._createPromise.then(\n function (client) {\n this._client = client;\n }.bind(this)\n );\n};\n\nGooglePayment.prototype._isUnsupportedGooglePayAPIVersion = function () {\n // if we don't have createPaymentDatqRequest method for the specific\n // API version, then the version is not supported\n return !(this._googlePayVersion in CREATE_PAYMENT_DATA_REQUEST_METHODS);\n};\n\nGooglePayment.prototype._getDefaultConfig = function () {\n if (!this._defaultConfig) {\n this._defaultConfig = generateGooglePayConfiguration(\n this._client.getConfiguration(),\n this._googlePayVersion,\n this._googleMerchantId\n );\n }\n\n return this._defaultConfig;\n};\n\nGooglePayment.prototype._createV1PaymentDataRequest = function (\n paymentDataRequest\n) {\n var defaultConfig = this._getDefaultConfig();\n var overrideCardNetworks =\n paymentDataRequest.cardRequirements &&\n paymentDataRequest.cardRequirements.allowedCardNetworks;\n var defaultConfigCardNetworks =\n defaultConfig.cardRequirements.allowedCardNetworks;\n var allowedCardNetworks = overrideCardNetworks || defaultConfigCardNetworks;\n\n paymentDataRequest = assign({}, defaultConfig, paymentDataRequest);\n\n // this way we can preserve allowedCardNetworks from default integration\n // if merchant did not pass any in `cardRequirements`\n paymentDataRequest.cardRequirements.allowedCardNetworks = allowedCardNetworks;\n\n return paymentDataRequest;\n};\n\nGooglePayment.prototype._createV2PaymentDataRequest = function (\n paymentDataRequest\n) {\n var defaultConfig = this._getDefaultConfig();\n\n if (paymentDataRequest.allowedPaymentMethods) {\n paymentDataRequest.allowedPaymentMethods.forEach(function (paymentMethod) {\n var defaultPaymentMethod = find(\n defaultConfig.allowedPaymentMethods,\n \"type\",\n paymentMethod.type\n );\n\n if (defaultPaymentMethod) {\n applyDefaultsToPaymentMethodConfiguration(\n paymentMethod,\n defaultPaymentMethod\n );\n }\n });\n }\n\n paymentDataRequest = assign({}, defaultConfig, paymentDataRequest);\n\n return paymentDataRequest;\n};\n\n/**\n * Create a configuration object for use in the `loadPaymentData` method.\n *\n * **Note**: Version 1 of the Google Pay Api is deprecated and will become unsupported in a future version. Until then, version 1 will continue to be used by default, and version 1 schema parameters and overrides will remain functional on existing integrations. However, new integrations and all following examples will be presented in the GooglePay version 2 schema. See [Google Pay's upgrade guide](https://developers.google.com/pay/api/web/guides/resources/update-to-latest-version) to see how to update your integration.\n *\n * If `options.googlePayVersion === 2` was set during the initial {@link module:braintree-web/google-payment.create|create} call, overrides must match the Google Pay v2 schema to be valid.\n *\n * @public\n * @param {object} overrides The supplied parameters for creating the PaymentDataRequest object. Required parameters are:\n * @param {object} overrides.transactionInfo Object according to the [Google Pay Transaction Info](https://developers.google.com/pay/api/web/reference/object#TransactionInfo) spec.\n * Optionally, any of the parameters in the [PaymentDataRequest](https://developers.google.com/pay/api/web/reference/object#PaymentDataRequest) parameters can be overridden, but note that it is recommended only to override top level parameters to avoid squashing deeply nested configuration objects. An example can be found below showing how to safely edit these deeply nested objects.\n * @example\n * var paymentDataRequest = googlePaymentInstance.createPaymentDataRequest({\n * merchantInfo: {\n * merchantId: 'my-merchant-id-from-google'\n * },\n * transactionInfo: {\n * currencyCode: 'USD',\n * totalPriceStatus: 'FINAL',\n * totalPrice: '100.00'\n * }\n * });\n *\n * // Update card payment methods to require billing address\n * var cardPaymentMethod = paymentDataRequest.allowedPaymentMethods;\n * cardPaymentMethod.parameters.billingAddressRequired = true;\n * cardPaymentMethod.parameters.billingAddressParameters = {\n * format: 'FULL',\n * phoneNumberRequired: true\n * };\n *\n * var paymentsClient = new google.payments.api.PaymentsClient({\n * environment: 'TEST' // or 'PRODUCTION'\n * })\n *\n * paymentsClient.loadPaymentData(paymentDataRequest).then(function (response) {\n * // handle response with googlePaymentInstance.parseResponse\n * // (see below)\n * });\n * @example
data
, is a {@link GooglePay~tokenizePayload|tokenizePayload}. If no callback is provided, `parseResponse` returns a promise that resolves with a {@link GooglePayment~tokenizePayload|tokenizePayload}.\n * @example with callback\n * var paymentsClient = new google.payments.api.PaymentsClient({\n * environment: 'TEST' // or 'PRODUCTION'\n * })\n *\n * paymentsClient.loadPaymentData(paymentDataRequestFromCreatePaymentDataRequest).then(function (response) {\n * googlePaymentInstance.parseResponse(response, function (err, data) {\n * if (err) {\n * // handle errors\n * }\n * // send parsedResponse.nonce to your server\n * });\n * });\n * @example with promise\n * var paymentsClient = new google.payments.api.PaymentsClient({\n * environment: 'TEST' // or 'PRODUCTION'\n * })\n *\n * paymentsClient.loadPaymentData(paymentDataRequestFromCreatePaymentDataRequest).then(function (response) {\n * return googlePaymentInstance.parseResponse(response);\n * }).then(function (parsedResponse) {\n * // send parsedResponse.nonce to your server\n * }).catch(function (err) {\n * // handle errors\n * });\n * @returns {(Promise|void)} Returns a promise that resolves the parsed response if no callback is provided.\n */\nGooglePayment.prototype.parseResponse = function (response) {\n var self = this;\n\n return Promise.resolve()\n .then(function () {\n var payload;\n var rawResponse =\n response.apiVersion === 2\n ? response.paymentMethodData.tokenizationData.token\n : response.paymentMethodToken.token;\n var parsedResponse = JSON.parse(rawResponse);\n var error = parsedResponse.error;\n\n if (error) {\n return Promise.reject(error);\n }\n\n analytics.sendEvent(\n self._createPromise,\n \"google-payment.parseResponse.succeeded\"\n );\n\n if (parsedResponse.paypalAccounts) {\n payload = parsedResponse.paypalAccounts[0];\n analytics.sendEvent(\n self._createPromise,\n \"google-payment.parseResponse.succeeded.paypal\"\n );\n\n return Promise.resolve({\n nonce: payload.nonce,\n type: payload.type,\n description: payload.description,\n });\n }\n payload = parsedResponse.androidPayCards[0];\n analytics.sendEvent(\n self._createPromise,\n \"google-payment.parseResponse.succeeded.google-payment\"\n );\n\n return Promise.resolve({\n nonce: payload.nonce,\n type: payload.type,\n description: payload.description,\n details: {\n cardType: payload.details.cardType,\n lastFour: payload.details.lastFour,\n lastTwo: payload.details.lastTwo,\n isNetworkTokenized: payload.details.isNetworkTokenized,\n bin: payload.details.bin,\n },\n binData: payload.binData,\n });\n })\n .catch(function (error) {\n analytics.sendEvent(\n self._createPromise,\n \"google-payment.parseResponse.failed\"\n );\n\n return Promise.reject(\n new BraintreeError({\n code: errors.GOOGLE_PAYMENT_GATEWAY_ERROR.code,\n message: errors.GOOGLE_PAYMENT_GATEWAY_ERROR.message,\n type: errors.GOOGLE_PAYMENT_GATEWAY_ERROR.type,\n details: {\n originalError: error,\n },\n })\n );\n });\n};\n\n/**\n * Cleanly tear down anything set up by {@link module:braintree-web/google-payment.create|create}.\n * @public\n * @param {callback} [callback] Called once teardown is complete. No data is returned if teardown completes successfully.\n * @example\n * googlePaymentInstance.teardown();\n * @example
\n * - `\"number\"`\n * - `\"cvv\"`\n * - `\"expirationDate\"`\n * - `\"expirationMonth\"`\n * - `\"expirationYear\"`\n * - `\"postalCode\"`\n * - `\"cardholderName\"`\n * @property {object} fields\n * @property {?HostedFields~hostedFieldsFieldData} fields.number {@link HostedFields~hostedFieldsFieldData|hostedFieldsFieldData} for the number field, if it is present.\n * @property {?HostedFields~hostedFieldsFieldData} fields.cvv {@link HostedFields~hostedFieldsFieldData|hostedFieldsFieldData} for the CVV field, if it is present.\n * @property {?HostedFields~hostedFieldsFieldData} fields.expirationDate {@link HostedFields~hostedFieldsFieldData|hostedFieldsFieldData} for the expiration date field, if it is present.\n * @property {?HostedFields~hostedFieldsFieldData} fields.expirationMonth {@link HostedFields~hostedFieldsFieldData|hostedFieldsFieldData} for the expiration month field, if it is present.\n * @property {?HostedFields~hostedFieldsFieldData} fields.expirationYear {@link HostedFields~hostedFieldsFieldData|hostedFieldsFieldData} for the expiration year field, if it is present.\n * @property {?HostedFields~hostedFieldsFieldData} fields.postalCode {@link HostedFields~hostedFieldsFieldData|hostedFieldsFieldData} for the postal code field, if it is present.\n * @property {?HostedFields~hostedFieldsFieldData} fields.cardholderName {@link HostedFields~hostedFieldsFieldData|hostedFieldsFieldData} for the cardholder name field, if it is present.\n */\n\n/**\n * @typedef {object} HostedFields~binPayload\n * @description The event payload sent from {@link HostedFields#on|on} when the {@link HostedFields#event:binAvailable|binAvailable} event is emitted.\n * @property {string} bin The first 6 digits of the card number.\n */\n\n/**\n * @typedef {object} HostedFields~hostedFieldsFieldData\n * @description Data about Hosted Fields fields, sent in {@link HostedFields~stateObject|stateObjects}.\n * @property {HTMLElement} container Reference to the container DOM element on your page associated with the current event.\n * @property {boolean} isFocused Whether or not the input is currently focused.\n * @property {boolean} isEmpty Whether or not the user has entered a value in the input.\n * @property {boolean} isPotentiallyValid\n * A determination based on the future validity of the input value.\n * This is helpful when a user is entering a card number and types \"41\"
.\n * While that value is not valid for submission, it is still possible for\n * it to become a fully qualified entry. However, if the user enters \"4x\"
\n * it is clear that the card number can never become valid and isPotentiallyValid will\n * return false.\n * @property {boolean} isValid Whether or not the value of the associated input is fully qualified for submission.\n */\n\n/**\n * @typedef {object} HostedFields~hostedFieldsCard\n * @description Information about the card type, sent in {@link HostedFields~stateObject|stateObjects}.\n * @property {string} type The code-friendly representation of the card type. It will be one of the following strings:\n * - `american-express`\n * - `diners-club`\n * - `discover`\n * - `jcb`\n * - `maestro`\n * - `master-card`\n * - `unionpay`\n * - `visa`\n * @property {string} niceType The pretty-printed card type. It will be one of the following strings:\n * - `American Express`\n * - `Diners Club`\n * - `Discover`\n * - `JCB`\n * - `Maestro`\n * - `MasterCard`\n * - `UnionPay`\n * - `Visa`\n * @property {object} code\n * This object contains data relevant to the security code requirements of the card brand.\n * For example, on a Visa card there will be a CVV
of 3 digits, whereas an\n * American Express card requires a 4-digit CID
.\n * @property {string} code.name \"CVV\"
\"CID\"
\"CVC\"
\n * @property {number} code.size The expected length of the security code. Typically, this is 3 or 4.\n */\n\n/**\n * @name HostedFields#on\n * @function\n * @param {string} event The name of the event to which you are subscribing.\n * @param {function} handler A callback to handle the event.\n * @description Subscribes a handler function to a named event.\n *\n * **Events that emit a {@link HostedFields~stateObject|stateObject}.**\n * * {@link HostedFields#event:blur|blur}\n * * {@link HostedFields#event:focus|focus}\n * * {@link HostedFields#event:empty|empty}\n * * {@link HostedFields#event:notEmpty|notEmpty}\n * * {@link HostedFields#event:cardTypeChange|cardTypeChange}\n * * {@link HostedFields#event:validityChange|validityChange}\n * * {@link HostedFields#event:inputSubmitRequest|inputSubmitRequest}\n *\n * **Other Events**\n * * {@link HostedFields#event:binAvailable|binAvailable} - emits a {@link HostedFields~binPayload|bin payload}. Note: If you are using a [Referrer-Policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referrer-Policy) header that prevents the origin from being sent, this event will not fire.\n * @example\n * data
, is a {@link HostedFields~tokenizePayload|tokenizePayload}. If no callback is provided, `tokenize` returns a function that resolves with a {@link HostedFields~tokenizePayload|tokenizePayload}.\n * @example
data
, is a {@link UnionPay~enrollPayload|enrollPayload}. If no callback is provided, `enroll` returns a promise that resolves with {@link UnionPay~enrollPayload|enrollPayload}.\n * @returns {void}\n */\nUnionPay.prototype.enroll = function (options) {\n var self = this;\n var client = this._options.client;\n var card = options.card;\n var mobile = options.mobile;\n var hostedFields = options.hostedFields;\n var data;\n\n if (!mobile) {\n return Promise.reject(\n new BraintreeError(errors.UNIONPAY_MISSING_MOBILE_PHONE_DATA)\n );\n }\n\n if (hostedFields) {\n if (!hostedFields._bus) {\n return Promise.reject(\n new BraintreeError(errors.UNIONPAY_HOSTED_FIELDS_INSTANCE_INVALID)\n );\n } else if (card) {\n return Promise.reject(\n new BraintreeError(errors.UNIONPAY_CARD_AND_HOSTED_FIELDS_INSTANCES)\n );\n }\n\n return new Promise(function (resolve, reject) {\n self._initializeHostedFields().then(function () {\n self._bus.emit(\n events.HOSTED_FIELDS_ENROLL,\n { hostedFields: hostedFields, mobile: mobile },\n function (response) {\n if (response.err) {\n reject(new BraintreeError(response.err));\n\n return;\n }\n\n resolve(response.payload);\n }\n );\n });\n });\n } else if (card && card.number) {\n data = {\n _meta: { source: \"unionpay\" },\n unionPayEnrollment: {\n number: card.number,\n mobileCountryCode: mobile.countryCode,\n mobileNumber: mobile.number,\n },\n };\n\n if (card.expirationDate) {\n data.unionPayEnrollment.expirationDate = card.expirationDate;\n } else if (card.expirationMonth || card.expirationYear) {\n if (card.expirationMonth && card.expirationYear) {\n data.unionPayEnrollment.expirationYear = card.expirationYear;\n data.unionPayEnrollment.expirationMonth = card.expirationMonth;\n } else {\n return Promise.reject(\n new BraintreeError(errors.UNIONPAY_EXPIRATION_DATE_INCOMPLETE)\n );\n }\n }\n\n return client\n .request({\n method: \"post\",\n endpoint: \"union_pay_enrollments\",\n data: data,\n })\n .then(function (response) {\n analytics.sendEvent(client, \"unionpay.enrollment-succeeded\");\n\n return {\n enrollmentId: response.unionPayEnrollmentId,\n smsCodeRequired: response.smsCodeRequired,\n };\n })\n .catch(function (err) {\n var error;\n var status = err.details && err.details.httpStatus;\n\n if (status === 403) {\n error = err;\n } else if (status < 500) {\n error = new BraintreeError(\n errors.UNIONPAY_ENROLLMENT_CUSTOMER_INPUT_INVALID\n );\n error.details = { originalError: err };\n } else {\n error = new BraintreeError(errors.UNIONPAY_ENROLLMENT_NETWORK_ERROR);\n error.details = { originalError: err };\n }\n\n analytics.sendEvent(client, \"unionpay.enrollment-failed\");\n\n return Promise.reject(error);\n });\n }\n\n return Promise.reject(\n new BraintreeError(errors.UNIONPAY_CARD_OR_HOSTED_FIELDS_INSTANCE_REQUIRED)\n );\n};\n\n/**\n * @typedef {object} UnionPay~tokenizePayload\n * @property {string} nonce The payment method nonce.\n * @property {string} type Always CreditCard
.\n * @property {object} details Additional account details:\n * @property {string} details.cardType Type of card, ex: Visa, MasterCard.\n * @property {string} details.lastFour Last four digits of card number.\n * @property {string} details.lastTwo Last two digits of card number.\n * @property {string} description A human-readable description.\n */\n\n/**\n * Tokenizes a UnionPay card and returns a nonce payload.\n * @public\n * @param {object} options UnionPay tokenization options:\n * @param {object} [options.card] The card to enroll. Required if you are not using the `hostedFields` option.\n * @param {string} options.card.number The card number.\n * @param {string} [options.card.expirationDate] The card's expiration date. May be in the form `MM/YY` or `MM/YYYY`. When defined `expirationMonth` and `expirationYear` are ignored.\n * @param {string} [options.card.expirationMonth] The card's expiration month. This should be used with the `expirationYear` parameter. When `expirationDate` is defined this parameter is ignored.\n * @param {string} [options.card.expirationYear] The card's expiration year. This should be used with the `expirationMonth` parameter. When `expirationDate` is defined this parameter is ignored.\n * @param {string} [options.card.cvv] The card's security number.\n * @param {HostedFields} [options.hostedFields] The Hosted Fields instance used to collect card data. Required if you are not using the `card` option.\n * @param {string} options.enrollmentId The enrollment ID from {@link UnionPay#enroll}.\n * @param {string} [options.smsCode] The SMS code received from the user if {@link UnionPay#enroll} payload have `smsCodeRequired`. if `smsCodeRequired` is false, smsCode should not be passed.\n * @param {callback} [callback] The second argument, data
, is a {@link UnionPay~tokenizePayload|tokenizePayload}. If no callback is provided, `tokenize` returns a promise that resolves with a {@link UnionPay~tokenizePayload|tokenizePayload}.\n * @returns {(Promise|void)} Returns a promise if no callback is provided.\n */\nUnionPay.prototype.tokenize = function (options) {\n var data;\n var self = this;\n var client = this._options.client;\n var card = options.card;\n var hostedFields = options.hostedFields;\n\n if (card && hostedFields) {\n return Promise.reject(\n new BraintreeError(errors.UNIONPAY_CARD_AND_HOSTED_FIELDS_INSTANCES)\n );\n } else if (card) {\n data = {\n _meta: { source: \"unionpay\" },\n creditCard: {\n number: options.card.number,\n options: {\n unionPayEnrollment: {\n id: options.enrollmentId,\n },\n },\n },\n };\n\n if (options.smsCode) {\n data.creditCard.options.unionPayEnrollment.smsCode = options.smsCode;\n }\n\n if (card.expirationDate) {\n data.creditCard.expirationDate = card.expirationDate;\n } else if (card.expirationMonth && card.expirationYear) {\n data.creditCard.expirationYear = card.expirationYear;\n data.creditCard.expirationMonth = card.expirationMonth;\n }\n\n if (options.card.cvv) {\n data.creditCard.cvv = options.card.cvv;\n }\n\n return client\n .request({\n method: \"post\",\n endpoint: \"payment_methods/credit_cards\",\n data: data,\n })\n .then(function (response) {\n var tokenizedCard = response.creditCards[0];\n\n delete tokenizedCard.consumed;\n delete tokenizedCard.threeDSecureInfo;\n\n analytics.sendEvent(client, \"unionpay.nonce-received\");\n\n return tokenizedCard;\n })\n .catch(function (err) {\n var error;\n var status = err.details && err.details.httpStatus;\n\n analytics.sendEvent(client, \"unionpay.nonce-failed\");\n\n if (status === 403) {\n error = err;\n } else if (status < 500) {\n error = new BraintreeError(errors.UNIONPAY_FAILED_TOKENIZATION);\n error.details = { originalError: err };\n } else {\n error = new BraintreeError(\n errors.UNIONPAY_TOKENIZATION_NETWORK_ERROR\n );\n error.details = { originalError: err };\n }\n\n return Promise.reject(error);\n });\n } else if (hostedFields) {\n if (!hostedFields._bus) {\n return Promise.reject(\n new BraintreeError(errors.UNIONPAY_HOSTED_FIELDS_INSTANCE_INVALID)\n );\n }\n\n return new Promise(function (resolve, reject) {\n self._initializeHostedFields().then(function () {\n self._bus.emit(\n events.HOSTED_FIELDS_TOKENIZE,\n options,\n function (response) {\n if (response.err) {\n reject(new BraintreeError(response.err));\n\n return;\n }\n\n resolve(response.payload);\n }\n );\n });\n });\n }\n\n return Promise.reject(\n new BraintreeError(errors.UNIONPAY_CARD_OR_HOSTED_FIELDS_INSTANCE_REQUIRED)\n );\n};\n\n/**\n * Cleanly remove anything set up by {@link module:braintree-web/unionpay.create|create}. This only needs to be called when using UnionPay with Hosted Fields.\n * @public\n * @param {callback} [callback] Called on completion. If no callback is provided, returns a promise.\n * @example\n * unionpayInstance.teardown();\n * @returns {(Promise|void)} Returns a promise if no callback is provided.\n */\nUnionPay.prototype.teardown = function () {\n if (this._bus) {\n this._hostedFieldsFrame.parentNode.removeChild(this._hostedFieldsFrame);\n this._bus.teardown();\n }\n\n convertMethodsToError(this, methods(UnionPay.prototype));\n\n return Promise.resolve();\n};\n\nUnionPay.prototype._initializeHostedFields = function () {\n var assetsUrl, isDebug;\n var componentId = uuid();\n var self = this;\n\n if (this._hostedFieldsInitializePromise) {\n return this._hostedFieldsInitializePromise;\n }\n\n this._hostedFieldsInitializePromise = new Promise(function (resolve) {\n assetsUrl =\n self._options.client.getConfiguration().gatewayConfiguration.assetsUrl;\n isDebug = self._options.client.getConfiguration().isDebug;\n\n self._bus = new Bus({\n channel: componentId,\n verifyDomain: isVerifiedDomain,\n });\n self._hostedFieldsFrame = iFramer({\n name: constants.HOSTED_FIELDS_FRAME_NAME + \"_\" + componentId,\n src:\n assetsUrl +\n \"/web/\" +\n VERSION +\n \"/html/unionpay-hosted-fields-frame\" +\n useMin(isDebug) +\n \".html\",\n height: 0,\n width: 0,\n });\n\n self._bus.on(BUS_CONFIGURATION_REQUEST_EVENT, function (reply) {\n reply(self._options.client);\n\n resolve();\n });\n\n document.body.appendChild(self._hostedFieldsFrame);\n });\n\n return this._hostedFieldsInitializePromise;\n};\n\nmodule.exports = wrapPromise.wrapPrototype(UnionPay);\n\n},{\"../../lib/analytics\":119,\"../../lib/braintree-error\":124,\"../../lib/constants\":126,\"../../lib/convert-methods-to-error\":127,\"../../lib/is-verified-domain\":153,\"../../lib/methods\":155,\"../../lib/use-min\":160,\"./constants\":203,\"./errors\":204,\"@braintree/iframer\":35,\"@braintree/uuid\":39,\"@braintree/wrap-promise\":43,\"framebus\":52}],206:[function(_dereq_,module,exports){\n\"use strict\";\n\nmodule.exports = {\n PLAID_LINK_JS: \"https://cdn.plaid.com/link/v2/stable/link-initialize.js\",\n};\n\n},{}],207:[function(_dereq_,module,exports){\n\"use strict\";\n\n/**\n * @name BraintreeError.Us Bank Account - Creation Error Codes\n * @description Errors that occur when [creating the Us Bank Account component](./module-braintree-web_us-bank-account.html#.create).\n * @property {MERCHANT} US_BANK_ACCOUNT_NOT_ENABLED Occurs when US Bank Account is not enabled in the Braintree control panel.\n */\n\n/**\n * @name BraintreeError.Us Bank Account - tokenize Error Codes\n * @description Errors that occur when using the [`tokenize` method](./UsBankAccount.html#tokenize).\n * @property {MERCHANT} US_BANK_ACCOUNT_OPTION_REQUIRED Occurs when a required option is not passed.\n * @property {MERCHANT} US_BANK_ACCOUNT_MUTUALLY_EXCLUSIVE_OPTIONS Occurs when 1 or more incompatible options are passed.\n * @property {NETWORK} US_BANK_ACCOUNT_LOGIN_LOAD_FAILED Occurs when bank login flow fails.\n * @property {CUSTOMER} US_BANK_ACCOUNT_LOGIN_CLOSED Occurs when bank login window is closed.\n * @property {MERCHANT} US_BANK_ACCOUNT_LOGIN_REQUEST_ACTIVE Occurs when a bank login flow is already active.\n * @property {NETWORK} US_BANK_ACCOUNT_TOKENIZATION_NETWORK_ERROR Occurs when payment details could not be tokenized.\n * @property {CUSTOMER} US_BANK_ACCOUNT_FAILED_TOKENIZATION Occurs when payment details failed to be tokenized.\n * @property {MERCHANT} US_BANK_ACCOUNT_BANK_LOGIN_NOT_ENABLED Occurs when bank login flow is not enabled in the Braintree control panel.\n */\n\nvar BraintreeError = _dereq_(\"../lib/braintree-error\");\n\nmodule.exports = {\n US_BANK_ACCOUNT_OPTION_REQUIRED: {\n type: BraintreeError.types.MERCHANT,\n code: \"US_BANK_ACCOUNT_OPTION_REQUIRED\",\n },\n US_BANK_ACCOUNT_MUTUALLY_EXCLUSIVE_OPTIONS: {\n type: BraintreeError.types.MERCHANT,\n code: \"US_BANK_ACCOUNT_MUTUALLY_EXCLUSIVE_OPTIONS\",\n },\n US_BANK_ACCOUNT_LOGIN_LOAD_FAILED: {\n type: BraintreeError.types.NETWORK,\n code: \"US_BANK_ACCOUNT_LOGIN_LOAD_FAILED\",\n message: \"Bank login flow failed to load.\",\n },\n US_BANK_ACCOUNT_LOGIN_CLOSED: {\n type: BraintreeError.types.CUSTOMER,\n code: \"US_BANK_ACCOUNT_LOGIN_CLOSED\",\n message: \"Customer closed bank login flow before authorizing.\",\n },\n US_BANK_ACCOUNT_LOGIN_REQUEST_ACTIVE: {\n type: BraintreeError.types.MERCHANT,\n code: \"US_BANK_ACCOUNT_LOGIN_REQUEST_ACTIVE\",\n message: \"Another bank login tokenization request is active.\",\n },\n US_BANK_ACCOUNT_TOKENIZATION_NETWORK_ERROR: {\n type: BraintreeError.types.NETWORK,\n code: \"US_BANK_ACCOUNT_TOKENIZATION_NETWORK_ERROR\",\n message: \"A tokenization network error occurred.\",\n },\n US_BANK_ACCOUNT_FAILED_TOKENIZATION: {\n type: BraintreeError.types.CUSTOMER,\n code: \"US_BANK_ACCOUNT_FAILED_TOKENIZATION\",\n message: \"The supplied data failed tokenization.\",\n },\n US_BANK_ACCOUNT_NOT_ENABLED: {\n type: BraintreeError.types.MERCHANT,\n code: \"US_BANK_ACCOUNT_NOT_ENABLED\",\n message: \"US bank account is not enabled.\",\n },\n US_BANK_ACCOUNT_BANK_LOGIN_NOT_ENABLED: {\n type: BraintreeError.types.MERCHANT,\n code: \"US_BANK_ACCOUNT_BANK_LOGIN_NOT_ENABLED\",\n message: \"Bank login is not enabled.\",\n },\n};\n\n},{\"../lib/braintree-error\":124}],208:[function(_dereq_,module,exports){\n\"use strict\";\n/**\n * @module braintree-web/us-bank-account\n * @description This module is for accepting payments of US bank accounts.\n */\n\nvar basicComponentVerification = _dereq_(\"../lib/basic-component-verification\");\nvar BraintreeError = _dereq_(\"../lib/braintree-error\");\nvar createDeferredClient = _dereq_(\"../lib/create-deferred-client\");\nvar createAssetsUrl = _dereq_(\"../lib/create-assets-url\");\nvar errors = _dereq_(\"./errors\");\nvar USBankAccount = _dereq_(\"./us-bank-account\");\nvar VERSION = \"3.100.0\";\nvar wrapPromise = _dereq_(\"@braintree/wrap-promise\");\n\n/**\n * @static\n * @function create\n * @param {object} options Creation options:\n * @param {Client} [options.client] A {@link Client} instance.\n * @param {string} [options.authorization] A tokenizationKey or clientToken. Can be used in place of `options.client`.\n * @param {callback} [callback] The second argument, `data`, is the {@link USBankAccount} instance. If no callback is provided, `create` returns a promise that resolves with the {@link USBankAccount} instance.\n * @returns {(Promise|void)} Returns a promise if no callback is provided.\n */\nfunction create(options) {\n var name = \"US Bank Account\";\n\n return basicComponentVerification\n .verify({\n name: name,\n client: options.client,\n authorization: options.authorization,\n })\n .then(function () {\n return createDeferredClient.create({\n authorization: options.authorization,\n client: options.client,\n debug: options.debug,\n assetsUrl: createAssetsUrl.create(options.authorization),\n name: name,\n });\n })\n .then(function (client) {\n var usBankAccount;\n\n options.client = client;\n\n usBankAccount =\n options.client.getConfiguration().gatewayConfiguration.usBankAccount;\n if (!usBankAccount) {\n return Promise.reject(\n new BraintreeError(errors.US_BANK_ACCOUNT_NOT_ENABLED)\n );\n }\n\n return new USBankAccount(options);\n });\n}\n\nmodule.exports = {\n create: wrapPromise(create),\n /**\n * @description The current version of the SDK, i.e. `{@pkg version}`.\n * @type {string}\n */\n VERSION: VERSION,\n};\n\n},{\"../lib/basic-component-verification\":122,\"../lib/braintree-error\":124,\"../lib/create-assets-url\":129,\"../lib/create-deferred-client\":131,\"./errors\":207,\"./us-bank-account\":209,\"@braintree/wrap-promise\":43}],209:[function(_dereq_,module,exports){\n\"use strict\";\n\nvar BraintreeError = _dereq_(\"../lib/braintree-error\");\nvar constants = _dereq_(\"./constants\");\nvar errors = _dereq_(\"./errors\");\nvar sharedErrors = _dereq_(\"../lib/errors\");\nvar analytics = _dereq_(\"../lib/analytics\");\nvar once = _dereq_(\"../lib/once\");\nvar convertMethodsToError = _dereq_(\"../lib/convert-methods-to-error\");\nvar methods = _dereq_(\"../lib/methods\");\nvar wrapPromise = _dereq_(\"@braintree/wrap-promise\");\n\nvar TOKENIZE_BANK_DETAILS_MUTATION = createGraphQLMutation(\"UsBankAccount\");\nvar TOKENIZE_BANK_LOGIN_MUTATION = createGraphQLMutation(\"UsBankLogin\");\n\n/**\n * @typedef {object} USBankAccount~tokenizePayload\n * @property {string} nonce The payment method nonce.\n * @property {string} type The payment method type, always `us_bank_account`.\n * @property {object} details Additional account details. Currently empty.\n */\n\n/**\n * @class\n * @param {object} options See {@link module:braintree-web/us-bank-account.create|us-bank-account.create}.\n * @classdesc This class represents a US Bank Account component. Instances of this class can tokenize raw bank details or present a bank login. You cannot use this constructor directly. Use {@link module:braintree-web/us-bank-account.create|braintree.us-bank-account.create} instead.\n */\nfunction USBankAccount(options) {\n this._client = options.client;\n\n this._isTokenizingBankLogin = false;\n\n analytics.sendEvent(this._client, \"usbankaccount.initialized\");\n}\n\n/**\n * Tokenizes bank information to return a payment method nonce. You can tokenize bank details by providing information like account and routing numbers. You can also tokenize with a bank login UI that prompts the customer to log into their bank account.\n * @public\n * @param {object} options All tokenization options for the US Bank Account component.\n * @param {string} options.mandateText A string for proof of customer authorization. For example, `'I authorize Braintree to debit my bank account on behalf of My Online Store.'`.\n * @param {object} [options.bankDetails] Bank detail information (such as account and routing numbers). `bankDetails` or `bankLogin` option must be provided.\n * @param {string} options.bankDetails.routingNumber The customer's bank routing number, such as `'307075259'`.\n * @param {string} options.bankDetails.accountNumber The customer's bank account number, such as `'999999999'`.\n * @param {string} options.bankDetails.accountType The customer's bank account type. Must be `'checking'` or `'savings'`.\n * @param {string} options.bankDetails.ownershipType The customer's bank account ownership type. Must be `'personal'` or `'business'`.\n * @param {string} [options.bankDetails.firstName] The customer's first name. Required when account ownership type is `personal`.\n * @param {string} [options.bankDetails.lastName] The customer's last name. Required when account ownership type is `personal`.\n * @param {string} [options.bankDetails.businessName] The customer's business name. Required when account ownership type is `business`.\n * @param {object} options.bankDetails.billingAddress The customer's billing address.\n * @param {string} options.bankDetails.billingAddress.streetAddress The street address for the customer's billing address, such as `'123 Fake St'`.\n * @param {string} [options.bankDetails.billingAddress.extendedAddress] The extended street address for the customer's billing address, such as `'Apartment B'`.\n * @param {string} options.bankDetails.billingAddress.locality The locality for the customer's billing address. This is typically a city, such as `'San Francisco'`.\n * @param {string} options.bankDetails.billingAddress.region The region for the customer's billing address. This is typically a state, such as `'CA'`.\n * @param {string} options.bankDetails.billingAddress.postalCode The postal code for the customer's billing address. This is typically a ZIP code, such as `'94119'`.\n * @param {object} [options.bankLogin] Bank login information. `bankLogin` or `bankDetails` option must be provided.\n * @param {string} options.bankLogin.displayName Display name for the bank login UI, such as `'My Store'`.\n * @param {string} options.bankLogin.ownershipType The customer's bank account ownership type. Must be `'personal'` or `'business'`.\n * @param {string} [options.bankLogin.firstName] The customer's first name. Required when account ownership type is `personal`.\n * @param {string} [options.bankLogin.lastName] The customer's last name. Required when account ownership type is `personal`.\n * @param {string} [options.bankLogin.businessName] The customer's business name. Required when account ownership type is `business`.\n * @param {object} options.bankLogin.billingAddress The customer's billing address.\n * @param {string} options.bankLogin.billingAddress.streetAddress The street address for the customer's billing address, such as `'123 Fake St'`.\n * @param {string} [options.bankLogin.billingAddress.extendedAddress] The extended street address for the customer's billing address, such as `'Apartment B'`.\n * @param {string} options.bankLogin.billingAddress.locality The locality for the customer's billing address. This is typically a city, such as `'San Francisco'`.\n * @param {string} options.bankLogin.billingAddress.region The region for the customer's billing address. This is typically a state, such as `'CA'`.\n * @param {string} options.bankLogin.billingAddress.postalCode The postal code for the customer's billing address. This is typically a ZIP code, such as `'94119'`.\n * @param {callback} [callback] The second argument, data
, is a {@link USBankAccount~tokenizePayload|tokenizePayload}. If no callback is provided, `tokenize` returns a promise that resolves with {@link USBankAccount~tokenizePayload|tokenizePayload}.\n * @returns {(Promise|void)} Returns a promise if no callback is provided.\n * @example\n * data
, is a {@link Venmo~tokenizePayload|tokenizePayload}. If no callback is provided, the method will return a Promise that resolves with a {@link Venmo~tokenizePayload|tokenizePayload}.\n * @returns {(Promise|void)} Returns a promise if no callback is provided.\n * @example\n * button.addEventListener('click', function () {\n * // Disable the button so that we don't attempt to open multiple popups.\n * button.setAttribute('disabled', 'disabled');\n *\n * // Because tokenize opens a new window, this must be called\n * // as a result of a user action, such as a button click.\n * venmoInstance.tokenize().then(function (payload) {\n * // Submit payload.nonce to your server\n * // Use payload.username to get the Venmo username and display any UI\n * }).catch(function (tokenizeError) {\n * // Handle flow errors or premature flow closure\n * switch (tokenizeErr.code) {\n * case 'VENMO_APP_CANCELED':\n * console.log('User canceled Venmo flow.');\n * break;\n * case 'VENMO_CANCELED':\n * console.log('User canceled Venmo, or Venmo app is not available.');\n * break;\n * default:\n * console.error('Error!', tokenizeErr);\n * }\n * }).then(function () {\n * button.removeAttribute('disabled');\n * });\n * });\n */\nVenmo.prototype.tokenize = function (options) {\n var self = this;\n var tokenizationPromise;\n\n options = options || {};\n\n if (this._tokenizationInProgress === true) {\n return Promise.reject(\n new BraintreeError(errors.VENMO_TOKENIZATION_REQUEST_ACTIVE)\n );\n }\n\n this._tokenizationInProgress = true;\n if (this._useDesktopQRFlow) {\n // for the desktop flow, we create a venmo payment\n // context and then present a qr code modal to the\n // customer and they will open up their venmo app\n // and scan it and approve the purchase on their\n // mobile device. The sdk will start polling\n // in order to determine when the status of the\n // payment context has updated and then pass the\n // resulting nonce back to the merchant.\n tokenizationPromise = this._tokenizeForDesktopQRFlow(options);\n } else if (this._useAllowDesktopWebLogin) {\n /**\n * For Desktop Web Login, we open a browser popup to allow for authorization. Once authorized, the redirect urls are used by Venmo, and we query the API for a payment context status update.\n *\n * - Payment context is created on initialization\n * - Popup is opened to Venmo login url.\n * - The payment is authorized or canceled, and the popup is closed\n * - Once the popup is closed, we query the API for a payment context status update\n *\n * This is an alternate, opt-in flow to be used the Desktop QR Flow is not desired for Pay with Venmo desktop experiences.\n */\n tokenizationPromise = this._tokenizeWebLoginWithRedirect();\n } else if (this._cannotHaveReturnUrls) {\n // in the manual return strategy, we create the payment\n // context on initialization, then continually poll once\n // the app switch begins until we get a response indiciating\n // the payment context was approved by the customer on the\n // Venmo app. The payment context response also includes a\n // nonce. There are 2 cases where we use the manual return\n // strategy:\n // 1. the sdk is instantiated in an iframe, because\n // the venmo app is unable to redirect automatically\n // when that is the case so we rely on the customer\n // to do a manual redirect and continunally poll for\n // updates on the payment context to get the nonce\n // 2. same deal for when `requireManualReturn` is configured\n tokenizationPromise = this._tokenizeForMobileWithManualReturn();\n } else {\n // the default mobile flow is to app switch to the\n // venmo app, and then have the venmo app switch\n // back to the page with the venmo nonce details\n // encoded into the hash portion of the url. If\n // `paymentMethodUsage` is provided when instantiating\n // the sdk, we also create a payment context and pass\n // the resource id to the Venmo app during the app switch.\n // Once we get a succesful return, we ping the payment\n // context query to get any additional data needed\n // to send back to the merchant.\n tokenizationPromise =\n this._tokenizeForMobileWithHashChangeListeners(options);\n }\n\n return tokenizationPromise\n .then(function (payload) {\n return self._createPromise\n .then(function (client) {\n return self._createVenmoPaymentContext(client);\n })\n .then(function () {\n self._tokenizationInProgress = false;\n\n return formatTokenizePayload(payload);\n });\n })\n .catch(function (err) {\n return self._createPromise\n .then(function (client) {\n // We create a new Payment Context because if the last one failed, then presumably we don't want to use it again.\n // On the first pass, we create the payment context at initialization, and since we used that first one we now need to create a new one\n // for the next time someone tries to tokenize.\n return self._createVenmoPaymentContext(client);\n })\n .then(function () {\n self._tokenizationInProgress = false;\n\n return Promise.reject(err);\n });\n });\n};\n\n/**\n * Cancels the venmo tokenization process\n *\n * @public\n * @function Venmo~cancelTokenization\n * @returns {(Promise|void)} Returns a promise if no callback is provided.\n * @example\n * venmoTokenizeButton.addEventListener('click', function () {\n * venmoInstance.tokenize().then(function (payload) {\n * // handle payload\n * }).catch(function (err) {\n * if (err.code === 'VENMO_TOKENIZATION_CANCELED_BY_MERCHANT') {\n * // tokenization was canceled by calling cancelTokenization\n * }\n * });\n * });\n *\n * venmoCancelButton.addEventListener('click', function () {\n * // Hide the button when the venmo flow is not in progress\n * venmoCancelButton.style.display = \"none\";\n *\n * venmoInstance.cancelTokenization().then(function () {\n * // done canceling the flow\n * }).catch(function (err) {\n * // should only get here if there is no tokenization in progress\n * });\n * });\n */\nVenmo.prototype.cancelTokenization = function () {\n if (!this._tokenizationInProgress) {\n return Promise.reject(\n new BraintreeError(errors.VENMO_TOKENIZATION_REQUEST_NOT_ACTIVE)\n );\n }\n\n this._removeVisibilityEventListener();\n\n // important to reject the tokenization promise first\n // so the tokenize method rejects with this error\n // rather than a customer canceled error in the mobile\n // polling and desktop flows\n if (this._tokenizePromise) {\n this._tokenizePromise.reject(\n new BraintreeError(errors.VENMO_TOKENIZATION_CANCELED_BY_MERCHANT)\n );\n }\n\n return Promise.all([\n this._cancelMobilePaymentContext(),\n this._cancelVenmoDesktopContext(),\n ]);\n};\n\nVenmo.prototype._tokenizeWebLoginWithRedirect = function () {\n var self = this;\n\n analytics.sendEvent(self._createPromise, \"venmo.tokenize.web-login.start\");\n this._tokenizePromise = new ExtendedPromise();\n\n return this.getUrl().then(function (url) {\n desktopWebLogin\n .runWebLogin({\n checkForStatusChange:\n self._checkPaymentContextStatusAndProcessResult.bind(self),\n cancelTokenization: self.cancelTokenization.bind(self),\n frameServiceInstance: self._frameServiceInstance,\n venmoUrl: url,\n debug: self._isDebug,\n checkPaymentContextStatus: self._checkPaymentContextStatus.bind(self),\n })\n .then(function (payload) {\n analytics.sendEvent(\n self._createPromise,\n \"venmo.tokenize.web-login.success\"\n );\n\n self._tokenizePromise.resolve({\n paymentMethodNonce: payload.paymentMethodId,\n username: payload.userName,\n payerInfo: payload.payerInfo,\n id: self._venmoPaymentContextId,\n });\n })\n .catch(function (err) {\n analytics.sendEvent(\n self._createPromise,\n \"venmo.tokenize.web-login.failure\"\n );\n\n self._tokenizePromise.reject(err);\n });\n\n return self._tokenizePromise;\n });\n};\n\nVenmo.prototype._queryPaymentContextStatus = function (id) {\n var self = this;\n\n return this._createPromise\n .then(function (client) {\n var query = self._shouldUseLegacyFlow\n ? graphqlQueries.LEGACY_VENMO_PAYMENT_CONTEXT_STATUS_QUERY\n : graphqlQueries.VENMO_PAYMENT_CONTEXT_STATUS_QUERY;\n\n return client.request({\n api: \"graphQLApi\",\n data: {\n query: query,\n variables: {\n id: id,\n },\n },\n });\n })\n .then(function (response) {\n return response.data.node;\n });\n};\n\n/**\n * Queries the GraphQL API to get the payment context and process the status. Retries until there is an update to the payment context status.\n * @name Venmo~checkPaymentContextStatusAndProcessResult\n * @ignore\n * @param {number} retryCount The counter for tracking number of retries made against the API.\n * @returns {Promise} Returns a promise\n */\nVenmo.prototype._checkPaymentContextStatusAndProcessResult = function (\n retryCount\n) {\n var self = this;\n\n return self._checkPaymentContextStatus().then(function (node) {\n var resultStatus = node.status;\n\n if (resultStatus !== self._venmoPaymentContextStatus) {\n self._venmoPaymentContextStatus = resultStatus;\n\n analytics.sendEvent(\n self._createPromise,\n \"venmo.tokenize.web-login.status-change\"\n );\n\n switch (resultStatus) {\n case \"APPROVED\":\n return Promise.resolve(node);\n case \"CANCELED\":\n return Promise.reject(\n new BraintreeError(errors.VENMO_CUSTOMER_CANCELED)\n );\n case \"FAILED\":\n return Promise.reject(\n new BraintreeError(errors.VENMO_TOKENIZATION_FAILED)\n );\n default:\n }\n }\n\n return new Promise(function (resolve, reject) {\n if (retryCount < self._maxRetryCount) {\n retryCount++;\n\n return self\n ._checkPaymentContextStatusAndProcessResult(retryCount)\n .then(resolve)\n .catch(reject);\n }\n\n return reject(new BraintreeError(errors.VENMO_TOKENIZATION_FAILED));\n });\n });\n};\n\nVenmo.prototype._checkPaymentContextStatus = function () {\n var self = this;\n\n return self\n ._queryPaymentContextStatus(self._venmoPaymentContextId)\n .catch(function (networkError) {\n return Promise.reject(\n new BraintreeError({\n type: errors.VENMO_NETWORK_ERROR.type,\n code: errors.VENMO_NETWORK_ERROR.code,\n message: errors.VENMO_NETWORK_ERROR.message,\n details: networkError,\n })\n );\n })\n .then(function (node) {\n return Promise.resolve(node);\n });\n};\n\nVenmo.prototype._pollForStatusChange = function () {\n var self = this;\n\n if (Date.now() > self._mobilePollingContextExpiresIn) {\n return Promise.reject(\n new BraintreeError(errors.VENMO_MOBILE_POLLING_TOKENIZATION_TIMEOUT)\n );\n }\n\n return this._queryPaymentContextStatus(this._venmoPaymentContextId)\n .catch(function (networkError) {\n return Promise.reject(\n new BraintreeError({\n type: errors.VENMO_MOBILE_POLLING_TOKENIZATION_NETWORK_ERROR.type,\n code: errors.VENMO_MOBILE_POLLING_TOKENIZATION_NETWORK_ERROR.code,\n message:\n errors.VENMO_MOBILE_POLLING_TOKENIZATION_NETWORK_ERROR.message,\n details: {\n originalError: networkError,\n },\n })\n );\n })\n .then(function (node) {\n var newStatus = node.status;\n\n if (newStatus !== self._venmoPaymentContextStatus) {\n self._venmoPaymentContextStatus = newStatus;\n\n analytics.sendEvent(\n self._createPromise,\n \"venmo.tokenize.manual-return.status-change.\" +\n newStatus.toLowerCase()\n );\n\n switch (newStatus) {\n case \"EXPIRED\":\n case \"FAILED\":\n case \"CANCELED\":\n return Promise.reject(\n new BraintreeError(\n errors[\"VENMO_MOBILE_POLLING_TOKENIZATION_\" + newStatus]\n )\n );\n case \"APPROVED\":\n return Promise.resolve(node);\n case \"CREATED\":\n case \"SCANNED\":\n default:\n // any other statuses are irrelevant to the polling\n // and can just be ignored\n }\n }\n\n return new Promise(function (resolve, reject) {\n setTimeout(function () {\n self._pollForStatusChange().then(resolve).catch(reject);\n }, self._mobilePollingInterval);\n });\n });\n};\n\nVenmo.prototype._tokenizeForMobileWithManualReturn = function () {\n var self = this;\n\n analytics.sendEvent(\n this._createPromise,\n \"venmo.tokenize.manual-return.start\"\n );\n\n this._mobilePollingContextExpiresIn =\n Date.now() + this._mobilePollingExpiresThreshold;\n this._tokenizePromise = new ExtendedPromise();\n\n this._pollForStatusChange()\n .then(function (payload) {\n analytics.sendEvent(\n self._createPromise,\n \"venmo.tokenize.manual-return.success\"\n );\n\n self._tokenizePromise.resolve({\n paymentMethodNonce: payload.paymentMethodId,\n username: payload.userName,\n payerInfo: payload.payerInfo,\n id: self._venmoPaymentContextId,\n });\n })\n .catch(function (err) {\n analytics.sendEvent(\n self._createPromise,\n \"venmo.tokenize.manual-return.failure\"\n );\n\n self._tokenizePromise.reject(err);\n });\n\n return this.getUrl().then(function (url) {\n self.appSwitch(url);\n\n return self._tokenizePromise;\n });\n};\n\nVenmo.prototype._shouldUseRedirectStrategy = function () {\n if (!browserDetection.isIos()) {\n return false;\n }\n\n if (this._mobileWebFallBack === true) {\n return true;\n }\n\n return this._useRedirectForIOS;\n};\n\nVenmo.prototype._tokenizeForMobileWithHashChangeListeners = function (options) {\n var self = this;\n var resultProcessingInProgress, visibilityChangeListenerTimeout;\n\n if (this.hasTokenizationResult()) {\n return this.processHashChangeFlowResults();\n }\n\n analytics.sendEvent(this._createPromise, \"venmo.tokenize.mobile.start\");\n this._tokenizePromise = new ExtendedPromise();\n\n this._previousHash = window.location.hash;\n\n function completeFlow(hash) {\n var error;\n\n self\n .processHashChangeFlowResults(hash)\n .catch(function (err) {\n error = err;\n })\n .then(function (res) {\n if (\n !self._ignoreHistoryChanges &&\n window.location.hash !== self._previousHash\n ) {\n window.location.hash = self._previousHash;\n }\n self._removeVisibilityEventListener();\n\n if (error) {\n self._tokenizePromise.reject(error);\n } else {\n self._tokenizePromise.resolve(res);\n }\n delete self._tokenizePromise;\n });\n }\n\n // The Venmo SDK app switches back with the results of the\n // tokenization encoded in the hash\n this._onHashChangeListener = function (e) {\n var hash = e.newURL.split(\"#\")[1];\n\n if (!self._hasTokenizationResult(hash)) {\n return;\n }\n\n resultProcessingInProgress = true;\n clearTimeout(visibilityChangeListenerTimeout);\n completeFlow(hash);\n };\n\n window.addEventListener(\"hashchange\", this._onHashChangeListener, false);\n\n // Subscribe to document visibility change events to detect when app switch\n // has returned. Acts as a fallback for the hashchange listener and catches\n // the cancel case via manual app switch back\n this._visibilityChangeListener = function () {\n var delay =\n options.processResultsDelay || constants.DEFAULT_PROCESS_RESULTS_DELAY;\n\n if (!window.document.hidden) {\n if (!resultProcessingInProgress) {\n visibilityChangeListenerTimeout = setTimeout(completeFlow, delay);\n }\n }\n };\n\n return this.getUrl().then(function (url) {\n self.appSwitch(url);\n\n // Add a brief delay to ignore visibility change events that occur right before app switch\n setTimeout(function () {\n window.document.addEventListener(\n documentVisibilityChangeEventName(),\n self._visibilityChangeListener\n );\n }, constants.DOCUMENT_VISIBILITY_CHANGE_EVENT_DELAY);\n\n return self._tokenizePromise;\n });\n};\n\nVenmo.prototype._tokenizeForDesktopQRFlow = function () {\n var self = this;\n\n analytics.sendEvent(this._createPromise, \"venmo.tokenize.desktop.start\");\n\n this._tokenizePromise = new ExtendedPromise();\n\n this._createPromise\n .then(function () {\n return self._venmoDesktopInstance.launchDesktopFlow();\n })\n .then(function (payload) {\n self._venmoDesktopInstance.hideDesktopFlow();\n\n analytics.sendEvent(\n self._createPromise,\n \"venmo.tokenize.desktop.success\"\n );\n\n self._tokenizePromise.resolve(payload);\n })\n .catch(function (err) {\n analytics.sendEvent(\n self._createPromise,\n \"venmo.tokenize.desktop.failure\"\n );\n\n if (self._venmoDesktopInstance) {\n self._venmoDesktopInstance.hideDesktopFlow();\n }\n\n if (err && err.reason === \"CUSTOMER_CANCELED\") {\n self._tokenizePromise.reject(\n new BraintreeError(errors.VENMO_DESKTOP_CANCELED)\n );\n\n return;\n }\n\n self._tokenizePromise.reject(\n new BraintreeError({\n type: errors.VENMO_DESKTOP_UNKNOWN_ERROR.type,\n code: errors.VENMO_DESKTOP_UNKNOWN_ERROR.code,\n message: errors.VENMO_DESKTOP_UNKNOWN_ERROR.message,\n details: {\n originalError: err,\n },\n })\n );\n });\n\n return this._tokenizePromise;\n};\n\nVenmo.prototype._cancelMobilePaymentContext = function () {\n var self = this;\n\n return this._createPromise.then(function (client) {\n var query;\n\n if (self._venmoPaymentContextId) {\n query = self._shouldUseLegacyFlow\n ? graphqlQueries.LEGACY_UPDATE_PAYMENT_CONTEXT_QUERY\n : graphqlQueries.UPDATE_PAYMENT_CONTEXT_QUERY;\n\n return client.request({\n api: \"graphQLApi\",\n data: {\n query: query,\n variables: {\n input: {\n id: self._venmoPaymentContextId,\n status: \"CANCELED\",\n },\n },\n },\n });\n }\n\n return Promise.resolve();\n });\n};\n\nVenmo.prototype._cancelVenmoDesktopContext = function () {\n var self = this;\n\n return this._createPromise.then(function () {\n if (self._venmoDesktopInstance) {\n self._venmoDesktopInstance.updateVenmoDesktopPaymentContext(\"CANCELED\");\n }\n\n return Promise.resolve();\n });\n};\n\n/**\n * Cleanly tear down anything set up by {@link module:braintree-web/venmo.create|create}.\n * @public\n * @param {callback} [callback] Called once teardown is complete. No data is returned if teardown completes successfully.\n * @example\n * venmoInstance.teardown();\n * @example tokenizePayload
is a {@link VisaCheckout~tokenizePayload|tokenizePayload}. If no callback is provided, `tokenize` returns a promise that resolves with the {@link VisaCheckout~tokenizePayload|tokenizePayload}.\n * @returns {(Promise|void)} Returns a promise if no callback is provided.\n */\nVisaCheckout.prototype.tokenize = function (payment) {\n var self = this;\n\n if (!payment.callid || !payment.encKey || !payment.encPaymentData) {\n return Promise.reject(\n new BraintreeError(errors.VISA_CHECKOUT_PAYMENT_REQUIRED)\n );\n }\n\n return this._client\n .request({\n method: \"post\",\n endpoint: \"payment_methods/visa_checkout_cards\",\n data: {\n _meta: {\n source: \"visa-checkout\",\n },\n visaCheckoutCard: {\n callId: payment.callid,\n encryptedPaymentData: payment.encPaymentData,\n encryptedKey: payment.encKey,\n },\n },\n })\n .then(function (response) {\n analytics.sendEvent(self._client, \"visacheckout.tokenize.succeeded\");\n\n return response.visaCheckoutCards[0];\n })\n .catch(function (err) {\n analytics.sendEvent(self._client, \"visacheckout.tokenize.failed\");\n\n return Promise.reject(\n new BraintreeError({\n type: errors.VISA_CHECKOUT_TOKENIZATION.type,\n code: errors.VISA_CHECKOUT_TOKENIZATION.code,\n message: errors.VISA_CHECKOUT_TOKENIZATION.message,\n details: {\n originalError: err,\n },\n })\n );\n });\n};\n\n/**\n * Cleanly tear down anything set up by {@link module:braintree-web/visa-checkout.create|create}.\n * @public\n * @param {callback} [callback] Called once teardown is complete. No data is returned if teardown completes successfully.\n * @example\n * visaCheckoutInstance.teardown();\n * @example