{"version":3,"file":"app-d023b5b8e37726f95d67.js","mappings":"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AC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,UAAW,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,UAAW,CAAC,EAAG,SAAU,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,YAAa,CAAC,EAAG,UAAW,CAAC,EAAG,WAAY,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,UAAW,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,YAAa,CAAC,EAAG,UAAW,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,UAAW,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,UAAW,CAAC,EAAG,SAAU,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,YAAa,CAAC,EAAG,UAAW,CAAC,EAAG,SAAU,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,UAAW,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,UAAW,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,UAAW,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CA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EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,GAAI,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,eAAiB,CAAC,KAAM,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,YAAa,CAAC,EAAG,eCRxp0B,MACDC,GAAa,IAAIrxD,IAAI,CACvB,CAAC,GAAI,UACL,CAAC,GAAI,SACL,CAAC,GAAI,UACL,CAAC,GAAI,QACL,CAAC,GAAI,UAKTw9C,OAAO3pD,UAAUy9D,YAwDjB,SAASC,GAAWC,EAAOthE,GACvB,OAAO,SAAgBgV,GACnB,IAAIgY,EACAu0C,EAAU,EACVjzD,EAAS,GACb,KAAQ0e,EAAQs0C,EAAME,KAAKxsD,IACnBusD,IAAYv0C,EAAMtM,QAClBpS,GAAU0G,EAAK1O,UAAUi7D,EAASv0C,EAAMtM,QAG5CpS,GAAUtO,EAAIoD,IAAI4pB,EAAM,GAAGmgC,WAAW,IAEtCoU,EAAUv0C,EAAMtM,MAAQ,EAE5B,OAAOpS,EAAS0G,EAAK1O,UAAUi7D,EACnC,CACJ,CAQ0BF,GAAW,WAAYF,IAOlBE,GAAW,cAAe,IAAIvxD,IAAI,CAC7D,CAAC,GAAI,UACL,CAAC,GAAI,SACL,CAAC,IAAK,aAQgBuxD,GAAW,eAAgB,IAAIvxD,IAAI,CACzD,CAAC,GAAI,SACL,CAAC,GAAI,QACL,CAAC,GAAI,QACL,CAAC,IAAK,aC7GH,IAAI2xD,GAOAC,IANX,SAAWD,GAEPA,EAAYA,EAAiB,IAAI,GAAK,MAEtCA,EAAYA,EAAkB,KAAI,GAAK,MAC1C,CALD,CAKGA,KAAgBA,GAAc,CAAC,IAElC,SAAWC,GAKPA,EAAaA,EAAmB,KAAI,GAAK,OAMzCA,EAAaA,EAAoB,MAAI,GAAK,QAK1CA,EAAaA,EAAwB,UAAI,GAAK,YAK9CA,EAAaA,EAAwB,UAAI,GAAK,YAK9CA,EAAaA,EAAmB,KAAI,GAAK,MAC5C,CA3BD,CA2BGA,KAAiBA,GAAe,CAAC,ICvCR,IAAI5xD,IAAI,CAChC,WACA,cACA,eACA,eACA,gBACA,mBACA,WACA,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,iBACA,eACA,UACA,UACA,UACA,UACA,UACA,iBACA,UACA,UACA,cACA,eACA,WACA,eACA,qBACA,cACA,SACA,eACA,gBACA,WACA,iBACA,iBACA,YACF9P,KAAK2hE,GAAQ,CAACA,EAAIrhE,cAAeqhE,MACL,IAAI7xD,IAAI,CAClC,gBACA,gBACA,gBACA,gBACA,cACA,WACA,gBACA,kBACA,WACA,cACA,WACA,oBACA,gBACA,eACA,mBACA,YACA,aACA,WACA,eACA,oBACA,eACA,cACA,cACA,mBACA,YACA,aACA,aACA,sBACA,mBACA,eACA,YACA,YACA,YACA,gBACA,sBACA,iBACA,OACA,OACA,cACA,YACA,qBACA,mBACA,mBACA,mBACA,eACA,cACA,eACA,cACA,eACA,iBACA,cACA,UACA,UACA,aACA,UACA,aACA,mBACA,mBACA,cACF9P,KAAK2hE,GAAQ,CAACA,EAAIrhE,cAAeqhE,MCvFT,IAAItmD,IAAI,CAC9B,QACA,SACA,MACA,SACA,UACA,WACA,YACA,aAmCc,IAAIA,IAAI,CACtB,OACA,OACA,WACA,KACA,MACA,UACA,QACA,QACA,KACA,MACA,QACA,UACA,SACA,OACA,OACA,QACA,SACA,QACA,QAuCiC,IAAIA,IAAI,CACzC,KACA,KACA,KACA,KACA,QACA,iBACA,gBACA,OACA,UAEoB,IAAIA,IAAI,CAAC,MAAO,SC5CjC,SAASumD,GAAQ3gE,EAAMm3B,EAAOypC,GAAU,GAC3C,IAAIpsB,EAAO,KACX,IAAK,IAAI10C,EAAI,EAAGA,EAAIq3B,EAAMh4B,SAAWq1C,EAAM10C,IAAK,CAC5C,MAAMoF,EAAOiyB,EAAMr3B,GACd,EAAMoF,KAGFlF,EAAKkF,GACVsvC,EAAOtvC,EAEF07D,GAAW17D,EAAKyB,SAASxH,OAAS,IACvCq1C,EAAOmsB,GAAQ3gE,EAAMkF,EAAKyB,UAAU,IAE5C,CACA,OAAO6tC,CACX,CCxDO,IAAIqsB,IACX,SAAWA,GACPA,EAAiBA,EAA+B,aAAI,GAAK,eACzDA,EAAiBA,EAA4B,UAAI,GAAK,YACtDA,EAAiBA,EAA4B,UAAI,GAAK,YACtDA,EAAiBA,EAA2B,SAAI,GAAK,WACrDA,EAAiBA,EAA+B,aAAI,IAAM,cAC7D,CAND,CAMGA,KAAqBA,GAAmB,CAAC,ICjCrC,SAASC,GAAc/sD,EAAMtV,GAChC,MAAMuP,EAAU,IAAI,QAAW9H,EAAWzH,GAE1C,OADA,IAAI,EAAOuP,EAASvP,GAASswD,IAAIh7C,GAC1B/F,EAAQqf,IACnB,iBCbO,MAAM4xB,GAA4BjvC,IAA6B,IAA5B,UAAEs/B,KAAc9E,GAAMx6B,EAE9D,MACM+wD,EAAaC,IAChB5zC,GAAmB,QAAZA,EAAGrf,MAA8B,QAAZqf,EAAGxY,MAFjBksD,GAAcxxB,GAGpB3oC,UAEX,IAAKo6D,EACH,OAAO,KAET,MAAM7b,EAAU6b,EAAWlG,QAAQ,kBAC7B/U,EAAOib,EAAWlG,QAAQ,mBAC1BrqD,EAASjJ,KAAKC,MAAMu5D,EAAWlG,QAAQ,sBAAwB,MAC/D9U,EAAwBx+C,KAAKC,MACjCu5D,EAAWlG,QAAQ,wBAA0B,MAEzC7U,EAAY+a,EAAWlG,QAAQ,mBAC/B9b,EAAsBgiB,EAAWlG,QAAQ,6BACzC5U,EAAgB8a,EAAWlG,QAAQ,uBACnC3U,EAAoD,SAAlC6a,EAAWlG,QAAQ,WACrCnV,EAAoBqb,EAAWlG,QAAQ,4BACvClV,EAAkBob,EAAWlG,QAAQ,0BACrCpV,EAAcsb,EAAWlG,QAAQ,sBACjChV,EAAsBkb,EAAWlG,QAAQ,+BAIzCz3C,EAAa,CACjB8hC,UACAY,OACAt1C,SACAu1C,wBACAC,YACAjH,sBACAkH,gBACAC,kBACAR,oBACAC,kBACAF,cACAG,sBAdAmb,EAAWlG,QAAQ,iCAenBhV,yBACGrb,GAGL,OAAO5oC,EAAAA,cAACq/D,GAAAA,EAAiB79C,EAAc,+UC/ClC,MAAM+nC,EAAsBtH,IACjCx/C,OAAO6kD,KAAK,QAAS,aAAc,CACjCgY,eAAgB,QAChBC,YAAatd,EACbud,cAAe/8D,OAAOqB,SAASgK,MAC/B,EAIS07C,EAAuBvH,IAClCx/C,OAAO6kD,KAAK,QAAS,cAAe,CAClCgY,eAAgB,QAChBC,YAAatd,EACbud,cAAe/8D,OAAOqB,SAASgK,MAC/B,EAISy5C,EAAwBtF,IACnCx/C,OAAO6kD,KAAK,QAAS,eAAgB,CACnCgY,eAAgB,QAChBC,YAAatd,EACbud,cAAe/8D,OAAOqB,SAASgK,MAC/B,EAgBS2xD,EAAkBA,KAC7BhoD,YAAW,KACJioD,aAAah6D,QAAQ,gBAExBg6D,aAAa15D,QAAQ,aAAc,QAGnCvD,OAAO6kD,KAAK,QAAS,cAAe,CAClCgY,eAAgB,kBAChBE,cAAe/8D,OAAOqB,SAASgK,OAEnC,GACC,IAAI,EAII6xD,EAAmBA,KAC9B,IAAIC,GAAgB,EAChBC,GAAiB,EAGrBp9D,OAAOyB,iBAAiB,UAAU,KAChC,MAGM47D,GAHiBr9D,OAAOC,QAAUD,OAAOy9C,aAC5B38C,SAAS6nB,gBAAgB20C,aAEa,IAGrDD,GAAoB,KAAOF,IAC7BA,GAAgB,EAChBn9D,OAAO6kD,KAAK,QAAS,YAAa,CAChCgY,eAAgB,kBAChBE,cAAe/8D,OAAOqB,SAASgK,QAK/BgyD,GAAoB,MAAQD,IAC9BA,GAAiB,EACjBp9D,OAAO6kD,KAAK,QAAS,aAAc,CACjCgY,eAAgB,kBAChBE,cAAe/8D,OAAOqB,SAASgK,OAEnC,GACA,EAISkyD,EAAsBC,IACjC,MAAMC,GAAU,IAAIxkD,MAAOykD,UACrBC,EAAY9S,KAAK+S,OAAOH,EAAUD,GAAa,KAEjDx9D,OAAO6kD,MACT7kD,OAAO6kD,KAAK,QAAS,eAAgB,CACnCgY,eAAgB,kBAChBgB,WAAa,GAAEF,YACfZ,cAAe/8D,OAAOqB,SAASgK,MAEnC,EAIW4uC,EAAmB,SAAC6jB,EAAUC,QAAU,IAAVA,IAAAA,EAAa,IAClD/9D,OAAO6kD,MACT7kD,OAAO6kD,KAAK,QAAS,eAAgB,CACnCgY,eAAgB,kBAChBiB,SAAUA,EACVC,WAAYA,EACZhB,cAAe/8D,OAAOqB,SAASgK,MAGrC,EAGampC,EAA0BwpB,IACjCh+D,OAAO6kD,MACT7kD,OAAO6kD,KAAK,QAAS,sBAAuB,CAC1CgY,eAAgB,kBAChBoB,qBAAsBD,EACtBjB,cAAe/8D,OAAOqB,SAASgK,MAEnC,EAIWuqC,EAA6BooB,IACpCh+D,OAAO6kD,MACT7kD,OAAO6kD,KAAK,QAAS,yBAA0B,CAC7CgY,eAAgB,kBAChBoB,qBAAsBD,EACtBjB,cAAe/8D,OAAOqB,SAASgK,MAEnC,EAIWypC,EAA0BkpB,IACjCh+D,OAAO6kD,MACT7kD,OAAO6kD,KAAK,QAAS,yCAA0C,CAC7DgY,eAAgB,kBAChBoB,qBAAsBD,EACtBjB,cAAe/8D,OAAOqB,SAASgK,MAEnC,EAIW6yD,EAA4BC,IACnCn+D,OAAO6kD,MACT7kD,OAAO6kD,KAAK,QAAS,yBAA0B,CAC7CgY,eAAgB,kBAChBC,YAAaqB,EACbpB,cAAe/8D,OAAOqB,SAASgK,MAEnC,EAIW+yD,EAAuBD,IAC9Bn+D,OAAO6kD,MACT7kD,OAAO6kD,KAAK,QAAS,uBAAwB,CAC3CgY,eAAgB,kBAChBC,YAAaqB,EACbpB,cAAe/8D,OAAOqB,SAASgK,MAEnC,yWCnKK,MAAM0sB,EAKX,qCAGWue,EAAU,2CA4CV+nB,EAAa,SAAAC,GAAwC,IAAvC,KAAEvoB,EAAI,UAAEwoB,EAAS,QAAEx8B,QAAS,IAAAu8B,EAAG,CAAC,EAACA,EAC1D,IACE9jD,UAAUu/B,UACPC,UAAUjE,GAAQ/1C,OAAOqB,SAASgK,MAClCjC,MAAK,IACJm1D,EACIA,EAAU,wBACVC,MAAM,yBAEhB,CAAE,MAAOhnD,GACPuqB,EAAUA,IAAYha,QAAQvQ,MAAM,QAASA,EAC/C,CACF,EAgBMinD,EAAwB,CAC5B,YACA,YACA,cACA,cACA,WASWxrB,EAAmBF,IAC9B,GARiCA,IAEd,mCAEDp3C,KAAKo3C,GAInB2rB,CAAmB3rB,GAAQ,CAE7B,MAAM4rB,EAAS5rB,EAAMzoC,MAAM,KAAK,GAGhC,OAAQm0D,EAAsB1nD,SAAS4nD,EACzC,CACE,OAAO,CACT,EAIK,MAuBMjtC,EAAa,CACxBC,UAAWA,IAAwB,oBAAX3xB,QAA0BA,OAAO4+D,YAAc,KACvEC,SAAUA,IACU,oBAAX7+D,QACPA,OAAO4+D,WAAa,MACpB5+D,OAAO4+D,YAAc,KACvBtmC,SAAUA,IACU,oBAAXt4B,QACPA,OAAO4+D,YAAc,KACrB5+D,OAAO4+D,YAAc,KACvBlwC,SAAUA,IAAwB,oBAAX1uB,QAA0BA,OAAO4+D,WAAa,IACrExiB,cAAeA,IACK,oBAAXp8C,QAA0BA,OAAO4+D,YAAc,KACxDE,QAAUp8C,GACU,oBAAX1iB,QAA0BA,OAAO4+D,YAAcl8C,GAG7Cq8C,EAAel0C,GACrBA,EAEEA,EACJvgB,MAAM,UACN5P,KAAI,CAACskE,EAAM5jD,IACI,IAAVA,EACK4jD,EAAKhkE,cAGPgkE,EAAK/iE,OAAO,GAAGb,cAAgB4jE,EAAKpjE,MAAM,GAAGZ,gBAErDD,KAAK,IAXS,GAcNq5B,EAAesF,UAA6C,IAAtC,KAAEhqB,EAAI,YAAE+pC,EAAW,UAAED,GAAWl+B,EACjE,IACE,MAAMxG,QAAiB0gC,MAAO,GAAEzd,uBAA8B,CAC5D/jB,OAAQ,OACRyhC,QAAS,CACP,eAAgB,oBAElBj3B,KAAMtb,KAAKI,UAAU,CACnBoM,WAIJ,GAAIoF,EAAS6gC,GAEX8D,GAAY,OACP,CAEL,MAAMpM,QAAqBv4B,EAASihC,QAC9B,MAAEv+B,GAAUtU,KAAKC,MAAMkqC,GACzB71B,IACEA,EAAMzG,QAAQgG,SAAS,SACzByiC,EAAU,0CAEVA,EAAU,+BAGhB,CACF,CAAE,MAAOhiC,GAEPuQ,QAAQvQ,MAAM,0BAA2BA,EAAMzG,QACjD,GAGW6iB,EAAcqrC,IACzB,MAAM59D,GAAWsC,EAAAA,EAAAA,eACXu7D,EAAc,IAAIC,gBAAgB99D,aAAQ,EAARA,EAAUgJ,QAC5C+0D,EAAoB,CAAC,EAI3B,OAHAF,EAAYvsD,SAAQ,CAACtQ,EAAOjE,KAC1BghE,EAAkBhhE,GAAOiE,CAAK,IAEzB48D,GACHG,aAAiB,EAAjBA,EAAmB11D,QAASu1D,EAG5B59D,EAASoC,SAASsT,SAAS,WACzB1V,EAASoC,SAASsT,SAAS,SAAS,EAY/B4W,EAAYpwB,EAAAA,MACvBqe,IAAuD,IAAtD,MAAEyD,EAAK,SAAEuO,EAAQ,SAAEC,EAAW,WAAYsY,GAAMvqB,EAE/C,MAAM,MAAEqV,KAAUouC,GAAehgD,GAAS,CAAC,EACrCigD,EAAgB,CACpB38C,OAAQ,OACRD,MAAO,OACPoL,KAAMmD,GAAS,WACZouC,GAICE,EAAOhiE,EAAAA,MAAW,IACtB,SAAQ,KAAyBswB,KAAYD,WAI/C,OACErwB,EAAAA,cAACA,EAAAA,SAAc,CAACkhC,SAAUlhC,EAAAA,cAAAA,EAAAA,SAAA,KAAE,MAC1BA,EAAAA,cAACgiE,EAAIthE,OAAAuR,OAAA,GAAK22B,EAAI,CAAE9mB,MAAOigD,KACR,IAGrB,CAACE,EAAUC,KAEPD,aAAQ,EAARA,EAAU5xC,aAAa6xC,aAAS,EAATA,EAAW7xC,YAClC4xC,aAAQ,EAARA,EAAU3xC,aAAa4xC,aAAS,EAATA,EAAW5xC,WAClC3qB,KAAKI,UAAUk8D,aAAQ,EAARA,EAAUngD,SAAWnc,KAAKI,UAAUm8D,aAAS,EAATA,EAAWpgD,SAevDqgD,EAAYniE,EAAAA,MACvBqiC,IAA4D,IAA3D,MAAEvgB,EAAK,QAAEsgD,EAAO,UAAEC,EAAY,gBAAiBz5B,GAAMvG,EACpD,MAAM,EAACigC,EAAO,EAACC,IAAapwC,EAAAA,EAAAA,UAAS,OAErChS,EAAAA,EAAAA,YAAU,KACUgc,WAChB,IACE,MAAQh8B,QAASm2B,SAAc,SAC5B,KAAyB+rC,KAAaD,SAEzCG,EAAUjsC,EACZ,CAAE,MAAOrc,GACPuQ,QAAQvQ,MAAO,sBAAqBmoD,IAAWnoD,EACjD,GAGFuoD,EAAW,GACV,CAACJ,EAASC,IAEb,MAAMN,EAAgB,CACpBnvC,SAAU,OACVxN,OAAQ,UACLtD,GAGL,OAAKwgD,EAIEtiE,EAAAA,cAAA,MAAAU,OAAAuR,OAAA,CAAKqkB,IAAKgsC,EAAQxgD,MAAOigD,EAAehuC,IAAKquC,GAAax5B,IAHxD5oC,EAAAA,cAAA,WAGgE,IAE3E,CAACgD,EAAWokB,IAERpkB,EAAUo/D,UAAYh7C,EAAUg7C,SAChCp/D,EAAUq/D,YAAcj7C,EAAUi7C,WAClC18D,KAAKI,UAAU/C,EAAU8e,SAAWnc,KAAKI,UAAUqhB,EAAUtF,SAKtDmU,EAAmBkN,IAAqB,IAApB,GAAEtyB,EAAE,OAAEgF,GAAQstB,EACzCs/B,EAAmBl/D,SAASC,eAAeqN,GAC/C,GAAI4xD,GAAoB5sD,EAAQ,CAC9B,MAAM6sD,EAAUD,EAAiB/hD,aAAa,cAC9C+hD,EAAiBttD,aACf,eACW,SAAXU,EAAoB,QAAU,QAEjB,SAAXA,GACF4sD,EAAiBttD,aAAa,gBAAiButD,GACjDD,EAAiBE,OACnB,GAIWC,EAAkB9yC,GAIrB,GAHyB,oBAAXrtB,OAAyBA,OAAOqB,SAASg3B,OAAS,KAEpD,oBAAXr4B,OAAyBA,OAAOqB,SAASoC,SAAW,UAC1B4pB,uCChUrC,IAAI+yC,EAAU,EAAQ,OAMlBC,EAAgB,CAClBC,mBAAmB,EACnBC,aAAa,EACbC,cAAc,EACd/vB,cAAc,EACdvxC,aAAa,EACbuhE,iBAAiB,EACjBC,0BAA0B,EAC1B56C,0BAA0B,EAC1B66C,QAAQ,EACRn+D,WAAW,EACXkH,MAAM,GAEJk3D,EAAgB,CAClBrwD,MAAM,EACNzV,QAAQ,EACRuD,WAAW,EACXwiE,QAAQ,EACRC,QAAQ,EACRxhE,WAAW,EACXyhE,OAAO,GASLC,EAAe,CACjB,UAAY,EACZC,SAAS,EACTxwB,cAAc,EACdvxC,aAAa,EACbsD,WAAW,EACXkH,MAAM,GAEJw3D,EAAe,CAAC,EAIpB,SAASC,EAAW5xD,GAElB,OAAI6wD,EAAQgB,OAAO7xD,GACVyxD,EAIFE,EAAa3xD,EAAoB,WAAM8wD,CAChD,CAXAa,EAAad,EAAQiB,YAhBK,CACxB,UAAY,EACZn/D,QAAQ,EACRuuC,cAAc,EACdvxC,aAAa,EACbsD,WAAW,GAYb0+D,EAAad,EAAQkB,MAAQN,EAY7B,IAAI9iE,EAAiBD,OAAOC,eACxBqjE,EAAsBtjE,OAAOsjE,oBAC7BtnC,EAAwBh8B,OAAOg8B,sBAC/B97B,EAA2BF,OAAOE,yBAClCyO,EAAiB3O,OAAO2O,eACxB40D,EAAkBvjE,OAAOI,UAsC7B/B,EAAOC,QArCP,SAASklE,EAAqBC,EAAiBC,EAAiBC,GAC9D,GAA+B,iBAApBD,EAA8B,CAEvC,GAAIH,EAAiB,CACnB,IAAIK,EAAqBj1D,EAAe+0D,GAEpCE,GAAsBA,IAAuBL,GAC/CC,EAAqBC,EAAiBG,EAAoBD,EAE9D,CAEA,IAAI5yD,EAAOuyD,EAAoBI,GAE3B1nC,IACFjrB,EAAOA,EAAKrP,OAAOs6B,EAAsB0nC,KAM3C,IAHA,IAAIG,EAAgBX,EAAWO,GAC3BK,EAAgBZ,EAAWQ,GAEtBlmE,EAAI,EAAGA,EAAIuT,EAAKlU,SAAUW,EAAG,CACpC,IAAI2C,EAAM4Q,EAAKvT,GAEf,KAAKmlE,EAAcxiE,IAAUwjE,GAAaA,EAAUxjE,IAAW2jE,GAAiBA,EAAc3jE,IAAW0jE,GAAiBA,EAAc1jE,IAAO,CAC7I,IAAI4jE,EAAa7jE,EAAyBwjE,EAAiBvjE,GAE3D,IAEEF,EAAewjE,EAAiBtjE,EAAK4jE,EACvC,CAAE,MAAO5+D,GAAI,CACf,CACF,CACF,CAEA,OAAOs+D,CACT,kCCpDAplE,EAAOC,QA5BS,SAAS0lE,EAAWC,EAAQ1rD,EAAGmP,EAAGwb,EAAG3B,EAAGp8B,EAAG4+B,GAOzD,IAAKigC,EAAW,CACd,IAAIzqD,EACJ,QAAe3V,IAAXqgE,EACF1qD,EAAQ,IAAI1I,MACV,qIAGG,CACL,IAAIvP,EAAO,CAACiX,EAAGmP,EAAGwb,EAAG3B,EAAGp8B,EAAG4+B,GACvBmgC,EAAW,GACf3qD,EAAQ,IAAI1I,MACVozD,EAAOpmE,QAAQ,OAAO,WAAa,OAAOyD,EAAK4iE,IAAa,MAExD5xD,KAAO,qBACf,CAGA,MADAiH,EAAM4qD,YAAc,EACd5qD,CACR,CACF,mzEC7CO,IAAI6qD,EAAwB,qDACxB3pB,EAAc,2CACd4pB,EAAyB,sDACzBC,EAAqB,kDACrBC,EAAuB,oDACvBC,EAAyB,sDACzBC,EAAkB,+CAClBC,EAAmB,gDACnBC,EAAuB,oDACvBC,EAA2B,wDAC3BloB,EAAoB,iDACpB/B,EAAgB,6CAChBkqB,EAAoB,iDACpBC,EAAoB,iDACpBC,EAAuB,oDACvBC,EAA4B,yDAC5BC,EAA2B,wDAC3BzqB,EAA4B,yDAC5BE,EAA4B,yDAC5BwqB,EAAmC,gEACnCC,EAAyC,sEACzCC,EAA0B,uDAC1BC,EAAU,uCACVC,EAAY,yCACZC,EAAmB,gDACnBC,EAAqB,kDACrBC,EAAyB,sDACzBC,EAAY,yCACZC,EAAY,yCACZC,EAAa,0CACbC,EAAU,uCACVC,EAAa,0CACb34B,EAAc,2CACd44B,EAAsB,mDACtBC,EAAkB,+CAClBC,EAAsB,mDACtBC,EAAuB,oDACvBC,EAAS,sCACTC,EAAU,uCACVC,EAAoB,iDACpBxuC,EAAU,uCACVyuC,EAAmB,gDACnBC,EAAkB,+CAClBC,EAAwB,qDACxBx6B,EAAU,uCACVy6B,EAAmB,gDACnBC,EAAmB,gDACnBC,EAAkB,+CAClBC,EAAY,yCACZC,EAAiB,8CACjBC,EAAe,4CACfC,GAAY,yCACZC,GAAuB,oDACvBC,GAAkB,+CAClBC,GAAqB,kDACrBC,GAAa,0CACbC,GAAoB,iDACpBC,GAAmB,gDACnB53B,GAAiB,8CACjB63B,GAAY,0DC3DvB,WACE,IAAIC,EAAgBC,EAAQC,EAAUC,EAAgBC,EAAcC,EAExC,oBAAhB19C,aAA+C,OAAhBA,aAAyBA,YAAY29C,IAC9ExpE,EAAOC,QAAU,WACf,OAAO4rB,YAAY29C,KACrB,EAC6B,oBAAZ1nC,SAAuC,OAAZA,SAAqBA,QAAQqnC,QACzEnpE,EAAOC,QAAU,WACf,OAAQipE,IAAmBI,GAAgB,GAC7C,EACAH,EAASrnC,QAAQqnC,OAMjBE,GALAH,EAAiB,WACf,IAAIO,EAEJ,OAAe,KADfA,EAAKN,KACK,GAAWM,EAAG,EAC1B,KAEAF,EAA4B,IAAnBznC,QAAQ4nC,SACjBJ,EAAeD,EAAiBE,GACvB5sD,KAAK6sD,KACdxpE,EAAOC,QAAU,WACf,OAAO0c,KAAK6sD,MAAQJ,CACtB,EACAA,EAAWzsD,KAAK6sD,QAEhBxpE,EAAOC,QAAU,WACf,OAAO,IAAI0c,MAAOykD,UAAYgI,CAChC,EACAA,GAAW,IAAIzsD,MAAOykD,UAGzB,GAAEn/D,KAAKmB,6BC1BR,IAPA,IAAIomE,EAAM,EAAQ,IACd98C,EAAyB,oBAAXhpB,OAAyB,EAAA4hC,EAAS5hC,OAChDimE,EAAU,CAAC,MAAO,UAClBrpE,EAAS,iBACTspE,EAAMl9C,EAAK,UAAYpsB,GACvBupE,EAAMn9C,EAAK,SAAWpsB,IAAWosB,EAAK,gBAAkBpsB,GAEpDnB,EAAI,GAAIyqE,GAAOzqE,EAAIwqE,EAAQnrE,OAAQW,IACzCyqE,EAAMl9C,EAAKi9C,EAAQxqE,GAAK,UAAYmB,GACpCupE,EAAMn9C,EAAKi9C,EAAQxqE,GAAK,SAAWmB,IAC5BosB,EAAKi9C,EAAQxqE,GAAK,gBAAkBmB,GAI7C,IAAIspE,IAAQC,EAAK,CACf,IAAIC,EAAO,EACPh4D,EAAK,EACLi4D,EAAQ,GAGZH,EAAM,SAASzoD,GACb,GAAoB,IAAjB4oD,EAAMvrE,OAAc,CACrB,IAAIwrE,EAAOR,IACP38D,EAAO0hD,KAAKiB,IAAI,EALJ,oBAKwBwa,EAAOF,IAC/CA,EAAOj9D,EAAOm9D,EACdtxD,YAAW,WACT,IAAI+5C,EAAKsX,EAAMzqE,MAAM,GAIrByqE,EAAMvrE,OAAS,EACf,IAAI,IAAIW,EAAI,EAAGA,EAAIszD,EAAGj0D,OAAQW,IAC5B,IAAIszD,EAAGtzD,GAAG8qE,UACR,IACExX,EAAGtzD,GAAGgiB,SAAS2oD,EACjB,CAAE,MAAMhjE,GACN4R,YAAW,WAAa,MAAM5R,CAAE,GAAG,EACrC,CAGN,GAAGynD,KAAK+S,MAAMz0D,GAChB,CAMA,OALAk9D,EAAMz8D,KAAK,CACT48D,SAAUp4D,EACVqP,SAAUA,EACV8oD,WAAW,IAENn4D,CACT,EAEA+3D,EAAM,SAASK,GACb,IAAI,IAAI/qE,EAAI,EAAGA,EAAI4qE,EAAMvrE,OAAQW,IAC5B4qE,EAAM5qE,GAAG+qE,SAAWA,IACrBH,EAAM5qE,GAAG8qE,WAAY,EAG3B,CACF,CAEAjqE,EAAOC,QAAU,SAASgR,GAIxB,OAAO24D,EAAI3nE,KAAKyqB,EAAMzb,EACxB,EACAjR,EAAOC,QAAQud,OAAS,WACtBqsD,EAAI1mE,MAAMupB,EAAM1pB,UAClB,EACAhD,EAAOC,QAAQkqE,SAAW,SAAS7jE,GAC5BA,IACHA,EAASomB,GAEXpmB,EAAO1C,sBAAwBgmE,EAC/BtjE,EAAOugC,qBAAuBgjC,CAChC,0BC1Eqf,SAAS3vD,EAAEmP,EAAEwb,EAAE3B,GAAG,aAAa,SAASp8B,EAAEoT,GAAG,OAAOA,GAAG,iBAAiBA,GAAG,YAAYA,EAAEA,EAAE,CAAC9Y,QAAQ8Y,EAAE,CAAC,SAASwrB,EAAExrB,EAAEmP,GAAG,IAAIwb,EAAEljC,OAAO+Q,KAAKwH,GAAG,GAAGvY,OAAOg8B,sBAAsB,CAAC,IAAIuF,EAAEvhC,OAAOg8B,sBAAsBzjB,GAAGmP,IAAI6Z,EAAEA,EAAE3kC,QAAO,SAAS8qB,GAAG,OAAO1nB,OAAOE,yBAAyBqY,EAAEmP,GAAG7X,UAAU,KAAIqzB,EAAEv3B,KAAKnK,MAAM0hC,EAAE3B,EAAE,CAAC,OAAO2B,CAAC,CAAC,SAASS,EAAEprB,GAAG,IAAI,IAAImP,EAAEwb,EAAE,EAAEA,EAAE7hC,UAAUxE,OAAOqmC,IAAIxb,EAAE,MAAMrmB,UAAU6hC,GAAG,CAAC,EAAE7hC,UAAU6hC,GAAGA,EAAE,EAAEa,EAAE/jC,OAAO0nB,IAAG,GAAIhT,SAAQ,SAASwuB,GAAGhC,EAAW,QAAE3oB,EAAE2qB,EAAExb,EAAEwb,GAAG,IAAGljC,OAAOq8B,0BAA0Br8B,OAAOs8B,iBAAiB/jB,EAAEvY,OAAOq8B,0BAA0B3U,IAAIqc,EAAE/jC,OAAO0nB,IAAIhT,SAAQ,SAASwuB,GAAGljC,OAAOC,eAAesY,EAAE2qB,EAAEljC,OAAOE,yBAAyBwnB,EAAEwb,GAAG,IAAG,OAAO3qB,CAAC,CAAC,SAASuoB,EAAEvoB,GAAG,IAAImP,EAAEnP,EAAEkwD,QAAQvlC,EAAE3qB,EAAEmwD,WAAWvjE,OAAE,IAAS+9B,EAAEz0B,EAAE,CAACk6D,QAAO,IAAKzlC,EAAEa,EAAExrB,EAAEqwD,YAAY9nC,OAAE,IAASiD,GAAGA,EAAmB8kC,EAAftnC,EAAE9P,UAAS,GAAQ,GAAG2S,EAAEz0B,EAAEm5D,EAAEphD,IAAIwZ,EAAEkD,EAAEtnC,KAAK,IAAI,GAAG4S,EAAEwxB,KAAKxxB,EAAEwxB,GAAG,CAACnkB,QAAQnH,EAAEwuB,EAAEj/B,GAAGzF,MAAM,UAAU6Z,MAAM,OAAO,aAAa7J,EAAEwxB,GAAGxhC,MAAM,MAAM,CAACk2B,IAAIlmB,EAAEwxB,GAAGtL,IAAIoP,WAAU,EAAGzrB,MAAM,MAAM,GAAG,aAAa7J,EAAEwxB,GAAGxhC,MAAM,CAAC,GAAGohC,EAAE,MAAMpxB,EAAEwxB,GAAG3nB,MAAM,MAAM,CAACyrB,WAAU,EAAGzrB,MAAM7J,EAAEwxB,GAAG3nB,MAAMqc,SAAI,EAAO,CAAC,GAAGlmB,EAAEwxB,GAAGnkB,QAAQ5R,MAAK,SAASoN,GAAG7I,EAAEwxB,GAAGyC,EAAEA,EAAE,CAAC,EAAEj0B,EAAEwxB,IAAI,CAAC,EAAE,CAACxhC,MAAM,WAAWk2B,IAAIrd,IAAIuoB,GAAG+nC,EAAE3nC,EAAE,IAAU,OAAE,SAAS3oB,GAAG7I,EAAEwxB,GAAGyC,EAAEA,EAAE,CAAC,EAAEj0B,EAAEwxB,IAAI,CAAC,EAAE,CAACxhC,MAAM,WAAW6Z,MAAMhB,IAAIuoB,GAAG+nC,EAAE3nC,EAAE,IAAGJ,EAAE,MAAMpxB,EAAEwxB,GAAGnkB,QAAQ,MAAM,CAACioB,WAAU,EAAGpP,SAAI,EAAOrc,MAAM,KAAK,CAAC,SAASsvD,EAAEtwD,EAAEmP,GAAG,IAAIwb,EAAEljC,OAAO+Q,KAAKwH,GAAG,GAAGvY,OAAOg8B,sBAAsB,CAAC,IAAIuF,EAAEvhC,OAAOg8B,sBAAsBzjB,GAAGmP,IAAI6Z,EAAEA,EAAE3kC,QAAO,SAAS8qB,GAAG,OAAO1nB,OAAOE,yBAAyBqY,EAAEmP,GAAG7X,UAAU,KAAIqzB,EAAEv3B,KAAKnK,MAAM0hC,EAAE3B,EAAE,CAAC,OAAO2B,CAAC,CAAC,SAASkB,EAAE7rB,GAAG,IAAI,IAAImP,EAAEwb,EAAE,EAAEA,EAAE7hC,UAAUxE,OAAOqmC,IAAIxb,EAAE,MAAMrmB,UAAU6hC,GAAG,CAAC,EAAE7hC,UAAU6hC,GAAGA,EAAE,EAAE2lC,EAAE7oE,OAAO0nB,IAAG,GAAIhT,SAAQ,SAASwuB,GAAGhC,EAAW,QAAE3oB,EAAE2qB,EAAExb,EAAEwb,GAAG,IAAGljC,OAAOq8B,0BAA0Br8B,OAAOs8B,iBAAiB/jB,EAAEvY,OAAOq8B,0BAA0B3U,IAAImhD,EAAE7oE,OAAO0nB,IAAIhT,SAAQ,SAASwuB,GAAGljC,OAAOC,eAAesY,EAAE2qB,EAAEljC,OAAOE,yBAAyBwnB,EAAEwb,GAAG,IAAG,OAAO3qB,CAAC,CAAC,IAAI2oB,EAAE/7B,EAAEuiB,GAAGvpB,EAAEgH,EAAE+9B,GAAGpD,EAAE36B,EAAEo8B,GAAG9yB,EAAE,SAAS8J,GAAG,IAAImP,EAAEnP,EAAEowD,OAAOzlC,EAAE3qB,EAAE0F,YAAYsjB,OAAE,IAAS2B,EAAE,GAAGA,EAAE,OAAO,SAAS3qB,GAAG,OAAO,IAAInN,SAAQ,SAAS83B,EAAE/9B,GAAG,IAAI4+B,EAAE,IAAIglC,MAAMxnC,IAAIwC,EAAE9lB,YAAYsjB,GAAGwC,EAAEpvB,OAAO,iBAAc,IAAS+S,GAAIA,IAAIqc,EAAE4kC,OAAO5kC,EAAE4kC,SAASx9D,KAAK+3B,GAAU,MAAE/9B,GAAG+9B,GAAG,EAAEa,EAAEnvB,QAAQzP,EAAE4+B,EAAEnO,IAAIrd,CAAC,GAAE,CAAC,EAAE5I,EAAE,SAAS+X,GAAG,OAAOA,EAAE9qB,QAAO,SAAS2b,GAAG,OAAOA,CAAC,GAAE,EAAEuwD,EAAE,SAASvwD,GAAG,OAAOnc,MAAMC,QAAQkc,GAAGA,EAAE,CAACA,EAAE,EAAE7I,EAAE,CAAC,EAAEkG,EAAE,SAAS2C,EAAEmP,GAAG,IAAIwb,GAAE,EAAG,OAAO,IAAI93B,SAAQ,SAASm2B,EAAEp8B,GAAG,IAAI4+B,EAAE,SAASxrB,GAAG,OAAOmP,EAAEnP,GAAGpN,MAAK,WAAW+3B,GAAE,EAAG3B,EAAEhpB,EAAE,GAAE,EAAEA,EAAEvN,QAAO,SAASuN,EAAEmP,GAAG,OAAOnP,EAAS,OAAE,WAAW,IAAI2qB,EAAE,OAAOa,EAAErc,EAAE,GAAE,GAAEqc,EAAExrB,EAAEihD,UAAiB,MAAEr0D,EAAE,GAAE,EAAE2J,EAAE,CAAC,SAAS,MAAM,SAAS,WAAW,YAAY,kBAAkB,oBAAoB,aAAa,cAAc,eAAekzB,EAAE,SAASzpB,GAAG,OAAOA,CAAC,EAAEA,EAAEyuB,IAAI,SAASzuB,GAAG,IAAImP,EAAEnP,EAAEowD,OAAOzlC,EAAE3qB,EAAEqd,IAAI2L,OAAE,IAAS2B,EAAE,GAAGA,EAAE/9B,EAAEoT,EAAE3E,OAAOmwB,OAAE,IAAS5+B,EAAE,KAAKA,EAAEw+B,EAAEprB,EAAEywD,SAASxrE,OAAE,IAASmmC,EAAE,KAAKA,EAAEklC,EAAEtwD,EAAEotD,UAAUzkC,OAAE,IAAS2nC,EAAE7mC,EAAE6mC,EAAEl5D,EAAE4I,EAAE0wD,gBAAgBH,OAAE,IAASn5D,EAAEqyB,EAAEryB,EAAED,EAAE6I,EAAE2wD,kBAAkBtzD,OAAE,IAASlG,EAAEsyB,EAAEtyB,EAAEw0B,EAAE3rB,EAAEmwD,WAAW1kC,EAAEzrB,EAAE4wD,YAAYzsE,EAAE6b,EAAEqwD,YAAY3kC,OAAE,IAASvnC,GAAGA,EAAEkkC,EAAEziC,EAAW,QAAEoa,EAAEzJ,GAAuDmyB,EAAEH,EAAE,CAAC2nC,QAAQlnC,EAAEmnC,WAAnExkC,EAAEA,GAAGz1B,EAAE,CAACk6D,cAAS,IAASjhD,IAAIA,EAAEzJ,YAAY+lB,IAAoC4kC,YAAY3kC,IAAI/B,EAAEjB,EAAErL,IAAIwzC,EAAEnoC,EAAE+D,UAAU,OAAO9C,EAAEhB,EAAEpB,EAAW,QAAE57B,cAAc,MAAMkgC,EAAE,CAACxO,IAAIsM,GAAGtB,MAAMqD,GAAGmlC,EAAEN,EAAE/kC,IAAIE,GAAGzmC,EAAEoY,EAAEpY,GAAG,IAAI,EAAE+a,EAAE8wD,SAASvoC,EAAE9gC,OAAOC,eAAesY,EAAE,aAAa,CAACnU,OAAM,GAAI,CAAhkHsjB,CAAEppB,EAAQ,EAAQ,OAAyC,EAAQ,MAAuD,EAAQ,0CCSzL,IAAIopB,EAAE,mBAAoBuW,QAAQA,OAAOqrC,IAAIpmC,EAAExb,EAAEuW,OAAOqrC,IAAI,iBAAiB,MAAM/nC,EAAE7Z,EAAEuW,OAAOqrC,IAAI,gBAAgB,MAAMnkE,EAAEuiB,EAAEuW,OAAOqrC,IAAI,kBAAkB,MAAMvlC,EAAErc,EAAEuW,OAAOqrC,IAAI,qBAAqB,MAAM3lC,EAAEjc,EAAEuW,OAAOqrC,IAAI,kBAAkB,MAAMxoC,EAAEpZ,EAAEuW,OAAOqrC,IAAI,kBAAkB,MAAMllC,EAAE1c,EAAEuW,OAAOqrC,IAAI,iBAAiB,MAAMpoC,EAAExZ,EAAEuW,OAAOqrC,IAAI,oBAAoB,MAAMnrE,EAAEupB,EAAEuW,OAAOqrC,IAAI,yBAAyB,MAAMxpC,EAAEpY,EAAEuW,OAAOqrC,IAAI,qBAAqB,MAAM35D,EAAE+X,EAAEuW,OAAOqrC,IAAI,kBAAkB,MAAMR,EAAEphD,EACpfuW,OAAOqrC,IAAI,uBAAuB,MAAM55D,EAAEgY,EAAEuW,OAAOqrC,IAAI,cAAc,MAAMx6D,EAAE4Y,EAAEuW,OAAOqrC,IAAI,cAAc,MAAMplC,EAAExc,EAAEuW,OAAOqrC,IAAI,eAAe,MAAMtlC,EAAEtc,EAAEuW,OAAOqrC,IAAI,qBAAqB,MAAM5sE,EAAEgrB,EAAEuW,OAAOqrC,IAAI,mBAAmB,MAAMrlC,EAAEvc,EAAEuW,OAAOqrC,IAAI,eAAe,MAClQ,SAAS1oC,EAAEroB,GAAG,GAAG,iBAAkBA,GAAG,OAAOA,EAAE,CAAC,IAAIypB,EAAEzpB,EAAEgxD,SAAS,OAAOvnC,GAAG,KAAKkB,EAAE,OAAO3qB,EAAEA,EAAE9M,MAAQ,KAAKy1B,EAAE,KAAK/iC,EAAE,KAAKgH,EAAE,KAAKw+B,EAAE,KAAKI,EAAE,KAAKp0B,EAAE,OAAO4I,EAAE,QAAQ,OAAOA,EAAEA,GAAGA,EAAEgxD,UAAY,KAAKnlC,EAAE,KAAKtE,EAAE,KAAKhxB,EAAE,KAAKY,EAAE,KAAKoxB,EAAE,OAAOvoB,EAAE,QAAQ,OAAOypB,GAAG,KAAKT,EAAE,OAAOS,EAAE,CAAC,CAAC,SAASf,EAAE1oB,GAAG,OAAOqoB,EAAEroB,KAAKpa,CAAC,CAACG,EAAQkrE,UAAUtoC,EAAE5iC,EAAQmrE,eAAetrE,EAAEG,EAAQorE,gBAAgBtlC,EAAE9lC,EAAQqrE,gBAAgB7oC,EAAExiC,EAAQ89D,QAAQl5B,EAAE5kC,EAAQ8kE,WAAWtjC,EAAExhC,EAAQsrE,SAASzkE,EAAE7G,EAAQurE,KAAK/6D,EAAExQ,EAAQ+kE,KAAK3zD,EAAEpR,EAAQwrE,OAAOvoC,EAChfjjC,EAAQyrE,SAASpmC,EAAErlC,EAAQ0rE,WAAWjmC,EAAEzlC,EAAQ2rE,SAASt6D,EAAErR,EAAQ4rE,YAAY,SAAS3xD,GAAG,OAAO0oB,EAAE1oB,IAAIqoB,EAAEroB,KAAK2oB,CAAC,EAAE5iC,EAAQ6rE,iBAAiBlpC,EAAE3iC,EAAQ8rE,kBAAkB,SAAS7xD,GAAG,OAAOqoB,EAAEroB,KAAK6rB,CAAC,EAAE9lC,EAAQ+rE,kBAAkB,SAAS9xD,GAAG,OAAOqoB,EAAEroB,KAAKuoB,CAAC,EAAExiC,EAAQgsE,UAAU,SAAS/xD,GAAG,MAAM,iBAAkBA,GAAG,OAAOA,GAAGA,EAAEgxD,WAAWrmC,CAAC,EAAE5kC,EAAQisE,aAAa,SAAShyD,GAAG,OAAOqoB,EAAEroB,KAAKunB,CAAC,EAAExhC,EAAQksE,WAAW,SAASjyD,GAAG,OAAOqoB,EAAEroB,KAAKpT,CAAC,EAAE7G,EAAQmsE,OAAO,SAASlyD,GAAG,OAAOqoB,EAAEroB,KAAKzJ,CAAC,EAC1dxQ,EAAQ6kE,OAAO,SAAS5qD,GAAG,OAAOqoB,EAAEroB,KAAK7I,CAAC,EAAEpR,EAAQosE,SAAS,SAASnyD,GAAG,OAAOqoB,EAAEroB,KAAKgpB,CAAC,EAAEjjC,EAAQqsE,WAAW,SAASpyD,GAAG,OAAOqoB,EAAEroB,KAAKorB,CAAC,EAAErlC,EAAQssE,aAAa,SAASryD,GAAG,OAAOqoB,EAAEroB,KAAKwrB,CAAC,EAAEzlC,EAAQusE,WAAW,SAAStyD,GAAG,OAAOqoB,EAAEroB,KAAK5I,CAAC,EAC1OrR,EAAQwsE,mBAAmB,SAASvyD,GAAG,MAAM,iBAAkBA,GAAG,mBAAoBA,GAAGA,IAAIpT,GAAGoT,IAAIpa,GAAGoa,IAAIorB,GAAGprB,IAAIwrB,GAAGxrB,IAAI5I,GAAG4I,IAAIuwD,GAAG,iBAAkBvwD,GAAG,OAAOA,IAAIA,EAAEgxD,WAAWz6D,GAAGyJ,EAAEgxD,WAAW75D,GAAG6I,EAAEgxD,WAAWzoC,GAAGvoB,EAAEgxD,WAAWnlC,GAAG7rB,EAAEgxD,WAAWzpC,GAAGvnB,EAAEgxD,WAAWvlC,GAAGzrB,EAAEgxD,WAAW7sE,GAAG6b,EAAEgxD,WAAWtlC,GAAG1rB,EAAEgxD,WAAWrlC,EAAE,EAAE5lC,EAAQysE,OAAOnqC,sCCXjUviC,EAAOC,QAAU,EAAjB,+CCMe8lC,EAAE,EAAQ,OAASlD,EAAE,CAAC8pC,QAAO,GAAIlrC,EAAE,IAAIvzB,IAAIoD,EAAEsuB,OAAOqrC,IAAI,iBAAiBR,EAAE7qC,OAAOqrC,IAAI,cAAc55D,EAAEuuB,OAAOqrC,IAAI,uBAAuBx6D,EAAEs1B,EAAE6mC,mDAAmDC,gBAAkF,SAAShnC,EAAE3rB,EAAEmP,EAAEwb,GAAGzhC,KAAK0pE,QAAQ5yD,EAAE9W,KAAK2pE,OAAO1jD,EAAEjmB,KAAK4pE,UAAUnoC,CAAC,CACjW,SAASc,EAAEzrB,GAAG,OAAOA,EAAE4yD,SAAS,KAAK,EAAE,OAAO5yD,EAAE6yD,OAAO,KAAK,EAAE,IAAI1jD,EAAEziB,KAAKC,MAAMqT,EAAE6yD,OAAO7yD,EAAE8yD,UAAUC,WAAuB,OAAZ/yD,EAAE4yD,QAAQ,EAAS5yD,EAAE6yD,OAAO1jD,EAAE,KAAK,EAAa,IAAI,IAAIwb,GAAnBxb,EAAEnP,EAAE6yD,QAAmBG,OAAOhqC,EAAE,EAAEA,EAAE2B,EAAErmC,OAAO0kC,IAAI,CAAC,IAAIp8B,EAAE26B,EAAEjgC,IAAIqjC,EAAE3B,IAAI,GAAG,OAAOp8B,EAAE,MAAMA,CAAE,CAAyG,OAAxG+9B,EAAEsoC,EAAoB9jD,EAAEvX,IAAIuX,EAAE,MAAMA,EAAEpV,KAAK4wB,EAAE,KAAKxb,EAAEpV,KAAK4wB,EAAEhkC,WAAWgkC,EAAEzjC,QAAQyjC,EAAEA,EAAExb,EAAEpV,MAAMiG,EAAE4yD,QAAQ,EAAS5yD,EAAE6yD,OAAO1jD,EAAE,KAAK,EAAE,MAAMnP,EAAE,QAAQ,MAAMA,EAAE6yD,OAAQ,CAAC,SAAS1uE,IAAoB,OAAOsnC,EAAjBC,EAAExiC,KAAK,GAAc,CAAC,SAASm/B,EAAEroB,EAAEmP,GAAG,OAAO,IAAIwc,EAAE,EAAExc,EAAEnP,EAAE,CAC3d,SAAS0oB,EAAE1oB,GAAG,GAAG,OAAOA,EAAE,IAAI,IAAImP,EAAE,EAAEA,EAAEnP,EAAE1b,OAAO6qB,KAAI,EAAGnP,EAAEmP,KAAK,CAAC,SAAS0hD,EAAE7wD,EAAEmP,GAAG,GAAG,IAAInP,EAAE4yD,QAAQ,CAAC,IAAIjoC,EAAE3qB,EAAE6yD,OAAO7yD,EAAE4yD,QAAQ,EAAE5yD,EAAE6yD,OAAO1jD,EAAEuZ,EAAEiC,EAAE,CAAC,CAAC,SAASuoC,EAAElzD,EAAEmP,GAAGnP,EAAEmzD,QAAQh3D,SAAQ,SAAS6D,GAAG6wD,EAAE7wD,EAAEmP,EAAE,GAAE,CAAC,SAASuc,EAAE1rB,EAAEmP,GAAG,IAAIwb,EAAE3qB,EAAEmzD,QAAQnqC,EAAE2B,EAAErjC,IAAI6nB,GAAqC,OAAlC6Z,IAAIA,EAAE,IAAI2C,EAAE,EAAE,KAAK3rB,GAAG2qB,EAAE1iC,IAAIknB,EAAE6Z,IAAWA,CAAC,CAC3B,SAASG,EAAEnpB,GAAGkzD,EAAElzD,EAAE1H,MAAM,sBAAsB,CAC7S,SAASkxB,EAAExpB,EAAEmP,GAAG,GAAG,KAAKA,EAAE,CAAC,IAAIwb,EAAExb,EAAE,GAAG6Z,EAAE7Z,EAAE5b,QAAQ,IAAI,GAAG3G,EAAE2nD,SAASplC,EAAE3kB,UAAU,EAAEw+B,GAAG,IAAuB,OAAnBA,EAAE7Z,EAAE3kB,UAAUw+B,EAAE,GAAU2B,GAAG,IAAK,KAAiBA,GAAbxb,EAAEnP,EAAEmzD,SAAa7rE,IAAIsF,IAAI,IAAI+9B,EAAEioC,UAAU5yD,EAAE2qB,EAAEkoC,OAAOloC,EAAEioC,QAAQ,EAAEjoC,EAAEkoC,OAAO7pC,EAAEN,EAAE1oB,IAAImP,EAAElnB,IAAI2E,EAAE,IAAI++B,EAAE,EAAE3C,EAAEhpB,IAAI,MAAM,IAAK,IAAgB2qB,GAAZxb,EAAEnP,EAAEmzD,SAAY7rE,IAAIsF,GAAGo8B,EAAEt8B,KAAKC,MAAMq8B,EAAEhpB,EAAE+yD,WAAW,IAAIvnC,EAAExrB,EAAEozD,eAAqC5nC,GAAtBxC,EAAEwC,EAAEA,EAAExC,EAAEpxB,IAAIoxB,EAAEjvB,MAAMivB,GAAMgqC,OAAO,IAAI,IAAIzqC,EAAE,EAAEA,EAAEiD,EAAElnC,OAAOikC,IAAI,CAAC,IAAI6C,EAAEI,EAAEjD,GAAG,QAAG,IAAShB,EAAEjgC,IAAI8jC,GAAG,CAAC,IAAIzB,EAAE,IAAuByB,GAAGxlC,EAAE2hC,EAAEt/B,IAAI2B,KAAK29B,EAAE6D,EAAE,MAAMf,EAAE9C,EAAEt/B,IAAI2B,KAAK29B,EAAE6D,GAAGzB,EAAE/2B,KAAKhN,EAAEykC,GAAG9C,EAAEt/B,IAAImjC,EACxfzB,EAAE,CAAC,CAACgB,EAAE,IAAIA,EAAEioC,UAAU5yD,EAAE2qB,EAAEkoC,OAAOloC,EAAEioC,QAAQ,EAAEjoC,EAAEkoC,OAAO7pC,EAAEN,EAAE1oB,IAAImP,EAAElnB,IAAI2E,EAAE,IAAI++B,EAAE,EAAE3C,EAAEhpB,IAAI,MAAM,IAAK,IAAIA,EAAEmzD,QAAQlrE,IAAI2E,EAAEy7B,EAAEroB,EAL2G,SAAWA,GAA2C,OAAxCzJ,EAAEyJ,KAAKzJ,EAAEyJ,GAAG6rB,EAAErY,oBAAoBxT,EAAE7I,IAAWZ,EAAEyJ,EAAE,CAK1KypB,CAAET,GAAGp9B,WAAW,MAAM,IAAK,IAAI++B,EAAEj+B,KAAKC,MAAMq8B,GAAGhpB,EAAEmzD,QAAQlrE,IAAI2E,EAAEy7B,EAAEroB,EAAE0lB,OAAOqrC,IAAIpmC,KAAK,MAAM,IAAK,IAAIxb,EAAEziB,KAAKC,MAAMq8B,IAAG2B,EAAEryB,MAAM6W,EAAE5U,UAAWD,MAAM6U,EAAE7U,OAAmB0uB,GAAb7Z,EAAEnP,EAAEmzD,SAAa7rE,IAAIsF,IAAIikE,EAAE7nC,EAAE2B,GAAGxb,EAAElnB,IAAI2E,EAAE,IAAI++B,EAAE,EAAEhB,EAAE3qB,IAAI,MAAM,QAAQ,MAAM1H,MAAM,8EAA+E,CAAC,CAC5a,SAAS4wB,EAAElpB,GAAG,OAAO,SAASmP,EAAEwb,GAAG,MAAM,iBAAkBA,EAH3D,SAAW3qB,EAAEmP,EAAEwb,GAAG,OAAOA,EAAE,IAAI,IAAK,IAAI,MAAG,MAAMA,EAASvzB,EAAK,MAAMuzB,EAAE,IAAI,MAAMA,EAAE,GAAUA,EAAEngC,UAAU,GAAiDihC,EAAhBzrB,EAAE0rB,EAAE1rB,EAAhCu0C,SAAS5pB,EAAEngC,UAAU,GAAG,MAAyB,IAAK,IAAI,OAAqCwV,EAAE0rB,EAAE1rB,EAAhCu0C,SAAS5pB,EAAEngC,UAAU,GAAG,KAAa,CAACwmE,SAAST,EAAE8C,SAASrzD,EAAEszD,MAAM7nC,GAAG,OAAOd,CAAC,CAGjMiB,CAAE5rB,EAAE9W,EAAKyhC,GAAG,iBAAkBA,GAAG,OAAOA,EAAKA,EAAE,KAAKvzB,EAAE,CAAC45D,SAAS55D,EAAElE,KAAKy3B,EAAE,GAAG/iC,IAAI+iC,EAAE,GAAGp9B,IAAI,KAAKtD,MAAM0gC,EAAE,GAAG4oC,OAAO,MAAM5oC,EAAKA,CAAC,CAAC,CAAC,SAASuB,EAAElsB,GAAG,IAAImP,EAAE,IAAIqkD,YAAiH,OAA3FxzD,EAAE,CAACozD,eAAepzD,EAAEmzD,QAA5B,IAAIn/D,IAAkCuK,SAASpa,EAAEsvE,YAAY,GAAGC,eAAevkD,IAAK4jD,UAAU7pC,EAAElpB,GAAUA,CAAC,CAC5U,SAASuqB,EAAEvqB,EAAEmP,GAAqR,SAAS6Z,EAAE7Z,GAAG+jD,EAAElzD,EAAEmP,EAAE,CAAC,IAAIviB,EAAEuiB,EAAEwkD,YAAY/mE,EAAEzB,OAAOyH,MAApU,SAAS+3B,EAAExb,GAAG,IAAIoZ,EAAEpZ,EAAEtjB,MAAM,IAAGsjB,EAAEgY,KAAc,CAAChY,EAAEoZ,EAAEA,EAAEvoB,EAAE0zD,eAAe,IAAI,IAAItoC,EAAEjc,EAAE5b,QAAQ,KAAK,EAAE63B,GAAG,CAAC,IAAII,EAAExrB,EAAEyzD,YAAgB7tE,EAAEupB,EAAEykD,SAAS,EAAExoC,GAAGxlC,EAAE2iC,EAAE6nC,OAAOxqE,GAAG4jC,EAAExpB,EAAEwrB,EAAE5lC,GAAGoa,EAAEyzD,YAAY,GAAqBroC,GAAlBjc,EAAEA,EAAEykD,SAASxoC,EAAE,IAAO73B,QAAQ,GAAG,CAA8B,OAA7ByM,EAAEyzD,aAAalrC,EAAE6nC,OAAOjhD,EAAEwZ,GAAU/7B,EAAEzB,OAAOyH,KAAK+3B,EAAE3B,EAAE,CAA1OG,EAAEnpB,EAAyO,GAA0DgpB,EAAE,CAPK2C,EAAE9jC,UAAU+K,KAAK,SAASoN,GAAG,IAAI9W,KAAK0pE,SAAS,OAAO1pE,KAAK2pE,SAAS3pE,KAAK2pE,OAAO,IAAI3pE,KAAK2pE,OAAOz/D,KAAK4M,IAAIA,GAAG,EAQ9cja,EAAQwd,yBAAyB,SAASvD,EAAEmP,GAA+C,OAAPob,EAArCpb,EAAE+c,EAAE/c,GAAGA,EAAE0kD,UAAU1kD,EAAE0kD,UAAU,MAAU7zD,GAAUmP,CAAC,sCCdjGrpB,EAAOC,QAAU,EAAjB,4BCFFA,EAAQ+tE,OAAS,SAASvsC,GACxB,OAAOA,CACT,EAEAxhC,EAAQguE,OAAS,SAASxsC,GACxB,OAAOA,EAAIA,CACb,EAEAxhC,EAAQiuE,QAAU,SAASzsC,GACzB,OAAOA,GAAK,EAAIA,EAClB,EAEAxhC,EAAQkuE,UAAY,SAAS1sC,GAE3B,OADAA,GAAK,GACG,EAAU,GAAMA,EAAIA,GACnB,MAASA,GAAKA,EAAI,GAAK,EAClC,EAEAxhC,EAAQmuE,OAAS,SAAS3sC,GACxB,OAAOA,EAAIA,EAAIA,CACjB,EAEAxhC,EAAQouE,QAAU,SAAS5sC,GACzB,QAASA,EAAIA,EAAIA,EAAI,CACvB,EAEAxhC,EAAQquE,UAAY,SAAS7sC,GAE3B,OADAA,GAAK,GACG,EAAU,GAAMA,EAAIA,EAAIA,EACzB,KAAQA,GAAK,GAAMA,EAAIA,EAAI,EACpC,EAEAxhC,EAAQsuE,QAAU,SAAS9sC,GACzB,OAAOA,EAAIA,EAAIA,EAAIA,CACrB,EAEAxhC,EAAQuuE,SAAW,SAAS/sC,GAC1B,OAAO,KAAOA,EAAIA,EAAIA,EAAIA,CAC5B,EAEAxhC,EAAQwuE,WAAa,SAAShtC,GAE5B,OADAA,GAAK,GACG,EAAU,GAAMA,EAAIA,EAAIA,EAAIA,GAC5B,KAAQA,GAAK,GAAKA,EAAIA,EAAIA,EAAI,EACxC,EAEAxhC,EAAQyuE,QAAU,SAASjtC,GACzB,OAAOA,EAAIA,EAAIA,EAAIA,EAAIA,CACzB,EAEAxhC,EAAQ0uE,SAAW,SAASltC,GAC1B,QAASA,EAAIA,EAAIA,EAAIA,EAAIA,EAAI,CAC/B,EAEAxhC,EAAQ2uE,WAAa,SAASntC,GAE5B,OADAA,GAAK,GACG,EAAU,GAAMA,EAAIA,EAAIA,EAAIA,EAAIA,EACjC,KAAQA,GAAK,GAAKA,EAAIA,EAAIA,EAAIA,EAAI,EAC3C,EAEAxhC,EAAQ4uE,OAAS,SAASptC,GACxB,OAAO,EAAI8sB,KAAKugB,IAAIrtC,EAAI8sB,KAAKwgB,GAAK,EACpC,EAEA9uE,EAAQ+uE,QAAU,SAASvtC,GACzB,OAAO8sB,KAAK0gB,IAAIxtC,EAAI8sB,KAAKwgB,GAAK,EAChC,EAEA9uE,EAAQivE,UAAY,SAASztC,GAC3B,MAAO,IAAM,EAAI8sB,KAAKugB,IAAIvgB,KAAKwgB,GAAKttC,GACtC,EAEAxhC,EAAQkvE,OAAS,SAAS1tC,GACxB,OAAO,GAAKA,EAAI,EAAI8sB,KAAKC,IAAI,KAAM/sB,EAAI,EACzC,EAEAxhC,EAAQmvE,QAAU,SAAS3tC,GACzB,OAAO,GAAKA,EAAIA,EAAI,EAAI8sB,KAAKC,IAAI,GAAI,GAAK/sB,EAC5C,EAEAxhC,EAAQovE,UAAY,SAAS5tC,GAC3B,OAAI,GAAKA,EAAU,EACf,GAAKA,EAAU,GACdA,GAAK,GAAK,EAAU,GAAK8sB,KAAKC,IAAI,KAAM/sB,EAAI,GAC1C,IAAoC,EAA7B8sB,KAAKC,IAAI,GAAI,IAAM/sB,EAAI,IACvC,EAEAxhC,EAAQqvE,OAAS,SAAS7tC,GACxB,OAAO,EAAI8sB,KAAKghB,KAAK,EAAI9tC,EAAIA,EAC/B,EAEAxhC,EAAQuvE,QAAU,SAAS/tC,GACzB,OAAO8sB,KAAKghB,KAAK,KAAO9tC,EAAIA,EAC9B,EAEAxhC,EAAQwvE,UAAY,SAAShuC,GAE3B,OADAA,GAAK,GACG,GAAW,IAAO8sB,KAAKghB,KAAK,EAAI9tC,EAAIA,GAAK,GAC1C,IAAO8sB,KAAKghB,KAAK,GAAK9tC,GAAK,GAAKA,GAAK,EAC9C,EAEAxhC,EAAQyvE,OAAS,SAASjuC,GACxB,IAAIlqB,EAAI,QACR,OAAOkqB,EAAIA,IAAOlqB,EAAI,GAAMkqB,EAAIlqB,EAClC,EAEAtX,EAAQ0vE,QAAU,SAASluC,GACzB,IAAIlqB,EAAI,QACR,QAASkqB,EAAIA,IAAMlqB,EAAI,GAAKkqB,EAAIlqB,GAAK,CACvC,EAEAtX,EAAQ2vE,UAAY,SAASnuC,GAC3B,IAAIlqB,EAAI,UACR,OAAOkqB,GAAK,GAAM,EAAmBA,EAAIA,IAAQlqB,EAAI,GAAMkqB,EAAIlqB,GAAlC,GACtB,KAAUkqB,GAAK,GAAMA,IAAQlqB,EAAI,GAAMkqB,EAAIlqB,GAAM,EAC1D,EAEAtX,EAAQ4vE,SAAW,SAASpuC,GAC1B,OAAO,EAAIxhC,EAAQ6vE,UAAU,EAAIruC,EACnC,EAEAxhC,EAAQ6vE,UAAY,SAASruC,GAC3B,OAAKA,EAAM,EAAI,KACN,OAASA,EAAIA,EACVA,EAAM,EAAI,KACb,QAAWA,GAAO,IAAM,MAAWA,EAAI,IACpCA,EAAM,IAAM,KACf,QAAWA,GAAO,KAAO,MAAWA,EAAI,MAExC,QAAWA,GAAO,MAAQ,MAAWA,EAAI,OAEpD,EAEAxhC,EAAQ8vE,YAAc,SAAStuC,GAC7B,OAAIA,EAAI,GAAqC,GAA1BxhC,EAAQ4vE,SAAa,EAAJpuC,GACE,GAA/BxhC,EAAQ6vE,UAAc,EAAJruC,EAAQ,GAAU,EAC7C,EAEAxhC,EAAQ+vE,UAAY,SAASvuC,GAC3B,IAAIlqB,EAAG2C,EAAI,GACX,OAAW,IAANunB,EAAiB,EACX,IAANA,EAAiB,IAChBvnB,GAAKA,EAAI,GAAMA,EAAI,EAAG3C,EAAIjG,IAC3BiG,EAJe,GAIPg3C,KAAK0hB,KAAM,EAAI/1D,IAAQ,EAAIq0C,KAAKwgB,KAClC70D,EAAIq0C,KAAKC,IAAK,EAAG,IAAO/sB,GAAK,IAAQ8sB,KAAK0gB,KAAOxtC,EAAIlqB,IAAQ,EAAIg3C,KAAKwgB,IAL7D,IAMtB,EAEA9uE,EAAQiwE,WAAa,SAASzuC,GAC5B,IAAIlqB,EAAG2C,EAAI,GACX,OAAW,IAANunB,EAAiB,EACX,IAANA,EAAiB,IAChBvnB,GAAKA,EAAI,GAAMA,EAAI,EAAG3C,EAAIjG,IAC3BiG,EAJe,GAIPg3C,KAAK0hB,KAAM,EAAI/1D,IAAQ,EAAIq0C,KAAKwgB,IACpC70D,EAAIq0C,KAAKC,IAAK,GAAK,GAAK/sB,GAAK8sB,KAAK0gB,KAAOxtC,EAAIlqB,IAAQ,EAAIg3C,KAAKwgB,IALnD,IAKgE,EACtF,EAEA9uE,EAAQkwE,aAAe,SAAS1uC,GAC9B,IAAIlqB,EAAG2C,EAAI,GAAK5I,EAAI,GACpB,OAAW,IAANmwB,EAAiB,EACX,IAANA,EAAiB,IAChBvnB,GAAKA,EAAI,GAAMA,EAAI,EAAG3C,EAAIjG,IAC3BiG,EAAIjG,EAAIi9C,KAAK0hB,KAAM,EAAI/1D,IAAQ,EAAIq0C,KAAKwgB,KACtCttC,GAAK,GAAM,EAAqBvnB,EAAIq0C,KAAKC,IAAK,EAAG,IAAO/sB,GAAK,IAAQ8sB,KAAK0gB,KAAOxtC,EAAIlqB,IAAQ,EAAIg3C,KAAKwgB,IAAOz9D,IAArF,GACxB4I,EAAIq0C,KAAKC,IAAK,GAAI,IAAO/sB,GAAK,IAAQ8sB,KAAK0gB,KAAOxtC,EAAIlqB,IAAQ,EAAIg3C,KAAKwgB,IAAOz9D,GAAM,GAAM,EACnG,EAGArR,EAAQ,WAAaA,EAAQguE,OAC7BhuE,EAAQ,YAAcA,EAAQiuE,QAC9BjuE,EAAQ,eAAiBA,EAAQkuE,UACjCluE,EAAQ,WAAaA,EAAQmuE,OAC7BnuE,EAAQ,YAAcA,EAAQouE,QAC9BpuE,EAAQ,eAAiBA,EAAQquE,UACjCruE,EAAQ,YAAcA,EAAQsuE,QAC9BtuE,EAAQ,aAAeA,EAAQuuE,SAC/BvuE,EAAQ,gBAAkBA,EAAQwuE,WAClCxuE,EAAQ,YAAcA,EAAQyuE,QAC9BzuE,EAAQ,aAAeA,EAAQ0uE,SAC/B1uE,EAAQ,gBAAkBA,EAAQ2uE,WAClC3uE,EAAQ,WAAaA,EAAQ4uE,OAC7B5uE,EAAQ,YAAcA,EAAQ+uE,QAC9B/uE,EAAQ,eAAiBA,EAAQivE,UACjCjvE,EAAQ,WAAaA,EAAQkvE,OAC7BlvE,EAAQ,YAAcA,EAAQmvE,QAC9BnvE,EAAQ,eAAiBA,EAAQovE,UACjCpvE,EAAQ,WAAaA,EAAQqvE,OAC7BrvE,EAAQ,YAAcA,EAAQuvE,QAC9BvvE,EAAQ,eAAiBA,EAAQwvE,UACjCxvE,EAAQ,WAAaA,EAAQyvE,OAC7BzvE,EAAQ,YAAcA,EAAQ0vE,QAC9B1vE,EAAQ,eAAiBA,EAAQ2vE,UACjC3vE,EAAQ,aAAeA,EAAQ4vE,SAC/B5vE,EAAQ,cAAgBA,EAAQ6vE,UAChC7vE,EAAQ,iBAAmBA,EAAQ8vE,YACnC9vE,EAAQ,cAAgBA,EAAQ+vE,UAChC/vE,EAAQ,eAAiBA,EAAQiwE,WACjCjwE,EAAQ,kBAAoBA,EAAQkwE,gCCrMpC,SAASC,EAAQlvE,GACf,GAAIA,EAAK,OAGX,SAAeA,GACb,IAAK,IAAIY,KAAOsuE,EAAQruE,UACtBb,EAAIY,GAAOsuE,EAAQruE,UAAUD,GAE/B,OAAOZ,CACT,CARkBmvE,CAAMnvE,EACxB,CASAkvE,EAAQruE,UAAUoL,GAClBijE,EAAQruE,UAAUoD,iBAAmB,SAAS2hB,EAAO7V,GAInD,OAHA7N,KAAKktE,WAAaltE,KAAKktE,YAAc,CAAC,GACrCltE,KAAKktE,WAAW,IAAMxpD,GAAS1jB,KAAKktE,WAAW,IAAMxpD,IAAU,IAC7DxZ,KAAK2D,GACD7N,IACT,EAEAgtE,EAAQruE,UAAUwuE,KAAO,SAASzpD,EAAO7V,GACvC,SAAS9D,IACP/J,KAAKmK,IAAIuZ,EAAO3Z,GAChB8D,EAAG9N,MAAMC,KAAMJ,UACjB,CAIA,OAFAmK,EAAG8D,GAAKA,EACR7N,KAAK+J,GAAG2Z,EAAO3Z,GACR/J,IACT,EAEAgtE,EAAQruE,UAAUwL,IAClB6iE,EAAQruE,UAAUyuE,eAClBJ,EAAQruE,UAAU0uE,mBAClBL,EAAQruE,UAAU0D,oBAAsB,SAASqhB,EAAO7V,GAItD,GAHA7N,KAAKktE,WAAaltE,KAAKktE,YAAc,CAAC,EAGlC,GAAKttE,UAAUxE,OAEjB,OADA4E,KAAKktE,WAAa,CAAC,EACZltE,KAIT,IAUI+b,EAVAuxD,EAAYttE,KAAKktE,WAAW,IAAMxpD,GACtC,IAAK4pD,EAAW,OAAOttE,KAGvB,GAAI,GAAKJ,UAAUxE,OAEjB,cADO4E,KAAKktE,WAAW,IAAMxpD,GACtB1jB,KAKT,IAAK,IAAIjE,EAAI,EAAGA,EAAIuxE,EAAUlyE,OAAQW,IAEpC,IADAggB,EAAKuxD,EAAUvxE,MACJ8R,GAAMkO,EAAGlO,KAAOA,EAAI,CAC7By/D,EAAUljE,OAAOrO,EAAG,GACpB,KACF,CASF,OAJyB,IAArBuxE,EAAUlyE,eACL4E,KAAKktE,WAAW,IAAMxpD,GAGxB1jB,IACT,EAEAgtE,EAAQruE,UAAU2L,KAAO,SAASoZ,GAChC1jB,KAAKktE,WAAaltE,KAAKktE,YAAc,CAAC,EACtC,IAAIrtE,EAAO,GAAG3D,MAAM2C,KAAKe,UAAW,GAChC0tE,EAAYttE,KAAKktE,WAAW,IAAMxpD,GAEtC,GAAI4pD,EAEF,IAAK,IAAIvxE,EAAI,EAAGyiC,GADhB8uC,EAAYA,EAAUpxE,MAAM,IACId,OAAQW,EAAIyiC,IAAOziC,EACjDuxE,EAAUvxE,GAAGgE,MAAMC,KAAMH,GAI7B,OAAOG,IACT,EAEAgtE,EAAQruE,UAAU4uE,UAAY,SAAS7pD,GAErC,OADA1jB,KAAKktE,WAAaltE,KAAKktE,YAAc,CAAC,EAC/BltE,KAAKktE,WAAW,IAAMxpD,IAAU,EACzC,EAEAspD,EAAQruE,UAAU6uE,aAAe,SAAS9pD,GACxC,QAAU1jB,KAAKutE,UAAU7pD,GAAOtoB,MAClC,EAGEwB,EAAOC,QAAUmwE,yBChGnB,IAAIS,EAAS,EAAQ,OA2BrB7wE,EAAOC,QAAU,SAAU4zC,EAAM/1C,GAG/B,GAFAA,EAAUA,GAAW,CAAC,EACF,iBAAT+1C,IAAmBA,EAAOrvC,SAAS+D,cAAcsrC,IACxDA,EAAM,OAAOg9B,EAAO,EA5B1B,SAA+Bh9B,EAAMi9B,EAAkBC,GACrD,IAUI7rE,EAVAgd,EAAO1d,SAAS0d,KAChBD,EAAOzd,SAAS6nB,gBAEhB2kD,EAAWn9B,EAAKo9B,wBAChBC,EAAejvD,EAAKivD,aACpBC,EAAiB5iB,KAAKiB,IAAKttC,EAAK8+C,aAAc9+C,EAAKkvD,aACxBnvD,EAAKivD,aAAcjvD,EAAK++C,aAAc/+C,EAAKmvD,cAE1EN,EAAmBA,GAAoB,EAIrC5rE,EADgB,WAAd6rE,EACeC,EAAShuC,OAASkuC,EACZ,WAAdH,EACQC,EAAShuC,OAASkuC,EAAe,EAAIF,EAAS3qD,OAAS,EAEvD2qD,EAAS7qD,IAG5B,IAAIkrD,EAAoBF,EAAiBD,EACzC,OAAO3iB,KAAK+iB,IAAIpsE,EAAiB4rE,EAAmBptE,OAAOuzB,YAC3Co6C,EAClB,CAK6BE,CAAsB19B,EAAM/1C,EAAQmhC,OAAQnhC,EAAQ0zE,OAAQ1zE,EACzF,yBC/BA,IAAI2zE,EAAQ,EAAQ,OAChB7H,EAAM,EAAQ,OAyClB5pE,EAAOC,QAjCP,SAAkB5B,EAAGunC,EAAG9nC,GACtBA,EAAUA,GAAW,CAAC,EAGtB,IAAImf,EAPG,CAAEkJ,IAFDziB,OAAOuzB,aAAezyB,SAAS6nB,gBAAgBvkB,UAEtCi7B,KADTr/B,OAAOguE,aAAeltE,SAAS6nB,gBAAgBslD,YAWnDC,EAAQH,EAAMx0D,GACf40D,KAAK/zE,EAAQ+zE,MAAQ,YACrBzqD,GAAG,CAAEjB,IAAKyf,EAAG7C,KAAM1kC,IACnB8gC,SAASrhC,EAAQqhC,UAAY,KAahC,SAAS2yC,IACPlI,EAAIkI,GACJF,EAAMG,QACR,CAIA,OAjBAH,EAAMG,QAAO,SAAS3hE,GACpB1M,OAAOU,SAAkB,EAATgM,EAAE2yB,KAAkB,EAAR3yB,EAAE+V,IAChC,IAGAyrD,EAAMzkE,GAAG,OAAO,WACd2kE,EAAU,WAAW,CACvB,IAQAA,IAEOF,CACT,yBCxCA,IAAIC,EAAO,EAAQ,OAUnB,SAASJ,EAAMvwE,GACb,KAAMkC,gBAAgBquE,GAAQ,OAAO,IAAIA,EAAMvwE,GAC/CkC,KAAK4uE,MAAQ9wE,EACbkC,KAAKyuE,KAAK,UACVzuE,KAAK+7B,SAAS,IAChB,CAdc,EAAQ,MAgBtBixC,CAAQqB,EAAM1vE,WAEd0vE,EAAM1vE,UAAU6wC,MAAQ,WAKtB,OAJAxvC,KAAKpF,QAAyD,mBAA/C2D,OAAOI,UAAUoP,SAASlP,KAAKmB,KAAK4uE,OACnD5uE,KAAK6uE,MAlBP,SAAgB/wE,EAAKq2B,GACnB,IAAK,IAAIz1B,KAAOy1B,EACVA,EAAIv1B,eAAeF,KAAMZ,EAAIY,GAAOy1B,EAAIz1B,IAE9C,OAAOZ,CACT,CAaegxE,CAAO,CAAC,EAAG9uE,KAAK4uE,OAC7B5uE,KAAK+uE,OAAQ,EACb/uE,KAAKgvE,OAASz1D,KAAK6sD,MACZpmE,IACT,EAEAquE,EAAM1vE,UAAUqlB,GAAK,SAASlmB,GAG5B,OAFAkC,KAAKwvC,QACLxvC,KAAKivE,IAAMnxE,EACJkC,IACT,EAEAquE,EAAM1vE,UAAUo9B,SAAW,SAASmzC,GAElC,OADAlvE,KAAKmvE,UAAYD,EACVlvE,IACT,EAEAquE,EAAM1vE,UAAU8vE,KAAO,SAAS5gE,GAE9B,KADAA,EAAK,mBAAqBA,EAAKA,EAAK4gE,EAAK5gE,IAChC,MAAM,IAAIhT,UAAU,2BAE7B,OADAmF,KAAKovE,MAAQvhE,EACN7N,IACT,EAEAquE,EAAM1vE,UAAU0wE,KAAO,WAKrB,OAJArvE,KAAKsvE,SAAU,EACftvE,KAAK+uE,OAAQ,EACb/uE,KAAKsK,KAAK,QACVtK,KAAKsK,KAAK,OACHtK,IACT,EAEAquE,EAAM1vE,UAAU4wE,KAAO,WACrB,IAAIvvE,KAAK+uE,MAAT,CAEA,IAAIhzC,EAAW/7B,KAAKmvE,UAChB/I,EAAM7sD,KAAK6sD,MAIf,GAHYA,EAAMpmE,KAAKgvE,QACHjzC,EAOlB,OAJA/7B,KAAK4uE,MAAQ5uE,KAAKivE,IAClBjvE,KAAKwvE,QAAQxvE,KAAKivE,KAClBjvE,KAAK+uE,OAAQ,EACb/uE,KAAKsK,KAAK,OACHtK,KAGT,IAAIwY,EAAOxY,KAAK4uE,MACZ5qD,EAAKhkB,KAAKivE,IACVQ,EAAOzvE,KAAK6uE,MAGZxwC,GAAIxwB,EAFC7N,KAAKovE,QACLhJ,EAAMpmE,KAAKgvE,QAAUjzC,GAG9B,GAAI/7B,KAAKpF,QAAS,CAChB,IAAK,IAAImB,EAAI,EAAGA,EAAIyc,EAAKpd,SAAUW,EACjC0zE,EAAK1zE,GAAKyc,EAAKzc,IAAMioB,EAAGjoB,GAAKyc,EAAKzc,IAAMsiC,EAI1C,OADAr+B,KAAKwvE,QAAQC,GACNzvE,IACT,CAEA,IAAK,IAAI2iC,KAAKnqB,EACZi3D,EAAK9sC,GAAKnqB,EAAKmqB,IAAM3e,EAAG2e,GAAKnqB,EAAKmqB,IAAMtE,EAI1C,OADAr+B,KAAKwvE,QAAQC,GACNzvE,IApCe,CAqCxB,EAEAquE,EAAM1vE,UAAUgwE,OAAS,SAAS9gE,GAChC,OAAI,GAAKjO,UAAUxE,OAAe4E,KAAKuvE,QACvCvvE,KAAKwvE,QAAU3hE,EACR7N,KACT,EAEApD,EAAOC,QAAUwxE,yBCnGjB,IAAIxwE,EAAQ,EAAQ,OAEpB,SAAS6xE,EAAO3uE,GACZ,OAAOlD,EAAM4E,cAAc,MAAM1B,EAAMlD,EAAM4E,cAAc,OAAO,CAAC,EAAI,4RAC3E,CAEAitE,EAAM3+B,aAAe,CAAC,QAAU,eAEhCn0C,EAAOC,QAAU6yE,EAEjBA,EAAM1xE,QAAU0xE,yBCVhB,IAAI7xE,EAAQ,EAAQ,OAEpB,SAAS8xE,EAAM5uE,GACX,OAAOlD,EAAM4E,cAAc,MAAM1B,EAAMlD,EAAM4E,cAAc,OAAO,CAAC,EAAI,8jBAC3E,CAEAktE,EAAK5+B,aAAe,CAAC,QAAU,eAE/Bn0C,EAAOC,QAAU8yE,EAEjBA,EAAK3xE,QAAU2xE,yBCVf,IAAI30E,EAAM,CACT,uBAAwB,CACvB,MACA,OAED,0BAA2B,CAC1B,MACA,QAGF,SAAS40E,EAAoBr8D,GAC5B,IAAIw2D,EAAoB/8D,EAAEhS,EAAKuY,GAC9B,OAAO5J,QAAQC,UAAUF,MAAK,WAC7B,IAAIhG,EAAI,IAAI0L,MAAM,uBAAyBmE,EAAM,KAEjD,MADA7P,EAAEqlD,KAAO,mBACHrlD,CACP,IAGD,IAAImsE,EAAM70E,EAAIuY,GAAM7E,EAAKmhE,EAAI,GAC7B,OAAO9F,EAAoBrmE,EAAEmsE,EAAI,IAAInmE,MAAK,WACzC,OAAOqgE,EAAoBr7D,EAC5B,GACD,CACAkhE,EAAoBtgE,KAAO,WAAa,OAAO/Q,OAAO+Q,KAAKtU,EAAM,EACjE40E,EAAoBlhE,GAAK,MACzB9R,EAAOC,QAAU+yE,yBC1BjB,IAAI50E,EAAM,CACT,+BAAgC,CAC/B,KACA,MAED,wBAAyB,CACxB,MACA,OAED,yCAA0C,CACzC,MACA,OAED,mBAAoB,CACnB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,sBAAuB,CACtB,KACA,MAED,uBAAwB,CACvB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,yBAA0B,CACzB,KACA,MAED,uBAAwB,CACvB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,0BAA2B,CAC1B,KACA,MAED,8BAA+B,CAC9B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,uBAAwB,CACvB,KACA,MAED,2BAA4B,CAC3B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,gCAAiC,CAChC,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,mCAAoC,CACnC,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,4BAA6B,CAC5B,KACA,MAED,8BAA+B,CAC9B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,yBAA0B,CACzB,IACA,KAED,yBAA0B,CACzB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,0BAA2B,CAC1B,KACA,MAED,sBAAuB,CACtB,MACA,OAED,sBAAuB,CACtB,KACA,MAED,0BAA2B,CAC1B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,mCAAoC,CACnC,MACA,OAED,sCAAuC,CACtC,MACA,OAED,sCAAuC,CACtC,MACA,OAED,mCAAoC,CACnC,MACA,OAED,mCAAoC,CACnC,MACA,OAED,uCAAwC,CACvC,MACA,OAED,mCAAoC,CACnC,MACA,OAED,sCAAuC,CACtC,KACA,MAED,mCAAoC,CACnC,MACA,OAED,8CAA+C,CAC9C,MACA,OAED,yCAA0C,CACzC,MACA,OAED,sCAAuC,CACtC,MACA,OAED,qCAAsC,CACrC,MACA,OAED,gCAAiC,CAChC,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,oBAAqB,CACpB,KACA,MAED,0BAA2B,CAC1B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,uBAAwB,CACvB,KACA,MAED,2BAA4B,CAC3B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,yBAA0B,CACzB,KACA,MAED,yBAA0B,CACzB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,mBAAoB,CACnB,MACA,OAED,wBAAyB,CACxB,IACA,KAED,oBAAqB,CACpB,KACA,MAED,6BAA8B,CAC7B,KACA,MAED,uBAAwB,CACvB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,sBAAuB,CACtB,KACA,MAED,sBAAuB,CACtB,MACA,OAED,sBAAuB,CACtB,KACA,MAED,wBAAyB,CACxB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,kCAAmC,CAClC,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,oCAAqC,CACpC,MACA,OAED,qBAAsB,CACrB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,gCAAiC,CAChC,MACA,OAED,iCAAkC,CACjC,MACA,OAED,sCAAuC,CACtC,MACA,OAED,4BAA6B,CAC5B,IACA,KAED,4BAA6B,CAC5B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,gCAAiC,CAChC,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,iCAAkC,CACjC,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,mBAAoB,CACnB,MACA,OAED,0BAA2B,CAC1B,MACA,KAED,6BAA8B,CAC7B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,yBAA0B,CACzB,KACA,MAED,sBAAuB,CACtB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,kCAAmC,CAClC,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,oBAAqB,CACpB,KACA,MAED,wBAAyB,CACxB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,kCAAmC,CAClC,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,gCAAiC,CAChC,MACA,OAED,yBAA0B,CACzB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,iCAAkC,CACjC,MACA,OAED,wBAAyB,CACxB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,2BAA4B,CAC3B,IACA,KAED,sBAAuB,CACtB,MACA,OAED,oBAAqB,CACpB,KACA,MAED,0BAA2B,CAC1B,MACA,OAED,uBAAwB,CACvB,IACA,KAED,oBAAqB,CACpB,MACA,OAED,qBAAsB,CACrB,KACA,MAED,sBAAuB,CACtB,MACA,OAED,yBAA0B,CACzB,IACA,KAED,kBAAmB,CAClB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,uBAAwB,CACvB,KACA,MAED,6BAA8B,CAC7B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,oBAAqB,CACpB,KACA,MAED,2BAA4B,CAC3B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,sBAAuB,CACtB,KACA,MAED,qBAAsB,CACrB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,yBAA0B,CACzB,KACA,MAED,2BAA4B,CAC3B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,sBAAuB,CACtB,KACA,MAED,mBAAoB,CACnB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,sBAAuB,CACtB,KACA,MAED,uBAAwB,CACvB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,sBAAuB,CACtB,KACA,MAED,uBAAwB,CACvB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,2BAA4B,CAC3B,KACA,MAED,oCAAqC,CACpC,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,iCAAkC,CACjC,KACA,MAED,gCAAiC,CAChC,MACA,OAED,mBAAoB,CACnB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,iCAAkC,CACjC,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,2BAA4B,CAC3B,KACA,MAED,gCAAiC,CAChC,KACA,MAED,yBAA0B,CACzB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,4BAA6B,CAC5B,KACA,MAED,sBAAuB,CACtB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,yBAA0B,CACzB,KACA,MAED,qBAAsB,CACrB,MACA,OAED,yBAA0B,CACzB,KACA,MAED,4BAA6B,CAC5B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,qBAAsB,CACrB,KACA,MAED,yBAA0B,CACzB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,sBAAuB,CACtB,KACA,MAED,sBAAuB,CACtB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,uBAAwB,CACvB,KACA,MAED,sBAAuB,CACtB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,sBAAuB,CACtB,KACA,MAED,4BAA6B,CAC5B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,kCAAmC,CAClC,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,gCAAiC,CAChC,MACA,OAED,sBAAuB,CACtB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,oBAAqB,CACpB,KACA,MAED,wBAAyB,CACxB,MACA,OAED,sBAAuB,CACtB,KACA,MAED,uBAAwB,CACvB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,sBAAuB,CACtB,KACA,MAED,qBAAsB,CACrB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,wBAAyB,CACxB,KACA,MAED,qBAAsB,CACrB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,oCAAqC,CACpC,MACA,OAED,mCAAoC,CACnC,MACA,OAED,gCAAiC,CAChC,MACA,OAED,yBAA0B,CACzB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,oCAAqC,CACpC,MACA,OAED,sBAAuB,CACtB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,iBAAkB,CACjB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,uBAAwB,CACvB,KACA,MAED,6BAA8B,CAC7B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,kCAAmC,CAClC,MACA,OAED,kCAAmC,CAClC,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,iBAAkB,CACjB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,gCAAiC,CAChC,MACA,OAED,yBAA0B,CACzB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,sBAAuB,CACtB,KACA,MAED,4BAA6B,CAC5B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,kDAAmD,CAClD,MACA,OAED,yBAA0B,CACzB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,gCAAiC,CAChC,MACA,OAED,gCAAiC,CAChC,MACA,OAED,iCAAkC,CACjC,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,0BAA2B,CAC1B,KACA,MAED,uBAAwB,CACvB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,oCAAqC,CACpC,MACA,OAED,oCAAqC,CACpC,MACA,OAED,qCAAsC,CACrC,MACA,OAED,kCAAmC,CAClC,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,oCAAqC,CACpC,MACA,OAED,kCAAmC,CAClC,MACA,OAED,mCAAoC,CACnC,MACA,OAED,iCAAkC,CACjC,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,oCAAqC,CACpC,MACA,OAED,oCAAqC,CACpC,MACA,OAED,qCAAsC,CACrC,MACA,OAED,kCAAmC,CAClC,MACA,OAED,kCAAmC,CAClC,MACA,OAED,gCAAiC,CAChC,KACA,MAED,iCAAkC,CACjC,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,gCAAiC,CAChC,MACA,OAED,gCAAiC,CAChC,MACA,OAED,iCAAkC,CACjC,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,iCAAkC,CACjC,MACA,OAED,yBAA0B,CACzB,MACA,OAED,gCAAiC,CAChC,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,gCAAiC,CAChC,MACA,OAED,gCAAiC,CAChC,MACA,OAED,iCAAkC,CACjC,KACA,MAED,8BAA+B,CAC9B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,6BAA8B,CAC7B,KACA,MAED,2BAA4B,CAC3B,KACA,MAED,uBAAwB,CACvB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,qBAAsB,CACrB,KACA,MAED,0CAA2C,CAC1C,KACA,MAED,uBAAwB,CACvB,MACA,OAED,iBAAkB,CACjB,MACA,OAED,oBAAqB,CACpB,KACA,MAED,uBAAwB,CACvB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,gCAAiC,CAChC,MACA,OAED,oBAAqB,CACpB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,mBAAoB,CACnB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,oBAAqB,CACpB,MACA,MAED,uBAAwB,CACvB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,4BAA6B,CAC5B,IACA,KAED,oBAAqB,CACpB,MACA,OAED,iCAAkC,CACjC,MACA,OAED,kCAAmC,CAClC,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,uBAAwB,CACvB,KACA,MAED,oBAAqB,CACpB,MACA,OAED,0BAA2B,CAC1B,KACA,MAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,8BAA+B,CAC9B,KACA,MAED,kBAAmB,CAClB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,2BAA4B,CAC3B,KACA,MAED,2BAA4B,CAC3B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,qCAAsC,CACrC,MACA,OAED,sBAAuB,CACtB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,gCAAiC,CAChC,KACA,MAED,0BAA2B,CAC1B,KACA,MAED,yBAA0B,CACzB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,oBAAqB,CACpB,KACA,MAED,sBAAuB,CACtB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,4BAA6B,CAC5B,KACA,MAED,oBAAqB,CACpB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,8BAA+B,CAC9B,KACA,MAED,2BAA4B,CAC3B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,yBAA0B,CACzB,KACA,MAED,wBAAyB,CACxB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,yBAA0B,CACzB,KACA,MAED,qBAAsB,CACrB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,oBAAqB,CACpB,KACA,MAED,2BAA4B,CAC3B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,yBAA0B,CACzB,IACA,KAED,0BAA2B,CAC1B,MACA,OAED,gCAAiC,CAChC,MACA,OAED,wBAAyB,CACxB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,oBAAqB,CACpB,KACA,MAED,sBAAuB,CACtB,MACA,OAED,oBAAqB,CACpB,KACA,MAED,kBAAmB,CAClB,IACA,KAED,uBAAwB,CACvB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,mBAAoB,CACnB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,6BAA8B,CAC7B,KACA,MAED,2BAA4B,CAC3B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,mCAAoC,CACnC,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,2BAA4B,CAC3B,KACA,MAED,qBAAsB,CACrB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,yBAA0B,CACzB,KACA,MAED,yBAA0B,CACzB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,sBAAuB,CACtB,KACA,MAED,0BAA2B,CAC1B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,gCAAiC,CAChC,MACA,OAED,gCAAiC,CAChC,MACA,OAED,iCAAkC,CACjC,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,gCAAiC,CAChC,MACA,OAED,gCAAiC,CAChC,MACA,OAED,iCAAkC,CACjC,KACA,MAED,8BAA+B,CAC9B,MACA,OAED,uBAAwB,CACvB,KACA,MAED,qBAAsB,CACrB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,iCAAkC,CACjC,MACA,OAED,yBAA0B,CACzB,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,wBAAyB,CACxB,KACA,MAED,8BAA+B,CAC9B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,4BAA6B,CAC5B,KACA,MAED,4BAA6B,CAC5B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,4BAA6B,CAC5B,KACA,MAED,2BAA4B,CAC3B,KACA,MAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,oBAAqB,CACpB,OAED,2BAA4B,CAC3B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,0BAA2B,CAC1B,KACA,MAED,8BAA+B,CAC9B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,kCAAmC,CAClC,MACA,OAED,kCAAmC,CAClC,MACA,OAED,mCAAoC,CACnC,MACA,OAED,gCAAiC,CAChC,MACA,OAED,kCAAmC,CAClC,MACA,OAED,kCAAmC,CAClC,MACA,OAED,mCAAoC,CACnC,MACA,OAED,gCAAiC,CAChC,KACA,MAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,kCAAmC,CAClC,MACA,OAED,kCAAmC,CAClC,MACA,OAED,mCAAoC,CACnC,MACA,OAED,gCAAiC,CAChC,MACA,OAED,yBAA0B,CACzB,KACA,MAED,oBAAqB,CACpB,MACA,OAED,sBAAuB,CACtB,KACA,MAED,qBAAsB,CACrB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,mCAAoC,CACnC,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,qCAAsC,CACrC,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,gCAAiC,CAChC,KACA,MAED,iCAAkC,CACjC,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,kCAAmC,CAClC,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,+BAAgC,CAC/B,KACA,MAED,2BAA4B,CAC3B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,uBAAwB,CACvB,KACA,MAED,0BAA2B,CAC1B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,oBAAqB,CACpB,KACA,MAED,gCAAiC,CAChC,MACA,OAED,iCAAkC,CACjC,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,sCAAuC,CACtC,MACA,OAED,gCAAiC,CAChC,MACA,OAED,kCAAmC,CAClC,MACA,OAED,gCAAiC,CAChC,MACA,OAED,gCAAiC,CAChC,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,gCAAiC,CAChC,MACA,OAED,gCAAiC,CAChC,MACA,OAED,gCAAiC,CAChC,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,kCAAmC,CAClC,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,4BAA6B,CAC5B,KACA,MAED,4BAA6B,CAC5B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,kCAAmC,CAClC,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,kCAAmC,CAClC,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,gCAAiC,CAChC,MACA,OAED,gCAAiC,CAChC,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,0BAA2B,CAC1B,KACA,MAED,qBAAsB,CACrB,MACA,OAED,mBAAoB,CACnB,OAED,wBAAyB,CACxB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,gCAAiC,CAChC,MACA,OAED,gCAAiC,CAChC,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,mBAAoB,CACnB,KACA,MAED,oBAAqB,CACpB,KACA,MAED,qBAAsB,CACrB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,2BAA4B,CAC3B,KACA,MAED,mBAAoB,CACnB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,sBAAuB,CACtB,KACA,MAED,iCAAkC,CACjC,MACA,OAED,sBAAuB,CACtB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,kBAAmB,CAClB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,gCAAiC,CAChC,MACA,OAED,kCAAmC,CAClC,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,wBAAyB,CACxB,KACA,MAED,yBAA0B,CACzB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,wBAAyB,CACxB,KACA,MAED,oBAAqB,CACpB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,mBAAoB,CACnB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,0BAA2B,CAC1B,KACA,MAED,sBAAuB,CACtB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,mCAAoC,CACnC,MACA,OAED,iCAAkC,CACjC,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,iCAAkC,CACjC,MACA,OAED,iCAAkC,CACjC,MACA,OAED,mCAAoC,CACnC,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,gCAAiC,CAChC,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,gCAAiC,CAChC,MACA,OAED,uCAAwC,CACvC,MACA,OAED,mCAAoC,CACnC,IACA,KAED,4BAA6B,CAC5B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,wBAAyB,CACxB,KACA,MAED,kBAAmB,CAClB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,yBAA0B,CACzB,KACA,MAED,+BAAgC,CAC/B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,wBAAyB,CACxB,KACA,MAED,yBAA0B,CACzB,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,kCAAmC,CAClC,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,yBAA0B,CACzB,KACA,MAED,yBAA0B,CACzB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,gCAAiC,CAChC,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,wBAAyB,CACxB,KACA,MAED,yBAA0B,CACzB,KACA,MAED,wBAAyB,CACxB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,4BAA6B,CAC5B,KACA,MAED,mBAAoB,CACnB,KACA,MAED,qBAAsB,CACrB,KACA,MAED,0BAA2B,CAC1B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,gCAAiC,CAChC,MACA,OAED,yBAA0B,CACzB,MACA,OAED,mBAAoB,CACnB,KACA,MAED,wBAAyB,CACxB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,0BAA2B,CAC1B,KACA,MAED,mBAAoB,CACnB,MACA,OAED,0BAA2B,CAC1B,KACA,MAED,uBAAwB,CACvB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,uBAAwB,CACvB,KACA,MAED,mBAAoB,CACnB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,oBAAqB,CACpB,KACA,MAED,6BAA8B,CAC7B,KACA,MAED,kBAAmB,CAClB,MACA,OAED,8BAA+B,CAC9B,KACA,MAED,2BAA4B,CAC3B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,0BAA2B,CAC1B,KACA,MAED,4BAA6B,CAC5B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,qCAAsC,CACrC,MACA,OAED,wBAAyB,CACxB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,8BAA+B,CAC9B,KACA,MAED,uBAAwB,CACvB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,mBAAoB,CACnB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,oCAAqC,CACpC,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,yBAA0B,CACzB,KACA,MAED,0BAA2B,CAC1B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,6BAA8B,CAC7B,KACA,MAED,uBAAwB,CACvB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,kBAAmB,CAClB,KACA,MAED,yBAA0B,CACzB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,gCAAiC,CAChC,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,kCAAmC,CAClC,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,wBAAyB,CACxB,KACA,MAED,sBAAuB,CACtB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,iCAAkC,CACjC,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,gCAAiC,CAChC,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,yBAA0B,CACzB,KACA,MAED,iCAAkC,CACjC,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,kCAAmC,CAClC,MACA,OAED,yBAA0B,CACzB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,iBAAkB,CACjB,MACA,OAED,iBAAkB,CACjB,MACA,OAED,iBAAkB,CACjB,IACA,KAED,iBAAkB,CACjB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,oBAAqB,CACpB,KACA,MAED,yBAA0B,CACzB,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,iCAAkC,CACjC,MACA,OAED,iCAAkC,CACjC,MACA,OAED,mCAAoC,CACnC,MACA,OAED,oCAAqC,CACpC,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,iCAAkC,CACjC,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,iCAAkC,CACjC,MACA,OAED,yBAA0B,CACzB,MACA,OAED,yBAA0B,CACzB,KACA,MAED,8BAA+B,CAC9B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,kCAAmC,CAClC,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,yBAA0B,CACzB,KACA,MAED,wBAAyB,CACxB,KACA,MAED,yBAA0B,CACzB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,oCAAqC,CACpC,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,mCAAoC,CACnC,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,gCAAiC,CAChC,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,KACA,MAED,yBAA0B,CACzB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,4BAA6B,CAC5B,KACA,MAED,sBAAuB,CACtB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,oBAAqB,CACpB,KACA,MAED,sBAAuB,CACtB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,uBAAwB,CACvB,IACA,KAED,wBAAyB,CACxB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,oBAAqB,CACpB,KACA,MAED,4BAA6B,CAC5B,KACA,MAED,6BAA8B,CAC7B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,uBAAwB,CACvB,KACA,MAED,0BAA2B,CAC1B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,uBAAwB,CACvB,KACA,MAED,wBAAyB,CACxB,KACA,MAED,oBAAqB,CACpB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,mBAAoB,CACnB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,mBAAoB,CACnB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,uBAAwB,CACvB,KACA,MAED,kBAAmB,CAClB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,oBAAqB,CACpB,KACA,MAED,sBAAuB,CACtB,MACA,OAED,2BAA4B,CAC3B,KACA,MAED,kBAAmB,CAClB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,mBAAoB,CACnB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,uBAAwB,CACvB,KACA,MAED,0BAA2B,CAC1B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,oBAAqB,CACpB,KACA,MAED,0BAA2B,CAC1B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,mBAAoB,CACnB,KACA,MAED,oBAAqB,CACpB,KACA,MAED,8BAA+B,CAC9B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,yBAA0B,CACzB,KACA,MAED,2BAA4B,CAC3B,MACA,OAED,uBAAwB,CACvB,KACA,MAED,wBAAyB,CACxB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,2BAA4B,CAC3B,IACA,KAED,+BAAgC,CAC/B,MACA,OAED,oCAAqC,CACpC,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,0BAA2B,CAC1B,KACA,MAED,mBAAoB,CACnB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,wBAAyB,CACxB,KACA,MAED,uBAAwB,CACvB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,mBAAoB,CACnB,KACA,MAED,6BAA8B,CAC7B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,4BAA6B,CAC5B,KACA,MAED,wBAAyB,CACxB,KACA,MAED,mBAAoB,CACnB,MACA,OAED,kCAAmC,CAClC,MACA,OAED,kCAAmC,CAClC,MACA,OAED,mCAAoC,CACnC,MACA,OAED,gCAAiC,CAChC,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,uBAAwB,CACvB,KACA,MAED,yBAA0B,CACzB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,wBAAyB,CACxB,KACA,MAED,sBAAuB,CACtB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,mCAAoC,CACnC,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,8BAA+B,CAC9B,KACA,MAED,qCAAsC,CACrC,KACA,MAED,+BAAgC,CAC/B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,kCAAmC,CAClC,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,mBAAoB,CACnB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,kBAAmB,CAClB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,sBAAuB,CACtB,KACA,MAED,sBAAuB,CACtB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,mCAAoC,CACnC,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,iCAAkC,CACjC,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,kCAAmC,CAClC,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,mCAAoC,CACnC,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,iCAAkC,CACjC,MACA,OAED,qBAAsB,CACrB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,4BAA6B,CAC5B,KACA,MAED,oBAAqB,CACpB,MACA,OAED,yBAA0B,CACzB,KACA,MAED,sBAAuB,CACtB,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,iBAAkB,CACjB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,0BAA2B,CAC1B,KACA,MAED,wBAAyB,CACxB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,mCAAoC,CACnC,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,wBAAyB,CACxB,IACA,KAED,kBAAmB,CAClB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,gCAAiC,CAChC,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,sBAAuB,CACtB,KACA,MAED,yBAA0B,CACzB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,iCAAkC,CACjC,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,iBAAkB,CACjB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,+BAAgC,CAC/B,KACA,MAED,wBAAyB,CACxB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,mBAAoB,CACnB,MACA,OAED,mBAAoB,CACnB,KACA,MAED,0BAA2B,CAC1B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,mBAAoB,CACnB,MACA,OAED,sBAAuB,CACtB,KACA,MAED,0BAA2B,CAC1B,MACA,OAED,qBAAsB,CACrB,KACA,MAED,yBAA0B,CACzB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,0BAA2B,CAC1B,KACA,MAED,mBAAoB,CACnB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,sCAAuC,CACtC,MACA,OAED,kCAAmC,CAClC,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,wBAAyB,CACxB,KACA,MAED,sBAAuB,CACtB,KACA,MAED,2BAA4B,CAC3B,KACA,MAED,qBAAsB,CACrB,MACA,OAED,8BAA+B,CAC9B,KACA,MAED,8BAA+B,CAC9B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,sBAAuB,CACtB,KACA,MAED,oBAAqB,CACpB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,wBAAyB,CACxB,KACA,MAED,wBAAyB,CACxB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,kCAAmC,CAClC,KACA,MAED,iCAAkC,CACjC,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,0BAA2B,CAC1B,KACA,MAED,sBAAuB,CACtB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,4BAA6B,CAC5B,KACA,MAED,mBAAoB,CACnB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,iBAAkB,CACjB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,mBAAoB,CACnB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,mBAAoB,CACnB,KACA,MAED,sBAAuB,CACtB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,kCAAmC,CAClC,MACA,OAED,sBAAuB,CACtB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,4BAA6B,CAC5B,KACA,MAED,2BAA4B,CAC3B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,+BAAgC,CAC/B,KACA,MAED,wBAAyB,CACxB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,oBAAqB,CACpB,KACA,MAED,0BAA2B,CAC1B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,8BAA+B,CAC9B,IACA,KAED,4BAA6B,CAC5B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,qBAAsB,CACrB,KACA,MAED,oBAAqB,CACpB,MACA,OAED,0BAA2B,CAC1B,KACA,MAED,sBAAuB,CACtB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,uBAAwB,CACvB,KACA,MAED,mBAAoB,CACnB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,KACA,MAED,+BAAgC,CAC/B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,mBAAoB,CACnB,KACA,MAED,uBAAwB,CACvB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,qBAAsB,CACrB,KACA,MAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,oBAAqB,CACpB,KACA,MAED,0BAA2B,CAC1B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,kCAAmC,CAClC,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,gCAAiC,CAChC,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,mCAAoC,CACnC,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,iCAAkC,CACjC,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,oCAAqC,CACpC,MACA,OAED,gCAAiC,CAChC,MACA,OAED,kCAAmC,CAClC,MACA,OAED,8BAA+B,CAC9B,KACA,MAED,mCAAoC,CACnC,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,iCAAkC,CACjC,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,iCAAkC,CACjC,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,mBAAoB,CACnB,KACA,MAED,kBAAmB,CAClB,KACA,MAED,4BAA6B,CAC5B,MACA,OAED,qCAAsC,CACrC,MACA,OAED,iCAAkC,CACjC,MACA,OAED,oBAAqB,CACpB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,iCAAkC,CACjC,MACA,OAED,yBAA0B,CACzB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,oBAAqB,CACpB,KACA,MAED,oBAAqB,CACpB,MACA,OAED,gCAAiC,CAChC,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,4BAA6B,CAC5B,KACA,MAED,mBAAoB,CACnB,KACA,MAED,8BAA+B,CAC9B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,iCAAkC,CACjC,KACA,MAED,uBAAwB,CACvB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,0BAA2B,CAC1B,KACA,MAED,0BAA2B,CAC1B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,mBAAoB,CACnB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,0BAA2B,CAC1B,KACA,MAED,wBAAyB,CACxB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,uBAAwB,CACvB,KACA,MAED,wBAAyB,CACxB,KACA,MAED,uBAAwB,CACvB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,kBAAmB,CAClB,KACA,MAED,yBAA0B,CACzB,MACA,OAED,sBAAuB,CACtB,KACA,MAED,qBAAsB,CACrB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,uBAAwB,CACvB,GACA,IAED,yBAA0B,CACzB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,2BAA4B,CAC3B,KACA,MAED,qBAAsB,CACrB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,iCAAkC,CACjC,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,qCAAsC,CACrC,MACA,OAED,kCAAmC,CAClC,KACA,MAED,qCAAsC,CACrC,MACA,OAED,kCAAmC,CAClC,MACA,OAED,qCAAsC,CACrC,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,iCAAkC,CACjC,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,iCAAkC,CACjC,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,iCAAkC,CACjC,MACA,OAED,yBAA0B,CACzB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,oBAAqB,CACpB,KACA,MAED,wBAAyB,CACxB,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,iCAAkC,CACjC,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,8BAA+B,CAC9B,KACA,MAED,8BAA+B,CAC9B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,0BAA2B,CAC1B,KACA,MAED,wBAAyB,CACxB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,iBAAkB,CACjB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,gCAAiC,CAChC,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,kCAAmC,CAClC,MACA,OAED,yCAA0C,CACzC,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,gCAAiC,CAChC,MACA,OAED,+BAAgC,CAC/B,IACA,KAED,2BAA4B,CAC3B,KACA,MAED,yBAA0B,CACzB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,oCAAqC,CACpC,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,mBAAoB,CACnB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,iCAAkC,CACjC,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,sBAAuB,CACtB,KACA,MAED,oBAAqB,CACpB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,wBAAyB,CACxB,KACA,MAED,2BAA4B,CAC3B,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,iCAAkC,CACjC,MACA,OAED,iCAAkC,CACjC,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,0BAA2B,CAC1B,KACA,MAED,4BAA6B,CAC5B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,gCAAiC,CAChC,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,gCAAiC,CAChC,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,6BAA8B,CAC7B,KACA,MAED,6BAA8B,CAC7B,MACA,OAED,yBAA0B,CACzB,KACA,MAED,wBAAyB,CACxB,KACA,MAED,mBAAoB,CACnB,KACA,MAED,oBAAqB,CACpB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,0BAA2B,CAC1B,KACA,MAED,4BAA6B,CAC5B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,KACA,MAED,yBAA0B,CACzB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,sBAAuB,CACtB,KACA,MAED,qBAAsB,CACrB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,wBAAyB,CACxB,KACA,MAED,qBAAsB,CACrB,KACA,MAED,qBAAsB,CACrB,MACA,OAED,uBAAwB,CACvB,IACA,KAED,uBAAwB,CACvB,MACA,OAED,iBAAkB,CACjB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,yBAA0B,CACzB,IACA,KAED,qBAAsB,CACrB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,wBAAyB,CACxB,KACA,MAED,0BAA2B,CAC1B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,kBAAmB,CAClB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,sBAAuB,CACtB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,uBAAwB,CACvB,KACA,MAED,uBAAwB,CACvB,KACA,MAED,2BAA4B,CAC3B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,sBAAuB,CACtB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,yBAA0B,CACzB,MACA,OAED,mBAAoB,CACnB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,wBAAyB,CACxB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,+BAAgC,CAC/B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,oBAAqB,CACpB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,wBAAyB,CACxB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,uBAAwB,CACvB,KACA,MAED,2BAA4B,CAC3B,KACA,MAED,qBAAsB,CACrB,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,yBAA0B,CACzB,IACA,KAED,sBAAuB,CACtB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,yBAA0B,CACzB,KACA,MAED,mBAAoB,CACnB,KACA,MAED,2BAA4B,CAC3B,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,mBAAoB,CACnB,MACA,OAED,yBAA0B,CACzB,KACA,MAED,2BAA4B,CAC3B,MACA,OAED,gCAAiC,CAChC,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,qBAAsB,CACrB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,qBAAsB,CACrB,MACA,OAED,oBAAqB,CACpB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,uBAAwB,CACvB,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,gCAAiC,CAChC,MACA,OAED,6BAA8B,CAC7B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,iCAAkC,CACjC,MACA,OAED,4BAA6B,CAC5B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,yBAA0B,CACzB,MACA,OAED,gCAAiC,CAChC,MACA,OAED,2BAA4B,CAC3B,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,gCAAiC,CAChC,KACA,MAED,wBAAyB,CACxB,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,0BAA2B,CAC1B,MACA,OAED,8BAA+B,CAC9B,MACA,OAED,uBAAwB,CACvB,MACA,OAED,6BAA8B,CAC7B,KACA,MAED,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","sources":["webpack://kpoint-frontend/./node_modules/camelcase/index.js","webpack://kpoint-frontend/./node_modules/gatsby-page-utils/dist/apply-trailing-slash-option.js","webpack://kpoint-frontend/./node_modules/gatsby-react-router-scroll/index.js","webpack://kpoint-frontend/./node_modules/gatsby-react-router-scroll/scroll-handler.js","webpack://kpoint-frontend/./node_modules/gatsby-react-router-scroll/session-storage.js","webpack://kpoint-frontend/./node_modules/gatsby-react-router-scroll/use-scroll-restoration.js","webpack://kpoint-frontend/./node_modules/gatsby/dist/internal-plugins/partytown/gatsby-browser.js","webpack://kpoint-frontend/./node_modules/gatsby/dist/internal-plugins/partytown/utils/get-forwards.js","webpack://kpoint-frontend/./node_modules/gatsby/dist/internal-plugins/partytown/utils/inject-partytown-snippet.js","webpack://kpoint-frontend/./.cache/_this_is_virtual_fs_path_/$virtual/async-requires.js","webpack://kpoint-frontend/./.cache/api-runner-browser-plugins.js","webpack://kpoint-frontend/./.cache/api-runner-browser.js","webpack://kpoint-frontend/./.cache/create-content-digest-browser-shim.js","webpack://kpoint-frontend/./.cache/emitter.js","webpack://kpoint-frontend/./node_modules/mitt/dist/mitt.es.js","webpack://kpoint-frontend/./.cache/normalize-page-path.js","webpack://kpoint-frontend/./.cache/find-path.js","webpack://kpoint-frontend/./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","webpack://kpoint-frontend/./node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js","webpack://kpoint-frontend/./node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js","webpack://kpoint-frontend/./node_modules/@babel/runtime/helpers/esm/isNativeFunction.js","webpack://kpoint-frontend/./node_modules/@babel/runtime/helpers/esm/construct.js","webpack://kpoint-frontend/./.cache/slice/server-slice-renderer.js","webpack://kpoint-frontend/./.cache/slice/server-slice.js","webpack://kpoint-frontend/./.cache/slice/inline-slice.js","webpack://kpoint-frontend/./.cache/slice.js","webpack://kpoint-frontend/./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","webpack://kpoint-frontend/./.cache/gatsby-browser-entry.js","webpack://kpoint-frontend/./.cache/prefetch.js","webpack://kpoint-frontend/./.cache/loader.js","webpack://kpoint-frontend/./.cache/head/components/fire-callback-in-effect.js","webpack://kpoint-frontend/./.cache/head/constants.js","webpack://kpoint-frontend/./.cache/head/utils.js","webpack://kpoint-frontend/./.cache/head/head-export-handler-for-browser.js","webpack://kpoint-frontend/./.cache/page-renderer.js","webpack://kpoint-frontend/./.cache/route-announcer-props.js","webpack://kpoint-frontend/./.cache/navigation.js","webpack://kpoint-frontend/./node_modules/shallow-compare/es/index.js","webpack://kpoint-frontend/./.cache/ensure-resources.js","webpack://kpoint-frontend/./.cache/production-app.js","webpack://kpoint-frontend/./.cache/public-page-renderer-prod.js","webpack://kpoint-frontend/./.cache/public-page-renderer.js","webpack://kpoint-frontend/./.cache/react-dom-utils.js","webpack://kpoint-frontend/./.cache/redirect-utils.js","webpack://kpoint-frontend/./.cache/register-service-worker.js","webpack://kpoint-frontend/./.cache/slice/context.js","webpack://kpoint-frontend/./.cache/static-query.js","webpack://kpoint-frontend/./.cache/context-utils.js","webpack://kpoint-frontend/./.cache/strip-prefix.js","webpack://kpoint-frontend/./src/utils/components/header/css/Header.module.css","webpack://kpoint-frontend/./src/utils/components/header/MobileNav.jsx","webpack://kpoint-frontend/./src/components/productsPopup.js","webpack://kpoint-frontend/./src/utils/components/header/Header.jsx","webpack://kpoint-frontend/./src/utils/components/footer/css/newFooter.module.css","webpack://kpoint-frontend/./src/utils/components/footer/Footer.jsx","webpack://kpoint-frontend/./src/context/KpointPlayerProvider.jsx","webpack://kpoint-frontend/./src/utils/components/layout/index.jsx","webpack://kpoint-frontend/./gatsby-browser.js","webpack://kpoint-frontend/./node_modules/gatsby-plugin-anchor-links/components/AnchorLink.js","webpack://kpoint-frontend/./node_modules/gatsby-plugin-anchor-links/errors.js","webpack://kpoint-frontend/./node_modules/gatsby-plugin-anchor-links/gatsby-browser.js","webpack://kpoint-frontend/./node_modules/gatsby-plugin-anchor-links/index.js","webpack://kpoint-frontend/./node_modules/gatsby-plugin-anchor-links/utils.js","webpack://kpoint-frontend/../src/image-utils.ts","webpack://kpoint-frontend/../src/components/hooks.ts","webpack://kpoint-frontend/../src/components/layout-wrapper.tsx","webpack://kpoint-frontend/../src/components/picture.tsx","webpack://kpoint-frontend/../src/components/placeholder.tsx","webpack://kpoint-frontend/../src/components/main-image.tsx","webpack://kpoint-frontend/../src/components/gatsby-image.server.tsx","webpack://kpoint-frontend/../src/components/gatsby-image.browser.tsx","webpack://kpoint-frontend/../src/components/static-image.server.tsx","webpack://kpoint-frontend/../src/components/static-image.tsx","webpack://kpoint-frontend/./node_modules/gatsby-plugin-manifest/gatsby-browser.js","webpack://kpoint-frontend/./node_modules/gatsby-plugin-manifest/get-manifest-pathname.js","webpack://kpoint-frontend/./src/components/FetchImage.jsx","webpack://kpoint-frontend/./src/components/Images.jsx","webpack://kpoint-frontend/./src/components/buttons/Button.module.css","webpack://kpoint-frontend/./src/components/buttons/Buttons.jsx","webpack://kpoint-frontend/./src/components/cards/cards.module.css","webpack://kpoint-frontend/./src/components/cards/Cards.jsx","webpack://kpoint-frontend/./src/components/forms/css/ContactForm.module.css","webpack://kpoint-frontend/./node_modules/react-google-recaptcha/lib/esm/recaptcha.js","webpack://kpoint-frontend/./node_modules/react-async-script/lib/esm/async-script-loader.js","webpack://kpoint-frontend/./node_modules/react-google-recaptcha/lib/esm/recaptcha-wrapper.js","webpack://kpoint-frontend/./node_modules/react-google-recaptcha/lib/esm/index.js","webpack://kpoint-frontend/./src/components/forms/ContactForm.jsx","webpack://kpoint-frontend/./src/components/forms/ConfirmationPopUp.jsx","webpack://kpoint-frontend/./src/components/forms/css/ConfirmationPopUp.module.css","webpack://kpoint-frontend/./src/components/forms/useConfirmationPopUp.jsx","webpack://kpoint-frontend/./src/components/layoutSections/backgroundWave.module.css","webpack://kpoint-frontend/./src/components/layoutSections/BackgroundWave.jsx","webpack://kpoint-frontend/./src/components/layoutSections/LayoutSection.jsx","webpack://kpoint-frontend/./src/components/layoutSections/TitleDescription.jsx","webpack://kpoint-frontend/./src/components/popup.js","webpack://kpoint-frontend/./src/context/KpointPlayerContext.jsx","webpack://kpoint-frontend/./src/context/ObserverContext.jsx","webpack://kpoint-frontend/./src/lib/kpoint/KpointPlayer.module.css","webpack://kpoint-frontend/./src/lib/kpoint/EmailGate.jsx","webpack://kpoint-frontend/./src/lib/kpoint/EmailGate.module.css","webpack://kpoint-frontend/./src/lib/kpoint/KpointPlayer.jsx","webpack://kpoint-frontend/./node_modules/htmlparser2/node_modules/entities/lib/esm/decode_codepoint.js","webpack://kpoint-frontend/./node_modules/htmlparser2/node_modules/entities/lib/esm/generated/decode-data-html.js","webpack://kpoint-frontend/./node_modules/htmlparser2/node_modules/entities/lib/esm/generated/decode-data-xml.js","webpack://kpoint-frontend/./node_modules/htmlparser2/node_modules/entities/lib/esm/decode.js","webpack://kpoint-frontend/./node_modules/htmlparser2/lib/esm/Tokenizer.js","webpack://kpoint-frontend/./node_modules/htmlparser2/lib/esm/Parser.js","webpack://kpoint-frontend/./node_modules/domelementtype/lib/esm/index.js","webpack://kpoint-frontend/./node_modules/htmlparser2/node_modules/domhandler/lib/esm/node.js","webpack://kpoint-frontend/./node_modules/htmlparser2/node_modules/domhandler/lib/esm/index.js","webpack://kpoint-frontend/./node_modules/htmlparser2/node_modules/entities/lib/esm/generated/encode-html.js","webpack://kpoint-frontend/./node_modules/htmlparser2/node_modules/entities/lib/esm/escape.js","webpack://kpoint-frontend/./node_modules/htmlparser2/node_modules/entities/lib/esm/index.js","webpack://kpoint-frontend/./node_modules/htmlparser2/node_modules/dom-serializer/lib/esm/foreignNames.js","webpack://kpoint-frontend/./node_modules/htmlparser2/node_modules/dom-serializer/lib/esm/index.js","webpack://kpoint-frontend/./node_modules/htmlparser2/node_modules/domutils/lib/esm/querying.js","webpack://kpoint-frontend/./node_modules/htmlparser2/node_modules/domutils/lib/esm/helpers.js","webpack://kpoint-frontend/./node_modules/htmlparser2/lib/esm/index.js","webpack://kpoint-frontend/./src/lib/kpoint/KpointPlayerFromEmbedCode.jsx","webpack://kpoint-frontend/./src/utils/GA4Tracking.js","webpack://kpoint-frontend/./src/utils/helpers/helper.js","webpack://kpoint-frontend/./node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js","webpack://kpoint-frontend/./node_modules/invariant/browser.js","webpack://kpoint-frontend/./src/components/layoutSections/sectionLayout.module.css","webpack://kpoint-frontend/./node_modules/performance-now/lib/performance-now.js","webpack://kpoint-frontend/./node_modules/raf/index.js","webpack://kpoint-frontend/./node_modules/react-image/umd/index.js","webpack://kpoint-frontend/./node_modules/react-is/cjs/react-is.production.min.js","webpack://kpoint-frontend/./node_modules/react-is/index.js","webpack://kpoint-frontend/./node_modules/react-server-dom-webpack/cjs/react-server-dom-webpack.production.min.js","webpack://kpoint-frontend/./node_modules/react-server-dom-webpack/index.js","webpack://kpoint-frontend/./node_modules/scroll-to-element/ease.js","webpack://kpoint-frontend/./node_modules/scroll-to-element/emitter.js","webpack://kpoint-frontend/./node_modules/scroll-to-element/index.js","webpack://kpoint-frontend/./node_modules/scroll-to-element/scroll-to.js","webpack://kpoint-frontend/./node_modules/scroll-to-element/tween.js","webpack://kpoint-frontend/./src/fontAwasome/svgs/light/check.svg","webpack://kpoint-frontend/./src/fontAwasome/svgs/light/copy.svg","webpack://kpoint-frontend/./src/fontAwasome/gifs/ lazy ^\\.\\/.*\\/.*\\.gif$ referencedExports: default namespace object","webpack://kpoint-frontend/./src/fontAwasome/svgs/ lazy ^\\.\\/.*\\/.*\\.svg$ namespace object","webpack://kpoint-frontend/./node_modules/@babel/runtime/helpers/assertThisInitialized.js","webpack://kpoint-frontend/./node_modules/@babel/runtime/helpers/defineProperty.js","webpack://kpoint-frontend/./node_modules/@babel/runtime/helpers/inheritsLoose.js","webpack://kpoint-frontend/./node_modules/@babel/runtime/helpers/interopRequireDefault.js","webpack://kpoint-frontend/./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js","webpack://kpoint-frontend/./node_modules/@babel/runtime/helpers/setPrototypeOf.js","webpack://kpoint-frontend/./node_modules/@babel/runtime/helpers/toPrimitive.js","webpack://kpoint-frontend/./node_modules/@babel/runtime/helpers/toPropertyKey.js","webpack://kpoint-frontend/./node_modules/@babel/runtime/helpers/typeof.js","webpack://kpoint-frontend/./node_modules/@builder.io/partytown/integration/index.cjs","webpack://kpoint-frontend/./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","webpack://kpoint-frontend/./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack://kpoint-frontend/./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack://kpoint-frontend/./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack://kpoint-frontend/./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack://kpoint-frontend/./node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack://kpoint-frontend/./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack://kpoint-frontend/./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack://kpoint-frontend/./node_modules/@gatsbyjs/reach-router/dist/index.modern.mjs","webpack://kpoint-frontend/./node_modules/gatsby-link/dist/index.modern.mjs","webpack://kpoint-frontend/./node_modules/gatsby-script/dist/index.modern.mjs"],"sourcesContent":["'use strict';\n\nconst UPPERCASE = /[\\p{Lu}]/u;\nconst LOWERCASE = /[\\p{Ll}]/u;\nconst LEADING_CAPITAL = /^[\\p{Lu}](?![\\p{Lu}])/gu;\nconst IDENTIFIER = /([\\p{Alpha}\\p{N}_]|$)/u;\nconst SEPARATORS = /[_.\\- ]+/;\n\nconst LEADING_SEPARATORS = new RegExp('^' + SEPARATORS.source);\nconst SEPARATORS_AND_IDENTIFIER = new RegExp(SEPARATORS.source + IDENTIFIER.source, 'gu');\nconst NUMBERS_AND_IDENTIFIER = new RegExp('\\\\d+' + IDENTIFIER.source, 'gu');\n\nconst preserveCamelCase = (string, toLowerCase, toUpperCase) => {\n\tlet isLastCharLower = false;\n\tlet isLastCharUpper = false;\n\tlet isLastLastCharUpper = false;\n\n\tfor (let i = 0; i < string.length; i++) {\n\t\tconst character = string[i];\n\n\t\tif (isLastCharLower && UPPERCASE.test(character)) {\n\t\t\tstring = string.slice(0, i) + '-' + string.slice(i);\n\t\t\tisLastCharLower = false;\n\t\t\tisLastLastCharUpper = isLastCharUpper;\n\t\t\tisLastCharUpper = true;\n\t\t\ti++;\n\t\t} else if (isLastCharUpper && isLastLastCharUpper && LOWERCASE.test(character)) {\n\t\t\tstring = string.slice(0, i - 1) + '-' + string.slice(i - 1);\n\t\t\tisLastLastCharUpper = isLastCharUpper;\n\t\t\tisLastCharUpper = false;\n\t\t\tisLastCharLower = true;\n\t\t} else {\n\t\t\tisLastCharLower = toLowerCase(character) === character && toUpperCase(character) !== character;\n\t\t\tisLastLastCharUpper = isLastCharUpper;\n\t\t\tisLastCharUpper = toUpperCase(character) === character && toLowerCase(character) !== character;\n\t\t}\n\t}\n\n\treturn string;\n};\n\nconst preserveConsecutiveUppercase = (input, toLowerCase) => {\n\tLEADING_CAPITAL.lastIndex = 0;\n\n\treturn input.replace(LEADING_CAPITAL, m1 => toLowerCase(m1));\n};\n\nconst postProcess = (input, toUpperCase) => {\n\tSEPARATORS_AND_IDENTIFIER.lastIndex = 0;\n\tNUMBERS_AND_IDENTIFIER.lastIndex = 0;\n\n\treturn input.replace(SEPARATORS_AND_IDENTIFIER, (_, identifier) => toUpperCase(identifier))\n\t\t.replace(NUMBERS_AND_IDENTIFIER, m => toUpperCase(m));\n};\n\nconst camelCase = (input, options) => {\n\tif (!(typeof input === 'string' || Array.isArray(input))) {\n\t\tthrow new TypeError('Expected the input to be `string | string[]`');\n\t}\n\n\toptions = {\n\t\tpascalCase: false,\n\t\tpreserveConsecutiveUppercase: false,\n\t\t...options\n\t};\n\n\tif (Array.isArray(input)) {\n\t\tinput = input.map(x => x.trim())\n\t\t\t.filter(x => x.length)\n\t\t\t.join('-');\n\t} else {\n\t\tinput = input.trim();\n\t}\n\n\tif (input.length === 0) {\n\t\treturn '';\n\t}\n\n\tconst toLowerCase = options.locale === false ?\n\t\tstring => string.toLowerCase() :\n\t\tstring => string.toLocaleLowerCase(options.locale);\n\tconst toUpperCase = options.locale === false ?\n\t\tstring => string.toUpperCase() :\n\t\tstring => string.toLocaleUpperCase(options.locale);\n\n\tif (input.length === 1) {\n\t\treturn options.pascalCase ? toUpperCase(input) : toLowerCase(input);\n\t}\n\n\tconst hasUpperCase = input !== toLowerCase(input);\n\n\tif (hasUpperCase) {\n\t\tinput = preserveCamelCase(input, toLowerCase, toUpperCase);\n\t}\n\n\tinput = input.replace(LEADING_SEPARATORS, '');\n\n\tif (options.preserveConsecutiveUppercase) {\n\t\tinput = preserveConsecutiveUppercase(input, toLowerCase);\n\t} else {\n\t\tinput = toLowerCase(input);\n\t}\n\n\tif (options.pascalCase) {\n\t\tinput = toUpperCase(input.charAt(0)) + input.slice(1);\n\t}\n\n\treturn postProcess(input, toUpperCase);\n};\n\nmodule.exports = camelCase;\n// TODO: Remove this for the next major release\nmodule.exports.default = camelCase;\n","\"use strict\";\n\nexports.__esModule = true;\nexports.applyTrailingSlashOption = void 0;\nconst endsWithSuffixes = (suffixes, input) => {\n for (const suffix of suffixes) {\n if (input.endsWith(suffix)) return true;\n }\n return false;\n};\nconst suffixes = [`.html`, `.json`, `.js`, `.map`, `.txt`, `.xml`, `.pdf`];\nconst applyTrailingSlashOption = (input, option = `always`) => {\n if (input === `/`) return input;\n const hasTrailingSlash = input.endsWith(`/`);\n if (endsWithSuffixes(suffixes, input)) {\n return input;\n }\n if (option === `always`) {\n return hasTrailingSlash ? input : `${input}/`;\n }\n if (option === `never`) {\n return hasTrailingSlash ? input.slice(0, -1) : input;\n }\n return input;\n};\nexports.applyTrailingSlashOption = applyTrailingSlashOption;","\"use strict\";\n\nexports.__esModule = true;\nexports.useScrollRestoration = exports.ScrollContext = void 0;\nvar _scrollHandler = require(\"./scroll-handler\");\nexports.ScrollContext = _scrollHandler.ScrollHandler;\nvar _useScrollRestoration = require(\"./use-scroll-restoration\");\nexports.useScrollRestoration = _useScrollRestoration.useScrollRestoration;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nexports.__esModule = true;\nexports.ScrollHandler = exports.ScrollContext = void 0;\nvar _assertThisInitialized2 = _interopRequireDefault(require(\"@babel/runtime/helpers/assertThisInitialized\"));\nvar _inheritsLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inheritsLoose\"));\nvar React = _interopRequireWildcard(require(\"react\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _sessionStorage = require(\"./session-storage\");\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\nvar ScrollContext = /*#__PURE__*/React.createContext(new _sessionStorage.SessionStorage());\nexports.ScrollContext = ScrollContext;\nScrollContext.displayName = \"GatsbyScrollContext\";\nvar ScrollHandler = /*#__PURE__*/function (_React$Component) {\n (0, _inheritsLoose2.default)(ScrollHandler, _React$Component);\n function ScrollHandler() {\n var _this;\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;\n _this._stateStorage = new _sessionStorage.SessionStorage();\n _this._isTicking = false;\n _this._latestKnownScrollY = 0;\n _this.scrollListener = function () {\n _this._latestKnownScrollY = window.scrollY;\n if (!_this._isTicking) {\n _this._isTicking = true;\n requestAnimationFrame(_this._saveScroll.bind((0, _assertThisInitialized2.default)(_this)));\n }\n };\n _this.windowScroll = function (position, prevProps) {\n if (_this.shouldUpdateScroll(prevProps, _this.props)) {\n window.scrollTo(0, position);\n }\n };\n _this.scrollToHash = function (hash, prevProps) {\n var node = document.getElementById(hash.substring(1));\n if (node && _this.shouldUpdateScroll(prevProps, _this.props)) {\n node.scrollIntoView();\n }\n };\n _this.shouldUpdateScroll = function (prevRouterProps, routerProps) {\n var shouldUpdateScroll = _this.props.shouldUpdateScroll;\n if (!shouldUpdateScroll) {\n return true;\n }\n\n // Hack to allow accessing this._stateStorage.\n return shouldUpdateScroll.call((0, _assertThisInitialized2.default)(_this), prevRouterProps, routerProps);\n };\n return _this;\n }\n var _proto = ScrollHandler.prototype;\n _proto._saveScroll = function _saveScroll() {\n var key = this.props.location.key || null;\n if (key) {\n this._stateStorage.save(this.props.location, key, this._latestKnownScrollY);\n }\n this._isTicking = false;\n };\n _proto.componentDidMount = function componentDidMount() {\n window.addEventListener(\"scroll\", this.scrollListener);\n var scrollPosition;\n var _this$props$location = this.props.location,\n key = _this$props$location.key,\n hash = _this$props$location.hash;\n if (key) {\n scrollPosition = this._stateStorage.read(this.props.location, key);\n }\n\n /** If a hash is present in the browser url as the component mounts (i.e. the user is navigating\n * from an external website) then scroll to the hash instead of any previously stored scroll\n * position. */\n if (hash) {\n this.scrollToHash(decodeURI(hash), undefined);\n } else if (scrollPosition) {\n this.windowScroll(scrollPosition, undefined);\n }\n };\n _proto.componentWillUnmount = function componentWillUnmount() {\n window.removeEventListener(\"scroll\", this.scrollListener);\n };\n _proto.componentDidUpdate = function componentDidUpdate(prevProps) {\n var _this$props$location2 = this.props.location,\n hash = _this$props$location2.hash,\n key = _this$props$location2.key;\n var scrollPosition;\n if (key) {\n scrollPosition = this._stateStorage.read(this.props.location, key);\n }\n\n /** There are two pieces of state: the browser url and\n * history state which keeps track of scroll position\n * Native behaviour prescribes that we ought to restore scroll position\n * when a user navigates back in their browser (this is the `POP` action)\n * Currently, reach router has a bug that prevents this at https://github.com/reach/router/issues/228\n * So we _always_ stick to the url as a source of truth — if the url\n * contains a hash, we scroll to it\n */\n\n if (hash) {\n this.scrollToHash(decodeURI(hash), prevProps);\n } else {\n this.windowScroll(scrollPosition, prevProps);\n }\n };\n _proto.render = function render() {\n return /*#__PURE__*/React.createElement(ScrollContext.Provider, {\n value: this._stateStorage\n }, this.props.children);\n };\n return ScrollHandler;\n}(React.Component);\nexports.ScrollHandler = ScrollHandler;\nScrollHandler.propTypes = {\n shouldUpdateScroll: _propTypes.default.func,\n children: _propTypes.default.element.isRequired,\n location: _propTypes.default.object.isRequired\n};","\"use strict\";\n\nexports.__esModule = true;\nexports.SessionStorage = void 0;\nvar STATE_KEY_PREFIX = \"@@scroll|\";\nvar GATSBY_ROUTER_SCROLL_STATE = \"___GATSBY_REACT_ROUTER_SCROLL\";\nvar SessionStorage = /*#__PURE__*/function () {\n function SessionStorage() {}\n var _proto = SessionStorage.prototype;\n _proto.read = function read(location, key) {\n var stateKey = this.getStateKey(location, key);\n try {\n var value = window.sessionStorage.getItem(stateKey);\n return value ? JSON.parse(value) : 0;\n } catch (e) {\n if (process.env.NODE_ENV !== \"production\") {\n console.warn(\"[gatsby-react-router-scroll] Unable to access sessionStorage; sessionStorage is not available.\");\n }\n if (window && window[GATSBY_ROUTER_SCROLL_STATE] && window[GATSBY_ROUTER_SCROLL_STATE][stateKey]) {\n return window[GATSBY_ROUTER_SCROLL_STATE][stateKey];\n }\n return 0;\n }\n };\n _proto.save = function save(location, key, value) {\n var stateKey = this.getStateKey(location, key);\n var storedValue = JSON.stringify(value);\n try {\n window.sessionStorage.setItem(stateKey, storedValue);\n } catch (e) {\n if (window && window[GATSBY_ROUTER_SCROLL_STATE]) {\n window[GATSBY_ROUTER_SCROLL_STATE][stateKey] = JSON.parse(storedValue);\n } else {\n window[GATSBY_ROUTER_SCROLL_STATE] = {};\n window[GATSBY_ROUTER_SCROLL_STATE][stateKey] = JSON.parse(storedValue);\n }\n if (process.env.NODE_ENV !== \"production\") {\n console.warn(\"[gatsby-react-router-scroll] Unable to save state in sessionStorage; sessionStorage is not available.\");\n }\n }\n };\n _proto.getStateKey = function getStateKey(location, key) {\n var stateKeyBase = \"\" + STATE_KEY_PREFIX + location.pathname;\n return key === null || typeof key === \"undefined\" ? stateKeyBase : stateKeyBase + \"|\" + key;\n };\n return SessionStorage;\n}();\nexports.SessionStorage = SessionStorage;","\"use strict\";\n\nexports.__esModule = true;\nexports.useScrollRestoration = useScrollRestoration;\nvar _scrollHandler = require(\"./scroll-handler\");\nvar _react = require(\"react\");\nvar _reachRouter = require(\"@gatsbyjs/reach-router\");\nfunction useScrollRestoration(identifier) {\n var location = (0, _reachRouter.useLocation)();\n var state = (0, _react.useContext)(_scrollHandler.ScrollContext);\n var ref = (0, _react.useRef)(null);\n (0, _react.useLayoutEffect)(function () {\n if (ref.current) {\n var position = state.read(location, identifier);\n ref.current.scrollTo(0, position || 0);\n }\n }, [location.key]);\n return {\n ref: ref,\n onScroll: function onScroll() {\n if (ref.current) {\n state.save(location, identifier, ref.current.scrollTop);\n }\n }\n };\n}","\"use strict\";\n\nexports.__esModule = true;\nexports.onInitialClientRender = void 0;\nvar _gatsbyScript = require(\"gatsby-script\");\nvar _injectPartytownSnippet = require(\"./utils/inject-partytown-snippet\");\n// Makes sure off-main-thread scripts are loaded in `gatsby develop`\nconst onInitialClientRender = () => {\n if (process.env.NODE_ENV !== `development`) {\n return;\n }\n (0, _injectPartytownSnippet.injectPartytownSnippet)(_gatsbyScript.collectedScriptsByPage.get(window.location.pathname));\n\n // Clear scripts after we've used them to avoid leaky behavior\n _gatsbyScript.collectedScriptsByPage.delete(window.location.pathname);\n};\n\n// Client-side navigation (CSR, e.g. Gatsby Link navigations) are broken upstream in Partytown.\n// We need an official API from Partytown for handling re-configuration and on-demand script loading.\n// Until then, `off-main-thread` scripts load only on server-side navigation (SSR).\n// See https://github.com/BuilderIO/partytown/issues/74 for more details.\nexports.onInitialClientRender = onInitialClientRender;\n//# sourceMappingURL=gatsby-browser.js.map","\"use strict\";\n\nexports.__esModule = true;\nexports.getForwards = getForwards;\nfunction getForwards(collectedScripts) {\n return collectedScripts === null || collectedScripts === void 0 ? void 0 : collectedScripts.flatMap(script => (script === null || script === void 0 ? void 0 : script.forward) || []);\n}\n//# sourceMappingURL=get-forwards.js.map","\"use strict\";\n\nexports.__esModule = true;\nexports.injectPartytownSnippet = injectPartytownSnippet;\nvar _integration = require(\"@builder.io/partytown/integration\");\nvar _getForwards = require(\"./get-forwards\");\n// Adapted from https://github.com/BuilderIO/partytown/blob/main/src/react/snippet.tsx to only include CSR logic\nfunction injectPartytownSnippet(collectedScripts) {\n if (!collectedScripts.length) {\n return;\n }\n const existingSnippet = document.querySelector(`script[data-partytown]`);\n const existingSandbox = document.querySelector(`iframe[src*=\"~partytown/partytown-sandbox-sw\"]`);\n if (existingSnippet) {\n existingSnippet.remove();\n }\n if (existingSandbox) {\n existingSandbox.remove();\n }\n const forwards = (0, _getForwards.getForwards)(collectedScripts);\n const snippet = document.createElement(`script`);\n snippet.dataset.partytown = ``;\n snippet.innerHTML = (0, _integration.partytownSnippet)({\n forward: forwards\n });\n document.head.appendChild(snippet);\n}\n//# sourceMappingURL=inject-partytown-snippet.js.map","exports.components = {\n \"component---src-pages-404-index-js\": () => import(\"./../../../src/pages/404/index.js\" /* webpackChunkName: \"component---src-pages-404-index-js\" */),\n \"component---src-pages-about-index-js\": () => import(\"./../../../src/pages/about/index.js\" /* webpackChunkName: \"component---src-pages-about-index-js\" */),\n \"component---src-pages-ai-at-kpoint-index-js\": () => import(\"./../../../src/pages/ai-at-kpoint/index.js\" /* webpackChunkName: \"component---src-pages-ai-at-kpoint-index-js\" */),\n \"component---src-pages-author-index-js\": () => import(\"./../../../src/pages/author/index.js\" /* webpackChunkName: \"component---src-pages-author-index-js\" */),\n \"component---src-pages-careers-details-index-js\": () => import(\"./../../../src/pages/careers/details/index.js\" /* webpackChunkName: \"component---src-pages-careers-details-index-js\" */),\n \"component---src-pages-careers-index-js\": () => import(\"./../../../src/pages/careers/index.js\" /* webpackChunkName: \"component---src-pages-careers-index-js\" */),\n \"component---src-pages-compliance-index-js\": () => import(\"./../../../src/pages/compliance/index.js\" /* webpackChunkName: \"component---src-pages-compliance-index-js\" */),\n \"component---src-pages-contact-us-index-js\": () => import(\"./../../../src/pages/contact-us/index.js\" /* webpackChunkName: \"component---src-pages-contact-us-index-js\" */),\n \"component---src-pages-content-center-index-js\": () => import(\"./../../../src/pages/content-center/index.js\" /* webpackChunkName: \"component---src-pages-content-center-index-js\" */),\n \"component---src-pages-embed-index-js\": () => import(\"./../../../src/pages/embed/index.js\" /* webpackChunkName: \"component---src-pages-embed-index-js\" */),\n \"component---src-pages-events-iisa-2025-index-js\": () => import(\"./../../../src/pages/events/IISA-2025/index.js\" /* webpackChunkName: \"component---src-pages-events-iisa-2025-index-js\" */),\n \"component---src-pages-events-index-js\": () => import(\"./../../../src/pages/events/index.js\" /* webpackChunkName: \"component---src-pages-events-index-js\" */),\n \"component---src-pages-forms-getfab-index-js\": () => import(\"./../../../src/pages/forms/getfab/index.js\" /* webpackChunkName: \"component---src-pages-forms-getfab-index-js\" */),\n \"component---src-pages-home-index-js\": () => import(\"./../../../src/pages/home/index.js\" /* webpackChunkName: \"component---src-pages-home-index-js\" */),\n \"component---src-pages-index-js\": () => import(\"./../../../src/pages/index.js\" /* webpackChunkName: \"component---src-pages-index-js\" */),\n \"component---src-pages-manish-connect-index-jsx\": () => import(\"./../../../src/pages/manish/connect/index.jsx\" /* webpackChunkName: \"component---src-pages-manish-connect-index-jsx\" */),\n \"component---src-pages-manish-index-js\": () => import(\"./../../../src/pages/manish/index.js\" /* webpackChunkName: \"component---src-pages-manish-index-js\" */),\n \"component---src-pages-page-2-js\": () => import(\"./../../../src/pages/page-2.js\" /* webpackChunkName: \"component---src-pages-page-2-js\" */),\n \"component---src-pages-platform-index-js\": () => import(\"./../../../src/pages/platform/index.js\" /* webpackChunkName: \"component---src-pages-platform-index-js\" */),\n \"component---src-pages-privacy-policy-index-js\": () => import(\"./../../../src/pages/privacy-policy/index.js\" /* webpackChunkName: \"component---src-pages-privacy-policy-index-js\" */),\n \"component---src-pages-products-index-js\": () => import(\"./../../../src/pages/products/index.js\" /* webpackChunkName: \"component---src-pages-products-index-js\" */),\n \"component---src-pages-products-koel-index-js\": () => import(\"./../../../src/pages/products/koel/index.js\" /* webpackChunkName: \"component---src-pages-products-koel-index-js\" */),\n \"component---src-pages-products-play-index-js\": () => import(\"./../../../src/pages/products/play/index.js\" /* webpackChunkName: \"component---src-pages-products-play-index-js\" */),\n \"component---src-pages-products-tube-index-js\": () => import(\"./../../../src/pages/products/tube/index.js\" /* webpackChunkName: \"component---src-pages-products-tube-index-js\" */),\n \"component---src-pages-products-xpresso-index-js\": () => import(\"./../../../src/pages/products/xpresso/index.js\" /* webpackChunkName: \"component---src-pages-products-xpresso-index-js\" */),\n \"component---src-pages-resources-blogs-details-index-js\": () => import(\"./../../../src/pages/resources/blogs/details/index.js\" /* webpackChunkName: \"component---src-pages-resources-blogs-details-index-js\" */),\n \"component---src-pages-resources-blogs-index-js\": () => import(\"./../../../src/pages/resources/blogs/index.js\" /* webpackChunkName: \"component---src-pages-resources-blogs-index-js\" */),\n \"component---src-pages-resources-casestudy-details-index-js\": () => import(\"./../../../src/pages/resources/casestudy/details/index.js\" /* webpackChunkName: \"component---src-pages-resources-casestudy-details-index-js\" */),\n \"component---src-pages-resources-casestudy-index-js\": () => import(\"./../../../src/pages/resources/casestudy/index.js\" /* webpackChunkName: \"component---src-pages-resources-casestudy-index-js\" */),\n \"component---src-pages-resources-index-js\": () => import(\"./../../../src/pages/resources/index.js\" /* webpackChunkName: \"component---src-pages-resources-index-js\" */),\n \"component---src-pages-resources-kpoint-now-details-index-js\": () => import(\"./../../../src/pages/resources/kpoint-now/details/index.js\" /* webpackChunkName: \"component---src-pages-resources-kpoint-now-details-index-js\" */),\n \"component---src-pages-resources-kpoint-now-index-js\": () => import(\"./../../../src/pages/resources/kpoint-now/index.js\" /* webpackChunkName: \"component---src-pages-resources-kpoint-now-index-js\" */),\n \"component---src-pages-resources-miscvideos-index-js\": () => import(\"./../../../src/pages/resources/miscvideos/index.js\" /* webpackChunkName: \"component---src-pages-resources-miscvideos-index-js\" */),\n \"component---src-pages-swayam-demo-cta-section-jsx\": () => import(\"./../../../src/pages/swayam-demo/cta-section.jsx\" /* webpackChunkName: \"component---src-pages-swayam-demo-cta-section-jsx\" */),\n \"component---src-pages-swayam-demo-feature-details-jsx\": () => import(\"./../../../src/pages/swayam-demo/feature-details.jsx\" /* webpackChunkName: \"component---src-pages-swayam-demo-feature-details-jsx\" */),\n \"component---src-pages-swayam-demo-feature-sections-jsx\": () => import(\"./../../../src/pages/swayam-demo/feature-sections.jsx\" /* webpackChunkName: \"component---src-pages-swayam-demo-feature-sections-jsx\" */),\n \"component---src-pages-swayam-demo-hero-sections-jsx\": () => import(\"./../../../src/pages/swayam-demo/hero-sections.jsx\" /* webpackChunkName: \"component---src-pages-swayam-demo-hero-sections-jsx\" */),\n \"component---src-pages-swayam-demo-index-jsx\": () => import(\"./../../../src/pages/swayam-demo/index.jsx\" /* webpackChunkName: \"component---src-pages-swayam-demo-index-jsx\" */),\n \"component---src-pages-terms-of-use-index-js\": () => import(\"./../../../src/pages/terms-of-use/index.js\" /* webpackChunkName: \"component---src-pages-terms-of-use-index-js\" */),\n \"component---src-pages-usecases-index-js\": () => import(\"./../../../src/pages/usecases/index.js\" /* webpackChunkName: \"component---src-pages-usecases-index-js\" */),\n \"component---src-pages-using-ssr-js\": () => import(\"./../../../src/pages/using-ssr.js\" /* webpackChunkName: \"component---src-pages-using-ssr-js\" */),\n \"component---src-pages-using-typescript-tsx\": () => import(\"./../../../src/pages/using-typescript.tsx\" /* webpackChunkName: \"component---src-pages-using-typescript-tsx\" */),\n \"component---src-templates-using-dsg-js\": () => import(\"./../../../src/templates/using-dsg.js\" /* webpackChunkName: \"component---src-templates-using-dsg-js\" */)\n}\n\n","module.exports = [{\n plugin: require('../node_modules/gatsby-plugin-manifest/gatsby-browser.js'),\n options: {\"plugins\":[],\"name\":\"KPOINT\",\"short_name\":\"KPOINT\",\"start_url\":\"/\",\"background_color\":\"#663399\",\"display\":\"minimal-ui\",\"icon\":\"src/images/kpoint-icon.webp\",\"legacy\":true,\"theme_color_in_head\":true,\"cache_busting_mode\":\"query\",\"crossOrigin\":\"anonymous\",\"include_favicon\":true,\"cacheDigest\":\"417cc8622c1c11cfd754c53e1c8fa1bd\"},\n },{\n plugin: require('../node_modules/gatsby-plugin-anchor-links/gatsby-browser.js'),\n options: {\"plugins\":[],\"offset\":0},\n },{\n plugin: require('../gatsby-browser.js'),\n options: {\"plugins\":[]},\n },{\n plugin: require('../node_modules/gatsby/dist/internal-plugins/partytown/gatsby-browser.js'),\n options: {\"plugins\":[]},\n }]\n","const plugins = require(`./api-runner-browser-plugins`)\nconst { getResourceURLsForPathname, loadPage, loadPageSync } =\n require(`./loader`).publicLoader\n\nexports.apiRunner = (api, args = {}, defaultReturn, argTransform) => {\n // Hooks for gatsby-cypress's API handler\n if (process.env.CYPRESS_SUPPORT) {\n if (window.___apiHandler) {\n window.___apiHandler(api)\n } else if (window.___resolvedAPIs) {\n window.___resolvedAPIs.push(api)\n } else {\n window.___resolvedAPIs = [api]\n }\n }\n\n let results = plugins.map(plugin => {\n if (!plugin.plugin[api]) {\n return undefined\n }\n\n args.getResourceURLsForPathname = getResourceURLsForPathname\n args.loadPage = loadPage\n args.loadPageSync = loadPageSync\n\n const result = plugin.plugin[api](args, plugin.options)\n if (result && argTransform) {\n args = argTransform({ args, result, plugin })\n }\n return result\n })\n\n // Filter out undefined results.\n results = results.filter(result => typeof result !== `undefined`)\n\n if (results.length > 0) {\n return results\n } else if (defaultReturn) {\n return [defaultReturn]\n } else {\n return []\n }\n}\n\nexports.apiRunnerAsync = (api, args, defaultReturn) =>\n plugins.reduce(\n (previous, next) =>\n next.plugin[api]\n ? previous.then(() => next.plugin[api](args, next.options))\n : previous,\n Promise.resolve()\n )\n","exports.createContentDigest = () => ``\n","import mitt from \"mitt\"\n\nconst emitter = mitt()\nexport default emitter\n","// \n// An event handler can take an optional event argument\n// and should not return a value\n \n \n\n// An array of all currently registered event handlers for a type\n \n \n// A map of event types and their corresponding event handlers.\n \n \n \n \n\n/** Mitt: Tiny (~200b) functional event emitter / pubsub.\n * @name mitt\n * @returns {Mitt}\n */\nfunction mitt(all ) {\n\tall = all || Object.create(null);\n\n\treturn {\n\t\t/**\n\t\t * Register an event handler for the given type.\n\t\t *\n\t\t * @param {String} type\tType of event to listen for, or `\"*\"` for all events\n\t\t * @param {Function} handler Function to call in response to given event\n\t\t * @memberOf mitt\n\t\t */\n\t\ton: function on(type , handler ) {\n\t\t\t(all[type] || (all[type] = [])).push(handler);\n\t\t},\n\n\t\t/**\n\t\t * Remove an event handler for the given type.\n\t\t *\n\t\t * @param {String} type\tType of event to unregister `handler` from, or `\"*\"`\n\t\t * @param {Function} handler Handler function to remove\n\t\t * @memberOf mitt\n\t\t */\n\t\toff: function off(type , handler ) {\n\t\t\tif (all[type]) {\n\t\t\t\tall[type].splice(all[type].indexOf(handler) >>> 0, 1);\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Invoke all handlers for the given type.\n\t\t * If present, `\"*\"` handlers are invoked after type-matched handlers.\n\t\t *\n\t\t * @param {String} type The event type to invoke\n\t\t * @param {Any} [evt] Any value (object is recommended and powerful), passed to each handler\n\t\t * @memberOf mitt\n\t\t */\n\t\temit: function emit(type , evt ) {\n\t\t\t(all[type] || []).slice().map(function (handler) { handler(evt); });\n\t\t\t(all['*'] || []).slice().map(function (handler) { handler(type, evt); });\n\t\t}\n\t};\n}\n\nexport default mitt;\n//# sourceMappingURL=mitt.es.js.map\n","export default pathAndSearch => {\n if (pathAndSearch === undefined) {\n return pathAndSearch\n }\n let [path, search = ``] = pathAndSearch.split(`?`)\n if (search) {\n search = `?` + search\n }\n\n if (path === `/`) {\n return `/` + search\n }\n if (path.charAt(path.length - 1) === `/`) {\n return path.slice(0, -1) + search\n }\n return path + search\n}\n","import { pick } from \"@gatsbyjs/reach-router\"\nimport stripPrefix from \"./strip-prefix\"\nimport normalizePagePath from \"./normalize-page-path\"\nimport { maybeGetBrowserRedirect } from \"./redirect-utils.js\"\n\nconst pathCache = new Map()\nlet matchPaths = []\n\nconst trimPathname = rawPathname => {\n let newRawPathname = rawPathname\n const queryIndex = rawPathname.indexOf(`?`)\n\n if (queryIndex !== -1) {\n const [path, qs] = rawPathname.split(`?`)\n newRawPathname = `${path}?${encodeURIComponent(qs)}`\n }\n\n const pathname = decodeURIComponent(newRawPathname)\n\n // Remove the pathPrefix from the pathname.\n const trimmedPathname = stripPrefix(\n pathname,\n decodeURIComponent(__BASE_PATH__)\n )\n // Remove any hashfragment\n .split(`#`)[0]\n\n return trimmedPathname\n}\n\nfunction absolutify(path) {\n // If it's already absolute, return as-is\n if (\n path.startsWith(`/`) ||\n path.startsWith(`https://`) ||\n path.startsWith(`http://`)\n ) {\n return path\n }\n // Calculate path relative to current location, adding a trailing slash to\n // match behavior of @reach/router\n return new URL(\n path,\n window.location.href + (window.location.href.endsWith(`/`) ? `` : `/`)\n ).pathname\n}\n\n/**\n * Set list of matchPaths\n *\n * @param {Array<{path: string, matchPath: string}>} value collection of matchPaths\n */\nexport const setMatchPaths = value => {\n matchPaths = value\n}\n\n/**\n * Return a matchpath url\n * if `match-paths.json` contains `{ \"/foo*\": \"/page1\", ...}`, then\n * `/foo?bar=far` => `/page1`\n *\n * @param {string} rawPathname A raw pathname\n * @return {string|null}\n */\nexport const findMatchPath = rawPathname => {\n const trimmedPathname = cleanPath(rawPathname)\n\n const pickPaths = matchPaths.map(({ path, matchPath }) => {\n return {\n path: matchPath,\n originalPath: path,\n }\n })\n\n const path = pick(pickPaths, trimmedPathname)\n\n if (path) {\n return normalizePagePath(path.route.originalPath)\n }\n\n return null\n}\n\n/**\n * Return a matchpath params from reach/router rules\n * if `match-paths.json` contains `{ \":bar/*foo\" }`, and the path is /baz/zaz/zoo\n * then it returns\n * { bar: baz, foo: zaz/zoo }\n *\n * @param {string} rawPathname A raw pathname\n * @return {object}\n */\nexport const grabMatchParams = rawPathname => {\n const trimmedPathname = cleanPath(rawPathname)\n\n const pickPaths = matchPaths.map(({ path, matchPath }) => {\n return {\n path: matchPath,\n originalPath: path,\n }\n })\n\n const path = pick(pickPaths, trimmedPathname)\n\n if (path) {\n return path.params\n }\n\n return {}\n}\n\n// Given a raw URL path, returns the cleaned version of it (trim off\n// `#` and query params), or if it matches an entry in\n// `match-paths.json`, its matched path is returned\n//\n// E.g. `/foo?bar=far` => `/foo`\n//\n// Or if `match-paths.json` contains `{ \"/foo*\": \"/page1\", ...}`, then\n// `/foo?bar=far` => `/page1`\nexport const findPath = rawPathname => {\n const trimmedPathname = trimPathname(absolutify(rawPathname))\n if (pathCache.has(trimmedPathname)) {\n return pathCache.get(trimmedPathname)\n }\n\n const redirect = maybeGetBrowserRedirect(rawPathname)\n if (redirect) {\n return findPath(redirect.toPath)\n }\n\n let foundPath = findMatchPath(trimmedPathname)\n\n if (!foundPath) {\n foundPath = cleanPath(rawPathname)\n }\n\n pathCache.set(trimmedPathname, foundPath)\n\n return foundPath\n}\n\n/**\n * Clean a url and converts /index.html => /\n * E.g. `/foo?bar=far` => `/foo`\n *\n * @param {string} rawPathname A raw pathname\n * @return {string}\n */\nexport const cleanPath = rawPathname => {\n const trimmedPathname = trimPathname(absolutify(rawPathname))\n\n let foundPath = trimmedPathname\n if (foundPath === `/index.html`) {\n foundPath = `/`\n }\n\n foundPath = normalizePagePath(foundPath)\n\n return foundPath\n}\n","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","export default function _isNativeReflectConstruct() {\n try {\n var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n } catch (t) {}\n return (_isNativeReflectConstruct = function _isNativeReflectConstruct() {\n return !!t;\n })();\n}","import getPrototypeOf from \"./getPrototypeOf.js\";\nimport setPrototypeOf from \"./setPrototypeOf.js\";\nimport isNativeFunction from \"./isNativeFunction.js\";\nimport construct from \"./construct.js\";\nexport default function _wrapNativeSuper(Class) {\n var _cache = typeof Map === \"function\" ? new Map() : undefined;\n _wrapNativeSuper = function _wrapNativeSuper(Class) {\n if (Class === null || !isNativeFunction(Class)) return Class;\n if (typeof Class !== \"function\") {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n if (typeof _cache !== \"undefined\") {\n if (_cache.has(Class)) return _cache.get(Class);\n _cache.set(Class, Wrapper);\n }\n function Wrapper() {\n return construct(Class, arguments, getPrototypeOf(this).constructor);\n }\n Wrapper.prototype = Object.create(Class.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n return setPrototypeOf(Wrapper, Class);\n };\n return _wrapNativeSuper(Class);\n}","export default function _isNativeFunction(fn) {\n try {\n return Function.toString.call(fn).indexOf(\"[native code]\") !== -1;\n } catch (e) {\n return typeof fn === \"function\";\n }\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nimport isNativeReflectConstruct from \"./isNativeReflectConstruct.js\";\nexport default function _construct(t, e, r) {\n if (isNativeReflectConstruct()) return Reflect.construct.apply(null, arguments);\n var o = [null];\n o.push.apply(o, e);\n var p = new (t.bind.apply(t, o))();\n return r && setPrototypeOf(p, r.prototype), p;\n}","import React from \"react\"\n\nexport const ServerSliceRenderer = ({ sliceId, children }) => {\n const contents = [\n React.createElement(`slice-start`, {\n id: `${sliceId}-1`,\n }),\n React.createElement(`slice-end`, {\n id: `${sliceId}-1`,\n }),\n ]\n\n if (children) {\n // if children exist, we split the slice into a before and after piece\n // see renderSlices in render-html\n contents.push(children)\n contents.push(\n React.createElement(`slice-start`, {\n id: `${sliceId}-2`,\n }),\n React.createElement(`slice-end`, {\n id: `${sliceId}-2`,\n })\n )\n }\n\n return contents\n}\n","import React, { useContext } from \"react\"\nimport { createContentDigest } from \"gatsby-core-utils/create-content-digest\"\nimport { SlicesMapContext, SlicesPropsContext } from \"./context\"\nimport { ServerSliceRenderer } from \"./server-slice-renderer\"\n\nconst getSliceId = (sliceName, sliceProps) => {\n if (!Object.keys(sliceProps).length) {\n return sliceName\n }\n\n const propsString = createContentDigest(sliceProps)\n return `${sliceName}-${propsString}`\n}\n\nexport const ServerSlice = ({\n sliceName,\n allowEmpty,\n children,\n ...sliceProps\n}) => {\n const slicesMap = useContext(SlicesMapContext)\n const slicesProps = useContext(SlicesPropsContext)\n const concreteSliceName = slicesMap[sliceName]\n\n if (!concreteSliceName) {\n if (allowEmpty) {\n return null\n } else {\n throw new Error(\n `Slice \"${concreteSliceName}\" for \"${sliceName}\" slot not found`\n )\n }\n }\n\n const sliceId = getSliceId(concreteSliceName, sliceProps)\n\n // set props on context object for static-entry to return\n let sliceUsage = slicesProps[sliceId]\n if (!sliceUsage) {\n slicesProps[sliceId] = sliceUsage = {\n props: sliceProps,\n sliceName: concreteSliceName,\n hasChildren: !!children,\n }\n } else {\n if (children) {\n sliceUsage.hasChildren = true\n }\n }\n\n return {children}\n}\n","import React, { useContext } from \"react\"\nimport { SlicesMapContext, SlicesResultsContext } from \"./context\"\n\nexport const InlineSlice = ({\n sliceName,\n allowEmpty,\n children,\n ...sliceProps\n}) => {\n const slicesMap = useContext(SlicesMapContext)\n const slicesResultsMap = useContext(SlicesResultsContext)\n const concreteSliceName = slicesMap[sliceName]\n const slice = slicesResultsMap.get(concreteSliceName)\n\n if (!slice) {\n if (allowEmpty) {\n return null\n } else {\n throw new Error(\n `Slice \"${concreteSliceName}\" for \"${sliceName}\" slot not found`\n )\n }\n }\n\n return (\n \n {children}\n \n )\n}\n","\"use client\"\n\nimport React, { useContext } from \"react\"\nimport { ServerSlice } from \"./slice/server-slice\"\nimport { InlineSlice } from \"./slice/inline-slice\"\nimport { SlicesContext } from \"./slice/context\"\n\nexport function Slice(props) {\n if (process.env.GATSBY_SLICES) {\n // we use sliceName internally, so remap alias to sliceName\n const internalProps = {\n ...props,\n sliceName: props.alias,\n }\n delete internalProps.alias\n delete internalProps.__renderedByLocation\n\n const slicesContext = useContext(SlicesContext)\n\n // validate props\n const propErrors = validateSliceProps(props)\n if (Object.keys(propErrors).length) {\n throw new SlicePropsError(\n slicesContext.renderEnvironment === `browser`,\n internalProps.sliceName,\n propErrors,\n props.__renderedByLocation\n )\n }\n\n if (slicesContext.renderEnvironment === `server`) {\n return \n } else if (slicesContext.renderEnvironment === `browser`) {\n // in the browser, we'll just render the component as is\n return \n } else if (\n slicesContext.renderEnvironment === `engines` ||\n slicesContext.renderEnvironment === `dev-ssr`\n ) {\n // if we're in SSR, we'll just render the component as is\n return \n } else if (slicesContext.renderEnvironment === `slices`) {\n // we are not yet supporting nested slices\n\n let additionalContextMessage = ``\n\n // just in case generating additional contextual information fails, we still want the base message to show\n // and not show another cryptic error message\n try {\n additionalContextMessage = `\\n\\nSlice component \"${slicesContext.sliceRoot.name}\" (${slicesContext.sliceRoot.componentPath}) tried to render `\n } catch {\n // don't need to handle it, we will just skip the additional context message if we fail to generate it\n }\n\n throw new Error(\n `Nested slices are not supported.${additionalContextMessage}\\n\\nSee https://gatsbyjs.com/docs/reference/built-in-components/gatsby-slice#nested-slices`\n )\n } else {\n throw new Error(\n `Slice context \"${slicesContext.renderEnvironment}\" is not supported.`\n )\n }\n } else {\n throw new Error(`Slices are disabled.`)\n }\n}\n\nclass SlicePropsError extends Error {\n constructor(inBrowser, sliceName, propErrors, renderedByLocation) {\n const errors = Object.entries(propErrors)\n .map(\n ([key, value]) =>\n `not serializable \"${value}\" type passed to \"${key}\" prop`\n )\n .join(`, `)\n\n const name = `SlicePropsError`\n let stack = ``\n let message = ``\n\n if (inBrowser) {\n // They're just (kinda) kidding, I promise... You can still work here <3\n // https://www.gatsbyjs.com/careers/\n const fullStack =\n React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactDebugCurrentFrame.getCurrentStack()\n\n // remove the first line of the stack trace\n const stackLines = fullStack.trim().split(`\\n`).slice(1)\n stackLines[0] = stackLines[0].trim()\n stack = `\\n` + stackLines.join(`\\n`)\n\n message = `Slice \"${sliceName}\" was passed props that are not serializable (${errors}).`\n } else {\n // we can't really grab any extra info outside of the browser, so just print what we can\n message = `${name}: Slice \"${sliceName}\" was passed props that are not serializable (${errors}).`\n const stackLines = new Error().stack.trim().split(`\\n`).slice(2)\n stack = `${message}\\n${stackLines.join(`\\n`)}`\n }\n\n super(message)\n this.name = name\n if (stack) {\n this.stack = stack\n } else {\n Error.captureStackTrace(this, SlicePropsError)\n }\n\n if (renderedByLocation) {\n this.forcedLocation = { ...renderedByLocation, functionName: `Slice` }\n }\n }\n}\n\nconst validateSliceProps = (\n props,\n errors = {},\n seenObjects = [],\n path = null\n) => {\n // recursively validate all props\n for (const [name, value] of Object.entries(props)) {\n if (\n value === undefined ||\n value === null ||\n (!path && name === `children`)\n ) {\n continue\n }\n\n const propPath = path ? `${path}.${name}` : name\n\n if (typeof value === `function`) {\n errors[propPath] = typeof value\n } else if (typeof value === `object` && seenObjects.indexOf(value) <= 0) {\n seenObjects.push(value)\n validateSliceProps(value, errors, seenObjects, propPath)\n }\n }\n\n return errors\n}\n","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}","import loader from \"./loader\"\n\nconst prefetchPathname = loader.enqueue\n\nfunction graphql() {\n throw new Error(\n `It appears like Gatsby is misconfigured. Gatsby related \\`graphql\\` calls ` +\n `are supposed to only be evaluated at compile time, and then compiled away. ` +\n `Unfortunately, something went wrong and the query was left in the compiled code.\\n\\n` +\n `Unless your site has a complex or custom babel/Gatsby configuration this is likely a bug in Gatsby.`\n )\n}\n\nexport { default as PageRenderer } from \"./public-page-renderer\"\nexport { useScrollRestoration } from \"gatsby-react-router-scroll\"\nexport {\n Link,\n withPrefix,\n withAssetPrefix,\n navigate,\n parsePath,\n} from \"gatsby-link\"\n\nexport { graphql, prefetchPathname }\nexport { StaticQuery, StaticQueryContext, useStaticQuery } from \"./static-query\"\nexport { Slice } from \"./slice\"\nexport * from \"gatsby-script\"\n","const support = function (feature) {\n if (typeof document === `undefined`) {\n return false\n }\n const fakeLink = document.createElement(`link`)\n try {\n if (fakeLink.relList && typeof fakeLink.relList.supports === `function`) {\n return fakeLink.relList.supports(feature)\n }\n } catch (err) {\n return false\n }\n return false\n}\n\nconst linkPrefetchStrategy = function (url, options) {\n return new Promise((resolve, reject) => {\n if (typeof document === `undefined`) {\n reject()\n return\n }\n\n const link = document.createElement(`link`)\n link.setAttribute(`rel`, `prefetch`)\n link.setAttribute(`href`, url)\n\n Object.keys(options).forEach(key => {\n link.setAttribute(key, options[key])\n })\n\n link.onload = resolve\n link.onerror = reject\n\n const parentElement =\n document.getElementsByTagName(`head`)[0] ||\n document.getElementsByName(`script`)[0].parentNode\n parentElement.appendChild(link)\n })\n}\n\nconst xhrPrefetchStrategy = function (url) {\n return new Promise((resolve, reject) => {\n const req = new XMLHttpRequest()\n req.open(`GET`, url, true)\n\n req.onload = () => {\n if (req.status === 200) {\n resolve()\n } else {\n reject()\n }\n }\n\n req.send(null)\n })\n}\n\nconst supportedPrefetchStrategy = support(`prefetch`)\n ? linkPrefetchStrategy\n : xhrPrefetchStrategy\n\nconst preFetched = {}\n\nconst prefetch = function (url, options) {\n return new Promise(resolve => {\n if (preFetched[url]) {\n resolve()\n return\n }\n\n supportedPrefetchStrategy(url, options)\n .then(() => {\n resolve()\n preFetched[url] = true\n })\n .catch(() => {}) // 404s are logged to the console anyway\n })\n}\n\nexport default prefetch\n","import { createFromReadableStream } from \"react-server-dom-webpack\"\nimport prefetchHelper from \"./prefetch\"\nimport emitter from \"./emitter\"\nimport { setMatchPaths, findPath, findMatchPath } from \"./find-path\"\n\n/**\n * Available resource loading statuses\n */\nexport const PageResourceStatus = {\n /**\n * At least one of critical resources failed to load\n */\n Error: `error`,\n /**\n * Resources loaded successfully\n */\n Success: `success`,\n}\n\nconst preferDefault = m => (m && m.default) || m\n\nconst stripSurroundingSlashes = s => {\n s = s[0] === `/` ? s.slice(1) : s\n s = s.endsWith(`/`) ? s.slice(0, -1) : s\n return s\n}\n\nconst createPageDataUrl = rawPath => {\n const [path, maybeSearch] = rawPath.split(`?`)\n const fixedPath = path === `/` ? `index` : stripSurroundingSlashes(path)\n return `${__PATH_PREFIX__}/page-data/${fixedPath}/page-data.json${\n maybeSearch ? `?${maybeSearch}` : ``\n }`\n}\n\n/**\n * Utility to check the path that goes into doFetch for e.g. potential malicious intentions.\n * It checks for \"//\" because with this you could do a fetch request to a different domain.\n */\nconst shouldAbortFetch = rawPath => rawPath.startsWith(`//`)\n\nfunction doFetch(url, method = `GET`) {\n return new Promise(resolve => {\n const req = new XMLHttpRequest()\n req.open(method, url, true)\n req.onreadystatechange = () => {\n if (req.readyState == 4) {\n resolve(req)\n }\n }\n req.send(null)\n })\n}\n\nconst doesConnectionSupportPrefetch = () => {\n if (\n `connection` in navigator &&\n typeof navigator.connection !== `undefined`\n ) {\n if ((navigator.connection.effectiveType || ``).includes(`2g`)) {\n return false\n }\n if (navigator.connection.saveData) {\n return false\n }\n }\n return true\n}\n\n// Regex that matches common search crawlers\nconst BOT_REGEX = /bot|crawler|spider|crawling/i\n\nconst toPageResources = (pageData, component = null, head) => {\n const page = {\n componentChunkName: pageData.componentChunkName,\n path: pageData.path,\n webpackCompilationHash: pageData.webpackCompilationHash,\n matchPath: pageData.matchPath,\n staticQueryHashes: pageData.staticQueryHashes,\n getServerDataError: pageData.getServerDataError,\n slicesMap: pageData.slicesMap ?? {},\n }\n\n return {\n component,\n head,\n json: pageData.result,\n page,\n }\n}\n\nfunction waitForResponse(response) {\n return new Promise(resolve => {\n try {\n const result = response.readRoot()\n resolve(result)\n } catch (err) {\n if (\n Object.hasOwnProperty.call(err, `_response`) &&\n Object.hasOwnProperty.call(err, `_status`)\n ) {\n setTimeout(() => {\n waitForResponse(response).then(resolve)\n }, 200)\n } else {\n throw err\n }\n }\n })\n}\n\nexport class BaseLoader {\n constructor(loadComponent, matchPaths) {\n // Map of pagePath -> Page. Where Page is an object with: {\n // status: PageResourceStatus.Success || PageResourceStatus.Error,\n // payload: PageResources, // undefined if PageResourceStatus.Error\n // }\n // PageResources is {\n // component,\n // json: pageData.result,\n // page: {\n // componentChunkName,\n // path,\n // webpackCompilationHash,\n // staticQueryHashes\n // },\n // staticQueryResults\n // }\n this.pageDb = new Map()\n this.inFlightDb = new Map()\n this.staticQueryDb = {}\n this.pageDataDb = new Map()\n this.partialHydrationDb = new Map()\n this.slicesDataDb = new Map()\n this.sliceInflightDb = new Map()\n this.slicesDb = new Map()\n this.isPrefetchQueueRunning = false\n this.prefetchQueued = []\n this.prefetchTriggered = new Set()\n this.prefetchCompleted = new Set()\n this.loadComponent = loadComponent\n setMatchPaths(matchPaths)\n }\n\n inFlightNetworkRequests = new Map()\n\n memoizedGet(url) {\n let inFlightPromise = this.inFlightNetworkRequests.get(url)\n\n if (!inFlightPromise) {\n inFlightPromise = doFetch(url, `GET`)\n this.inFlightNetworkRequests.set(url, inFlightPromise)\n }\n\n // Prefer duplication with then + catch over .finally to prevent problems in ie11 + firefox\n return inFlightPromise\n .then(response => {\n this.inFlightNetworkRequests.delete(url)\n return response\n })\n .catch(err => {\n this.inFlightNetworkRequests.delete(url)\n throw err\n })\n }\n\n setApiRunner(apiRunner) {\n this.apiRunner = apiRunner\n this.prefetchDisabled = apiRunner(`disableCorePrefetching`).some(a => a)\n }\n\n fetchPageDataJson(loadObj) {\n const { pagePath, retries = 0 } = loadObj\n const url = createPageDataUrl(pagePath)\n return this.memoizedGet(url).then(req => {\n const { status, responseText } = req\n\n // Handle 200\n if (status === 200) {\n try {\n const jsonPayload = JSON.parse(responseText)\n if (jsonPayload.path === undefined) {\n throw new Error(`not a valid pageData response`)\n }\n\n const maybeSearch = pagePath.split(`?`)[1]\n if (maybeSearch && !jsonPayload.path.includes(maybeSearch)) {\n jsonPayload.path += `?${maybeSearch}`\n }\n\n return Object.assign(loadObj, {\n status: PageResourceStatus.Success,\n payload: jsonPayload,\n })\n } catch (err) {\n // continue regardless of error\n }\n }\n\n // Handle 404\n if (status === 404 || status === 200) {\n // If the request was for a 404/500 page and it doesn't exist, we're done\n if (pagePath === `/404.html` || pagePath === `/500.html`) {\n return Object.assign(loadObj, {\n status: PageResourceStatus.Error,\n })\n }\n\n // Need some code here to cache the 404 request. In case\n // multiple loadPageDataJsons result in 404s\n return this.fetchPageDataJson(\n Object.assign(loadObj, { pagePath: `/404.html`, notFound: true })\n )\n }\n\n // handle 500 response (Unrecoverable)\n if (status === 500) {\n return this.fetchPageDataJson(\n Object.assign(loadObj, {\n pagePath: `/500.html`,\n internalServerError: true,\n })\n )\n }\n\n // Handle everything else, including status === 0, and 503s. Should retry\n if (retries < 3) {\n return this.fetchPageDataJson(\n Object.assign(loadObj, { retries: retries + 1 })\n )\n }\n\n // Retried 3 times already, result is an error.\n return Object.assign(loadObj, {\n status: PageResourceStatus.Error,\n })\n })\n }\n\n fetchPartialHydrationJson(loadObj) {\n const { pagePath, retries = 0 } = loadObj\n const url = createPageDataUrl(pagePath).replace(`.json`, `-rsc.json`)\n return this.memoizedGet(url).then(req => {\n const { status, responseText } = req\n\n // Handle 200\n if (status === 200) {\n try {\n return Object.assign(loadObj, {\n status: PageResourceStatus.Success,\n payload: responseText,\n })\n } catch (err) {\n // continue regardless of error\n }\n }\n\n // Handle 404\n if (status === 404 || status === 200) {\n // If the request was for a 404/500 page and it doesn't exist, we're done\n if (pagePath === `/404.html` || pagePath === `/500.html`) {\n return Object.assign(loadObj, {\n status: PageResourceStatus.Error,\n })\n }\n\n // Need some code here to cache the 404 request. In case\n // multiple loadPageDataJsons result in 404s\n return this.fetchPartialHydrationJson(\n Object.assign(loadObj, { pagePath: `/404.html`, notFound: true })\n )\n }\n\n // handle 500 response (Unrecoverable)\n if (status === 500) {\n return this.fetchPartialHydrationJson(\n Object.assign(loadObj, {\n pagePath: `/500.html`,\n internalServerError: true,\n })\n )\n }\n\n // Handle everything else, including status === 0, and 503s. Should retry\n if (retries < 3) {\n return this.fetchPartialHydrationJson(\n Object.assign(loadObj, { retries: retries + 1 })\n )\n }\n\n // Retried 3 times already, result is an error.\n return Object.assign(loadObj, {\n status: PageResourceStatus.Error,\n })\n })\n }\n\n loadPageDataJson(rawPath) {\n const pagePath = findPath(rawPath)\n if (this.pageDataDb.has(pagePath)) {\n const pageData = this.pageDataDb.get(pagePath)\n if (process.env.BUILD_STAGE !== `develop` || !pageData.stale) {\n return Promise.resolve(pageData)\n }\n }\n\n return this.fetchPageDataJson({ pagePath }).then(pageData => {\n this.pageDataDb.set(pagePath, pageData)\n\n return pageData\n })\n }\n\n loadPartialHydrationJson(rawPath) {\n const pagePath = findPath(rawPath)\n if (this.partialHydrationDb.has(pagePath)) {\n const pageData = this.partialHydrationDb.get(pagePath)\n if (process.env.BUILD_STAGE !== `develop` || !pageData.stale) {\n return Promise.resolve(pageData)\n }\n }\n\n return this.fetchPartialHydrationJson({ pagePath }).then(pageData => {\n this.partialHydrationDb.set(pagePath, pageData)\n\n return pageData\n })\n }\n\n loadSliceDataJson(sliceName) {\n if (this.slicesDataDb.has(sliceName)) {\n const jsonPayload = this.slicesDataDb.get(sliceName)\n return Promise.resolve({ sliceName, jsonPayload })\n }\n\n const url = `${__PATH_PREFIX__}/slice-data/${sliceName}.json`\n return doFetch(url, `GET`).then(res => {\n const jsonPayload = JSON.parse(res.responseText)\n\n this.slicesDataDb.set(sliceName, jsonPayload)\n return { sliceName, jsonPayload }\n })\n }\n\n findMatchPath(rawPath) {\n return findMatchPath(rawPath)\n }\n\n // TODO check all uses of this and whether they use undefined for page resources not exist\n loadPage(rawPath) {\n const pagePath = findPath(rawPath)\n if (this.pageDb.has(pagePath)) {\n const page = this.pageDb.get(pagePath)\n if (process.env.BUILD_STAGE !== `develop` || !page.payload.stale) {\n if (page.error) {\n return Promise.resolve({\n error: page.error,\n status: page.status,\n })\n }\n\n return Promise.resolve(page.payload)\n }\n }\n\n if (this.inFlightDb.has(pagePath)) {\n return this.inFlightDb.get(pagePath)\n }\n\n const loadDataPromises = [\n this.loadAppData(),\n this.loadPageDataJson(pagePath),\n ]\n\n if (global.hasPartialHydration) {\n loadDataPromises.push(this.loadPartialHydrationJson(pagePath))\n }\n\n const inFlightPromise = Promise.all(loadDataPromises).then(allData => {\n const [appDataResponse, pageDataResponse, rscDataResponse] = allData\n\n if (\n pageDataResponse.status === PageResourceStatus.Error ||\n rscDataResponse?.status === PageResourceStatus.Error\n ) {\n return {\n status: PageResourceStatus.Error,\n }\n }\n\n let pageData = pageDataResponse.payload\n\n const {\n componentChunkName,\n staticQueryHashes: pageStaticQueryHashes = [],\n slicesMap = {},\n } = pageData\n\n const finalResult = {}\n\n const dedupedSliceNames = Array.from(new Set(Object.values(slicesMap)))\n\n const loadSlice = slice => {\n if (this.slicesDb.has(slice.name)) {\n return this.slicesDb.get(slice.name)\n } else if (this.sliceInflightDb.has(slice.name)) {\n return this.sliceInflightDb.get(slice.name)\n }\n\n const inFlight = this.loadComponent(slice.componentChunkName).then(\n component => {\n return {\n component: preferDefault(component),\n sliceContext: slice.result.sliceContext,\n data: slice.result.data,\n }\n }\n )\n\n this.sliceInflightDb.set(slice.name, inFlight)\n inFlight.then(results => {\n this.slicesDb.set(slice.name, results)\n this.sliceInflightDb.delete(slice.name)\n })\n\n return inFlight\n }\n\n return Promise.all(\n dedupedSliceNames.map(sliceName => this.loadSliceDataJson(sliceName))\n ).then(slicesData => {\n const slices = []\n const dedupedStaticQueryHashes = [...pageStaticQueryHashes]\n\n for (const { jsonPayload, sliceName } of Object.values(slicesData)) {\n slices.push({ name: sliceName, ...jsonPayload })\n for (const staticQueryHash of jsonPayload.staticQueryHashes) {\n if (!dedupedStaticQueryHashes.includes(staticQueryHash)) {\n dedupedStaticQueryHashes.push(staticQueryHash)\n }\n }\n }\n\n const loadChunkPromises = [\n Promise.all(slices.map(loadSlice)),\n this.loadComponent(componentChunkName, `head`),\n ]\n\n if (!global.hasPartialHydration) {\n loadChunkPromises.push(this.loadComponent(componentChunkName))\n }\n\n // In develop we have separate chunks for template and Head components\n // to enable HMR (fast refresh requires single exports).\n // In production we have shared chunk with both exports. Double loadComponent here\n // will be deduped by webpack runtime resulting in single request and single module\n // being loaded for both `component` and `head`.\n // get list of components to get\n const componentChunkPromises = Promise.all(loadChunkPromises).then(\n components => {\n const [sliceComponents, headComponent, pageComponent] = components\n\n finalResult.createdAt = new Date()\n\n for (const sliceComponent of sliceComponents) {\n if (!sliceComponent || sliceComponent instanceof Error) {\n finalResult.status = PageResourceStatus.Error\n finalResult.error = sliceComponent\n }\n }\n\n if (\n !global.hasPartialHydration &&\n (!pageComponent || pageComponent instanceof Error)\n ) {\n finalResult.status = PageResourceStatus.Error\n finalResult.error = pageComponent\n }\n\n let pageResources\n\n if (finalResult.status !== PageResourceStatus.Error) {\n finalResult.status = PageResourceStatus.Success\n if (\n pageDataResponse.notFound === true ||\n rscDataResponse?.notFound === true\n ) {\n finalResult.notFound = true\n }\n pageData = Object.assign(pageData, {\n webpackCompilationHash: appDataResponse\n ? appDataResponse.webpackCompilationHash\n : ``,\n })\n\n if (typeof rscDataResponse?.payload === `string`) {\n pageResources = toPageResources(pageData, null, headComponent)\n\n pageResources.partialHydration = rscDataResponse.payload\n\n const readableStream = new ReadableStream({\n start(controller) {\n const te = new TextEncoder()\n controller.enqueue(te.encode(rscDataResponse.payload))\n },\n pull(controller) {\n // close on next read when queue is empty\n controller.close()\n },\n cancel() {},\n })\n\n return waitForResponse(\n createFromReadableStream(readableStream)\n ).then(result => {\n pageResources.partialHydration = result\n\n return pageResources\n })\n } else {\n pageResources = toPageResources(\n pageData,\n pageComponent,\n headComponent\n )\n }\n }\n\n // undefined if final result is an error\n return pageResources\n }\n )\n\n // get list of static queries to get\n const staticQueryBatchPromise = Promise.all(\n dedupedStaticQueryHashes.map(staticQueryHash => {\n // Check for cache in case this static query result has already been loaded\n if (this.staticQueryDb[staticQueryHash]) {\n const jsonPayload = this.staticQueryDb[staticQueryHash]\n return { staticQueryHash, jsonPayload }\n }\n\n return this.memoizedGet(\n `${__PATH_PREFIX__}/page-data/sq/d/${staticQueryHash}.json`\n )\n .then(req => {\n const jsonPayload = JSON.parse(req.responseText)\n return { staticQueryHash, jsonPayload }\n })\n .catch(() => {\n throw new Error(\n `We couldn't load \"${__PATH_PREFIX__}/page-data/sq/d/${staticQueryHash}.json\"`\n )\n })\n })\n ).then(staticQueryResults => {\n const staticQueryResultsMap = {}\n\n staticQueryResults.forEach(({ staticQueryHash, jsonPayload }) => {\n staticQueryResultsMap[staticQueryHash] = jsonPayload\n this.staticQueryDb[staticQueryHash] = jsonPayload\n })\n\n return staticQueryResultsMap\n })\n\n return (\n Promise.all([componentChunkPromises, staticQueryBatchPromise])\n .then(([pageResources, staticQueryResults]) => {\n let payload\n if (pageResources) {\n payload = { ...pageResources, staticQueryResults }\n finalResult.payload = payload\n emitter.emit(`onPostLoadPageResources`, {\n page: payload,\n pageResources: payload,\n })\n }\n\n this.pageDb.set(pagePath, finalResult)\n\n if (finalResult.error) {\n return {\n error: finalResult.error,\n status: finalResult.status,\n }\n }\n\n return payload\n })\n // when static-query fail to load we throw a better error\n .catch(err => {\n return {\n error: err,\n status: PageResourceStatus.Error,\n }\n })\n )\n })\n })\n\n inFlightPromise\n .then(() => {\n this.inFlightDb.delete(pagePath)\n })\n .catch(error => {\n this.inFlightDb.delete(pagePath)\n throw error\n })\n\n this.inFlightDb.set(pagePath, inFlightPromise)\n\n return inFlightPromise\n }\n\n // returns undefined if the page does not exists in cache\n loadPageSync(rawPath, options = {}) {\n const pagePath = findPath(rawPath)\n if (this.pageDb.has(pagePath)) {\n const pageData = this.pageDb.get(pagePath)\n\n if (pageData.payload) {\n return pageData.payload\n }\n\n if (options?.withErrorDetails) {\n return {\n error: pageData.error,\n status: pageData.status,\n }\n }\n }\n return undefined\n }\n\n shouldPrefetch(pagePath) {\n // Skip prefetching if we know user is on slow or constrained connection\n if (!doesConnectionSupportPrefetch()) {\n return false\n }\n\n // Don't prefetch if this is a crawler bot\n if (navigator.userAgent && BOT_REGEX.test(navigator.userAgent)) {\n return false\n }\n\n // Check if the page exists.\n if (this.pageDb.has(pagePath)) {\n return false\n }\n\n return true\n }\n\n prefetch(pagePath) {\n if (!this.shouldPrefetch(pagePath)) {\n return {\n then: resolve => resolve(false),\n abort: () => {},\n }\n }\n if (this.prefetchTriggered.has(pagePath)) {\n return {\n then: resolve => resolve(true),\n abort: () => {},\n }\n }\n\n const defer = {\n resolve: null,\n reject: null,\n promise: null,\n }\n defer.promise = new Promise((resolve, reject) => {\n defer.resolve = resolve\n defer.reject = reject\n })\n this.prefetchQueued.push([pagePath, defer])\n const abortC = new AbortController()\n abortC.signal.addEventListener(`abort`, () => {\n const index = this.prefetchQueued.findIndex(([p]) => p === pagePath)\n // remove from the queue\n if (index !== -1) {\n this.prefetchQueued.splice(index, 1)\n }\n })\n\n if (!this.isPrefetchQueueRunning) {\n this.isPrefetchQueueRunning = true\n setTimeout(() => {\n this._processNextPrefetchBatch()\n }, 3000)\n }\n\n return {\n then: (resolve, reject) => defer.promise.then(resolve, reject),\n abort: abortC.abort.bind(abortC),\n }\n }\n\n _processNextPrefetchBatch() {\n const idleCallback = window.requestIdleCallback || (cb => setTimeout(cb, 0))\n\n idleCallback(() => {\n const toPrefetch = this.prefetchQueued.splice(0, 4)\n const prefetches = Promise.all(\n toPrefetch.map(([pagePath, dPromise]) => {\n // Tell plugins with custom prefetching logic that they should start\n // prefetching this path.\n if (!this.prefetchTriggered.has(pagePath)) {\n this.apiRunner(`onPrefetchPathname`, { pathname: pagePath })\n this.prefetchTriggered.add(pagePath)\n }\n\n // If a plugin has disabled core prefetching, stop now.\n if (this.prefetchDisabled) {\n return dPromise.resolve(false)\n }\n\n return this.doPrefetch(findPath(pagePath)).then(() => {\n if (!this.prefetchCompleted.has(pagePath)) {\n this.apiRunner(`onPostPrefetchPathname`, { pathname: pagePath })\n this.prefetchCompleted.add(pagePath)\n }\n\n dPromise.resolve(true)\n })\n })\n )\n\n if (this.prefetchQueued.length) {\n prefetches.then(() => {\n setTimeout(() => {\n this._processNextPrefetchBatch()\n }, 3000)\n })\n } else {\n this.isPrefetchQueueRunning = false\n }\n })\n }\n\n doPrefetch(pagePath) {\n const pageDataUrl = createPageDataUrl(pagePath)\n\n if (global.hasPartialHydration) {\n return Promise.all([\n prefetchHelper(pageDataUrl, {\n crossOrigin: `anonymous`,\n as: `fetch`,\n }).then(() =>\n // This was just prefetched, so will return a response from\n // the cache instead of making another request to the server\n this.loadPageDataJson(pagePath)\n ),\n prefetchHelper(pageDataUrl.replace(`.json`, `-rsc.json`), {\n crossOrigin: `anonymous`,\n as: `fetch`,\n }).then(() =>\n // This was just prefetched, so will return a response from\n // the cache instead of making another request to the server\n this.loadPartialHydrationJson(pagePath)\n ),\n ])\n } else {\n return prefetchHelper(pageDataUrl, {\n crossOrigin: `anonymous`,\n as: `fetch`,\n }).then(() =>\n // This was just prefetched, so will return a response from\n // the cache instead of making another request to the server\n this.loadPageDataJson(pagePath)\n )\n }\n }\n\n hovering(rawPath) {\n this.loadPage(rawPath)\n }\n\n getResourceURLsForPathname(rawPath) {\n const pagePath = findPath(rawPath)\n const page = this.pageDataDb.get(pagePath)\n if (page) {\n const pageResources = toPageResources(page.payload)\n\n return [\n ...createComponentUrls(pageResources.page.componentChunkName),\n createPageDataUrl(pagePath),\n ]\n } else {\n return null\n }\n }\n\n isPageNotFound(rawPath) {\n const pagePath = findPath(rawPath)\n const page = this.pageDb.get(pagePath)\n return !page || page.notFound\n }\n\n loadAppData(retries = 0) {\n return this.memoizedGet(`${__PATH_PREFIX__}/page-data/app-data.json`).then(\n req => {\n const { status, responseText } = req\n\n let appData\n\n if (status !== 200 && retries < 3) {\n // Retry 3 times incase of non-200 responses\n return this.loadAppData(retries + 1)\n }\n\n // Handle 200\n if (status === 200) {\n try {\n const jsonPayload = JSON.parse(responseText)\n if (jsonPayload.webpackCompilationHash === undefined) {\n throw new Error(`not a valid app-data response`)\n }\n\n appData = jsonPayload\n } catch (err) {\n // continue regardless of error\n }\n }\n\n return appData\n }\n )\n }\n}\n\nconst createComponentUrls = componentChunkName =>\n (window.___chunkMapping[componentChunkName] || []).map(\n chunk => __PATH_PREFIX__ + chunk\n )\n\nexport class ProdLoader extends BaseLoader {\n constructor(asyncRequires, matchPaths, pageData) {\n const loadComponent = (chunkName, exportType = `components`) => {\n if (!global.hasPartialHydration) {\n exportType = `components`\n }\n\n if (!asyncRequires[exportType][chunkName]) {\n throw new Error(\n `We couldn't find the correct component chunk with the name \"${chunkName}\"`\n )\n }\n\n return (\n asyncRequires[exportType][chunkName]()\n // loader will handle the case when component is error\n .catch(err => err)\n )\n }\n\n super(loadComponent, matchPaths)\n\n if (pageData) {\n this.pageDataDb.set(findPath(pageData.path), {\n pagePath: pageData.path,\n payload: pageData,\n status: `success`,\n })\n }\n }\n\n doPrefetch(pagePath) {\n return super.doPrefetch(pagePath).then(result => {\n if (result.status !== PageResourceStatus.Success) {\n return Promise.resolve()\n }\n const pageData = result.payload\n const chunkName = pageData.componentChunkName\n const componentUrls = createComponentUrls(chunkName)\n return Promise.all(componentUrls.map(prefetchHelper)).then(() => pageData)\n })\n }\n\n loadPageDataJson(rawPath) {\n return super.loadPageDataJson(rawPath).then(data => {\n if (data.notFound) {\n if (shouldAbortFetch(rawPath)) {\n return data\n }\n // check if html file exist using HEAD request:\n // if it does we should navigate to it instead of showing 404\n return doFetch(rawPath, `HEAD`).then(req => {\n if (req.status === 200) {\n // page (.html file) actually exist (or we asked for 404 )\n // returning page resources status as errored to trigger\n // regular browser navigation to given page\n return {\n status: PageResourceStatus.Error,\n }\n }\n\n // if HEAD request wasn't 200, return notFound result\n // and show 404 page\n return data\n })\n }\n return data\n })\n }\n\n loadPartialHydrationJson(rawPath) {\n return super.loadPartialHydrationJson(rawPath).then(data => {\n if (data.notFound) {\n if (shouldAbortFetch(rawPath)) {\n return data\n }\n // check if html file exist using HEAD request:\n // if it does we should navigate to it instead of showing 404\n return doFetch(rawPath, `HEAD`).then(req => {\n if (req.status === 200) {\n // page (.html file) actually exist (or we asked for 404 )\n // returning page resources status as errored to trigger\n // regular browser navigation to given page\n return {\n status: PageResourceStatus.Error,\n }\n }\n\n // if HEAD request wasn't 200, return notFound result\n // and show 404 page\n return data\n })\n }\n return data\n })\n }\n}\n\nlet instance\n\nexport const setLoader = _loader => {\n instance = _loader\n}\n\nexport const publicLoader = {\n enqueue: rawPath => instance.prefetch(rawPath),\n\n // Real methods\n getResourceURLsForPathname: rawPath =>\n instance.getResourceURLsForPathname(rawPath),\n loadPage: rawPath => instance.loadPage(rawPath),\n // TODO add deprecation to v4 so people use withErrorDetails and then we can remove in v5 and change default behaviour\n loadPageSync: (rawPath, options = {}) =>\n instance.loadPageSync(rawPath, options),\n prefetch: rawPath => instance.prefetch(rawPath),\n isPageNotFound: rawPath => instance.isPageNotFound(rawPath),\n hovering: rawPath => instance.hovering(rawPath),\n loadAppData: () => instance.loadAppData(),\n}\n\nexport default publicLoader\n\nexport function getStaticQueryResults() {\n if (instance) {\n return instance.staticQueryDb\n } else {\n return {}\n }\n}\n\nexport function getSliceResults() {\n if (instance) {\n return instance.slicesDb\n } else {\n return {}\n }\n}\n","import { useEffect } from \"react\"\n\n/*\n * Calls callback in an effect and renders children\n */\nexport function FireCallbackInEffect({ children, callback }) {\n useEffect(() => {\n callback()\n })\n\n return children\n}\n","export const VALID_NODE_NAMES = [\n `link`,\n `meta`,\n `style`,\n `title`,\n `base`,\n `noscript`,\n `script`,\n `html`,\n `body`,\n]\n","import { VALID_NODE_NAMES } from \"./constants\"\n\n/**\n * Filter the props coming from a page down to just the ones that are relevant for head.\n * This e.g. filters out properties that are undefined during SSR.\n */\nexport function filterHeadProps(input) {\n return {\n location: {\n pathname: input.location.pathname,\n },\n params: input.params,\n data: input.data || {},\n serverData: input.serverData,\n pageContext: input.pageContext,\n }\n}\n\n/**\n * Throw error if Head export is not a valid function\n */\nexport function headExportValidator(head) {\n if (typeof head !== `function`)\n throw new Error(\n `Expected \"Head\" export to be a function got \"${typeof head}\".`\n )\n}\n\n/**\n * Warn once for same messsage\n */\nlet warnOnce = _ => {}\nif (process.env.NODE_ENV !== `production`) {\n const warnings = new Set()\n warnOnce = msg => {\n if (!warnings.has(msg)) {\n console.warn(msg)\n }\n warnings.add(msg)\n }\n}\n\n/**\n * Warn for invalid tags in Head which may have been directly added or introduced by `wrapRootElement`\n * @param {string} tagName\n */\nexport function warnForInvalidTag(tagName) {\n if (process.env.NODE_ENV !== `production`) {\n const warning = createWarningForInvalidTag(tagName)\n warnOnce(warning)\n }\n}\n\nfunction createWarningForInvalidTag(tagName) {\n return `<${tagName}> is not a valid head element. Please use one of the following: ${VALID_NODE_NAMES.join(\n `, `\n )}.\\n\\nAlso make sure that wrapRootElement in gatsby-ssr/gatsby-browser doesn't contain UI elements: https://gatsby.dev/invalid-head-elements`\n}\n\n/**\n * When a `nonce` is present on an element, browsers such as Chrome and Firefox strip it out of the\n * actual HTML attributes for security reasons *when the element is added to the document*. Thus,\n * given two equivalent elements that have nonces, `Element,isEqualNode()` will return false if one\n * of those elements gets added to the document. Although the `element.nonce` property will be the\n * same for both elements, the one that was added to the document will return an empty string for\n * its nonce HTML attribute value.\n *\n * This custom `isEqualNode()` function therefore removes the nonce value from the `newTag` before\n * comparing it to `oldTag`, restoring it afterwards.\n *\n * For more information, see:\n * https://bugs.chromium.org/p/chromium/issues/detail?id=1211471#c12\n */\nexport function isEqualNode(oldTag, newTag) {\n if (oldTag instanceof HTMLElement && newTag instanceof HTMLElement) {\n const nonce = newTag.getAttribute(`nonce`)\n // Only strip the nonce if `oldTag` has had it stripped. An element's nonce attribute will not\n // be stripped if there is no content security policy response header that includes a nonce.\n if (nonce && !oldTag.getAttribute(`nonce`)) {\n const cloneTag = newTag.cloneNode(true)\n cloneTag.setAttribute(`nonce`, ``)\n cloneTag.nonce = nonce\n return nonce === oldTag.nonce && oldTag.isEqualNode(cloneTag)\n }\n }\n\n return oldTag.isEqualNode(newTag)\n}\n\nexport function diffNodes({ oldNodes, newNodes, onStale, onNew }) {\n for (const existingHeadElement of oldNodes) {\n const indexInNewNodes = newNodes.findIndex(e =>\n isEqualNode(e, existingHeadElement)\n )\n\n if (indexInNewNodes === -1) {\n onStale(existingHeadElement)\n } else {\n // this node is re-created as-is, so we keep old node, and remove it from list of new nodes (as we handled it already here)\n newNodes.splice(indexInNewNodes, 1)\n }\n }\n\n // remaing new nodes didn't have matching old node, so need to be added\n for (const newNode of newNodes) {\n onNew(newNode)\n }\n}\n\nexport function getValidHeadNodesAndAttributes(\n rootNode,\n htmlAndBodyAttributes = {\n html: {},\n body: {},\n }\n) {\n const seenIds = new Map()\n const validHeadNodes = []\n\n // Filter out non-element nodes before looping since we don't care about them\n for (const node of rootNode.childNodes) {\n const nodeName = node.nodeName.toLowerCase()\n const id = node.attributes?.id?.value\n\n if (!isElementType(node)) continue\n\n if (isValidNodeName(nodeName)) {\n // and tags are treated differently, in that we don't render them, we only extract the attributes and apply them separetely\n if (nodeName === `html` || nodeName === `body`) {\n for (const attribute of node.attributes) {\n const isStyleAttribute = attribute.name === `style`\n\n // Merge attributes for same nodeName from previous loop iteration\n htmlAndBodyAttributes[nodeName] = {\n ...htmlAndBodyAttributes[nodeName],\n }\n\n if (!isStyleAttribute) {\n htmlAndBodyAttributes[nodeName][attribute.name] = attribute.value\n }\n\n // If there is already a style attribute, we need to merge them as otherwise the last one will \"win\"\n if (isStyleAttribute) {\n htmlAndBodyAttributes[nodeName].style = `${\n htmlAndBodyAttributes[nodeName]?.style\n ? htmlAndBodyAttributes[nodeName].style\n : ``\n }${attribute.value} `\n }\n }\n } else {\n let clonedNode = node.cloneNode(true)\n clonedNode.setAttribute(`data-gatsby-head`, true)\n\n // // This is hack to make script tags work\n if (clonedNode.nodeName.toLowerCase() === `script`) {\n clonedNode = massageScript(clonedNode)\n }\n // Duplicate ids are not allowed in the head, so we need to dedupe them\n if (id) {\n if (!seenIds.has(id)) {\n validHeadNodes.push(clonedNode)\n seenIds.set(id, validHeadNodes.length - 1)\n } else {\n const indexOfPreviouslyInsertedNode = seenIds.get(id)\n validHeadNodes[\n indexOfPreviouslyInsertedNode\n ].parentNode?.removeChild(\n validHeadNodes[indexOfPreviouslyInsertedNode]\n )\n validHeadNodes[indexOfPreviouslyInsertedNode] = clonedNode\n }\n } else {\n validHeadNodes.push(clonedNode)\n }\n }\n } else {\n warnForInvalidTag(nodeName)\n }\n\n if (node.childNodes.length) {\n validHeadNodes.push(\n ...getValidHeadNodesAndAttributes(node, htmlAndBodyAttributes)\n .validHeadNodes\n )\n }\n }\n\n return { validHeadNodes, htmlAndBodyAttributes }\n}\n\nfunction massageScript(node) {\n const script = document.createElement(`script`)\n for (const attr of node.attributes) {\n script.setAttribute(attr.name, attr.value)\n }\n script.innerHTML = node.innerHTML\n\n return script\n}\n\nexport function isValidNodeName(nodeName) {\n return VALID_NODE_NAMES.includes(nodeName)\n}\n/*\n * For Head, we only care about element nodes(type = 1), so this util is used to skip over non-element nodes\n * For Node type, see https://developer.mozilla.org/en-US/docs/Web/API/Node/nodeType\n */\nexport function isElementType(node) {\n return node.nodeType === 1\n}\n\n/**\n * Removes all the head elements that were added by `Head`\n */\nexport function removePrevHeadElements() {\n const prevHeadNodes = document.querySelectorAll(`[data-gatsby-head]`)\n for (const node of prevHeadNodes) {\n node.parentNode.removeChild(node)\n }\n}\n\nexport function applyHtmlAndBodyAttributes(htmlAndBodyAttributes) {\n if (!htmlAndBodyAttributes) return\n\n const { html, body } = htmlAndBodyAttributes\n\n const htmlElement = document.querySelector(`html`)\n if (htmlElement) {\n Object.entries(html).forEach(([attributeName, attributeValue]) => {\n htmlElement.setAttribute(attributeName, attributeValue)\n })\n }\n\n const bodyElement = document.querySelector(`body`)\n if (bodyElement) {\n Object.entries(body).forEach(([attributeName, attributeValue]) => {\n bodyElement.setAttribute(attributeName, attributeValue)\n })\n }\n}\n\nexport function removeHtmlAndBodyAttributes(htmlAndBodyattributeList) {\n if (!htmlAndBodyattributeList) return\n\n const { html, body } = htmlAndBodyattributeList\n\n if (html) {\n const htmlElement = document.querySelector(`html`)\n html.forEach(attributeName => {\n if (htmlElement) {\n htmlElement.removeAttribute(attributeName)\n }\n })\n }\n\n if (body) {\n const bodyElement = document.querySelector(`body`)\n body.forEach(attributeName => {\n if (bodyElement) {\n bodyElement.removeAttribute(attributeName)\n }\n })\n }\n}\n","import React from \"react\"\nimport { useEffect } from \"react\"\nimport { StaticQueryContext } from \"gatsby\"\nimport { LocationProvider } from \"@gatsbyjs/reach-router\"\nimport { reactDOMUtils } from \"../react-dom-utils\"\nimport { FireCallbackInEffect } from \"./components/fire-callback-in-effect\"\nimport {\n headExportValidator,\n filterHeadProps,\n diffNodes,\n getValidHeadNodesAndAttributes,\n removePrevHeadElements,\n applyHtmlAndBodyAttributes,\n removeHtmlAndBodyAttributes,\n} from \"./utils\"\nimport { apiRunner } from \"../api-runner-browser\"\n\nconst hiddenRoot = document.createElement(`div`)\nconst keysOfHtmlAndBodyAttributes = {\n html: [],\n body: [],\n}\n\nconst onHeadRendered = () => {\n const { validHeadNodes, htmlAndBodyAttributes } =\n getValidHeadNodesAndAttributes(hiddenRoot)\n\n keysOfHtmlAndBodyAttributes.html = Object.keys(htmlAndBodyAttributes.html)\n keysOfHtmlAndBodyAttributes.body = Object.keys(htmlAndBodyAttributes.body)\n\n applyHtmlAndBodyAttributes(htmlAndBodyAttributes)\n\n /**\n * The rest of the code block below is a diffing mechanism to ensure that\n * the head elements aren't duplicted on every re-render.\n */\n const existingHeadElements = document.querySelectorAll(`[data-gatsby-head]`)\n\n if (existingHeadElements.length === 0) {\n document.head.append(...validHeadNodes)\n return\n }\n\n const newHeadNodes = []\n diffNodes({\n oldNodes: existingHeadElements,\n newNodes: validHeadNodes,\n onStale: node => node.parentNode.removeChild(node),\n onNew: node => newHeadNodes.push(node),\n })\n\n document.head.append(...newHeadNodes)\n}\n\nif (process.env.BUILD_STAGE === `develop`) {\n // sigh ... and elements are not valid descedents of
(our hidden element)\n // react-dom in dev mode will warn about this. There doesn't seem to be a way to render arbitrary\n // user Head without hitting this issue (our hidden element could be just \"new Document()\", but\n // this can only have 1 child, and we don't control what is being rendered so that's not an option)\n // instead we continue to render to
, and just silence warnings for and elements\n // https://github.com/facebook/react/blob/e2424f33b3ad727321fc12e75c5e94838e84c2b5/packages/react-dom-bindings/src/client/validateDOMNesting.js#L498-L520\n const originalConsoleError = console.error.bind(console)\n console.error = (...args) => {\n if (\n Array.isArray(args) &&\n args.length >= 2 &&\n args[0]?.includes?.(`validateDOMNesting(...): %s cannot appear as`) &&\n (args[1] === `` || args[1] === ``)\n ) {\n return undefined\n }\n return originalConsoleError(...args)\n }\n\n /* We set up observer to be able to regenerate after react-refresh\n updates our hidden element.\n */\n const observer = new MutationObserver(onHeadRendered)\n observer.observe(hiddenRoot, {\n attributes: true,\n childList: true,\n characterData: true,\n subtree: true,\n })\n}\n\nexport function headHandlerForBrowser({\n pageComponent,\n staticQueryResults,\n pageComponentProps,\n}) {\n useEffect(() => {\n if (pageComponent?.Head) {\n headExportValidator(pageComponent.Head)\n\n const { render } = reactDOMUtils()\n\n const HeadElement = (\n \n )\n\n const WrapHeadElement = apiRunner(\n `wrapRootElement`,\n { element: HeadElement },\n HeadElement,\n ({ result }) => {\n return { element: result }\n }\n ).pop()\n\n render(\n // just a hack to call the callback after react has done first render\n // Note: In dev, we call onHeadRendered twice( in FireCallbackInEffect and after mutualution observer dectects initail render into hiddenRoot) this is for hot reloading\n // In Prod we only call onHeadRendered in FireCallbackInEffect to render to head\n \n \n {WrapHeadElement}\n \n ,\n hiddenRoot\n )\n }\n\n return () => {\n removePrevHeadElements()\n removeHtmlAndBodyAttributes(keysOfHtmlAndBodyAttributes)\n }\n })\n}\n","import React, { Suspense, createElement } from \"react\"\nimport PropTypes from \"prop-types\"\nimport { apiRunner } from \"./api-runner-browser\"\nimport { grabMatchParams } from \"./find-path\"\nimport { headHandlerForBrowser } from \"./head/head-export-handler-for-browser\"\n\n// Renders page\nfunction PageRenderer(props) {\n const pageComponentProps = {\n ...props,\n params: {\n ...grabMatchParams(props.location.pathname),\n ...props.pageResources.json.pageContext.__params,\n },\n }\n\n const preferDefault = m => (m && m.default) || m\n\n let pageElement\n if (props.pageResources.partialHydration) {\n pageElement = props.pageResources.partialHydration\n } else {\n pageElement = createElement(preferDefault(props.pageResources.component), {\n ...pageComponentProps,\n key: props.path || props.pageResources.page.path,\n })\n }\n\n const pageComponent = props.pageResources.head\n\n headHandlerForBrowser({\n pageComponent,\n staticQueryResults: props.pageResources.staticQueryResults,\n pageComponentProps,\n })\n\n const wrappedPage = apiRunner(\n `wrapPageElement`,\n {\n element: pageElement,\n props: pageComponentProps,\n },\n pageElement,\n ({ result }) => {\n return { element: result, props: pageComponentProps }\n }\n ).pop()\n\n return wrappedPage\n}\n\nPageRenderer.propTypes = {\n location: PropTypes.object.isRequired,\n pageResources: PropTypes.object.isRequired,\n data: PropTypes.object,\n pageContext: PropTypes.object.isRequired,\n}\n\nexport default PageRenderer\n","// This is extracted to separate module because it's shared\n// between browser and SSR code\nexport const RouteAnnouncerProps = {\n id: `gatsby-announcer`,\n style: {\n position: `absolute`,\n top: 0,\n width: 1,\n height: 1,\n padding: 0,\n overflow: `hidden`,\n clip: `rect(0, 0, 0, 0)`,\n whiteSpace: `nowrap`,\n border: 0,\n },\n \"aria-live\": `assertive`,\n \"aria-atomic\": `true`,\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport loader, { PageResourceStatus } from \"./loader\"\nimport { maybeGetBrowserRedirect } from \"./redirect-utils.js\"\nimport { apiRunner } from \"./api-runner-browser\"\nimport emitter from \"./emitter\"\nimport { RouteAnnouncerProps } from \"./route-announcer-props\"\nimport {\n navigate as reachNavigate,\n globalHistory,\n} from \"@gatsbyjs/reach-router\"\nimport { parsePath } from \"gatsby-link\"\n\nfunction maybeRedirect(pathname) {\n const redirect = maybeGetBrowserRedirect(pathname)\n const { hash, search } = window.location\n\n if (redirect != null) {\n window.___replace(redirect.toPath + search + hash)\n return true\n } else {\n return false\n }\n}\n\n// Catch unhandled chunk loading errors and force a restart of the app.\nlet nextRoute = ``\n\nwindow.addEventListener(`unhandledrejection`, event => {\n if (/loading chunk \\d* failed./i.test(event.reason)) {\n if (nextRoute) {\n window.location.pathname = nextRoute\n }\n }\n})\n\nconst onPreRouteUpdate = (location, prevLocation) => {\n if (!maybeRedirect(location.pathname)) {\n nextRoute = location.pathname\n apiRunner(`onPreRouteUpdate`, { location, prevLocation })\n }\n}\n\nconst onRouteUpdate = (location, prevLocation) => {\n if (!maybeRedirect(location.pathname)) {\n apiRunner(`onRouteUpdate`, { location, prevLocation })\n if (\n process.env.GATSBY_QUERY_ON_DEMAND &&\n process.env.GATSBY_QUERY_ON_DEMAND_LOADING_INDICATOR === `true`\n ) {\n emitter.emit(`onRouteUpdate`, { location, prevLocation })\n }\n }\n}\n\nconst navigate = (to, options = {}) => {\n // Support forward/backward navigation with numbers\n // navigate(-2) (jumps back 2 history steps)\n // navigate(2) (jumps forward 2 history steps)\n if (typeof to === `number`) {\n globalHistory.navigate(to)\n return\n }\n\n const { pathname, search, hash } = parsePath(to)\n const redirect = maybeGetBrowserRedirect(pathname)\n\n // If we're redirecting, just replace the passed in pathname\n // to the one we want to redirect to.\n if (redirect) {\n to = redirect.toPath + search + hash\n }\n\n // If we had a service worker update, no matter the path, reload window and\n // reset the pathname whitelist\n if (window.___swUpdated) {\n window.location = pathname + search + hash\n return\n }\n\n // Start a timer to wait for a second before transitioning and showing a\n // loader in case resources aren't around yet.\n const timeoutId = setTimeout(() => {\n emitter.emit(`onDelayedLoadPageResources`, { pathname })\n apiRunner(`onRouteUpdateDelayed`, {\n location: window.location,\n })\n }, 1000)\n\n loader.loadPage(pathname + search).then(pageResources => {\n // If no page resources, then refresh the page\n // Do this, rather than simply `window.location.reload()`, so that\n // pressing the back/forward buttons work - otherwise when pressing\n // back, the browser will just change the URL and expect JS to handle\n // the change, which won't always work since it might not be a Gatsby\n // page.\n if (!pageResources || pageResources.status === PageResourceStatus.Error) {\n window.history.replaceState({}, ``, location.href)\n window.location = pathname\n clearTimeout(timeoutId)\n return\n }\n\n // If the loaded page has a different compilation hash to the\n // window, then a rebuild has occurred on the server. Reload.\n if (process.env.NODE_ENV === `production` && pageResources) {\n if (\n pageResources.page.webpackCompilationHash !==\n window.___webpackCompilationHash\n ) {\n // Purge plugin-offline cache\n if (\n `serviceWorker` in navigator &&\n navigator.serviceWorker.controller !== null &&\n navigator.serviceWorker.controller.state === `activated`\n ) {\n navigator.serviceWorker.controller.postMessage({\n gatsbyApi: `clearPathResources`,\n })\n }\n\n window.location = pathname + search + hash\n }\n }\n reachNavigate(to, options)\n clearTimeout(timeoutId)\n })\n}\n\nfunction shouldUpdateScroll(prevRouterProps, { location }) {\n const { pathname, hash } = location\n const results = apiRunner(`shouldUpdateScroll`, {\n prevRouterProps,\n // `pathname` for backwards compatibility\n pathname,\n routerProps: { location },\n getSavedScrollPosition: args => [\n 0,\n // FIXME this is actually a big code smell, we should fix this\n // eslint-disable-next-line @babel/no-invalid-this\n this._stateStorage.read(args, args.key),\n ],\n })\n if (results.length > 0) {\n // Use the latest registered shouldUpdateScroll result, this allows users to override plugin's configuration\n // @see https://github.com/gatsbyjs/gatsby/issues/12038\n return results[results.length - 1]\n }\n\n if (prevRouterProps) {\n const {\n location: { pathname: oldPathname },\n } = prevRouterProps\n if (oldPathname === pathname) {\n // Scroll to element if it exists, if it doesn't, or no hash is provided,\n // scroll to top.\n return hash ? decodeURI(hash.slice(1)) : [0, 0]\n }\n }\n return true\n}\n\nfunction init() {\n // The \"scroll-behavior\" package expects the \"action\" to be on the location\n // object so let's copy it over.\n globalHistory.listen(args => {\n args.location.action = args.action\n })\n\n window.___push = to => navigate(to, { replace: false })\n window.___replace = to => navigate(to, { replace: true })\n window.___navigate = (to, options) => navigate(to, options)\n}\n\nclass RouteAnnouncer extends React.Component {\n constructor(props) {\n super(props)\n this.announcementRef = React.createRef()\n }\n\n componentDidUpdate(prevProps, nextProps) {\n requestAnimationFrame(() => {\n let pageName = `new page at ${this.props.location.pathname}`\n if (document.title) {\n pageName = document.title\n }\n const pageHeadings = document.querySelectorAll(`#gatsby-focus-wrapper h1`)\n if (pageHeadings && pageHeadings.length) {\n pageName = pageHeadings[0].textContent\n }\n const newAnnouncement = `Navigated to ${pageName}`\n if (this.announcementRef.current) {\n const oldAnnouncement = this.announcementRef.current.innerText\n if (oldAnnouncement !== newAnnouncement) {\n this.announcementRef.current.innerText = newAnnouncement\n }\n }\n })\n }\n\n render() {\n return
\n }\n}\n\nconst compareLocationProps = (prevLocation, nextLocation) => {\n if (prevLocation.href !== nextLocation.href) {\n return true\n }\n\n if (prevLocation?.state?.key !== nextLocation?.state?.key) {\n return true\n }\n\n return false\n}\n\n// Fire on(Pre)RouteUpdate APIs\nclass RouteUpdates extends React.Component {\n constructor(props) {\n super(props)\n onPreRouteUpdate(props.location, null)\n }\n\n componentDidMount() {\n onRouteUpdate(this.props.location, null)\n }\n\n shouldComponentUpdate(nextProps) {\n if (compareLocationProps(this.props.location, nextProps.location)) {\n onPreRouteUpdate(nextProps.location, this.props.location)\n return true\n }\n return false\n }\n\n componentDidUpdate(prevProps) {\n if (compareLocationProps(prevProps.location, this.props.location)) {\n onRouteUpdate(this.props.location, prevProps.location)\n }\n }\n\n render() {\n return (\n \n {this.props.children}\n \n \n )\n }\n}\n\nRouteUpdates.propTypes = {\n location: PropTypes.object.isRequired,\n}\n\nexport { init, shouldUpdateScroll, RouteUpdates, maybeGetBrowserRedirect }\n","// Pulled from react-compat\n// https://github.com/developit/preact-compat/blob/7c5de00e7c85e2ffd011bf3af02899b63f699d3a/src/index.js#L349\nfunction shallowDiffers(a, b) {\n for (var i in a) {\n if (!(i in b)) return true;\n }for (var _i in b) {\n if (a[_i] !== b[_i]) return true;\n }return false;\n}\n\nexport default (function (instance, nextProps, nextState) {\n return shallowDiffers(instance.props, nextProps) || shallowDiffers(instance.state, nextState);\n});","import React from \"react\"\nimport loader, { PageResourceStatus } from \"./loader\"\nimport shallowCompare from \"shallow-compare\"\n\nclass EnsureResources extends React.Component {\n constructor(props) {\n super()\n const { location, pageResources } = props\n this.state = {\n location: { ...location },\n pageResources:\n pageResources ||\n loader.loadPageSync(location.pathname + location.search, {\n withErrorDetails: true,\n }),\n }\n }\n\n static getDerivedStateFromProps({ location }, prevState) {\n if (prevState.location.href !== location.href) {\n const pageResources = loader.loadPageSync(\n location.pathname + location.search,\n {\n withErrorDetails: true,\n }\n )\n\n return {\n pageResources,\n location: { ...location },\n }\n }\n\n return {\n location: { ...location },\n }\n }\n\n loadResources(rawPath) {\n loader.loadPage(rawPath).then(pageResources => {\n if (pageResources && pageResources.status !== PageResourceStatus.Error) {\n this.setState({\n location: { ...window.location },\n pageResources,\n })\n } else {\n window.history.replaceState({}, ``, location.href)\n window.location = rawPath\n }\n })\n }\n\n shouldComponentUpdate(nextProps, nextState) {\n // Always return false if we're missing resources.\n if (!nextState.pageResources) {\n this.loadResources(\n nextProps.location.pathname + nextProps.location.search\n )\n return false\n }\n\n if (\n process.env.BUILD_STAGE === `develop` &&\n nextState.pageResources.stale\n ) {\n this.loadResources(\n nextProps.location.pathname + nextProps.location.search\n )\n return false\n }\n\n // Check if the component or json have changed.\n if (this.state.pageResources !== nextState.pageResources) {\n return true\n }\n if (\n this.state.pageResources.component !== nextState.pageResources.component\n ) {\n return true\n }\n\n if (this.state.pageResources.json !== nextState.pageResources.json) {\n return true\n }\n // Check if location has changed on a page using internal routing\n // via matchPath configuration.\n if (\n this.state.location.key !== nextState.location.key &&\n nextState.pageResources.page &&\n (nextState.pageResources.page.matchPath ||\n nextState.pageResources.page.path)\n ) {\n return true\n }\n return shallowCompare(this, nextProps, nextState)\n }\n\n render() {\n if (\n process.env.NODE_ENV !== `production` &&\n (!this.state.pageResources ||\n this.state.pageResources.status === PageResourceStatus.Error)\n ) {\n const message = `EnsureResources was not able to find resources for path: \"${this.props.location.pathname}\"\nThis typically means that an issue occurred building components for that path.\nRun \\`gatsby clean\\` to remove any cached elements.`\n if (this.state.pageResources?.error) {\n console.error(message)\n throw this.state.pageResources.error\n }\n\n throw new Error(message)\n }\n\n return this.props.children(this.state)\n }\n}\n\nexport default EnsureResources\n","import { apiRunner, apiRunnerAsync } from \"./api-runner-browser\"\nimport React from \"react\"\nimport { Router, navigate, Location, BaseContext } from \"@gatsbyjs/reach-router\"\nimport { ScrollContext } from \"gatsby-react-router-scroll\"\nimport { StaticQueryContext } from \"./static-query\"\nimport {\n SlicesMapContext,\n SlicesContext,\n SlicesResultsContext,\n} from \"./slice/context\"\nimport {\n shouldUpdateScroll,\n init as navigationInit,\n RouteUpdates,\n} from \"./navigation\"\nimport emitter from \"./emitter\"\nimport PageRenderer from \"./page-renderer\"\nimport asyncRequires from \"$virtual/async-requires\"\nimport {\n setLoader,\n ProdLoader,\n publicLoader,\n PageResourceStatus,\n getStaticQueryResults,\n getSliceResults,\n} from \"./loader\"\nimport EnsureResources from \"./ensure-resources\"\nimport stripPrefix from \"./strip-prefix\"\n\n// Generated during bootstrap\nimport matchPaths from \"$virtual/match-paths.json\"\nimport { reactDOMUtils } from \"./react-dom-utils\"\n\nconst loader = new ProdLoader(asyncRequires, matchPaths, window.pageData)\nsetLoader(loader)\nloader.setApiRunner(apiRunner)\n\nconst { render, hydrate } = reactDOMUtils()\n\nwindow.asyncRequires = asyncRequires\nwindow.___emitter = emitter\nwindow.___loader = publicLoader\n\nnavigationInit()\n\nconst reloadStorageKey = `gatsby-reload-compilation-hash-match`\n\napiRunnerAsync(`onClientEntry`).then(() => {\n // Let plugins register a service worker. The plugin just needs\n // to return true.\n if (apiRunner(`registerServiceWorker`).filter(Boolean).length > 0) {\n require(`./register-service-worker`)\n }\n\n // In gatsby v2 if Router is used in page using matchPaths\n // paths need to contain full path.\n // For example:\n // - page have `/app/*` matchPath\n // - inside template user needs to use `/app/xyz` as path\n // Resetting `basepath`/`baseuri` keeps current behaviour\n // to not introduce breaking change.\n // Remove this in v3\n const RouteHandler = props => (\n \n \n \n )\n\n const DataContext = React.createContext({})\n\n const slicesContext = {\n renderEnvironment: `browser`,\n }\n\n class GatsbyRoot extends React.Component {\n render() {\n const { children } = this.props\n return (\n \n {({ location }) => (\n \n {({ pageResources, location }) => {\n const staticQueryResults = getStaticQueryResults()\n const sliceResults = getSliceResults()\n\n return (\n \n \n \n \n \n {children}\n \n \n \n \n \n )\n }}\n \n )}\n \n )\n }\n }\n\n class LocationHandler extends React.Component {\n render() {\n return (\n \n {({ pageResources, location }) => (\n \n \n \n \n \n \n \n )}\n \n )\n }\n }\n\n const { pagePath, location: browserLoc } = window\n\n // Explicitly call navigate if the canonical path (window.pagePath)\n // is different to the browser path (window.location.pathname). SSR\n // page paths might include search params, while SSG and DSG won't.\n // If page path include search params we also compare query params.\n // But only if NONE of the following conditions hold:\n //\n // - The url matches a client side route (page.matchPath)\n // - it's a 404 page\n // - it's the offline plugin shell (/offline-plugin-app-shell-fallback/)\n if (\n pagePath &&\n __BASE_PATH__ + pagePath !==\n browserLoc.pathname + (pagePath.includes(`?`) ? browserLoc.search : ``) &&\n !(\n loader.findMatchPath(stripPrefix(browserLoc.pathname, __BASE_PATH__)) ||\n pagePath.match(/^\\/(404|500)(\\/?|.html)$/) ||\n pagePath.match(/^\\/offline-plugin-app-shell-fallback\\/?$/)\n )\n ) {\n navigate(\n __BASE_PATH__ +\n pagePath +\n (!pagePath.includes(`?`) ? browserLoc.search : ``) +\n browserLoc.hash,\n {\n replace: true,\n }\n )\n }\n\n // It's possible that sessionStorage can throw an exception if access is not granted, see https://github.com/gatsbyjs/gatsby/issues/34512\n const getSessionStorage = () => {\n try {\n return sessionStorage\n } catch {\n return null\n }\n }\n\n publicLoader.loadPage(browserLoc.pathname + browserLoc.search).then(page => {\n const sessionStorage = getSessionStorage()\n\n if (\n page?.page?.webpackCompilationHash &&\n page.page.webpackCompilationHash !== window.___webpackCompilationHash\n ) {\n // Purge plugin-offline cache\n if (\n `serviceWorker` in navigator &&\n navigator.serviceWorker.controller !== null &&\n navigator.serviceWorker.controller.state === `activated`\n ) {\n navigator.serviceWorker.controller.postMessage({\n gatsbyApi: `clearPathResources`,\n })\n }\n\n // We have not matching html + js (inlined `window.___webpackCompilationHash`)\n // with our data (coming from `app-data.json` file). This can cause issues such as\n // errors trying to load static queries (as list of static queries is inside `page-data`\n // which might not match to currently loaded `.js` scripts).\n // We are making attempt to reload if hashes don't match, but we also have to handle case\n // when reload doesn't fix it (possibly broken deploy) so we don't end up in infinite reload loop\n if (sessionStorage) {\n const isReloaded = sessionStorage.getItem(reloadStorageKey) === `1`\n\n if (!isReloaded) {\n sessionStorage.setItem(reloadStorageKey, `1`)\n window.location.reload(true)\n return\n }\n }\n }\n\n if (sessionStorage) {\n sessionStorage.removeItem(reloadStorageKey)\n }\n\n if (!page || page.status === PageResourceStatus.Error) {\n const message = `page resources for ${browserLoc.pathname} not found. Not rendering React`\n\n // if the chunk throws an error we want to capture the real error\n // This should help with https://github.com/gatsbyjs/gatsby/issues/19618\n if (page && page.error) {\n console.error(message)\n throw page.error\n }\n\n throw new Error(message)\n }\n\n const SiteRoot = apiRunner(\n `wrapRootElement`,\n { element: },\n ,\n ({ result }) => {\n return { element: result }\n }\n ).pop()\n\n const App = function App() {\n const onClientEntryRanRef = React.useRef(false)\n\n React.useEffect(() => {\n if (!onClientEntryRanRef.current) {\n onClientEntryRanRef.current = true\n if (performance.mark) {\n performance.mark(`onInitialClientRender`)\n }\n\n apiRunner(`onInitialClientRender`)\n }\n }, [])\n\n return {SiteRoot}\n }\n\n const focusEl = document.getElementById(`gatsby-focus-wrapper`)\n\n // Client only pages have any empty body so we just do a normal\n // render to avoid React complaining about hydration mis-matches.\n let defaultRenderer = render\n if (focusEl && focusEl.children.length) {\n defaultRenderer = hydrate\n }\n\n const renderer = apiRunner(\n `replaceHydrateFunction`,\n undefined,\n defaultRenderer\n )[0]\n\n function runRender() {\n const rootElement =\n typeof window !== `undefined`\n ? document.getElementById(`___gatsby`)\n : null\n\n renderer(, rootElement)\n }\n\n // https://github.com/madrobby/zepto/blob/b5ed8d607f67724788ec9ff492be297f64d47dfc/src/zepto.js#L439-L450\n // TODO remove IE 10 support\n const doc = document\n if (\n doc.readyState === `complete` ||\n (doc.readyState !== `loading` && !doc.documentElement.doScroll)\n ) {\n setTimeout(function () {\n runRender()\n }, 0)\n } else {\n const handler = function () {\n doc.removeEventListener(`DOMContentLoaded`, handler, false)\n window.removeEventListener(`load`, handler, false)\n\n runRender()\n }\n\n doc.addEventListener(`DOMContentLoaded`, handler, false)\n window.addEventListener(`load`, handler, false)\n }\n\n return\n })\n})\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nimport loader from \"./loader\"\nimport InternalPageRenderer from \"./page-renderer\"\n\nconst ProdPageRenderer = ({ location }) => {\n const pageResources = loader.loadPageSync(location.pathname)\n if (!pageResources) {\n return null\n }\n return React.createElement(InternalPageRenderer, {\n location,\n pageResources,\n ...pageResources.json,\n })\n}\n\nProdPageRenderer.propTypes = {\n location: PropTypes.shape({\n pathname: PropTypes.string.isRequired,\n }).isRequired,\n}\n\nexport default ProdPageRenderer\n","const preferDefault = m => (m && m.default) || m\n\nif (process.env.BUILD_STAGE === `develop`) {\n module.exports = preferDefault(require(`./public-page-renderer-dev`))\n} else if (process.env.BUILD_STAGE === `build-javascript`) {\n module.exports = preferDefault(require(`./public-page-renderer-prod`))\n} else {\n module.exports = () => null\n}\n","const map = new WeakMap()\n\nexport function reactDOMUtils() {\n const reactDomClient = require(`react-dom/client`)\n\n const render = (Component, el) => {\n let root = map.get(el)\n if (!root) {\n map.set(el, (root = reactDomClient.createRoot(el)))\n }\n root.render(Component)\n }\n\n const hydrate = (Component, el) => reactDomClient.hydrateRoot(el, Component)\n\n return { render, hydrate }\n}\n","import redirects from \"./redirects.json\"\n\n// Convert to a map for faster lookup in maybeRedirect()\n\nconst redirectMap = new Map()\nconst redirectIgnoreCaseMap = new Map()\n\nredirects.forEach(redirect => {\n if (redirect.ignoreCase) {\n redirectIgnoreCaseMap.set(redirect.fromPath, redirect)\n } else {\n redirectMap.set(redirect.fromPath, redirect)\n }\n})\n\nexport function maybeGetBrowserRedirect(pathname) {\n let redirect = redirectMap.get(pathname)\n if (!redirect) {\n redirect = redirectIgnoreCaseMap.get(pathname.toLowerCase())\n }\n return redirect\n}\n","import { apiRunner } from \"./api-runner-browser\"\n\nif (\n window.location.protocol !== `https:` &&\n window.location.hostname !== `localhost`\n) {\n console.error(\n `Service workers can only be used over HTTPS, or on localhost for development`\n )\n} else if (`serviceWorker` in navigator) {\n navigator.serviceWorker\n .register(`${__BASE_PATH__}/sw.js`)\n .then(function (reg) {\n reg.addEventListener(`updatefound`, () => {\n apiRunner(`onServiceWorkerUpdateFound`, { serviceWorker: reg })\n // The updatefound event implies that reg.installing is set; see\n // https://w3c.github.io/ServiceWorker/#service-worker-registration-updatefound-event\n const installingWorker = reg.installing\n console.log(`installingWorker`, installingWorker)\n installingWorker.addEventListener(`statechange`, () => {\n switch (installingWorker.state) {\n case `installed`:\n if (navigator.serviceWorker.controller) {\n // At this point, the old content will have been purged and the fresh content will\n // have been added to the cache.\n\n // We set a flag so Gatsby Link knows to refresh the page on next navigation attempt\n window.___swUpdated = true\n // We call the onServiceWorkerUpdateReady API so users can show update prompts.\n apiRunner(`onServiceWorkerUpdateReady`, { serviceWorker: reg })\n\n // If resources failed for the current page, reload.\n if (window.___failedResources) {\n console.log(`resources failed, SW updated - reloading`)\n window.location.reload()\n }\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a \"Content is cached for offline use.\" message.\n console.log(`Content is now available offline!`)\n\n // Post to service worker that install is complete.\n // Delay to allow time for the event listener to be added --\n // otherwise fetch is called too soon and resources aren't cached.\n apiRunner(`onServiceWorkerInstalled`, { serviceWorker: reg })\n }\n break\n\n case `redundant`:\n console.error(`The installing service worker became redundant.`)\n apiRunner(`onServiceWorkerRedundant`, { serviceWorker: reg })\n break\n\n case `activated`:\n apiRunner(`onServiceWorkerActive`, { serviceWorker: reg })\n break\n }\n })\n })\n })\n .catch(function (e) {\n console.error(`Error during service worker registration:`, e)\n })\n}\n","import React from \"react\"\n\nconst SlicesResultsContext = React.createContext({})\nconst SlicesContext = React.createContext({})\nconst SlicesMapContext = React.createContext({})\nconst SlicesPropsContext = React.createContext({})\n\nexport {\n SlicesResultsContext,\n SlicesContext,\n SlicesMapContext,\n SlicesPropsContext,\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport { createServerOrClientContext } from \"./context-utils\"\n\nconst StaticQueryContext = createServerOrClientContext(`StaticQuery`, {})\n\nfunction StaticQueryDataRenderer({ staticQueryData, data, query, render }) {\n const finalData = data\n ? data.data\n : staticQueryData[query] && staticQueryData[query].data\n\n return (\n \n {finalData && render(finalData)}\n {!finalData &&
Loading (StaticQuery)
}\n
\n )\n}\n\nlet warnedAboutStaticQuery = false\n\n// TODO(v6): Remove completely\nconst StaticQuery = props => {\n const { data, query, render, children } = props\n\n if (process.env.NODE_ENV === `development` && !warnedAboutStaticQuery) {\n console.warn(\n `The component is deprecated and will be removed in Gatsby v6. Use useStaticQuery instead. Refer to the migration guide for more information: https://gatsby.dev/migrating-4-to-5/#staticquery--is-deprecated`\n )\n warnedAboutStaticQuery = true\n }\n\n return (\n \n {staticQueryData => (\n \n )}\n \n )\n}\n\nStaticQuery.propTypes = {\n data: PropTypes.object,\n query: PropTypes.string.isRequired,\n render: PropTypes.func,\n children: PropTypes.func,\n}\n\nconst useStaticQuery = query => {\n if (\n typeof React.useContext !== `function` &&\n process.env.NODE_ENV === `development`\n ) {\n // TODO(v5): Remove since we require React >= 18\n throw new Error(\n `You're likely using a version of React that doesn't support Hooks\\n` +\n `Please update React and ReactDOM to 16.8.0 or later to use the useStaticQuery hook.`\n )\n }\n\n const context = React.useContext(StaticQueryContext)\n\n // query is a stringified number like `3303882` when wrapped with graphql, If a user forgets\n // to wrap the query in a grqphql, then casting it to a Number results in `NaN` allowing us to\n // catch the misuse of the API and give proper direction\n if (isNaN(Number(query))) {\n throw new Error(`useStaticQuery was called with a string but expects to be called using \\`graphql\\`. Try this:\n\nimport { useStaticQuery, graphql } from 'gatsby';\n\nuseStaticQuery(graphql\\`${query}\\`);\n`)\n }\n\n if (context[query]?.data) {\n return context[query].data\n } else {\n throw new Error(\n `The result of this StaticQuery could not be fetched.\\n\\n` +\n `This is likely a bug in Gatsby and if refreshing the page does not fix it, ` +\n `please open an issue in https://github.com/gatsbyjs/gatsby/issues`\n )\n }\n}\n\nexport { StaticQuery, StaticQueryContext, useStaticQuery }\n","import React from \"react\"\n\n// Ensure serverContext is not created more than once as React will throw when creating it more than once\n// https://github.com/facebook/react/blob/dd2d6522754f52c70d02c51db25eb7cbd5d1c8eb/packages/react/src/ReactServerContext.js#L101\nconst createServerContext = (name, defaultValue = null) => {\n /* eslint-disable no-undef */\n if (!globalThis.__SERVER_CONTEXT) {\n globalThis.__SERVER_CONTEXT = {}\n }\n\n if (!globalThis.__SERVER_CONTEXT[name]) {\n globalThis.__SERVER_CONTEXT[name] = React.createServerContext(\n name,\n defaultValue\n )\n }\n\n return globalThis.__SERVER_CONTEXT[name]\n}\n\nfunction createServerOrClientContext(name, defaultValue) {\n if (React.createServerContext) {\n return createServerContext(name, defaultValue)\n }\n\n return React.createContext(defaultValue)\n}\n\nexport { createServerOrClientContext }\n","/**\n * Remove a prefix from a string. Return the input string if the given prefix\n * isn't found.\n */\n\nexport default function stripPrefix(str, prefix = ``) {\n if (!prefix) {\n return str\n }\n\n if (str === prefix) {\n return `/`\n }\n\n if (str.startsWith(`${prefix}/`)) {\n return str.slice(prefix.length)\n }\n\n return str\n}\n","// extracted by mini-css-extract-plugin\nexport var CompanyMenuLogo = \"Header-module--CompanyMenuLogo--675b0\";\nexport var HeaderBtnSection = \"Header-module--HeaderBtnSection--dc592\";\nexport var HideHeader = \"Header-module--HideHeader--7ff6f\";\nexport var HomeLinkNav = \"Header-module--HomeLinkNav--ba3d3\";\nexport var MenuActive = \"Header-module--MenuActive--0a669\";\nexport var MenuContainer = \"Header-module--MenuContainer--89e30\";\nexport var MenuOpen = \"Header-module--MenuOpen--59e69\";\nexport var NavVisited = \"Header-module--NavVisited--94b32\";\nexport var SocialMediaLinks = \"Header-module--SocialMediaLinks--df286\";\nexport var copyrights = \"Header-module--copyrights--118b9\";\nexport var dot = \"Header-module--dot--52d28\";\nexport var dotWrap = \"Header-module--dotWrap--306ff\";\nexport var headerConnectBtn = \"Header-module--headerConnectBtn--14f6d\";\nexport var headerContainer = \"Header-module--headerContainer--69d29\";\nexport var headerWrapper = \"Header-module--headerWrapper--b4bef\";\nexport var hiddenActive = \"Header-module--hiddenActive--e885d\";\nexport var hover = \"Header-module--hover--3decd\";\nexport var logo = \"Header-module--logo--79f8a\";\nexport var mobileMenuRules = \"Header-module--mobileMenuRules--1d86f\";\nexport var mobileMenuWrap = \"Header-module--mobileMenuWrap--f6837\";\nexport var navMenuLinks = \"Header-module--navMenuLinks--2999d\";\nexport var navbar = \"Header-module--navbar--89582\";\nexport var pageLink = \"Header-module--pageLink--3bbb2\";\nexport var policyTerms = \"Header-module--policyTerms--6cb75\";\nexport var rightSection = \"Header-module--rightSection--f03ac\";","import { Link } from \"gatsby\";\nimport React from \"react\";\nimport { RenderSvg } from \"../../helpers/helper\";\n\nconst MenuBar = ({\n headermenu,\n polics_terms,\n companylogo,\n handleMenu,\n styles,\n copyRights,\n companyLogoMenu,\n SocialMediaLinks,\n handleProductsClick,\n}) => {\n const handleProducts = () => {\n handleProductsClick(true);\n };\n\n //usecase will be removed and products component will come\n const componentOrder = [\n \"home\",\n \"usecases\",\n \"platform\",\n // \"ai-at-kpoint\",\n \"content-center\",\n \"about\",\n \"resources\",\n \"careers\",\n \"contact-us\",\n ];\n\n const sortedContent = [...headermenu?.items].sort((a, b) => {\n return componentOrder.indexOf(a.slug) - componentOrder.indexOf(b.slug);\n });\n\n return (\n
\n
\n
    \n {sortedContent?.map((data, index) => {\n const { slug: pageName, page } = data;\n\n const linkPath =\n pageName === \"privacy\" || pageName === \"compilance\"\n ? null\n : `/${pageName}`;\n\n let displayTitle = page?.Title || pageName;\n if (displayTitle === \"usecases\" || displayTitle === \"Use Cases\") {\n displayTitle = \"products\";\n }\n\n if (displayTitle.toLowerCase() === \"products\") {\n return (\n
  • \n \n {displayTitle}\n \n \n
  • \n );\n }\n return (\n \n {linkPath && (\n
  • \n handleMenu()}>\n {displayTitle}\n \n
  • \n )}\n
    \n );\n })}\n
\n
\n
\n {SocialMediaLinks?.map((e, i) => {\n const { url, label, OpenInNewTab } = e;\n return (\n handleMenu()}\n href={url}\n target={OpenInNewTab ? \"_blank\" : \"_self\"}\n rel=\"noopener noreferrer\"\n >\n \n \n );\n })}\n
\n
\n
\n

{copyRights}

\n
\n
\n {polics_terms?.map((data, index) => {\n const { label, OpenInNewTab } = data;\n\n return (\n \n handleMenu()}\n style={{ textTransform: \"capitalize\" }}\n target={OpenInNewTab ? \"_blank\" : \"_self\"}\n to={\"/\" + label}\n rel=\"noopener noreferrer\"\n >\n {label === \"privacy-policy\"\n ? \"Privacy Policy\"\n : label === \"terms-of-use\"\n ? \"Terms & Conditions\"\n : label}\n \n \n );\n })}\n
\n
\n
\n );\n};\n\nexport default MenuBar;\n","import React, { useRef, useEffect, useState, useCallback } from \"react\";\nimport { RenderSvg } from \"../utils/helpers/helper\";\nimport { ScreenSize } from \"../utils/helpers/helper\";\nimport { Link } from \"gatsby\";\nimport { GatsbyImage } from \"gatsby-plugin-image\";\nimport { graphql, useStaticQuery } from \"gatsby\";\nimport { getImage } from \"gatsby-plugin-image\";\n\nexport const ProductsPopup = ({\n openProductsPopup,\n setOpenProductsPopup,\n header,\n isMobile,\n contact,\n share,\n}) => {\n const data = useStaticQuery(graphql`\n query {\n allFile(filter: { relativeDirectory: { eq: \"productLogos\" } }) {\n edges {\n node {\n relativePath\n childImageSharp {\n gatsbyImageData(\n width: 200\n placeholder: BLURRED\n formats: [AUTO, WEBP, AVIF]\n )\n }\n }\n }\n }\n }\n `);\n\n // Extracting image nodes\n const images = data.allFile.edges;\n const findImageByRelativePath = (relativePath) => {\n const imageNode = images.find(\n (image) => image.node.relativePath === relativePath\n ).node;\n return getImage(imageNode);\n };\n\n const popupRef = useRef(null);\n const excludedRef = useRef(null);\n const [hoveredProduct, setHoveredProduct] = useState(null);\n\n const productLinks = [\n {\n id: \"tube\",\n title: \"One Video Platform. All Videos\",\n image: \"productLogos/tubeMiniLogo.png\",\n link: \"/products/tube\",\n isExternal: false,\n },\n {\n id: \"xpresso\",\n title: \"An Enterprise social video experiences app\",\n\n image: \"productLogos/xpressoMiniLogo.png\",\n link: \"/products/xpresso\",\n isExternal: false,\n },\n {\n id: \"play\",\n title: \"DIY interactivity for videos\",\n image: \"productLogos/playMiniLogo.png\",\n link: \"/products/play\",\n isExternal: false,\n },\n {\n id: \"fab\",\n title: \"Social experiences for your digital channels\",\n image: \"productLogos/fabMiniLogo.png\",\n link: \"https://www.getfab.app/\",\n isExternal: true,\n },\n {\n id: \"koel\",\n title: \"The multilingual AI voice personalization tool for Enterprises\",\n image: \"productLogos/koelMiniLogo.png\",\n link: \"/products/koel\",\n isExternal: false,\n },\n ];\n\n const closePopup = useCallback(() => {\n setOpenProductsPopup(null);\n }, [setOpenProductsPopup]);\n\n useEffect(() => {\n const handleClickOutside = (event) => {\n if (\n popupRef.current &&\n !popupRef.current.contains(event.target) &&\n !excludedRef.current?.contains(event.target)\n ) {\n closePopup();\n }\n };\n\n const handleEscKey = (event) => {\n if (event.key === \"Escape\") {\n closePopup();\n }\n };\n\n if (openProductsPopup) {\n document.addEventListener(\"mousedown\", handleClickOutside);\n document.addEventListener(\"keydown\", handleEscKey);\n }\n\n return () => {\n document.removeEventListener(\"mousedown\", handleClickOutside);\n document.removeEventListener(\"keydown\", handleEscKey);\n };\n }, [openProductsPopup, closePopup]);\n\n if (!openProductsPopup) return null;\n\n return (\n \n \n {productLinks.map((product) =>\n product.isExternal ? (\n setHoveredProduct(product.id)}\n onMouseLeave={() => setHoveredProduct(null)}\n style={{\n textDecoration: \"none\",\n color: \"inherit\",\n display: \"flex\",\n padding: \"0 10px\",\n borderRadius: \"10px\",\n background: \"rgba(255,255,255,0.8)\",\n height: \"70px\",\n width: \"100%\",\n gap: \"1.4rem\",\n flexDirection: \"row\",\n justifyContent: \"flex-start\",\n alignItems: \"center\",\n cursor: \"pointer\",\n position: \"relative\",\n }}\n >\n \n \n
\n\n \n {product.title}\n \n {hoveredProduct === product.id && ScreenSize.isDesktop() && (\n \n )}\n \n ) : (\n setHoveredProduct(product.id)}\n onMouseLeave={() => setHoveredProduct(null)}\n style={{\n textDecoration: \"none\",\n color: \"inherit\",\n display: \"flex\",\n padding: \"0 10px\",\n borderRadius: \"10px\",\n background: \"rgba(255,255,255,0.8)\",\n height: \"70px\",\n width: \"100%\",\n gap: \"1.4rem\",\n flexDirection: \"row\",\n justifyContent: \"flex-start\",\n alignItems: \"center\",\n cursor: \"pointer\",\n position: \"relative\",\n }}\n >\n \n \n
\n\n \n {product.title}\n \n\n {hoveredProduct === product.id && ScreenSize.isDesktop() && (\n \n )}\n \n )\n )}\n \n \n );\n};\n","import React, { useEffect, useRef, useState } from \"react\";\nimport * as styles from \"./css/Header.module.css\";\nimport { Link, graphql, useStaticQuery } from \"gatsby\";\nimport { useLocation } from \"@gatsbyjs/reach-router\";\nimport {\n IsEmbedded,\n RenderSvg,\n ScreenSize,\n baseUrl,\n playORPauseVideo,\n} from \"../../helpers/helper\";\nimport MenuBar from \"./MobileNav\";\nimport { Popup } from \"../../../components/popup\";\nimport { ProductsPopup } from \"../../../components/productsPopup\";\n\nconst Header = () => {\n const [prevScrollPos, setPrevScrollPos] = useState(0);\n const [visible, setVisible] = useState(true);\n const [openPopup, setOpenPopup] = useState(null);\n const [openProductsPopup, setOpenProductsPopup] = useState(null);\n const MenuRef = useRef(null);\n const headerRef = useRef(null);\n const menuDotRef = useRef(null);\n const connectButtonRef = useRef(null);\n const companyLogoRef = useRef(null);\n const location = useLocation();\n\n const { allStrapiHeaderPage } = useStaticQuery(graphql`\n query headerSection {\n allStrapiHeaderPage {\n nodes {\n internal {\n content\n }\n header {\n companylogo {\n localFile {\n publicURL\n name\n }\n }\n }\n }\n }\n }\n `);\n\n const { internal } = allStrapiHeaderPage?.nodes[0] || {};\n const content = internal?.content ? JSON.parse(internal.content) : null;\n const {\n headerButton,\n headermenu,\n privaryTerms,\n copyRight,\n socialLinks,\n companyLogoMenu,\n } = content?.header || {};\n\n const companylogo =\n allStrapiHeaderPage?.nodes[0]?.header?.companylogo?.localFile;\n\n useEffect(() => {\n const handleScroll = () => {\n const currentScrollPos = window.pageYOffset;\n setVisible(prevScrollPos > currentScrollPos || currentScrollPos < 10);\n headerRef.current.style.background =\n prevScrollPos > 100\n ? \"rgba(255, 255, 255, 0.6)\"\n : \"rgba(255, 255, 255, 0.6)\";\n setPrevScrollPos(currentScrollPos);\n };\n\n window.addEventListener(\"scroll\", handleScroll);\n\n return () => {\n window.removeEventListener(\"scroll\", handleScroll);\n };\n }, [prevScrollPos]);\n\n useEffect(() => {\n if (openPopup) {\n playORPauseVideo({\n id: \"BannerClickId\",\n status: \"open\",\n });\n } else {\n playORPauseVideo({\n id: \"BannerClickId\",\n status: \"close\",\n });\n }\n }, [openPopup]);\n const handleMenu = () => {\n const menuDot = menuDotRef.current;\n const menuRef = MenuRef.current;\n if (!menuRef.classList.contains(styles?.hiddenActive)) {\n menuDot.classList.remove(styles?.MenuActive);\n connectButtonRef.current.style.opacity = \"1 \";\n menuRef.classList.add(styles?.hiddenActive);\n } else {\n menuRef.classList.remove(styles?.hiddenActive);\n connectButtonRef.current.style.opacity = \"0\";\n menuDot.classList.add(styles?.MenuActive);\n }\n };\n\n const handleProductsClick = () => {\n setOpenProductsPopup(true);\n if (\n MenuRef.current &&\n !MenuRef.current.classList.contains(styles?.hiddenActive)\n ) {\n handleMenu();\n }\n };\n\n //usecase will be removed and products component will come\n const componentOrder = [\n \"home\",\n \"products\",\n \"usecases\",\n \"platform\",\n // \"ai-at-kpoint\",\n \"content-center\",\n \"about\",\n \"resources\",\n \"careers\",\n \"contact-us\",\n ];\n\n const sortedContent = [...headermenu?.items].sort((a, b) => {\n return componentOrder.indexOf(a.slug) - componentOrder.indexOf(b.slug);\n });\n\n return IsEmbedded() ? (\n <>\n ) : (\n <>\n \n
\n {companylogo && (\n \n \n \n )}\n \n\n {headerButton && (\n
\n
\n {\n setOpenPopup(true);\n }}\n className={`${styles?.headerConnectBtn} body-sm`}\n >\n {headerButton?.label}\n
\n
\n
handleMenu()}>\n
\n
\n \n )}\n
\n \n \n \n \n \n\n \n \n );\n};\n\nexport default Header;\n","// extracted by mini-css-extract-plugin\nexport var anchorLink = \"newFooter-module--anchorLink--1fb0f\";\nexport var anchorLinkCity = \"newFooter-module--anchorLinkCity--f50e9\";\nexport var bottomContent = \"newFooter-module--bottomContent--3de2a\";\nexport var city = \"newFooter-module--city--f4ebb\";\nexport var cityContainer = \"newFooter-module--cityContainer--5f2a9\";\nexport var citySubcontainer = \"newFooter-module--citySubcontainer--13d53\";\nexport var copyRight = \"newFooter-module--copyRight--6e321\";\nexport var disabledAnchorLink = \"newFooter-module--disabledAnchorLink--6e031\";\nexport var disabledHeading = \"newFooter-module--disabledHeading--ed7d3\";\nexport var disabledLink = \"newFooter-module--disabledLink--af3eb\";\nexport var dropDownHeading = \"newFooter-module--dropDownHeading--4d2a7\";\nexport var dropDownList = \"newFooter-module--dropDownList--5ccab\";\nexport var dropDownListUl = \"newFooter-module--dropDownListUl--ce301\";\nexport var dropDownTab = \"newFooter-module--dropDownTab--3adca\";\nexport var footer = \"newFooter-module--footer--1b2b2\";\nexport var footerDiv = \"newFooter-module--footerDiv--44860\";\nexport var footerGroup = \"newFooter-module--footerGroup--d8591\";\nexport var footerGroup0 = \"newFooter-module--footerGroup0--2225a\";\nexport var footerGroup1 = \"newFooter-module--footerGroup1--d1408\";\nexport var footerGroup2 = \"newFooter-module--footerGroup2--8ccd3\";\nexport var footerGroup3 = \"newFooter-module--footerGroup3--88f6c\";\nexport var footerGroup4 = \"newFooter-module--footerGroup4--f53e4\";\nexport var footerGroup5 = \"newFooter-module--footerGroup5--52365\";\nexport var footerLinksIcons = \"newFooter-module--footerLinksIcons--d5ed1\";\nexport var footerLogo = \"newFooter-module--footerLogo--ebec6\";\nexport var footerSection = \"newFooter-module--footerSection--ad36d\";\nexport var group = \"newFooter-module--group--8f441\";\nexport var heading = \"newFooter-module--heading--09e0d\";\nexport var linksContainer = \"newFooter-module--linksContainer--22322\";\nexport var list = \"newFooter-module--list--710f5\";\nexport var nonClickable = \"newFooter-module--nonClickable--b1cf7\";\nexport var nonClickableContainer = \"newFooter-module--nonClickableContainer--2b500\";\nexport var nonClickableLink = \"newFooter-module--nonClickableLink--51772\";\nexport var ourPresenceList = \"newFooter-module--ourPresenceList--807e1\";\nexport var privacyPolicy = \"newFooter-module--privacyPolicy--49d16\";","import React, { useState } from \"react\";\nimport { Link, graphql, useStaticQuery } from \"gatsby\";\nimport { AnchorLink } from \"gatsby-plugin-anchor-links\";\nimport { RenderSvg, ScreenSize, baseUrl } from \"../../helpers/helper\";\nimport * as styles from \"./css/newFooter.module.css\";\n\nconst footerData = [\n {\n sections: [\n {\n heading: \"Home\",\n page: \"/\",\n section: \"#home-banner\",\n items: [\n { label: \"Our Products\", page: \"/\", section: \"#home-product\" },\n { label: \"Our Impact\", page: \"/\", section: \"#home-caseStudy\" },\n { label: \"Our Success Symbols\", page: \"/\", section: \"#home-logos\" },\n { label: \"Customer Speak\", page: \"/\", section: \"#home-customer\" },\n ],\n },\n {\n heading: \"Products\",\n page: \"/products/\",\n section: \"\",\n items: [\n { label: \"TUBE\", page: \"/products/\", section: \"tube\" },\n { label: \"XPRESSO\", page: \"/products/\", section: \"xpresso\" },\n { label: \"PLAY\", page: \"/products/\", section: \"play\" },\n { label: \"FAB\", page: \"\", section: \"\" },\n { label: \"KOEL\", page: \"/products/\", section: \"koel\" },\n ],\n },\n ],\n },\n {\n sections: [\n {\n heading: \"Use Cases\",\n section: \"#\",\n items: [\n { label: \"Pre-Onboarding\", disable: true, section: \"#footer\" },\n {\n label: \"Onboarding\",\n disable: true,\n section: \"#footer\",\n },\n { label: \"Knowledge Retention\", disable: true, section: \"#footer\" },\n {\n label: \"Communication & Compliance\",\n disable: true,\n section: \"#footer\",\n },\n { label: \"Team Collaboration\", disable: true, section: \"#footer\" },\n { label: \"Employee Development\", disable: true, section: \"#footer\" },\n { label: \"Digital Communities\", disable: true, section: \"#footer\" },\n { label: \"Tech Adoption\", disable: true, section: \"#footer\" },\n { label: \"Field Force Connect\", disable: true, section: \"#footer\" },\n { label: \"Lead Generation\", disable: true, section: \"#footer\" },\n { label: \"Customer Support\", disable: true, section: \"#footer\" },\n { label: \"Retention\", disable: true, section: \"#footer\" },\n { label: \"Upsell/Cross-sell\", disable: true, section: \"#footer\" },\n { label: \"Customer Education \", disable: true, section: \"#footer\" },\n { label: \"User Engagement\", disable: true, section: \"#footer\" },\n { label: \"Employee Education \", disable: true, section: \"#footer\" },\n { label: \"User Awareness\", disable: true, section: \"#footer\" },\n ],\n },\n ],\n },\n {\n sections: [\n {\n heading: \"Platform\",\n page: \"/platform/\",\n section: \"\",\n items: [\n {\n label: \"Core Video Platform\",\n page: \"/platform/\",\n section: \"#platform-core-video-platform\",\n },\n {\n label: \"Interactive & Personalized\",\n page: \"/platform/\",\n section: \"#platform-personalisation\",\n },\n {\n label: \"Embeddable Player & SDK \",\n page: \"/platform/\",\n section: \"#platform-embeddable-player-sdk\",\n },\n {\n label: \"Video Analytics for BI\",\n page: \"/platform/\",\n section: \"#platform-Analytics\",\n },\n {\n label: \"Deep Search & Discovery\",\n page: \"/platform/\",\n section: \"#platform-search\",\n },\n {\n label: \"Content Creation Tools\",\n page: \"/platform/\",\n section: \"#platform-content-creation\",\n },\n {\n label: \"Live Broadcast\",\n page: \"/platform/\",\n section: \"#platform-live-stream\",\n },\n {\n label: \"Entrerprise Portal & CMS\",\n page: \"/platform/\",\n section: \"#platform-Enterprise-Portal-CMS\",\n },\n ],\n },\n {\n heading: \"AI @ KPOINT\",\n page: \"/ai-at-kpoint/\",\n section: \"#kai\",\n disable: false,\n },\n {\n heading: \"Content Center\",\n page: \"/content-center/\",\n section: \"#content-center\",\n disable: false,\n },\n ],\n },\n {\n sections: [\n {\n heading: \"About\",\n page: \"/about/\",\n section: \"\",\n items: [\n {\n label: \"Mission, Vision & Values\",\n page: \"/about/\",\n section: \"#about-mission\",\n },\n { label: \"Our Story\", page: \"/about/\", section: \"#about-ourStory\" },\n {\n label: \"The Leadership Team\",\n page: \"/about/\",\n section: \"#about-leadershipTeam\",\n },\n ],\n },\n {\n heading: \"Resources\",\n page: \"/resources/\",\n section: \"\",\n items: [\n { label: \"Blogs\", page: \"/resources/\", section: \"blogs/\" },\n { label: \"Case Study\", page: \"/resources/\", section: \"casestudy/\" },\n { label: \"KPOINT NOW\", page: \"/resources/\", section: \"kpoint-now/\" },\n ],\n },\n {\n heading: \"Careers\",\n page: \"/careers/\",\n section: \"\",\n items: [\n {\n label: \"Our People\",\n page: \"/careers/\",\n section: \"#career-ourPeople\",\n },\n {\n label: \"Life at KPOINT\",\n page: \"/careers/\",\n section: \"#life-at-kpoint\",\n },\n {\n label: \"Current Job Openings\",\n page: \"/careers/\",\n section: \"#jobs-container\",\n },\n ],\n },\n ],\n },\n {\n sections: [\n { heading: \"Contact Us\", page: \"/contact-us/\", section: \"\" },\n {\n heading: \"Head Office\",\n section: \"#footer\",\n items: [\n {\n label:\n \"Office No. 201, 2nd Floor, S. R. Iriz Apartments, Baner - Pashan Link Road, Pune - 411021, Maharashtra, India\",\n disable: true,\n isAdress: true,\n section: \"#footer\",\n },\n {\n label: \"Ph. no. 020 4852 2626\",\n disable: true,\n isAdress: true,\n section: \"#footer\",\n },\n ],\n },\n {\n heading: \"Our Presence\",\n section: \"\",\n disable: true,\n items: [\n { label: \"Pune\", disable: false, section: \"\" },\n { label: \"Mumbai\", disable: true, section: \"\" },\n { label: \"Delhi\", disable: true, section: \"\" },\n { label: \"Bengaluru\", disable: true, section: \"\" },\n ],\n },\n ],\n },\n];\n\nconst mobileFooterData = [\n {\n heading: \"Home\",\n type: \"dropDown\",\n items: [\n { label: \"Our Products\", page: \"/\", section: \"#home-product\" },\n { label: \"Our Impact\", page: \"/\", section: \"#home-caseStudy\" },\n { label: \"Our Success Symbols\", page: \"/\", section: \"#home-logos\" },\n { label: \"Customer Speak\", page: \"/\", section: \"#home-customer\" },\n ],\n },\n {\n heading: \"Products\",\n type: \"dropDown\",\n items: [\n { label: \"TUBE\", page: \"/products/\", section: \"tube\" },\n { label: \"XPRESSO\", page: \"/products/\", section: \"xpresso\" },\n { label: \"PLAY\", page: \"/products/\", section: \"play\" },\n { label: \"FAB\", page: \"\", section: \"\" },\n { label: \"KOEL\", page: \"/products/\", section: \"koel\" },\n ],\n },\n {\n heading: \"Use Cases\",\n type: \"dropDown\",\n items: [\n { label: \"Pre-Onboarding\", disable: true, section: \"\" },\n {\n label: \"Onboarding\",\n disable: true,\n section: \"\",\n },\n { label: \"Knowledge Retention\", disable: true, section: \"\" },\n { label: \"Communication & Compliance\", disable: true, section: \"\" },\n { label: \"Team Collaboration\", disable: true, section: \"\" },\n {\n label: \"Employee Development\",\n disable: true,\n page: \"\",\n section: \"#footer\",\n },\n {\n label: \"Digital Communities\",\n disable: true,\n page: \"\",\n section: \"#footer\",\n },\n { label: \"Tech Adoption\", disable: true, page: \"\", section: \"#footer\" },\n {\n label: \"Field Force Connect\",\n disable: true,\n page: \"\",\n section: \"#footer\",\n },\n { label: \"Lead Generation\", disable: true, page: \"\", section: \"#footer\" },\n {\n label: \"Customer Support\",\n disable: true,\n page: \"\",\n section: \"#footer\",\n },\n { label: \"Retention\", disable: true, page: \"\", section: \"#footer\" },\n {\n label: \"Upsell/Cross-sell\",\n disable: true,\n page: \"\",\n section: \"#footer\",\n },\n {\n label: \"Customer Education \",\n disable: true,\n page: \"\",\n section: \"#footer\",\n },\n { label: \"User Engagement\", disable: true, page: \"\", section: \"#footer\" },\n {\n label: \"Employee Education \",\n disable: true,\n page: \"\",\n section: \"#footer\",\n },\n { label: \"User Awareness\", disable: true, page: \"\", section: \"#footer\" },\n ],\n },\n\n {\n heading: \"Platform\",\n type: \"dropDown\",\n items: [\n {\n label: \"Core Video Platform\",\n page: \"/platform/\",\n section: \"#platform-core-video-platform\",\n },\n {\n label: \"Interactive & Personalized\",\n page: \"/platform/\",\n section: \"#platform-personalisation\",\n },\n {\n label: \"Embeddable Player & SDK \",\n page: \"/platform/\",\n section: \"#platform-embeddable-player-sdk\",\n },\n {\n label: \"Video Analytics for BI\",\n page: \"/platform/\",\n section: \"#platform-Analytics\",\n },\n {\n label: \"Deep Search & Discovery\",\n page: \"/platform/\",\n section: \"#platform-search\",\n },\n {\n label: \"Content Creation Tools\",\n page: \"/platform/\",\n section: \"#platform-content-creation\",\n },\n {\n label: \"Live Broadcast\",\n page: \"/platform/\",\n section: \"#platform-live-stream\",\n },\n {\n label: \"Entrerprise Portal & CMS\",\n page: \"/platform/\",\n section: \"#platform-Enterprise-Portal-CMS\",\n },\n ],\n },\n {\n heading: \"AI @ KPOINT\",\n type: \"link\",\n disable: false,\n page: \"/ai-at-kpoint/\",\n section: \"#kai\",\n },\n {\n heading: \"Content Center\",\n type: \"link\",\n disable: false,\n page: \"/content-center/\",\n section: \"#content-center\",\n },\n {\n heading: \"About\",\n type: \"dropDown\",\n items: [\n {\n label: \"Mission, Vision & Values\",\n page: \"/about/\",\n section: \"#about-mission\",\n },\n { label: \"Our Story\", page: \"/about/\", section: \"#about-ourStory\" },\n {\n label: \"The Leadership Team\",\n page: \"/about/\",\n section: \"#about-leadershipTeam\",\n },\n ],\n },\n {\n heading: \"Resources\",\n type: \"dropDown\",\n items: [\n { label: \"Blogs\", page: \"/resources/\", section: \"blogs/\" },\n { label: \"Case Study\", page: \"/resources/\", section: \"casestudy/\" },\n { label: \"KPOINT NOW\", page: \"/resources/\", section: \"kpoint-now/\" },\n ],\n },\n {\n heading: \"Careers\",\n type: \"dropDown\",\n items: [\n {\n label: \"Our People\",\n page: \"/careers/\",\n section: \"#career-ourPeople\",\n },\n {\n label: \"Life at KPOINT\",\n page: \"/careers/\",\n section: \"#life-at-kpoint\",\n },\n {\n label: \"Current Job Openings\",\n page: \"/careers/\",\n section: \"#jobs-container\",\n },\n ],\n },\n { heading: \"Contact Us\", type: \"link\", page: \"/contact-us/\", section: \"\" },\n {\n heading: \"Head Office\",\n type: \"none\",\n disable: true,\n items: [\n {\n label:\n \"Office No. 201, 2nd Floor, S. R. Iriz Apartments, Baner - Pashan Link Road, Pune - 411021, Maharashtra, India\",\n disable: true,\n },\n {\n label: \"Ph. no. 020 4852 2626\",\n disable: true,\n },\n ],\n },\n {\n heading: \"Our Presence\",\n disable: true,\n type: \"address\",\n items: [\n { label: \"Pune\", disable: true },\n { label: \"Mumbai\", disable: true },\n { label: \"Delhi\", disable: true },\n { label: \"Bengaluru\", disable: true },\n ],\n },\n];\n\nexport default function Footer() {\n const { allStrapiFooterSection } = useStaticQuery(graphql`\n query footerSectionPage {\n allStrapiFooterSection {\n nodes {\n internal {\n content\n }\n }\n }\n }\n `);\n const { internal } = allStrapiFooterSection?.nodes[0] || {};\n const content = internal?.content ? JSON.parse(internal.content) : null;\n const { copyRight, companyLogo, socialLinks, privaryTerms } = content || {};\n const { url: logoUrl } = companyLogo || {};\n\n const [activeDropdownIndex, setActiveDropdownIndex] = useState(null);\n\n const handleDropdownToggle = (index) => {\n setActiveDropdownIndex((prevIndex) => (prevIndex === index ? null : index));\n };\n\n const renderLink = (item) => {\n if (item.disable) {\n return (\n \n {item.label}\n

\n );\n }\n\n if (item.label === \"FAB\") {\n return (\n \n {item.label}\n \n );\n }\n\n return (\n \n {item.label}\n \n );\n };\n\n const renderHeading = (section) => {\n if (section.disable) {\n return (\n

\n {section.heading}\n

\n );\n }\n return (\n \n {section.heading}\n \n );\n };\n\n const RedirectTo = ({ item }) => {\n return (\n \n {item.heading}\n \n );\n };\n\n const DropdownSection = ({ section, isOpen, onToggle, index }) => {\n return (\n <>\n
onToggle(index)} className={styles.dropDownTab}>\n

{section.heading}

\n \n
\n\n {isOpen && (\n
    \n {section.items.map((link, linkIndex) => (\n \n \n {link.label}\n \n \n ))}\n
\n )}\n \n );\n };\n\n const ConnectSection = ({ section }) => {\n return (\n
\n

{section.heading}

\n
    \n {section.items.map((item, index) => (\n
  • \n {item.label}\n
  • \n ))}\n
\n
\n );\n };\n\n const Locations = ({ item }) => {\n const items = item.items || [];\n return (\n <>\n
\n {ScreenSize.isMobile && (\n

{item.heading}

\n )}\n\n
\n {items.map((city, cityIndex) => (\n
\n {city.label}\n
\n ))}\n
\n
\n
\n {socialLinks?.map((e, i) => {\n const { url, label } = e;\n return (\n \n \n \n );\n })}\n
\n \n );\n };\n\n return (\n
\n {ScreenSize.isDesktop() && (\n
\n \n \"Company\n \n
\n {footerData.map((group, groupIndex) => (\n \n {group.sections.map((section) => (\n
\n {section.heading === \"Our Presence\" ? (\n <>\n ) : (\n renderHeading(section)\n )}\n\n {section.heading === \"Our Presence\" ? (\n \n ) : (\n <>\n
    \n {section?.items?.map((item, index) => (\n
  • {renderLink(item)}
  • \n ))}\n
\n \n )}\n
\n ))}\n
\n ))}\n
\n
\n

{copyRight}

\n
\n
    \n {privaryTerms &&\n privaryTerms.map((data, index) => {\n const { label, openInNewTa } = data;\n return (\n
  • \n \n {label === \"privacy-policy\"\n ? \"Privacy Policy\"\n : label === \"terms-of-use\"\n ? \"Terms & Conditions\"\n : label}\n \n
  • \n );\n })}\n
\n
\n
\n \n )}\n\n {ScreenSize.isTablet() ||\n (ScreenSize.isMobile() && (\n
\n \n \"Company\n \n\n {mobileFooterData.map((section, sectionIndex) => (\n <>\n {section.type === \"dropDown\" && (\n \n )}\n {section.type === \"link\" && (\n \n )}\n {section.type === \"none\" && (\n \n )}\n {section.type === \"address\" && (\n \n )}\n \n ))}\n\n
\n

{copyRight}

\n
\n
    \n {privaryTerms &&\n privaryTerms.map((data, index) => {\n const { label, openInNewTa } = data;\n return (\n
  • \n \n {label === \"privacy-policy\"\n ? \"Privacy Policy\"\n : label === \"terms-of-use\"\n ? \"Terms & Conditions\"\n : label}\n \n
  • \n );\n })}\n
\n
\n
\n
\n ))}\n
\n );\n}\n","import React, { useRef, useState } from \"react\";\nimport { KpointPlayerContext } from \"./KpointPlayerContext\";\n\nconst KpointPlayerProvider = ({ children }) => {\n const [players, setPlayers] = useState([]);\n const isMuteRef = useRef(true);\n const bindEvents = (player) => {\n player?.addEventListener(\"muted\", () => {\n if (isMuteRef.current) return;\n muteAll();\n isMuteRef.current = true;\n });\n player?.addEventListener(\"unmuted\", () => {\n if (!isMuteRef.current) return;\n unMuteAll();\n isMuteRef.current = false;\n });\n };\n\n const addPlayer = (player) => {\n setPlayers((prevPlayers) => {\n const newPlayers = [...prevPlayers, player];\n return newPlayers;\n });\n\n bindEvents(player);\n };\n\n const removePlayer = (player) => {\n setPlayers((prevPlayers) => {\n const newPlayers = prevPlayers.filter((p) => p !== player);\n return newPlayers;\n });\n };\n\n const muteAll = () => {\n setPlayers((prevPlayers) => {\n prevPlayers.forEach((player) => {\n player?.mute();\n });\n return [...prevPlayers];\n });\n };\n\n const unMuteAll = () => {\n setPlayers((prevPlayers) => {\n prevPlayers.forEach((player) => {\n player?.unmute();\n });\n return [...prevPlayers];\n });\n };\n return (\n \n {children}\n \n );\n};\n\nexport default KpointPlayerProvider;\n","import React from \"react\";\nimport Header from \"../header/Header\";\nimport Footer from \"../footer/Footer\";\nimport \"./typography.css\";\nimport KpointPlayerProvider from \"../../../context/KpointPlayerProvider\";\nimport { ObserverProvider } from \"../../../context/ObserverContext\";\n\nconst Layout = ({ children }) => {\n\n const isConnectPage =\n children.key.includes(\"manish/connect/\") \n \n return (\n <>\n \n \n
\n {!isConnectPage &&
}\n
{children}
\n {!isConnectPage &&
}\n
\n
\n
\n
\n \n );\n};\n\nexport default Layout;\n","import React from \"react\";\nimport Layout from \"./src/utils/components/layout\";\n\n\nexport const onClientEntry = () => {\n loadScript();\n};\n\nconst loadScript = () => {\n if (!document.getElementById(\"kpointvideoLoader\")) {\n const script = document.createElement(\"script\");\n script.async = true;\n script.defer = true;\n script.id = \"kpointvideoLoader\";\n script.src = \"https://assets.kpoint.com/orca/media/embed/videofront-vega.js\";\n document.body.appendChild(script);\n }\n};\n\nexport const wrapPageElement = ({ element }) => {\n return {element};\n};\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.AnchorLink = AnchorLink;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _gatsby = require(\"gatsby\");\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _utils = require(\"../utils\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nAnchorLink.propTypes = {\n to: _propTypes[\"default\"].string.isRequired,\n title: _propTypes[\"default\"].string,\n className: _propTypes[\"default\"].string,\n stripHash: _propTypes[\"default\"].bool,\n gatsbyLinkProps: _propTypes[\"default\"].object,\n onAnchorLinkClick: _propTypes[\"default\"].func,\n children: _propTypes[\"default\"].node\n};\n\nfunction AnchorLink(_ref) {\n var to = _ref.to,\n title = _ref.title,\n children = _ref.children,\n className = _ref.className,\n _ref$stripHash = _ref.stripHash,\n stripHash = _ref$stripHash === void 0 ? false : _ref$stripHash,\n _ref$gatsbyLinkProps = _ref.gatsbyLinkProps,\n gatsbyLinkProps = _ref$gatsbyLinkProps === void 0 ? {} : _ref$gatsbyLinkProps,\n onAnchorLinkClick = _ref.onAnchorLinkClick;\n var onClickHandler = stripHash ? _utils.handleStrippedLinkClick : _utils.handleLinkClick;\n\n var linkProps = _objectSpread(_objectSpread({}, gatsbyLinkProps), {}, {\n /**\n * Spread optional gatsbyLinkProps object in fist, so our specific props will override\n */\n to: stripHash ? (0, _utils.stripHashedLocation)(to) : to,\n onClick: function onClick(e) {\n return onClickHandler(to, e, onAnchorLinkClick);\n }\n });\n /**\n * Optional props\n */\n\n\n if (title) linkProps.title = title;\n if (className) linkProps.className = className;\n return /*#__PURE__*/_react[\"default\"].createElement(_gatsby.Link, linkProps, children ? children : title);\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.INVALID_HASH = exports.IMPROPPER_FORMATTING = void 0;\nvar IMPROPPER_FORMATTING = 'Anchor path should contain an absolute root path `/` and selector `#` Ex: `/about#team`';\nexports.IMPROPPER_FORMATTING = IMPROPPER_FORMATTING;\nvar INVALID_HASH = 'Anchor Links plugin attempted to scroll to an invalid hash on route change.';\nexports.INVALID_HASH = INVALID_HASH;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.onRouteUpdate = void 0;\n\nvar _utils = require(\"./utils\");\n\nvar onRouteUpdate = function onRouteUpdate(_ref, _ref2) {\n var location = _ref.location;\n var _ref2$offset = _ref2.offset,\n offset = _ref2$offset === void 0 ? 0 : _ref2$offset,\n _ref2$duration = _ref2.duration,\n duration = _ref2$duration === void 0 ? 1000 : _ref2$duration;\n var windowHash;\n\n if (_utils.isBrowser) {\n window.gatsby_scroll_offset = offset;\n window.gatsby_scroll_duration = duration;\n windowHash = window.gatsby_scroll_hash;\n }\n\n windowHash ? (0, _utils.scroller)(windowHash, offset) : (0, _utils.checkHash)(location, offset);\n\n if (_utils.isBrowser && windowHash) {\n window.gatsby_scroll_hash = undefined;\n }\n};\n\nexports.onRouteUpdate = onRouteUpdate;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"AnchorLink\", {\n enumerable: true,\n get: function get() {\n return _AnchorLink.AnchorLink;\n }\n});\n\nvar _AnchorLink = require(\"./components/AnchorLink\");","\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.logWarning = logWarning;\nexports.scroller = scroller;\nexports.handleLinkClick = handleLinkClick;\nexports.handleStrippedLinkClick = handleStrippedLinkClick;\nexports.stripHashedLocation = stripHashedLocation;\nexports.checkHash = checkHash;\nexports.isDevelopment = exports.isBrowser = void 0;\n\nvar _scrollToElement = _interopRequireDefault(require(\"scroll-to-element\"));\n\nvar _gatsby = require(\"gatsby\");\n\nvar errorTypes = _interopRequireWildcard(require(\"./errors\"));\n\nfunction _getRequireWildcardCache() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { \"default\": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nvar isBrowser = typeof window !== 'undefined';\nexports.isBrowser = isBrowser;\nvar isDevelopment = process.env.NODE_ENV !== 'production';\nexports.isDevelopment = isDevelopment;\n\nfunction logWarning(message) {\n if (isDevelopment) console.warn(message);\n}\n\nfunction scroller(target) {\n var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n var duration = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1000;\n (0, _scrollToElement[\"default\"])(target, {\n duration: duration,\n offset: offset\n });\n}\n\nfunction handleLinkClick(to, e, onAnchorLinkClick) {\n /**\n * Log warnings on click\n */\n var improperFormatting = !to.includes('/') || !to.includes('#');\n if (improperFormatting) logWarning(errorTypes.IMPROPPER_FORMATTING);\n\n if (isBrowser && to.includes('#')) {\n var _to$split = to.split('#'),\n _to$split2 = _slicedToArray(_to$split, 2),\n anchorPath = _to$split2[0],\n anchor = _to$split2[1];\n\n if (window.location.pathname === (0, _gatsby.withPrefix)(anchorPath)) {\n e.preventDefault();\n scroller(\"#\".concat(anchor), window.gatsby_scroll_offset, window.gatsby_scroll_duration);\n }\n }\n\n if (onAnchorLinkClick) onAnchorLinkClick();\n}\n\nfunction handleStrippedLinkClick(to, e, onAnchorLinkClick) {\n /**\n * Log warnings on click\n */\n var improperFormatting = !to.includes('/') || !to.includes('#');\n if (improperFormatting) logWarning(errorTypes.IMPROPPER_FORMATTING);\n\n var _to$split3 = to.split('#'),\n _to$split4 = _slicedToArray(_to$split3, 2),\n anchorPath = _to$split4[0],\n anchor = _to$split4[1];\n /**\n * Determine location, run scroller or set window variable\n */\n\n\n var isSamePage = isBrowser && window.location.pathname === anchorPath;\n var isDifferentPage = isBrowser && window.location.pathname !== anchorPath;\n\n if (isSamePage) {\n e.preventDefault();\n scroller(\"#\".concat(anchor), window.gatsby_scroll_offset, window.gatsby_scroll_duration);\n }\n\n if (isDifferentPage) {\n window.gatsby_scroll_hash = \"#\".concat(anchor);\n }\n\n if (onAnchorLinkClick) onAnchorLinkClick();\n}\n\nfunction stripHashedLocation(to) {\n return to.split('#')[0];\n}\n\nfunction checkHash(location, offset) {\n var hash = location.hash,\n selector = hash ? hash.substr(1) : null,\n validElement = selector ? document.getElementById(selector) : null;\n if (hash && Boolean(validElement)) scroller(hash, offset);else if (hash && selector && !validElement) logWarning(errorTypes.INVALID_HASH);\n}","import camelCase from \"camelcase\"\nimport type { IGatsbyImageData } from \"./index\"\n\nconst DEFAULT_PIXEL_DENSITIES = [0.25, 0.5, 1, 2]\nexport const DEFAULT_BREAKPOINTS = [750, 1080, 1366, 1920]\nexport const EVERY_BREAKPOINT = [\n 320, 654, 768, 1024, 1366, 1600, 1920, 2048, 2560, 3440, 3840, 4096,\n]\nconst DEFAULT_FLUID_WIDTH = 800\nconst DEFAULT_FIXED_WIDTH = 800\nconst DEFAULT_ASPECT_RATIO = 4 / 3\n\nexport type Fit = \"cover\" | \"fill\" | \"inside\" | \"outside\" | \"contain\"\n\nexport type Layout = \"fixed\" | \"fullWidth\" | \"constrained\"\nexport type ImageFormat = \"jpg\" | \"png\" | \"webp\" | \"avif\" | \"auto\" | \"\"\n\n/**\n * The minimal required reporter, as we don't want to import it from gatsby-cli\n */\nexport interface IReporter {\n warn(message: string): void\n}\n\nexport interface ISharpGatsbyImageArgs {\n layout?: Layout\n formats?: Array\n placeholder?: \"tracedSVG\" | \"dominantColor\" | \"blurred\" | \"none\"\n tracedSVGOptions?: Record\n width?: number\n height?: number\n aspectRatio?: number\n sizes?: string\n quality?: number\n transformOptions?: {\n fit?: Fit\n cropFocus?: number | string\n duotone?: {\n highlight: string\n shadow: string\n opacity?: number\n }\n grayscale?: boolean\n rotate?: number\n trim?: number\n }\n jpgOptions?: Record\n pngOptions?: Record\n webpOptions?: Record\n avifOptions?: Record\n blurredOptions?: { width?: number; toFormat?: ImageFormat }\n breakpoints?: Array\n outputPixelDensities?: Array\n backgroundColor?: string\n}\n\nexport interface IImageSizeArgs {\n width?: number\n height?: number\n layout?: Layout\n filename: string\n outputPixelDensities?: Array\n breakpoints?: Array\n fit?: Fit\n reporter?: IReporter\n sourceMetadata: { width: number; height: number }\n}\n\nexport interface IImageSizes {\n sizes: Array\n presentationWidth: number\n presentationHeight: number\n aspectRatio: number\n unscaledWidth: number\n}\n\nexport interface IImage {\n src: string\n width: number\n height: number\n format: ImageFormat\n}\n\nexport interface IGatsbyImageHelperArgs {\n pluginName: string\n generateImageSource: (\n filename: string,\n width: number,\n height: number,\n format: ImageFormat,\n fit?: Fit,\n options?: Record\n ) => IImage\n layout?: Layout\n formats?: Array\n filename: string\n placeholderURL?: string\n width?: number\n height?: number\n sizes?: string\n reporter?: IReporter\n sourceMetadata?: { width: number; height: number; format: ImageFormat }\n fit?: Fit\n options?: Record\n breakpoints?: Array\n backgroundColor?: string\n aspectRatio?: number\n}\n\nconst warn = (message: string): void => console.warn(message)\n\nconst sortNumeric = (a: number, b: number): number => a - b\n\nexport const getSizes = (width: number, layout: Layout): string | undefined => {\n switch (layout) {\n // If screen is wider than the max size, image width is the max size,\n // otherwise it's the width of the screen\n case `constrained`:\n return `(min-width: ${width}px) ${width}px, 100vw`\n\n // Image is always the same width, whatever the size of the screen\n case `fixed`:\n return `${width}px`\n\n // Image is always the width of the screen\n case `fullWidth`:\n return `100vw`\n\n default:\n return undefined\n }\n}\n\nexport const getSrcSet = (images: Array): string =>\n images.map(image => `${image.src} ${image.width}w`).join(`,\\n`)\n\nexport function formatFromFilename(filename: string): ImageFormat | undefined {\n const dot = filename.lastIndexOf(`.`)\n if (dot !== -1) {\n const ext = filename.slice(dot + 1)\n if (ext === `jpeg`) {\n return `jpg`\n }\n if (ext.length === 3 || ext.length === 4) {\n return ext as ImageFormat\n }\n }\n return undefined\n}\n\nexport function setDefaultDimensions(\n args: IGatsbyImageHelperArgs\n): IGatsbyImageHelperArgs {\n let {\n layout = `constrained`,\n width,\n height,\n sourceMetadata,\n breakpoints,\n aspectRatio,\n formats = [`auto`, `webp`],\n } = args\n formats = formats.map(format => format.toLowerCase() as ImageFormat)\n layout = camelCase(layout) as Layout\n\n if (width && height) {\n return { ...args, formats, layout, aspectRatio: width / height }\n }\n if (sourceMetadata.width && sourceMetadata.height && !aspectRatio) {\n aspectRatio = sourceMetadata.width / sourceMetadata.height\n }\n\n if (layout === `fullWidth`) {\n width = width || sourceMetadata.width || breakpoints[breakpoints.length - 1]\n height = height || Math.round(width / (aspectRatio || DEFAULT_ASPECT_RATIO))\n } else {\n if (!width) {\n if (height && aspectRatio) {\n width = height * aspectRatio\n } else if (sourceMetadata.width) {\n width = sourceMetadata.width\n } else if (height) {\n width = Math.round(height / DEFAULT_ASPECT_RATIO)\n } else {\n width = DEFAULT_FIXED_WIDTH\n }\n }\n\n if (aspectRatio && !height) {\n height = Math.round(width / aspectRatio)\n } else if (!aspectRatio) {\n aspectRatio = width / height\n }\n }\n return { ...args, width, height, aspectRatio, layout, formats }\n}\n\n/**\n * Use this for getting an image for the blurred placeholder. This ensures the\n * aspect ratio and crop match the main image\n */\nexport function getLowResolutionImageURL(\n args: IGatsbyImageHelperArgs,\n width = 20\n): string {\n args = setDefaultDimensions(args)\n const { generateImageSource, filename, aspectRatio } = args\n return generateImageSource(\n filename,\n width,\n Math.round(width / aspectRatio),\n args.sourceMetadata.format || `jpg`,\n args.fit,\n args.options\n )?.src\n}\n\nexport function generateImageData(\n args: IGatsbyImageHelperArgs\n): IGatsbyImageData {\n args = setDefaultDimensions(args)\n\n let {\n pluginName,\n sourceMetadata,\n generateImageSource,\n layout,\n fit,\n options,\n width,\n height,\n filename,\n reporter = { warn },\n backgroundColor,\n placeholderURL,\n } = args\n\n if (!pluginName) {\n reporter.warn(\n `[gatsby-plugin-image] \"generateImageData\" was not passed a plugin name`\n )\n }\n\n if (typeof generateImageSource !== `function`) {\n throw new Error(`generateImageSource must be a function`)\n }\n\n if (!sourceMetadata || (!sourceMetadata.width && !sourceMetadata.height)) {\n // No metadata means we let the CDN handle max size etc, aspect ratio etc\n sourceMetadata = {\n width,\n height,\n format: sourceMetadata?.format || formatFromFilename(filename) || `auto`,\n }\n } else if (!sourceMetadata.format) {\n sourceMetadata.format = formatFromFilename(filename)\n }\n\n const formats = new Set(args.formats)\n\n if (formats.size === 0 || formats.has(`auto`) || formats.has(``)) {\n formats.delete(`auto`)\n formats.delete(``)\n formats.add(sourceMetadata.format)\n }\n\n if (formats.has(`jpg`) && formats.has(`png`)) {\n reporter.warn(\n `[${pluginName}] Specifying both 'jpg' and 'png' formats is not supported. Using 'auto' instead`\n )\n if (sourceMetadata.format === `jpg`) {\n formats.delete(`png`)\n } else {\n formats.delete(`jpg`)\n }\n }\n\n const imageSizes = calculateImageSizes({ ...args, sourceMetadata })\n\n const result: IGatsbyImageData[\"images\"] = {\n sources: [],\n }\n\n let sizes = args.sizes\n if (!sizes) {\n sizes = getSizes(imageSizes.presentationWidth, layout)\n }\n\n formats.forEach(format => {\n const images = imageSizes.sizes\n .map(size => {\n const imageSrc = generateImageSource(\n filename,\n size,\n Math.round(size / imageSizes.aspectRatio),\n format,\n fit,\n options\n )\n if (\n !imageSrc?.width ||\n !imageSrc.height ||\n !imageSrc.src ||\n !imageSrc.format\n ) {\n reporter.warn(\n `[${pluginName}] The resolver for image ${filename} returned an invalid value.`\n )\n return undefined\n }\n return imageSrc\n })\n .filter(Boolean)\n\n if (format === `jpg` || format === `png` || format === `auto`) {\n const unscaled =\n images.find(img => img.width === imageSizes.unscaledWidth) || images[0]\n\n if (unscaled) {\n result.fallback = {\n src: unscaled.src,\n srcSet: getSrcSet(images),\n sizes,\n }\n }\n } else {\n result.sources?.push({\n srcSet: getSrcSet(images),\n sizes,\n type: `image/${format}`,\n })\n }\n })\n\n const imageProps: Partial = {\n images: result,\n layout,\n backgroundColor,\n }\n\n if (placeholderURL) {\n imageProps.placeholder = { fallback: placeholderURL }\n }\n\n switch (layout) {\n case `fixed`:\n imageProps.width = imageSizes.presentationWidth\n imageProps.height = imageSizes.presentationHeight\n break\n\n case `fullWidth`:\n imageProps.width = 1\n imageProps.height = 1 / imageSizes.aspectRatio\n break\n\n case `constrained`:\n imageProps.width = args.width || imageSizes.presentationWidth || 1\n imageProps.height = (imageProps.width || 1) / imageSizes.aspectRatio\n }\n\n return imageProps as IGatsbyImageData\n}\n\nconst dedupeAndSortDensities = (values: Array): Array =>\n Array.from(new Set([1, ...values])).sort(sortNumeric)\n\nexport function calculateImageSizes(args: IImageSizeArgs): IImageSizes {\n const {\n width,\n height,\n filename,\n layout = `constrained`,\n sourceMetadata: imgDimensions,\n reporter = { warn },\n breakpoints = DEFAULT_BREAKPOINTS,\n } = args\n\n // check that all dimensions provided are positive\n const userDimensions = { width, height }\n const erroneousUserDimensions = Object.entries(userDimensions).filter(\n ([_, size]) => typeof size === `number` && size < 1\n )\n if (erroneousUserDimensions.length) {\n throw new Error(\n `Specified dimensions for images must be positive numbers (> 0). Problem dimensions you have are ${erroneousUserDimensions\n .map(dim => dim.join(`: `))\n .join(`, `)}`\n )\n }\n\n if (layout === `fixed`) {\n return fixedImageSizes(args)\n } else if (layout === `constrained`) {\n return responsiveImageSizes(args)\n } else if (layout === `fullWidth`) {\n return responsiveImageSizes({ breakpoints, ...args })\n } else {\n reporter.warn(\n `No valid layout was provided for the image at ${filename}. Valid image layouts are fixed, fullWidth, and constrained. Found ${layout}`\n )\n return {\n sizes: [imgDimensions.width],\n presentationWidth: imgDimensions.width,\n presentationHeight: imgDimensions.height,\n aspectRatio: imgDimensions.width / imgDimensions.height,\n unscaledWidth: imgDimensions.width,\n }\n }\n}\nexport function fixedImageSizes({\n filename,\n sourceMetadata: imgDimensions,\n width,\n height,\n fit = `cover`,\n outputPixelDensities = DEFAULT_PIXEL_DENSITIES,\n reporter = { warn },\n}: IImageSizeArgs): IImageSizes {\n let aspectRatio = imgDimensions.width / imgDimensions.height\n // Sort, dedupe and ensure there's a 1\n const densities = dedupeAndSortDensities(outputPixelDensities)\n\n // If both are provided then we need to check the fit\n if (width && height) {\n const calculated = getDimensionsAndAspectRatio(imgDimensions, {\n width,\n height,\n fit,\n })\n width = calculated.width\n height = calculated.height\n aspectRatio = calculated.aspectRatio\n }\n\n if (!width) {\n if (!height) {\n width = DEFAULT_FIXED_WIDTH\n } else {\n width = Math.round(height * aspectRatio)\n }\n } else if (!height) {\n height = Math.round(width / aspectRatio)\n }\n\n const originalWidth = width // will use this for presentationWidth, don't want to lose it\n const isTopSizeOverriden =\n imgDimensions.width < width || imgDimensions.height < (height as number)\n\n // If the image is smaller than requested, warn the user that it's being processed as such\n // print out this message with the necessary information before we overwrite it for sizing\n if (isTopSizeOverriden) {\n const fixedDimension = imgDimensions.width < width ? `width` : `height`\n reporter.warn(`\nThe requested ${fixedDimension} \"${\n fixedDimension === `width` ? width : height\n }px\" for the image ${filename} was larger than the actual image ${fixedDimension} of ${\n imgDimensions[fixedDimension]\n }px. If possible, replace the current image with a larger one.`)\n\n if (fixedDimension === `width`) {\n width = imgDimensions.width\n height = Math.round(width / aspectRatio)\n } else {\n height = imgDimensions.height\n width = height * aspectRatio\n }\n }\n\n const sizes = densities\n .filter(size => size >= 1) // remove smaller densities because fixed images don't need them\n .map(density => Math.round(density * (width as number)))\n .filter(size => size <= imgDimensions.width)\n\n return {\n sizes,\n aspectRatio,\n presentationWidth: originalWidth,\n presentationHeight: Math.round(originalWidth / aspectRatio),\n unscaledWidth: width,\n }\n}\n\nexport function responsiveImageSizes({\n sourceMetadata: imgDimensions,\n width,\n height,\n fit = `cover`,\n outputPixelDensities = DEFAULT_PIXEL_DENSITIES,\n breakpoints,\n layout,\n}: IImageSizeArgs): IImageSizes {\n let sizes\n let aspectRatio = imgDimensions.width / imgDimensions.height\n // Sort, dedupe and ensure there's a 1\n const densities = dedupeAndSortDensities(outputPixelDensities)\n\n // If both are provided then we need to check the fit\n if (width && height) {\n const calculated = getDimensionsAndAspectRatio(imgDimensions, {\n width,\n height,\n fit,\n })\n width = calculated.width\n height = calculated.height\n aspectRatio = calculated.aspectRatio\n }\n\n // Case 1: width of height were passed in, make sure it isn't larger than the actual image\n width = width && Math.min(width, imgDimensions.width)\n height = height && Math.min(height, imgDimensions.height)\n\n // Case 2: neither width or height were passed in, use default size\n if (!width && !height) {\n width = Math.min(DEFAULT_FLUID_WIDTH, imgDimensions.width)\n height = width / aspectRatio\n }\n\n // if it still hasn't been found, calculate width from the derived height.\n // TS isn't smart enough to realise the type for height has been narrowed here\n if (!width) {\n width = (height as number) * aspectRatio\n }\n\n const originalWidth = width\n const isTopSizeOverriden =\n imgDimensions.width < width || imgDimensions.height < (height as number)\n if (isTopSizeOverriden) {\n width = imgDimensions.width\n height = imgDimensions.height\n }\n\n width = Math.round(width)\n\n if (breakpoints?.length > 0) {\n sizes = breakpoints.filter(size => size <= imgDimensions.width)\n\n // If a larger breakpoint has been filtered-out, add the actual image width instead\n if (\n sizes.length < breakpoints.length &&\n !sizes.includes(imgDimensions.width)\n ) {\n sizes.push(imgDimensions.width)\n }\n } else {\n sizes = densities.map(density => Math.round(density * (width as number)))\n sizes = sizes.filter(size => size <= imgDimensions.width)\n }\n\n // ensure that the size passed in is included in the final output\n if (layout === `constrained` && !sizes.includes(width)) {\n sizes.push(width)\n }\n sizes = sizes.sort(sortNumeric)\n return {\n sizes,\n aspectRatio,\n presentationWidth: originalWidth,\n presentationHeight: Math.round(originalWidth / aspectRatio),\n unscaledWidth: width,\n }\n}\n\nexport function getDimensionsAndAspectRatio(\n dimensions,\n options\n): { width: number; height: number; aspectRatio: number } {\n // Calculate the eventual width/height of the image.\n const imageAspectRatio = dimensions.width / dimensions.height\n\n let width = options.width\n let height = options.height\n\n switch (options.fit) {\n case `fill`: {\n width = options.width ? options.width : dimensions.width\n height = options.height ? options.height : dimensions.height\n break\n }\n case `inside`: {\n const widthOption = options.width\n ? options.width\n : Number.MAX_SAFE_INTEGER\n const heightOption = options.height\n ? options.height\n : Number.MAX_SAFE_INTEGER\n\n width = Math.min(widthOption, Math.round(heightOption * imageAspectRatio))\n height = Math.min(\n heightOption,\n Math.round(widthOption / imageAspectRatio)\n )\n break\n }\n case `outside`: {\n const widthOption = options.width ? options.width : 0\n const heightOption = options.height ? options.height : 0\n\n width = Math.max(widthOption, Math.round(heightOption * imageAspectRatio))\n height = Math.max(\n heightOption,\n Math.round(widthOption / imageAspectRatio)\n )\n break\n }\n\n default: {\n if (options.width && !options.height) {\n width = options.width\n height = Math.round(options.width / imageAspectRatio)\n }\n\n if (options.height && !options.width) {\n width = Math.round(options.height * imageAspectRatio)\n height = options.height\n }\n }\n }\n\n return {\n width,\n height,\n aspectRatio: width / height,\n }\n}\n","/* global GATSBY___IMAGE */\nimport { generateImageData, EVERY_BREAKPOINT } from \"../image-utils\"\nimport type { CSSProperties, HTMLAttributes, ImgHTMLAttributes } from \"react\"\nimport type { Node } from \"gatsby\"\nimport type { PlaceholderProps } from \"./placeholder\"\nimport type { MainImageProps } from \"./main-image\"\nimport type { IGatsbyImageData } from \"./gatsby-image.browser\"\nimport type {\n IGatsbyImageHelperArgs,\n Layout,\n IImage,\n ImageFormat,\n} from \"../image-utils\"\n\n// Native lazy-loading support: https://addyosmani.com/blog/lazy-loading/\nexport const hasNativeLazyLoadSupport = (): boolean =>\n typeof HTMLImageElement !== `undefined` &&\n `loading` in HTMLImageElement.prototype\n\nexport function gatsbyImageIsInstalled(): boolean {\n return typeof GATSBY___IMAGE !== `undefined` && GATSBY___IMAGE\n}\n\nexport type IGatsbyImageDataParent = T & {\n gatsbyImageData: IGatsbyImageData\n}\nexport type IGatsbyImageParent = T & {\n gatsbyImage: IGatsbyImageData\n}\nexport type FileNode = Partial & {\n childImageSharp?: IGatsbyImageDataParent>\n}\n\nconst isGatsbyImageData = (\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n node: IGatsbyImageData | any\n): node is IGatsbyImageData =>\n // 🦆 check for a deep prop to be sure this is a valid gatsbyImageData object\n Boolean(node?.images?.fallback?.src)\n\nconst isGatsbyImageDataParent = (\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n node: IGatsbyImageDataParent | any\n): node is IGatsbyImageDataParent => Boolean(node?.gatsbyImageData)\n\nconst isGatsbyImageParent = (\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n node: IGatsbyImageParent | any\n): node is IGatsbyImageParent => Boolean(node?.gatsbyImage)\n\nexport type ImageDataLike =\n | FileNode\n | IGatsbyImageDataParent\n | IGatsbyImageParent\n | IGatsbyImageData\n\nexport const getImage = (\n node: ImageDataLike | null\n): IGatsbyImageData | undefined => {\n // This checks both for gatsbyImageData and gatsbyImage\n if (isGatsbyImageData(node)) {\n return node\n }\n // gatsbyImageData GraphQL field\n if (isGatsbyImageDataParent(node)) {\n return node.gatsbyImageData\n }\n // gatsbyImage GraphQL field for Gatsby's Image CDN service\n if (isGatsbyImageParent(node)) {\n return node.gatsbyImage\n }\n return node?.childImageSharp?.gatsbyImageData\n}\n\nexport const getSrc = (node: ImageDataLike): string | undefined =>\n getImage(node)?.images?.fallback?.src\n\nexport const getSrcSet = (node: ImageDataLike): string | undefined =>\n getImage(node)?.images?.fallback?.srcSet\n\nexport function getWrapperProps(\n width: number,\n height: number,\n layout: Layout\n): Pick, \"className\" | \"style\"> & {\n \"data-gatsby-image-wrapper\": string\n} {\n const wrapperStyle: CSSProperties = {}\n\n let className = `gatsby-image-wrapper`\n\n // If the plugin isn't installed we need to apply the styles inline\n if (!gatsbyImageIsInstalled()) {\n wrapperStyle.position = `relative`\n wrapperStyle.overflow = `hidden`\n }\n\n if (layout === `fixed`) {\n wrapperStyle.width = width\n wrapperStyle.height = height\n } else if (layout === `constrained`) {\n if (!gatsbyImageIsInstalled()) {\n wrapperStyle.display = `inline-block`\n wrapperStyle.verticalAlign = `top`\n }\n className = `gatsby-image-wrapper gatsby-image-wrapper-constrained`\n }\n\n return {\n className,\n \"data-gatsby-image-wrapper\": ``,\n style: wrapperStyle,\n }\n}\n\nexport interface IUrlBuilderArgs {\n width: number\n height: number\n baseUrl: string\n format: ImageFormat\n options: OptionsType\n}\nexport interface IGetImageDataArgs> {\n baseUrl: string\n /**\n * For constrained and fixed images, the size of the image element\n */\n width?: number\n height?: number\n /**\n * If available, pass the source image width and height\n */\n sourceWidth?: number\n sourceHeight?: number\n /**\n * If only one dimension is passed, then this will be used to calculate the other.\n */\n aspectRatio?: number\n layout?: Layout\n /**\n * Returns a URL based on the passed arguments. Should be a pure function\n */\n urlBuilder: (args: IUrlBuilderArgs) => string\n\n /**\n * Should be a data URI\n */\n placeholderURL?: string\n backgroundColor?: string\n /**\n * Used in error messages etc\n */\n pluginName?: string\n\n /**\n * If you do not support auto-format, pass an array of image types here\n */\n formats?: Array\n\n breakpoints?: Array\n\n /**\n * Passed to the urlBuilder function\n */\n options?: OptionsType\n}\n\n/**\n * Use this hook to generate gatsby-plugin-image data in the browser.\n */\nexport function getImageData({\n baseUrl,\n urlBuilder,\n sourceWidth,\n sourceHeight,\n pluginName = `getImageData`,\n formats = [`auto`],\n breakpoints,\n options,\n ...props\n}: IGetImageDataArgs): IGatsbyImageData {\n if (\n !breakpoints?.length &&\n (props.layout === `fullWidth` || (props.layout as string) === `FULL_WIDTH`)\n ) {\n breakpoints = EVERY_BREAKPOINT\n }\n const generateImageSource = (\n baseUrl: string,\n width: number,\n height?: number,\n format?: ImageFormat\n ): IImage => {\n return {\n width,\n height,\n format,\n src: urlBuilder({ baseUrl, width, height, options, format }),\n }\n }\n\n const sourceMetadata: IGatsbyImageHelperArgs[\"sourceMetadata\"] = {\n width: sourceWidth,\n height: sourceHeight,\n format: `auto`,\n }\n\n const args: IGatsbyImageHelperArgs = {\n ...props,\n pluginName,\n generateImageSource,\n filename: baseUrl,\n formats,\n breakpoints,\n sourceMetadata,\n }\n return generateImageData(args)\n}\n\nexport function getMainProps(\n isLoading: boolean,\n isLoaded: boolean,\n images: IGatsbyImageData[\"images\"],\n loading?: \"eager\" | \"lazy\",\n style: CSSProperties = {}\n): Partial {\n // fallback when it's not configured in gatsby-config.\n if (!gatsbyImageIsInstalled()) {\n style = {\n height: `100%`,\n left: 0,\n position: `absolute`,\n top: 0,\n transform: `translateZ(0)`,\n transition: `opacity 250ms linear`,\n width: `100%`,\n willChange: `opacity`,\n ...style,\n }\n }\n\n const result = {\n ...images,\n loading,\n shouldLoad: isLoading,\n \"data-main-image\": ``,\n style: {\n ...style,\n opacity: isLoaded ? 1 : 0,\n },\n }\n\n return result\n}\n\nexport type PlaceholderImageAttrs = ImgHTMLAttributes &\n Pick & {\n \"data-placeholder-image\"?: string\n }\n\nexport function getPlaceholderProps(\n placeholder: PlaceholderImageAttrs | undefined,\n isLoaded: boolean,\n layout: Layout,\n width?: number,\n height?: number,\n backgroundColor?: string,\n objectFit?: CSSProperties[\"objectFit\"],\n objectPosition?: CSSProperties[\"objectPosition\"]\n): PlaceholderImageAttrs {\n const wrapperStyle: CSSProperties = {}\n\n if (backgroundColor) {\n wrapperStyle.backgroundColor = backgroundColor\n\n if (layout === `fixed`) {\n wrapperStyle.width = width\n wrapperStyle.height = height\n wrapperStyle.backgroundColor = backgroundColor\n wrapperStyle.position = `relative`\n } else if (layout === `constrained`) {\n wrapperStyle.position = `absolute`\n wrapperStyle.top = 0\n wrapperStyle.left = 0\n wrapperStyle.bottom = 0\n wrapperStyle.right = 0\n } else if (layout === `fullWidth`) {\n wrapperStyle.position = `absolute`\n wrapperStyle.top = 0\n wrapperStyle.left = 0\n wrapperStyle.bottom = 0\n wrapperStyle.right = 0\n }\n }\n\n if (objectFit) {\n wrapperStyle.objectFit = objectFit\n }\n\n if (objectPosition) {\n wrapperStyle.objectPosition = objectPosition\n }\n const result: PlaceholderImageAttrs = {\n ...placeholder,\n \"aria-hidden\": true,\n \"data-placeholder-image\": ``,\n style: {\n opacity: isLoaded ? 0 : 1,\n transition: `opacity 500ms linear`,\n ...wrapperStyle,\n },\n }\n\n // fallback when it's not configured in gatsby-config.\n if (!gatsbyImageIsInstalled()) {\n result.style = {\n height: `100%`,\n left: 0,\n position: `absolute`,\n top: 0,\n width: `100%`,\n }\n }\n\n return result\n}\n\nexport interface IArtDirectedImage {\n media: string\n image: IGatsbyImageData\n}\n\n/**\n * Generate a Gatsby image data object with multiple, art-directed images that display at different\n * resolutions.\n *\n * @param defaultImage The image displayed when no media query matches.\n * It is also used for all other settings applied to the image, such as width, height and layout.\n * You should pass a className to the component with media queries to adjust the size of the container,\n * as this cannot be adjusted automatically.\n * @param artDirected Array of objects which each contains a `media` string which is a media query\n * such as `(min-width: 320px)`, and the image object to use when that query matches.\n */\nexport function withArtDirection(\n defaultImage: IGatsbyImageData,\n artDirected: Array\n): IGatsbyImageData {\n const { images, placeholder, ...props } = defaultImage\n const output: IGatsbyImageData = {\n ...props,\n images: {\n ...images,\n sources: [],\n },\n placeholder: placeholder && {\n ...placeholder,\n sources: [],\n },\n }\n\n artDirected.forEach(({ media, image }) => {\n if (!media) {\n if (process.env.NODE_ENV === `development`) {\n console.warn(\n \"[gatsby-plugin-image] All art-directed images passed to must have a value set for `media`. Skipping.\"\n )\n }\n return\n }\n\n if (\n image.layout !== defaultImage.layout &&\n process.env.NODE_ENV === `development`\n ) {\n console.warn(\n `[gatsby-plugin-image] Mismatched image layout: expected \"${defaultImage.layout}\" but received \"${image.layout}\". All art-directed images use the same layout as the default image`\n )\n }\n\n output.images.sources.push(\n ...image.images.sources.map(source => {\n return { ...source, media }\n }),\n {\n media,\n srcSet: image.images.fallback.srcSet,\n }\n )\n\n if (!output.placeholder) {\n return\n }\n\n output.placeholder.sources.push({\n media,\n srcSet: image.placeholder.fallback,\n })\n })\n output.images.sources.push(...images.sources)\n if (placeholder?.sources) {\n output.placeholder?.sources.push(...placeholder.sources)\n }\n return output\n}\n","import React, { Fragment, FunctionComponent, PropsWithChildren } from \"react\"\nimport terserMacro from \"../../macros/terser.macro\"\nimport { Layout } from \"../image-utils\"\n\nexport interface ILayoutWrapperProps {\n layout: Layout\n width: number\n height: number\n}\n\nconst NativeScriptLoading: FunctionComponent = () => (\n \n)\n\nexport function getSizer(\n layout: Layout,\n width: number,\n height: number\n): string {\n let sizer = ``\n if (layout === `fullWidth`) {\n sizer = `
`\n }\n\n if (layout === `constrained`) {\n sizer = `
\"\"
`\n }\n\n return sizer\n}\n\nconst Sizer: FunctionComponent = function Sizer({\n layout,\n width,\n height,\n}) {\n if (layout === `fullWidth`) {\n return (\n
\n )\n }\n\n if (layout === `constrained`) {\n return (\n
\n \n
\n )\n }\n\n return null\n}\n\nexport const LayoutWrapper: FunctionComponent<\n PropsWithChildren\n> = function LayoutWrapper({ children, ...props }) {\n return (\n \n \n {children}\n\n {SERVER ? : null}\n \n )\n}\n","import React, { FunctionComponent, ImgHTMLAttributes } from \"react\"\nimport * as PropTypes from \"prop-types\"\n\nexport interface IResponsiveImageProps {\n sizes?: string\n srcSet: string\n}\n\nexport type SourceProps = IResponsiveImageProps &\n (\n | {\n media: string\n type?: string\n }\n | {\n media?: string\n type: string\n }\n )\n\ntype FallbackProps = { src: string } & Partial\n\ntype ImageProps = ImgHTMLAttributes & {\n src: string\n alt: string\n shouldLoad: boolean\n}\n\nexport type PictureProps = ImgHTMLAttributes & {\n fallback?: FallbackProps\n sources?: Array\n alt: string\n shouldLoad?: boolean\n}\n\nconst Image: FunctionComponent = function Image({\n src,\n srcSet,\n loading,\n alt = ``,\n shouldLoad,\n ...props\n}) {\n return (\n \n )\n}\n\nexport const Picture: React.FC = function Picture({\n fallback,\n sources = [],\n shouldLoad = true,\n ...props\n}) {\n const sizes = props.sizes || fallback?.sizes\n const fallbackImage = (\n \n )\n\n if (!sources.length) {\n return fallbackImage\n }\n\n return (\n \n {sources.map(({ media, srcSet, type }) => (\n \n ))}\n {fallbackImage}\n \n )\n}\n\nImage.propTypes = {\n src: PropTypes.string.isRequired,\n alt: PropTypes.string.isRequired,\n sizes: PropTypes.string,\n srcSet: PropTypes.string,\n shouldLoad: PropTypes.bool,\n}\n\nPicture.displayName = `Picture`\nPicture.propTypes = {\n alt: PropTypes.string.isRequired,\n shouldLoad: PropTypes.bool,\n fallback: PropTypes.exact({\n src: PropTypes.string.isRequired,\n srcSet: PropTypes.string,\n sizes: PropTypes.string,\n }),\n sources: PropTypes.arrayOf(\n PropTypes.oneOfType([\n PropTypes.exact({\n media: PropTypes.string.isRequired,\n type: PropTypes.string,\n sizes: PropTypes.string,\n srcSet: PropTypes.string.isRequired,\n }),\n PropTypes.exact({\n media: PropTypes.string,\n type: PropTypes.string.isRequired,\n sizes: PropTypes.string,\n srcSet: PropTypes.string.isRequired,\n }),\n ])\n ),\n}\n","import React, { FunctionComponent, ImgHTMLAttributes } from \"react\"\nimport * as PropTypes from \"prop-types\"\nimport { Picture, SourceProps } from \"./picture\"\n\nexport type PlaceholderProps = ImgHTMLAttributes & {\n fallback?: string\n sources?: Array\n}\n\nexport const Placeholder: FunctionComponent =\n function Placeholder({ fallback, ...props }) {\n if (fallback) {\n return (\n \n )\n } else {\n return
\n }\n }\n\nPlaceholder.displayName = `Placeholder`\nPlaceholder.propTypes = {\n fallback: PropTypes.string,\n sources: Picture.propTypes?.sources,\n alt: function (props, propName, componentName): Error | null {\n if (!props[propName]) {\n return null\n }\n\n return new Error(\n `Invalid prop \\`${propName}\\` supplied to \\`${componentName}\\`. Validation failed.`\n )\n },\n}\n","import React from \"react\"\nimport { Picture, PictureProps } from \"./picture\"\n\nexport type MainImageProps = PictureProps\n\nexport const MainImage: React.FC = function MainImage(props) {\n return (\n <>\n \n \n \n )\n}\n\nMainImage.displayName = `MainImage`\nMainImage.propTypes = Picture.propTypes\n","import React from \"react\"\nimport { getWrapperProps, getMainProps, getPlaceholderProps } from \"./hooks\"\nimport { Placeholder } from \"./placeholder\"\nimport { MainImage, MainImageProps } from \"./main-image\"\nimport { LayoutWrapper } from \"./layout-wrapper\"\nimport PropTypes from \"prop-types\"\nimport type { FunctionComponent, WeakValidationMap } from \"react\"\nimport type { GatsbyImageProps, IGatsbyImageData } from \"./gatsby-image.browser\"\n\nconst removeNewLines = (str: string): string => str.replace(/\\n/g, ``)\n\nexport const GatsbyImage: FunctionComponent =\n function GatsbyImage({\n as = `div`,\n className,\n class: preactClass,\n style,\n image,\n loading = `lazy`,\n imgClassName,\n imgStyle,\n backgroundColor,\n objectFit,\n objectPosition,\n ...props\n }) {\n if (!image) {\n console.warn(`[gatsby-plugin-image] Missing image prop`)\n return null\n }\n\n if (preactClass) {\n className = preactClass\n }\n\n imgStyle = {\n objectFit,\n objectPosition,\n backgroundColor,\n ...imgStyle,\n }\n\n const {\n width,\n height,\n layout,\n images,\n placeholder,\n backgroundColor: placeholderBackgroundColor,\n } = image\n\n const {\n style: wStyle,\n className: wClass,\n ...wrapperProps\n } = getWrapperProps(width, height, layout)\n\n const cleanedImages: IGatsbyImageData[\"images\"] = {\n fallback: undefined,\n sources: [],\n }\n if (images.fallback) {\n cleanedImages.fallback = {\n ...images.fallback,\n srcSet: images.fallback.srcSet\n ? removeNewLines(images.fallback.srcSet)\n : undefined,\n }\n }\n\n if (images.sources) {\n cleanedImages.sources = images.sources.map(source => {\n return {\n ...source,\n srcSet: removeNewLines(source.srcSet),\n }\n })\n }\n\n return React.createElement(\n as,\n {\n ...wrapperProps,\n style: {\n ...wStyle,\n ...style,\n backgroundColor,\n },\n className: `${wClass}${className ? ` ${className}` : ``}`,\n },\n \n \n\n )}\n // When eager is set we want to start the isLoading state on true (we want to load the img without react)\n {...getMainProps(\n loading === `eager`,\n false,\n cleanedImages,\n loading,\n imgStyle\n )}\n />\n \n )\n }\n\nexport const altValidator: PropTypes.Validator = (\n props: GatsbyImageProps,\n propName,\n componentName,\n ...rest\n): Error | undefined => {\n if (!props.alt && props.alt !== ``) {\n return new Error(\n `The \"alt\" prop is required in ${componentName}. If the image is purely presentational then pass an empty string: e.g. alt=\"\". Learn more: https://a11y-style-guide.com/style-guide/section-media.html`\n )\n }\n\n return PropTypes.string(props, propName, componentName, ...rest)\n}\n\nexport const propTypes = {\n image: PropTypes.object.isRequired,\n alt: altValidator,\n} as WeakValidationMap\n","import {\n createElement,\n memo,\n useMemo,\n useEffect,\n useLayoutEffect,\n useRef,\n} from \"react\"\nimport {\n getWrapperProps,\n gatsbyImageIsInstalled,\n hasNativeLazyLoadSupport,\n} from \"./hooks\"\nimport { getSizer } from \"./layout-wrapper\"\nimport { propTypes } from \"./gatsby-image.server\"\nimport type {\n FC,\n ElementType,\n FunctionComponent,\n ImgHTMLAttributes,\n CSSProperties,\n ReactEventHandler,\n} from \"react\"\nimport type { renderImageToString } from \"./lazy-hydrate\"\nimport type { PlaceholderProps } from \"./placeholder\"\nimport type { MainImageProps } from \"./main-image\"\nimport type { Layout } from \"../image-utils\"\n\nconst imageCache = new Set()\nlet renderImageToStringPromise\nlet renderImage: typeof renderImageToString | undefined\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface GatsbyImageProps\n extends Omit<\n ImgHTMLAttributes,\n \"placeholder\" | \"onLoad\" | \"src\" | \"srcSet\" | \"width\" | \"height\"\n > {\n alt: string\n as?: ElementType\n className?: string\n class?: string\n imgClassName?: string\n image: IGatsbyImageData\n imgStyle?: CSSProperties\n backgroundColor?: string\n objectFit?: CSSProperties[\"objectFit\"]\n objectPosition?: CSSProperties[\"objectPosition\"]\n onLoad?: (props: { wasCached: boolean }) => void\n onError?: ReactEventHandler\n onStartLoad?: (props: { wasCached: boolean }) => void\n}\n\nexport interface IGatsbyImageData {\n layout: Layout\n width: number\n height: number\n backgroundColor?: string\n images: Pick\n placeholder?: Pick\n}\n\nconst GatsbyImageHydrator: FC = function GatsbyImageHydrator({\n as = `div`,\n image,\n style,\n backgroundColor,\n className,\n class: preactClass,\n onStartLoad,\n onLoad,\n onError,\n ...props\n}) {\n const { width, height, layout } = image\n const {\n style: wStyle,\n className: wClass,\n ...wrapperProps\n } = getWrapperProps(width, height, layout)\n const root = useRef()\n const cacheKey = useMemo(() => JSON.stringify(image.images), [image.images])\n\n // Preact uses class instead of className so we need to check for both\n if (preactClass) {\n className = preactClass\n }\n\n const sizer = getSizer(layout, width, height)\n\n useEffect(() => {\n if (!renderImageToStringPromise) {\n renderImageToStringPromise = import(`./lazy-hydrate`).then(\n ({ renderImageToString, swapPlaceholderImage }) => {\n renderImage = renderImageToString\n\n return {\n renderImageToString,\n swapPlaceholderImage,\n }\n }\n )\n }\n\n // The plugin image component is a bit special where if it's server-side rendered, we add extra script tags to support lazy-loading without\n // In this case we stop hydration but fire the correct events.\n const ssrImage = root.current.querySelector(\n `[data-gatsby-image-ssr]`\n ) as HTMLImageElement\n if (ssrImage && hasNativeLazyLoadSupport()) {\n if (ssrImage.complete) {\n // Trigger onStartload and onLoad events\n onStartLoad?.({\n wasCached: true,\n })\n onLoad?.({\n wasCached: true,\n })\n\n // remove ssr key for state updates but add delay to not fight with native code snippt of gatsby-ssr\n setTimeout(() => {\n ssrImage.removeAttribute(`data-gatsby-image-ssr`)\n }, 0)\n } else {\n onStartLoad?.({\n wasCached: true,\n })\n\n ssrImage.addEventListener(`load`, function onLoadListener() {\n ssrImage.removeEventListener(`load`, onLoadListener)\n\n onLoad?.({\n wasCached: true,\n })\n // remove ssr key for state updates but add delay to not fight with native code snippt of gatsby-ssr\n setTimeout(() => {\n ssrImage.removeAttribute(`data-gatsby-image-ssr`)\n }, 0)\n })\n }\n\n imageCache.add(cacheKey)\n\n return\n }\n\n if (renderImage && imageCache.has(cacheKey)) {\n return\n }\n\n let animationFrame\n let cleanupCallback\n renderImageToStringPromise.then(\n ({ renderImageToString, swapPlaceholderImage }) => {\n if (!root.current) {\n return\n }\n\n root.current.innerHTML = renderImageToString({\n isLoading: true,\n isLoaded: imageCache.has(cacheKey),\n image,\n ...props,\n })\n\n if (!imageCache.has(cacheKey)) {\n animationFrame = requestAnimationFrame(() => {\n if (root.current) {\n cleanupCallback = swapPlaceholderImage(\n root.current,\n cacheKey,\n imageCache,\n style,\n onStartLoad,\n onLoad,\n onError\n )\n }\n })\n }\n }\n )\n\n // eslint-disable-next-line consistent-return\n return (): void => {\n if (animationFrame) {\n cancelAnimationFrame(animationFrame)\n }\n if (cleanupCallback) {\n cleanupCallback()\n }\n }\n }, [image])\n\n // useLayoutEffect is ran before React commits to the DOM. This allows us to make sure our HTML is using our cached image version\n useLayoutEffect(() => {\n if (imageCache.has(cacheKey) && renderImage) {\n root.current.innerHTML = renderImage({\n isLoading: imageCache.has(cacheKey),\n isLoaded: imageCache.has(cacheKey),\n image,\n ...props,\n })\n\n // Trigger onStartload and onLoad events\n onStartLoad?.({\n wasCached: true,\n })\n onLoad?.({\n wasCached: true,\n })\n }\n }, [image])\n\n // By keeping all props equal React will keep the component in the DOM\n return createElement(as, {\n ...wrapperProps,\n style: {\n ...wStyle,\n ...style,\n backgroundColor,\n },\n className: `${wClass}${className ? ` ${className}` : ``}`,\n ref: root,\n dangerouslySetInnerHTML: {\n __html: sizer,\n },\n suppressHydrationWarning: true,\n })\n}\n\nexport const GatsbyImage: FunctionComponent = memo(\n function GatsbyImage(props) {\n if (!props.image) {\n if (process.env.NODE_ENV === `development`) {\n console.warn(`[gatsby-plugin-image] Missing image prop`)\n }\n\n return null\n }\n\n if (!gatsbyImageIsInstalled() && process.env.NODE_ENV === `development`) {\n console.warn(\n `[gatsby-plugin-image] You're missing out on some cool performance features. Please add \"gatsby-plugin-image\" to your gatsby-config.js`\n )\n }\n\n return createElement(GatsbyImageHydrator, props)\n }\n)\n\nGatsbyImage.propTypes = propTypes\nGatsbyImage.displayName = `GatsbyImage`\n","import React, { FunctionComponent, ReactElement } from \"react\"\nimport {\n altValidator,\n GatsbyImage as GatsbyImageServer,\n} from \"./gatsby-image.server\"\nimport { GatsbyImageProps, IGatsbyImageData } from \"./gatsby-image.browser\"\nimport PropTypes from \"prop-types\"\nimport { ISharpGatsbyImageArgs } from \"../image-utils\"\n\nexport interface IStaticImageProps\n extends Omit,\n Omit {\n src: string\n filename?: string\n}\n\n// These values are added by Babel. Do not add them manually\ninterface IPrivateProps {\n __imageData?: IGatsbyImageData\n __error?: string\n}\n\nexport function _getStaticImage(\n GatsbyImage: FunctionComponent\n): React.FC {\n return function StaticImage({\n src,\n __imageData: imageData,\n __error,\n // We extract these because they're not meant to be passed-down to GatsbyImage\n /* eslint-disable @typescript-eslint/no-unused-vars */\n width,\n height,\n aspectRatio,\n tracedSVGOptions,\n placeholder,\n formats,\n quality,\n transformOptions,\n jpgOptions,\n pngOptions,\n webpOptions,\n avifOptions,\n blurredOptions,\n breakpoints,\n outputPixelDensities,\n /* eslint-enable @typescript-eslint/no-unused-vars */\n ...props\n }): ReactElement {\n if (__error) {\n console.warn(__error)\n }\n\n if (imageData) {\n return \n }\n console.warn(`Image not loaded`, src)\n if (!__error && process.env.NODE_ENV === `development`) {\n console.warn(\n `Please ensure that \"gatsby-plugin-image\" is included in the plugins array in gatsby-config.js, and that your version of gatsby is at least 2.24.78`\n )\n }\n return null\n }\n}\n\nconst StaticImage: React.FC =\n _getStaticImage(GatsbyImageServer)\n\nconst checkDimensionProps: PropTypes.Validator = (\n props: IStaticImageProps & IPrivateProps,\n propName: keyof IStaticImageProps & IPrivateProps,\n ...rest\n) => {\n if (\n props.layout === `fullWidth` &&\n (propName === `width` || propName === `height`) &&\n props[propName]\n ) {\n return new Error(\n `\"${propName}\" ${props[propName]} may not be passed when layout is fullWidth.`\n )\n }\n return PropTypes.number(props, propName, ...rest)\n}\n\nconst validLayouts = new Set([`fixed`, `fullWidth`, `constrained`])\n\nexport const propTypes = {\n src: PropTypes.string.isRequired,\n alt: altValidator,\n width: checkDimensionProps,\n height: checkDimensionProps,\n sizes: PropTypes.string,\n layout: (props: IStaticImageProps & IPrivateProps): Error | undefined => {\n if (props.layout === undefined) {\n return undefined\n }\n if (validLayouts.has(props.layout)) {\n return undefined\n }\n\n return new Error(\n `Invalid value ${props.layout}\" provided for prop \"layout\". Defaulting to \"constrained\". Valid values are \"fixed\", \"fullWidth\" or \"constrained\".`\n )\n },\n}\n\nStaticImage.displayName = `StaticImage`\nStaticImage.propTypes = propTypes\n\nexport { StaticImage }\n","import {\n GatsbyImage as GatsbyImageBrowser,\n IGatsbyImageData,\n} from \"./gatsby-image.browser\"\nimport React from \"react\"\nimport {\n _getStaticImage,\n propTypes,\n IStaticImageProps,\n} from \"./static-image.server\"\n// These values are added by Babel. Do not add them manually\ninterface IPrivateProps {\n __imageData?: IGatsbyImageData\n __error?: string\n}\n\nconst StaticImage: React.FC =\n _getStaticImage(GatsbyImageBrowser)\n\nStaticImage.displayName = `StaticImage`\nStaticImage.propTypes = propTypes\n\nexport { StaticImage }\n","/* global __MANIFEST_PLUGIN_HAS_LOCALISATION__ */\nimport { withPrefix } from \"gatsby\";\nimport getManifestForPathname from \"./get-manifest-pathname\";\n\n// when we don't have localisation in our manifest, we tree shake everything away\nexport const onRouteUpdate = function onRouteUpdate({\n location\n}, pluginOptions) {\n if (__MANIFEST_PLUGIN_HAS_LOCALISATION__) {\n const {\n localize\n } = pluginOptions;\n const manifestFilename = getManifestForPathname(location.pathname, localize, true);\n const manifestEl = document.head.querySelector(`link[rel=\"manifest\"]`);\n if (manifestEl) {\n manifestEl.setAttribute(`href`, withPrefix(manifestFilename));\n }\n }\n};","\"use strict\";\n\nexports.__esModule = true;\nexports.default = void 0;\nvar _gatsby = require(\"gatsby\");\n/**\n * Get a manifest filename depending on localized pathname\n *\n * @param {string} pathname\n * @param {Array<{start_url: string, lang: string}>} localizedManifests\n * @param {boolean} shouldPrependPathPrefix\n * @return string\n */\nvar _default = (pathname, localizedManifests, shouldPrependPathPrefix = false) => {\n const defaultFilename = `manifest.webmanifest`;\n if (!Array.isArray(localizedManifests)) {\n return defaultFilename;\n }\n const localizedManifest = localizedManifests.find(app => {\n let startUrl = app.start_url;\n if (shouldPrependPathPrefix) {\n startUrl = (0, _gatsby.withPrefix)(startUrl);\n }\n return pathname.startsWith(startUrl);\n });\n if (!localizedManifest) {\n return defaultFilename;\n }\n return `manifest_${localizedManifest.lang}.webmanifest`;\n};\nexports.default = _default;","import { graphql, useStaticQuery } from \"gatsby\";\nimport { GatsbyImage } from \"gatsby-plugin-image\";\nimport React from \"react\";\n\nconst GetMediaFromSrc = () => {\n const data = useStaticQuery(graphql`\n query {\n allImages: allFile(filter: { sourceInstanceName: { eq: \"images\" } }) {\n nodes {\n relativePath\n childImageSharp {\n gatsbyImageData(\n formats: [AUTO, WEBP, AVIF, JPG, PNG]\n layout: CONSTRAINED # Specify the layout here, choose the appropriate one for your use case\n )\n }\n extension\n publicURL\n }\n }\n }\n `);\n return data;\n};\n\nexport function FetchImage({ mediaName, folder, className, styles }) {\n const data = GetMediaFromSrc();\n\n const imagePath = folder ? `${folder}/${mediaName}` : mediaName;\n\n const image = data.allImages.nodes.find((node) => {\n if (node.relativePath === imagePath) {\n return node;\n }\n });\n\n if (!image) {\n // console.error(`media not found: ${imagePath}`);\n return null;\n }\n const imgData = image.childImageSharp\n ? image.childImageSharp.gatsbyImageData\n : null;\n return (\n \n );\n}\n\nexport const getPublicUrl = (folder, name) => {\n const data = GetMediaFromSrc();\n const imagePath = folder ? `${folder}/${name}` : name;\n const image = data.allImages.nodes.find(\n (node) => node.relativePath === imagePath\n );\n\n if (!image) {\n return null;\n }\n return image.publicURL;\n};\n","import React from \"react\";\nimport { graphql, useStaticQuery } from \"gatsby\";\nimport { GatsbyImage } from \"gatsby-plugin-image\";\nimport { Img } from \"react-image\";\n\nconst RenderMedia = ({ mediaName, folder, className, styles }) => {\n const data = useStaticQuery(graphql`\n query {\n allImages: allFile(filter: { sourceInstanceName: { eq: \"images\" } }) {\n nodes {\n relativePath\n extension\n publicURL\n childImageSharp {\n gatsbyImageData(\n formats: [AUTO, WEBP, AVIF]\n layout: CONSTRAINED # Specify the layout here, choose the appropriate one for your use case\n )\n }\n }\n }\n }\n `);\n\n if (!mediaName) return null;\n const imagePath = folder ? `${folder}/${mediaName}` : mediaName;\n\n const image = data.allImages.nodes.find((node) => {\n if (node.relativePath === imagePath) {\n return node;\n }\n });\n\n if (!image) {\n \n return null;\n }\n\n const SvgData = image.extension === \"svg\" ? image.publicURL : false;\n const Mp4Data = image.extension === \"mp4\" ? image.publicURL : false;\n const imgData = image.childImageSharp\n ? image.childImageSharp.gatsbyImageData\n : null;\n if (mediaName && mediaName !== \"undefined\") {\n return SvgData ? (\n {mediaName}\n ) : Mp4Data ? (\n \n \n \n ) : (\n \n );\n } else {\n return <>;\n }\n};\n\nexport default RenderMedia;\n","// extracted by mini-css-extract-plugin\nexport var PDFButton = \"Button-module--PDFButton--7816f\";\nexport var PopupButton = \"Button-module--PopupButton--3a66f\";\nexport var PrimaryButton = \"Button-module--PrimaryButton--aabf7\";\nexport var SecondaryButton = \"Button-module--SecondaryButton--63792\";\nexport var TabPrimaryButton = \"Button-module--TabPrimaryButton--37f60\";\nexport var TabPrimaryButtonActive = \"Button-module--TabPrimaryButtonActive--61cdf\";\nexport var TagBanner = \"Button-module--TagBanner--7d257\";\nexport var TagBannerActive = \"Button-module--TagBannerActive--40684\";\nexport var TagBannerBlackColor = \"Button-module--TagBannerBlackColor--9dfad\";\nexport var ViewMoreButton = \"Button-module--ViewMoreButton--221cc\";\nexport var ViewMoreButtonActive = \"Button-module--ViewMoreButtonActive--a8e5f\";","import React, { forwardRef } from \"react\";\nimport * as styles from \"./Button.module.css\";\nimport { Link } from \"gatsby\";\nexport const PrimaryButton = ({ buttonText, className, ...rest }) => {\n return (\n \n );\n};\nexport const PrimaryButtonLink = ({ buttonLinkText, className, ...rest }) => {\n return (\n \n {buttonLinkText}\n \n );\n};\n\nexport const SecondaryButton = ({ buttonText, className, ...rest }) => {\n const RenderDiv = rest?.to ? Link : \"button\";\n return (\n \n {buttonText}\n \n );\n};\n\nexport const TabButton = ({ tabText, isActive, className, ...rest }) => {\n return (\n \n {tabText}\n
\n );\n};\n\nexport const BannerTag = ({ tagText, isActive, black, className, ...rest }) => {\n const RenderDiv = rest?.to ? Link : \"div\";\n return (\n \n {tagText}\n \n );\n};\n\nexport const ViewMoreButton = forwardRef(\n ({ buttonText, isActive, ...rest }, ref) => {\n return (\n \n {buttonText}\n \n );\n }\n);\n\nexport const PDFDownloader = ({ label, className, ...rest }) => {\n return (\n \n \n \n \n \n \n {label}\n \n );\n};\n\nexport const PopupButton = forwardRef(\n ({ label, copy, className, ...rest }, ref) => {\n return (\n \n {copy && (\n \n \n \n )}\n {label}\n \n );\n }\n);\n","// extracted by mini-css-extract-plugin\nexport var GatsbyImageCircleImage = \"cards-module--GatsbyImageCircleImage--772ad\";\nexport var GatsbyImageContainer = \"cards-module--GatsbyImageContainer--6350b\";\nexport var PlatformBannerCard = \"cards-module--PlatformBannerCard--d759b\";\nexport var PlatformBannerCardBg = \"cards-module--PlatformBannerCardBg--3e05c\";\nexport var PlatformBannerCardSubText = \"cards-module--PlatformBannerCardSubText--86c8c\";\nexport var PlatformBannerCardText = \"cards-module--PlatformBannerCardText--59fda\";\nexport var PlatformBannerCardTextDiv = \"cards-module--PlatformBannerCardTextDiv--64da6\";\nexport var PrimaryCrad = \"cards-module--PrimaryCrad--2cd54\";\nexport var PrimaryCradActive = \"cards-module--PrimaryCradActive--f2125\";\nexport var PrimaryCradEmbed = \"cards-module--PrimaryCradEmbed--45cd7\";\nexport var PrimaryCradImg = \"cards-module--PrimaryCradImg--417e1\";\nexport var PrimaryCradText = \"cards-module--PrimaryCradText--0cf5c\";\nexport var PrimaryCradTitleText = \"cards-module--PrimaryCradTitleText--7b0c2\";\nexport var PrimaryCradVideo = \"cards-module--PrimaryCradVideo--bd90b\";\nexport var PrimarySquareCard = \"cards-module--PrimarySquareCard--c562a\";\nexport var PrimarySquareCardEmbed = \"cards-module--PrimarySquareCardEmbed--c775a\";\nexport var PrimarySquareCardImg = \"cards-module--PrimarySquareCardImg--61b7e\";\nexport var PrimarySquareCardOverlayDiv = \"cards-module--PrimarySquareCardOverlayDiv--19363\";\nexport var PrimarySquareCardOverlayText = \"cards-module--PrimarySquareCardOverlayText--73f42\";\nexport var PrimarySquareCardTitle = \"cards-module--PrimarySquareCardTitle--98470\";\nexport var PrimarySquareCardVideo = \"cards-module--PrimarySquareCardVideo--0ef71\";\nexport var SecondaryCard = \"cards-module--SecondaryCard--153f9\";\nexport var SecondaryCardEmbed = \"cards-module--SecondaryCardEmbed--562d1\";\nexport var SecondaryCardImg = \"cards-module--SecondaryCardImg--ded6f\";\nexport var SecondaryCardVideo = \"cards-module--SecondaryCardVideo--862ca\";\nexport var SecondaryCircleCardEmbed = \"cards-module--SecondaryCircleCardEmbed--2de1f\";\nexport var SecondaryCircleCardImg = \"cards-module--SecondaryCircleCardImg--0ef5f\";\nexport var SecondaryCircleCardVideo = \"cards-module--SecondaryCircleCardVideo--06dfe\";\nexport var SecondaryCircleCrad = \"cards-module--SecondaryCircleCrad--376f3\";\nexport var SecondarySquareCard = \"cards-module--SecondarySquareCard--85661\";\nexport var SecondarySquareCardEmbed = \"cards-module--SecondarySquareCardEmbed--22c1e\";\nexport var SecondarySquareCardImg = \"cards-module--SecondarySquareCardImg--f1b6e\";\nexport var SecondarySquareCardVideo = \"cards-module--SecondarySquareCardVideo--48cda\";\nexport var StoryCrad = \"cards-module--StoryCrad--573cc\";\nexport var StoryCradImage = \"cards-module--StoryCradImage--b7c1f\";\nexport var StoryCradText = \"cards-module--StoryCradText--8c941\";\nexport var StoryCradTitleText = \"cards-module--StoryCradTitleText--3d2c5\";\nexport var UseCaseBannerCard = \"cards-module--UseCaseBannerCard--19772\";\nexport var caseStudyCard = \"cards-module--caseStudyCard--d8cb8\";\nexport var caseStudyCardDesc = \"cards-module--caseStudyCardDesc--1059f\";\nexport var caseStudyCardTitle = \"cards-module--caseStudyCardTitle--7eeaa\";\nexport var caseStudyExplore = \"cards-module--caseStudyExplore--82158\";\nexport var circleCard = \"cards-module--circleCard--ca9c6\";\nexport var clientCardActive = \"cards-module--clientCardActive--9069f\";\nexport var clientsCircleCard = \"cards-module--clientsCircleCard--42925\";\nexport var icon = \"cards-module--icon--e5091\";\nexport var iconContainer = \"cards-module--iconContainer--ee314\";\nexport var imgContainer = \"cards-module--imgContainer--7ab42\";\nexport var isPlatform = \"cards-module--isPlatform--b5847\";\nexport var minutes = \"cards-module--minutes--e0ed0\";\nexport var moveUp1 = \"cards-module--moveUp1--956aa\";\nexport var moveUp2 = \"cards-module--moveUp2--2f286\";\nexport var moveUp3 = \"cards-module--moveUp3--059dc\";\nexport var moveUp4 = \"cards-module--moveUp4--700f5\";\nexport var moveUp5 = \"cards-module--moveUp5--6b868\";\nexport var moveUp6 = \"cards-module--moveUp6--75a8b\";\nexport var moveUp7 = \"cards-module--moveUp7--eb7ae\";\nexport var overlayDiv = \"cards-module--overlayDiv--915c7\";\nexport var peopleCardContainer = \"cards-module--peopleCardContainer--d400e\";\nexport var peopleCardImgDiv = \"cards-module--peopleCardImgDiv--4efce\";\nexport var readTime = \"cards-module--readTime--1f948\";","import { Link } from \"gatsby\";\nimport { FetchImage, getPublicUrl } from \"../FetchImage\";\nimport * as styles from \"./cards.module.css\";\nimport React from \"react\";\nimport { BannerTag } from \"../buttons/Buttons\";\nimport { baseUrl, RenderSvg, ScreenSize } from \"../../utils/helpers/helper\";\nimport { GatsbyImage } from \"gatsby-plugin-image\";\n\nexport const PrimaryCrad = React.memo(\n ({\n Text,\n circleCard,\n image,\n video,\n CardActive,\n embedCode,\n className,\n platformCard,\n ...rest\n }) => {\n const RenderData = rest?.to ? Link : \"div\";\n return (\n \n {embedCode ? (\n \n loadingEmbed\n \n ) : image ? (\n image.gatsbyImageData ? (\n
\n \n
\n ) : (\n \n )\n ) : (\n \n )}\n \n {Text}\n

\n {rest?.readTime}\n

\n

\n \n );\n }\n);\n\nexport const PrimaryCradTitleText = ({ Text, ...rest }) => {\n return (\n

\n {Text}\n

\n );\n};\n\nexport const SecondaryCard = ({\n Text,\n image,\n video,\n CardActive,\n embedCode,\n media,\n ...rest\n}) => {\n return (\n
\n {embedCode ? (\n \n loadingEmbed\n
\n ) : image ? (\n image.gatsbyImageData ? (\n
\n \n
\n ) : (\n \n \n \n )\n ) : media ? (\n \n {media.gatsbyImageData ? (\n
\n \n
\n ) : (\n \"info\n )}\n \n ) : (\n \n )}\n \n );\n};\n\nexport const PlatformBannerCard = ({ title, description, bgSrc, ...rest }) => {\n const RenderDiv = rest?.to ? Link : \"div\";\n return (\n \n {bgSrc && (\n <>\n
\n
\n {\n
\n \n
\n }\n
\n \n )}\n
\n

{title}

\n {!ScreenSize.isMobile() && (\n \n {description?.substring(0, 80)}\n

\n )}\n
\n
\n );\n};\n\nexport const UseCaseBannerCard = ({ title, ...rest }) => {\n return (\n \n {title}\n \n );\n};\n\nexport const SecondaryCircleCard = ({\n Text,\n image,\n video,\n CardActive,\n embedCode,\n circleImage,\n ...rest\n}) => {\n const RenderDiv = rest?.to ? Link : \"div\";\n return (\n \n {embedCode ? (\n \n loadingEmbed\n \n ) : image ? (\n image.gatsbyImageData ? (\n \n \n \n ) : (\n \n \n {/* */}\n \n )\n ) : (\n \n )}\n \n );\n};\n\nexport const PrimarySquareCard = ({\n Text,\n image,\n video,\n tagText,\n showMinute,\n title,\n className,\n embedCode,\n ...rest\n}) => {\n const RenderData = rest?.to ? Link : \"div\";\n\n return (\n \n {embedCode ? (\n \n loadingEmbed\n \n ) : image ? (\n image.gatsbyImageData ? (\n
\n \n
\n ) : (\n \n \n \n )\n ) : (\n \n )}\n
\n

{title}

\n
\n \n {showMinute &&

{showMinute}

}\n
\n
\n \n );\n};\n\nexport const SecondarySquareCard = ({ image, video, embedCode, ...rest }) => {\n const RenderData = rest?.to ? Link : \"div\";\n\n return (\n \n {embedCode ? (\n \n loadingEmbed\n \n ) : image ? (\n image.gatsbyImageData ? (\n
\n \n
\n ) : (\n \n \n \n )\n ) : (\n \n )}\n
\n );\n};\n\nexport const StoryCrad = ({\n description,\n title,\n image,\n className,\n ...rest\n}) => {\n return (\n
\n

{title}

\n

{description}

\n {image.gatsbyImageData ? (\n
\n
\n \n
\n
\n ) : (\n \n )}\n
\n );\n};\n\nexport const PeopleCard = ({ embedCode, image, video, ...rest }) => {\n const RenderDiv = rest?.to ? Link : \"div\";\n\n return (\n \n {embedCode ? (\n
\n loadingEmbed\n
\n ) : image ? (\n \n \n \n ) : (\n video && (\n \n )\n )}\n
\n );\n};\n\nexport const ClientsCard = ({\n Text,\n circleCard,\n image,\n video,\n CardActive,\n embedCode,\n className,\n platformCard,\n socialLinks,\n social,\n ...rest\n}) => {\n return (\n <>\n
\n
\n
\n {image && image.gatsbyImageData ? (\n \n ) : (\n \"Client\"\n )}\n
\n {social && (\n
\n \n \n \n
\n )}\n
\n
\n \n );\n};\n\nexport const CaseStudyCard = ({\n Text,\n subTitle,\n circleCard,\n image,\n video,\n CardActive,\n embedCode,\n className,\n bgColor,\n CaseStudyCard,\n iconName,\n ...rest\n}) => {\n const RenderData = rest?.to ? Link : \"div\";\n\n const iconSize = ScreenSize.isDesktop() ? \"50px\" : \"30px\";\n const knowmoreIcon = ScreenSize.isDesktop() ? \"30px\" : \"20px\";\n\n const maxHeight = rest.content\n ? ScreenSize.isDesktop()\n ? \"380px\"\n : \"280px\"\n : \"none\";\n\n const maxWidth = rest.content\n ? ScreenSize.isDesktop()\n ? \"100%\"\n : \"100%\"\n : \"none\";\n\n return (\n \n {iconName && (\n
\n \n
\n )}\n
\n

{Text}

\n

{subTitle}

\n
\n
{rest?.readTime}
\n \n

Explore

\n \n \n \n );\n};\n","// extracted by mini-css-extract-plugin\nexport var ContactBtn = \"ContactForm-module--ContactBtn--2c02a\";\nexport var ContactFormContainer = \"ContactForm-module--ContactFormContainer--fcf1b\";\nexport var ContactFormWrap = \"ContactForm-module--ContactFormWrap--27e3e\";\nexport var addressContent = \"ContactForm-module--addressContent--aacec\";\nexport var addressContentItem = \"ContactForm-module--addressContentItem--df8cf\";\nexport var captcha = \"ContactForm-module--captcha--d0f4a\";\nexport var closeIcon = \"ContactForm-module--closeIcon--7a978\";\nexport var contactAddressContainer = \"ContactForm-module--contactAddressContainer--0eae5\";\nexport var contactBannerContainer = \"ContactForm-module--contactBannerContainer--5f15a\";\nexport var contactForm = \"ContactForm-module--contactForm--36c8f\";\nexport var contactFormInput = \"ContactForm-module--contactFormInput--7500b\";\nexport var contactTextArea = \"ContactForm-module--contactTextArea--df413\";\nexport var contentContainer = \"ContactForm-module--contentContainer--47e32\";\nexport var contentInnerContainer = \"ContactForm-module--contentInnerContainer--57e0c\";\nexport var errorContainer = \"ContactForm-module--errorContainer--21a33\";\nexport var errorIcon = \"ContactForm-module--errorIcon--bdbdb\";\nexport var errorMessage = \"ContactForm-module--errorMessage--02c7c\";\nexport var errorMessages = \"ContactForm-module--errorMessages--1ae6a\";\nexport var mainContainer = \"ContactForm-module--mainContainer--ad536\";\nexport var mapContainer = \"ContactForm-module--mapContainer--1b48a\";\nexport var successMessage = \"ContactForm-module--successMessage--78b3c\";\nexport var videoContainer = \"ContactForm-module--videoContainer--a1c3c\";","var _excluded = [\"sitekey\", \"onChange\", \"theme\", \"type\", \"tabindex\", \"onExpired\", \"onErrored\", \"size\", \"stoken\", \"grecaptcha\", \"badge\", \"hl\", \"isolated\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\nimport * as React from \"react\";\nimport PropTypes from \"prop-types\";\nvar ReCAPTCHA = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(ReCAPTCHA, _React$Component);\n function ReCAPTCHA() {\n var _this;\n _this = _React$Component.call(this) || this;\n _this.handleExpired = _this.handleExpired.bind(_assertThisInitialized(_this));\n _this.handleErrored = _this.handleErrored.bind(_assertThisInitialized(_this));\n _this.handleChange = _this.handleChange.bind(_assertThisInitialized(_this));\n _this.handleRecaptchaRef = _this.handleRecaptchaRef.bind(_assertThisInitialized(_this));\n return _this;\n }\n var _proto = ReCAPTCHA.prototype;\n _proto.getCaptchaFunction = function getCaptchaFunction(fnName) {\n if (this.props.grecaptcha) {\n if (this.props.grecaptcha.enterprise) {\n return this.props.grecaptcha.enterprise[fnName];\n }\n return this.props.grecaptcha[fnName];\n }\n return null;\n };\n _proto.getValue = function getValue() {\n var getResponse = this.getCaptchaFunction(\"getResponse\");\n if (getResponse && this._widgetId !== undefined) {\n return getResponse(this._widgetId);\n }\n return null;\n };\n _proto.getWidgetId = function getWidgetId() {\n if (this.props.grecaptcha && this._widgetId !== undefined) {\n return this._widgetId;\n }\n return null;\n };\n _proto.execute = function execute() {\n var execute = this.getCaptchaFunction(\"execute\");\n if (execute && this._widgetId !== undefined) {\n return execute(this._widgetId);\n } else {\n this._executeRequested = true;\n }\n };\n _proto.executeAsync = function executeAsync() {\n var _this2 = this;\n return new Promise(function (resolve, reject) {\n _this2.executionResolve = resolve;\n _this2.executionReject = reject;\n _this2.execute();\n });\n };\n _proto.reset = function reset() {\n var resetter = this.getCaptchaFunction(\"reset\");\n if (resetter && this._widgetId !== undefined) {\n resetter(this._widgetId);\n }\n };\n _proto.forceReset = function forceReset() {\n var resetter = this.getCaptchaFunction(\"reset\");\n if (resetter) {\n resetter();\n }\n };\n _proto.handleExpired = function handleExpired() {\n if (this.props.onExpired) {\n this.props.onExpired();\n } else {\n this.handleChange(null);\n }\n };\n _proto.handleErrored = function handleErrored() {\n if (this.props.onErrored) {\n this.props.onErrored();\n }\n if (this.executionReject) {\n this.executionReject();\n delete this.executionResolve;\n delete this.executionReject;\n }\n };\n _proto.handleChange = function handleChange(token) {\n if (this.props.onChange) {\n this.props.onChange(token);\n }\n if (this.executionResolve) {\n this.executionResolve(token);\n delete this.executionReject;\n delete this.executionResolve;\n }\n };\n _proto.explicitRender = function explicitRender() {\n var render = this.getCaptchaFunction(\"render\");\n if (render && this._widgetId === undefined) {\n var wrapper = document.createElement(\"div\");\n this._widgetId = render(wrapper, {\n sitekey: this.props.sitekey,\n callback: this.handleChange,\n theme: this.props.theme,\n type: this.props.type,\n tabindex: this.props.tabindex,\n \"expired-callback\": this.handleExpired,\n \"error-callback\": this.handleErrored,\n size: this.props.size,\n stoken: this.props.stoken,\n hl: this.props.hl,\n badge: this.props.badge,\n isolated: this.props.isolated\n });\n this.captcha.appendChild(wrapper);\n }\n if (this._executeRequested && this.props.grecaptcha && this._widgetId !== undefined) {\n this._executeRequested = false;\n this.execute();\n }\n };\n _proto.componentDidMount = function componentDidMount() {\n this.explicitRender();\n };\n _proto.componentDidUpdate = function componentDidUpdate() {\n this.explicitRender();\n };\n _proto.handleRecaptchaRef = function handleRecaptchaRef(elem) {\n this.captcha = elem;\n };\n _proto.render = function render() {\n // consume properties owned by the reCATPCHA, pass the rest to the div so the user can style it.\n /* eslint-disable no-unused-vars */\n var _this$props = this.props,\n sitekey = _this$props.sitekey,\n onChange = _this$props.onChange,\n theme = _this$props.theme,\n type = _this$props.type,\n tabindex = _this$props.tabindex,\n onExpired = _this$props.onExpired,\n onErrored = _this$props.onErrored,\n size = _this$props.size,\n stoken = _this$props.stoken,\n grecaptcha = _this$props.grecaptcha,\n badge = _this$props.badge,\n hl = _this$props.hl,\n isolated = _this$props.isolated,\n childProps = _objectWithoutPropertiesLoose(_this$props, _excluded);\n /* eslint-enable no-unused-vars */\n return /*#__PURE__*/React.createElement(\"div\", _extends({}, childProps, {\n ref: this.handleRecaptchaRef\n }));\n };\n return ReCAPTCHA;\n}(React.Component);\nexport { ReCAPTCHA as default };\nReCAPTCHA.displayName = \"ReCAPTCHA\";\nReCAPTCHA.propTypes = {\n sitekey: PropTypes.string.isRequired,\n onChange: PropTypes.func,\n grecaptcha: PropTypes.object,\n theme: PropTypes.oneOf([\"dark\", \"light\"]),\n type: PropTypes.oneOf([\"image\", \"audio\"]),\n tabindex: PropTypes.number,\n onExpired: PropTypes.func,\n onErrored: PropTypes.func,\n size: PropTypes.oneOf([\"compact\", \"normal\", \"invisible\"]),\n stoken: PropTypes.string,\n hl: PropTypes.string,\n badge: PropTypes.oneOf([\"bottomright\", \"bottomleft\", \"inline\"]),\n isolated: PropTypes.bool\n};\nReCAPTCHA.defaultProps = {\n onChange: function onChange() {},\n theme: \"light\",\n type: \"image\",\n tabindex: 0,\n size: \"normal\",\n badge: \"bottomright\"\n};","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; }\n\nimport { Component, createElement, forwardRef } from \"react\";\nimport PropTypes from \"prop-types\";\nimport hoistStatics from \"hoist-non-react-statics\";\nvar SCRIPT_MAP = {}; // A counter used to generate a unique id for each component that uses the function\n\nvar idCount = 0;\nexport default function makeAsyncScript(getScriptURL, options) {\n options = options || {};\n return function wrapWithAsyncScript(WrappedComponent) {\n var wrappedComponentName = WrappedComponent.displayName || WrappedComponent.name || \"Component\";\n\n var AsyncScriptLoader =\n /*#__PURE__*/\n function (_Component) {\n _inheritsLoose(AsyncScriptLoader, _Component);\n\n function AsyncScriptLoader(props, context) {\n var _this;\n\n _this = _Component.call(this, props, context) || this;\n _this.state = {};\n _this.__scriptURL = \"\";\n return _this;\n }\n\n var _proto = AsyncScriptLoader.prototype;\n\n _proto.asyncScriptLoaderGetScriptLoaderID = function asyncScriptLoaderGetScriptLoaderID() {\n if (!this.__scriptLoaderID) {\n this.__scriptLoaderID = \"async-script-loader-\" + idCount++;\n }\n\n return this.__scriptLoaderID;\n };\n\n _proto.setupScriptURL = function setupScriptURL() {\n this.__scriptURL = typeof getScriptURL === \"function\" ? getScriptURL() : getScriptURL;\n return this.__scriptURL;\n };\n\n _proto.asyncScriptLoaderHandleLoad = function asyncScriptLoaderHandleLoad(state) {\n var _this2 = this;\n\n // use reacts setState callback to fire props.asyncScriptOnLoad with new state/entry\n this.setState(state, function () {\n return _this2.props.asyncScriptOnLoad && _this2.props.asyncScriptOnLoad(_this2.state);\n });\n };\n\n _proto.asyncScriptLoaderTriggerOnScriptLoaded = function asyncScriptLoaderTriggerOnScriptLoaded() {\n var mapEntry = SCRIPT_MAP[this.__scriptURL];\n\n if (!mapEntry || !mapEntry.loaded) {\n throw new Error(\"Script is not loaded.\");\n }\n\n for (var obsKey in mapEntry.observers) {\n mapEntry.observers[obsKey](mapEntry);\n }\n\n delete window[options.callbackName];\n };\n\n _proto.componentDidMount = function componentDidMount() {\n var _this3 = this;\n\n var scriptURL = this.setupScriptURL();\n var key = this.asyncScriptLoaderGetScriptLoaderID();\n var _options = options,\n globalName = _options.globalName,\n callbackName = _options.callbackName,\n scriptId = _options.scriptId; // check if global object already attached to window\n\n if (globalName && typeof window[globalName] !== \"undefined\") {\n SCRIPT_MAP[scriptURL] = {\n loaded: true,\n observers: {}\n };\n } // check if script loading already\n\n\n if (SCRIPT_MAP[scriptURL]) {\n var entry = SCRIPT_MAP[scriptURL]; // if loaded or errored then \"finish\"\n\n if (entry && (entry.loaded || entry.errored)) {\n this.asyncScriptLoaderHandleLoad(entry);\n return;\n } // if still loading then callback to observer queue\n\n\n entry.observers[key] = function (entry) {\n return _this3.asyncScriptLoaderHandleLoad(entry);\n };\n\n return;\n }\n /*\n * hasn't started loading\n * start the \"magic\"\n * setup script to load and observers\n */\n\n\n var observers = {};\n\n observers[key] = function (entry) {\n return _this3.asyncScriptLoaderHandleLoad(entry);\n };\n\n SCRIPT_MAP[scriptURL] = {\n loaded: false,\n observers: observers\n };\n var script = document.createElement(\"script\");\n script.src = scriptURL;\n script.async = true;\n\n for (var attribute in options.attributes) {\n script.setAttribute(attribute, options.attributes[attribute]);\n }\n\n if (scriptId) {\n script.id = scriptId;\n }\n\n var callObserverFuncAndRemoveObserver = function callObserverFuncAndRemoveObserver(func) {\n if (SCRIPT_MAP[scriptURL]) {\n var mapEntry = SCRIPT_MAP[scriptURL];\n var observersMap = mapEntry.observers;\n\n for (var obsKey in observersMap) {\n if (func(observersMap[obsKey])) {\n delete observersMap[obsKey];\n }\n }\n }\n };\n\n if (callbackName && typeof window !== \"undefined\") {\n window[callbackName] = function () {\n return _this3.asyncScriptLoaderTriggerOnScriptLoaded();\n };\n }\n\n script.onload = function () {\n var mapEntry = SCRIPT_MAP[scriptURL];\n\n if (mapEntry) {\n mapEntry.loaded = true;\n callObserverFuncAndRemoveObserver(function (observer) {\n if (callbackName) {\n return false;\n }\n\n observer(mapEntry);\n return true;\n });\n }\n };\n\n script.onerror = function () {\n var mapEntry = SCRIPT_MAP[scriptURL];\n\n if (mapEntry) {\n mapEntry.errored = true;\n callObserverFuncAndRemoveObserver(function (observer) {\n observer(mapEntry);\n return true;\n });\n }\n };\n\n document.body.appendChild(script);\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n // Remove tag script\n var scriptURL = this.__scriptURL;\n\n if (options.removeOnUnmount === true) {\n var allScripts = document.getElementsByTagName(\"script\");\n\n for (var i = 0; i < allScripts.length; i += 1) {\n if (allScripts[i].src.indexOf(scriptURL) > -1) {\n if (allScripts[i].parentNode) {\n allScripts[i].parentNode.removeChild(allScripts[i]);\n }\n }\n }\n } // Clean the observer entry\n\n\n var mapEntry = SCRIPT_MAP[scriptURL];\n\n if (mapEntry) {\n delete mapEntry.observers[this.asyncScriptLoaderGetScriptLoaderID()];\n\n if (options.removeOnUnmount === true) {\n delete SCRIPT_MAP[scriptURL];\n }\n }\n };\n\n _proto.render = function render() {\n var globalName = options.globalName; // remove asyncScriptOnLoad from childProps\n\n var _this$props = this.props,\n asyncScriptOnLoad = _this$props.asyncScriptOnLoad,\n forwardedRef = _this$props.forwardedRef,\n childProps = _objectWithoutPropertiesLoose(_this$props, [\"asyncScriptOnLoad\", \"forwardedRef\"]); // eslint-disable-line no-unused-vars\n\n\n if (globalName && typeof window !== \"undefined\") {\n childProps[globalName] = typeof window[globalName] !== \"undefined\" ? window[globalName] : undefined;\n }\n\n childProps.ref = forwardedRef;\n return createElement(WrappedComponent, childProps);\n };\n\n return AsyncScriptLoader;\n }(Component); // Note the second param \"ref\" provided by React.forwardRef.\n // We can pass it along to AsyncScriptLoader as a regular prop, e.g. \"forwardedRef\"\n // And it can then be attached to the Component.\n\n\n var ForwardedComponent = forwardRef(function (props, ref) {\n return createElement(AsyncScriptLoader, _extends({}, props, {\n forwardedRef: ref\n }));\n });\n ForwardedComponent.displayName = \"AsyncScriptLoader(\" + wrappedComponentName + \")\";\n ForwardedComponent.propTypes = {\n asyncScriptOnLoad: PropTypes.func\n };\n return hoistStatics(ForwardedComponent, WrappedComponent);\n };\n}","import ReCAPTCHA from \"./recaptcha\";\nimport makeAsyncScriptLoader from \"react-async-script\";\nvar callbackName = \"onloadcallback\";\nvar globalName = \"grecaptcha\";\nfunction getOptions() {\n return typeof window !== \"undefined\" && window.recaptchaOptions || {};\n}\nfunction getURL() {\n var dynamicOptions = getOptions();\n var hostname = dynamicOptions.useRecaptchaNet ? \"recaptcha.net\" : \"www.google.com\";\n if (dynamicOptions.enterprise) {\n return \"https://\" + hostname + \"/recaptcha/enterprise.js?onload=\" + callbackName + \"&render=explicit\";\n }\n return \"https://\" + hostname + \"/recaptcha/api.js?onload=\" + callbackName + \"&render=explicit\";\n}\nexport default makeAsyncScriptLoader(getURL, {\n callbackName: callbackName,\n globalName: globalName,\n attributes: getOptions().nonce ? {\n nonce: getOptions().nonce\n } : {}\n})(ReCAPTCHA);","import RecaptchaWrapper from \"./recaptcha-wrapper\";\nimport ReCAPTCHA from \"./recaptcha\";\nexport default RecaptchaWrapper;\nexport { ReCAPTCHA };","import React, { useRef, useState, memo, useEffect } from \"react\";\nimport { baseUrl, isAllowedDomain } from \"../../utils/helpers/helper\";\nimport * as styles from \"./css/ContactForm.module.css\";\nimport { RenderSvg } from \"../../utils/helpers/helper\";\nimport useConfirmationPopup from \"./useConfirmationPopUp\";\nimport ReCAPTCHA from \"react-google-recaptcha\";\nimport { siteKey } from \"../../utils/helpers/helper\";\nimport {\n trackContactFormClosed,\n trackContactFormOpened,\n trackContactFormSubmitted,\n} from \"../../utils/GA4Tracking\";\n\nconst isValidEmail = (email) => {\n if (!email) return false;\n return (\n email.includes(\"@\") &&\n email.split(\"@\")[1] &&\n email.split(\"@\")[1].split(\".\")[1] &&\n email.split(\"@\")[1].split(\".\")[1]?.length > 1 &&\n isAllowedDomain(email)\n );\n};\n\nconst isValidPhoneNumber = (phoneNumber) => {\n // Remove any non-digit characters\n const digits = phoneNumber.replace(/\\D/g, \"\");\n\n // Check if it's a valid Indian mobile number\n if (digits.length === 10) {\n // 10-digit number\n return /^[6-9]\\d{9}$/.test(digits);\n } else if (digits.length === 11 && digits.startsWith(\"0\")) {\n // 11-digit number starting with 0\n return /^0[6-9]\\d{9}$/.test(digits);\n } else if (digits.length === 12 && digits.startsWith(\"91\")) {\n // 12-digit number starting with 91\n return /^91[6-9]\\d{9}$/.test(digits);\n } else if (digits.length === 13 && digits.startsWith(\"91\")) {\n // 13-digit number starting with +91 (+ is removed in digits)\n return /^91[6-9]\\d{9}$/.test(digits);\n }\n\n return false;\n};\n\nconst ContactForm = memo(\n ({\n isMobile,\n handelContactForm,\n handelCheckFormIsFilled = () => {},\n formIsFilled,\n header,\n contactForm,\n openPopup,\n }) => {\n const [success, setSuccess] = useState(null);\n const submitButtonRef = useRef(null);\n const formRef = useRef(null);\n const [showConfirmation, ConfirmationPopUpComponent] =\n useConfirmationPopup();\n const [token, setToken] = useState(null);\n const inputRef = useRef(null);\n const [btnValid, setBtnValid] = useState(false);\n const recaptchaRef = useRef(null);\n\n useEffect(() => {\n if (openPopup === true || contactForm === true) {\n inputRef.current.focus();\n const from = contactForm ? \"Contact us\" : \"Header\";\n trackContactFormOpened(from);\n }\n }, [openPopup, contactForm]);\n\n const validateCaptcha = (token) => {\n setToken(token);\n // console.log(\"token\", token);\n };\n\n useEffect(() => {\n if (isValidEmail && isValidPhoneNumber && token) {\n setBtnValid(true);\n }\n }, [isValidEmail, isValidPhoneNumber, token]);\n\n const handleSubmit = async (event) => {\n event.preventDefault();\n submitButtonRef.current.innerHTML = \"Submitting...\";\n\n const formData = new FormData(event.target);\n const phoneNumber = formData.get(\"PhoneNumber\").trim();\n const yourBusinessEmail = formData.get(\"Email\").trim();\n const textarea = formData.get(\"textArea\").trim();\n\n // Reset custom validity\n event.target.Email.setCustomValidity(\"\");\n event.target.PhoneNumber.setCustomValidity(\"\");\n event.target.textArea.setCustomValidity(\"\");\n\n // Check for errors\n if (!isValidEmail(yourBusinessEmail)) {\n event.target.Email.setCustomValidity(\n \"Please enter a valid business email Id\"\n );\n event.target.Email.reportValidity();\n submitButtonRef.current.innerHTML = \"Submit\";\n return;\n }\n\n if (!isValidPhoneNumber(phoneNumber)) {\n event.target.PhoneNumber.setCustomValidity(\n \"Please enter a valid Indian phone number\"\n );\n event.target.PhoneNumber.reportValidity();\n submitButtonRef.current.innerHTML = \"Submit\";\n return;\n }\n\n if (!textarea) {\n event.target.textArea.setCustomValidity(\"Please enter your message\");\n event.target.textArea.reportValidity();\n submitButtonRef.current.innerHTML = \"Submit\";\n return;\n }\n\n if (!token) {\n submitButtonRef.current.innerHTML = \"Submit\";\n return;\n }\n\n try {\n const response = await fetch(`${baseUrl}/api/contact-forms`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify({\n data: {\n PhoneNumber: phoneNumber,\n YourBusinessEmail: yourBusinessEmail,\n textArea: textarea,\n token: token,\n },\n }),\n });\n\n if (response.ok) {\n const from = contactForm ? \"Contact us\" : \"Header\";\n trackContactFormSubmitted(from);\n submitButtonRef.current.innerHTML = \"Submitted\";\n setSuccess(\"Contact created successfully!\");\n handelCheckFormIsFilled(false);\n // Close the form after a short delay\n\n setTimeout(() => {\n closeForm(true);\n // Reset the reCAPTCHA\n setToken(null);\n if (recaptchaRef.current) {\n recaptchaRef.current.reset();\n }\n window.parent.postMessage({ eventName: \"formSubmitted\" }, \"*\");\n }, 2000); // 2 second delay\n } else {\n const errorMessage = await response.text();\n const { error } = JSON.parse(errorMessage);\n\n if (error && error.message.includes(\"yourBusinessEmail\")) {\n event.target.Email.setCustomValidity(\n \"Please enter a valid business email Id\"\n );\n event.target.Email.reportValidity();\n } else {\n throw new Error(error?.message || \"An error occurred\");\n }\n }\n } catch (error) {\n console.error(\"Error creating contact:\", error.message);\n } finally {\n submitButtonRef.current.innerHTML = \"Submit\";\n }\n };\n\n const handleInputChange = (e) => {\n e.target.setCustomValidity(\"\"); // Clear any custom validity message\n const isFilled = formRef.current;\n handelCheckFormIsFilled(true);\n };\n\n const clearForm = () => {\n if (formRef.current) {\n formRef.current.reset();\n }\n setSuccess(null);\n handelCheckFormIsFilled(false);\n };\n\n const closeForm = async (isFilled = false) => {\n if (formIsFilled && isFilled === false) {\n try {\n await showConfirmation();\n clearForm();\n handelContactForm(false);\n } catch {\n console.warn(\"Form close action was cancelled by the user.\");\n }\n } else {\n const from = contactForm ? \"Contact us\" : \"Header\";\n trackContactFormClosed(from);\n clearForm();\n handelContactForm(false);\n }\n };\n\n return (\n <>\n \n
\n {!header && (\n {\n closeForm();\n }}\n >\n \n
\n )}\n
\n
\n \n \n
\n \n
\n \n
\n\n \n Send\n \n
\n
\n {success && (\n \n {success}\n
\n )}\n \n \n
{ConfirmationPopUpComponent}
\n \n \n );\n },\n (prevProps, nextProps) =>\n prevProps.isMobile === nextProps.isMobile &&\n prevProps.formIsFilled === nextProps.formIsFilled &&\n prevProps.header === nextProps.header &&\n prevProps.openPopup === nextProps.openPopup\n);\n\nexport default ContactForm;\n","import React from \"react\";\nimport * as styles from \"./css/ConfirmationPopUp.module.css\";\n\nconst ConfirmationPopUp = ({ handelPop }) => {\n const handelPopUp = (state) => {\n handelPop(state);\n };\n return (\n <>\n
\n
\n
\n Are you sure you want to close?
Your data will be lost\n
\n
\n {\n e.preventDefault();\n e.stopPropagation();\n handelPopUp(\"yes\");\n }}\n >\n Yes\n \n {\n e.preventDefault();\n e.stopPropagation();\n handelPopUp(\"no\");\n }}\n >\n No\n \n
\n
\n
\n \n );\n};\n\nexport default ConfirmationPopUp;\n","// extracted by mini-css-extract-plugin\nexport var confirmationBtns = \"ConfirmationPopUp-module--confirmationBtns--63138\";\nexport var container = \"ConfirmationPopUp-module--container--d75f9\";\nexport var heading = \"ConfirmationPopUp-module--heading--9cd5f\";\nexport var mainContainer = \"ConfirmationPopUp-module--mainContainer--cb065\";\nexport var message = \"ConfirmationPopUp-module--message--b3850\";","import React, { useState, useCallback } from \"react\";\nimport ConfirmationPopUp from \"./ConfirmationPopUp\";\n\nconst useConfirmationPopup = () => {\n const [isVisible, setIsVisible] = useState(false);\n const [resolver, setResolver] = useState({ resolve: null, reject: null });\n\n const showConfirmation = useCallback(() => {\n setIsVisible(true);\n return new Promise((resolve, reject) => {\n setResolver({ resolve, reject });\n });\n }, []);\n\n const handlePop = (response) => {\n if (response === \"yes\") {\n resolver.resolve(true);\n } else {\n resolver.reject(false);\n }\n setIsVisible(false);\n setResolver({ resolve: null, reject: null });\n };\n\n const ConfirmationPopUpComponent = isVisible ? (\n \n ) : null;\n\n return [showConfirmation, ConfirmationPopUpComponent];\n};\n\nexport default useConfirmationPopup;\n","// extracted by mini-css-extract-plugin\nexport var blueGradient = \"backgroundWave-module--blueGradient--fefd5\";\nexport var bluebg = \"backgroundWave-module--bluebg--192bf\";\nexport var blur = \"backgroundWave-module--blur--a9eb3\";\nexport var embedScript = \"backgroundWave-module--embedScript--80d77\";\nexport var grad = \"backgroundWave-module--grad--f3192\";\nexport var greenGradient = \"backgroundWave-module--greenGradient--7a94e\";\nexport var greenbg = \"backgroundWave-module--greenbg--8e9f3\";\nexport var greyGradient = \"backgroundWave-module--greyGradient--b175e\";\nexport var greybg = \"backgroundWave-module--greybg--ae558\";\nexport var ocean = \"backgroundWave-module--ocean--f2556\";\nexport var redGradient = \"backgroundWave-module--redGradient--590c4\";\nexport var redbg = \"backgroundWave-module--redbg--da712\";\nexport var swell = \"backgroundWave-module--swell--76497\";\nexport var wave = \"backgroundWave-module--wave--2ee89\";\nexport var wave1 = \"backgroundWave-module--wave1--181cd\";\nexport var wave2 = \"backgroundWave-module--wave2--edd9f\";\nexport var wave3 = \"backgroundWave-module--wave3--5325b\";\nexport var waves = \"backgroundWave-module--waves--46e8e\";","import React from \"react\";\nimport * as styles from \"./backgroundWave.module.css\";\nexport default function BackgroundWave({ bgColor, height, IsEmbedded }) {\n const getBgClass = () => {\n switch (bgColor) {\n case \"red\":\n return styles[\"redGradient\"];\n case \"green\":\n return styles[\"greenGradient\"];\n case \"grey\":\n return styles[\"greyGradient\"];\n default:\n return styles[\"blueGradient\"];\n }\n };\n\n const getColorCode = (color) => {\n const colorMapping = {\n red: \"#de5045\",\n green: \"#2dc582\",\n blue: \"#009bff\",\n grey: \"#D8D8D8\",\n };\n return colorMapping[color] || \"#009bff\";\n };\n\n return (\n <>\n
\n
\n
\n \n \n \n \n \n \n \n \n \n
\n
\n \n );\n}\n","import React, { useEffect, useRef, useState } from \"react\";\nimport * as styles from \"./sectionLayout.module.css\";\nimport { getPublicUrl } from \"../FetchImage\";\nimport {\n SecondaryCard,\n SecondaryCircleCard,\n SecondarySquareCard,\n} from \"../cards/Cards\";\nimport { KpointPlayerFromEmbedCode } from \"../../lib/kpoint/KpointPlayerFromEmbedCode\";\nimport { PopupButton } from \"../buttons/Buttons\";\nimport { Link } from \"gatsby\";\nimport BackgroundWave from \"./BackgroundWave\";\nimport RenderMedia from \"../Images\";\nimport {\n RenderSvg,\n isAllowedDomain,\n scheduleDemo,\n} from \"../../utils/helpers/helper\";\nimport { PlatformTitleDesc } from \"./TitleDescription\";\nimport CheckedIcon from \"../../fontAwasome/svgs/light/check.svg\";\nimport CopyIcon from \"../../fontAwasome/svgs/light/copy.svg\";\nimport { socialMediaShare } from \"../../utils/GA4Tracking\";\n\nexport default function SectionLayout({\n children,\n bgColor,\n About,\n Platform,\n People,\n myStory,\n IsEmbedded,\n usecases,\n careers,\n className,\n lifeatkpoint,\n ...rest\n}) {\n return (\n \n {lifeatkpoint || People ? (\n <>\n ) : (\n \n )}\n\n {children}\n \n );\n}\n\nexport const SecondaryCircleCardLayout = ({ children }) => {\n return
{children}
;\n};\n\nexport const BannerVideo = ({ mediaName, folder }) => {\n return (\n \n \n \n );\n};\n\nexport const SecondarySquareCardLayout = ({\n title,\n showMinute,\n tagText,\n image,\n ...rest\n}) => {\n const RenderDiv = rest?.to ? Link : \"div\";\n return (\n \n
\n

{title}

\n
\n {showMinute && (\n

{showMinute} read

\n )}\n
\n
\n \n
\n );\n};\n\nexport const PeopleCardLayout = ({ children, bgvideo }) => {\n return (\n
\n {bgvideo && (\n \n \n \n )}\n {children}\n
\n );\n};\n\nexport const ScheduleADemo = ({\n header,\n openPopup,\n setOpenPopup,\n isMobile,\n}) => {\n const [isFormSuccess, setIsFormSuccess] = useState(false);\n const [error, setError] = useState(false);\n const emailError = useRef(null);\n const submitButtonRef = useRef(null);\n const formRef = useRef(null);\n\n const handleEmailValid = (e) => {\n const { value } = e ? e.target : {};\n\n if (!value) return;\n if (\n value.includes(\"@\") &&\n value.split(\"@\")[1] &&\n value.split(\"@\")[1].split(\".\")[1] &&\n value.split(\"@\")[1].split(\".\")[1]?.length > 1\n ) {\n if (!isAllowedDomain(value)) {\n emailError.current.innerHTML = \"Please enter a valid business email Id\";\n emailError.current.style.display = \"block\";\n submitButtonRef.current.disabled = true;\n } else {\n emailError.current.style.display = \"none\";\n submitButtonRef.current.disabled = false;\n }\n } else {\n emailError.current.style.display = \"none\";\n submitButtonRef.current.disabled = false;\n }\n };\n\n const handleSubmit = async (event) => {\n event.preventDefault();\n const { email, phone, name } = event.target || {};\n if (\n (email?.value || phone?.value || name?.value) &&\n isAllowedDomain(email?.value)\n ) {\n submitButtonRef.current.disabled = true;\n const data = {\n FullName: name?.value,\n PhoneNumber: phone?.value,\n Email: email?.value,\n };\n scheduleDemo({\n data,\n formError: setError,\n fromSuccess: setIsFormSuccess,\n });\n setIsFormSuccess(\"success\");\n } else {\n emailError.current.innerHTML = \"Please enter a valid business email Id\";\n emailError.current.style.display = \"block\";\n submitButtonRef.current.disabled = true;\n }\n };\n useEffect(() => {\n if (openPopup) {\n setIsFormSuccess(false);\n if (emailError.current) emailError.current.style.display = \"none\";\n if (formRef.current) formRef.current.reset();\n }\n }, [openPopup]);\n\n useEffect(() => {\n let setTimeoutId;\n if (isFormSuccess) {\n if (header && isMobile) {\n setTimeoutId = setTimeout(() => {\n setOpenPopup(null);\n if (submitButtonRef.current) submitButtonRef.current.disabled = true;\n //trigger a post message to parent window to close the iframe popup\n window.parent.postMessage({ eventName: \"formSubmitted\" }, \"*\");\n }, 1500);\n } else {\n setTimeoutId = setTimeout(() => {\n setOpenPopup(null);\n if (submitButtonRef.current) submitButtonRef.current.disabled = false;\n window.parent.postMessage({ eventName: \"formSubmitted\" }, \"*\");\n }, 5000);\n }\n }\n return () => clearTimeout(setTimeoutId);\n }, [isFormSuccess]);\n return (\n
\n {header && (\n <>\n \n

Contact Us

\n \n )}\n {isFormSuccess && !header ? (\n
\n
\n

\n Thank you for reaching us out!\n

\n

\n We will get back to you soon.\n

\n
\n \n Any queries? Please contact{\" \"}\n queries@kpoint.com\n

\n
\n ) : (\n <>\n {!header && (\n <>\n \n Schedule a demo\n \n

\n Welcome to KPOINT, where we revolutionized business\n communications through interactive business.\n

{\" \"}\n \n )}\n\n handleSubmit(e)}\n >\n {!header && (\n <>\n \n \n {!isMobile && (\n handleEmailValid(e)}\n required\n autoFocus\n />\n )}\n \n )}\n\n {isMobile ? (\n <>\n handleEmailValid(e)}\n required\n autoFocus\n />\n {isFormSuccess && (\n

\n Thank you ! We will get back soon.\n

\n )}\n \n ) : (\n header && (\n <>\n
\n handleEmailValid(e)}\n required\n autoFocus\n />\n \n
\n {isFormSuccess && (\n

\n Thank you ! We will get back soon.\n

\n )}\n \n )\n )}\n\n
\n {(!header || (header && isMobile)) && (\n \n )}\n\n {/* {header && (\n

\n Thank you for reaching out! We will revert shortly.\n

\n )} */}\n \n \n )}\n \n );\n};\n\nexport const Share = ({ link }) => {\n const socialLinks = [\n {\n label: \"linkedIn\",\n url: \"https://www.linkedin.com/sharing/share-offsite/?url=\",\n },\n {\n label: \"whatsApp\",\n url: \"https://wa.me/?text=\", //${+919100345880}\n },\n {\n label: \"twitter\",\n url: \"https://twitter.com/intent/tweet?url=\",\n },\n {\n label: \"facebook\",\n url: \"https://www.facebook.com/sharer/sharer.php?u=\",\n },\n ];\n const handleShare = (e) => {\n navigator.clipboard\n .writeText(link || window.location.href)\n .then(() => {\n if (link) {\n let url = e?.url + link;\n socialMediaShare(e.label, url); //social share\n window.open(url, \"_blank\");\n } else if (e?.url) {\n socialMediaShare(e.label, e?.url);\n window.open(e.url + window.location.href, \"_blank\");\n }\n })\n .catch((error) => {\n console.error(\"Error writing to clipboard:\", error);\n });\n };\n\n const [copied, setCopied] = useState(false);\n\n const handleCopy = (text) => {\n navigator.clipboard\n .writeText(text)\n .then(() => {\n setCopied(true);\n setTimeout(() => setCopied(false), 15000); // Reset copied state after 1.5 seconds\n })\n .catch((error) => {\n console.error(\"Error copying to clipboard:\", error);\n });\n };\n\n return (\n
\n

Share

\n
\n {socialLinks?.map((e, index) => {\n return (\n handleShare(e)}\n key={index}\n className={styles?.shareSocialLink}\n >\n \n
\n );\n })}\n
\n
\n \n
\n {\n e.stopPropagation();\n handleCopy(link || window.location.href);\n }}\n >\n {copied ? (\n \n ) : (\n \n )}\n \n
\n
\n \n );\n};\n\nexport const CaseStudyLinkUseCaseSection = ({\n layoutHashLinkId,\n bgcolor,\n title,\n description,\n caseStudies,\n embedCode,\n personalizationInfo,\n media,\n}) => {\n return (\n <>\n \n \n {embedCode ? (\n
\n \n
\n ) : (\n \n )}\n \n {caseStudies?.map((e, i) => {\n const Media =\n e?.DesktopMedia?.localFile?.childImageSharp?.gatsbyImageData;\n // ? e?.MobileMedia?.localFile?.childImageSharp?.gatsbyImageData\n // : e?.DesktopMedia?.localFile?.childImageSharp?.gatsbyImageData;\n\n return (\n \n \n \n );\n })}\n \n
\n \n );\n};\n","import { Link } from \"gatsby\";\nimport React, { useEffect, useRef, useState } from \"react\";\nimport * as styles from \"./sectionLayout.module.css\";\nimport { ScreenSize } from \"../../utils/helpers/helper\";\n\n// export default function TitleDescription({ Title, Description, isPlatForm }) {\n// return (\n//
\n//

{Title}

\n// {isPlatForm ? (\n//

\n// {Description?.substring(0, ScreenSize.isMobile() ? 70 : 100)}...\n// \n// Read More\n// \n//

\n// ) : (\n//

{Description}

\n// )}\n//
\n// );\n// }\n\nexport default function TitleDescription({\n Title,\n Description,\n isPlatForm,\n fontColor = \"black\",\n}) {\n const fontColorClass =\n fontColor === \"white\" ? styles.whiteText : styles.blackText;\n\n return (\n \n

{Title}

\n {isPlatForm ? (\n \n {Description?.substring(0, ScreenSize.isMobile() ? 70 : 100)}...\n \n \n Read More\n \n \n

\n ) : (\n

\n {Description}\n

\n )}\n \n );\n}\n\nexport const DesignationDescription = ({\n name,\n company,\n designation,\n Description,\n socialIconElement,\n}) => {\n // const [isVisible, setIsVisible] = useState(false);\n // useEffect(() => {\n // let setTimeoutId;\n // setIsVisible(false);\n // setTimeoutId = setTimeout(() => {\n // setIsVisible(true); // Reset visibility to trigger fade-in\n // }, 500);\n // return () => {\n // clearTimeout(setTimeoutId);\n // };\n // }, [name, company, designation, Description, socialIconElement]);\n return (\n \n
\n

{name}

\n

\n {designation}\n {company ? \",\" + company : \"\"}\n

\n

{company ? company : \"\"}

\n
\n
{socialIconElement}
\n
\n

{Description}

\n
\n \n );\n};\n\nexport function CircleDescriptionTitle({ title, description }) {\n return (\n
\n

{title}

\n

\n {description}\n

\n
\n );\n}\n\nexport const MisionVisonTitleDesc = ({ title, description, LifeAtKpoint }) => {\n return (\n
\n \n {title}\n \n

{description}

\n
\n );\n};\n\nexport const PlatformTitleDesc = ({ title, description }) => {\n return (\n
\n

{title}

\n

{description}

\n
\n );\n};\n\nexport const UseCaseTitleDesc = ({ title, description }) => {\n return (\n
\n

{title}

\n

{description}

\n
\n );\n};\n\nexport const ClientsNameDesignation = ({ name, designation, company }) => {\n return (\n
\n

\n {name}\n

\n |\n

\n {designation} {company}\n

\n
\n );\n};\n\nexport const ClientsDescription = ({ Description }) => {\n return (\n
\n

{Description}

\n
\n );\n};\n","import React, { useEffect, useState } from \"react\";\nimport { ScheduleADemo, Share } from \"./layoutSections/LayoutSection\";\nimport ContactForm from \"../components/forms/ContactForm\";\nimport { RenderSvg, ScreenSize } from \"../utils/helpers/helper\";\nexport const Popup = ({\n openPopup,\n setOpenPopup,\n scheduleDemo,\n header,\n IsEmbedded,\n isMobile,\n isVertical,\n contact,\n shareLink,\n share,\n}) => {\n const [isLargeScreen, setIsLargeScreen] = useState(false);\n\n useEffect(() => {\n const checkScreenSize = () => {\n setIsLargeScreen(ScreenSize.isLargeScreen());\n };\n\n checkScreenSize();\n }, []);\n\n return (\n <>\n \n \n {scheduleDemo && (\n \n )}\n {share && }\n {contact && (\n \n )}\n {IsEmbedded ? (\n <>\n ) : (\n setOpenPopup(null)}\n >\n \n \n )}\n \n \n \n );\n};\n","import { createContext } from \"react\";\n\nexport const KpointPlayerContext = createContext({\n players:[],\n isMuteRef: false,\n addPlayer: (player) => {},\n removePlayer: (player) => {},\n});\n","// ObserverContext.js\nimport React, { createContext, useContext, useEffect, useRef } from \"react\";\n\nconst ObserverContext = createContext({\n observe: () => {},\n unobserve: () => {},\n});\n\nexport const ObserverProvider = ({ children }) => {\n // Refs for observers\n const inViewObserver = useRef(null);\n const loadObserver = useRef(null);\n const elementsToObserve = useRef([]);\n\n useEffect(() => {\n // Initialize inViewObserver\n inViewObserver.current = new IntersectionObserver(\n (entries) => {\n entries.forEach((entry) => {\n if (entry.isIntersecting) {\n // Call the callback associated with the entry's target\n entry.target.inViewCallback?.(true);\n } else {\n entry.target.inViewCallback?.(false);\n }\n });\n },\n {\n threshold: 0.7,\n }\n );\n\n // Initialize loadObserver\n loadObserver.current = new IntersectionObserver(\n (entries) => {\n entries.forEach((entry) => {\n if (entry.isIntersecting) {\n // Remove from loadObserver to prevent re-triggering\n loadObserver.current.unobserve(entry.target);\n // Trigger load logic\n entry.target.loadCallback?.(true);\n }\n });\n },\n {\n threshold: 0.1,\n rootMargin: `${\n typeof window !== \"undefined\" ? window.innerHeight : 0\n }px 0px ${\n typeof window !== \"undefined\" ? window.innerHeight : 0\n }px 0px`,\n }\n );\n // Observe elements that were added before observers were initialized\n elementsToObserve.current.forEach((element) => {\n loadObserver.current.observe(element);\n inViewObserver.current.observe(element);\n });\n elementsToObserve.current = [];\n return () => {\n inViewObserver.current?.disconnect();\n loadObserver.current?.disconnect();\n };\n }, []);\n\n // Function to start observing an element with both observers\n const observe = (element, inViewCallback, loadCallback) => {\n if (element) {\n element.inViewCallback = inViewCallback;\n element.loadCallback = loadCallback;\n\n if (loadObserver.current) {\n loadObserver.current.observe(element);\n inViewObserver.current.observe(element);\n } else {\n // If observers are not initialized yet, store element to observe it later\n elementsToObserve.current.push(element);\n }\n }\n };\n\n // Function to stop observing an element\n const unobserve = (element) => {\n inViewObserver.current.unobserve(element);\n loadObserver.current.unobserve(element);\n };\n\n return (\n \n {children}\n \n );\n};\n\nexport const useObserver = () => useContext(ObserverContext);\n","// extracted by mini-css-extract-plugin\nexport var embedCode = \"KpointPlayer-module--embedCode--42ab4\";\nexport var image = \"KpointPlayer-module--image--cef36\";\nexport var kpointBlue = \"KpointPlayer-module--kpoint-blue--1b2d4\";\nexport var kpointGreen = \"KpointPlayer-module--kpoint-green--00cb5\";\nexport var kpointRed = \"KpointPlayer-module--kpoint-red--cad04\";\nexport var kpointSpinner = \"KpointPlayer-module--kpoint-spinner--2bbf8\";\nexport var kpointSpinner__dot = \"KpointPlayer-module--kpoint-spinner__dot--4bc39\";\nexport var markupTemplateContainer = \"KpointPlayer-module--markupTemplateContainer--b3fa3\";\nexport var notLoaded = \"KpointPlayer-module--notLoaded--c1c48\";\nexport var playerOverlay = \"KpointPlayer-module--playerOverlay--d137e\";\nexport var spin78236 = \"KpointPlayer-module--spin78236--d70d9\";\nexport var thumbnail = \"KpointPlayer-module--thumbnail--579ec\";\nexport var videoContainer = \"KpointPlayer-module--videoContainer--3faef\";\nexport var wobble1 = \"KpointPlayer-module--wobble1--a8e08\";\nexport var wobble2 = \"KpointPlayer-module--wobble2--07f43\";","import React, { useState, useRef, useEffect } from \"react\";\nimport * as styles from \"./EmailGate.module.css\";\nimport { baseUrl, isAllowedDomain } from \"../../utils/helpers/helper\";\nimport {\n trackContactFormClosed,\n trackContactFormOpened,\n trackContactFormSubmitted,\n} from \"../../utils/GA4Tracking\";\n\nconst EmailGate = ({ onClose, playerRef }) => {\n const [email, setEmail] = useState(\"\");\n const [error, setError] = useState(null);\n const [success, setSuccess] = useState(null);\n const [isSubmitted, setIsSubmitted] = useState(false);\n const emailInputRef = useRef(null);\n const submitButtonRef = useRef(null);\n const modalRef = useRef(null);\n const timeoutRef = useRef();\n\n useEffect(() => {\n emailInputRef.current.focus();\n const focusableElements =\n 'button, [href], input, select, textarea, [tabindex]:not([tabindex=\"-1\"])';\n const firstFocusableElement =\n modalRef.current.querySelectorAll(focusableElements)[0];\n const focusableContent =\n modalRef.current.querySelectorAll(focusableElements);\n const lastFocusableElement = focusableContent[focusableContent.length - 1];\n\n trackContactFormOpened(playerRef.current.info.personalizedData.videoTitle);\n const trapFocus = (event) => {\n let isTabPressed = event.key === \"Tab\" || event.keyCode === 9;\n\n if (!isTabPressed) {\n return;\n }\n\n if (event.shiftKey) {\n if (document.activeElement === firstFocusableElement) {\n lastFocusableElement.focus();\n event.preventDefault();\n }\n } else {\n if (document.activeElement === lastFocusableElement) {\n firstFocusableElement.focus();\n event.preventDefault();\n }\n }\n };\n\n modalRef.current.addEventListener(\"keydown\", trapFocus);\n\n return () => {\n // Clear the specific timeout when the component unmounts\n clearTimeout(timeoutRef.current);\n modalRef?.current?.removeEventListener(\"keydown\", trapFocus);\n };\n }, []);\n\n const handleSubmit = async (event) => {\n event.preventDefault();\n submitButtonRef.current.innerText = \"Submitting...\";\n setIsSubmitted(true);\n\n if (!email) {\n setError(\"Email is required\");\n submitButtonRef.current.innerText = \"Submit\";\n setIsSubmitted(false);\n return;\n }\n if (!isAllowedDomain(email)) {\n setError(\"Please enter a valid work email\");\n submitButtonRef.current.innerText = \"Submit\";\n setIsSubmitted(false);\n return;\n }\n try {\n const data = { Email: email };\n if (playerRef.current) {\n data.videoId = playerRef.current?.info?.personalizedData?.videoId;\n data.videoTitle = playerRef.current?.info?.personalizedData?.videoTitle;\n data.viewToken = playerRef.current?.info?.viewToken;\n data.mailTo = playerRef.current?.info?.personalizedData?.mailTo ?? \"\";\n }\n const response = await fetch(`${baseUrl}/api/schedule-demos`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify({ data }),\n });\n\n if (response.ok) {\n submitButtonRef.current.innerText = \"Submitted\";\n setSuccess(\"Email submitted successfully!\");\n timeoutRef.current = setTimeout(() => {\n onClose();\n trackContactFormSubmitted(\n playerRef.current.info.personalizedData.videoTitle\n );\n }, 2000);\n } else {\n const errorMessage = await response.text();\n setError(errorMessage);\n setIsSubmitted(false);\n }\n } catch (error) {\n console.error(\"Error submitting email:\", error);\n setError(error.message);\n setIsSubmitted(false);\n } finally {\n submitButtonRef.current.innerText = \"Submit\";\n }\n };\n\n const handleInputChange = (e) => {\n setEmail(e.target.value);\n if (isSubmitted) {\n setIsSubmitted(false);\n setError(null);\n setSuccess(null);\n }\n };\n\n return (\n \n
\n {\n onClose();\n trackContactFormClosed(\n playerRef.current?.info?.personalizedData?.videoTitle\n );\n }}\n aria-label=\"Close\"\n >\n ×\n \n

Contact Us

\n
\n \n \n Submit\n \n {/* Add a div to act as a container for error/success messages */}\n
\n {error && (\n

\n {error}\n

\n )}\n {success &&

{success}

}\n
\n \n
\n \n );\n};\n\nexport default EmailGate;\n","// extracted by mini-css-extract-plugin\nexport var closeButton = \"EmailGate-module--closeButton--2f220\";\nexport var container = \"EmailGate-module--container--49e30\";\nexport var content = \"EmailGate-module--content--ff40b\";\nexport var emailForm = \"EmailGate-module--emailForm--c7d52\";\nexport var emailInput = \"EmailGate-module--emailInput--fcf0d\";\nexport var error = \"EmailGate-module--error--81e1f\";\nexport var messageContainer = \"EmailGate-module--messageContainer--282b6\";\nexport var submitButton = \"EmailGate-module--submitButton--ee931\";\nexport var success = \"EmailGate-module--success--c41bc\";\nexport var title = \"EmailGate-module--title--cc33b\";","import React, {\n useState,\n useEffect,\n useRef,\n forwardRef,\n useImperativeHandle,\n useCallback,\n useContext,\n useMemo,\n} from \"react\";\nimport * as styles from \"./KpointPlayer.module.css\";\nimport { useInView } from \"react-intersection-observer\";\nimport { KpointPlayerContext } from \"../../context/KpointPlayerContext\";\nimport { graphql, useStaticQuery } from \"gatsby\";\nimport EmailGate from \"./EmailGate\";\nimport { GatsbyImage, getImage } from \"gatsby-plugin-image\";\nimport { useObserver } from \"../../context/ObserverContext\";\nimport {\n sendVideoLoadedEvent,\n sendVideoPauseEvent,\n sendVideoPlayEvent,\n sendVideoProgressEvent,\n} from \"../../utils/GA4Tracking\";\n\n/**\n * Merges two widget configuration objects. It combines the configurations of widgets,\n * concatenating lists within widgets if present, or otherwise merging widget properties.\n * This helps in dynamically configuring the player widgets based on different inputs.\n *\n * @param {Object} config1 - The first configuration object.\n * @param {Object} config2 - The second configuration object.\n * @returns {Object} - The merged configuration object.\n */\nconst mergeWidgetConfig = function (config1 = {}, config2 = {}) {\n let mergedConfig = { ...config1 };\n for (let widgetName in config2) {\n let widgetConfig = mergedConfig[widgetName];\n if (!widgetConfig) {\n mergedConfig[widgetName] = config2[widgetName];\n } else if (\n typeof widgetConfig === \"object\" &&\n Array.isArray(widgetConfig.list)\n ) {\n widgetConfig.list = [...widgetConfig.list, ...config2[widgetName].list];\n } else {\n mergedConfig[widgetName] = { ...widgetConfig, ...config2[widgetName] };\n }\n }\n return mergedConfig;\n};\n\n/**\n * The KpointPlayer component provides a customizable video player using kPoint library.\n * It supports dynamic video IDs based on device orientation and merges external widget configurations.\n *\n * @param {Object} props - Props for configuring the video player.\n * @param {React.Ref} ref - Ref forwarded for external control of the video player.\n */\nconst KpointPlayer = forwardRef((props, ref) => {\n const {\n videoId,\n fakeVideoId,\n horizontalVideoId,\n verticalVideoId,\n fakeHorizontalVideoId,\n fakeVerticalVideoId,\n host,\n params = {},\n externalWidgetsConfig = {},\n packageId,\n personalizationInfo,\n thumbnailPath,\n isVerticalVideo,\n containerClassNames = \"\",\n videoClassNames = \"\",\n state = \"PUBLISHED\",\n playWhenInViewOnly = true,\n children,\n onVideoLoad = () => {},\n onVideoRemove = () => {},\n onVideoEnd = () => {},\n } = props;\n\n const { isMuteRef, addPlayer, removePlayer } =\n useContext(KpointPlayerContext);\n const childRef = useRef();\n // const [customformOpened, setCustomformOpened] = useState(false);\n const customformOpenRef = useRef(false);\n const [emailGateOpened, setEmailGateOpened] = useState(false);\n const playerRef = useRef(null);\n\n const playerIsPlayingTimeout = useRef(null);\n\n const { observe, unobserve } = useObserver();\n\n const [videoState, setVideoState] = useState(null);\n\n const isVisibleRef = useRef(false);\n // const { ref: inLoadedViewRef, inView: inLoadedView } = useInView({\n // threshold: 0.1,\n // rootMargin: ` ${\n // typeof window !== \"undefined\" ? window.innerHeight : 0\n // }px 0px ${typeof window !== \"undefined\" ? window.innerHeight : 0}px 0px`,\n // triggerOnce: true,\n // });\n\n // const setRefs = useCallback(\n // (node) => {\n // childRef.current = node;\n // inViewRef(node);\n // // setLoadedViewRef(node);\n // },\n // [inViewRef]\n // );\n\n // const setLoadedViewRef = useCallback(\n // (node) => {\n // inLoadedViewRef(node);\n // },\n // [inLoadedViewRef]\n // );\n /**\n * Initializes the video player with the provided configuration.\n * It fetches additional package details if a packageId is provided and merges widget configurations.\n */\n\n useEffect(() => {\n const handelStateChange = (event) => {\n if (\n playerRef.current &&\n event.data === playerRef.current.playStates.ENDED\n ) {\n onVideoEnd();\n }\n };\n\n if (playerRef.current) {\n playerRef.current.addEventListener(\"onStateChange\", handelStateChange);\n }\n\n return () => {\n if (playerRef.current) {\n playerRef.current.removeEventListener(\n \"onStateChange\",\n handelStateChange\n );\n }\n };\n }, [onVideoEnd]);\n\n const skipNextMuteEventRef = useRef(false);\n const previousMuteStateRef = useRef(null);\n\n const initPlayer = async () => {\n try {\n const options = {\n kvideoId: isSmartPlayer()\n ? isMobile()\n ? verticalVideoId\n : horizontalVideoId\n : videoId,\n videoHost: host,\n params,\n externalWidgetsConfig,\n };\n\n if (packageId) {\n let packageVideoId = isSmartPlayer()\n ? isMobile()\n ? fakeVerticalVideoId ?? verticalVideoId\n : fakeHorizontalVideoId ?? horizontalVideoId\n : fakeVideoId ?? videoId;\n\n let packageDetails = await fetch(\n `https://${host}/api/v3/videos/${packageVideoId}/dyn/embed?id=${packageId}&state=${state}`\n );\n packageDetails = await packageDetails.json();\n const embedCode = packageDetails.videoEmbedcode;\n\n const parser = new DOMParser();\n const doc = parser.parseFromString(embedCode, \"text/html\");\n\n const embedCodeDiv = doc.querySelector(\"div\");\n\n //expect divElement other than elements in the body\n\n if (embedCodeDiv) {\n const body = doc.querySelector(\"body\");\n const head = doc.querySelector(\"head\");\n const bodyElements = Array.from(body.children).filter(\n (element) => element !== embedCodeDiv\n );\n\n let scripts = [];\n bodyElements.forEach((element) => {\n if (element.tagName === \"SCRIPT\") {\n scripts.push(element);\n }\n });\n Array.from(head.children).forEach((element) => {\n if (element.tagName === \"SCRIPT\") {\n scripts.push(element);\n }\n });\n\n scripts.forEach((script) => {\n const newScript = document.createElement(\"script\");\n if (script.src) {\n if (script.src.includes(\"videofront-vega\")) {\n return;\n }\n newScript.src = script.src;\n } else {\n newScript.textContent = script.innerHTML;\n }\n if (script.type === \"module\") {\n newScript.type = \"module\";\n }\n document.body.appendChild(newScript);\n });\n\n let markup = Array.from(head.children)\n .map((element) => element.outerHTML)\n .join(\"\");\n markup += bodyElements.map((element) => element.outerHTML).join(\"\");\n childRef.current.parentElement.querySelector(\n `.${styles?.markupTemplateContainer}`\n ).innerHTML = markup;\n\n const videoParams = JSON.parse(\n embedCodeDiv.dataset.videoParams || \"{}\"\n );\n options.params = { ...options.params, ...videoParams };\n\n if (params[\"add-widgets\"]) {\n options.params[\"add-widgets\"] += `,${videoParams[\"add-widgets\"]}`;\n }\n options.externalWidgetsConfig = mergeWidgetConfig(\n externalWidgetsConfig,\n JSON.parse(embedCodeDiv.dataset.widgetsConfig || \"{}\")\n );\n options.personalizationInfo =\n embedCodeDiv.dataset.personalizationInfo || personalizationInfo;\n options.thumbnailPath =\n embedCodeDiv.dataset.thumbnailPath || thumbnailPath;\n }\n }\n\n //Add the local muted state to the player\n options.params.muted = isMuteRef.current;\n\n if (playWhenInViewOnly) {\n options.params.autoplay = false;\n }\n\n // Initialize the player with the provided configuration\n const playerInstance = window.kPoint.Player(childRef.current, options);\n playerRef.current = playerInstance;\n\n // Show the player once it is loaded\n playerInstance.addEventListener(\"loaded\", () => {\n addPlayer(playerInstance);\n childRef.current.classList.remove(styles?.notLoaded);\n childRef.current.parentElement\n .querySelector(`.${styles?.playerOverlay}`)\n .classList.remove(styles?.notLoaded);\n childRef.current.parentElement\n .querySelector(`.${styles?.thumbnail}`)\n ?.classList.remove(styles?.notLoaded);\n\n // Play the video if it should play when in view and is currently in 70% is visible\n if (playWhenInViewOnly && isVisibleRef.current) {\n playerInstance.playVideo();\n }\n\n if (window.gtag) {\n sendVideoLoadedEvent(playerInstance.info.personalizedData.videoTitle);\n }\n\n if (previousMuteStateRef.current === false) {\n setTimeout(() => {\n playerInstance?.unmute();\n playerInstance?.setVolume(1);\n }, 100);\n }\n });\n\n playerInstance?.addEventListener(\"timeupdate\", () => {\n varifyCorrectVideoPlaying(playerInstance);\n });\n playerInstance.addEventListener(\"customformOpen\", () => {\n customformOpenRef.current = true;\n });\n\n playerInstance.addEventListener(\"customformClose\", () => {\n customformOpenRef.current = false;\n });\n\n playerInstance.addEventListener(\"muted\", () => {\n if (skipNextMuteEventRef.current) {\n skipNextMuteEventRef.current = false;\n return;\n }\n isMuteRef.current = true;\n });\n\n onVideoEnd(playerInstance);\n onVideoLoad(playerInstance);\n } catch (error) {\n console.error(\"Failed to initialize the KpointPlayer:\", error);\n // Handle initialization failure (e.g., show a fallback UI)\n }\n };\n\n /**\n * Determines if the current device is mobile based on the user agent.\n * @returns {boolean} - True if the device is mobile, false otherwise.\n */\n const isMobile = () =>\n typeof window !== \"undefined\" &&\n /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(\n navigator.userAgent\n );\n\n /**\n * Checks if the player should use smart logic for video IDs based on device orientation.\n * @returns {boolean} - True if both horizontal and vertical video IDs are provided, false otherwise.\n */\n const isSmartPlayer = () => horizontalVideoId && verticalVideoId;\n const [gccId, setGccId] = useState(\n isSmartPlayer()\n ? isMobile()\n ? verticalVideoId\n : horizontalVideoId\n : videoId\n );\n\n const data = useStaticQuery(graphql`\n query StrapiVideo {\n allStrapiVideo {\n edges {\n node {\n id\n videoId\n host\n title\n thumbnail {\n name\n localFile {\n childImageSharp {\n gatsbyImageData(layout: FULL_WIDTH)\n }\n }\n }\n }\n }\n }\n }\n `);\n\n const videoDetails = useMemo(() => {\n return data.allStrapiVideo.edges.find((video) => {\n return video.node.videoId === gccId;\n });\n }, [gccId]);\n\n const image = getImage(\n videoDetails?.node?.thumbnail?.localFile?.childImageSharp?.gatsbyImageData\n );\n\n const varifyCorrectVideoPlaying = (playerInstance) => {\n if (!isVisibleRef?.current && playWhenInViewOnly && playerInstance) {\n playerInstance?.pauseVideo();\n }\n };\n\n const varifyPlayerIsPlaying = () => {\n const player = playerRef.current;\n if (!player) return;\n if (\n player.getPlayState() === player.playStates.UNSTARTED &&\n isVisibleRef.current\n ) {\n player.playVideo();\n playerIsPlayingTimeout.current = setTimeout(() => {\n varifyPlayerIsPlaying();\n }, 200);\n } else {\n clearTimeout(playerIsPlayingTimeout.current);\n }\n };\n\n useImperativeHandle(ref, () => ({\n playVideo: () => playerRef.current?.playVideo(),\n rePlayVideo: () => {\n playerRef.current.rePlayVideo();\n },\n pauseVideo: () => {\n playerRef.current?.pauseVideo();\n },\n mute: () => {\n playerRef.current?.mute();\n playerRef.current?.setVolume(0);\n },\n unmute: () => {\n playerRef.current?.unmute();\n playerRef.current?.setVolume(1);\n },\n seekTo: (time) => {\n playerRef.current.seekTo(time);\n },\n getCurrentTime: () => {\n return playerRef.current.getCurrentTime();\n },\n getDuration: () => {\n return playerRef.current.getDuration();\n },\n getVolume: () => {\n return playerRef.current.getVolume();\n },\n setVolume: (volume) => {\n playerRef.current.setVolume(volume);\n },\n setWidgetsConfig: (widgetsConfig) => {\n playerRef.current.setWidgetsConfig(widgetsConfig);\n },\n setWidgetConfig: (widgetsConfig, widgetName) => {\n playerRef.current.setWidgetsConfig({\n [widgetName]: widgetsConfig[widgetName],\n });\n },\n\n togglePlayPauseVideo: () => {\n if (!playerRef.current) {\n return;\n }\n if (\n playerRef.current.getPlayState() ===\n playerRef.current.playStates.PLAYING\n ) {\n playerRef.current.pauseVideo();\n } else {\n playerRef.current.playVideo();\n }\n },\n\n loadVideoById: (newVideoId) => {\n if (playerRef.current && playerRef.current.loadVideoById) {\n // Store current mute state before loading new video\n previousMuteStateRef.current = isMuteRef.current;\n skipNextMuteEventRef.current = true;\n\n playerRef.current.loadVideoById(newVideoId);\n setGccId(newVideoId);\n } else {\n console.log(\"loadVideoById is not available\");\n }\n },\n\n playStates: () => {\n if (playerRef.current && playerRef.current.playStates.ENDED) {\n console.log(\"video ended\");\n }\n },\n\n isVideoEnded: () => {\n return (\n playerRef.current &&\n playerRef.current.getPlayState() === playerRef.current.playStates.ENDED\n );\n },\n\n inView: isVisibleRef.current,\n playWhenInViewOnly: playWhenInViewOnly,\n\n postCustomEvent: (eventName, args = {}) => {\n playerRef?.current?.postCustomEvent(eventName, args);\n },\n }));\n\n //\n useEffect(() => {\n const element = childRef.current;\n\n if (element) {\n // Define callbacks\n //todo: add it in useCallback\n\n element.addEventListener(\"click\", () => {\n const isPlaying = playerRef.current.getPlayState() == 2;\n if (window.gtag && isPlaying) {\n const videoTitle = playerRef.current.info.personalizedData.videoTitle; // Get the video title dynamically\n sendVideoPlayEvent(videoTitle);\n } else if (window.gtag && !isPlaying) {\n const videoTitle = playerRef.current.info.personalizedData.videoTitle; // Get the video title dynamically\n sendVideoPauseEvent(videoTitle);\n }\n });\n\n const inViewCallback = (inView) => {\n isVisibleRef.current = inView;\n if (!playWhenInViewOnly || customformOpenRef.current) {\n return;\n }\n if (inView) {\n playerRef.current?.playVideo?.();\n playerIsPlayingTimeout.current = setTimeout(() => {\n varifyPlayerIsPlaying();\n }, 200);\n } else {\n playerRef.current?.pauseVideo?.();\n clearTimeout(playerIsPlayingTimeout.current);\n }\n };\n\n const loadCallback = (shouldLoad) => {\n if (shouldLoad) {\n if (window.kPoint) {\n initPlayer();\n } else {\n document.addEventListener(\"playerSilkLoaded\", initPlayer);\n }\n }\n };\n\n observe(element, inViewCallback, loadCallback);\n }\n function handleOnClickButton(event) {\n const { p0, p1 } = event.detail;\n if (p0 !== gccId) {\n return;\n }\n\n if (p1 === \"emailgate\") {\n customformOpenRef.current = true;\n\n setEmailGateOpened(true);\n playerRef?.current?.pauseVideo();\n }\n }\n\n document.addEventListener(\"kpw-onclick-button\", handleOnClickButton);\n return () => {\n document.removeEventListener(\"kpw-onclick-button\", handleOnClickButton);\n onVideoRemove(playerRef.current);\n removePlayer(playerRef.current);\n unobserve(element);\n };\n }, []);\n\n return (\n <>\n
\n
\n
\n {children}\n {emailGateOpened && (\n {\n setEmailGateOpened(false);\n customformOpenRef.current = false;\n\n playerRef.current.playVideo();\n }}\n playerRef={playerRef}\n />\n )}\n
\n
\n {image && (\n <>\n \n
\n
\n
\n \n \n ;\n \n )}\n\n {/**/}\n \n\n
\n \n \n );\n});\n\nexport default KpointPlayer;\n","// Adapted from https://github.com/mathiasbynens/he/blob/36afe179392226cf1b6ccdb16ebbb7a5a844d93a/src/he.js#L106-L134\nvar _a;\nconst decodeMap = new Map([\n [0, 65533],\n // C1 Unicode control character reference replacements\n [128, 8364],\n [130, 8218],\n [131, 402],\n [132, 8222],\n [133, 8230],\n [134, 8224],\n [135, 8225],\n [136, 710],\n [137, 8240],\n [138, 352],\n [139, 8249],\n [140, 338],\n [142, 381],\n [145, 8216],\n [146, 8217],\n [147, 8220],\n [148, 8221],\n [149, 8226],\n [150, 8211],\n [151, 8212],\n [152, 732],\n [153, 8482],\n [154, 353],\n [155, 8250],\n [156, 339],\n [158, 382],\n [159, 376],\n]);\n/**\n * Polyfill for `String.fromCodePoint`. It is used to create a string from a Unicode code point.\n */\nexport const fromCodePoint = \n// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition, node/no-unsupported-features/es-builtins\n(_a = String.fromCodePoint) !== null && _a !== void 0 ? _a : function (codePoint) {\n let output = \"\";\n if (codePoint > 0xffff) {\n codePoint -= 0x10000;\n output += String.fromCharCode(((codePoint >>> 10) & 0x3ff) | 0xd800);\n codePoint = 0xdc00 | (codePoint & 0x3ff);\n }\n output += String.fromCharCode(codePoint);\n return output;\n};\n/**\n * Replace the given code point with a replacement character if it is a\n * surrogate or is outside the valid range. Otherwise return the code\n * point unchanged.\n */\nexport function replaceCodePoint(codePoint) {\n var _a;\n if ((codePoint >= 0xd800 && codePoint <= 0xdfff) || codePoint > 0x10ffff) {\n return 0xfffd;\n }\n return (_a = decodeMap.get(codePoint)) !== null && _a !== void 0 ? _a : codePoint;\n}\n/**\n * Replace the code point if relevant, then convert it to a string.\n *\n * @deprecated Use `fromCodePoint(replaceCodePoint(codePoint))` instead.\n * @param codePoint The code point to decode.\n * @returns The decoded code point.\n */\nexport default function decodeCodePoint(codePoint) {\n return fromCodePoint(replaceCodePoint(codePoint));\n}\n//# sourceMappingURL=decode_codepoint.js.map","// Generated using scripts/write-decode-map.ts\nexport default new Uint16Array(\n// prettier-ignore\n\"\\u1d41<\\xd5\\u0131\\u028a\\u049d\\u057b\\u05d0\\u0675\\u06de\\u07a2\\u07d6\\u080f\\u0a4a\\u0a91\\u0da1\\u0e6d\\u0f09\\u0f26\\u10ca\\u1228\\u12e1\\u1415\\u149d\\u14c3\\u14df\\u1525\\0\\0\\0\\0\\0\\0\\u156b\\u16cd\\u198d\\u1c12\\u1ddd\\u1f7e\\u2060\\u21b0\\u228d\\u23c0\\u23fb\\u2442\\u2824\\u2912\\u2d08\\u2e48\\u2fce\\u3016\\u32ba\\u3639\\u37ac\\u38fe\\u3a28\\u3a71\\u3ae0\\u3b2e\\u0800EMabcfglmnoprstu\\\\bfms\\x7f\\x84\\x8b\\x90\\x95\\x98\\xa6\\xb3\\xb9\\xc8\\xcflig\\u803b\\xc6\\u40c6P\\u803b&\\u4026cute\\u803b\\xc1\\u40c1reve;\\u4102\\u0100iyx}rc\\u803b\\xc2\\u40c2;\\u4410r;\\uc000\\ud835\\udd04rave\\u803b\\xc0\\u40c0pha;\\u4391acr;\\u4100d;\\u6a53\\u0100gp\\x9d\\xa1on;\\u4104f;\\uc000\\ud835\\udd38plyFunction;\\u6061ing\\u803b\\xc5\\u40c5\\u0100cs\\xbe\\xc3r;\\uc000\\ud835\\udc9cign;\\u6254ilde\\u803b\\xc3\\u40c3ml\\u803b\\xc4\\u40c4\\u0400aceforsu\\xe5\\xfb\\xfe\\u0117\\u011c\\u0122\\u0127\\u012a\\u0100cr\\xea\\xf2kslash;\\u6216\\u0176\\xf6\\xf8;\\u6ae7ed;\\u6306y;\\u4411\\u0180crt\\u0105\\u010b\\u0114ause;\\u6235noullis;\\u612ca;\\u4392r;\\uc000\\ud835\\udd05pf;\\uc000\\ud835\\udd39eve;\\u42d8c\\xf2\\u0113mpeq;\\u624e\\u0700HOacdefhilorsu\\u014d\\u0151\\u0156\\u0180\\u019e\\u01a2\\u01b5\\u01b7\\u01ba\\u01dc\\u0215\\u0273\\u0278\\u027ecy;\\u4427PY\\u803b\\xa9\\u40a9\\u0180cpy\\u015d\\u0162\\u017aute;\\u4106\\u0100;i\\u0167\\u0168\\u62d2talDifferentialD;\\u6145leys;\\u612d\\u0200aeio\\u0189\\u018e\\u0194\\u0198ron;\\u410cdil\\u803b\\xc7\\u40c7rc;\\u4108nint;\\u6230ot;\\u410a\\u0100dn\\u01a7\\u01adilla;\\u40b8terDot;\\u40b7\\xf2\\u017fi;\\u43a7rcle\\u0200DMPT\\u01c7\\u01cb\\u01d1\\u01d6ot;\\u6299inus;\\u6296lus;\\u6295imes;\\u6297o\\u0100cs\\u01e2\\u01f8kwiseContourIntegral;\\u6232eCurly\\u0100DQ\\u0203\\u020foubleQuote;\\u601duote;\\u6019\\u0200lnpu\\u021e\\u0228\\u0247\\u0255on\\u0100;e\\u0225\\u0226\\u6237;\\u6a74\\u0180git\\u022f\\u0236\\u023aruent;\\u6261nt;\\u622fourIntegral;\\u622e\\u0100fr\\u024c\\u024e;\\u6102oduct;\\u6210nterClockwiseContourIntegral;\\u6233oss;\\u6a2fcr;\\uc000\\ud835\\udc9ep\\u0100;C\\u0284\\u0285\\u62d3ap;\\u624d\\u0580DJSZacefios\\u02a0\\u02ac\\u02b0\\u02b4\\u02b8\\u02cb\\u02d7\\u02e1\\u02e6\\u0333\\u048d\\u0100;o\\u0179\\u02a5trahd;\\u6911cy;\\u4402cy;\\u4405cy;\\u440f\\u0180grs\\u02bf\\u02c4\\u02c7ger;\\u6021r;\\u61a1hv;\\u6ae4\\u0100ay\\u02d0\\u02d5ron;\\u410e;\\u4414l\\u0100;t\\u02dd\\u02de\\u6207a;\\u4394r;\\uc000\\ud835\\udd07\\u0100af\\u02eb\\u0327\\u0100cm\\u02f0\\u0322ritical\\u0200ADGT\\u0300\\u0306\\u0316\\u031ccute;\\u40b4o\\u0174\\u030b\\u030d;\\u42d9bleAcute;\\u42ddrave;\\u4060ilde;\\u42dcond;\\u62c4ferentialD;\\u6146\\u0470\\u033d\\0\\0\\0\\u0342\\u0354\\0\\u0405f;\\uc000\\ud835\\udd3b\\u0180;DE\\u0348\\u0349\\u034d\\u40a8ot;\\u60dcqual;\\u6250ble\\u0300CDLRUV\\u0363\\u0372\\u0382\\u03cf\\u03e2\\u03f8ontourIntegra\\xec\\u0239o\\u0274\\u0379\\0\\0\\u037b\\xbb\\u0349nArrow;\\u61d3\\u0100eo\\u0387\\u03a4ft\\u0180ART\\u0390\\u0396\\u03a1rrow;\\u61d0ightArrow;\\u61d4e\\xe5\\u02cang\\u0100LR\\u03ab\\u03c4eft\\u0100AR\\u03b3\\u03b9rrow;\\u67f8ightArrow;\\u67faightArrow;\\u67f9ight\\u0100AT\\u03d8\\u03derrow;\\u61d2ee;\\u62a8p\\u0241\\u03e9\\0\\0\\u03efrrow;\\u61d1ownArrow;\\u61d5erticalBar;\\u6225n\\u0300ABLRTa\\u0412\\u042a\\u0430\\u045e\\u047f\\u037crrow\\u0180;BU\\u041d\\u041e\\u0422\\u6193ar;\\u6913pArrow;\\u61f5reve;\\u4311eft\\u02d2\\u043a\\0\\u0446\\0\\u0450ightVector;\\u6950eeVector;\\u695eector\\u0100;B\\u0459\\u045a\\u61bdar;\\u6956ight\\u01d4\\u0467\\0\\u0471eeVector;\\u695fector\\u0100;B\\u047a\\u047b\\u61c1ar;\\u6957ee\\u0100;A\\u0486\\u0487\\u62a4rrow;\\u61a7\\u0100ct\\u0492\\u0497r;\\uc000\\ud835\\udc9frok;\\u4110\\u0800NTacdfglmopqstux\\u04bd\\u04c0\\u04c4\\u04cb\\u04de\\u04e2\\u04e7\\u04ee\\u04f5\\u0521\\u052f\\u0536\\u0552\\u055d\\u0560\\u0565G;\\u414aH\\u803b\\xd0\\u40d0cute\\u803b\\xc9\\u40c9\\u0180aiy\\u04d2\\u04d7\\u04dcron;\\u411arc\\u803b\\xca\\u40ca;\\u442dot;\\u4116r;\\uc000\\ud835\\udd08rave\\u803b\\xc8\\u40c8ement;\\u6208\\u0100ap\\u04fa\\u04fecr;\\u4112ty\\u0253\\u0506\\0\\0\\u0512mallSquare;\\u65fberySmallSquare;\\u65ab\\u0100gp\\u0526\\u052aon;\\u4118f;\\uc000\\ud835\\udd3csilon;\\u4395u\\u0100ai\\u053c\\u0549l\\u0100;T\\u0542\\u0543\\u6a75ilde;\\u6242librium;\\u61cc\\u0100ci\\u0557\\u055ar;\\u6130m;\\u6a73a;\\u4397ml\\u803b\\xcb\\u40cb\\u0100ip\\u056a\\u056fsts;\\u6203onentialE;\\u6147\\u0280cfios\\u0585\\u0588\\u058d\\u05b2\\u05ccy;\\u4424r;\\uc000\\ud835\\udd09lled\\u0253\\u0597\\0\\0\\u05a3mallSquare;\\u65fcerySmallSquare;\\u65aa\\u0370\\u05ba\\0\\u05bf\\0\\0\\u05c4f;\\uc000\\ud835\\udd3dAll;\\u6200riertrf;\\u6131c\\xf2\\u05cb\\u0600JTabcdfgorst\\u05e8\\u05ec\\u05ef\\u05fa\\u0600\\u0612\\u0616\\u061b\\u061d\\u0623\\u066c\\u0672cy;\\u4403\\u803b>\\u403emma\\u0100;d\\u05f7\\u05f8\\u4393;\\u43dcreve;\\u411e\\u0180eiy\\u0607\\u060c\\u0610dil;\\u4122rc;\\u411c;\\u4413ot;\\u4120r;\\uc000\\ud835\\udd0a;\\u62d9pf;\\uc000\\ud835\\udd3eeater\\u0300EFGLST\\u0635\\u0644\\u064e\\u0656\\u065b\\u0666qual\\u0100;L\\u063e\\u063f\\u6265ess;\\u62dbullEqual;\\u6267reater;\\u6aa2ess;\\u6277lantEqual;\\u6a7eilde;\\u6273cr;\\uc000\\ud835\\udca2;\\u626b\\u0400Aacfiosu\\u0685\\u068b\\u0696\\u069b\\u069e\\u06aa\\u06be\\u06caRDcy;\\u442a\\u0100ct\\u0690\\u0694ek;\\u42c7;\\u405eirc;\\u4124r;\\u610clbertSpace;\\u610b\\u01f0\\u06af\\0\\u06b2f;\\u610dizontalLine;\\u6500\\u0100ct\\u06c3\\u06c5\\xf2\\u06a9rok;\\u4126mp\\u0144\\u06d0\\u06d8ownHum\\xf0\\u012fqual;\\u624f\\u0700EJOacdfgmnostu\\u06fa\\u06fe\\u0703\\u0707\\u070e\\u071a\\u071e\\u0721\\u0728\\u0744\\u0778\\u078b\\u078f\\u0795cy;\\u4415lig;\\u4132cy;\\u4401cute\\u803b\\xcd\\u40cd\\u0100iy\\u0713\\u0718rc\\u803b\\xce\\u40ce;\\u4418ot;\\u4130r;\\u6111rave\\u803b\\xcc\\u40cc\\u0180;ap\\u0720\\u072f\\u073f\\u0100cg\\u0734\\u0737r;\\u412ainaryI;\\u6148lie\\xf3\\u03dd\\u01f4\\u0749\\0\\u0762\\u0100;e\\u074d\\u074e\\u622c\\u0100gr\\u0753\\u0758ral;\\u622bsection;\\u62c2isible\\u0100CT\\u076c\\u0772omma;\\u6063imes;\\u6062\\u0180gpt\\u077f\\u0783\\u0788on;\\u412ef;\\uc000\\ud835\\udd40a;\\u4399cr;\\u6110ilde;\\u4128\\u01eb\\u079a\\0\\u079ecy;\\u4406l\\u803b\\xcf\\u40cf\\u0280cfosu\\u07ac\\u07b7\\u07bc\\u07c2\\u07d0\\u0100iy\\u07b1\\u07b5rc;\\u4134;\\u4419r;\\uc000\\ud835\\udd0dpf;\\uc000\\ud835\\udd41\\u01e3\\u07c7\\0\\u07ccr;\\uc000\\ud835\\udca5rcy;\\u4408kcy;\\u4404\\u0380HJacfos\\u07e4\\u07e8\\u07ec\\u07f1\\u07fd\\u0802\\u0808cy;\\u4425cy;\\u440cppa;\\u439a\\u0100ey\\u07f6\\u07fbdil;\\u4136;\\u441ar;\\uc000\\ud835\\udd0epf;\\uc000\\ud835\\udd42cr;\\uc000\\ud835\\udca6\\u0580JTaceflmost\\u0825\\u0829\\u082c\\u0850\\u0863\\u09b3\\u09b8\\u09c7\\u09cd\\u0a37\\u0a47cy;\\u4409\\u803b<\\u403c\\u0280cmnpr\\u0837\\u083c\\u0841\\u0844\\u084dute;\\u4139bda;\\u439bg;\\u67ealacetrf;\\u6112r;\\u619e\\u0180aey\\u0857\\u085c\\u0861ron;\\u413ddil;\\u413b;\\u441b\\u0100fs\\u0868\\u0970t\\u0500ACDFRTUVar\\u087e\\u08a9\\u08b1\\u08e0\\u08e6\\u08fc\\u092f\\u095b\\u0390\\u096a\\u0100nr\\u0883\\u088fgleBracket;\\u67e8row\\u0180;BR\\u0899\\u089a\\u089e\\u6190ar;\\u61e4ightArrow;\\u61c6eiling;\\u6308o\\u01f5\\u08b7\\0\\u08c3bleBracket;\\u67e6n\\u01d4\\u08c8\\0\\u08d2eeVector;\\u6961ector\\u0100;B\\u08db\\u08dc\\u61c3ar;\\u6959loor;\\u630aight\\u0100AV\\u08ef\\u08f5rrow;\\u6194ector;\\u694e\\u0100er\\u0901\\u0917e\\u0180;AV\\u0909\\u090a\\u0910\\u62a3rrow;\\u61a4ector;\\u695aiangle\\u0180;BE\\u0924\\u0925\\u0929\\u62b2ar;\\u69cfqual;\\u62b4p\\u0180DTV\\u0937\\u0942\\u094cownVector;\\u6951eeVector;\\u6960ector\\u0100;B\\u0956\\u0957\\u61bfar;\\u6958ector\\u0100;B\\u0965\\u0966\\u61bcar;\\u6952ight\\xe1\\u039cs\\u0300EFGLST\\u097e\\u098b\\u0995\\u099d\\u09a2\\u09adqualGreater;\\u62daullEqual;\\u6266reater;\\u6276ess;\\u6aa1lantEqual;\\u6a7dilde;\\u6272r;\\uc000\\ud835\\udd0f\\u0100;e\\u09bd\\u09be\\u62d8ftarrow;\\u61daidot;\\u413f\\u0180npw\\u09d4\\u0a16\\u0a1bg\\u0200LRlr\\u09de\\u09f7\\u0a02\\u0a10eft\\u0100AR\\u09e6\\u09ecrrow;\\u67f5ightArrow;\\u67f7ightArrow;\\u67f6eft\\u0100ar\\u03b3\\u0a0aight\\xe1\\u03bfight\\xe1\\u03caf;\\uc000\\ud835\\udd43er\\u0100LR\\u0a22\\u0a2ceftArrow;\\u6199ightArrow;\\u6198\\u0180cht\\u0a3e\\u0a40\\u0a42\\xf2\\u084c;\\u61b0rok;\\u4141;\\u626a\\u0400acefiosu\\u0a5a\\u0a5d\\u0a60\\u0a77\\u0a7c\\u0a85\\u0a8b\\u0a8ep;\\u6905y;\\u441c\\u0100dl\\u0a65\\u0a6fiumSpace;\\u605flintrf;\\u6133r;\\uc000\\ud835\\udd10nusPlus;\\u6213pf;\\uc000\\ud835\\udd44c\\xf2\\u0a76;\\u439c\\u0480Jacefostu\\u0aa3\\u0aa7\\u0aad\\u0ac0\\u0b14\\u0b19\\u0d91\\u0d97\\u0d9ecy;\\u440acute;\\u4143\\u0180aey\\u0ab4\\u0ab9\\u0aberon;\\u4147dil;\\u4145;\\u441d\\u0180gsw\\u0ac7\\u0af0\\u0b0eative\\u0180MTV\\u0ad3\\u0adf\\u0ae8ediumSpace;\\u600bhi\\u0100cn\\u0ae6\\u0ad8\\xeb\\u0ad9eryThi\\xee\\u0ad9ted\\u0100GL\\u0af8\\u0b06reaterGreate\\xf2\\u0673essLes\\xf3\\u0a48Line;\\u400ar;\\uc000\\ud835\\udd11\\u0200Bnpt\\u0b22\\u0b28\\u0b37\\u0b3areak;\\u6060BreakingSpace;\\u40a0f;\\u6115\\u0680;CDEGHLNPRSTV\\u0b55\\u0b56\\u0b6a\\u0b7c\\u0ba1\\u0beb\\u0c04\\u0c5e\\u0c84\\u0ca6\\u0cd8\\u0d61\\u0d85\\u6aec\\u0100ou\\u0b5b\\u0b64ngruent;\\u6262pCap;\\u626doubleVerticalBar;\\u6226\\u0180lqx\\u0b83\\u0b8a\\u0b9bement;\\u6209ual\\u0100;T\\u0b92\\u0b93\\u6260ilde;\\uc000\\u2242\\u0338ists;\\u6204reater\\u0380;EFGLST\\u0bb6\\u0bb7\\u0bbd\\u0bc9\\u0bd3\\u0bd8\\u0be5\\u626fqual;\\u6271ullEqual;\\uc000\\u2267\\u0338reater;\\uc000\\u226b\\u0338ess;\\u6279lantEqual;\\uc000\\u2a7e\\u0338ilde;\\u6275ump\\u0144\\u0bf2\\u0bfdownHump;\\uc000\\u224e\\u0338qual;\\uc000\\u224f\\u0338e\\u0100fs\\u0c0a\\u0c27tTriangle\\u0180;BE\\u0c1a\\u0c1b\\u0c21\\u62eaar;\\uc000\\u29cf\\u0338qual;\\u62ecs\\u0300;EGLST\\u0c35\\u0c36\\u0c3c\\u0c44\\u0c4b\\u0c58\\u626equal;\\u6270reater;\\u6278ess;\\uc000\\u226a\\u0338lantEqual;\\uc000\\u2a7d\\u0338ilde;\\u6274ested\\u0100GL\\u0c68\\u0c79reaterGreater;\\uc000\\u2aa2\\u0338essLess;\\uc000\\u2aa1\\u0338recedes\\u0180;ES\\u0c92\\u0c93\\u0c9b\\u6280qual;\\uc000\\u2aaf\\u0338lantEqual;\\u62e0\\u0100ei\\u0cab\\u0cb9verseElement;\\u620cghtTriangle\\u0180;BE\\u0ccb\\u0ccc\\u0cd2\\u62ebar;\\uc000\\u29d0\\u0338qual;\\u62ed\\u0100qu\\u0cdd\\u0d0cuareSu\\u0100bp\\u0ce8\\u0cf9set\\u0100;E\\u0cf0\\u0cf3\\uc000\\u228f\\u0338qual;\\u62e2erset\\u0100;E\\u0d03\\u0d06\\uc000\\u2290\\u0338qual;\\u62e3\\u0180bcp\\u0d13\\u0d24\\u0d4eset\\u0100;E\\u0d1b\\u0d1e\\uc000\\u2282\\u20d2qual;\\u6288ceeds\\u0200;EST\\u0d32\\u0d33\\u0d3b\\u0d46\\u6281qual;\\uc000\\u2ab0\\u0338lantEqual;\\u62e1ilde;\\uc000\\u227f\\u0338erset\\u0100;E\\u0d58\\u0d5b\\uc000\\u2283\\u20d2qual;\\u6289ilde\\u0200;EFT\\u0d6e\\u0d6f\\u0d75\\u0d7f\\u6241qual;\\u6244ullEqual;\\u6247ilde;\\u6249erticalBar;\\u6224cr;\\uc000\\ud835\\udca9ilde\\u803b\\xd1\\u40d1;\\u439d\\u0700Eacdfgmoprstuv\\u0dbd\\u0dc2\\u0dc9\\u0dd5\\u0ddb\\u0de0\\u0de7\\u0dfc\\u0e02\\u0e20\\u0e22\\u0e32\\u0e3f\\u0e44lig;\\u4152cute\\u803b\\xd3\\u40d3\\u0100iy\\u0dce\\u0dd3rc\\u803b\\xd4\\u40d4;\\u441eblac;\\u4150r;\\uc000\\ud835\\udd12rave\\u803b\\xd2\\u40d2\\u0180aei\\u0dee\\u0df2\\u0df6cr;\\u414cga;\\u43a9cron;\\u439fpf;\\uc000\\ud835\\udd46enCurly\\u0100DQ\\u0e0e\\u0e1aoubleQuote;\\u601cuote;\\u6018;\\u6a54\\u0100cl\\u0e27\\u0e2cr;\\uc000\\ud835\\udcaaash\\u803b\\xd8\\u40d8i\\u016c\\u0e37\\u0e3cde\\u803b\\xd5\\u40d5es;\\u6a37ml\\u803b\\xd6\\u40d6er\\u0100BP\\u0e4b\\u0e60\\u0100ar\\u0e50\\u0e53r;\\u603eac\\u0100ek\\u0e5a\\u0e5c;\\u63deet;\\u63b4arenthesis;\\u63dc\\u0480acfhilors\\u0e7f\\u0e87\\u0e8a\\u0e8f\\u0e92\\u0e94\\u0e9d\\u0eb0\\u0efcrtialD;\\u6202y;\\u441fr;\\uc000\\ud835\\udd13i;\\u43a6;\\u43a0usMinus;\\u40b1\\u0100ip\\u0ea2\\u0eadncareplan\\xe5\\u069df;\\u6119\\u0200;eio\\u0eb9\\u0eba\\u0ee0\\u0ee4\\u6abbcedes\\u0200;EST\\u0ec8\\u0ec9\\u0ecf\\u0eda\\u627aqual;\\u6aaflantEqual;\\u627cilde;\\u627eme;\\u6033\\u0100dp\\u0ee9\\u0eeeuct;\\u620fortion\\u0100;a\\u0225\\u0ef9l;\\u621d\\u0100ci\\u0f01\\u0f06r;\\uc000\\ud835\\udcab;\\u43a8\\u0200Ufos\\u0f11\\u0f16\\u0f1b\\u0f1fOT\\u803b\\\"\\u4022r;\\uc000\\ud835\\udd14pf;\\u611acr;\\uc000\\ud835\\udcac\\u0600BEacefhiorsu\\u0f3e\\u0f43\\u0f47\\u0f60\\u0f73\\u0fa7\\u0faa\\u0fad\\u1096\\u10a9\\u10b4\\u10bearr;\\u6910G\\u803b\\xae\\u40ae\\u0180cnr\\u0f4e\\u0f53\\u0f56ute;\\u4154g;\\u67ebr\\u0100;t\\u0f5c\\u0f5d\\u61a0l;\\u6916\\u0180aey\\u0f67\\u0f6c\\u0f71ron;\\u4158dil;\\u4156;\\u4420\\u0100;v\\u0f78\\u0f79\\u611cerse\\u0100EU\\u0f82\\u0f99\\u0100lq\\u0f87\\u0f8eement;\\u620builibrium;\\u61cbpEquilibrium;\\u696fr\\xbb\\u0f79o;\\u43a1ght\\u0400ACDFTUVa\\u0fc1\\u0feb\\u0ff3\\u1022\\u1028\\u105b\\u1087\\u03d8\\u0100nr\\u0fc6\\u0fd2gleBracket;\\u67e9row\\u0180;BL\\u0fdc\\u0fdd\\u0fe1\\u6192ar;\\u61e5eftArrow;\\u61c4eiling;\\u6309o\\u01f5\\u0ff9\\0\\u1005bleBracket;\\u67e7n\\u01d4\\u100a\\0\\u1014eeVector;\\u695dector\\u0100;B\\u101d\\u101e\\u61c2ar;\\u6955loor;\\u630b\\u0100er\\u102d\\u1043e\\u0180;AV\\u1035\\u1036\\u103c\\u62a2rrow;\\u61a6ector;\\u695biangle\\u0180;BE\\u1050\\u1051\\u1055\\u62b3ar;\\u69d0qual;\\u62b5p\\u0180DTV\\u1063\\u106e\\u1078ownVector;\\u694feeVector;\\u695cector\\u0100;B\\u1082\\u1083\\u61bear;\\u6954ector\\u0100;B\\u1091\\u1092\\u61c0ar;\\u6953\\u0100pu\\u109b\\u109ef;\\u611dndImplies;\\u6970ightarrow;\\u61db\\u0100ch\\u10b9\\u10bcr;\\u611b;\\u61b1leDelayed;\\u69f4\\u0680HOacfhimoqstu\\u10e4\\u10f1\\u10f7\\u10fd\\u1119\\u111e\\u1151\\u1156\\u1161\\u1167\\u11b5\\u11bb\\u11bf\\u0100Cc\\u10e9\\u10eeHcy;\\u4429y;\\u4428FTcy;\\u442ccute;\\u415a\\u0280;aeiy\\u1108\\u1109\\u110e\\u1113\\u1117\\u6abcron;\\u4160dil;\\u415erc;\\u415c;\\u4421r;\\uc000\\ud835\\udd16ort\\u0200DLRU\\u112a\\u1134\\u113e\\u1149ownArrow\\xbb\\u041eeftArrow\\xbb\\u089aightArrow\\xbb\\u0fddpArrow;\\u6191gma;\\u43a3allCircle;\\u6218pf;\\uc000\\ud835\\udd4a\\u0272\\u116d\\0\\0\\u1170t;\\u621aare\\u0200;ISU\\u117b\\u117c\\u1189\\u11af\\u65a1ntersection;\\u6293u\\u0100bp\\u118f\\u119eset\\u0100;E\\u1197\\u1198\\u628fqual;\\u6291erset\\u0100;E\\u11a8\\u11a9\\u6290qual;\\u6292nion;\\u6294cr;\\uc000\\ud835\\udcaear;\\u62c6\\u0200bcmp\\u11c8\\u11db\\u1209\\u120b\\u0100;s\\u11cd\\u11ce\\u62d0et\\u0100;E\\u11cd\\u11d5qual;\\u6286\\u0100ch\\u11e0\\u1205eeds\\u0200;EST\\u11ed\\u11ee\\u11f4\\u11ff\\u627bqual;\\u6ab0lantEqual;\\u627dilde;\\u627fTh\\xe1\\u0f8c;\\u6211\\u0180;es\\u1212\\u1213\\u1223\\u62d1rset\\u0100;E\\u121c\\u121d\\u6283qual;\\u6287et\\xbb\\u1213\\u0580HRSacfhiors\\u123e\\u1244\\u1249\\u1255\\u125e\\u1271\\u1276\\u129f\\u12c2\\u12c8\\u12d1ORN\\u803b\\xde\\u40deADE;\\u6122\\u0100Hc\\u124e\\u1252cy;\\u440by;\\u4426\\u0100bu\\u125a\\u125c;\\u4009;\\u43a4\\u0180aey\\u1265\\u126a\\u126fron;\\u4164dil;\\u4162;\\u4422r;\\uc000\\ud835\\udd17\\u0100ei\\u127b\\u1289\\u01f2\\u1280\\0\\u1287efore;\\u6234a;\\u4398\\u0100cn\\u128e\\u1298kSpace;\\uc000\\u205f\\u200aSpace;\\u6009lde\\u0200;EFT\\u12ab\\u12ac\\u12b2\\u12bc\\u623cqual;\\u6243ullEqual;\\u6245ilde;\\u6248pf;\\uc000\\ud835\\udd4bipleDot;\\u60db\\u0100ct\\u12d6\\u12dbr;\\uc000\\ud835\\udcafrok;\\u4166\\u0ae1\\u12f7\\u130e\\u131a\\u1326\\0\\u132c\\u1331\\0\\0\\0\\0\\0\\u1338\\u133d\\u1377\\u1385\\0\\u13ff\\u1404\\u140a\\u1410\\u0100cr\\u12fb\\u1301ute\\u803b\\xda\\u40dar\\u0100;o\\u1307\\u1308\\u619fcir;\\u6949r\\u01e3\\u1313\\0\\u1316y;\\u440eve;\\u416c\\u0100iy\\u131e\\u1323rc\\u803b\\xdb\\u40db;\\u4423blac;\\u4170r;\\uc000\\ud835\\udd18rave\\u803b\\xd9\\u40d9acr;\\u416a\\u0100di\\u1341\\u1369er\\u0100BP\\u1348\\u135d\\u0100ar\\u134d\\u1350r;\\u405fac\\u0100ek\\u1357\\u1359;\\u63dfet;\\u63b5arenthesis;\\u63ddon\\u0100;P\\u1370\\u1371\\u62c3lus;\\u628e\\u0100gp\\u137b\\u137fon;\\u4172f;\\uc000\\ud835\\udd4c\\u0400ADETadps\\u1395\\u13ae\\u13b8\\u13c4\\u03e8\\u13d2\\u13d7\\u13f3rrow\\u0180;BD\\u1150\\u13a0\\u13a4ar;\\u6912ownArrow;\\u61c5ownArrow;\\u6195quilibrium;\\u696eee\\u0100;A\\u13cb\\u13cc\\u62a5rrow;\\u61a5own\\xe1\\u03f3er\\u0100LR\\u13de\\u13e8eftArrow;\\u6196ightArrow;\\u6197i\\u0100;l\\u13f9\\u13fa\\u43d2on;\\u43a5ing;\\u416ecr;\\uc000\\ud835\\udcb0ilde;\\u4168ml\\u803b\\xdc\\u40dc\\u0480Dbcdefosv\\u1427\\u142c\\u1430\\u1433\\u143e\\u1485\\u148a\\u1490\\u1496ash;\\u62abar;\\u6aeby;\\u4412ash\\u0100;l\\u143b\\u143c\\u62a9;\\u6ae6\\u0100er\\u1443\\u1445;\\u62c1\\u0180bty\\u144c\\u1450\\u147aar;\\u6016\\u0100;i\\u144f\\u1455cal\\u0200BLST\\u1461\\u1465\\u146a\\u1474ar;\\u6223ine;\\u407ceparator;\\u6758ilde;\\u6240ThinSpace;\\u600ar;\\uc000\\ud835\\udd19pf;\\uc000\\ud835\\udd4dcr;\\uc000\\ud835\\udcb1dash;\\u62aa\\u0280cefos\\u14a7\\u14ac\\u14b1\\u14b6\\u14bcirc;\\u4174dge;\\u62c0r;\\uc000\\ud835\\udd1apf;\\uc000\\ud835\\udd4ecr;\\uc000\\ud835\\udcb2\\u0200fios\\u14cb\\u14d0\\u14d2\\u14d8r;\\uc000\\ud835\\udd1b;\\u439epf;\\uc000\\ud835\\udd4fcr;\\uc000\\ud835\\udcb3\\u0480AIUacfosu\\u14f1\\u14f5\\u14f9\\u14fd\\u1504\\u150f\\u1514\\u151a\\u1520cy;\\u442fcy;\\u4407cy;\\u442ecute\\u803b\\xdd\\u40dd\\u0100iy\\u1509\\u150drc;\\u4176;\\u442br;\\uc000\\ud835\\udd1cpf;\\uc000\\ud835\\udd50cr;\\uc000\\ud835\\udcb4ml;\\u4178\\u0400Hacdefos\\u1535\\u1539\\u153f\\u154b\\u154f\\u155d\\u1560\\u1564cy;\\u4416cute;\\u4179\\u0100ay\\u1544\\u1549ron;\\u417d;\\u4417ot;\\u417b\\u01f2\\u1554\\0\\u155boWidt\\xe8\\u0ad9a;\\u4396r;\\u6128pf;\\u6124cr;\\uc000\\ud835\\udcb5\\u0be1\\u1583\\u158a\\u1590\\0\\u15b0\\u15b6\\u15bf\\0\\0\\0\\0\\u15c6\\u15db\\u15eb\\u165f\\u166d\\0\\u1695\\u169b\\u16b2\\u16b9\\0\\u16becute\\u803b\\xe1\\u40e1reve;\\u4103\\u0300;Ediuy\\u159c\\u159d\\u15a1\\u15a3\\u15a8\\u15ad\\u623e;\\uc000\\u223e\\u0333;\\u623frc\\u803b\\xe2\\u40e2te\\u80bb\\xb4\\u0306;\\u4430lig\\u803b\\xe6\\u40e6\\u0100;r\\xb2\\u15ba;\\uc000\\ud835\\udd1erave\\u803b\\xe0\\u40e0\\u0100ep\\u15ca\\u15d6\\u0100fp\\u15cf\\u15d4sym;\\u6135\\xe8\\u15d3ha;\\u43b1\\u0100ap\\u15dfc\\u0100cl\\u15e4\\u15e7r;\\u4101g;\\u6a3f\\u0264\\u15f0\\0\\0\\u160a\\u0280;adsv\\u15fa\\u15fb\\u15ff\\u1601\\u1607\\u6227nd;\\u6a55;\\u6a5clope;\\u6a58;\\u6a5a\\u0380;elmrsz\\u1618\\u1619\\u161b\\u161e\\u163f\\u164f\\u1659\\u6220;\\u69a4e\\xbb\\u1619sd\\u0100;a\\u1625\\u1626\\u6221\\u0461\\u1630\\u1632\\u1634\\u1636\\u1638\\u163a\\u163c\\u163e;\\u69a8;\\u69a9;\\u69aa;\\u69ab;\\u69ac;\\u69ad;\\u69ae;\\u69aft\\u0100;v\\u1645\\u1646\\u621fb\\u0100;d\\u164c\\u164d\\u62be;\\u699d\\u0100pt\\u1654\\u1657h;\\u6222\\xbb\\xb9arr;\\u637c\\u0100gp\\u1663\\u1667on;\\u4105f;\\uc000\\ud835\\udd52\\u0380;Eaeiop\\u12c1\\u167b\\u167d\\u1682\\u1684\\u1687\\u168a;\\u6a70cir;\\u6a6f;\\u624ad;\\u624bs;\\u4027rox\\u0100;e\\u12c1\\u1692\\xf1\\u1683ing\\u803b\\xe5\\u40e5\\u0180cty\\u16a1\\u16a6\\u16a8r;\\uc000\\ud835\\udcb6;\\u402amp\\u0100;e\\u12c1\\u16af\\xf1\\u0288ilde\\u803b\\xe3\\u40e3ml\\u803b\\xe4\\u40e4\\u0100ci\\u16c2\\u16c8onin\\xf4\\u0272nt;\\u6a11\\u0800Nabcdefiklnoprsu\\u16ed\\u16f1\\u1730\\u173c\\u1743\\u1748\\u1778\\u177d\\u17e0\\u17e6\\u1839\\u1850\\u170d\\u193d\\u1948\\u1970ot;\\u6aed\\u0100cr\\u16f6\\u171ek\\u0200ceps\\u1700\\u1705\\u170d\\u1713ong;\\u624cpsilon;\\u43f6rime;\\u6035im\\u0100;e\\u171a\\u171b\\u623dq;\\u62cd\\u0176\\u1722\\u1726ee;\\u62bded\\u0100;g\\u172c\\u172d\\u6305e\\xbb\\u172drk\\u0100;t\\u135c\\u1737brk;\\u63b6\\u0100oy\\u1701\\u1741;\\u4431quo;\\u601e\\u0280cmprt\\u1753\\u175b\\u1761\\u1764\\u1768aus\\u0100;e\\u010a\\u0109ptyv;\\u69b0s\\xe9\\u170cno\\xf5\\u0113\\u0180ahw\\u176f\\u1771\\u1773;\\u43b2;\\u6136een;\\u626cr;\\uc000\\ud835\\udd1fg\\u0380costuvw\\u178d\\u179d\\u17b3\\u17c1\\u17d5\\u17db\\u17de\\u0180aiu\\u1794\\u1796\\u179a\\xf0\\u0760rc;\\u65efp\\xbb\\u1371\\u0180dpt\\u17a4\\u17a8\\u17adot;\\u6a00lus;\\u6a01imes;\\u6a02\\u0271\\u17b9\\0\\0\\u17becup;\\u6a06ar;\\u6605riangle\\u0100du\\u17cd\\u17d2own;\\u65bdp;\\u65b3plus;\\u6a04e\\xe5\\u1444\\xe5\\u14adarow;\\u690d\\u0180ako\\u17ed\\u1826\\u1835\\u0100cn\\u17f2\\u1823k\\u0180lst\\u17fa\\u05ab\\u1802ozenge;\\u69ebriangle\\u0200;dlr\\u1812\\u1813\\u1818\\u181d\\u65b4own;\\u65beeft;\\u65c2ight;\\u65b8k;\\u6423\\u01b1\\u182b\\0\\u1833\\u01b2\\u182f\\0\\u1831;\\u6592;\\u65914;\\u6593ck;\\u6588\\u0100eo\\u183e\\u184d\\u0100;q\\u1843\\u1846\\uc000=\\u20e5uiv;\\uc000\\u2261\\u20e5t;\\u6310\\u0200ptwx\\u1859\\u185e\\u1867\\u186cf;\\uc000\\ud835\\udd53\\u0100;t\\u13cb\\u1863om\\xbb\\u13cctie;\\u62c8\\u0600DHUVbdhmptuv\\u1885\\u1896\\u18aa\\u18bb\\u18d7\\u18db\\u18ec\\u18ff\\u1905\\u190a\\u1910\\u1921\\u0200LRlr\\u188e\\u1890\\u1892\\u1894;\\u6557;\\u6554;\\u6556;\\u6553\\u0280;DUdu\\u18a1\\u18a2\\u18a4\\u18a6\\u18a8\\u6550;\\u6566;\\u6569;\\u6564;\\u6567\\u0200LRlr\\u18b3\\u18b5\\u18b7\\u18b9;\\u655d;\\u655a;\\u655c;\\u6559\\u0380;HLRhlr\\u18ca\\u18cb\\u18cd\\u18cf\\u18d1\\u18d3\\u18d5\\u6551;\\u656c;\\u6563;\\u6560;\\u656b;\\u6562;\\u655fox;\\u69c9\\u0200LRlr\\u18e4\\u18e6\\u18e8\\u18ea;\\u6555;\\u6552;\\u6510;\\u650c\\u0280;DUdu\\u06bd\\u18f7\\u18f9\\u18fb\\u18fd;\\u6565;\\u6568;\\u652c;\\u6534inus;\\u629flus;\\u629eimes;\\u62a0\\u0200LRlr\\u1919\\u191b\\u191d\\u191f;\\u655b;\\u6558;\\u6518;\\u6514\\u0380;HLRhlr\\u1930\\u1931\\u1933\\u1935\\u1937\\u1939\\u193b\\u6502;\\u656a;\\u6561;\\u655e;\\u653c;\\u6524;\\u651c\\u0100ev\\u0123\\u1942bar\\u803b\\xa6\\u40a6\\u0200ceio\\u1951\\u1956\\u195a\\u1960r;\\uc000\\ud835\\udcb7mi;\\u604fm\\u0100;e\\u171a\\u171cl\\u0180;bh\\u1968\\u1969\\u196b\\u405c;\\u69c5sub;\\u67c8\\u016c\\u1974\\u197el\\u0100;e\\u1979\\u197a\\u6022t\\xbb\\u197ap\\u0180;Ee\\u012f\\u1985\\u1987;\\u6aae\\u0100;q\\u06dc\\u06db\\u0ce1\\u19a7\\0\\u19e8\\u1a11\\u1a15\\u1a32\\0\\u1a37\\u1a50\\0\\0\\u1ab4\\0\\0\\u1ac1\\0\\0\\u1b21\\u1b2e\\u1b4d\\u1b52\\0\\u1bfd\\0\\u1c0c\\u0180cpr\\u19ad\\u19b2\\u19ddute;\\u4107\\u0300;abcds\\u19bf\\u19c0\\u19c4\\u19ca\\u19d5\\u19d9\\u6229nd;\\u6a44rcup;\\u6a49\\u0100au\\u19cf\\u19d2p;\\u6a4bp;\\u6a47ot;\\u6a40;\\uc000\\u2229\\ufe00\\u0100eo\\u19e2\\u19e5t;\\u6041\\xee\\u0693\\u0200aeiu\\u19f0\\u19fb\\u1a01\\u1a05\\u01f0\\u19f5\\0\\u19f8s;\\u6a4don;\\u410ddil\\u803b\\xe7\\u40e7rc;\\u4109ps\\u0100;s\\u1a0c\\u1a0d\\u6a4cm;\\u6a50ot;\\u410b\\u0180dmn\\u1a1b\\u1a20\\u1a26il\\u80bb\\xb8\\u01adptyv;\\u69b2t\\u8100\\xa2;e\\u1a2d\\u1a2e\\u40a2r\\xe4\\u01b2r;\\uc000\\ud835\\udd20\\u0180cei\\u1a3d\\u1a40\\u1a4dy;\\u4447ck\\u0100;m\\u1a47\\u1a48\\u6713ark\\xbb\\u1a48;\\u43c7r\\u0380;Ecefms\\u1a5f\\u1a60\\u1a62\\u1a6b\\u1aa4\\u1aaa\\u1aae\\u65cb;\\u69c3\\u0180;el\\u1a69\\u1a6a\\u1a6d\\u42c6q;\\u6257e\\u0261\\u1a74\\0\\0\\u1a88rrow\\u0100lr\\u1a7c\\u1a81eft;\\u61baight;\\u61bb\\u0280RSacd\\u1a92\\u1a94\\u1a96\\u1a9a\\u1a9f\\xbb\\u0f47;\\u64c8st;\\u629birc;\\u629aash;\\u629dnint;\\u6a10id;\\u6aefcir;\\u69c2ubs\\u0100;u\\u1abb\\u1abc\\u6663it\\xbb\\u1abc\\u02ec\\u1ac7\\u1ad4\\u1afa\\0\\u1b0aon\\u0100;e\\u1acd\\u1ace\\u403a\\u0100;q\\xc7\\xc6\\u026d\\u1ad9\\0\\0\\u1ae2a\\u0100;t\\u1ade\\u1adf\\u402c;\\u4040\\u0180;fl\\u1ae8\\u1ae9\\u1aeb\\u6201\\xee\\u1160e\\u0100mx\\u1af1\\u1af6ent\\xbb\\u1ae9e\\xf3\\u024d\\u01e7\\u1afe\\0\\u1b07\\u0100;d\\u12bb\\u1b02ot;\\u6a6dn\\xf4\\u0246\\u0180fry\\u1b10\\u1b14\\u1b17;\\uc000\\ud835\\udd54o\\xe4\\u0254\\u8100\\xa9;s\\u0155\\u1b1dr;\\u6117\\u0100ao\\u1b25\\u1b29rr;\\u61b5ss;\\u6717\\u0100cu\\u1b32\\u1b37r;\\uc000\\ud835\\udcb8\\u0100bp\\u1b3c\\u1b44\\u0100;e\\u1b41\\u1b42\\u6acf;\\u6ad1\\u0100;e\\u1b49\\u1b4a\\u6ad0;\\u6ad2dot;\\u62ef\\u0380delprvw\\u1b60\\u1b6c\\u1b77\\u1b82\\u1bac\\u1bd4\\u1bf9arr\\u0100lr\\u1b68\\u1b6a;\\u6938;\\u6935\\u0270\\u1b72\\0\\0\\u1b75r;\\u62dec;\\u62dfarr\\u0100;p\\u1b7f\\u1b80\\u61b6;\\u693d\\u0300;bcdos\\u1b8f\\u1b90\\u1b96\\u1ba1\\u1ba5\\u1ba8\\u622arcap;\\u6a48\\u0100au\\u1b9b\\u1b9ep;\\u6a46p;\\u6a4aot;\\u628dr;\\u6a45;\\uc000\\u222a\\ufe00\\u0200alrv\\u1bb5\\u1bbf\\u1bde\\u1be3rr\\u0100;m\\u1bbc\\u1bbd\\u61b7;\\u693cy\\u0180evw\\u1bc7\\u1bd4\\u1bd8q\\u0270\\u1bce\\0\\0\\u1bd2re\\xe3\\u1b73u\\xe3\\u1b75ee;\\u62ceedge;\\u62cfen\\u803b\\xa4\\u40a4earrow\\u0100lr\\u1bee\\u1bf3eft\\xbb\\u1b80ight\\xbb\\u1bbde\\xe4\\u1bdd\\u0100ci\\u1c01\\u1c07onin\\xf4\\u01f7nt;\\u6231lcty;\\u632d\\u0980AHabcdefhijlorstuwz\\u1c38\\u1c3b\\u1c3f\\u1c5d\\u1c69\\u1c75\\u1c8a\\u1c9e\\u1cac\\u1cb7\\u1cfb\\u1cff\\u1d0d\\u1d7b\\u1d91\\u1dab\\u1dbb\\u1dc6\\u1dcdr\\xf2\\u0381ar;\\u6965\\u0200glrs\\u1c48\\u1c4d\\u1c52\\u1c54ger;\\u6020eth;\\u6138\\xf2\\u1133h\\u0100;v\\u1c5a\\u1c5b\\u6010\\xbb\\u090a\\u016b\\u1c61\\u1c67arow;\\u690fa\\xe3\\u0315\\u0100ay\\u1c6e\\u1c73ron;\\u410f;\\u4434\\u0180;ao\\u0332\\u1c7c\\u1c84\\u0100gr\\u02bf\\u1c81r;\\u61catseq;\\u6a77\\u0180glm\\u1c91\\u1c94\\u1c98\\u803b\\xb0\\u40b0ta;\\u43b4ptyv;\\u69b1\\u0100ir\\u1ca3\\u1ca8sht;\\u697f;\\uc000\\ud835\\udd21ar\\u0100lr\\u1cb3\\u1cb5\\xbb\\u08dc\\xbb\\u101e\\u0280aegsv\\u1cc2\\u0378\\u1cd6\\u1cdc\\u1ce0m\\u0180;os\\u0326\\u1cca\\u1cd4nd\\u0100;s\\u0326\\u1cd1uit;\\u6666amma;\\u43ddin;\\u62f2\\u0180;io\\u1ce7\\u1ce8\\u1cf8\\u40f7de\\u8100\\xf7;o\\u1ce7\\u1cf0ntimes;\\u62c7n\\xf8\\u1cf7cy;\\u4452c\\u026f\\u1d06\\0\\0\\u1d0arn;\\u631eop;\\u630d\\u0280lptuw\\u1d18\\u1d1d\\u1d22\\u1d49\\u1d55lar;\\u4024f;\\uc000\\ud835\\udd55\\u0280;emps\\u030b\\u1d2d\\u1d37\\u1d3d\\u1d42q\\u0100;d\\u0352\\u1d33ot;\\u6251inus;\\u6238lus;\\u6214quare;\\u62a1blebarwedg\\xe5\\xfan\\u0180adh\\u112e\\u1d5d\\u1d67ownarrow\\xf3\\u1c83arpoon\\u0100lr\\u1d72\\u1d76ef\\xf4\\u1cb4igh\\xf4\\u1cb6\\u0162\\u1d7f\\u1d85karo\\xf7\\u0f42\\u026f\\u1d8a\\0\\0\\u1d8ern;\\u631fop;\\u630c\\u0180cot\\u1d98\\u1da3\\u1da6\\u0100ry\\u1d9d\\u1da1;\\uc000\\ud835\\udcb9;\\u4455l;\\u69f6rok;\\u4111\\u0100dr\\u1db0\\u1db4ot;\\u62f1i\\u0100;f\\u1dba\\u1816\\u65bf\\u0100ah\\u1dc0\\u1dc3r\\xf2\\u0429a\\xf2\\u0fa6angle;\\u69a6\\u0100ci\\u1dd2\\u1dd5y;\\u445fgrarr;\\u67ff\\u0900Dacdefglmnopqrstux\\u1e01\\u1e09\\u1e19\\u1e38\\u0578\\u1e3c\\u1e49\\u1e61\\u1e7e\\u1ea5\\u1eaf\\u1ebd\\u1ee1\\u1f2a\\u1f37\\u1f44\\u1f4e\\u1f5a\\u0100Do\\u1e06\\u1d34o\\xf4\\u1c89\\u0100cs\\u1e0e\\u1e14ute\\u803b\\xe9\\u40e9ter;\\u6a6e\\u0200aioy\\u1e22\\u1e27\\u1e31\\u1e36ron;\\u411br\\u0100;c\\u1e2d\\u1e2e\\u6256\\u803b\\xea\\u40ealon;\\u6255;\\u444dot;\\u4117\\u0100Dr\\u1e41\\u1e45ot;\\u6252;\\uc000\\ud835\\udd22\\u0180;rs\\u1e50\\u1e51\\u1e57\\u6a9aave\\u803b\\xe8\\u40e8\\u0100;d\\u1e5c\\u1e5d\\u6a96ot;\\u6a98\\u0200;ils\\u1e6a\\u1e6b\\u1e72\\u1e74\\u6a99nters;\\u63e7;\\u6113\\u0100;d\\u1e79\\u1e7a\\u6a95ot;\\u6a97\\u0180aps\\u1e85\\u1e89\\u1e97cr;\\u4113ty\\u0180;sv\\u1e92\\u1e93\\u1e95\\u6205et\\xbb\\u1e93p\\u01001;\\u1e9d\\u1ea4\\u0133\\u1ea1\\u1ea3;\\u6004;\\u6005\\u6003\\u0100gs\\u1eaa\\u1eac;\\u414bp;\\u6002\\u0100gp\\u1eb4\\u1eb8on;\\u4119f;\\uc000\\ud835\\udd56\\u0180als\\u1ec4\\u1ece\\u1ed2r\\u0100;s\\u1eca\\u1ecb\\u62d5l;\\u69e3us;\\u6a71i\\u0180;lv\\u1eda\\u1edb\\u1edf\\u43b5on\\xbb\\u1edb;\\u43f5\\u0200csuv\\u1eea\\u1ef3\\u1f0b\\u1f23\\u0100io\\u1eef\\u1e31rc\\xbb\\u1e2e\\u0269\\u1ef9\\0\\0\\u1efb\\xed\\u0548ant\\u0100gl\\u1f02\\u1f06tr\\xbb\\u1e5dess\\xbb\\u1e7a\\u0180aei\\u1f12\\u1f16\\u1f1als;\\u403dst;\\u625fv\\u0100;D\\u0235\\u1f20D;\\u6a78parsl;\\u69e5\\u0100Da\\u1f2f\\u1f33ot;\\u6253rr;\\u6971\\u0180cdi\\u1f3e\\u1f41\\u1ef8r;\\u612fo\\xf4\\u0352\\u0100ah\\u1f49\\u1f4b;\\u43b7\\u803b\\xf0\\u40f0\\u0100mr\\u1f53\\u1f57l\\u803b\\xeb\\u40ebo;\\u60ac\\u0180cip\\u1f61\\u1f64\\u1f67l;\\u4021s\\xf4\\u056e\\u0100eo\\u1f6c\\u1f74ctatio\\xee\\u0559nential\\xe5\\u0579\\u09e1\\u1f92\\0\\u1f9e\\0\\u1fa1\\u1fa7\\0\\0\\u1fc6\\u1fcc\\0\\u1fd3\\0\\u1fe6\\u1fea\\u2000\\0\\u2008\\u205allingdotse\\xf1\\u1e44y;\\u4444male;\\u6640\\u0180ilr\\u1fad\\u1fb3\\u1fc1lig;\\u8000\\ufb03\\u0269\\u1fb9\\0\\0\\u1fbdg;\\u8000\\ufb00ig;\\u8000\\ufb04;\\uc000\\ud835\\udd23lig;\\u8000\\ufb01lig;\\uc000fj\\u0180alt\\u1fd9\\u1fdc\\u1fe1t;\\u666dig;\\u8000\\ufb02ns;\\u65b1of;\\u4192\\u01f0\\u1fee\\0\\u1ff3f;\\uc000\\ud835\\udd57\\u0100ak\\u05bf\\u1ff7\\u0100;v\\u1ffc\\u1ffd\\u62d4;\\u6ad9artint;\\u6a0d\\u0100ao\\u200c\\u2055\\u0100cs\\u2011\\u2052\\u03b1\\u201a\\u2030\\u2038\\u2045\\u2048\\0\\u2050\\u03b2\\u2022\\u2025\\u2027\\u202a\\u202c\\0\\u202e\\u803b\\xbd\\u40bd;\\u6153\\u803b\\xbc\\u40bc;\\u6155;\\u6159;\\u615b\\u01b3\\u2034\\0\\u2036;\\u6154;\\u6156\\u02b4\\u203e\\u2041\\0\\0\\u2043\\u803b\\xbe\\u40be;\\u6157;\\u615c5;\\u6158\\u01b6\\u204c\\0\\u204e;\\u615a;\\u615d8;\\u615el;\\u6044wn;\\u6322cr;\\uc000\\ud835\\udcbb\\u0880Eabcdefgijlnorstv\\u2082\\u2089\\u209f\\u20a5\\u20b0\\u20b4\\u20f0\\u20f5\\u20fa\\u20ff\\u2103\\u2112\\u2138\\u0317\\u213e\\u2152\\u219e\\u0100;l\\u064d\\u2087;\\u6a8c\\u0180cmp\\u2090\\u2095\\u209dute;\\u41f5ma\\u0100;d\\u209c\\u1cda\\u43b3;\\u6a86reve;\\u411f\\u0100iy\\u20aa\\u20aerc;\\u411d;\\u4433ot;\\u4121\\u0200;lqs\\u063e\\u0642\\u20bd\\u20c9\\u0180;qs\\u063e\\u064c\\u20c4lan\\xf4\\u0665\\u0200;cdl\\u0665\\u20d2\\u20d5\\u20e5c;\\u6aa9ot\\u0100;o\\u20dc\\u20dd\\u6a80\\u0100;l\\u20e2\\u20e3\\u6a82;\\u6a84\\u0100;e\\u20ea\\u20ed\\uc000\\u22db\\ufe00s;\\u6a94r;\\uc000\\ud835\\udd24\\u0100;g\\u0673\\u061bmel;\\u6137cy;\\u4453\\u0200;Eaj\\u065a\\u210c\\u210e\\u2110;\\u6a92;\\u6aa5;\\u6aa4\\u0200Eaes\\u211b\\u211d\\u2129\\u2134;\\u6269p\\u0100;p\\u2123\\u2124\\u6a8arox\\xbb\\u2124\\u0100;q\\u212e\\u212f\\u6a88\\u0100;q\\u212e\\u211bim;\\u62e7pf;\\uc000\\ud835\\udd58\\u0100ci\\u2143\\u2146r;\\u610am\\u0180;el\\u066b\\u214e\\u2150;\\u6a8e;\\u6a90\\u8300>;cdlqr\\u05ee\\u2160\\u216a\\u216e\\u2173\\u2179\\u0100ci\\u2165\\u2167;\\u6aa7r;\\u6a7aot;\\u62d7Par;\\u6995uest;\\u6a7c\\u0280adels\\u2184\\u216a\\u2190\\u0656\\u219b\\u01f0\\u2189\\0\\u218epro\\xf8\\u209er;\\u6978q\\u0100lq\\u063f\\u2196les\\xf3\\u2088i\\xed\\u066b\\u0100en\\u21a3\\u21adrtneqq;\\uc000\\u2269\\ufe00\\xc5\\u21aa\\u0500Aabcefkosy\\u21c4\\u21c7\\u21f1\\u21f5\\u21fa\\u2218\\u221d\\u222f\\u2268\\u227dr\\xf2\\u03a0\\u0200ilmr\\u21d0\\u21d4\\u21d7\\u21dbrs\\xf0\\u1484f\\xbb\\u2024il\\xf4\\u06a9\\u0100dr\\u21e0\\u21e4cy;\\u444a\\u0180;cw\\u08f4\\u21eb\\u21efir;\\u6948;\\u61adar;\\u610firc;\\u4125\\u0180alr\\u2201\\u220e\\u2213rts\\u0100;u\\u2209\\u220a\\u6665it\\xbb\\u220alip;\\u6026con;\\u62b9r;\\uc000\\ud835\\udd25s\\u0100ew\\u2223\\u2229arow;\\u6925arow;\\u6926\\u0280amopr\\u223a\\u223e\\u2243\\u225e\\u2263rr;\\u61fftht;\\u623bk\\u0100lr\\u2249\\u2253eftarrow;\\u61a9ightarrow;\\u61aaf;\\uc000\\ud835\\udd59bar;\\u6015\\u0180clt\\u226f\\u2274\\u2278r;\\uc000\\ud835\\udcbdas\\xe8\\u21f4rok;\\u4127\\u0100bp\\u2282\\u2287ull;\\u6043hen\\xbb\\u1c5b\\u0ae1\\u22a3\\0\\u22aa\\0\\u22b8\\u22c5\\u22ce\\0\\u22d5\\u22f3\\0\\0\\u22f8\\u2322\\u2367\\u2362\\u237f\\0\\u2386\\u23aa\\u23b4cute\\u803b\\xed\\u40ed\\u0180;iy\\u0771\\u22b0\\u22b5rc\\u803b\\xee\\u40ee;\\u4438\\u0100cx\\u22bc\\u22bfy;\\u4435cl\\u803b\\xa1\\u40a1\\u0100fr\\u039f\\u22c9;\\uc000\\ud835\\udd26rave\\u803b\\xec\\u40ec\\u0200;ino\\u073e\\u22dd\\u22e9\\u22ee\\u0100in\\u22e2\\u22e6nt;\\u6a0ct;\\u622dfin;\\u69dcta;\\u6129lig;\\u4133\\u0180aop\\u22fe\\u231a\\u231d\\u0180cgt\\u2305\\u2308\\u2317r;\\u412b\\u0180elp\\u071f\\u230f\\u2313in\\xe5\\u078ear\\xf4\\u0720h;\\u4131f;\\u62b7ed;\\u41b5\\u0280;cfot\\u04f4\\u232c\\u2331\\u233d\\u2341are;\\u6105in\\u0100;t\\u2338\\u2339\\u621eie;\\u69dddo\\xf4\\u2319\\u0280;celp\\u0757\\u234c\\u2350\\u235b\\u2361al;\\u62ba\\u0100gr\\u2355\\u2359er\\xf3\\u1563\\xe3\\u234darhk;\\u6a17rod;\\u6a3c\\u0200cgpt\\u236f\\u2372\\u2376\\u237by;\\u4451on;\\u412ff;\\uc000\\ud835\\udd5aa;\\u43b9uest\\u803b\\xbf\\u40bf\\u0100ci\\u238a\\u238fr;\\uc000\\ud835\\udcben\\u0280;Edsv\\u04f4\\u239b\\u239d\\u23a1\\u04f3;\\u62f9ot;\\u62f5\\u0100;v\\u23a6\\u23a7\\u62f4;\\u62f3\\u0100;i\\u0777\\u23aelde;\\u4129\\u01eb\\u23b8\\0\\u23bccy;\\u4456l\\u803b\\xef\\u40ef\\u0300cfmosu\\u23cc\\u23d7\\u23dc\\u23e1\\u23e7\\u23f5\\u0100iy\\u23d1\\u23d5rc;\\u4135;\\u4439r;\\uc000\\ud835\\udd27ath;\\u4237pf;\\uc000\\ud835\\udd5b\\u01e3\\u23ec\\0\\u23f1r;\\uc000\\ud835\\udcbfrcy;\\u4458kcy;\\u4454\\u0400acfghjos\\u240b\\u2416\\u2422\\u2427\\u242d\\u2431\\u2435\\u243bppa\\u0100;v\\u2413\\u2414\\u43ba;\\u43f0\\u0100ey\\u241b\\u2420dil;\\u4137;\\u443ar;\\uc000\\ud835\\udd28reen;\\u4138cy;\\u4445cy;\\u445cpf;\\uc000\\ud835\\udd5ccr;\\uc000\\ud835\\udcc0\\u0b80ABEHabcdefghjlmnoprstuv\\u2470\\u2481\\u2486\\u248d\\u2491\\u250e\\u253d\\u255a\\u2580\\u264e\\u265e\\u2665\\u2679\\u267d\\u269a\\u26b2\\u26d8\\u275d\\u2768\\u278b\\u27c0\\u2801\\u2812\\u0180art\\u2477\\u247a\\u247cr\\xf2\\u09c6\\xf2\\u0395ail;\\u691barr;\\u690e\\u0100;g\\u0994\\u248b;\\u6a8bar;\\u6962\\u0963\\u24a5\\0\\u24aa\\0\\u24b1\\0\\0\\0\\0\\0\\u24b5\\u24ba\\0\\u24c6\\u24c8\\u24cd\\0\\u24f9ute;\\u413amptyv;\\u69b4ra\\xee\\u084cbda;\\u43bbg\\u0180;dl\\u088e\\u24c1\\u24c3;\\u6991\\xe5\\u088e;\\u6a85uo\\u803b\\xab\\u40abr\\u0400;bfhlpst\\u0899\\u24de\\u24e6\\u24e9\\u24eb\\u24ee\\u24f1\\u24f5\\u0100;f\\u089d\\u24e3s;\\u691fs;\\u691d\\xeb\\u2252p;\\u61abl;\\u6939im;\\u6973l;\\u61a2\\u0180;ae\\u24ff\\u2500\\u2504\\u6aabil;\\u6919\\u0100;s\\u2509\\u250a\\u6aad;\\uc000\\u2aad\\ufe00\\u0180abr\\u2515\\u2519\\u251drr;\\u690crk;\\u6772\\u0100ak\\u2522\\u252cc\\u0100ek\\u2528\\u252a;\\u407b;\\u405b\\u0100es\\u2531\\u2533;\\u698bl\\u0100du\\u2539\\u253b;\\u698f;\\u698d\\u0200aeuy\\u2546\\u254b\\u2556\\u2558ron;\\u413e\\u0100di\\u2550\\u2554il;\\u413c\\xec\\u08b0\\xe2\\u2529;\\u443b\\u0200cqrs\\u2563\\u2566\\u256d\\u257da;\\u6936uo\\u0100;r\\u0e19\\u1746\\u0100du\\u2572\\u2577har;\\u6967shar;\\u694bh;\\u61b2\\u0280;fgqs\\u258b\\u258c\\u0989\\u25f3\\u25ff\\u6264t\\u0280ahlrt\\u2598\\u25a4\\u25b7\\u25c2\\u25e8rrow\\u0100;t\\u0899\\u25a1a\\xe9\\u24f6arpoon\\u0100du\\u25af\\u25b4own\\xbb\\u045ap\\xbb\\u0966eftarrows;\\u61c7ight\\u0180ahs\\u25cd\\u25d6\\u25derrow\\u0100;s\\u08f4\\u08a7arpoon\\xf3\\u0f98quigarro\\xf7\\u21f0hreetimes;\\u62cb\\u0180;qs\\u258b\\u0993\\u25falan\\xf4\\u09ac\\u0280;cdgs\\u09ac\\u260a\\u260d\\u261d\\u2628c;\\u6aa8ot\\u0100;o\\u2614\\u2615\\u6a7f\\u0100;r\\u261a\\u261b\\u6a81;\\u6a83\\u0100;e\\u2622\\u2625\\uc000\\u22da\\ufe00s;\\u6a93\\u0280adegs\\u2633\\u2639\\u263d\\u2649\\u264bppro\\xf8\\u24c6ot;\\u62d6q\\u0100gq\\u2643\\u2645\\xf4\\u0989gt\\xf2\\u248c\\xf4\\u099bi\\xed\\u09b2\\u0180ilr\\u2655\\u08e1\\u265asht;\\u697c;\\uc000\\ud835\\udd29\\u0100;E\\u099c\\u2663;\\u6a91\\u0161\\u2669\\u2676r\\u0100du\\u25b2\\u266e\\u0100;l\\u0965\\u2673;\\u696alk;\\u6584cy;\\u4459\\u0280;acht\\u0a48\\u2688\\u268b\\u2691\\u2696r\\xf2\\u25c1orne\\xf2\\u1d08ard;\\u696bri;\\u65fa\\u0100io\\u269f\\u26a4dot;\\u4140ust\\u0100;a\\u26ac\\u26ad\\u63b0che\\xbb\\u26ad\\u0200Eaes\\u26bb\\u26bd\\u26c9\\u26d4;\\u6268p\\u0100;p\\u26c3\\u26c4\\u6a89rox\\xbb\\u26c4\\u0100;q\\u26ce\\u26cf\\u6a87\\u0100;q\\u26ce\\u26bbim;\\u62e6\\u0400abnoptwz\\u26e9\\u26f4\\u26f7\\u271a\\u272f\\u2741\\u2747\\u2750\\u0100nr\\u26ee\\u26f1g;\\u67ecr;\\u61fdr\\xeb\\u08c1g\\u0180lmr\\u26ff\\u270d\\u2714eft\\u0100ar\\u09e6\\u2707ight\\xe1\\u09f2apsto;\\u67fcight\\xe1\\u09fdparrow\\u0100lr\\u2725\\u2729ef\\xf4\\u24edight;\\u61ac\\u0180afl\\u2736\\u2739\\u273dr;\\u6985;\\uc000\\ud835\\udd5dus;\\u6a2dimes;\\u6a34\\u0161\\u274b\\u274fst;\\u6217\\xe1\\u134e\\u0180;ef\\u2757\\u2758\\u1800\\u65cange\\xbb\\u2758ar\\u0100;l\\u2764\\u2765\\u4028t;\\u6993\\u0280achmt\\u2773\\u2776\\u277c\\u2785\\u2787r\\xf2\\u08a8orne\\xf2\\u1d8car\\u0100;d\\u0f98\\u2783;\\u696d;\\u600eri;\\u62bf\\u0300achiqt\\u2798\\u279d\\u0a40\\u27a2\\u27ae\\u27bbquo;\\u6039r;\\uc000\\ud835\\udcc1m\\u0180;eg\\u09b2\\u27aa\\u27ac;\\u6a8d;\\u6a8f\\u0100bu\\u252a\\u27b3o\\u0100;r\\u0e1f\\u27b9;\\u601arok;\\u4142\\u8400<;cdhilqr\\u082b\\u27d2\\u2639\\u27dc\\u27e0\\u27e5\\u27ea\\u27f0\\u0100ci\\u27d7\\u27d9;\\u6aa6r;\\u6a79re\\xe5\\u25f2mes;\\u62c9arr;\\u6976uest;\\u6a7b\\u0100Pi\\u27f5\\u27f9ar;\\u6996\\u0180;ef\\u2800\\u092d\\u181b\\u65c3r\\u0100du\\u2807\\u280dshar;\\u694ahar;\\u6966\\u0100en\\u2817\\u2821rtneqq;\\uc000\\u2268\\ufe00\\xc5\\u281e\\u0700Dacdefhilnopsu\\u2840\\u2845\\u2882\\u288e\\u2893\\u28a0\\u28a5\\u28a8\\u28da\\u28e2\\u28e4\\u0a83\\u28f3\\u2902Dot;\\u623a\\u0200clpr\\u284e\\u2852\\u2863\\u287dr\\u803b\\xaf\\u40af\\u0100et\\u2857\\u2859;\\u6642\\u0100;e\\u285e\\u285f\\u6720se\\xbb\\u285f\\u0100;s\\u103b\\u2868to\\u0200;dlu\\u103b\\u2873\\u2877\\u287bow\\xee\\u048cef\\xf4\\u090f\\xf0\\u13d1ker;\\u65ae\\u0100oy\\u2887\\u288cmma;\\u6a29;\\u443cash;\\u6014asuredangle\\xbb\\u1626r;\\uc000\\ud835\\udd2ao;\\u6127\\u0180cdn\\u28af\\u28b4\\u28c9ro\\u803b\\xb5\\u40b5\\u0200;acd\\u1464\\u28bd\\u28c0\\u28c4s\\xf4\\u16a7ir;\\u6af0ot\\u80bb\\xb7\\u01b5us\\u0180;bd\\u28d2\\u1903\\u28d3\\u6212\\u0100;u\\u1d3c\\u28d8;\\u6a2a\\u0163\\u28de\\u28e1p;\\u6adb\\xf2\\u2212\\xf0\\u0a81\\u0100dp\\u28e9\\u28eeels;\\u62a7f;\\uc000\\ud835\\udd5e\\u0100ct\\u28f8\\u28fdr;\\uc000\\ud835\\udcc2pos\\xbb\\u159d\\u0180;lm\\u2909\\u290a\\u290d\\u43bctimap;\\u62b8\\u0c00GLRVabcdefghijlmoprstuvw\\u2942\\u2953\\u297e\\u2989\\u2998\\u29da\\u29e9\\u2a15\\u2a1a\\u2a58\\u2a5d\\u2a83\\u2a95\\u2aa4\\u2aa8\\u2b04\\u2b07\\u2b44\\u2b7f\\u2bae\\u2c34\\u2c67\\u2c7c\\u2ce9\\u0100gt\\u2947\\u294b;\\uc000\\u22d9\\u0338\\u0100;v\\u2950\\u0bcf\\uc000\\u226b\\u20d2\\u0180elt\\u295a\\u2972\\u2976ft\\u0100ar\\u2961\\u2967rrow;\\u61cdightarrow;\\u61ce;\\uc000\\u22d8\\u0338\\u0100;v\\u297b\\u0c47\\uc000\\u226a\\u20d2ightarrow;\\u61cf\\u0100Dd\\u298e\\u2993ash;\\u62afash;\\u62ae\\u0280bcnpt\\u29a3\\u29a7\\u29ac\\u29b1\\u29ccla\\xbb\\u02deute;\\u4144g;\\uc000\\u2220\\u20d2\\u0280;Eiop\\u0d84\\u29bc\\u29c0\\u29c5\\u29c8;\\uc000\\u2a70\\u0338d;\\uc000\\u224b\\u0338s;\\u4149ro\\xf8\\u0d84ur\\u0100;a\\u29d3\\u29d4\\u666el\\u0100;s\\u29d3\\u0b38\\u01f3\\u29df\\0\\u29e3p\\u80bb\\xa0\\u0b37mp\\u0100;e\\u0bf9\\u0c00\\u0280aeouy\\u29f4\\u29fe\\u2a03\\u2a10\\u2a13\\u01f0\\u29f9\\0\\u29fb;\\u6a43on;\\u4148dil;\\u4146ng\\u0100;d\\u0d7e\\u2a0aot;\\uc000\\u2a6d\\u0338p;\\u6a42;\\u443dash;\\u6013\\u0380;Aadqsx\\u0b92\\u2a29\\u2a2d\\u2a3b\\u2a41\\u2a45\\u2a50rr;\\u61d7r\\u0100hr\\u2a33\\u2a36k;\\u6924\\u0100;o\\u13f2\\u13f0ot;\\uc000\\u2250\\u0338ui\\xf6\\u0b63\\u0100ei\\u2a4a\\u2a4ear;\\u6928\\xed\\u0b98ist\\u0100;s\\u0ba0\\u0b9fr;\\uc000\\ud835\\udd2b\\u0200Eest\\u0bc5\\u2a66\\u2a79\\u2a7c\\u0180;qs\\u0bbc\\u2a6d\\u0be1\\u0180;qs\\u0bbc\\u0bc5\\u2a74lan\\xf4\\u0be2i\\xed\\u0bea\\u0100;r\\u0bb6\\u2a81\\xbb\\u0bb7\\u0180Aap\\u2a8a\\u2a8d\\u2a91r\\xf2\\u2971rr;\\u61aear;\\u6af2\\u0180;sv\\u0f8d\\u2a9c\\u0f8c\\u0100;d\\u2aa1\\u2aa2\\u62fc;\\u62facy;\\u445a\\u0380AEadest\\u2ab7\\u2aba\\u2abe\\u2ac2\\u2ac5\\u2af6\\u2af9r\\xf2\\u2966;\\uc000\\u2266\\u0338rr;\\u619ar;\\u6025\\u0200;fqs\\u0c3b\\u2ace\\u2ae3\\u2aeft\\u0100ar\\u2ad4\\u2ad9rro\\xf7\\u2ac1ightarro\\xf7\\u2a90\\u0180;qs\\u0c3b\\u2aba\\u2aealan\\xf4\\u0c55\\u0100;s\\u0c55\\u2af4\\xbb\\u0c36i\\xed\\u0c5d\\u0100;r\\u0c35\\u2afei\\u0100;e\\u0c1a\\u0c25i\\xe4\\u0d90\\u0100pt\\u2b0c\\u2b11f;\\uc000\\ud835\\udd5f\\u8180\\xac;in\\u2b19\\u2b1a\\u2b36\\u40acn\\u0200;Edv\\u0b89\\u2b24\\u2b28\\u2b2e;\\uc000\\u22f9\\u0338ot;\\uc000\\u22f5\\u0338\\u01e1\\u0b89\\u2b33\\u2b35;\\u62f7;\\u62f6i\\u0100;v\\u0cb8\\u2b3c\\u01e1\\u0cb8\\u2b41\\u2b43;\\u62fe;\\u62fd\\u0180aor\\u2b4b\\u2b63\\u2b69r\\u0200;ast\\u0b7b\\u2b55\\u2b5a\\u2b5flle\\xec\\u0b7bl;\\uc000\\u2afd\\u20e5;\\uc000\\u2202\\u0338lint;\\u6a14\\u0180;ce\\u0c92\\u2b70\\u2b73u\\xe5\\u0ca5\\u0100;c\\u0c98\\u2b78\\u0100;e\\u0c92\\u2b7d\\xf1\\u0c98\\u0200Aait\\u2b88\\u2b8b\\u2b9d\\u2ba7r\\xf2\\u2988rr\\u0180;cw\\u2b94\\u2b95\\u2b99\\u619b;\\uc000\\u2933\\u0338;\\uc000\\u219d\\u0338ghtarrow\\xbb\\u2b95ri\\u0100;e\\u0ccb\\u0cd6\\u0380chimpqu\\u2bbd\\u2bcd\\u2bd9\\u2b04\\u0b78\\u2be4\\u2bef\\u0200;cer\\u0d32\\u2bc6\\u0d37\\u2bc9u\\xe5\\u0d45;\\uc000\\ud835\\udcc3ort\\u026d\\u2b05\\0\\0\\u2bd6ar\\xe1\\u2b56m\\u0100;e\\u0d6e\\u2bdf\\u0100;q\\u0d74\\u0d73su\\u0100bp\\u2beb\\u2bed\\xe5\\u0cf8\\xe5\\u0d0b\\u0180bcp\\u2bf6\\u2c11\\u2c19\\u0200;Ees\\u2bff\\u2c00\\u0d22\\u2c04\\u6284;\\uc000\\u2ac5\\u0338et\\u0100;e\\u0d1b\\u2c0bq\\u0100;q\\u0d23\\u2c00c\\u0100;e\\u0d32\\u2c17\\xf1\\u0d38\\u0200;Ees\\u2c22\\u2c23\\u0d5f\\u2c27\\u6285;\\uc000\\u2ac6\\u0338et\\u0100;e\\u0d58\\u2c2eq\\u0100;q\\u0d60\\u2c23\\u0200gilr\\u2c3d\\u2c3f\\u2c45\\u2c47\\xec\\u0bd7lde\\u803b\\xf1\\u40f1\\xe7\\u0c43iangle\\u0100lr\\u2c52\\u2c5ceft\\u0100;e\\u0c1a\\u2c5a\\xf1\\u0c26ight\\u0100;e\\u0ccb\\u2c65\\xf1\\u0cd7\\u0100;m\\u2c6c\\u2c6d\\u43bd\\u0180;es\\u2c74\\u2c75\\u2c79\\u4023ro;\\u6116p;\\u6007\\u0480DHadgilrs\\u2c8f\\u2c94\\u2c99\\u2c9e\\u2ca3\\u2cb0\\u2cb6\\u2cd3\\u2ce3ash;\\u62adarr;\\u6904p;\\uc000\\u224d\\u20d2ash;\\u62ac\\u0100et\\u2ca8\\u2cac;\\uc000\\u2265\\u20d2;\\uc000>\\u20d2nfin;\\u69de\\u0180Aet\\u2cbd\\u2cc1\\u2cc5rr;\\u6902;\\uc000\\u2264\\u20d2\\u0100;r\\u2cca\\u2ccd\\uc000<\\u20d2ie;\\uc000\\u22b4\\u20d2\\u0100At\\u2cd8\\u2cdcrr;\\u6903rie;\\uc000\\u22b5\\u20d2im;\\uc000\\u223c\\u20d2\\u0180Aan\\u2cf0\\u2cf4\\u2d02rr;\\u61d6r\\u0100hr\\u2cfa\\u2cfdk;\\u6923\\u0100;o\\u13e7\\u13e5ear;\\u6927\\u1253\\u1a95\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\u2d2d\\0\\u2d38\\u2d48\\u2d60\\u2d65\\u2d72\\u2d84\\u1b07\\0\\0\\u2d8d\\u2dab\\0\\u2dc8\\u2dce\\0\\u2ddc\\u2e19\\u2e2b\\u2e3e\\u2e43\\u0100cs\\u2d31\\u1a97ute\\u803b\\xf3\\u40f3\\u0100iy\\u2d3c\\u2d45r\\u0100;c\\u1a9e\\u2d42\\u803b\\xf4\\u40f4;\\u443e\\u0280abios\\u1aa0\\u2d52\\u2d57\\u01c8\\u2d5alac;\\u4151v;\\u6a38old;\\u69bclig;\\u4153\\u0100cr\\u2d69\\u2d6dir;\\u69bf;\\uc000\\ud835\\udd2c\\u036f\\u2d79\\0\\0\\u2d7c\\0\\u2d82n;\\u42dbave\\u803b\\xf2\\u40f2;\\u69c1\\u0100bm\\u2d88\\u0df4ar;\\u69b5\\u0200acit\\u2d95\\u2d98\\u2da5\\u2da8r\\xf2\\u1a80\\u0100ir\\u2d9d\\u2da0r;\\u69beoss;\\u69bbn\\xe5\\u0e52;\\u69c0\\u0180aei\\u2db1\\u2db5\\u2db9cr;\\u414dga;\\u43c9\\u0180cdn\\u2dc0\\u2dc5\\u01cdron;\\u43bf;\\u69b6pf;\\uc000\\ud835\\udd60\\u0180ael\\u2dd4\\u2dd7\\u01d2r;\\u69b7rp;\\u69b9\\u0380;adiosv\\u2dea\\u2deb\\u2dee\\u2e08\\u2e0d\\u2e10\\u2e16\\u6228r\\xf2\\u1a86\\u0200;efm\\u2df7\\u2df8\\u2e02\\u2e05\\u6a5dr\\u0100;o\\u2dfe\\u2dff\\u6134f\\xbb\\u2dff\\u803b\\xaa\\u40aa\\u803b\\xba\\u40bagof;\\u62b6r;\\u6a56lope;\\u6a57;\\u6a5b\\u0180clo\\u2e1f\\u2e21\\u2e27\\xf2\\u2e01ash\\u803b\\xf8\\u40f8l;\\u6298i\\u016c\\u2e2f\\u2e34de\\u803b\\xf5\\u40f5es\\u0100;a\\u01db\\u2e3as;\\u6a36ml\\u803b\\xf6\\u40f6bar;\\u633d\\u0ae1\\u2e5e\\0\\u2e7d\\0\\u2e80\\u2e9d\\0\\u2ea2\\u2eb9\\0\\0\\u2ecb\\u0e9c\\0\\u2f13\\0\\0\\u2f2b\\u2fbc\\0\\u2fc8r\\u0200;ast\\u0403\\u2e67\\u2e72\\u0e85\\u8100\\xb6;l\\u2e6d\\u2e6e\\u40b6le\\xec\\u0403\\u0269\\u2e78\\0\\0\\u2e7bm;\\u6af3;\\u6afdy;\\u443fr\\u0280cimpt\\u2e8b\\u2e8f\\u2e93\\u1865\\u2e97nt;\\u4025od;\\u402eil;\\u6030enk;\\u6031r;\\uc000\\ud835\\udd2d\\u0180imo\\u2ea8\\u2eb0\\u2eb4\\u0100;v\\u2ead\\u2eae\\u43c6;\\u43d5ma\\xf4\\u0a76ne;\\u660e\\u0180;tv\\u2ebf\\u2ec0\\u2ec8\\u43c0chfork\\xbb\\u1ffd;\\u43d6\\u0100au\\u2ecf\\u2edfn\\u0100ck\\u2ed5\\u2eddk\\u0100;h\\u21f4\\u2edb;\\u610e\\xf6\\u21f4s\\u0480;abcdemst\\u2ef3\\u2ef4\\u1908\\u2ef9\\u2efd\\u2f04\\u2f06\\u2f0a\\u2f0e\\u402bcir;\\u6a23ir;\\u6a22\\u0100ou\\u1d40\\u2f02;\\u6a25;\\u6a72n\\u80bb\\xb1\\u0e9dim;\\u6a26wo;\\u6a27\\u0180ipu\\u2f19\\u2f20\\u2f25ntint;\\u6a15f;\\uc000\\ud835\\udd61nd\\u803b\\xa3\\u40a3\\u0500;Eaceinosu\\u0ec8\\u2f3f\\u2f41\\u2f44\\u2f47\\u2f81\\u2f89\\u2f92\\u2f7e\\u2fb6;\\u6ab3p;\\u6ab7u\\xe5\\u0ed9\\u0100;c\\u0ece\\u2f4c\\u0300;acens\\u0ec8\\u2f59\\u2f5f\\u2f66\\u2f68\\u2f7eppro\\xf8\\u2f43urlye\\xf1\\u0ed9\\xf1\\u0ece\\u0180aes\\u2f6f\\u2f76\\u2f7approx;\\u6ab9qq;\\u6ab5im;\\u62e8i\\xed\\u0edfme\\u0100;s\\u2f88\\u0eae\\u6032\\u0180Eas\\u2f78\\u2f90\\u2f7a\\xf0\\u2f75\\u0180dfp\\u0eec\\u2f99\\u2faf\\u0180als\\u2fa0\\u2fa5\\u2faalar;\\u632eine;\\u6312urf;\\u6313\\u0100;t\\u0efb\\u2fb4\\xef\\u0efbrel;\\u62b0\\u0100ci\\u2fc0\\u2fc5r;\\uc000\\ud835\\udcc5;\\u43c8ncsp;\\u6008\\u0300fiopsu\\u2fda\\u22e2\\u2fdf\\u2fe5\\u2feb\\u2ff1r;\\uc000\\ud835\\udd2epf;\\uc000\\ud835\\udd62rime;\\u6057cr;\\uc000\\ud835\\udcc6\\u0180aeo\\u2ff8\\u3009\\u3013t\\u0100ei\\u2ffe\\u3005rnion\\xf3\\u06b0nt;\\u6a16st\\u0100;e\\u3010\\u3011\\u403f\\xf1\\u1f19\\xf4\\u0f14\\u0a80ABHabcdefhilmnoprstux\\u3040\\u3051\\u3055\\u3059\\u30e0\\u310e\\u312b\\u3147\\u3162\\u3172\\u318e\\u3206\\u3215\\u3224\\u3229\\u3258\\u326e\\u3272\\u3290\\u32b0\\u32b7\\u0180art\\u3047\\u304a\\u304cr\\xf2\\u10b3\\xf2\\u03ddail;\\u691car\\xf2\\u1c65ar;\\u6964\\u0380cdenqrt\\u3068\\u3075\\u3078\\u307f\\u308f\\u3094\\u30cc\\u0100eu\\u306d\\u3071;\\uc000\\u223d\\u0331te;\\u4155i\\xe3\\u116emptyv;\\u69b3g\\u0200;del\\u0fd1\\u3089\\u308b\\u308d;\\u6992;\\u69a5\\xe5\\u0fd1uo\\u803b\\xbb\\u40bbr\\u0580;abcfhlpstw\\u0fdc\\u30ac\\u30af\\u30b7\\u30b9\\u30bc\\u30be\\u30c0\\u30c3\\u30c7\\u30cap;\\u6975\\u0100;f\\u0fe0\\u30b4s;\\u6920;\\u6933s;\\u691e\\xeb\\u225d\\xf0\\u272el;\\u6945im;\\u6974l;\\u61a3;\\u619d\\u0100ai\\u30d1\\u30d5il;\\u691ao\\u0100;n\\u30db\\u30dc\\u6236al\\xf3\\u0f1e\\u0180abr\\u30e7\\u30ea\\u30eer\\xf2\\u17e5rk;\\u6773\\u0100ak\\u30f3\\u30fdc\\u0100ek\\u30f9\\u30fb;\\u407d;\\u405d\\u0100es\\u3102\\u3104;\\u698cl\\u0100du\\u310a\\u310c;\\u698e;\\u6990\\u0200aeuy\\u3117\\u311c\\u3127\\u3129ron;\\u4159\\u0100di\\u3121\\u3125il;\\u4157\\xec\\u0ff2\\xe2\\u30fa;\\u4440\\u0200clqs\\u3134\\u3137\\u313d\\u3144a;\\u6937dhar;\\u6969uo\\u0100;r\\u020e\\u020dh;\\u61b3\\u0180acg\\u314e\\u315f\\u0f44l\\u0200;ips\\u0f78\\u3158\\u315b\\u109cn\\xe5\\u10bbar\\xf4\\u0fa9t;\\u65ad\\u0180ilr\\u3169\\u1023\\u316esht;\\u697d;\\uc000\\ud835\\udd2f\\u0100ao\\u3177\\u3186r\\u0100du\\u317d\\u317f\\xbb\\u047b\\u0100;l\\u1091\\u3184;\\u696c\\u0100;v\\u318b\\u318c\\u43c1;\\u43f1\\u0180gns\\u3195\\u31f9\\u31fcht\\u0300ahlrst\\u31a4\\u31b0\\u31c2\\u31d8\\u31e4\\u31eerrow\\u0100;t\\u0fdc\\u31ada\\xe9\\u30c8arpoon\\u0100du\\u31bb\\u31bfow\\xee\\u317ep\\xbb\\u1092eft\\u0100ah\\u31ca\\u31d0rrow\\xf3\\u0feaarpoon\\xf3\\u0551ightarrows;\\u61c9quigarro\\xf7\\u30cbhreetimes;\\u62ccg;\\u42daingdotse\\xf1\\u1f32\\u0180ahm\\u320d\\u3210\\u3213r\\xf2\\u0feaa\\xf2\\u0551;\\u600foust\\u0100;a\\u321e\\u321f\\u63b1che\\xbb\\u321fmid;\\u6aee\\u0200abpt\\u3232\\u323d\\u3240\\u3252\\u0100nr\\u3237\\u323ag;\\u67edr;\\u61fer\\xeb\\u1003\\u0180afl\\u3247\\u324a\\u324er;\\u6986;\\uc000\\ud835\\udd63us;\\u6a2eimes;\\u6a35\\u0100ap\\u325d\\u3267r\\u0100;g\\u3263\\u3264\\u4029t;\\u6994olint;\\u6a12ar\\xf2\\u31e3\\u0200achq\\u327b\\u3280\\u10bc\\u3285quo;\\u603ar;\\uc000\\ud835\\udcc7\\u0100bu\\u30fb\\u328ao\\u0100;r\\u0214\\u0213\\u0180hir\\u3297\\u329b\\u32a0re\\xe5\\u31f8mes;\\u62cai\\u0200;efl\\u32aa\\u1059\\u1821\\u32ab\\u65b9tri;\\u69celuhar;\\u6968;\\u611e\\u0d61\\u32d5\\u32db\\u32df\\u332c\\u3338\\u3371\\0\\u337a\\u33a4\\0\\0\\u33ec\\u33f0\\0\\u3428\\u3448\\u345a\\u34ad\\u34b1\\u34ca\\u34f1\\0\\u3616\\0\\0\\u3633cute;\\u415bqu\\xef\\u27ba\\u0500;Eaceinpsy\\u11ed\\u32f3\\u32f5\\u32ff\\u3302\\u330b\\u330f\\u331f\\u3326\\u3329;\\u6ab4\\u01f0\\u32fa\\0\\u32fc;\\u6ab8on;\\u4161u\\xe5\\u11fe\\u0100;d\\u11f3\\u3307il;\\u415frc;\\u415d\\u0180Eas\\u3316\\u3318\\u331b;\\u6ab6p;\\u6abaim;\\u62e9olint;\\u6a13i\\xed\\u1204;\\u4441ot\\u0180;be\\u3334\\u1d47\\u3335\\u62c5;\\u6a66\\u0380Aacmstx\\u3346\\u334a\\u3357\\u335b\\u335e\\u3363\\u336drr;\\u61d8r\\u0100hr\\u3350\\u3352\\xeb\\u2228\\u0100;o\\u0a36\\u0a34t\\u803b\\xa7\\u40a7i;\\u403bwar;\\u6929m\\u0100in\\u3369\\xf0nu\\xf3\\xf1t;\\u6736r\\u0100;o\\u3376\\u2055\\uc000\\ud835\\udd30\\u0200acoy\\u3382\\u3386\\u3391\\u33a0rp;\\u666f\\u0100hy\\u338b\\u338fcy;\\u4449;\\u4448rt\\u026d\\u3399\\0\\0\\u339ci\\xe4\\u1464ara\\xec\\u2e6f\\u803b\\xad\\u40ad\\u0100gm\\u33a8\\u33b4ma\\u0180;fv\\u33b1\\u33b2\\u33b2\\u43c3;\\u43c2\\u0400;deglnpr\\u12ab\\u33c5\\u33c9\\u33ce\\u33d6\\u33de\\u33e1\\u33e6ot;\\u6a6a\\u0100;q\\u12b1\\u12b0\\u0100;E\\u33d3\\u33d4\\u6a9e;\\u6aa0\\u0100;E\\u33db\\u33dc\\u6a9d;\\u6a9fe;\\u6246lus;\\u6a24arr;\\u6972ar\\xf2\\u113d\\u0200aeit\\u33f8\\u3408\\u340f\\u3417\\u0100ls\\u33fd\\u3404lsetm\\xe9\\u336ahp;\\u6a33parsl;\\u69e4\\u0100dl\\u1463\\u3414e;\\u6323\\u0100;e\\u341c\\u341d\\u6aaa\\u0100;s\\u3422\\u3423\\u6aac;\\uc000\\u2aac\\ufe00\\u0180flp\\u342e\\u3433\\u3442tcy;\\u444c\\u0100;b\\u3438\\u3439\\u402f\\u0100;a\\u343e\\u343f\\u69c4r;\\u633ff;\\uc000\\ud835\\udd64a\\u0100dr\\u344d\\u0402es\\u0100;u\\u3454\\u3455\\u6660it\\xbb\\u3455\\u0180csu\\u3460\\u3479\\u349f\\u0100au\\u3465\\u346fp\\u0100;s\\u1188\\u346b;\\uc000\\u2293\\ufe00p\\u0100;s\\u11b4\\u3475;\\uc000\\u2294\\ufe00u\\u0100bp\\u347f\\u348f\\u0180;es\\u1197\\u119c\\u3486et\\u0100;e\\u1197\\u348d\\xf1\\u119d\\u0180;es\\u11a8\\u11ad\\u3496et\\u0100;e\\u11a8\\u349d\\xf1\\u11ae\\u0180;af\\u117b\\u34a6\\u05b0r\\u0165\\u34ab\\u05b1\\xbb\\u117car\\xf2\\u1148\\u0200cemt\\u34b9\\u34be\\u34c2\\u34c5r;\\uc000\\ud835\\udcc8tm\\xee\\xf1i\\xec\\u3415ar\\xe6\\u11be\\u0100ar\\u34ce\\u34d5r\\u0100;f\\u34d4\\u17bf\\u6606\\u0100an\\u34da\\u34edight\\u0100ep\\u34e3\\u34eapsilo\\xee\\u1ee0h\\xe9\\u2eafs\\xbb\\u2852\\u0280bcmnp\\u34fb\\u355e\\u1209\\u358b\\u358e\\u0480;Edemnprs\\u350e\\u350f\\u3511\\u3515\\u351e\\u3523\\u352c\\u3531\\u3536\\u6282;\\u6ac5ot;\\u6abd\\u0100;d\\u11da\\u351aot;\\u6ac3ult;\\u6ac1\\u0100Ee\\u3528\\u352a;\\u6acb;\\u628alus;\\u6abfarr;\\u6979\\u0180eiu\\u353d\\u3552\\u3555t\\u0180;en\\u350e\\u3545\\u354bq\\u0100;q\\u11da\\u350feq\\u0100;q\\u352b\\u3528m;\\u6ac7\\u0100bp\\u355a\\u355c;\\u6ad5;\\u6ad3c\\u0300;acens\\u11ed\\u356c\\u3572\\u3579\\u357b\\u3326ppro\\xf8\\u32faurlye\\xf1\\u11fe\\xf1\\u11f3\\u0180aes\\u3582\\u3588\\u331bppro\\xf8\\u331aq\\xf1\\u3317g;\\u666a\\u0680123;Edehlmnps\\u35a9\\u35ac\\u35af\\u121c\\u35b2\\u35b4\\u35c0\\u35c9\\u35d5\\u35da\\u35df\\u35e8\\u35ed\\u803b\\xb9\\u40b9\\u803b\\xb2\\u40b2\\u803b\\xb3\\u40b3;\\u6ac6\\u0100os\\u35b9\\u35bct;\\u6abeub;\\u6ad8\\u0100;d\\u1222\\u35c5ot;\\u6ac4s\\u0100ou\\u35cf\\u35d2l;\\u67c9b;\\u6ad7arr;\\u697bult;\\u6ac2\\u0100Ee\\u35e4\\u35e6;\\u6acc;\\u628blus;\\u6ac0\\u0180eiu\\u35f4\\u3609\\u360ct\\u0180;en\\u121c\\u35fc\\u3602q\\u0100;q\\u1222\\u35b2eq\\u0100;q\\u35e7\\u35e4m;\\u6ac8\\u0100bp\\u3611\\u3613;\\u6ad4;\\u6ad6\\u0180Aan\\u361c\\u3620\\u362drr;\\u61d9r\\u0100hr\\u3626\\u3628\\xeb\\u222e\\u0100;o\\u0a2b\\u0a29war;\\u692alig\\u803b\\xdf\\u40df\\u0be1\\u3651\\u365d\\u3660\\u12ce\\u3673\\u3679\\0\\u367e\\u36c2\\0\\0\\0\\0\\0\\u36db\\u3703\\0\\u3709\\u376c\\0\\0\\0\\u3787\\u0272\\u3656\\0\\0\\u365bget;\\u6316;\\u43c4r\\xeb\\u0e5f\\u0180aey\\u3666\\u366b\\u3670ron;\\u4165dil;\\u4163;\\u4442lrec;\\u6315r;\\uc000\\ud835\\udd31\\u0200eiko\\u3686\\u369d\\u36b5\\u36bc\\u01f2\\u368b\\0\\u3691e\\u01004f\\u1284\\u1281a\\u0180;sv\\u3698\\u3699\\u369b\\u43b8ym;\\u43d1\\u0100cn\\u36a2\\u36b2k\\u0100as\\u36a8\\u36aeppro\\xf8\\u12c1im\\xbb\\u12acs\\xf0\\u129e\\u0100as\\u36ba\\u36ae\\xf0\\u12c1rn\\u803b\\xfe\\u40fe\\u01ec\\u031f\\u36c6\\u22e7es\\u8180\\xd7;bd\\u36cf\\u36d0\\u36d8\\u40d7\\u0100;a\\u190f\\u36d5r;\\u6a31;\\u6a30\\u0180eps\\u36e1\\u36e3\\u3700\\xe1\\u2a4d\\u0200;bcf\\u0486\\u36ec\\u36f0\\u36f4ot;\\u6336ir;\\u6af1\\u0100;o\\u36f9\\u36fc\\uc000\\ud835\\udd65rk;\\u6ada\\xe1\\u3362rime;\\u6034\\u0180aip\\u370f\\u3712\\u3764d\\xe5\\u1248\\u0380adempst\\u3721\\u374d\\u3740\\u3751\\u3757\\u375c\\u375fngle\\u0280;dlqr\\u3730\\u3731\\u3736\\u3740\\u3742\\u65b5own\\xbb\\u1dbbeft\\u0100;e\\u2800\\u373e\\xf1\\u092e;\\u625cight\\u0100;e\\u32aa\\u374b\\xf1\\u105aot;\\u65ecinus;\\u6a3alus;\\u6a39b;\\u69cdime;\\u6a3bezium;\\u63e2\\u0180cht\\u3772\\u377d\\u3781\\u0100ry\\u3777\\u377b;\\uc000\\ud835\\udcc9;\\u4446cy;\\u445brok;\\u4167\\u0100io\\u378b\\u378ex\\xf4\\u1777head\\u0100lr\\u3797\\u37a0eftarro\\xf7\\u084fightarrow\\xbb\\u0f5d\\u0900AHabcdfghlmoprstuw\\u37d0\\u37d3\\u37d7\\u37e4\\u37f0\\u37fc\\u380e\\u381c\\u3823\\u3834\\u3851\\u385d\\u386b\\u38a9\\u38cc\\u38d2\\u38ea\\u38f6r\\xf2\\u03edar;\\u6963\\u0100cr\\u37dc\\u37e2ute\\u803b\\xfa\\u40fa\\xf2\\u1150r\\u01e3\\u37ea\\0\\u37edy;\\u445eve;\\u416d\\u0100iy\\u37f5\\u37farc\\u803b\\xfb\\u40fb;\\u4443\\u0180abh\\u3803\\u3806\\u380br\\xf2\\u13adlac;\\u4171a\\xf2\\u13c3\\u0100ir\\u3813\\u3818sht;\\u697e;\\uc000\\ud835\\udd32rave\\u803b\\xf9\\u40f9\\u0161\\u3827\\u3831r\\u0100lr\\u382c\\u382e\\xbb\\u0957\\xbb\\u1083lk;\\u6580\\u0100ct\\u3839\\u384d\\u026f\\u383f\\0\\0\\u384arn\\u0100;e\\u3845\\u3846\\u631cr\\xbb\\u3846op;\\u630fri;\\u65f8\\u0100al\\u3856\\u385acr;\\u416b\\u80bb\\xa8\\u0349\\u0100gp\\u3862\\u3866on;\\u4173f;\\uc000\\ud835\\udd66\\u0300adhlsu\\u114b\\u3878\\u387d\\u1372\\u3891\\u38a0own\\xe1\\u13b3arpoon\\u0100lr\\u3888\\u388cef\\xf4\\u382digh\\xf4\\u382fi\\u0180;hl\\u3899\\u389a\\u389c\\u43c5\\xbb\\u13faon\\xbb\\u389aparrows;\\u61c8\\u0180cit\\u38b0\\u38c4\\u38c8\\u026f\\u38b6\\0\\0\\u38c1rn\\u0100;e\\u38bc\\u38bd\\u631dr\\xbb\\u38bdop;\\u630eng;\\u416fri;\\u65f9cr;\\uc000\\ud835\\udcca\\u0180dir\\u38d9\\u38dd\\u38e2ot;\\u62f0lde;\\u4169i\\u0100;f\\u3730\\u38e8\\xbb\\u1813\\u0100am\\u38ef\\u38f2r\\xf2\\u38a8l\\u803b\\xfc\\u40fcangle;\\u69a7\\u0780ABDacdeflnoprsz\\u391c\\u391f\\u3929\\u392d\\u39b5\\u39b8\\u39bd\\u39df\\u39e4\\u39e8\\u39f3\\u39f9\\u39fd\\u3a01\\u3a20r\\xf2\\u03f7ar\\u0100;v\\u3926\\u3927\\u6ae8;\\u6ae9as\\xe8\\u03e1\\u0100nr\\u3932\\u3937grt;\\u699c\\u0380eknprst\\u34e3\\u3946\\u394b\\u3952\\u395d\\u3964\\u3996app\\xe1\\u2415othin\\xe7\\u1e96\\u0180hir\\u34eb\\u2ec8\\u3959op\\xf4\\u2fb5\\u0100;h\\u13b7\\u3962\\xef\\u318d\\u0100iu\\u3969\\u396dgm\\xe1\\u33b3\\u0100bp\\u3972\\u3984setneq\\u0100;q\\u397d\\u3980\\uc000\\u228a\\ufe00;\\uc000\\u2acb\\ufe00setneq\\u0100;q\\u398f\\u3992\\uc000\\u228b\\ufe00;\\uc000\\u2acc\\ufe00\\u0100hr\\u399b\\u399fet\\xe1\\u369ciangle\\u0100lr\\u39aa\\u39afeft\\xbb\\u0925ight\\xbb\\u1051y;\\u4432ash\\xbb\\u1036\\u0180elr\\u39c4\\u39d2\\u39d7\\u0180;be\\u2dea\\u39cb\\u39cfar;\\u62bbq;\\u625alip;\\u62ee\\u0100bt\\u39dc\\u1468a\\xf2\\u1469r;\\uc000\\ud835\\udd33tr\\xe9\\u39aesu\\u0100bp\\u39ef\\u39f1\\xbb\\u0d1c\\xbb\\u0d59pf;\\uc000\\ud835\\udd67ro\\xf0\\u0efbtr\\xe9\\u39b4\\u0100cu\\u3a06\\u3a0br;\\uc000\\ud835\\udccb\\u0100bp\\u3a10\\u3a18n\\u0100Ee\\u3980\\u3a16\\xbb\\u397en\\u0100Ee\\u3992\\u3a1e\\xbb\\u3990igzag;\\u699a\\u0380cefoprs\\u3a36\\u3a3b\\u3a56\\u3a5b\\u3a54\\u3a61\\u3a6airc;\\u4175\\u0100di\\u3a40\\u3a51\\u0100bg\\u3a45\\u3a49ar;\\u6a5fe\\u0100;q\\u15fa\\u3a4f;\\u6259erp;\\u6118r;\\uc000\\ud835\\udd34pf;\\uc000\\ud835\\udd68\\u0100;e\\u1479\\u3a66at\\xe8\\u1479cr;\\uc000\\ud835\\udccc\\u0ae3\\u178e\\u3a87\\0\\u3a8b\\0\\u3a90\\u3a9b\\0\\0\\u3a9d\\u3aa8\\u3aab\\u3aaf\\0\\0\\u3ac3\\u3ace\\0\\u3ad8\\u17dc\\u17dftr\\xe9\\u17d1r;\\uc000\\ud835\\udd35\\u0100Aa\\u3a94\\u3a97r\\xf2\\u03c3r\\xf2\\u09f6;\\u43be\\u0100Aa\\u3aa1\\u3aa4r\\xf2\\u03b8r\\xf2\\u09eba\\xf0\\u2713is;\\u62fb\\u0180dpt\\u17a4\\u3ab5\\u3abe\\u0100fl\\u3aba\\u17a9;\\uc000\\ud835\\udd69im\\xe5\\u17b2\\u0100Aa\\u3ac7\\u3acar\\xf2\\u03cer\\xf2\\u0a01\\u0100cq\\u3ad2\\u17b8r;\\uc000\\ud835\\udccd\\u0100pt\\u17d6\\u3adcr\\xe9\\u17d4\\u0400acefiosu\\u3af0\\u3afd\\u3b08\\u3b0c\\u3b11\\u3b15\\u3b1b\\u3b21c\\u0100uy\\u3af6\\u3afbte\\u803b\\xfd\\u40fd;\\u444f\\u0100iy\\u3b02\\u3b06rc;\\u4177;\\u444bn\\u803b\\xa5\\u40a5r;\\uc000\\ud835\\udd36cy;\\u4457pf;\\uc000\\ud835\\udd6acr;\\uc000\\ud835\\udcce\\u0100cm\\u3b26\\u3b29y;\\u444el\\u803b\\xff\\u40ff\\u0500acdefhiosw\\u3b42\\u3b48\\u3b54\\u3b58\\u3b64\\u3b69\\u3b6d\\u3b74\\u3b7a\\u3b80cute;\\u417a\\u0100ay\\u3b4d\\u3b52ron;\\u417e;\\u4437ot;\\u417c\\u0100et\\u3b5d\\u3b61tr\\xe6\\u155fa;\\u43b6r;\\uc000\\ud835\\udd37cy;\\u4436grarr;\\u61ddpf;\\uc000\\ud835\\udd6bcr;\\uc000\\ud835\\udccf\\u0100jn\\u3b85\\u3b87;\\u600dj;\\u600c\"\n .split(\"\")\n .map((c) => c.charCodeAt(0)));\n//# sourceMappingURL=decode-data-html.js.map","// Generated using scripts/write-decode-map.ts\nexport default new Uint16Array(\n// prettier-ignore\n\"\\u0200aglq\\t\\x15\\x18\\x1b\\u026d\\x0f\\0\\0\\x12p;\\u4026os;\\u4027t;\\u403et;\\u403cuot;\\u4022\"\n .split(\"\")\n .map((c) => c.charCodeAt(0)));\n//# sourceMappingURL=decode-data-xml.js.map","import htmlDecodeTree from \"./generated/decode-data-html.js\";\nimport xmlDecodeTree from \"./generated/decode-data-xml.js\";\nimport decodeCodePoint, { replaceCodePoint, fromCodePoint, } from \"./decode_codepoint.js\";\n// Re-export for use by eg. htmlparser2\nexport { htmlDecodeTree, xmlDecodeTree, decodeCodePoint };\nexport { replaceCodePoint, fromCodePoint } from \"./decode_codepoint.js\";\nvar CharCodes;\n(function (CharCodes) {\n CharCodes[CharCodes[\"NUM\"] = 35] = \"NUM\";\n CharCodes[CharCodes[\"SEMI\"] = 59] = \"SEMI\";\n CharCodes[CharCodes[\"EQUALS\"] = 61] = \"EQUALS\";\n CharCodes[CharCodes[\"ZERO\"] = 48] = \"ZERO\";\n CharCodes[CharCodes[\"NINE\"] = 57] = \"NINE\";\n CharCodes[CharCodes[\"LOWER_A\"] = 97] = \"LOWER_A\";\n CharCodes[CharCodes[\"LOWER_F\"] = 102] = \"LOWER_F\";\n CharCodes[CharCodes[\"LOWER_X\"] = 120] = \"LOWER_X\";\n CharCodes[CharCodes[\"LOWER_Z\"] = 122] = \"LOWER_Z\";\n CharCodes[CharCodes[\"UPPER_A\"] = 65] = \"UPPER_A\";\n CharCodes[CharCodes[\"UPPER_F\"] = 70] = \"UPPER_F\";\n CharCodes[CharCodes[\"UPPER_Z\"] = 90] = \"UPPER_Z\";\n})(CharCodes || (CharCodes = {}));\n/** Bit that needs to be set to convert an upper case ASCII character to lower case */\nconst TO_LOWER_BIT = 0b100000;\nexport var BinTrieFlags;\n(function (BinTrieFlags) {\n BinTrieFlags[BinTrieFlags[\"VALUE_LENGTH\"] = 49152] = \"VALUE_LENGTH\";\n BinTrieFlags[BinTrieFlags[\"BRANCH_LENGTH\"] = 16256] = \"BRANCH_LENGTH\";\n BinTrieFlags[BinTrieFlags[\"JUMP_TABLE\"] = 127] = \"JUMP_TABLE\";\n})(BinTrieFlags || (BinTrieFlags = {}));\nfunction isNumber(code) {\n return code >= CharCodes.ZERO && code <= CharCodes.NINE;\n}\nfunction isHexadecimalCharacter(code) {\n return ((code >= CharCodes.UPPER_A && code <= CharCodes.UPPER_F) ||\n (code >= CharCodes.LOWER_A && code <= CharCodes.LOWER_F));\n}\nfunction isAsciiAlphaNumeric(code) {\n return ((code >= CharCodes.UPPER_A && code <= CharCodes.UPPER_Z) ||\n (code >= CharCodes.LOWER_A && code <= CharCodes.LOWER_Z) ||\n isNumber(code));\n}\n/**\n * Checks if the given character is a valid end character for an entity in an attribute.\n *\n * Attribute values that aren't terminated properly aren't parsed, and shouldn't lead to a parser error.\n * See the example in https://html.spec.whatwg.org/multipage/parsing.html#named-character-reference-state\n */\nfunction isEntityInAttributeInvalidEnd(code) {\n return code === CharCodes.EQUALS || isAsciiAlphaNumeric(code);\n}\nvar EntityDecoderState;\n(function (EntityDecoderState) {\n EntityDecoderState[EntityDecoderState[\"EntityStart\"] = 0] = \"EntityStart\";\n EntityDecoderState[EntityDecoderState[\"NumericStart\"] = 1] = \"NumericStart\";\n EntityDecoderState[EntityDecoderState[\"NumericDecimal\"] = 2] = \"NumericDecimal\";\n EntityDecoderState[EntityDecoderState[\"NumericHex\"] = 3] = \"NumericHex\";\n EntityDecoderState[EntityDecoderState[\"NamedEntity\"] = 4] = \"NamedEntity\";\n})(EntityDecoderState || (EntityDecoderState = {}));\nexport var DecodingMode;\n(function (DecodingMode) {\n /** Entities in text nodes that can end with any character. */\n DecodingMode[DecodingMode[\"Legacy\"] = 0] = \"Legacy\";\n /** Only allow entities terminated with a semicolon. */\n DecodingMode[DecodingMode[\"Strict\"] = 1] = \"Strict\";\n /** Entities in attributes have limitations on ending characters. */\n DecodingMode[DecodingMode[\"Attribute\"] = 2] = \"Attribute\";\n})(DecodingMode || (DecodingMode = {}));\n/**\n * Token decoder with support of writing partial entities.\n */\nexport class EntityDecoder {\n constructor(\n /** The tree used to decode entities. */\n decodeTree, \n /**\n * The function that is called when a codepoint is decoded.\n *\n * For multi-byte named entities, this will be called multiple times,\n * with the second codepoint, and the same `consumed` value.\n *\n * @param codepoint The decoded codepoint.\n * @param consumed The number of bytes consumed by the decoder.\n */\n emitCodePoint, \n /** An object that is used to produce errors. */\n errors) {\n this.decodeTree = decodeTree;\n this.emitCodePoint = emitCodePoint;\n this.errors = errors;\n /** The current state of the decoder. */\n this.state = EntityDecoderState.EntityStart;\n /** Characters that were consumed while parsing an entity. */\n this.consumed = 1;\n /**\n * The result of the entity.\n *\n * Either the result index of a numeric entity, or the codepoint of a\n * numeric entity.\n */\n this.result = 0;\n /** The current index in the decode tree. */\n this.treeIndex = 0;\n /** The number of characters that were consumed in excess. */\n this.excess = 1;\n /** The mode in which the decoder is operating. */\n this.decodeMode = DecodingMode.Strict;\n }\n /** Resets the instance to make it reusable. */\n startEntity(decodeMode) {\n this.decodeMode = decodeMode;\n this.state = EntityDecoderState.EntityStart;\n this.result = 0;\n this.treeIndex = 0;\n this.excess = 1;\n this.consumed = 1;\n }\n /**\n * Write an entity to the decoder. This can be called multiple times with partial entities.\n * If the entity is incomplete, the decoder will return -1.\n *\n * Mirrors the implementation of `getDecoder`, but with the ability to stop decoding if the\n * entity is incomplete, and resume when the next string is written.\n *\n * @param string The string containing the entity (or a continuation of the entity).\n * @param offset The offset at which the entity begins. Should be 0 if this is not the first call.\n * @returns The number of characters that were consumed, or -1 if the entity is incomplete.\n */\n write(str, offset) {\n switch (this.state) {\n case EntityDecoderState.EntityStart: {\n if (str.charCodeAt(offset) === CharCodes.NUM) {\n this.state = EntityDecoderState.NumericStart;\n this.consumed += 1;\n return this.stateNumericStart(str, offset + 1);\n }\n this.state = EntityDecoderState.NamedEntity;\n return this.stateNamedEntity(str, offset);\n }\n case EntityDecoderState.NumericStart: {\n return this.stateNumericStart(str, offset);\n }\n case EntityDecoderState.NumericDecimal: {\n return this.stateNumericDecimal(str, offset);\n }\n case EntityDecoderState.NumericHex: {\n return this.stateNumericHex(str, offset);\n }\n case EntityDecoderState.NamedEntity: {\n return this.stateNamedEntity(str, offset);\n }\n }\n }\n /**\n * Switches between the numeric decimal and hexadecimal states.\n *\n * Equivalent to the `Numeric character reference state` in the HTML spec.\n *\n * @param str The string containing the entity (or a continuation of the entity).\n * @param offset The current offset.\n * @returns The number of characters that were consumed, or -1 if the entity is incomplete.\n */\n stateNumericStart(str, offset) {\n if (offset >= str.length) {\n return -1;\n }\n if ((str.charCodeAt(offset) | TO_LOWER_BIT) === CharCodes.LOWER_X) {\n this.state = EntityDecoderState.NumericHex;\n this.consumed += 1;\n return this.stateNumericHex(str, offset + 1);\n }\n this.state = EntityDecoderState.NumericDecimal;\n return this.stateNumericDecimal(str, offset);\n }\n addToNumericResult(str, start, end, base) {\n if (start !== end) {\n const digitCount = end - start;\n this.result =\n this.result * Math.pow(base, digitCount) +\n parseInt(str.substr(start, digitCount), base);\n this.consumed += digitCount;\n }\n }\n /**\n * Parses a hexadecimal numeric entity.\n *\n * Equivalent to the `Hexademical character reference state` in the HTML spec.\n *\n * @param str The string containing the entity (or a continuation of the entity).\n * @param offset The current offset.\n * @returns The number of characters that were consumed, or -1 if the entity is incomplete.\n */\n stateNumericHex(str, offset) {\n const startIdx = offset;\n while (offset < str.length) {\n const char = str.charCodeAt(offset);\n if (isNumber(char) || isHexadecimalCharacter(char)) {\n offset += 1;\n }\n else {\n this.addToNumericResult(str, startIdx, offset, 16);\n return this.emitNumericEntity(char, 3);\n }\n }\n this.addToNumericResult(str, startIdx, offset, 16);\n return -1;\n }\n /**\n * Parses a decimal numeric entity.\n *\n * Equivalent to the `Decimal character reference state` in the HTML spec.\n *\n * @param str The string containing the entity (or a continuation of the entity).\n * @param offset The current offset.\n * @returns The number of characters that were consumed, or -1 if the entity is incomplete.\n */\n stateNumericDecimal(str, offset) {\n const startIdx = offset;\n while (offset < str.length) {\n const char = str.charCodeAt(offset);\n if (isNumber(char)) {\n offset += 1;\n }\n else {\n this.addToNumericResult(str, startIdx, offset, 10);\n return this.emitNumericEntity(char, 2);\n }\n }\n this.addToNumericResult(str, startIdx, offset, 10);\n return -1;\n }\n /**\n * Validate and emit a numeric entity.\n *\n * Implements the logic from the `Hexademical character reference start\n * state` and `Numeric character reference end state` in the HTML spec.\n *\n * @param lastCp The last code point of the entity. Used to see if the\n * entity was terminated with a semicolon.\n * @param expectedLength The minimum number of characters that should be\n * consumed. Used to validate that at least one digit\n * was consumed.\n * @returns The number of characters that were consumed.\n */\n emitNumericEntity(lastCp, expectedLength) {\n var _a;\n // Ensure we consumed at least one digit.\n if (this.consumed <= expectedLength) {\n (_a = this.errors) === null || _a === void 0 ? void 0 : _a.absenceOfDigitsInNumericCharacterReference(this.consumed);\n return 0;\n }\n // Figure out if this is a legit end of the entity\n if (lastCp === CharCodes.SEMI) {\n this.consumed += 1;\n }\n else if (this.decodeMode === DecodingMode.Strict) {\n return 0;\n }\n this.emitCodePoint(replaceCodePoint(this.result), this.consumed);\n if (this.errors) {\n if (lastCp !== CharCodes.SEMI) {\n this.errors.missingSemicolonAfterCharacterReference();\n }\n this.errors.validateNumericCharacterReference(this.result);\n }\n return this.consumed;\n }\n /**\n * Parses a named entity.\n *\n * Equivalent to the `Named character reference state` in the HTML spec.\n *\n * @param str The string containing the entity (or a continuation of the entity).\n * @param offset The current offset.\n * @returns The number of characters that were consumed, or -1 if the entity is incomplete.\n */\n stateNamedEntity(str, offset) {\n const { decodeTree } = this;\n let current = decodeTree[this.treeIndex];\n // The mask is the number of bytes of the value, including the current byte.\n let valueLength = (current & BinTrieFlags.VALUE_LENGTH) >> 14;\n for (; offset < str.length; offset++, this.excess++) {\n const char = str.charCodeAt(offset);\n this.treeIndex = determineBranch(decodeTree, current, this.treeIndex + Math.max(1, valueLength), char);\n if (this.treeIndex < 0) {\n return this.result === 0 ||\n // If we are parsing an attribute\n (this.decodeMode === DecodingMode.Attribute &&\n // We shouldn't have consumed any characters after the entity,\n (valueLength === 0 ||\n // And there should be no invalid characters.\n isEntityInAttributeInvalidEnd(char)))\n ? 0\n : this.emitNotTerminatedNamedEntity();\n }\n current = decodeTree[this.treeIndex];\n valueLength = (current & BinTrieFlags.VALUE_LENGTH) >> 14;\n // If the branch is a value, store it and continue\n if (valueLength !== 0) {\n // If the entity is terminated by a semicolon, we are done.\n if (char === CharCodes.SEMI) {\n return this.emitNamedEntityData(this.treeIndex, valueLength, this.consumed + this.excess);\n }\n // If we encounter a non-terminated (legacy) entity while parsing strictly, then ignore it.\n if (this.decodeMode !== DecodingMode.Strict) {\n this.result = this.treeIndex;\n this.consumed += this.excess;\n this.excess = 0;\n }\n }\n }\n return -1;\n }\n /**\n * Emit a named entity that was not terminated with a semicolon.\n *\n * @returns The number of characters consumed.\n */\n emitNotTerminatedNamedEntity() {\n var _a;\n const { result, decodeTree } = this;\n const valueLength = (decodeTree[result] & BinTrieFlags.VALUE_LENGTH) >> 14;\n this.emitNamedEntityData(result, valueLength, this.consumed);\n (_a = this.errors) === null || _a === void 0 ? void 0 : _a.missingSemicolonAfterCharacterReference();\n return this.consumed;\n }\n /**\n * Emit a named entity.\n *\n * @param result The index of the entity in the decode tree.\n * @param valueLength The number of bytes in the entity.\n * @param consumed The number of characters consumed.\n *\n * @returns The number of characters consumed.\n */\n emitNamedEntityData(result, valueLength, consumed) {\n const { decodeTree } = this;\n this.emitCodePoint(valueLength === 1\n ? decodeTree[result] & ~BinTrieFlags.VALUE_LENGTH\n : decodeTree[result + 1], consumed);\n if (valueLength === 3) {\n // For multi-byte values, we need to emit the second byte.\n this.emitCodePoint(decodeTree[result + 2], consumed);\n }\n return consumed;\n }\n /**\n * Signal to the parser that the end of the input was reached.\n *\n * Remaining data will be emitted and relevant errors will be produced.\n *\n * @returns The number of characters consumed.\n */\n end() {\n var _a;\n switch (this.state) {\n case EntityDecoderState.NamedEntity: {\n // Emit a named entity if we have one.\n return this.result !== 0 &&\n (this.decodeMode !== DecodingMode.Attribute ||\n this.result === this.treeIndex)\n ? this.emitNotTerminatedNamedEntity()\n : 0;\n }\n // Otherwise, emit a numeric entity if we have one.\n case EntityDecoderState.NumericDecimal: {\n return this.emitNumericEntity(0, 2);\n }\n case EntityDecoderState.NumericHex: {\n return this.emitNumericEntity(0, 3);\n }\n case EntityDecoderState.NumericStart: {\n (_a = this.errors) === null || _a === void 0 ? void 0 : _a.absenceOfDigitsInNumericCharacterReference(this.consumed);\n return 0;\n }\n case EntityDecoderState.EntityStart: {\n // Return 0 if we have no entity.\n return 0;\n }\n }\n }\n}\n/**\n * Creates a function that decodes entities in a string.\n *\n * @param decodeTree The decode tree.\n * @returns A function that decodes entities in a string.\n */\nfunction getDecoder(decodeTree) {\n let ret = \"\";\n const decoder = new EntityDecoder(decodeTree, (str) => (ret += fromCodePoint(str)));\n return function decodeWithTrie(str, decodeMode) {\n let lastIndex = 0;\n let offset = 0;\n while ((offset = str.indexOf(\"&\", offset)) >= 0) {\n ret += str.slice(lastIndex, offset);\n decoder.startEntity(decodeMode);\n const len = decoder.write(str, \n // Skip the \"&\"\n offset + 1);\n if (len < 0) {\n lastIndex = offset + decoder.end();\n break;\n }\n lastIndex = offset + len;\n // If `len` is 0, skip the current `&` and continue.\n offset = len === 0 ? lastIndex + 1 : lastIndex;\n }\n const result = ret + str.slice(lastIndex);\n // Make sure we don't keep a reference to the final string.\n ret = \"\";\n return result;\n };\n}\n/**\n * Determines the branch of the current node that is taken given the current\n * character. This function is used to traverse the trie.\n *\n * @param decodeTree The trie.\n * @param current The current node.\n * @param nodeIdx The index right after the current node and its value.\n * @param char The current character.\n * @returns The index of the next node, or -1 if no branch is taken.\n */\nexport function determineBranch(decodeTree, current, nodeIdx, char) {\n const branchCount = (current & BinTrieFlags.BRANCH_LENGTH) >> 7;\n const jumpOffset = current & BinTrieFlags.JUMP_TABLE;\n // Case 1: Single branch encoded in jump offset\n if (branchCount === 0) {\n return jumpOffset !== 0 && char === jumpOffset ? nodeIdx : -1;\n }\n // Case 2: Multiple branches encoded in jump table\n if (jumpOffset) {\n const value = char - jumpOffset;\n return value < 0 || value >= branchCount\n ? -1\n : decodeTree[nodeIdx + value] - 1;\n }\n // Case 3: Multiple branches encoded in dictionary\n // Binary search for the character.\n let lo = nodeIdx;\n let hi = lo + branchCount - 1;\n while (lo <= hi) {\n const mid = (lo + hi) >>> 1;\n const midVal = decodeTree[mid];\n if (midVal < char) {\n lo = mid + 1;\n }\n else if (midVal > char) {\n hi = mid - 1;\n }\n else {\n return decodeTree[mid + branchCount];\n }\n }\n return -1;\n}\nconst htmlDecoder = getDecoder(htmlDecodeTree);\nconst xmlDecoder = getDecoder(xmlDecodeTree);\n/**\n * Decodes an HTML string.\n *\n * @param str The string to decode.\n * @param mode The decoding mode.\n * @returns The decoded string.\n */\nexport function decodeHTML(str, mode = DecodingMode.Legacy) {\n return htmlDecoder(str, mode);\n}\n/**\n * Decodes an HTML string in an attribute.\n *\n * @param str The string to decode.\n * @returns The decoded string.\n */\nexport function decodeHTMLAttribute(str) {\n return htmlDecoder(str, DecodingMode.Attribute);\n}\n/**\n * Decodes an HTML string, requiring all entities to be terminated by a semicolon.\n *\n * @param str The string to decode.\n * @returns The decoded string.\n */\nexport function decodeHTMLStrict(str) {\n return htmlDecoder(str, DecodingMode.Strict);\n}\n/**\n * Decodes an XML string, requiring all entities to be terminated by a semicolon.\n *\n * @param str The string to decode.\n * @returns The decoded string.\n */\nexport function decodeXML(str) {\n return xmlDecoder(str, DecodingMode.Strict);\n}\n//# sourceMappingURL=decode.js.map","import { EntityDecoder, DecodingMode, htmlDecodeTree, xmlDecodeTree, } from \"entities/lib/decode.js\";\nvar CharCodes;\n(function (CharCodes) {\n CharCodes[CharCodes[\"Tab\"] = 9] = \"Tab\";\n CharCodes[CharCodes[\"NewLine\"] = 10] = \"NewLine\";\n CharCodes[CharCodes[\"FormFeed\"] = 12] = \"FormFeed\";\n CharCodes[CharCodes[\"CarriageReturn\"] = 13] = \"CarriageReturn\";\n CharCodes[CharCodes[\"Space\"] = 32] = \"Space\";\n CharCodes[CharCodes[\"ExclamationMark\"] = 33] = \"ExclamationMark\";\n CharCodes[CharCodes[\"Number\"] = 35] = \"Number\";\n CharCodes[CharCodes[\"Amp\"] = 38] = \"Amp\";\n CharCodes[CharCodes[\"SingleQuote\"] = 39] = \"SingleQuote\";\n CharCodes[CharCodes[\"DoubleQuote\"] = 34] = \"DoubleQuote\";\n CharCodes[CharCodes[\"Dash\"] = 45] = \"Dash\";\n CharCodes[CharCodes[\"Slash\"] = 47] = \"Slash\";\n CharCodes[CharCodes[\"Zero\"] = 48] = \"Zero\";\n CharCodes[CharCodes[\"Nine\"] = 57] = \"Nine\";\n CharCodes[CharCodes[\"Semi\"] = 59] = \"Semi\";\n CharCodes[CharCodes[\"Lt\"] = 60] = \"Lt\";\n CharCodes[CharCodes[\"Eq\"] = 61] = \"Eq\";\n CharCodes[CharCodes[\"Gt\"] = 62] = \"Gt\";\n CharCodes[CharCodes[\"Questionmark\"] = 63] = \"Questionmark\";\n CharCodes[CharCodes[\"UpperA\"] = 65] = \"UpperA\";\n CharCodes[CharCodes[\"LowerA\"] = 97] = \"LowerA\";\n CharCodes[CharCodes[\"UpperF\"] = 70] = \"UpperF\";\n CharCodes[CharCodes[\"LowerF\"] = 102] = \"LowerF\";\n CharCodes[CharCodes[\"UpperZ\"] = 90] = \"UpperZ\";\n CharCodes[CharCodes[\"LowerZ\"] = 122] = \"LowerZ\";\n CharCodes[CharCodes[\"LowerX\"] = 120] = \"LowerX\";\n CharCodes[CharCodes[\"OpeningSquareBracket\"] = 91] = \"OpeningSquareBracket\";\n})(CharCodes || (CharCodes = {}));\n/** All the states the tokenizer can be in. */\nvar State;\n(function (State) {\n State[State[\"Text\"] = 1] = \"Text\";\n State[State[\"BeforeTagName\"] = 2] = \"BeforeTagName\";\n State[State[\"InTagName\"] = 3] = \"InTagName\";\n State[State[\"InSelfClosingTag\"] = 4] = \"InSelfClosingTag\";\n State[State[\"BeforeClosingTagName\"] = 5] = \"BeforeClosingTagName\";\n State[State[\"InClosingTagName\"] = 6] = \"InClosingTagName\";\n State[State[\"AfterClosingTagName\"] = 7] = \"AfterClosingTagName\";\n // Attributes\n State[State[\"BeforeAttributeName\"] = 8] = \"BeforeAttributeName\";\n State[State[\"InAttributeName\"] = 9] = \"InAttributeName\";\n State[State[\"AfterAttributeName\"] = 10] = \"AfterAttributeName\";\n State[State[\"BeforeAttributeValue\"] = 11] = \"BeforeAttributeValue\";\n State[State[\"InAttributeValueDq\"] = 12] = \"InAttributeValueDq\";\n State[State[\"InAttributeValueSq\"] = 13] = \"InAttributeValueSq\";\n State[State[\"InAttributeValueNq\"] = 14] = \"InAttributeValueNq\";\n // Declarations\n State[State[\"BeforeDeclaration\"] = 15] = \"BeforeDeclaration\";\n State[State[\"InDeclaration\"] = 16] = \"InDeclaration\";\n // Processing instructions\n State[State[\"InProcessingInstruction\"] = 17] = \"InProcessingInstruction\";\n // Comments & CDATA\n State[State[\"BeforeComment\"] = 18] = \"BeforeComment\";\n State[State[\"CDATASequence\"] = 19] = \"CDATASequence\";\n State[State[\"InSpecialComment\"] = 20] = \"InSpecialComment\";\n State[State[\"InCommentLike\"] = 21] = \"InCommentLike\";\n // Special tags\n State[State[\"BeforeSpecialS\"] = 22] = \"BeforeSpecialS\";\n State[State[\"BeforeSpecialT\"] = 23] = \"BeforeSpecialT\";\n State[State[\"SpecialStartSequence\"] = 24] = \"SpecialStartSequence\";\n State[State[\"InSpecialTag\"] = 25] = \"InSpecialTag\";\n State[State[\"InEntity\"] = 26] = \"InEntity\";\n})(State || (State = {}));\nfunction isWhitespace(c) {\n return (c === CharCodes.Space ||\n c === CharCodes.NewLine ||\n c === CharCodes.Tab ||\n c === CharCodes.FormFeed ||\n c === CharCodes.CarriageReturn);\n}\nfunction isEndOfTagSection(c) {\n return c === CharCodes.Slash || c === CharCodes.Gt || isWhitespace(c);\n}\nfunction isASCIIAlpha(c) {\n return ((c >= CharCodes.LowerA && c <= CharCodes.LowerZ) ||\n (c >= CharCodes.UpperA && c <= CharCodes.UpperZ));\n}\nexport var QuoteType;\n(function (QuoteType) {\n QuoteType[QuoteType[\"NoValue\"] = 0] = \"NoValue\";\n QuoteType[QuoteType[\"Unquoted\"] = 1] = \"Unquoted\";\n QuoteType[QuoteType[\"Single\"] = 2] = \"Single\";\n QuoteType[QuoteType[\"Double\"] = 3] = \"Double\";\n})(QuoteType || (QuoteType = {}));\n/**\n * Sequences used to match longer strings.\n *\n * We don't have `Script`, `Style`, or `Title` here. Instead, we re-use the *End\n * sequences with an increased offset.\n */\nconst Sequences = {\n Cdata: new Uint8Array([0x43, 0x44, 0x41, 0x54, 0x41, 0x5b]), // CDATA[\n CdataEnd: new Uint8Array([0x5d, 0x5d, 0x3e]), // ]]>\n CommentEnd: new Uint8Array([0x2d, 0x2d, 0x3e]), // `-->`\n ScriptEnd: new Uint8Array([0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74]), // ` this.emitCodePoint(cp, consumed));\n }\n reset() {\n this.state = State.Text;\n this.buffer = \"\";\n this.sectionStart = 0;\n this.index = 0;\n this.baseState = State.Text;\n this.currentSequence = undefined;\n this.running = true;\n this.offset = 0;\n }\n write(chunk) {\n this.offset += this.buffer.length;\n this.buffer = chunk;\n this.parse();\n }\n end() {\n if (this.running)\n this.finish();\n }\n pause() {\n this.running = false;\n }\n resume() {\n this.running = true;\n if (this.index < this.buffer.length + this.offset) {\n this.parse();\n }\n }\n stateText(c) {\n if (c === CharCodes.Lt ||\n (!this.decodeEntities && this.fastForwardTo(CharCodes.Lt))) {\n if (this.index > this.sectionStart) {\n this.cbs.ontext(this.sectionStart, this.index);\n }\n this.state = State.BeforeTagName;\n this.sectionStart = this.index;\n }\n else if (this.decodeEntities && c === CharCodes.Amp) {\n this.startEntity();\n }\n }\n stateSpecialStartSequence(c) {\n const isEnd = this.sequenceIndex === this.currentSequence.length;\n const isMatch = isEnd\n ? // If we are at the end of the sequence, make sure the tag name has ended\n isEndOfTagSection(c)\n : // Otherwise, do a case-insensitive comparison\n (c | 0x20) === this.currentSequence[this.sequenceIndex];\n if (!isMatch) {\n this.isSpecial = false;\n }\n else if (!isEnd) {\n this.sequenceIndex++;\n return;\n }\n this.sequenceIndex = 0;\n this.state = State.InTagName;\n this.stateInTagName(c);\n }\n /** Look for an end tag. For tags, also decode entities. */\n stateInSpecialTag(c) {\n if (this.sequenceIndex === this.currentSequence.length) {\n if (c === CharCodes.Gt || isWhitespace(c)) {\n const endOfText = this.index - this.currentSequence.length;\n if (this.sectionStart < endOfText) {\n // Spoof the index so that reported locations match up.\n const actualIndex = this.index;\n this.index = endOfText;\n this.cbs.ontext(this.sectionStart, endOfText);\n this.index = actualIndex;\n }\n this.isSpecial = false;\n this.sectionStart = endOfText + 2; // Skip over the `</`\n this.stateInClosingTagName(c);\n return; // We are done; skip the rest of the function.\n }\n this.sequenceIndex = 0;\n }\n if ((c | 0x20) === this.currentSequence[this.sequenceIndex]) {\n this.sequenceIndex += 1;\n }\n else if (this.sequenceIndex === 0) {\n if (this.currentSequence === Sequences.TitleEnd) {\n // We have to parse entities in <title> tags.\n if (this.decodeEntities && c === CharCodes.Amp) {\n this.startEntity();\n }\n }\n else if (this.fastForwardTo(CharCodes.Lt)) {\n // Outside of <title> tags, we can fast-forward.\n this.sequenceIndex = 1;\n }\n }\n else {\n // If we see a `<`, set the sequence index to 1; useful for eg. `<</script>`.\n this.sequenceIndex = Number(c === CharCodes.Lt);\n }\n }\n stateCDATASequence(c) {\n if (c === Sequences.Cdata[this.sequenceIndex]) {\n if (++this.sequenceIndex === Sequences.Cdata.length) {\n this.state = State.InCommentLike;\n this.currentSequence = Sequences.CdataEnd;\n this.sequenceIndex = 0;\n this.sectionStart = this.index + 1;\n }\n }\n else {\n this.sequenceIndex = 0;\n this.state = State.InDeclaration;\n this.stateInDeclaration(c); // Reconsume the character\n }\n }\n /**\n * When we wait for one specific character, we can speed things up\n * by skipping through the buffer until we find it.\n *\n * @returns Whether the character was found.\n */\n fastForwardTo(c) {\n while (++this.index < this.buffer.length + this.offset) {\n if (this.buffer.charCodeAt(this.index - this.offset) === c) {\n return true;\n }\n }\n /*\n * We increment the index at the end of the `parse` loop,\n * so set it to `buffer.length - 1` here.\n *\n * TODO: Refactor `parse` to increment index before calling states.\n */\n this.index = this.buffer.length + this.offset - 1;\n return false;\n }\n /**\n * Comments and CDATA end with `-->` and `]]>`.\n *\n * Their common qualities are:\n * - Their end sequences have a distinct character they start with.\n * - That character is then repeated, so we have to check multiple repeats.\n * - All characters but the start character of the sequence can be skipped.\n */\n stateInCommentLike(c) {\n if (c === this.currentSequence[this.sequenceIndex]) {\n if (++this.sequenceIndex === this.currentSequence.length) {\n if (this.currentSequence === Sequences.CdataEnd) {\n this.cbs.oncdata(this.sectionStart, this.index, 2);\n }\n else {\n this.cbs.oncomment(this.sectionStart, this.index, 2);\n }\n this.sequenceIndex = 0;\n this.sectionStart = this.index + 1;\n this.state = State.Text;\n }\n }\n else if (this.sequenceIndex === 0) {\n // Fast-forward to the first character of the sequence\n if (this.fastForwardTo(this.currentSequence[0])) {\n this.sequenceIndex = 1;\n }\n }\n else if (c !== this.currentSequence[this.sequenceIndex - 1]) {\n // Allow long sequences, eg. --->, ]]]>\n this.sequenceIndex = 0;\n }\n }\n /**\n * HTML only allows ASCII alpha characters (a-z and A-Z) at the beginning of a tag name.\n *\n * XML allows a lot more characters here (@see https://www.w3.org/TR/REC-xml/#NT-NameStartChar).\n * We allow anything that wouldn't end the tag.\n */\n isTagStartChar(c) {\n return this.xmlMode ? !isEndOfTagSection(c) : isASCIIAlpha(c);\n }\n startSpecial(sequence, offset) {\n this.isSpecial = true;\n this.currentSequence = sequence;\n this.sequenceIndex = offset;\n this.state = State.SpecialStartSequence;\n }\n stateBeforeTagName(c) {\n if (c === CharCodes.ExclamationMark) {\n this.state = State.BeforeDeclaration;\n this.sectionStart = this.index + 1;\n }\n else if (c === CharCodes.Questionmark) {\n this.state = State.InProcessingInstruction;\n this.sectionStart = this.index + 1;\n }\n else if (this.isTagStartChar(c)) {\n const lower = c | 0x20;\n this.sectionStart = this.index;\n if (this.xmlMode) {\n this.state = State.InTagName;\n }\n else if (lower === Sequences.ScriptEnd[2]) {\n this.state = State.BeforeSpecialS;\n }\n else if (lower === Sequences.TitleEnd[2]) {\n this.state = State.BeforeSpecialT;\n }\n else {\n this.state = State.InTagName;\n }\n }\n else if (c === CharCodes.Slash) {\n this.state = State.BeforeClosingTagName;\n }\n else {\n this.state = State.Text;\n this.stateText(c);\n }\n }\n stateInTagName(c) {\n if (isEndOfTagSection(c)) {\n this.cbs.onopentagname(this.sectionStart, this.index);\n this.sectionStart = -1;\n this.state = State.BeforeAttributeName;\n this.stateBeforeAttributeName(c);\n }\n }\n stateBeforeClosingTagName(c) {\n if (isWhitespace(c)) {\n // Ignore\n }\n else if (c === CharCodes.Gt) {\n this.state = State.Text;\n }\n else {\n this.state = this.isTagStartChar(c)\n ? State.InClosingTagName\n : State.InSpecialComment;\n this.sectionStart = this.index;\n }\n }\n stateInClosingTagName(c) {\n if (c === CharCodes.Gt || isWhitespace(c)) {\n this.cbs.onclosetag(this.sectionStart, this.index);\n this.sectionStart = -1;\n this.state = State.AfterClosingTagName;\n this.stateAfterClosingTagName(c);\n }\n }\n stateAfterClosingTagName(c) {\n // Skip everything until \">\"\n if (c === CharCodes.Gt || this.fastForwardTo(CharCodes.Gt)) {\n this.state = State.Text;\n this.sectionStart = this.index + 1;\n }\n }\n stateBeforeAttributeName(c) {\n if (c === CharCodes.Gt) {\n this.cbs.onopentagend(this.index);\n if (this.isSpecial) {\n this.state = State.InSpecialTag;\n this.sequenceIndex = 0;\n }\n else {\n this.state = State.Text;\n }\n this.sectionStart = this.index + 1;\n }\n else if (c === CharCodes.Slash) {\n this.state = State.InSelfClosingTag;\n }\n else if (!isWhitespace(c)) {\n this.state = State.InAttributeName;\n this.sectionStart = this.index;\n }\n }\n stateInSelfClosingTag(c) {\n if (c === CharCodes.Gt) {\n this.cbs.onselfclosingtag(this.index);\n this.state = State.Text;\n this.sectionStart = this.index + 1;\n this.isSpecial = false; // Reset special state, in case of self-closing special tags\n }\n else if (!isWhitespace(c)) {\n this.state = State.BeforeAttributeName;\n this.stateBeforeAttributeName(c);\n }\n }\n stateInAttributeName(c) {\n if (c === CharCodes.Eq || isEndOfTagSection(c)) {\n this.cbs.onattribname(this.sectionStart, this.index);\n this.sectionStart = this.index;\n this.state = State.AfterAttributeName;\n this.stateAfterAttributeName(c);\n }\n }\n stateAfterAttributeName(c) {\n if (c === CharCodes.Eq) {\n this.state = State.BeforeAttributeValue;\n }\n else if (c === CharCodes.Slash || c === CharCodes.Gt) {\n this.cbs.onattribend(QuoteType.NoValue, this.sectionStart);\n this.sectionStart = -1;\n this.state = State.BeforeAttributeName;\n this.stateBeforeAttributeName(c);\n }\n else if (!isWhitespace(c)) {\n this.cbs.onattribend(QuoteType.NoValue, this.sectionStart);\n this.state = State.InAttributeName;\n this.sectionStart = this.index;\n }\n }\n stateBeforeAttributeValue(c) {\n if (c === CharCodes.DoubleQuote) {\n this.state = State.InAttributeValueDq;\n this.sectionStart = this.index + 1;\n }\n else if (c === CharCodes.SingleQuote) {\n this.state = State.InAttributeValueSq;\n this.sectionStart = this.index + 1;\n }\n else if (!isWhitespace(c)) {\n this.sectionStart = this.index;\n this.state = State.InAttributeValueNq;\n this.stateInAttributeValueNoQuotes(c); // Reconsume token\n }\n }\n handleInAttributeValue(c, quote) {\n if (c === quote ||\n (!this.decodeEntities && this.fastForwardTo(quote))) {\n this.cbs.onattribdata(this.sectionStart, this.index);\n this.sectionStart = -1;\n this.cbs.onattribend(quote === CharCodes.DoubleQuote\n ? QuoteType.Double\n : QuoteType.Single, this.index + 1);\n this.state = State.BeforeAttributeName;\n }\n else if (this.decodeEntities && c === CharCodes.Amp) {\n this.startEntity();\n }\n }\n stateInAttributeValueDoubleQuotes(c) {\n this.handleInAttributeValue(c, CharCodes.DoubleQuote);\n }\n stateInAttributeValueSingleQuotes(c) {\n this.handleInAttributeValue(c, CharCodes.SingleQuote);\n }\n stateInAttributeValueNoQuotes(c) {\n if (isWhitespace(c) || c === CharCodes.Gt) {\n this.cbs.onattribdata(this.sectionStart, this.index);\n this.sectionStart = -1;\n this.cbs.onattribend(QuoteType.Unquoted, this.index);\n this.state = State.BeforeAttributeName;\n this.stateBeforeAttributeName(c);\n }\n else if (this.decodeEntities && c === CharCodes.Amp) {\n this.startEntity();\n }\n }\n stateBeforeDeclaration(c) {\n if (c === CharCodes.OpeningSquareBracket) {\n this.state = State.CDATASequence;\n this.sequenceIndex = 0;\n }\n else {\n this.state =\n c === CharCodes.Dash\n ? State.BeforeComment\n : State.InDeclaration;\n }\n }\n stateInDeclaration(c) {\n if (c === CharCodes.Gt || this.fastForwardTo(CharCodes.Gt)) {\n this.cbs.ondeclaration(this.sectionStart, this.index);\n this.state = State.Text;\n this.sectionStart = this.index + 1;\n }\n }\n stateInProcessingInstruction(c) {\n if (c === CharCodes.Gt || this.fastForwardTo(CharCodes.Gt)) {\n this.cbs.onprocessinginstruction(this.sectionStart, this.index);\n this.state = State.Text;\n this.sectionStart = this.index + 1;\n }\n }\n stateBeforeComment(c) {\n if (c === CharCodes.Dash) {\n this.state = State.InCommentLike;\n this.currentSequence = Sequences.CommentEnd;\n // Allow short comments (eg. <!-->)\n this.sequenceIndex = 2;\n this.sectionStart = this.index + 1;\n }\n else {\n this.state = State.InDeclaration;\n }\n }\n stateInSpecialComment(c) {\n if (c === CharCodes.Gt || this.fastForwardTo(CharCodes.Gt)) {\n this.cbs.oncomment(this.sectionStart, this.index, 0);\n this.state = State.Text;\n this.sectionStart = this.index + 1;\n }\n }\n stateBeforeSpecialS(c) {\n const lower = c | 0x20;\n if (lower === Sequences.ScriptEnd[3]) {\n this.startSpecial(Sequences.ScriptEnd, 4);\n }\n else if (lower === Sequences.StyleEnd[3]) {\n this.startSpecial(Sequences.StyleEnd, 4);\n }\n else {\n this.state = State.InTagName;\n this.stateInTagName(c); // Consume the token again\n }\n }\n stateBeforeSpecialT(c) {\n const lower = c | 0x20;\n if (lower === Sequences.TitleEnd[3]) {\n this.startSpecial(Sequences.TitleEnd, 4);\n }\n else if (lower === Sequences.TextareaEnd[3]) {\n this.startSpecial(Sequences.TextareaEnd, 4);\n }\n else {\n this.state = State.InTagName;\n this.stateInTagName(c); // Consume the token again\n }\n }\n startEntity() {\n this.baseState = this.state;\n this.state = State.InEntity;\n this.entityStart = this.index;\n this.entityDecoder.startEntity(this.xmlMode\n ? DecodingMode.Strict\n : this.baseState === State.Text ||\n this.baseState === State.InSpecialTag\n ? DecodingMode.Legacy\n : DecodingMode.Attribute);\n }\n stateInEntity() {\n const length = this.entityDecoder.write(this.buffer, this.index - this.offset);\n // If `length` is positive, we are done with the entity.\n if (length >= 0) {\n this.state = this.baseState;\n if (length === 0) {\n this.index = this.entityStart;\n }\n }\n else {\n // Mark buffer as consumed.\n this.index = this.offset + this.buffer.length - 1;\n }\n }\n /**\n * Remove data that has already been consumed from the buffer.\n */\n cleanup() {\n // If we are inside of text or attributes, emit what we already have.\n if (this.running && this.sectionStart !== this.index) {\n if (this.state === State.Text ||\n (this.state === State.InSpecialTag && this.sequenceIndex === 0)) {\n this.cbs.ontext(this.sectionStart, this.index);\n this.sectionStart = this.index;\n }\n else if (this.state === State.InAttributeValueDq ||\n this.state === State.InAttributeValueSq ||\n this.state === State.InAttributeValueNq) {\n this.cbs.onattribdata(this.sectionStart, this.index);\n this.sectionStart = this.index;\n }\n }\n }\n shouldContinue() {\n return this.index < this.buffer.length + this.offset && this.running;\n }\n /**\n * Iterates through the buffer, calling the function corresponding to the current state.\n *\n * States that are more likely to be hit are higher up, as a performance improvement.\n */\n parse() {\n while (this.shouldContinue()) {\n const c = this.buffer.charCodeAt(this.index - this.offset);\n switch (this.state) {\n case State.Text: {\n this.stateText(c);\n break;\n }\n case State.SpecialStartSequence: {\n this.stateSpecialStartSequence(c);\n break;\n }\n case State.InSpecialTag: {\n this.stateInSpecialTag(c);\n break;\n }\n case State.CDATASequence: {\n this.stateCDATASequence(c);\n break;\n }\n case State.InAttributeValueDq: {\n this.stateInAttributeValueDoubleQuotes(c);\n break;\n }\n case State.InAttributeName: {\n this.stateInAttributeName(c);\n break;\n }\n case State.InCommentLike: {\n this.stateInCommentLike(c);\n break;\n }\n case State.InSpecialComment: {\n this.stateInSpecialComment(c);\n break;\n }\n case State.BeforeAttributeName: {\n this.stateBeforeAttributeName(c);\n break;\n }\n case State.InTagName: {\n this.stateInTagName(c);\n break;\n }\n case State.InClosingTagName: {\n this.stateInClosingTagName(c);\n break;\n }\n case State.BeforeTagName: {\n this.stateBeforeTagName(c);\n break;\n }\n case State.AfterAttributeName: {\n this.stateAfterAttributeName(c);\n break;\n }\n case State.InAttributeValueSq: {\n this.stateInAttributeValueSingleQuotes(c);\n break;\n }\n case State.BeforeAttributeValue: {\n this.stateBeforeAttributeValue(c);\n break;\n }\n case State.BeforeClosingTagName: {\n this.stateBeforeClosingTagName(c);\n break;\n }\n case State.AfterClosingTagName: {\n this.stateAfterClosingTagName(c);\n break;\n }\n case State.BeforeSpecialS: {\n this.stateBeforeSpecialS(c);\n break;\n }\n case State.BeforeSpecialT: {\n this.stateBeforeSpecialT(c);\n break;\n }\n case State.InAttributeValueNq: {\n this.stateInAttributeValueNoQuotes(c);\n break;\n }\n case State.InSelfClosingTag: {\n this.stateInSelfClosingTag(c);\n break;\n }\n case State.InDeclaration: {\n this.stateInDeclaration(c);\n break;\n }\n case State.BeforeDeclaration: {\n this.stateBeforeDeclaration(c);\n break;\n }\n case State.BeforeComment: {\n this.stateBeforeComment(c);\n break;\n }\n case State.InProcessingInstruction: {\n this.stateInProcessingInstruction(c);\n break;\n }\n case State.InEntity: {\n this.stateInEntity();\n break;\n }\n }\n this.index++;\n }\n this.cleanup();\n }\n finish() {\n if (this.state === State.InEntity) {\n this.entityDecoder.end();\n this.state = this.baseState;\n }\n this.handleTrailingData();\n this.cbs.onend();\n }\n /** Handle any trailing data. */\n handleTrailingData() {\n const endIndex = this.buffer.length + this.offset;\n // If there is no remaining data, we are done.\n if (this.sectionStart >= endIndex) {\n return;\n }\n if (this.state === State.InCommentLike) {\n if (this.currentSequence === Sequences.CdataEnd) {\n this.cbs.oncdata(this.sectionStart, endIndex, 0);\n }\n else {\n this.cbs.oncomment(this.sectionStart, endIndex, 0);\n }\n }\n else if (this.state === State.InTagName ||\n this.state === State.BeforeAttributeName ||\n this.state === State.BeforeAttributeValue ||\n this.state === State.AfterAttributeName ||\n this.state === State.InAttributeName ||\n this.state === State.InAttributeValueSq ||\n this.state === State.InAttributeValueDq ||\n this.state === State.InAttributeValueNq ||\n this.state === State.InClosingTagName) {\n /*\n * If we are currently in an opening or closing tag, us not calling the\n * respective callback signals that the tag should be ignored.\n */\n }\n else {\n this.cbs.ontext(this.sectionStart, endIndex);\n }\n }\n emitCodePoint(cp, consumed) {\n if (this.baseState !== State.Text &&\n this.baseState !== State.InSpecialTag) {\n if (this.sectionStart < this.entityStart) {\n this.cbs.onattribdata(this.sectionStart, this.entityStart);\n }\n this.sectionStart = this.entityStart + consumed;\n this.index = this.sectionStart - 1;\n this.cbs.onattribentity(cp);\n }\n else {\n if (this.sectionStart < this.entityStart) {\n this.cbs.ontext(this.sectionStart, this.entityStart);\n }\n this.sectionStart = this.entityStart + consumed;\n this.index = this.sectionStart - 1;\n this.cbs.ontextentity(cp, this.sectionStart);\n }\n }\n}\n//# sourceMappingURL=Tokenizer.js.map","import Tokenizer, { QuoteType } from \"./Tokenizer.js\";\nimport { fromCodePoint } from \"entities/lib/decode.js\";\nconst formTags = new Set([\n \"input\",\n \"option\",\n \"optgroup\",\n \"select\",\n \"button\",\n \"datalist\",\n \"textarea\",\n]);\nconst pTag = new Set([\"p\"]);\nconst tableSectionTags = new Set([\"thead\", \"tbody\"]);\nconst ddtTags = new Set([\"dd\", \"dt\"]);\nconst rtpTags = new Set([\"rt\", \"rp\"]);\nconst openImpliesClose = new Map([\n [\"tr\", new Set([\"tr\", \"th\", \"td\"])],\n [\"th\", new Set([\"th\"])],\n [\"td\", new Set([\"thead\", \"th\", \"td\"])],\n [\"body\", new Set([\"head\", \"link\", \"script\"])],\n [\"li\", new Set([\"li\"])],\n [\"p\", pTag],\n [\"h1\", pTag],\n [\"h2\", pTag],\n [\"h3\", pTag],\n [\"h4\", pTag],\n [\"h5\", pTag],\n [\"h6\", pTag],\n [\"select\", formTags],\n [\"input\", formTags],\n [\"output\", formTags],\n [\"button\", formTags],\n [\"datalist\", formTags],\n [\"textarea\", formTags],\n [\"option\", new Set([\"option\"])],\n [\"optgroup\", new Set([\"optgroup\", \"option\"])],\n [\"dd\", ddtTags],\n [\"dt\", ddtTags],\n [\"address\", pTag],\n [\"article\", pTag],\n [\"aside\", pTag],\n [\"blockquote\", pTag],\n [\"details\", pTag],\n [\"div\", pTag],\n [\"dl\", pTag],\n [\"fieldset\", pTag],\n [\"figcaption\", pTag],\n [\"figure\", pTag],\n [\"footer\", pTag],\n [\"form\", pTag],\n [\"header\", pTag],\n [\"hr\", pTag],\n [\"main\", pTag],\n [\"nav\", pTag],\n [\"ol\", pTag],\n [\"pre\", pTag],\n [\"section\", pTag],\n [\"table\", pTag],\n [\"ul\", pTag],\n [\"rt\", rtpTags],\n [\"rp\", rtpTags],\n [\"tbody\", tableSectionTags],\n [\"tfoot\", tableSectionTags],\n]);\nconst voidElements = new Set([\n \"area\",\n \"base\",\n \"basefont\",\n \"br\",\n \"col\",\n \"command\",\n \"embed\",\n \"frame\",\n \"hr\",\n \"img\",\n \"input\",\n \"isindex\",\n \"keygen\",\n \"link\",\n \"meta\",\n \"param\",\n \"source\",\n \"track\",\n \"wbr\",\n]);\nconst foreignContextElements = new Set([\"math\", \"svg\"]);\nconst htmlIntegrationElements = new Set([\n \"mi\",\n \"mo\",\n \"mn\",\n \"ms\",\n \"mtext\",\n \"annotation-xml\",\n \"foreignobject\",\n \"desc\",\n \"title\",\n]);\nconst reNameEnd = /\\s|\\//;\nexport class Parser {\n constructor(cbs, options = {}) {\n var _a, _b, _c, _d, _e, _f;\n this.options = options;\n /** The start index of the last event. */\n this.startIndex = 0;\n /** The end index of the last event. */\n this.endIndex = 0;\n /**\n * Store the start index of the current open tag,\n * so we can update the start index for attributes.\n */\n this.openTagStart = 0;\n this.tagname = \"\";\n this.attribname = \"\";\n this.attribvalue = \"\";\n this.attribs = null;\n this.stack = [];\n this.buffers = [];\n this.bufferOffset = 0;\n /** The index of the last written buffer. Used when resuming after a `pause()`. */\n this.writeIndex = 0;\n /** Indicates whether the parser has finished running / `.end` has been called. */\n this.ended = false;\n this.cbs = cbs !== null && cbs !== void 0 ? cbs : {};\n this.htmlMode = !this.options.xmlMode;\n this.lowerCaseTagNames = (_a = options.lowerCaseTags) !== null && _a !== void 0 ? _a : this.htmlMode;\n this.lowerCaseAttributeNames =\n (_b = options.lowerCaseAttributeNames) !== null && _b !== void 0 ? _b : this.htmlMode;\n this.recognizeSelfClosing =\n (_c = options.recognizeSelfClosing) !== null && _c !== void 0 ? _c : !this.htmlMode;\n this.tokenizer = new ((_d = options.Tokenizer) !== null && _d !== void 0 ? _d : Tokenizer)(this.options, this);\n this.foreignContext = [!this.htmlMode];\n (_f = (_e = this.cbs).onparserinit) === null || _f === void 0 ? void 0 : _f.call(_e, this);\n }\n // Tokenizer event handlers\n /** @internal */\n ontext(start, endIndex) {\n var _a, _b;\n const data = this.getSlice(start, endIndex);\n this.endIndex = endIndex - 1;\n (_b = (_a = this.cbs).ontext) === null || _b === void 0 ? void 0 : _b.call(_a, data);\n this.startIndex = endIndex;\n }\n /** @internal */\n ontextentity(cp, endIndex) {\n var _a, _b;\n this.endIndex = endIndex - 1;\n (_b = (_a = this.cbs).ontext) === null || _b === void 0 ? void 0 : _b.call(_a, fromCodePoint(cp));\n this.startIndex = endIndex;\n }\n /**\n * Checks if the current tag is a void element. Override this if you want\n * to specify your own additional void elements.\n */\n isVoidElement(name) {\n return this.htmlMode && voidElements.has(name);\n }\n /** @internal */\n onopentagname(start, endIndex) {\n this.endIndex = endIndex;\n let name = this.getSlice(start, endIndex);\n if (this.lowerCaseTagNames) {\n name = name.toLowerCase();\n }\n this.emitOpenTag(name);\n }\n emitOpenTag(name) {\n var _a, _b, _c, _d;\n this.openTagStart = this.startIndex;\n this.tagname = name;\n const impliesClose = this.htmlMode && openImpliesClose.get(name);\n if (impliesClose) {\n while (this.stack.length > 0 && impliesClose.has(this.stack[0])) {\n const element = this.stack.shift();\n (_b = (_a = this.cbs).onclosetag) === null || _b === void 0 ? void 0 : _b.call(_a, element, true);\n }\n }\n if (!this.isVoidElement(name)) {\n this.stack.unshift(name);\n if (this.htmlMode) {\n if (foreignContextElements.has(name)) {\n this.foreignContext.unshift(true);\n }\n else if (htmlIntegrationElements.has(name)) {\n this.foreignContext.unshift(false);\n }\n }\n }\n (_d = (_c = this.cbs).onopentagname) === null || _d === void 0 ? void 0 : _d.call(_c, name);\n if (this.cbs.onopentag)\n this.attribs = {};\n }\n endOpenTag(isImplied) {\n var _a, _b;\n this.startIndex = this.openTagStart;\n if (this.attribs) {\n (_b = (_a = this.cbs).onopentag) === null || _b === void 0 ? void 0 : _b.call(_a, this.tagname, this.attribs, isImplied);\n this.attribs = null;\n }\n if (this.cbs.onclosetag && this.isVoidElement(this.tagname)) {\n this.cbs.onclosetag(this.tagname, true);\n }\n this.tagname = \"\";\n }\n /** @internal */\n onopentagend(endIndex) {\n this.endIndex = endIndex;\n this.endOpenTag(false);\n // Set `startIndex` for next node\n this.startIndex = endIndex + 1;\n }\n /** @internal */\n onclosetag(start, endIndex) {\n var _a, _b, _c, _d, _e, _f, _g, _h;\n this.endIndex = endIndex;\n let name = this.getSlice(start, endIndex);\n if (this.lowerCaseTagNames) {\n name = name.toLowerCase();\n }\n if (this.htmlMode &&\n (foreignContextElements.has(name) ||\n htmlIntegrationElements.has(name))) {\n this.foreignContext.shift();\n }\n if (!this.isVoidElement(name)) {\n const pos = this.stack.indexOf(name);\n if (pos !== -1) {\n for (let index = 0; index <= pos; index++) {\n const element = this.stack.shift();\n // We know the stack has sufficient elements.\n (_b = (_a = this.cbs).onclosetag) === null || _b === void 0 ? void 0 : _b.call(_a, element, index !== pos);\n }\n }\n else if (this.htmlMode && name === \"p\") {\n // Implicit open before close\n this.emitOpenTag(\"p\");\n this.closeCurrentTag(true);\n }\n }\n else if (this.htmlMode && name === \"br\") {\n // We can't use `emitOpenTag` for implicit open, as `br` would be implicitly closed.\n (_d = (_c = this.cbs).onopentagname) === null || _d === void 0 ? void 0 : _d.call(_c, \"br\");\n (_f = (_e = this.cbs).onopentag) === null || _f === void 0 ? void 0 : _f.call(_e, \"br\", {}, true);\n (_h = (_g = this.cbs).onclosetag) === null || _h === void 0 ? void 0 : _h.call(_g, \"br\", false);\n }\n // Set `startIndex` for next node\n this.startIndex = endIndex + 1;\n }\n /** @internal */\n onselfclosingtag(endIndex) {\n this.endIndex = endIndex;\n if (this.recognizeSelfClosing || this.foreignContext[0]) {\n this.closeCurrentTag(false);\n // Set `startIndex` for next node\n this.startIndex = endIndex + 1;\n }\n else {\n // Ignore the fact that the tag is self-closing.\n this.onopentagend(endIndex);\n }\n }\n closeCurrentTag(isOpenImplied) {\n var _a, _b;\n const name = this.tagname;\n this.endOpenTag(isOpenImplied);\n // Self-closing tags will be on the top of the stack\n if (this.stack[0] === name) {\n // If the opening tag isn't implied, the closing tag has to be implied.\n (_b = (_a = this.cbs).onclosetag) === null || _b === void 0 ? void 0 : _b.call(_a, name, !isOpenImplied);\n this.stack.shift();\n }\n }\n /** @internal */\n onattribname(start, endIndex) {\n this.startIndex = start;\n const name = this.getSlice(start, endIndex);\n this.attribname = this.lowerCaseAttributeNames\n ? name.toLowerCase()\n : name;\n }\n /** @internal */\n onattribdata(start, endIndex) {\n this.attribvalue += this.getSlice(start, endIndex);\n }\n /** @internal */\n onattribentity(cp) {\n this.attribvalue += fromCodePoint(cp);\n }\n /** @internal */\n onattribend(quote, endIndex) {\n var _a, _b;\n this.endIndex = endIndex;\n (_b = (_a = this.cbs).onattribute) === null || _b === void 0 ? void 0 : _b.call(_a, this.attribname, this.attribvalue, quote === QuoteType.Double\n ? '\"'\n : quote === QuoteType.Single\n ? \"'\"\n : quote === QuoteType.NoValue\n ? undefined\n : null);\n if (this.attribs &&\n !Object.prototype.hasOwnProperty.call(this.attribs, this.attribname)) {\n this.attribs[this.attribname] = this.attribvalue;\n }\n this.attribvalue = \"\";\n }\n getInstructionName(value) {\n const index = value.search(reNameEnd);\n let name = index < 0 ? value : value.substr(0, index);\n if (this.lowerCaseTagNames) {\n name = name.toLowerCase();\n }\n return name;\n }\n /** @internal */\n ondeclaration(start, endIndex) {\n this.endIndex = endIndex;\n const value = this.getSlice(start, endIndex);\n if (this.cbs.onprocessinginstruction) {\n const name = this.getInstructionName(value);\n this.cbs.onprocessinginstruction(`!${name}`, `!${value}`);\n }\n // Set `startIndex` for next node\n this.startIndex = endIndex + 1;\n }\n /** @internal */\n onprocessinginstruction(start, endIndex) {\n this.endIndex = endIndex;\n const value = this.getSlice(start, endIndex);\n if (this.cbs.onprocessinginstruction) {\n const name = this.getInstructionName(value);\n this.cbs.onprocessinginstruction(`?${name}`, `?${value}`);\n }\n // Set `startIndex` for next node\n this.startIndex = endIndex + 1;\n }\n /** @internal */\n oncomment(start, endIndex, offset) {\n var _a, _b, _c, _d;\n this.endIndex = endIndex;\n (_b = (_a = this.cbs).oncomment) === null || _b === void 0 ? void 0 : _b.call(_a, this.getSlice(start, endIndex - offset));\n (_d = (_c = this.cbs).oncommentend) === null || _d === void 0 ? void 0 : _d.call(_c);\n // Set `startIndex` for next node\n this.startIndex = endIndex + 1;\n }\n /** @internal */\n oncdata(start, endIndex, offset) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;\n this.endIndex = endIndex;\n const value = this.getSlice(start, endIndex - offset);\n if (!this.htmlMode || this.options.recognizeCDATA) {\n (_b = (_a = this.cbs).oncdatastart) === null || _b === void 0 ? void 0 : _b.call(_a);\n (_d = (_c = this.cbs).ontext) === null || _d === void 0 ? void 0 : _d.call(_c, value);\n (_f = (_e = this.cbs).oncdataend) === null || _f === void 0 ? void 0 : _f.call(_e);\n }\n else {\n (_h = (_g = this.cbs).oncomment) === null || _h === void 0 ? void 0 : _h.call(_g, `[CDATA[${value}]]`);\n (_k = (_j = this.cbs).oncommentend) === null || _k === void 0 ? void 0 : _k.call(_j);\n }\n // Set `startIndex` for next node\n this.startIndex = endIndex + 1;\n }\n /** @internal */\n onend() {\n var _a, _b;\n if (this.cbs.onclosetag) {\n // Set the end index for all remaining tags\n this.endIndex = this.startIndex;\n for (let index = 0; index < this.stack.length; index++) {\n this.cbs.onclosetag(this.stack[index], true);\n }\n }\n (_b = (_a = this.cbs).onend) === null || _b === void 0 ? void 0 : _b.call(_a);\n }\n /**\n * Resets the parser to a blank state, ready to parse a new HTML document\n */\n reset() {\n var _a, _b, _c, _d;\n (_b = (_a = this.cbs).onreset) === null || _b === void 0 ? void 0 : _b.call(_a);\n this.tokenizer.reset();\n this.tagname = \"\";\n this.attribname = \"\";\n this.attribs = null;\n this.stack.length = 0;\n this.startIndex = 0;\n this.endIndex = 0;\n (_d = (_c = this.cbs).onparserinit) === null || _d === void 0 ? void 0 : _d.call(_c, this);\n this.buffers.length = 0;\n this.foreignContext.length = 0;\n this.foreignContext.unshift(!this.htmlMode);\n this.bufferOffset = 0;\n this.writeIndex = 0;\n this.ended = false;\n }\n /**\n * Resets the parser, then parses a complete document and\n * pushes it to the handler.\n *\n * @param data Document to parse.\n */\n parseComplete(data) {\n this.reset();\n this.end(data);\n }\n getSlice(start, end) {\n while (start - this.bufferOffset >= this.buffers[0].length) {\n this.shiftBuffer();\n }\n let slice = this.buffers[0].slice(start - this.bufferOffset, end - this.bufferOffset);\n while (end - this.bufferOffset > this.buffers[0].length) {\n this.shiftBuffer();\n slice += this.buffers[0].slice(0, end - this.bufferOffset);\n }\n return slice;\n }\n shiftBuffer() {\n this.bufferOffset += this.buffers[0].length;\n this.writeIndex--;\n this.buffers.shift();\n }\n /**\n * Parses a chunk of data and calls the corresponding callbacks.\n *\n * @param chunk Chunk to parse.\n */\n write(chunk) {\n var _a, _b;\n if (this.ended) {\n (_b = (_a = this.cbs).onerror) === null || _b === void 0 ? void 0 : _b.call(_a, new Error(\".write() after done!\"));\n return;\n }\n this.buffers.push(chunk);\n if (this.tokenizer.running) {\n this.tokenizer.write(chunk);\n this.writeIndex++;\n }\n }\n /**\n * Parses the end of the buffer and clears the stack, calls onend.\n *\n * @param chunk Optional final chunk to parse.\n */\n end(chunk) {\n var _a, _b;\n if (this.ended) {\n (_b = (_a = this.cbs).onerror) === null || _b === void 0 ? void 0 : _b.call(_a, new Error(\".end() after done!\"));\n return;\n }\n if (chunk)\n this.write(chunk);\n this.ended = true;\n this.tokenizer.end();\n }\n /**\n * Pauses parsing. The parser won't emit events until `resume` is called.\n */\n pause() {\n this.tokenizer.pause();\n }\n /**\n * Resumes parsing after `pause` was called.\n */\n resume() {\n this.tokenizer.resume();\n while (this.tokenizer.running &&\n this.writeIndex < this.buffers.length) {\n this.tokenizer.write(this.buffers[this.writeIndex++]);\n }\n if (this.ended)\n this.tokenizer.end();\n }\n /**\n * Alias of `write`, for backwards compatibility.\n *\n * @param chunk Chunk to parse.\n * @deprecated\n */\n parseChunk(chunk) {\n this.write(chunk);\n }\n /**\n * Alias of `end`, for backwards compatibility.\n *\n * @param chunk Optional final chunk to parse.\n * @deprecated\n */\n done(chunk) {\n this.end(chunk);\n }\n}\n//# sourceMappingURL=Parser.js.map","/** Types of elements found in htmlparser2's DOM */\nexport var ElementType;\n(function (ElementType) {\n /** Type for the root element of a document */\n ElementType[\"Root\"] = \"root\";\n /** Type for Text */\n ElementType[\"Text\"] = \"text\";\n /** Type for <? ... ?> */\n ElementType[\"Directive\"] = \"directive\";\n /** Type for <!-- ... --> */\n ElementType[\"Comment\"] = \"comment\";\n /** Type for <script> tags */\n ElementType[\"Script\"] = \"script\";\n /** Type for <style> tags */\n ElementType[\"Style\"] = \"style\";\n /** Type for Any tag */\n ElementType[\"Tag\"] = \"tag\";\n /** Type for <![CDATA[ ... ]]> */\n ElementType[\"CDATA\"] = \"cdata\";\n /** Type for <!doctype ...> */\n ElementType[\"Doctype\"] = \"doctype\";\n})(ElementType || (ElementType = {}));\n/**\n * Tests whether an element is a tag or not.\n *\n * @param elem Element to test\n */\nexport function isTag(elem) {\n return (elem.type === ElementType.Tag ||\n elem.type === ElementType.Script ||\n elem.type === ElementType.Style);\n}\n// Exports for backwards compatibility\n/** Type for the root element of a document */\nexport const Root = ElementType.Root;\n/** Type for Text */\nexport const Text = ElementType.Text;\n/** Type for <? ... ?> */\nexport const Directive = ElementType.Directive;\n/** Type for <!-- ... --> */\nexport const Comment = ElementType.Comment;\n/** Type for <script> tags */\nexport const Script = ElementType.Script;\n/** Type for <style> tags */\nexport const Style = ElementType.Style;\n/** Type for Any tag */\nexport const Tag = ElementType.Tag;\n/** Type for <![CDATA[ ... ]]> */\nexport const CDATA = ElementType.CDATA;\n/** Type for <!doctype ...> */\nexport const Doctype = ElementType.Doctype;\n","import { ElementType, isTag as isTagRaw } from \"domelementtype\";\n/**\n * This object will be used as the prototype for Nodes when creating a\n * DOM-Level-1-compliant structure.\n */\nexport class Node {\n constructor() {\n /** Parent of the node */\n this.parent = null;\n /** Previous sibling */\n this.prev = null;\n /** Next sibling */\n this.next = null;\n /** The start index of the node. Requires `withStartIndices` on the handler to be `true. */\n this.startIndex = null;\n /** The end index of the node. Requires `withEndIndices` on the handler to be `true. */\n this.endIndex = null;\n }\n // Read-write aliases for properties\n /**\n * Same as {@link parent}.\n * [DOM spec](https://dom.spec.whatwg.org)-compatible alias.\n */\n get parentNode() {\n return this.parent;\n }\n set parentNode(parent) {\n this.parent = parent;\n }\n /**\n * Same as {@link prev}.\n * [DOM spec](https://dom.spec.whatwg.org)-compatible alias.\n */\n get previousSibling() {\n return this.prev;\n }\n set previousSibling(prev) {\n this.prev = prev;\n }\n /**\n * Same as {@link next}.\n * [DOM spec](https://dom.spec.whatwg.org)-compatible alias.\n */\n get nextSibling() {\n return this.next;\n }\n set nextSibling(next) {\n this.next = next;\n }\n /**\n * Clone this node, and optionally its children.\n *\n * @param recursive Clone child nodes as well.\n * @returns A clone of the node.\n */\n cloneNode(recursive = false) {\n return cloneNode(this, recursive);\n }\n}\n/**\n * A node that contains some data.\n */\nexport class DataNode extends Node {\n /**\n * @param data The content of the data node\n */\n constructor(data) {\n super();\n this.data = data;\n }\n /**\n * Same as {@link data}.\n * [DOM spec](https://dom.spec.whatwg.org)-compatible alias.\n */\n get nodeValue() {\n return this.data;\n }\n set nodeValue(data) {\n this.data = data;\n }\n}\n/**\n * Text within the document.\n */\nexport class Text extends DataNode {\n constructor() {\n super(...arguments);\n this.type = ElementType.Text;\n }\n get nodeType() {\n return 3;\n }\n}\n/**\n * Comments within the document.\n */\nexport class Comment extends DataNode {\n constructor() {\n super(...arguments);\n this.type = ElementType.Comment;\n }\n get nodeType() {\n return 8;\n }\n}\n/**\n * Processing instructions, including doc types.\n */\nexport class ProcessingInstruction extends DataNode {\n constructor(name, data) {\n super(data);\n this.name = name;\n this.type = ElementType.Directive;\n }\n get nodeType() {\n return 1;\n }\n}\n/**\n * A `Node` that can have children.\n */\nexport class NodeWithChildren extends Node {\n /**\n * @param children Children of the node. Only certain node types can have children.\n */\n constructor(children) {\n super();\n this.children = children;\n }\n // Aliases\n /** First child of the node. */\n get firstChild() {\n var _a;\n return (_a = this.children[0]) !== null && _a !== void 0 ? _a : null;\n }\n /** Last child of the node. */\n get lastChild() {\n return this.children.length > 0\n ? this.children[this.children.length - 1]\n : null;\n }\n /**\n * Same as {@link children}.\n * [DOM spec](https://dom.spec.whatwg.org)-compatible alias.\n */\n get childNodes() {\n return this.children;\n }\n set childNodes(children) {\n this.children = children;\n }\n}\nexport class CDATA extends NodeWithChildren {\n constructor() {\n super(...arguments);\n this.type = ElementType.CDATA;\n }\n get nodeType() {\n return 4;\n }\n}\n/**\n * The root node of the document.\n */\nexport class Document extends NodeWithChildren {\n constructor() {\n super(...arguments);\n this.type = ElementType.Root;\n }\n get nodeType() {\n return 9;\n }\n}\n/**\n * An element within the DOM.\n */\nexport class Element extends NodeWithChildren {\n /**\n * @param name Name of the tag, eg. `div`, `span`.\n * @param attribs Object mapping attribute names to attribute values.\n * @param children Children of the node.\n */\n constructor(name, attribs, children = [], type = name === \"script\"\n ? ElementType.Script\n : name === \"style\"\n ? ElementType.Style\n : ElementType.Tag) {\n super(children);\n this.name = name;\n this.attribs = attribs;\n this.type = type;\n }\n get nodeType() {\n return 1;\n }\n // DOM Level 1 aliases\n /**\n * Same as {@link name}.\n * [DOM spec](https://dom.spec.whatwg.org)-compatible alias.\n */\n get tagName() {\n return this.name;\n }\n set tagName(name) {\n this.name = name;\n }\n get attributes() {\n return Object.keys(this.attribs).map((name) => {\n var _a, _b;\n return ({\n name,\n value: this.attribs[name],\n namespace: (_a = this[\"x-attribsNamespace\"]) === null || _a === void 0 ? void 0 : _a[name],\n prefix: (_b = this[\"x-attribsPrefix\"]) === null || _b === void 0 ? void 0 : _b[name],\n });\n });\n }\n}\n/**\n * @param node Node to check.\n * @returns `true` if the node is a `Element`, `false` otherwise.\n */\nexport function isTag(node) {\n return isTagRaw(node);\n}\n/**\n * @param node Node to check.\n * @returns `true` if the node has the type `CDATA`, `false` otherwise.\n */\nexport function isCDATA(node) {\n return node.type === ElementType.CDATA;\n}\n/**\n * @param node Node to check.\n * @returns `true` if the node has the type `Text`, `false` otherwise.\n */\nexport function isText(node) {\n return node.type === ElementType.Text;\n}\n/**\n * @param node Node to check.\n * @returns `true` if the node has the type `Comment`, `false` otherwise.\n */\nexport function isComment(node) {\n return node.type === ElementType.Comment;\n}\n/**\n * @param node Node to check.\n * @returns `true` if the node has the type `ProcessingInstruction`, `false` otherwise.\n */\nexport function isDirective(node) {\n return node.type === ElementType.Directive;\n}\n/**\n * @param node Node to check.\n * @returns `true` if the node has the type `ProcessingInstruction`, `false` otherwise.\n */\nexport function isDocument(node) {\n return node.type === ElementType.Root;\n}\n/**\n * @param node Node to check.\n * @returns `true` if the node has children, `false` otherwise.\n */\nexport function hasChildren(node) {\n return Object.prototype.hasOwnProperty.call(node, \"children\");\n}\n/**\n * Clone a node, and optionally its children.\n *\n * @param recursive Clone child nodes as well.\n * @returns A clone of the node.\n */\nexport function cloneNode(node, recursive = false) {\n let result;\n if (isText(node)) {\n result = new Text(node.data);\n }\n else if (isComment(node)) {\n result = new Comment(node.data);\n }\n else if (isTag(node)) {\n const children = recursive ? cloneChildren(node.children) : [];\n const clone = new Element(node.name, { ...node.attribs }, children);\n children.forEach((child) => (child.parent = clone));\n if (node.namespace != null) {\n clone.namespace = node.namespace;\n }\n if (node[\"x-attribsNamespace\"]) {\n clone[\"x-attribsNamespace\"] = { ...node[\"x-attribsNamespace\"] };\n }\n if (node[\"x-attribsPrefix\"]) {\n clone[\"x-attribsPrefix\"] = { ...node[\"x-attribsPrefix\"] };\n }\n result = clone;\n }\n else if (isCDATA(node)) {\n const children = recursive ? cloneChildren(node.children) : [];\n const clone = new CDATA(children);\n children.forEach((child) => (child.parent = clone));\n result = clone;\n }\n else if (isDocument(node)) {\n const children = recursive ? cloneChildren(node.children) : [];\n const clone = new Document(children);\n children.forEach((child) => (child.parent = clone));\n if (node[\"x-mode\"]) {\n clone[\"x-mode\"] = node[\"x-mode\"];\n }\n result = clone;\n }\n else if (isDirective(node)) {\n const instruction = new ProcessingInstruction(node.name, node.data);\n if (node[\"x-name\"] != null) {\n instruction[\"x-name\"] = node[\"x-name\"];\n instruction[\"x-publicId\"] = node[\"x-publicId\"];\n instruction[\"x-systemId\"] = node[\"x-systemId\"];\n }\n result = instruction;\n }\n else {\n throw new Error(`Not implemented yet: ${node.type}`);\n }\n result.startIndex = node.startIndex;\n result.endIndex = node.endIndex;\n if (node.sourceCodeLocation != null) {\n result.sourceCodeLocation = node.sourceCodeLocation;\n }\n return result;\n}\nfunction cloneChildren(childs) {\n const children = childs.map((child) => cloneNode(child, true));\n for (let i = 1; i < children.length; i++) {\n children[i].prev = children[i - 1];\n children[i - 1].next = children[i];\n }\n return children;\n}\n","import { ElementType } from \"domelementtype\";\nimport { Element, Text, Comment, CDATA, Document, ProcessingInstruction, } from \"./node.js\";\nexport * from \"./node.js\";\n// Default options\nconst defaultOpts = {\n withStartIndices: false,\n withEndIndices: false,\n xmlMode: false,\n};\nexport class DomHandler {\n /**\n * @param callback Called once parsing has completed.\n * @param options Settings for the handler.\n * @param elementCB Callback whenever a tag is closed.\n */\n constructor(callback, options, elementCB) {\n /** The elements of the DOM */\n this.dom = [];\n /** The root element for the DOM */\n this.root = new Document(this.dom);\n /** Indicated whether parsing has been completed. */\n this.done = false;\n /** Stack of open tags. */\n this.tagStack = [this.root];\n /** A data node that is still being written to. */\n this.lastNode = null;\n /** Reference to the parser instance. Used for location information. */\n this.parser = null;\n // Make it possible to skip arguments, for backwards-compatibility\n if (typeof options === \"function\") {\n elementCB = options;\n options = defaultOpts;\n }\n if (typeof callback === \"object\") {\n options = callback;\n callback = undefined;\n }\n this.callback = callback !== null && callback !== void 0 ? callback : null;\n this.options = options !== null && options !== void 0 ? options : defaultOpts;\n this.elementCB = elementCB !== null && elementCB !== void 0 ? elementCB : null;\n }\n onparserinit(parser) {\n this.parser = parser;\n }\n // Resets the handler back to starting state\n onreset() {\n this.dom = [];\n this.root = new Document(this.dom);\n this.done = false;\n this.tagStack = [this.root];\n this.lastNode = null;\n this.parser = null;\n }\n // Signals the handler that parsing is done\n onend() {\n if (this.done)\n return;\n this.done = true;\n this.parser = null;\n this.handleCallback(null);\n }\n onerror(error) {\n this.handleCallback(error);\n }\n onclosetag() {\n this.lastNode = null;\n const elem = this.tagStack.pop();\n if (this.options.withEndIndices) {\n elem.endIndex = this.parser.endIndex;\n }\n if (this.elementCB)\n this.elementCB(elem);\n }\n onopentag(name, attribs) {\n const type = this.options.xmlMode ? ElementType.Tag : undefined;\n const element = new Element(name, attribs, undefined, type);\n this.addNode(element);\n this.tagStack.push(element);\n }\n ontext(data) {\n const { lastNode } = this;\n if (lastNode && lastNode.type === ElementType.Text) {\n lastNode.data += data;\n if (this.options.withEndIndices) {\n lastNode.endIndex = this.parser.endIndex;\n }\n }\n else {\n const node = new Text(data);\n this.addNode(node);\n this.lastNode = node;\n }\n }\n oncomment(data) {\n if (this.lastNode && this.lastNode.type === ElementType.Comment) {\n this.lastNode.data += data;\n return;\n }\n const node = new Comment(data);\n this.addNode(node);\n this.lastNode = node;\n }\n oncommentend() {\n this.lastNode = null;\n }\n oncdatastart() {\n const text = new Text(\"\");\n const node = new CDATA([text]);\n this.addNode(node);\n text.parent = node;\n this.lastNode = text;\n }\n oncdataend() {\n this.lastNode = null;\n }\n onprocessinginstruction(name, data) {\n const node = new ProcessingInstruction(name, data);\n this.addNode(node);\n }\n handleCallback(error) {\n if (typeof this.callback === \"function\") {\n this.callback(error, this.dom);\n }\n else if (error) {\n throw error;\n }\n }\n addNode(node) {\n const parent = this.tagStack[this.tagStack.length - 1];\n const previousSibling = parent.children[parent.children.length - 1];\n if (this.options.withStartIndices) {\n node.startIndex = this.parser.startIndex;\n }\n if (this.options.withEndIndices) {\n node.endIndex = this.parser.endIndex;\n }\n parent.children.push(node);\n if (previousSibling) {\n node.prev = previousSibling;\n previousSibling.next = node;\n }\n node.parent = parent;\n this.lastNode = null;\n }\n}\nexport default DomHandler;\n","// Generated using scripts/write-encode-map.ts\nfunction restoreDiff(arr) {\n for (let i = 1; i < arr.length; i++) {\n arr[i][0] += arr[i - 1][0] + 1;\n }\n return arr;\n}\n// prettier-ignore\nexport default new Map(/* #__PURE__ */ restoreDiff([[9, \" \"], [0, \" \"], [22, \"!\"], [0, \""\"], [0, \"#\"], [0, \"$\"], [0, \"%\"], [0, \"&\"], [0, \"'\"], [0, \"(\"], [0, \")\"], [0, \"*\"], [0, \"+\"], [0, \",\"], [1, \".\"], [0, \"/\"], [10, \":\"], [0, \";\"], [0, { v: \"<\", n: 8402, o: \"<⃒\" }], [0, { v: \"=\", n: 8421, o: \"=⃥\" }], [0, { v: \">\", n: 8402, o: \">⃒\" }], [0, \"?\"], [0, \"@\"], [26, \"[\"], [0, \"\\"], [0, \"]\"], [0, \"^\"], [0, \"_\"], [0, \"`\"], [5, { n: 106, o: \"fj\" }], [20, \"{\"], [0, \"|\"], [0, \"}\"], [34, \" \"], [0, \"¡\"], [0, \"¢\"], [0, \"£\"], [0, \"¤\"], [0, \"¥\"], [0, \"¦\"], [0, \"§\"], [0, \"¨\"], [0, \"©\"], [0, \"ª\"], [0, \"«\"], [0, \"¬\"], [0, \"­\"], [0, \"®\"], [0, \"¯\"], [0, \"°\"], [0, \"±\"], [0, \"²\"], [0, \"³\"], [0, \"´\"], [0, \"µ\"], [0, \"¶\"], [0, \"·\"], [0, \"¸\"], [0, \"¹\"], [0, \"º\"], [0, \"»\"], [0, \"¼\"], [0, \"½\"], [0, \"¾\"], [0, \"¿\"], [0, \"À\"], [0, \"Á\"], [0, \"Â\"], [0, \"Ã\"], [0, \"Ä\"], [0, \"Å\"], [0, \"Æ\"], [0, \"Ç\"], [0, \"È\"], [0, \"É\"], [0, \"Ê\"], [0, \"Ë\"], [0, \"Ì\"], [0, \"Í\"], [0, \"Î\"], [0, \"Ï\"], [0, \"Ð\"], [0, \"Ñ\"], [0, \"Ò\"], [0, \"Ó\"], [0, \"Ô\"], [0, \"Õ\"], [0, \"Ö\"], [0, \"×\"], [0, \"Ø\"], [0, \"Ù\"], [0, \"Ú\"], [0, \"Û\"], [0, \"Ü\"], [0, \"Ý\"], [0, \"Þ\"], [0, \"ß\"], [0, \"à\"], [0, \"á\"], [0, \"â\"], [0, \"ã\"], [0, \"ä\"], [0, \"å\"], [0, \"æ\"], [0, \"ç\"], [0, \"è\"], [0, \"é\"], [0, \"ê\"], [0, \"ë\"], [0, \"ì\"], [0, \"í\"], [0, \"î\"], [0, \"ï\"], [0, \"ð\"], [0, \"ñ\"], [0, \"ò\"], [0, \"ó\"], [0, \"ô\"], [0, \"õ\"], [0, \"ö\"], [0, \"÷\"], [0, \"ø\"], [0, \"ù\"], [0, \"ú\"], [0, \"û\"], [0, \"ü\"], [0, \"ý\"], [0, \"þ\"], [0, \"ÿ\"], [0, \"Ā\"], [0, \"ā\"], [0, \"Ă\"], [0, \"ă\"], [0, \"Ą\"], [0, \"ą\"], [0, \"Ć\"], [0, \"ć\"], [0, \"Ĉ\"], [0, \"ĉ\"], [0, \"Ċ\"], [0, \"ċ\"], [0, \"Č\"], [0, \"č\"], [0, \"Ď\"], [0, \"ď\"], [0, \"Đ\"], [0, \"đ\"], [0, \"Ē\"], [0, \"ē\"], [2, \"Ė\"], [0, \"ė\"], [0, \"Ę\"], [0, \"ę\"], [0, \"Ě\"], [0, \"ě\"], [0, \"Ĝ\"], [0, \"ĝ\"], [0, \"Ğ\"], [0, \"ğ\"], [0, \"Ġ\"], [0, \"ġ\"], [0, \"Ģ\"], [1, \"Ĥ\"], [0, \"ĥ\"], [0, \"Ħ\"], [0, \"ħ\"], [0, \"Ĩ\"], [0, \"ĩ\"], [0, \"Ī\"], [0, \"ī\"], [2, \"Į\"], [0, \"į\"], [0, \"İ\"], [0, \"ı\"], [0, \"IJ\"], [0, \"ij\"], [0, \"Ĵ\"], [0, \"ĵ\"], [0, \"Ķ\"], [0, \"ķ\"], [0, \"ĸ\"], [0, \"Ĺ\"], [0, \"ĺ\"], [0, \"Ļ\"], [0, \"ļ\"], [0, \"Ľ\"], [0, \"ľ\"], [0, \"Ŀ\"], [0, \"ŀ\"], [0, \"Ł\"], [0, \"ł\"], [0, \"Ń\"], [0, \"ń\"], [0, \"Ņ\"], [0, \"ņ\"], [0, \"Ň\"], [0, \"ň\"], [0, \"ʼn\"], [0, \"Ŋ\"], [0, \"ŋ\"], [0, \"Ō\"], [0, \"ō\"], [2, \"Ő\"], [0, \"ő\"], [0, \"Œ\"], [0, \"œ\"], [0, \"Ŕ\"], [0, \"ŕ\"], [0, \"Ŗ\"], [0, \"ŗ\"], [0, \"Ř\"], [0, \"ř\"], [0, \"Ś\"], [0, \"ś\"], [0, \"Ŝ\"], [0, \"ŝ\"], [0, \"Ş\"], [0, \"ş\"], [0, \"Š\"], [0, \"š\"], [0, \"Ţ\"], [0, \"ţ\"], [0, \"Ť\"], [0, \"ť\"], [0, \"Ŧ\"], [0, \"ŧ\"], [0, \"Ũ\"], [0, \"ũ\"], [0, \"Ū\"], [0, \"ū\"], [0, \"Ŭ\"], [0, \"ŭ\"], [0, \"Ů\"], [0, \"ů\"], [0, \"Ű\"], [0, \"ű\"], [0, \"Ų\"], [0, \"ų\"], [0, \"Ŵ\"], [0, \"ŵ\"], [0, \"Ŷ\"], [0, \"ŷ\"], [0, \"Ÿ\"], [0, \"Ź\"], [0, \"ź\"], [0, \"Ż\"], [0, \"ż\"], [0, \"Ž\"], [0, \"ž\"], [19, \"ƒ\"], [34, \"Ƶ\"], [63, \"ǵ\"], [65, \"ȷ\"], [142, \"ˆ\"], [0, \"ˇ\"], [16, \"˘\"], [0, \"˙\"], [0, \"˚\"], [0, \"˛\"], [0, \"˜\"], [0, \"˝\"], [51, \"̑\"], [127, \"Α\"], [0, \"Β\"], [0, \"Γ\"], [0, \"Δ\"], [0, \"Ε\"], [0, \"Ζ\"], [0, \"Η\"], [0, \"Θ\"], [0, \"Ι\"], [0, \"Κ\"], [0, \"Λ\"], [0, \"Μ\"], [0, \"Ν\"], [0, \"Ξ\"], [0, \"Ο\"], [0, \"Π\"], [0, \"Ρ\"], [1, \"Σ\"], [0, \"Τ\"], [0, \"Υ\"], [0, \"Φ\"], [0, \"Χ\"], [0, \"Ψ\"], [0, \"Ω\"], [7, \"α\"], [0, \"β\"], [0, \"γ\"], [0, \"δ\"], [0, \"ε\"], [0, \"ζ\"], [0, \"η\"], [0, \"θ\"], [0, \"ι\"], [0, \"κ\"], [0, \"λ\"], [0, \"μ\"], [0, \"ν\"], [0, \"ξ\"], [0, \"ο\"], [0, \"π\"], [0, \"ρ\"], [0, \"ς\"], [0, \"σ\"], [0, \"τ\"], [0, \"υ\"], [0, \"φ\"], [0, \"χ\"], [0, \"ψ\"], [0, \"ω\"], [7, \"ϑ\"], [0, \"ϒ\"], [2, \"ϕ\"], [0, \"ϖ\"], [5, \"Ϝ\"], [0, \"ϝ\"], [18, \"ϰ\"], [0, \"ϱ\"], [3, \"ϵ\"], [0, \"϶\"], [10, \"Ё\"], [0, \"Ђ\"], [0, \"Ѓ\"], [0, \"Є\"], [0, \"Ѕ\"], [0, \"І\"], [0, \"Ї\"], [0, \"Ј\"], [0, \"Љ\"], [0, \"Њ\"], [0, \"Ћ\"], [0, \"Ќ\"], [1, \"Ў\"], [0, \"Џ\"], [0, \"А\"], [0, \"Б\"], [0, \"В\"], [0, \"Г\"], [0, \"Д\"], [0, \"Е\"], [0, \"Ж\"], [0, \"З\"], [0, \"И\"], [0, \"Й\"], [0, \"К\"], [0, \"Л\"], [0, \"М\"], [0, \"Н\"], [0, \"О\"], [0, \"П\"], [0, \"Р\"], [0, \"С\"], [0, \"Т\"], [0, \"У\"], [0, \"Ф\"], [0, \"Х\"], [0, \"Ц\"], [0, \"Ч\"], [0, \"Ш\"], [0, \"Щ\"], [0, \"Ъ\"], [0, \"Ы\"], [0, \"Ь\"], [0, \"Э\"], [0, \"Ю\"], [0, \"Я\"], [0, \"а\"], [0, \"б\"], [0, \"в\"], [0, \"г\"], [0, \"д\"], [0, \"е\"], [0, \"ж\"], [0, \"з\"], [0, \"и\"], [0, \"й\"], [0, \"к\"], [0, \"л\"], [0, \"м\"], [0, \"н\"], [0, \"о\"], [0, \"п\"], [0, \"р\"], [0, \"с\"], [0, \"т\"], [0, \"у\"], [0, \"ф\"], [0, \"х\"], [0, \"ц\"], [0, \"ч\"], [0, \"ш\"], [0, \"щ\"], [0, \"ъ\"], [0, \"ы\"], [0, \"ь\"], [0, \"э\"], [0, \"ю\"], [0, \"я\"], [1, \"ё\"], [0, \"ђ\"], [0, \"ѓ\"], [0, \"є\"], [0, \"ѕ\"], [0, \"і\"], [0, \"ї\"], [0, \"ј\"], [0, \"љ\"], [0, \"њ\"], [0, \"ћ\"], [0, \"ќ\"], [1, \"ў\"], [0, \"џ\"], [7074, \" \"], [0, \" \"], [0, \" \"], [0, \" \"], [1, \" \"], [0, \" \"], [0, \" \"], [0, \" \"], [0, \"​\"], [0, \"‌\"], [0, \"‍\"], [0, \"‎\"], [0, \"‏\"], [0, \"‐\"], [2, \"–\"], [0, \"—\"], [0, \"―\"], [0, \"‖\"], [1, \"‘\"], [0, \"’\"], [0, \"‚\"], [1, \"“\"], [0, \"”\"], [0, \"„\"], [1, \"†\"], [0, \"‡\"], [0, \"•\"], [2, \"‥\"], [0, \"…\"], [9, \"‰\"], [0, \"‱\"], [0, \"′\"], [0, \"″\"], [0, \"‴\"], [0, \"‵\"], [3, \"‹\"], [0, \"›\"], [3, \"‾\"], [2, \"⁁\"], [1, \"⁃\"], [0, \"⁄\"], [10, \"⁏\"], [7, \"⁗\"], [7, { v: \" \", n: 8202, o: \"  \" }], [0, \"⁠\"], [0, \"⁡\"], [0, \"⁢\"], [0, \"⁣\"], [72, \"€\"], [46, \"⃛\"], [0, \"⃜\"], [37, \"ℂ\"], [2, \"℅\"], [4, \"ℊ\"], [0, \"ℋ\"], [0, \"ℌ\"], [0, \"ℍ\"], [0, \"ℎ\"], [0, \"ℏ\"], [0, \"ℐ\"], [0, \"ℑ\"], [0, \"ℒ\"], [0, \"ℓ\"], [1, \"ℕ\"], [0, \"№\"], [0, \"℗\"], [0, \"℘\"], [0, \"ℙ\"], [0, \"ℚ\"], [0, \"ℛ\"], [0, \"ℜ\"], [0, \"ℝ\"], [0, \"℞\"], [3, \"™\"], [1, \"ℤ\"], [2, \"℧\"], [0, \"ℨ\"], [0, \"℩\"], [2, \"ℬ\"], [0, \"ℭ\"], [1, \"ℯ\"], [0, \"ℰ\"], [0, \"ℱ\"], [1, \"ℳ\"], [0, \"ℴ\"], [0, \"ℵ\"], [0, \"ℶ\"], [0, \"ℷ\"], [0, \"ℸ\"], [12, \"ⅅ\"], [0, \"ⅆ\"], [0, \"ⅇ\"], [0, \"ⅈ\"], [10, \"⅓\"], [0, \"⅔\"], [0, \"⅕\"], [0, \"⅖\"], [0, \"⅗\"], [0, \"⅘\"], [0, \"⅙\"], [0, \"⅚\"], [0, \"⅛\"], [0, \"⅜\"], [0, \"⅝\"], [0, \"⅞\"], [49, \"←\"], [0, \"↑\"], [0, \"→\"], [0, \"↓\"], [0, \"↔\"], [0, \"↕\"], [0, \"↖\"], [0, \"↗\"], [0, \"↘\"], [0, \"↙\"], [0, \"↚\"], [0, \"↛\"], [1, { v: \"↝\", n: 824, o: \"↝̸\" }], [0, \"↞\"], [0, \"↟\"], [0, \"↠\"], [0, \"↡\"], [0, \"↢\"], [0, \"↣\"], [0, \"↤\"], [0, \"↥\"], [0, \"↦\"], [0, \"↧\"], [1, \"↩\"], [0, \"↪\"], [0, \"↫\"], [0, \"↬\"], [0, \"↭\"], [0, \"↮\"], [1, \"↰\"], [0, \"↱\"], [0, \"↲\"], [0, \"↳\"], [1, \"↵\"], [0, \"↶\"], [0, \"↷\"], [2, \"↺\"], [0, \"↻\"], [0, \"↼\"], [0, \"↽\"], [0, \"↾\"], [0, \"↿\"], [0, \"⇀\"], [0, \"⇁\"], [0, \"⇂\"], [0, \"⇃\"], [0, \"⇄\"], [0, \"⇅\"], [0, \"⇆\"], [0, \"⇇\"], [0, \"⇈\"], [0, \"⇉\"], [0, \"⇊\"], [0, \"⇋\"], [0, \"⇌\"], [0, \"⇍\"], [0, \"⇎\"], [0, \"⇏\"], [0, \"⇐\"], [0, \"⇑\"], [0, \"⇒\"], [0, \"⇓\"], [0, \"⇔\"], [0, \"⇕\"], [0, \"⇖\"], [0, \"⇗\"], [0, \"⇘\"], [0, \"⇙\"], [0, \"⇚\"], [0, \"⇛\"], [1, \"⇝\"], [6, \"⇤\"], [0, \"⇥\"], [15, \"⇵\"], [7, \"⇽\"], [0, \"⇾\"], [0, \"⇿\"], [0, \"∀\"], [0, \"∁\"], [0, { v: \"∂\", n: 824, o: \"∂̸\" }], [0, \"∃\"], [0, \"∄\"], [0, \"∅\"], [1, \"∇\"], [0, \"∈\"], [0, \"∉\"], [1, \"∋\"], [0, \"∌\"], [2, \"∏\"], [0, \"∐\"], [0, \"∑\"], [0, \"−\"], [0, \"∓\"], [0, \"∔\"], [1, \"∖\"], [0, \"∗\"], [0, \"∘\"], [1, \"√\"], [2, \"∝\"], [0, \"∞\"], [0, \"∟\"], [0, { v: \"∠\", n: 8402, o: \"∠⃒\" }], [0, \"∡\"], [0, \"∢\"], [0, \"∣\"], [0, \"∤\"], [0, \"∥\"], [0, \"∦\"], [0, \"∧\"], [0, \"∨\"], [0, { v: \"∩\", n: 65024, o: \"∩︀\" }], [0, { v: \"∪\", n: 65024, o: \"∪︀\" }], [0, \"∫\"], [0, \"∬\"], [0, \"∭\"], [0, \"∮\"], [0, \"∯\"], [0, \"∰\"], [0, \"∱\"], [0, \"∲\"], [0, \"∳\"], [0, \"∴\"], [0, \"∵\"], [0, \"∶\"], [0, \"∷\"], [0, \"∸\"], [1, \"∺\"], [0, \"∻\"], [0, { v: \"∼\", n: 8402, o: \"∼⃒\" }], [0, { v: \"∽\", n: 817, o: \"∽̱\" }], [0, { v: \"∾\", n: 819, o: \"∾̳\" }], [0, \"∿\"], [0, \"≀\"], [0, \"≁\"], [0, { v: \"≂\", n: 824, o: \"≂̸\" }], [0, \"≃\"], [0, \"≄\"], [0, \"≅\"], [0, \"≆\"], [0, \"≇\"], [0, \"≈\"], [0, \"≉\"], [0, \"≊\"], [0, { v: \"≋\", n: 824, o: \"≋̸\" }], [0, \"≌\"], [0, { v: \"≍\", n: 8402, o: \"≍⃒\" }], [0, { v: \"≎\", n: 824, o: \"≎̸\" }], [0, { v: \"≏\", n: 824, o: \"≏̸\" }], [0, { v: \"≐\", n: 824, o: \"≐̸\" }], [0, \"≑\"], [0, \"≒\"], [0, \"≓\"], [0, \"≔\"], [0, \"≕\"], [0, \"≖\"], [0, \"≗\"], [1, \"≙\"], [0, \"≚\"], [1, \"≜\"], [2, \"≟\"], [0, \"≠\"], [0, { v: \"≡\", n: 8421, o: \"≡⃥\" }], [0, \"≢\"], [1, { v: \"≤\", n: 8402, o: \"≤⃒\" }], [0, { v: \"≥\", n: 8402, o: \"≥⃒\" }], [0, { v: \"≦\", n: 824, o: \"≦̸\" }], [0, { v: \"≧\", n: 824, o: \"≧̸\" }], [0, { v: \"≨\", n: 65024, o: \"≨︀\" }], [0, { v: \"≩\", n: 65024, o: \"≩︀\" }], [0, { v: \"≪\", n: new Map(/* #__PURE__ */ restoreDiff([[824, \"≪̸\"], [7577, \"≪⃒\"]])) }], [0, { v: \"≫\", n: new Map(/* #__PURE__ */ restoreDiff([[824, \"≫̸\"], [7577, \"≫⃒\"]])) }], [0, \"≬\"], [0, \"≭\"], [0, \"≮\"], [0, \"≯\"], [0, \"≰\"], [0, \"≱\"], [0, \"≲\"], [0, \"≳\"], [0, \"≴\"], [0, \"≵\"], [0, \"≶\"], [0, \"≷\"], [0, \"≸\"], [0, \"≹\"], [0, \"≺\"], [0, \"≻\"], [0, \"≼\"], [0, \"≽\"], [0, \"≾\"], [0, { v: \"≿\", n: 824, o: \"≿̸\" }], [0, \"⊀\"], [0, \"⊁\"], [0, { v: \"⊂\", n: 8402, o: \"⊂⃒\" }], [0, { v: \"⊃\", n: 8402, o: \"⊃⃒\" }], [0, \"⊄\"], [0, \"⊅\"], [0, \"⊆\"], [0, \"⊇\"], [0, \"⊈\"], [0, \"⊉\"], [0, { v: \"⊊\", n: 65024, o: \"⊊︀\" }], [0, { v: \"⊋\", n: 65024, o: \"⊋︀\" }], [1, \"⊍\"], [0, \"⊎\"], [0, { v: \"⊏\", n: 824, o: \"⊏̸\" }], [0, { v: \"⊐\", n: 824, o: \"⊐̸\" }], [0, \"⊑\"], [0, \"⊒\"], [0, { v: \"⊓\", n: 65024, o: \"⊓︀\" }], [0, { v: \"⊔\", n: 65024, o: \"⊔︀\" }], [0, \"⊕\"], [0, \"⊖\"], [0, \"⊗\"], [0, \"⊘\"], [0, \"⊙\"], [0, \"⊚\"], [0, \"⊛\"], [1, \"⊝\"], [0, \"⊞\"], [0, \"⊟\"], [0, \"⊠\"], [0, \"⊡\"], [0, \"⊢\"], [0, \"⊣\"], [0, \"⊤\"], [0, \"⊥\"], [1, \"⊧\"], [0, \"⊨\"], [0, \"⊩\"], [0, \"⊪\"], [0, \"⊫\"], [0, \"⊬\"], [0, \"⊭\"], [0, \"⊮\"], [0, \"⊯\"], [0, \"⊰\"], [1, \"⊲\"], [0, \"⊳\"], [0, { v: \"⊴\", n: 8402, o: \"⊴⃒\" }], [0, { v: \"⊵\", n: 8402, o: \"⊵⃒\" }], [0, \"⊶\"], [0, \"⊷\"], [0, \"⊸\"], [0, \"⊹\"], [0, \"⊺\"], [0, \"⊻\"], [1, \"⊽\"], [0, \"⊾\"], [0, \"⊿\"], [0, \"⋀\"], [0, \"⋁\"], [0, \"⋂\"], [0, \"⋃\"], [0, \"⋄\"], [0, \"⋅\"], [0, \"⋆\"], [0, \"⋇\"], [0, \"⋈\"], [0, \"⋉\"], [0, \"⋊\"], [0, \"⋋\"], [0, \"⋌\"], [0, \"⋍\"], [0, \"⋎\"], [0, \"⋏\"], [0, \"⋐\"], [0, \"⋑\"], [0, \"⋒\"], [0, \"⋓\"], [0, \"⋔\"], [0, \"⋕\"], [0, \"⋖\"], [0, \"⋗\"], [0, { v: \"⋘\", n: 824, o: \"⋘̸\" }], [0, { v: \"⋙\", n: 824, o: \"⋙̸\" }], [0, { v: \"⋚\", n: 65024, o: \"⋚︀\" }], [0, { v: \"⋛\", n: 65024, o: \"⋛︀\" }], [2, \"⋞\"], [0, \"⋟\"], [0, \"⋠\"], [0, \"⋡\"], [0, \"⋢\"], [0, \"⋣\"], [2, \"⋦\"], [0, \"⋧\"], [0, \"⋨\"], [0, \"⋩\"], [0, \"⋪\"], [0, \"⋫\"], [0, \"⋬\"], [0, \"⋭\"], [0, \"⋮\"], [0, \"⋯\"], [0, \"⋰\"], [0, \"⋱\"], [0, \"⋲\"], [0, \"⋳\"], [0, \"⋴\"], [0, { v: \"⋵\", n: 824, o: \"⋵̸\" }], [0, \"⋶\"], [0, \"⋷\"], [1, { v: \"⋹\", n: 824, o: \"⋹̸\" }], [0, \"⋺\"], [0, \"⋻\"], [0, \"⋼\"], [0, \"⋽\"], [0, \"⋾\"], [6, \"⌅\"], [0, \"⌆\"], [1, \"⌈\"], [0, \"⌉\"], [0, \"⌊\"], [0, \"⌋\"], [0, \"⌌\"], [0, \"⌍\"], [0, \"⌎\"], [0, \"⌏\"], [0, \"⌐\"], [1, \"⌒\"], [0, \"⌓\"], [1, \"⌕\"], [0, \"⌖\"], [5, \"⌜\"], [0, \"⌝\"], [0, \"⌞\"], [0, \"⌟\"], [2, \"⌢\"], [0, \"⌣\"], [9, \"⌭\"], [0, \"⌮\"], [7, \"⌶\"], [6, \"⌽\"], [1, \"⌿\"], [60, \"⍼\"], [51, \"⎰\"], [0, \"⎱\"], [2, \"⎴\"], [0, \"⎵\"], [0, \"⎶\"], [37, \"⏜\"], [0, \"⏝\"], [0, \"⏞\"], [0, \"⏟\"], [2, \"⏢\"], [4, \"⏧\"], [59, \"␣\"], [164, \"Ⓢ\"], [55, \"─\"], [1, \"│\"], [9, \"┌\"], [3, \"┐\"], [3, \"└\"], [3, \"┘\"], [3, \"├\"], [7, \"┤\"], [7, \"┬\"], [7, \"┴\"], [7, \"┼\"], [19, \"═\"], [0, \"║\"], [0, \"╒\"], [0, \"╓\"], [0, \"╔\"], [0, \"╕\"], [0, \"╖\"], [0, \"╗\"], [0, \"╘\"], [0, \"╙\"], [0, \"╚\"], [0, \"╛\"], [0, \"╜\"], [0, \"╝\"], [0, \"╞\"], [0, \"╟\"], [0, \"╠\"], [0, \"╡\"], [0, \"╢\"], [0, \"╣\"], [0, \"╤\"], [0, \"╥\"], [0, \"╦\"], [0, \"╧\"], [0, \"╨\"], [0, \"╩\"], [0, \"╪\"], [0, \"╫\"], [0, \"╬\"], [19, \"▀\"], [3, \"▄\"], [3, \"█\"], [8, \"░\"], [0, \"▒\"], [0, \"▓\"], [13, \"□\"], [8, \"▪\"], [0, \"▫\"], [1, \"▭\"], [0, \"▮\"], [2, \"▱\"], [1, \"△\"], [0, \"▴\"], [0, \"▵\"], [2, \"▸\"], [0, \"▹\"], [3, \"▽\"], [0, \"▾\"], [0, \"▿\"], [2, \"◂\"], [0, \"◃\"], [6, \"◊\"], [0, \"○\"], [32, \"◬\"], [2, \"◯\"], [8, \"◸\"], [0, \"◹\"], [0, \"◺\"], [0, \"◻\"], [0, \"◼\"], [8, \"★\"], [0, \"☆\"], [7, \"☎\"], [49, \"♀\"], [1, \"♂\"], [29, \"♠\"], [2, \"♣\"], [1, \"♥\"], [0, \"♦\"], [3, \"♪\"], [2, \"♭\"], [0, \"♮\"], [0, \"♯\"], [163, \"✓\"], [3, \"✗\"], [8, \"✠\"], [21, \"✶\"], [33, \"❘\"], [25, \"❲\"], [0, \"❳\"], [84, \"⟈\"], [0, \"⟉\"], [28, \"⟦\"], [0, \"⟧\"], [0, \"⟨\"], [0, \"⟩\"], [0, \"⟪\"], [0, \"⟫\"], [0, \"⟬\"], [0, \"⟭\"], [7, \"⟵\"], [0, \"⟶\"], [0, \"⟷\"], [0, \"⟸\"], [0, \"⟹\"], [0, \"⟺\"], [1, \"⟼\"], [2, \"⟿\"], [258, \"⤂\"], [0, \"⤃\"], [0, \"⤄\"], [0, \"⤅\"], [6, \"⤌\"], [0, \"⤍\"], [0, \"⤎\"], [0, \"⤏\"], [0, \"⤐\"], [0, \"⤑\"], [0, \"⤒\"], [0, \"⤓\"], [2, \"⤖\"], [2, \"⤙\"], [0, \"⤚\"], [0, \"⤛\"], [0, \"⤜\"], [0, \"⤝\"], [0, \"⤞\"], [0, \"⤟\"], [0, \"⤠\"], [2, \"⤣\"], [0, \"⤤\"], [0, \"⤥\"], [0, \"⤦\"], [0, \"⤧\"], [0, \"⤨\"], [0, \"⤩\"], [0, \"⤪\"], [8, { v: \"⤳\", n: 824, o: \"⤳̸\" }], [1, \"⤵\"], [0, \"⤶\"], [0, \"⤷\"], [0, \"⤸\"], [0, \"⤹\"], [2, \"⤼\"], [0, \"⤽\"], [7, \"⥅\"], [2, \"⥈\"], [0, \"⥉\"], [0, \"⥊\"], [0, \"⥋\"], [2, \"⥎\"], [0, \"⥏\"], [0, \"⥐\"], [0, \"⥑\"], [0, \"⥒\"], [0, \"⥓\"], [0, \"⥔\"], [0, \"⥕\"], [0, \"⥖\"], [0, \"⥗\"], [0, \"⥘\"], [0, \"⥙\"], [0, \"⥚\"], [0, \"⥛\"], [0, \"⥜\"], [0, \"⥝\"], [0, \"⥞\"], [0, \"⥟\"], [0, \"⥠\"], [0, \"⥡\"], [0, \"⥢\"], [0, \"⥣\"], [0, \"⥤\"], [0, \"⥥\"], [0, \"⥦\"], [0, \"⥧\"], [0, \"⥨\"], [0, \"⥩\"], [0, \"⥪\"], [0, \"⥫\"], [0, \"⥬\"], [0, \"⥭\"], [0, \"⥮\"], [0, \"⥯\"], [0, \"⥰\"], [0, \"⥱\"], [0, \"⥲\"], [0, \"⥳\"], [0, \"⥴\"], [0, \"⥵\"], [0, \"⥶\"], [1, \"⥸\"], [0, \"⥹\"], [1, \"⥻\"], [0, \"⥼\"], [0, \"⥽\"], [0, \"⥾\"], [0, \"⥿\"], [5, \"⦅\"], [0, \"⦆\"], [4, \"⦋\"], [0, \"⦌\"], [0, \"⦍\"], [0, \"⦎\"], [0, \"⦏\"], [0, \"⦐\"], [0, \"⦑\"], [0, \"⦒\"], [0, \"⦓\"], [0, \"⦔\"], [0, \"⦕\"], [0, \"⦖\"], [3, \"⦚\"], [1, \"⦜\"], [0, \"⦝\"], [6, \"⦤\"], [0, \"⦥\"], [0, \"⦦\"], [0, \"⦧\"], [0, \"⦨\"], [0, \"⦩\"], [0, \"⦪\"], [0, \"⦫\"], [0, \"⦬\"], [0, \"⦭\"], [0, \"⦮\"], [0, \"⦯\"], [0, \"⦰\"], [0, \"⦱\"], [0, \"⦲\"], [0, \"⦳\"], [0, \"⦴\"], [0, \"⦵\"], [0, \"⦶\"], [0, \"⦷\"], [1, \"⦹\"], [1, \"⦻\"], [0, \"⦼\"], [1, \"⦾\"], [0, \"⦿\"], [0, \"⧀\"], [0, \"⧁\"], [0, \"⧂\"], [0, \"⧃\"], [0, \"⧄\"], [0, \"⧅\"], [3, \"⧉\"], [3, \"⧍\"], [0, \"⧎\"], [0, { v: \"⧏\", n: 824, o: \"⧏̸\" }], [0, { v: \"⧐\", n: 824, o: \"⧐̸\" }], [11, \"⧜\"], [0, \"⧝\"], [0, \"⧞\"], [4, \"⧣\"], [0, \"⧤\"], [0, \"⧥\"], [5, \"⧫\"], [8, \"⧴\"], [1, \"⧶\"], [9, \"⨀\"], [0, \"⨁\"], [0, \"⨂\"], [1, \"⨄\"], [1, \"⨆\"], [5, \"⨌\"], [0, \"⨍\"], [2, \"⨐\"], [0, \"⨑\"], [0, \"⨒\"], [0, \"⨓\"], [0, \"⨔\"], [0, \"⨕\"], [0, \"⨖\"], [0, \"⨗\"], [10, \"⨢\"], [0, \"⨣\"], [0, \"⨤\"], [0, \"⨥\"], [0, \"⨦\"], [0, \"⨧\"], [1, \"⨩\"], [0, \"⨪\"], [2, \"⨭\"], [0, \"⨮\"], [0, \"⨯\"], [0, \"⨰\"], [0, \"⨱\"], [1, \"⨳\"], [0, \"⨴\"], [0, \"⨵\"], [0, \"⨶\"], [0, \"⨷\"], [0, \"⨸\"], [0, \"⨹\"], [0, \"⨺\"], [0, \"⨻\"], [0, \"⨼\"], [2, \"⨿\"], [0, \"⩀\"], [1, \"⩂\"], [0, \"⩃\"], [0, \"⩄\"], [0, \"⩅\"], [0, \"⩆\"], [0, \"⩇\"], [0, \"⩈\"], [0, \"⩉\"], [0, \"⩊\"], [0, \"⩋\"], [0, \"⩌\"], [0, \"⩍\"], [2, \"⩐\"], [2, \"⩓\"], [0, \"⩔\"], [0, \"⩕\"], [0, \"⩖\"], [0, \"⩗\"], [0, \"⩘\"], [1, \"⩚\"], [0, \"⩛\"], [0, \"⩜\"], [0, \"⩝\"], [1, \"⩟\"], [6, \"⩦\"], [3, \"⩪\"], [2, { v: \"⩭\", n: 824, o: \"⩭̸\" }], [0, \"⩮\"], [0, \"⩯\"], [0, { v: \"⩰\", n: 824, o: \"⩰̸\" }], [0, \"⩱\"], [0, \"⩲\"], [0, \"⩳\"], [0, \"⩴\"], [0, \"⩵\"], [1, \"⩷\"], [0, \"⩸\"], [0, \"⩹\"], [0, \"⩺\"], [0, \"⩻\"], [0, \"⩼\"], [0, { v: \"⩽\", n: 824, o: \"⩽̸\" }], [0, { v: \"⩾\", n: 824, o: \"⩾̸\" }], [0, \"⩿\"], [0, \"⪀\"], [0, \"⪁\"], [0, \"⪂\"], [0, \"⪃\"], [0, \"⪄\"], [0, \"⪅\"], [0, \"⪆\"], [0, \"⪇\"], [0, \"⪈\"], [0, \"⪉\"], [0, \"⪊\"], [0, \"⪋\"], [0, \"⪌\"], [0, \"⪍\"], [0, \"⪎\"], [0, \"⪏\"], [0, \"⪐\"], [0, \"⪑\"], [0, \"⪒\"], [0, \"⪓\"], [0, \"⪔\"], [0, \"⪕\"], [0, \"⪖\"], [0, \"⪗\"], [0, \"⪘\"], [0, \"⪙\"], [0, \"⪚\"], [2, \"⪝\"], [0, \"⪞\"], [0, \"⪟\"], [0, \"⪠\"], [0, { v: \"⪡\", n: 824, o: \"⪡̸\" }], [0, { v: \"⪢\", n: 824, o: \"⪢̸\" }], [1, \"⪤\"], [0, \"⪥\"], [0, \"⪦\"], [0, \"⪧\"], [0, \"⪨\"], [0, \"⪩\"], [0, \"⪪\"], [0, \"⪫\"], [0, { v: \"⪬\", n: 65024, o: \"⪬︀\" }], [0, { v: \"⪭\", n: 65024, o: \"⪭︀\" }], [0, \"⪮\"], [0, { v: \"⪯\", n: 824, o: \"⪯̸\" }], [0, { v: \"⪰\", n: 824, o: \"⪰̸\" }], [2, \"⪳\"], [0, \"⪴\"], [0, \"⪵\"], [0, \"⪶\"], [0, \"⪷\"], [0, \"⪸\"], [0, \"⪹\"], [0, \"⪺\"], [0, \"⪻\"], [0, \"⪼\"], [0, \"⪽\"], [0, \"⪾\"], [0, \"⪿\"], [0, \"⫀\"], [0, \"⫁\"], [0, \"⫂\"], [0, \"⫃\"], [0, \"⫄\"], [0, { v: \"⫅\", n: 824, o: \"⫅̸\" }], [0, { v: \"⫆\", n: 824, o: \"⫆̸\" }], [0, \"⫇\"], [0, \"⫈\"], [2, { v: \"⫋\", n: 65024, o: \"⫋︀\" }], [0, { v: \"⫌\", n: 65024, o: \"⫌︀\" }], [2, \"⫏\"], [0, \"⫐\"], [0, \"⫑\"], [0, \"⫒\"], [0, \"⫓\"], [0, \"⫔\"], [0, \"⫕\"], [0, \"⫖\"], [0, \"⫗\"], [0, \"⫘\"], [0, \"⫙\"], [0, \"⫚\"], [0, \"⫛\"], [8, \"⫤\"], [1, \"⫦\"], [0, \"⫧\"], [0, \"⫨\"], [0, \"⫩\"], [1, \"⫫\"], [0, \"⫬\"], [0, \"⫭\"], [0, \"⫮\"], [0, \"⫯\"], [0, \"⫰\"], [0, \"⫱\"], [0, \"⫲\"], [0, \"⫳\"], [9, { v: \"⫽\", n: 8421, o: \"⫽⃥\" }], [44343, { n: new Map(/* #__PURE__ */ restoreDiff([[56476, \"𝒜\"], [1, \"𝒞\"], [0, \"𝒟\"], [2, \"𝒢\"], [2, \"𝒥\"], [0, \"𝒦\"], [2, \"𝒩\"], [0, \"𝒪\"], [0, \"𝒫\"], [0, \"𝒬\"], [1, \"𝒮\"], [0, \"𝒯\"], [0, \"𝒰\"], [0, \"𝒱\"], [0, \"𝒲\"], [0, \"𝒳\"], [0, \"𝒴\"], [0, \"𝒵\"], [0, \"𝒶\"], [0, \"𝒷\"], [0, \"𝒸\"], [0, \"𝒹\"], [1, \"𝒻\"], [1, \"𝒽\"], [0, \"𝒾\"], [0, \"𝒿\"], [0, \"𝓀\"], [0, \"𝓁\"], [0, \"𝓂\"], [0, \"𝓃\"], [1, \"𝓅\"], [0, \"𝓆\"], [0, \"𝓇\"], [0, \"𝓈\"], [0, \"𝓉\"], [0, \"𝓊\"], [0, \"𝓋\"], [0, \"𝓌\"], [0, \"𝓍\"], [0, \"𝓎\"], [0, \"𝓏\"], [52, \"𝔄\"], [0, \"𝔅\"], [1, \"𝔇\"], [0, \"𝔈\"], [0, \"𝔉\"], [0, \"𝔊\"], [2, \"𝔍\"], [0, \"𝔎\"], [0, \"𝔏\"], [0, \"𝔐\"], [0, \"𝔑\"], [0, \"𝔒\"], [0, \"𝔓\"], [0, \"𝔔\"], [1, \"𝔖\"], [0, \"𝔗\"], [0, \"𝔘\"], [0, \"𝔙\"], [0, \"𝔚\"], [0, \"𝔛\"], [0, \"𝔜\"], [1, \"𝔞\"], [0, \"𝔟\"], [0, \"𝔠\"], [0, \"𝔡\"], [0, \"𝔢\"], [0, \"𝔣\"], [0, \"𝔤\"], [0, \"𝔥\"], [0, \"𝔦\"], [0, \"𝔧\"], [0, \"𝔨\"], [0, \"𝔩\"], [0, \"𝔪\"], [0, \"𝔫\"], [0, \"𝔬\"], [0, \"𝔭\"], [0, \"𝔮\"], [0, \"𝔯\"], [0, \"𝔰\"], [0, \"𝔱\"], [0, \"𝔲\"], [0, \"𝔳\"], [0, \"𝔴\"], [0, \"𝔵\"], [0, \"𝔶\"], [0, \"𝔷\"], [0, \"𝔸\"], [0, \"𝔹\"], [1, \"𝔻\"], [0, \"𝔼\"], [0, \"𝔽\"], [0, \"𝔾\"], [1, \"𝕀\"], [0, \"𝕁\"], [0, \"𝕂\"], [0, \"𝕃\"], [0, \"𝕄\"], [1, \"𝕆\"], [3, \"𝕊\"], [0, \"𝕋\"], [0, \"𝕌\"], [0, \"𝕍\"], [0, \"𝕎\"], [0, \"𝕏\"], [0, \"𝕐\"], [1, \"𝕒\"], [0, \"𝕓\"], [0, \"𝕔\"], [0, \"𝕕\"], [0, \"𝕖\"], [0, \"𝕗\"], [0, \"𝕘\"], [0, \"𝕙\"], [0, \"𝕚\"], [0, \"𝕛\"], [0, \"𝕜\"], [0, \"𝕝\"], [0, \"𝕞\"], [0, \"𝕟\"], [0, \"𝕠\"], [0, \"𝕡\"], [0, \"𝕢\"], [0, \"𝕣\"], [0, \"𝕤\"], [0, \"𝕥\"], [0, \"𝕦\"], [0, \"𝕧\"], [0, \"𝕨\"], [0, \"𝕩\"], [0, \"𝕪\"], [0, \"𝕫\"]])) }], [8906, \"ff\"], [0, \"fi\"], [0, \"fl\"], [0, \"ffi\"], [0, \"ffl\"]]));\n//# sourceMappingURL=encode-html.js.map","export const xmlReplacer = /[\"&'<>$\\x80-\\uFFFF]/g;\nconst xmlCodeMap = new Map([\n [34, \""\"],\n [38, \"&\"],\n [39, \"'\"],\n [60, \"<\"],\n [62, \">\"],\n]);\n// For compatibility with node < 4, we wrap `codePointAt`\nexport const getCodePoint = \n// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\nString.prototype.codePointAt != null\n ? (str, index) => str.codePointAt(index)\n : // http://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae\n (c, index) => (c.charCodeAt(index) & 0xfc00) === 0xd800\n ? (c.charCodeAt(index) - 0xd800) * 0x400 +\n c.charCodeAt(index + 1) -\n 0xdc00 +\n 0x10000\n : c.charCodeAt(index);\n/**\n * Encodes all non-ASCII characters, as well as characters not valid in XML\n * documents using XML entities.\n *\n * If a character has no equivalent entity, a\n * numeric hexadecimal reference (eg. `ü`) will be used.\n */\nexport function encodeXML(str) {\n let ret = \"\";\n let lastIdx = 0;\n let match;\n while ((match = xmlReplacer.exec(str)) !== null) {\n const i = match.index;\n const char = str.charCodeAt(i);\n const next = xmlCodeMap.get(char);\n if (next !== undefined) {\n ret += str.substring(lastIdx, i) + next;\n lastIdx = i + 1;\n }\n else {\n ret += `${str.substring(lastIdx, i)}&#x${getCodePoint(str, i).toString(16)};`;\n // Increase by 1 if we have a surrogate pair\n lastIdx = xmlReplacer.lastIndex += Number((char & 0xfc00) === 0xd800);\n }\n }\n return ret + str.substr(lastIdx);\n}\n/**\n * Encodes all non-ASCII characters, as well as characters not valid in XML\n * documents using numeric hexadecimal reference (eg. `ü`).\n *\n * Have a look at `escapeUTF8` if you want a more concise output at the expense\n * of reduced transportability.\n *\n * @param data String to escape.\n */\nexport const escape = encodeXML;\n/**\n * Creates a function that escapes all characters matched by the given regular\n * expression using the given map of characters to escape to their entities.\n *\n * @param regex Regular expression to match characters to escape.\n * @param map Map of characters to escape to their entities.\n *\n * @returns Function that escapes all characters matched by the given regular\n * expression using the given map of characters to escape to their entities.\n */\nfunction getEscaper(regex, map) {\n return function escape(data) {\n let match;\n let lastIdx = 0;\n let result = \"\";\n while ((match = regex.exec(data))) {\n if (lastIdx !== match.index) {\n result += data.substring(lastIdx, match.index);\n }\n // We know that this character will be in the map.\n result += map.get(match[0].charCodeAt(0));\n // Every match will be of length 1\n lastIdx = match.index + 1;\n }\n return result + data.substring(lastIdx);\n };\n}\n/**\n * Encodes all characters not valid in XML documents using XML entities.\n *\n * Note that the output will be character-set dependent.\n *\n * @param data String to escape.\n */\nexport const escapeUTF8 = getEscaper(/[&<>'\"]/g, xmlCodeMap);\n/**\n * Encodes all characters that have to be escaped in HTML attributes,\n * following {@link https://html.spec.whatwg.org/multipage/parsing.html#escapingString}.\n *\n * @param data String to escape.\n */\nexport const escapeAttribute = getEscaper(/[\"&\\u00A0]/g, new Map([\n [34, \""\"],\n [38, \"&\"],\n [160, \" \"],\n]));\n/**\n * Encodes all characters that have to be escaped in HTML text,\n * following {@link https://html.spec.whatwg.org/multipage/parsing.html#escapingString}.\n *\n * @param data String to escape.\n */\nexport const escapeText = getEscaper(/[&<>\\u00A0]/g, new Map([\n [38, \"&\"],\n [60, \"<\"],\n [62, \">\"],\n [160, \" \"],\n]));\n//# sourceMappingURL=escape.js.map","import { decodeXML, decodeHTML, DecodingMode } from \"./decode.js\";\nimport { encodeHTML, encodeNonAsciiHTML } from \"./encode.js\";\nimport { encodeXML, escapeUTF8, escapeAttribute, escapeText, } from \"./escape.js\";\n/** The level of entities to support. */\nexport var EntityLevel;\n(function (EntityLevel) {\n /** Support only XML entities. */\n EntityLevel[EntityLevel[\"XML\"] = 0] = \"XML\";\n /** Support HTML entities, which are a superset of XML entities. */\n EntityLevel[EntityLevel[\"HTML\"] = 1] = \"HTML\";\n})(EntityLevel || (EntityLevel = {}));\nexport var EncodingMode;\n(function (EncodingMode) {\n /**\n * The output is UTF-8 encoded. Only characters that need escaping within\n * XML will be escaped.\n */\n EncodingMode[EncodingMode[\"UTF8\"] = 0] = \"UTF8\";\n /**\n * The output consists only of ASCII characters. Characters that need\n * escaping within HTML, and characters that aren't ASCII characters will\n * be escaped.\n */\n EncodingMode[EncodingMode[\"ASCII\"] = 1] = \"ASCII\";\n /**\n * Encode all characters that have an equivalent entity, as well as all\n * characters that are not ASCII characters.\n */\n EncodingMode[EncodingMode[\"Extensive\"] = 2] = \"Extensive\";\n /**\n * Encode all characters that have to be escaped in HTML attributes,\n * following {@link https://html.spec.whatwg.org/multipage/parsing.html#escapingString}.\n */\n EncodingMode[EncodingMode[\"Attribute\"] = 3] = \"Attribute\";\n /**\n * Encode all characters that have to be escaped in HTML text,\n * following {@link https://html.spec.whatwg.org/multipage/parsing.html#escapingString}.\n */\n EncodingMode[EncodingMode[\"Text\"] = 4] = \"Text\";\n})(EncodingMode || (EncodingMode = {}));\n/**\n * Decodes a string with entities.\n *\n * @param data String to decode.\n * @param options Decoding options.\n */\nexport function decode(data, options = EntityLevel.XML) {\n const level = typeof options === \"number\" ? options : options.level;\n if (level === EntityLevel.HTML) {\n const mode = typeof options === \"object\" ? options.mode : undefined;\n return decodeHTML(data, mode);\n }\n return decodeXML(data);\n}\n/**\n * Decodes a string with entities. Does not allow missing trailing semicolons for entities.\n *\n * @param data String to decode.\n * @param options Decoding options.\n * @deprecated Use `decode` with the `mode` set to `Strict`.\n */\nexport function decodeStrict(data, options = EntityLevel.XML) {\n var _a;\n const opts = typeof options === \"number\" ? { level: options } : options;\n (_a = opts.mode) !== null && _a !== void 0 ? _a : (opts.mode = DecodingMode.Strict);\n return decode(data, opts);\n}\n/**\n * Encodes a string with entities.\n *\n * @param data String to encode.\n * @param options Encoding options.\n */\nexport function encode(data, options = EntityLevel.XML) {\n const opts = typeof options === \"number\" ? { level: options } : options;\n // Mode `UTF8` just escapes XML entities\n if (opts.mode === EncodingMode.UTF8)\n return escapeUTF8(data);\n if (opts.mode === EncodingMode.Attribute)\n return escapeAttribute(data);\n if (opts.mode === EncodingMode.Text)\n return escapeText(data);\n if (opts.level === EntityLevel.HTML) {\n if (opts.mode === EncodingMode.ASCII) {\n return encodeNonAsciiHTML(data);\n }\n return encodeHTML(data);\n }\n // ASCII and Extensive are equivalent\n return encodeXML(data);\n}\nexport { encodeXML, escape, escapeUTF8, escapeAttribute, escapeText, } from \"./escape.js\";\nexport { encodeHTML, encodeNonAsciiHTML, \n// Legacy aliases (deprecated)\nencodeHTML as encodeHTML4, encodeHTML as encodeHTML5, } from \"./encode.js\";\nexport { EntityDecoder, DecodingMode, decodeXML, decodeHTML, decodeHTMLStrict, decodeHTMLAttribute, \n// Legacy aliases (deprecated)\ndecodeHTML as decodeHTML4, decodeHTML as decodeHTML5, decodeHTMLStrict as decodeHTML4Strict, decodeHTMLStrict as decodeHTML5Strict, decodeXML as decodeXMLStrict, } from \"./decode.js\";\n//# sourceMappingURL=index.js.map","export const elementNames = new Map([\n \"altGlyph\",\n \"altGlyphDef\",\n \"altGlyphItem\",\n \"animateColor\",\n \"animateMotion\",\n \"animateTransform\",\n \"clipPath\",\n \"feBlend\",\n \"feColorMatrix\",\n \"feComponentTransfer\",\n \"feComposite\",\n \"feConvolveMatrix\",\n \"feDiffuseLighting\",\n \"feDisplacementMap\",\n \"feDistantLight\",\n \"feDropShadow\",\n \"feFlood\",\n \"feFuncA\",\n \"feFuncB\",\n \"feFuncG\",\n \"feFuncR\",\n \"feGaussianBlur\",\n \"feImage\",\n \"feMerge\",\n \"feMergeNode\",\n \"feMorphology\",\n \"feOffset\",\n \"fePointLight\",\n \"feSpecularLighting\",\n \"feSpotLight\",\n \"feTile\",\n \"feTurbulence\",\n \"foreignObject\",\n \"glyphRef\",\n \"linearGradient\",\n \"radialGradient\",\n \"textPath\",\n].map((val) => [val.toLowerCase(), val]));\nexport const attributeNames = new Map([\n \"definitionURL\",\n \"attributeName\",\n \"attributeType\",\n \"baseFrequency\",\n \"baseProfile\",\n \"calcMode\",\n \"clipPathUnits\",\n \"diffuseConstant\",\n \"edgeMode\",\n \"filterUnits\",\n \"glyphRef\",\n \"gradientTransform\",\n \"gradientUnits\",\n \"kernelMatrix\",\n \"kernelUnitLength\",\n \"keyPoints\",\n \"keySplines\",\n \"keyTimes\",\n \"lengthAdjust\",\n \"limitingConeAngle\",\n \"markerHeight\",\n \"markerUnits\",\n \"markerWidth\",\n \"maskContentUnits\",\n \"maskUnits\",\n \"numOctaves\",\n \"pathLength\",\n \"patternContentUnits\",\n \"patternTransform\",\n \"patternUnits\",\n \"pointsAtX\",\n \"pointsAtY\",\n \"pointsAtZ\",\n \"preserveAlpha\",\n \"preserveAspectRatio\",\n \"primitiveUnits\",\n \"refX\",\n \"refY\",\n \"repeatCount\",\n \"repeatDur\",\n \"requiredExtensions\",\n \"requiredFeatures\",\n \"specularConstant\",\n \"specularExponent\",\n \"spreadMethod\",\n \"startOffset\",\n \"stdDeviation\",\n \"stitchTiles\",\n \"surfaceScale\",\n \"systemLanguage\",\n \"tableValues\",\n \"targetX\",\n \"targetY\",\n \"textLength\",\n \"viewBox\",\n \"viewTarget\",\n \"xChannelSelector\",\n \"yChannelSelector\",\n \"zoomAndPan\",\n].map((val) => [val.toLowerCase(), val]));\n","/*\n * Module dependencies\n */\nimport * as ElementType from \"domelementtype\";\nimport { encodeXML, escapeAttribute, escapeText } from \"entities\";\n/**\n * Mixed-case SVG and MathML tags & attributes\n * recognized by the HTML parser.\n *\n * @see https://html.spec.whatwg.org/multipage/parsing.html#parsing-main-inforeign\n */\nimport { elementNames, attributeNames } from \"./foreignNames.js\";\nconst unencodedElements = new Set([\n \"style\",\n \"script\",\n \"xmp\",\n \"iframe\",\n \"noembed\",\n \"noframes\",\n \"plaintext\",\n \"noscript\",\n]);\nfunction replaceQuotes(value) {\n return value.replace(/\"/g, \""\");\n}\n/**\n * Format attributes\n */\nfunction formatAttributes(attributes, opts) {\n var _a;\n if (!attributes)\n return;\n const encode = ((_a = opts.encodeEntities) !== null && _a !== void 0 ? _a : opts.decodeEntities) === false\n ? replaceQuotes\n : opts.xmlMode || opts.encodeEntities !== \"utf8\"\n ? encodeXML\n : escapeAttribute;\n return Object.keys(attributes)\n .map((key) => {\n var _a, _b;\n const value = (_a = attributes[key]) !== null && _a !== void 0 ? _a : \"\";\n if (opts.xmlMode === \"foreign\") {\n /* Fix up mixed-case attribute names */\n key = (_b = attributeNames.get(key)) !== null && _b !== void 0 ? _b : key;\n }\n if (!opts.emptyAttrs && !opts.xmlMode && value === \"\") {\n return key;\n }\n return `${key}=\"${encode(value)}\"`;\n })\n .join(\" \");\n}\n/**\n * Self-enclosing tags\n */\nconst singleTag = new Set([\n \"area\",\n \"base\",\n \"basefont\",\n \"br\",\n \"col\",\n \"command\",\n \"embed\",\n \"frame\",\n \"hr\",\n \"img\",\n \"input\",\n \"isindex\",\n \"keygen\",\n \"link\",\n \"meta\",\n \"param\",\n \"source\",\n \"track\",\n \"wbr\",\n]);\n/**\n * Renders a DOM node or an array of DOM nodes to a string.\n *\n * Can be thought of as the equivalent of the `outerHTML` of the passed node(s).\n *\n * @param node Node to be rendered.\n * @param options Changes serialization behavior\n */\nexport function render(node, options = {}) {\n const nodes = \"length\" in node ? node : [node];\n let output = \"\";\n for (let i = 0; i < nodes.length; i++) {\n output += renderNode(nodes[i], options);\n }\n return output;\n}\nexport default render;\nfunction renderNode(node, options) {\n switch (node.type) {\n case ElementType.Root:\n return render(node.children, options);\n // @ts-expect-error We don't use `Doctype` yet\n case ElementType.Doctype:\n case ElementType.Directive:\n return renderDirective(node);\n case ElementType.Comment:\n return renderComment(node);\n case ElementType.CDATA:\n return renderCdata(node);\n case ElementType.Script:\n case ElementType.Style:\n case ElementType.Tag:\n return renderTag(node, options);\n case ElementType.Text:\n return renderText(node, options);\n }\n}\nconst foreignModeIntegrationPoints = new Set([\n \"mi\",\n \"mo\",\n \"mn\",\n \"ms\",\n \"mtext\",\n \"annotation-xml\",\n \"foreignObject\",\n \"desc\",\n \"title\",\n]);\nconst foreignElements = new Set([\"svg\", \"math\"]);\nfunction renderTag(elem, opts) {\n var _a;\n // Handle SVG / MathML in HTML\n if (opts.xmlMode === \"foreign\") {\n /* Fix up mixed-case element names */\n elem.name = (_a = elementNames.get(elem.name)) !== null && _a !== void 0 ? _a : elem.name;\n /* Exit foreign mode at integration points */\n if (elem.parent &&\n foreignModeIntegrationPoints.has(elem.parent.name)) {\n opts = { ...opts, xmlMode: false };\n }\n }\n if (!opts.xmlMode && foreignElements.has(elem.name)) {\n opts = { ...opts, xmlMode: \"foreign\" };\n }\n let tag = `<${elem.name}`;\n const attribs = formatAttributes(elem.attribs, opts);\n if (attribs) {\n tag += ` ${attribs}`;\n }\n if (elem.children.length === 0 &&\n (opts.xmlMode\n ? // In XML mode or foreign mode, and user hasn't explicitly turned off self-closing tags\n opts.selfClosingTags !== false\n : // User explicitly asked for self-closing tags, even in HTML mode\n opts.selfClosingTags && singleTag.has(elem.name))) {\n if (!opts.xmlMode)\n tag += \" \";\n tag += \"/>\";\n }\n else {\n tag += \">\";\n if (elem.children.length > 0) {\n tag += render(elem.children, opts);\n }\n if (opts.xmlMode || !singleTag.has(elem.name)) {\n tag += `</${elem.name}>`;\n }\n }\n return tag;\n}\nfunction renderDirective(elem) {\n return `<${elem.data}>`;\n}\nfunction renderText(elem, opts) {\n var _a;\n let data = elem.data || \"\";\n // If entities weren't decoded, no need to encode them back\n if (((_a = opts.encodeEntities) !== null && _a !== void 0 ? _a : opts.decodeEntities) !== false &&\n !(!opts.xmlMode &&\n elem.parent &&\n unencodedElements.has(elem.parent.name))) {\n data =\n opts.xmlMode || opts.encodeEntities !== \"utf8\"\n ? encodeXML(data)\n : escapeText(data);\n }\n return data;\n}\nfunction renderCdata(elem) {\n return `<![CDATA[${elem.children[0].data}]]>`;\n}\nfunction renderComment(elem) {\n return `<!--${elem.data}-->`;\n}\n","import { isTag, hasChildren } from \"domhandler\";\n/**\n * Search a node and its children for nodes passing a test function. If `node` is not an array, it will be wrapped in one.\n *\n * @category Querying\n * @param test Function to test nodes on.\n * @param node Node to search. Will be included in the result set if it matches.\n * @param recurse Also consider child nodes.\n * @param limit Maximum number of nodes to return.\n * @returns All nodes passing `test`.\n */\nexport function filter(test, node, recurse = true, limit = Infinity) {\n return find(test, Array.isArray(node) ? node : [node], recurse, limit);\n}\n/**\n * Search an array of nodes and their children for nodes passing a test function.\n *\n * @category Querying\n * @param test Function to test nodes on.\n * @param nodes Array of nodes to search.\n * @param recurse Also consider child nodes.\n * @param limit Maximum number of nodes to return.\n * @returns All nodes passing `test`.\n */\nexport function find(test, nodes, recurse, limit) {\n const result = [];\n /** Stack of the arrays we are looking at. */\n const nodeStack = [nodes];\n /** Stack of the indices within the arrays. */\n const indexStack = [0];\n for (;;) {\n // First, check if the current array has any more elements to look at.\n if (indexStack[0] >= nodeStack[0].length) {\n // If we have no more arrays to look at, we are done.\n if (indexStack.length === 1) {\n return result;\n }\n // Otherwise, remove the current array from the stack.\n nodeStack.shift();\n indexStack.shift();\n // Loop back to the start to continue with the next array.\n continue;\n }\n const elem = nodeStack[0][indexStack[0]++];\n if (test(elem)) {\n result.push(elem);\n if (--limit <= 0)\n return result;\n }\n if (recurse && hasChildren(elem) && elem.children.length > 0) {\n /*\n * Add the children to the stack. We are depth-first, so this is\n * the next array we look at.\n */\n indexStack.unshift(0);\n nodeStack.unshift(elem.children);\n }\n }\n}\n/**\n * Finds the first element inside of an array that matches a test function. This is an alias for `Array.prototype.find`.\n *\n * @category Querying\n * @param test Function to test nodes on.\n * @param nodes Array of nodes to search.\n * @returns The first node in the array that passes `test`.\n * @deprecated Use `Array.prototype.find` directly.\n */\nexport function findOneChild(test, nodes) {\n return nodes.find(test);\n}\n/**\n * Finds one element in a tree that passes a test.\n *\n * @category Querying\n * @param test Function to test nodes on.\n * @param nodes Node or array of nodes to search.\n * @param recurse Also consider child nodes.\n * @returns The first node that passes `test`.\n */\nexport function findOne(test, nodes, recurse = true) {\n let elem = null;\n for (let i = 0; i < nodes.length && !elem; i++) {\n const node = nodes[i];\n if (!isTag(node)) {\n continue;\n }\n else if (test(node)) {\n elem = node;\n }\n else if (recurse && node.children.length > 0) {\n elem = findOne(test, node.children, true);\n }\n }\n return elem;\n}\n/**\n * Checks if a tree of nodes contains at least one node passing a test.\n *\n * @category Querying\n * @param test Function to test nodes on.\n * @param nodes Array of nodes to search.\n * @returns Whether a tree of nodes contains at least one node passing the test.\n */\nexport function existsOne(test, nodes) {\n return nodes.some((checked) => isTag(checked) &&\n (test(checked) || existsOne(test, checked.children)));\n}\n/**\n * Search an array of nodes and their children for elements passing a test function.\n *\n * Same as `find`, but limited to elements and with less options, leading to reduced complexity.\n *\n * @category Querying\n * @param test Function to test nodes on.\n * @param nodes Array of nodes to search.\n * @returns All nodes passing `test`.\n */\nexport function findAll(test, nodes) {\n const result = [];\n const nodeStack = [nodes];\n const indexStack = [0];\n for (;;) {\n if (indexStack[0] >= nodeStack[0].length) {\n if (nodeStack.length === 1) {\n return result;\n }\n // Otherwise, remove the current array from the stack.\n nodeStack.shift();\n indexStack.shift();\n // Loop back to the start to continue with the next array.\n continue;\n }\n const elem = nodeStack[0][indexStack[0]++];\n if (!isTag(elem))\n continue;\n if (test(elem))\n result.push(elem);\n if (elem.children.length > 0) {\n indexStack.unshift(0);\n nodeStack.unshift(elem.children);\n }\n }\n}\n//# sourceMappingURL=querying.js.map","import { hasChildren } from \"domhandler\";\n/**\n * Given an array of nodes, remove any member that is contained by another\n * member.\n *\n * @category Helpers\n * @param nodes Nodes to filter.\n * @returns Remaining nodes that aren't contained by other nodes.\n */\nexport function removeSubsets(nodes) {\n let idx = nodes.length;\n /*\n * Check if each node (or one of its ancestors) is already contained in the\n * array.\n */\n while (--idx >= 0) {\n const node = nodes[idx];\n /*\n * Remove the node if it is not unique.\n * We are going through the array from the end, so we only\n * have to check nodes that preceed the node under consideration in the array.\n */\n if (idx > 0 && nodes.lastIndexOf(node, idx - 1) >= 0) {\n nodes.splice(idx, 1);\n continue;\n }\n for (let ancestor = node.parent; ancestor; ancestor = ancestor.parent) {\n if (nodes.includes(ancestor)) {\n nodes.splice(idx, 1);\n break;\n }\n }\n }\n return nodes;\n}\n/**\n * @category Helpers\n * @see {@link http://dom.spec.whatwg.org/#dom-node-comparedocumentposition}\n */\nexport var DocumentPosition;\n(function (DocumentPosition) {\n DocumentPosition[DocumentPosition[\"DISCONNECTED\"] = 1] = \"DISCONNECTED\";\n DocumentPosition[DocumentPosition[\"PRECEDING\"] = 2] = \"PRECEDING\";\n DocumentPosition[DocumentPosition[\"FOLLOWING\"] = 4] = \"FOLLOWING\";\n DocumentPosition[DocumentPosition[\"CONTAINS\"] = 8] = \"CONTAINS\";\n DocumentPosition[DocumentPosition[\"CONTAINED_BY\"] = 16] = \"CONTAINED_BY\";\n})(DocumentPosition || (DocumentPosition = {}));\n/**\n * Compare the position of one node against another node in any other document,\n * returning a bitmask with the values from {@link DocumentPosition}.\n *\n * Document order:\n * > There is an ordering, document order, defined on all the nodes in the\n * > document corresponding to the order in which the first character of the\n * > XML representation of each node occurs in the XML representation of the\n * > document after expansion of general entities. Thus, the document element\n * > node will be the first node. Element nodes occur before their children.\n * > Thus, document order orders element nodes in order of the occurrence of\n * > their start-tag in the XML (after expansion of entities). The attribute\n * > nodes of an element occur after the element and before its children. The\n * > relative order of attribute nodes is implementation-dependent.\n *\n * Source:\n * http://www.w3.org/TR/DOM-Level-3-Core/glossary.html#dt-document-order\n *\n * @category Helpers\n * @param nodeA The first node to use in the comparison\n * @param nodeB The second node to use in the comparison\n * @returns A bitmask describing the input nodes' relative position.\n *\n * See http://dom.spec.whatwg.org/#dom-node-comparedocumentposition for\n * a description of these values.\n */\nexport function compareDocumentPosition(nodeA, nodeB) {\n const aParents = [];\n const bParents = [];\n if (nodeA === nodeB) {\n return 0;\n }\n let current = hasChildren(nodeA) ? nodeA : nodeA.parent;\n while (current) {\n aParents.unshift(current);\n current = current.parent;\n }\n current = hasChildren(nodeB) ? nodeB : nodeB.parent;\n while (current) {\n bParents.unshift(current);\n current = current.parent;\n }\n const maxIdx = Math.min(aParents.length, bParents.length);\n let idx = 0;\n while (idx < maxIdx && aParents[idx] === bParents[idx]) {\n idx++;\n }\n if (idx === 0) {\n return DocumentPosition.DISCONNECTED;\n }\n const sharedParent = aParents[idx - 1];\n const siblings = sharedParent.children;\n const aSibling = aParents[idx];\n const bSibling = bParents[idx];\n if (siblings.indexOf(aSibling) > siblings.indexOf(bSibling)) {\n if (sharedParent === nodeB) {\n return DocumentPosition.FOLLOWING | DocumentPosition.CONTAINED_BY;\n }\n return DocumentPosition.FOLLOWING;\n }\n if (sharedParent === nodeA) {\n return DocumentPosition.PRECEDING | DocumentPosition.CONTAINS;\n }\n return DocumentPosition.PRECEDING;\n}\n/**\n * Sort an array of nodes based on their relative position in the document,\n * removing any duplicate nodes. If the array contains nodes that do not belong\n * to the same document, sort order is unspecified.\n *\n * @category Helpers\n * @param nodes Array of DOM nodes.\n * @returns Collection of unique nodes, sorted in document order.\n */\nexport function uniqueSort(nodes) {\n nodes = nodes.filter((node, i, arr) => !arr.includes(node, i + 1));\n nodes.sort((a, b) => {\n const relative = compareDocumentPosition(a, b);\n if (relative & DocumentPosition.PRECEDING) {\n return -1;\n }\n else if (relative & DocumentPosition.FOLLOWING) {\n return 1;\n }\n return 0;\n });\n return nodes;\n}\n//# sourceMappingURL=helpers.js.map","import { Parser } from \"./Parser.js\";\nexport { Parser } from \"./Parser.js\";\nimport { DomHandler, } from \"domhandler\";\nexport { DomHandler, \n// Old name for DomHandler\nDomHandler as DefaultHandler, } from \"domhandler\";\n// Helper methods\n/**\n * Parses the data, returns the resulting document.\n *\n * @param data The data that should be parsed.\n * @param options Optional options for the parser and DOM handler.\n */\nexport function parseDocument(data, options) {\n const handler = new DomHandler(undefined, options);\n new Parser(handler, options).end(data);\n return handler.root;\n}\n/**\n * Parses data, returns an array of the root nodes.\n *\n * Note that the root nodes still have a `Document` node as their parent.\n * Use `parseDocument` to get the `Document` node instead.\n *\n * @param data The data that should be parsed.\n * @param options Optional options for the parser and DOM handler.\n * @deprecated Use `parseDocument` instead.\n */\nexport function parseDOM(data, options) {\n return parseDocument(data, options).children;\n}\n/**\n * Creates a parser instance, with an attached DOM handler.\n *\n * @param callback A callback that will be called once parsing has been completed, with the resulting document.\n * @param options Optional options for the parser and DOM handler.\n * @param elementCallback An optional callback that will be called every time a tag has been completed inside of the DOM.\n */\nexport function createDocumentStream(callback, options, elementCallback) {\n const handler = new DomHandler((error) => callback(error, handler.root), options, elementCallback);\n return new Parser(handler, options);\n}\n/**\n * Creates a parser instance, with an attached DOM handler.\n *\n * @param callback A callback that will be called once parsing has been completed, with an array of root nodes.\n * @param options Optional options for the parser and DOM handler.\n * @param elementCallback An optional callback that will be called every time a tag has been completed inside of the DOM.\n * @deprecated Use `createDocumentStream` instead.\n */\nexport function createDomStream(callback, options, elementCallback) {\n const handler = new DomHandler(callback, options, elementCallback);\n return new Parser(handler, options);\n}\nexport { default as Tokenizer, QuoteType, } from \"./Tokenizer.js\";\n/*\n * All of the following exports exist for backwards-compatibility.\n * They should probably be removed eventually.\n */\nexport * as ElementType from \"domelementtype\";\nimport { getFeed } from \"domutils\";\nexport { getFeed } from \"domutils\";\nconst parseFeedDefaultOptions = { xmlMode: true };\n/**\n * Parse a feed.\n *\n * @param feed The feed that should be parsed, as a string.\n * @param options Optionally, options for parsing. When using this, you should set `xmlMode` to `true`.\n */\nexport function parseFeed(feed, options = parseFeedDefaultOptions) {\n return getFeed(parseDOM(feed, options));\n}\nexport * as DomUtils from \"domutils\";\n//# sourceMappingURL=index.js.map","import React from \"react\";\nimport { parseDocument, DomUtils } from \"htmlparser2\";\nimport KpointPlayer from \"./KpointPlayer\";\n\nexport const KpointPlayerFromEmbedCode = ({ embedCode, ...rest }) => {\n // Use DOMParser to parse the HTML string\n const document = parseDocument(embedCode);\n const divElement = DomUtils.findOne(\n (el) => el.type === \"tag\" && el.name === \"div\",\n document.children\n );\n if (!divElement) {\n return null;\n }\n const videoId = divElement.attribs[\"data-kvideo-id\"];\n const host = divElement.attribs[\"data-video-host\"];\n const params = JSON.parse(divElement.attribs[\"data-video-params\"] || \"{}\");\n const externalWidgetsConfig = JSON.parse(\n divElement.attribs[\"data-widgets-config\"] || \"{}\"\n );\n const packageId = divElement.attribs[\"data-package-id\"];\n const personalizationInfo = divElement.attribs[\"data-personalization-info\"];\n const thumbnailPath = divElement.attribs[\"data-thumbnail-path\"];\n const isVerticalVideo = divElement.attribs[\"data-ar\"] === \"9:16\";\n const horizontalVideoId = divElement.attribs[\"data-horizontal-video-id\"];\n const verticalVideoId = divElement.attribs[\"data-vertical-video-id\"];\n const fakeVideoId = divElement.attribs[\"data-fake-video-id\"];\n const fakeVerticalVideoId = divElement.attribs[\"data-fake-vertical-video-id\"];\n const fakeHorizontalVideoId =\n divElement.attribs[\"data-fake-horizontal-video-id\"];\n\n const attributes = {\n videoId,\n host,\n params,\n externalWidgetsConfig,\n packageId,\n personalizationInfo,\n thumbnailPath,\n isVerticalVideo,\n horizontalVideoId,\n verticalVideoId,\n fakeVideoId,\n fakeHorizontalVideoId,\n fakeVerticalVideoId,\n ...rest,\n };\n\n return <KpointPlayer {...attributes} />;\n};\n","// Function to send the video play event to Google Analytics\nexport const sendVideoPlayEvent = (videoTitle) => {\n window.gtag(\"event\", \"video_play\", {\n event_category: \"Video\", // Categorizes the event under 'Video'\n event_label: videoTitle, // Labels the event with the video's title\n page_location: window.location.href, // Sends the current page URL\n });\n};\n\n// Function to send the video_pause event to Google Analytics\nexport const sendVideoPauseEvent = (videoTitle) => {\n window.gtag(\"event\", \"video_pause\", {\n event_category: \"Video\", // Categorizes the event under 'Video'\n event_label: videoTitle, // Labels the event with the video's title\n page_location: window.location.href, // Sends the current page URL\n });\n};\n\n// Function to send the video_loaded event to Google Analytics\nexport const sendVideoLoadedEvent = (videoTitle) => {\n window.gtag(\"event\", \"video_loaded\", {\n event_category: \"Video\", // Categorizes the event under 'Video'\n event_label: videoTitle, // Labels the event with the video's title\n page_location: window.location.href, // Sends the current page URL\n });\n};\n\n// Function to send video progress event to Google Analytics\nexport const sendVideoProgressEvent = (progress, videoTitle) => {\n if (window.gtag) {\n window.gtag(\"event\", \"video_progress\", {\n event_category: \"Video\", // Categorizes the event under 'Video'\n event_label: videoTitle, // Labels the event with the video's title\n progress: progress, // Records the progress milestone (e.g., 25%, 50%, 75%, 100%)\n page_location: window.location.href, // Sends the current page URL\n });\n }\n};\n\n// Function to check if this is the first visit by the user\nexport const checkFirstVisit = () => {\n setTimeout(() => {\n if (!localStorage.getItem(\"firstVisit\")) {\n // If this is the user's first visit, mark it\n localStorage.setItem(\"firstVisit\", \"true\");\n\n // Send first visit event to Google Analytics\n window.gtag(\"event\", \"first_visit\", {\n event_category: \"User Engagement\", // Categorizes the event under 'User Engagement'\n page_location: window.location.href, // Sends the current page URL\n });\n }\n }, 100); // Delay execution to ensure proper loading\n};\n\n// Function to track scroll depth on the page\nexport const trackScrollDepth = () => {\n let hasScrolled50 = false; // Flag for 50% scroll depth\n let hasScrolled100 = false; // Flag for 100% scroll depth\n\n // Listen for scroll events\n window.addEventListener(\"scroll\", () => {\n const scrollPosition = window.scrollY + window.innerHeight; // Current scroll position\n const pageHeight = document.documentElement.scrollHeight; // Total height of the page\n\n const scrollPercentage = (scrollPosition / pageHeight) * 100; // Calculate scroll percentage\n\n // Check if the user has scrolled past 50%\n if (scrollPercentage >= 50 && !hasScrolled50) {\n hasScrolled50 = true; // Mark that 50% scroll has been reached\n window.gtag(\"event\", \"scroll_50\", {\n event_category: \"User Engagement\", // Categorizes the event under 'User Engagement'\n page_location: window.location.href, // Sends the current page URL\n });\n }\n\n // Check if the user has scrolled past 100%\n if (scrollPercentage >= 100 && !hasScrolled100) {\n hasScrolled100 = true; // Mark that 100% scroll has been reached\n window.gtag(\"event\", \"scroll_100\", {\n event_category: \"User Engagement\", // Categorizes the event under 'User Engagement'\n page_location: window.location.href, // Sends the current page URL\n });\n }\n });\n};\n\n// Function to send time spent on page event to Google Analytics\nexport const sendTimeSpentEvent = (startTime) => {\n const endTime = new Date().getTime(); // Get the current time\n const timeSpent = Math.round((endTime - startTime) / 1000); // Calculate time spent in seconds\n\n if (window.gtag) {\n window.gtag(\"event\", \"time_on_page\", {\n event_category: \"User Engagement\", // Categorizes the event under 'User Engagement'\n time_spent: `${timeSpent}_seconds`, // Sends the time spent on the page\n page_location: window.location.href, // Sends the current page URL\n });\n }\n};\n\n// Function to track social media share events\nexport const socialMediaShare = (platform, sharingUrl = \"\") => {\n if (window.gtag) {\n window.gtag(\"event\", \"social_share\", {\n event_category: \"User Engagement\", // Categorizes the event under 'User Engagement'\n platform: platform, // The platform being used for sharing (e.g., Facebook, Twitter)\n sharingUrl: sharingUrl, // Optional: URL being shared\n page_location: window.location.href, // Sends the current page URL\n });\n }\n};\n\n// Function to track when the contact form is opened\nexport const trackContactFormOpened = (eventTriggeredFrom) => {\n if (window.gtag) {\n window.gtag(\"event\", \"contact_form_opened\", {\n event_category: \"User Engagement\", // Categorizes the event under 'User Engagement'\n event_triggered_from: eventTriggeredFrom, // Where the event was triggered from\n page_location: window.location.href, // Sends the current page URL\n });\n }\n};\n\n// Function to track when the contact form is submitted\nexport const trackContactFormSubmitted = (eventTriggeredFrom) => {\n if (window.gtag) {\n window.gtag(\"event\", \"contact_form_submitted\", {\n event_category: \"User Engagement\", // Categorizes the event under 'User Engagement'\n event_triggered_from: eventTriggeredFrom, // Where the event was triggered from\n page_location: window.location.href, // Sends the current page URL\n });\n }\n};\n\n// Function to track when the contact form is closed without submission\nexport const trackContactFormClosed = (eventTriggeredFrom) => {\n if (window.gtag) {\n window.gtag(\"event\", \"contact_form_closed_without_submission\", {\n event_category: \"User Engagement\", // Categorizes the event under 'User Engagement'\n event_triggered_from: eventTriggeredFrom, // Where the event was triggered from\n page_location: window.location.href, // Sends the current page URL\n });\n }\n};\n\n// Function to send event when a job description is opened\nexport const sendJobDescriptionOpened = (jobTitle) => {\n if (window.gtag) {\n window.gtag(\"event\", \"Job_description_opened\", {\n event_category: \"User Engagement\", // Categorizes the event under 'User Engagement'\n event_label: jobTitle, // Labels the event with the job title\n page_location: window.location.href, // Sends the current page URL\n });\n }\n};\n\n// Function to send event when a resume is submitted\nexport const SendSubmittedResume = (jobTitle) => {\n if (window.gtag) {\n window.gtag(\"event\", \"Submitted_the_resume\", {\n event_category: \"User Engagement\", // Categorizes the event under 'User Engagement'\n event_label: jobTitle, // Labels the event with the job title\n page_location: window.location.href, // Sends the current page URL\n });\n }\n};\n","import { useLocation } from \"@gatsbyjs/reach-router\";\nimport React, { useState, useEffect } from \"react\";\nexport const baseUrl =\n // process.env.NODE_ENV === \"development\"\n // ? \"http://localhost:1337\"\n // :\n // \"http://localhost:1337\";\n \"https://website-backend.kpoint.com\";\n// : \"https://kpoint-backend.supercode.in\";\n\nexport const siteKey = \"6LeLMm4qAAAAABTXLCiHE_LS83l2z1VxC87u4UoF\";\n\nexport const combineObjects = (arr) => {\n try {\n if (!arr) return arr;\n const combined = {};\n\n arr.forEach((obj) => {\n for (const [key, value] of Object.entries(obj)) {\n if (!combined[key]) {\n combined[key] = value;\n } else {\n combined[key] = combined[key].concat(value);\n }\n }\n });\n\n return combined;\n } catch (error) {\n console.error(\"error: \", error);\n }\n};\n\nexport const handleShare = ({ title, text, url, onSucces, onError }) => {\n if (navigator.share) {\n navigator\n .share({\n title,\n text,\n url,\n })\n .then(() => onSucces())\n .catch((error) => onError(error));\n } else {\n navigator.clipboard\n .writeText(url)\n .then(() =>\n onSucces\n ? onSucces(\"Link has been copied\")\n : alert(\"Link has been copied\")\n );\n }\n};\n\nexport const handleCopy = ({ text, onSuccess, onError } = {}) => {\n try {\n navigator.clipboard\n .writeText(text || window.location.href)\n .then(() =>\n onSuccess\n ? onSuccess(\"Link has been copied\")\n : alert(\"Link has been copied\")\n );\n } catch (error) {\n onError ? onError() : console.error(\"error\", error);\n }\n};\n\nexport const extractAttributes = (inputCode) => {\n const attributeRegex = /(\\w+)\\s*=\\s*(['\"])(.*?)\\2/g;\n const result = {};\n\n let match;\n while ((match = attributeRegex.exec(inputCode)) !== null) {\n const attributeName = match[1];\n const attributeValue = match[3];\n result[attributeName] = attributeValue;\n }\n\n return result;\n};\n\nconst NotallowedFreeDomains = [\n \"gmail.com\",\n \"yahoo.com\",\n \"hotmail.com\",\n \"outlook.com\",\n \"aol.com\",\n];\nexport const isValidEmailFormat = (email) => {\n // Regular expression for basic email validation\n const emailRegex = /^[^\\s@]+@[^\\s@]+\\.[a-zA-Z]{2,4}$/;\n\n return emailRegex.test(email);\n};\n\nexport const isAllowedDomain = (email) => {\n if (isValidEmailFormat(email)) {\n // Extract domain from the email\n const domain = email.split(\"@\")[1];\n\n // Check if the domain is in the list of allowed domains\n return !NotallowedFreeDomains.includes(domain);\n } else {\n return false;\n }\n};\n\nlet GMap;\nexport const GmapData = async ({ lat = 18.53658, lng = 73.7989, mapRef }) => {\n // Request needed libraries.\n //@ts-ignore\n const { Map } = await window.google.maps.importLibrary(\"maps\");\n const { AdvancedMarkerElement } = await window.google.maps.importLibrary(\n \"marker\"\n );\n\n // The map, centered at Uluru\n GMap = new Map(mapRef, {\n zoom: 15,\n center: { lat, lng },\n mapId: \"kPoint_map\",\n });\n\n // The marker, positioned at Uluru\n const marker = new AdvancedMarkerElement({\n map: GMap,\n position: { lat, lng },\n title: \"KPoint-building\",\n });\n};\n\nexport const ScreenSize = {\n isDesktop: () => typeof window !== \"undefined\" && window.innerWidth >= 1100,\n isLaptop: () =>\n typeof window !== \"undefined\" &&\n window.innerWidth > 1100 &&\n window.innerWidth <= 1500,\n isTablet: () =>\n typeof window !== \"undefined\" &&\n window.innerWidth >= 768 &&\n window.innerWidth <= 1200,\n isMobile: () => typeof window !== \"undefined\" && window.innerWidth < 768,\n isLargeScreen: () =>\n typeof window !== \"undefined\" && window.innerWidth >= 1440,\n isWidth: (width) =>\n typeof window !== \"undefined\" && window.innerWidth <= width,\n};\n\nexport const toCamelCase = (str) => {\n if (!str) return \"\";\n\n return str\n .split(/[\\s-]+/) // Split on spaces and hyphens\n .map((word, index) => {\n if (index === 0) {\n return word.toLowerCase();\n }\n // Capitalize the first letter, lowercase the rest\n return word.charAt(0).toUpperCase() + word.slice(1).toLowerCase();\n })\n .join(\"\");\n};\n\nexport const scheduleDemo = async ({ data, fromSuccess, formError }) => {\n try {\n const response = await fetch(`${baseUrl}/api/schedule-demos`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify({\n data,\n }),\n });\n\n if (response.ok) {\n // Handle successful submission\n fromSuccess(true);\n } else {\n // Handle error\n const errorMessage = await response.text();\n const { error } = JSON.parse(errorMessage);\n if (error) {\n if (error.message.includes(\"Email\")) {\n formError(\"Please enter a valid business email Id\");\n } else {\n formError(\"Please enter all the fields\");\n }\n }\n }\n } catch (error) {\n // Handle network or other errors\n console.error(\"Error creating contact:\", error.message);\n }\n};\n\nexport const IsEmbedded = (template) => {\n const location = useLocation();\n const queryParams = new URLSearchParams(location?.search);\n const queryParamsObject = {};\n queryParams.forEach((value, key) => {\n queryParamsObject[key] = value;\n });\n return template\n ? queryParamsObject?.type === template\n ? true\n : false\n : location.pathname.includes(\"/embed\") ||\n location.pathname.includes(\"/forms\");\n};\n\n/**\n * Renders an SVG icon dynamically imported based on provided parameters.\n * @param {object} props - Component props.\n * @param {object} props.style - Inline CSS styles for the SVG icon.\n * @param {string} props.IconName - Name of the SVG icon file to import.\n * @param {string} [props.IconType=\"light\"] - Type of the icon set (e.g., \"light\", \"regular\", \"solid\").\n * @param {object} rest - Additional props to pass to the SVG element.\n * @returns {JSX.Element} - Rendered SVG icon component.\n */\nexport const RenderSvg = React.memo(\n ({ style, IconName, IconType = \"light\", ...rest }) => {\n // Extracting color from style props and setting default styles\n const { color, ...restStyles } = style || {};\n const defaultStyles = {\n height: \"30px\",\n width: \"auto\",\n fill: color || \"black\",\n ...restStyles,\n };\n\n // Importing the SVG dynamically using React.lazy\n const Font = React.lazy(() =>\n import(`../../fontAwasome/svgs/${IconType}/${IconName}.svg`)\n );\n\n // Rendering the SVG icon with suspense fallback\n return (\n <React.Suspense fallback={<>?</>}>\n <Font {...rest} style={defaultStyles} />\n </React.Suspense>\n );\n },\n (preProps, nextprops) => {\n const isEqual =\n preProps?.IconName === nextprops?.IconName &&\n preProps?.IconType === nextprops?.IconType &&\n JSON.stringify(preProps?.style) === JSON.stringify(nextprops?.style);\n return isEqual;\n }\n);\n\n/*render gif code */\n/**\n * Renders a GIF image dynamically imported based on provided parameters.\n * @param {object} props - Component props.\n * @param {object} props.style - Inline CSS styles for the GIF image.\n * @param {string} props.gifName - Name of the GIF file to import.\n * @param {string} [props.gifFolder=\"animations\"] - Folder containing the GIF files.\n * @param {object} rest - Additional props to pass to the img element.\n * @returns {JSX.Element} - Rendered GIF image component.\n */\nexport const RenderGif = React.memo(\n ({ style, gifName, gifFolder = \"animations\", ...rest }) => {\n const [gifSrc, setGifSrc] = useState(null);\n\n useEffect(() => {\n const importGif = async () => {\n try {\n const { default: src } = await import(\n `../../fontAwasome/gifs/${gifFolder}/${gifName}.gif`\n );\n setGifSrc(src);\n } catch (error) {\n console.error(`Error loading GIF: ${gifName}`, error);\n }\n };\n\n importGif();\n }, [gifName, gifFolder]);\n\n const defaultStyles = {\n maxWidth: \"100%\",\n height: \"auto\",\n ...style,\n };\n\n if (!gifSrc) {\n return <div></div>;\n }\n\n return <img src={gifSrc} style={defaultStyles} alt={gifName} {...rest} />;\n },\n (prevProps, nextProps) => {\n return (\n prevProps.gifName === nextProps.gifName &&\n prevProps.gifFolder === nextProps.gifFolder &&\n JSON.stringify(prevProps.style) === JSON.stringify(nextProps.style)\n );\n }\n);\n\nexport const playORPauseVideo = ({ id, status }) => {\n let homepageBannerId = document.getElementById(id);\n if (homepageBannerId && status) {\n const isMuted = homepageBannerId.getAttribute(\"data-muted\");\n homepageBannerId.setAttribute(\n \"video-status\",\n status === \"open\" ? \"pause\" : \"play\"\n );\n if (status === \"open\")\n homepageBannerId.setAttribute(\"video-isMuted\", isMuted);\n homepageBannerId.click();\n }\n};\n\n//share job url\nexport const getJobShareUrl = (slug) => {\n const origin = typeof window !== \"undefined\" ? window.location.origin : \"\";\n const pathname =\n typeof window !== \"undefined\" ? window.location.pathname : \"\";\n return `${origin}${pathname}?job=${slug}`;\n};\n","'use strict';\n\nvar reactIs = require('react-is');\n\n/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\nvar REACT_STATICS = {\n childContextTypes: true,\n contextType: true,\n contextTypes: true,\n defaultProps: true,\n displayName: true,\n getDefaultProps: true,\n getDerivedStateFromError: true,\n getDerivedStateFromProps: true,\n mixins: true,\n propTypes: true,\n type: true\n};\nvar KNOWN_STATICS = {\n name: true,\n length: true,\n prototype: true,\n caller: true,\n callee: true,\n arguments: true,\n arity: true\n};\nvar FORWARD_REF_STATICS = {\n '$$typeof': true,\n render: true,\n defaultProps: true,\n displayName: true,\n propTypes: true\n};\nvar MEMO_STATICS = {\n '$$typeof': true,\n compare: true,\n defaultProps: true,\n displayName: true,\n propTypes: true,\n type: true\n};\nvar TYPE_STATICS = {};\nTYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;\nTYPE_STATICS[reactIs.Memo] = MEMO_STATICS;\n\nfunction getStatics(component) {\n // React v16.11 and below\n if (reactIs.isMemo(component)) {\n return MEMO_STATICS;\n } // React v16.12 and above\n\n\n return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;\n}\n\nvar defineProperty = Object.defineProperty;\nvar getOwnPropertyNames = Object.getOwnPropertyNames;\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar getPrototypeOf = Object.getPrototypeOf;\nvar objectPrototype = Object.prototype;\nfunction hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {\n if (typeof sourceComponent !== 'string') {\n // don't hoist over string (html) components\n if (objectPrototype) {\n var inheritedComponent = getPrototypeOf(sourceComponent);\n\n if (inheritedComponent && inheritedComponent !== objectPrototype) {\n hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);\n }\n }\n\n var keys = getOwnPropertyNames(sourceComponent);\n\n if (getOwnPropertySymbols) {\n keys = keys.concat(getOwnPropertySymbols(sourceComponent));\n }\n\n var targetStatics = getStatics(targetComponent);\n var sourceStatics = getStatics(sourceComponent);\n\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n\n if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {\n var descriptor = getOwnPropertyDescriptor(sourceComponent, key);\n\n try {\n // Avoid failures from read-only properties\n defineProperty(targetComponent, key, descriptor);\n } catch (e) {}\n }\n }\n }\n\n return targetComponent;\n}\n\nmodule.exports = hoistNonReactStatics;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n/**\n * Use invariant() to assert state which your program assumes to be true.\n *\n * Provide sprintf-style format (only %s is supported) and arguments\n * to provide information about what broke and what you were\n * expecting.\n *\n * The invariant message will be stripped in production, but the invariant\n * will remain to ensure logic does not differ in production.\n */\n\nvar invariant = function(condition, format, a, b, c, d, e, f) {\n if (process.env.NODE_ENV !== 'production') {\n if (format === undefined) {\n throw new Error('invariant requires an error message argument');\n }\n }\n\n if (!condition) {\n var error;\n if (format === undefined) {\n error = new Error(\n 'Minified exception occurred; use the non-minified dev environment ' +\n 'for the full error message and additional helpful warnings.'\n );\n } else {\n var args = [a, b, c, d, e, f];\n var argIndex = 0;\n error = new Error(\n format.replace(/%s/g, function() { return args[argIndex++]; })\n );\n error.name = 'Invariant Violation';\n }\n\n error.framesToPop = 1; // we don't care about invariant's own frame\n throw error;\n }\n};\n\nmodule.exports = invariant;\n","// extracted by mini-css-extract-plugin\nexport var AboutSectionContainer = \"sectionLayout-module--AboutSectionContainer--48ebe\";\nexport var BannerVideo = \"sectionLayout-module--BannerVideo--e37fd\";\nexport var CircleDescriptionTitle = \"sectionLayout-module--CircleDescriptionTitle--19854\";\nexport var DesginationCompany = \"sectionLayout-module--DesginationCompany--4c702\";\nexport var DesginationContainer = \"sectionLayout-module--DesginationContainer--6f3fa\";\nexport var DesginationDescription = \"sectionLayout-module--DesginationDescription--ceb19\";\nexport var DesginationName = \"sectionLayout-module--DesginationName--b3245\";\nexport var DesginationTitle = \"sectionLayout-module--DesginationTitle--18ff3\";\nexport var MisionVisonTitleDesc = \"sectionLayout-module--MisionVisonTitleDesc--33ffe\";\nexport var PlatformSectionContainer = \"sectionLayout-module--PlatformSectionContainer--f4337\";\nexport var PlatformTitleDesc = \"sectionLayout-module--PlatformTitleDesc--0a196\";\nexport var ScheduleADemo = \"sectionLayout-module--ScheduleADemo--b2b3e\";\nexport var ScheduleADemoDesc = \"sectionLayout-module--ScheduleADemoDesc--759f2\";\nexport var ScheduleADemoForm = \"sectionLayout-module--ScheduleADemoForm--27e14\";\nexport var ScheduleADemoHeading = \"sectionLayout-module--ScheduleADemoHeading--4d499\";\nexport var ScheduleADemoThankyouText = \"sectionLayout-module--ScheduleADemoThankyouText--cf421\";\nexport var ScheduleADemoWelcomeText = \"sectionLayout-module--ScheduleADemoWelcomeText--f581e\";\nexport var SecondaryCircleCardLayout = \"sectionLayout-module--SecondaryCircleCardLayout--eb18b\";\nexport var SecondarySquareCardLayout = \"sectionLayout-module--SecondarySquareCardLayout--68929\";\nexport var SecondarySquareCardLayoutContent = \"sectionLayout-module--SecondarySquareCardLayoutContent--ebc6b\";\nexport var SecondarySquareCardLayoutSecondaryText = \"sectionLayout-module--SecondarySquareCardLayoutSecondaryText--c0ae2\";\nexport var UseCaseSectionContainer = \"sectionLayout-module--UseCaseSectionContainer--d8461\";\nexport var bgVideo = \"sectionLayout-module--bgVideo--47a03\";\nexport var blackText = \"sectionLayout-module--blackText--3bb5b\";\nexport var careersContainer = \"sectionLayout-module--careersContainer--273d7\";\nexport var clientsDescription = \"sectionLayout-module--clientsDescription--c2722\";\nexport var clientsNameDesignation = \"sectionLayout-module--clientsNameDesignation--e4cdd\";\nexport var connectH2 = \"sectionLayout-module--connectH2--581a9\";\nexport var container = \"sectionLayout-module--container--61461\";\nexport var contentBox = \"sectionLayout-module--contentBox--cf796\";\nexport var copyDiv = \"sectionLayout-module--copyDiv--49a27\";\nexport var demoButton = \"sectionLayout-module--demoButton--d4e2f\";\nexport var description = \"sectionLayout-module--description--1649b\";\nexport var descriptionPlatform = \"sectionLayout-module--descriptionPlatform--19596\";\nexport var descriptionText = \"sectionLayout-module--descriptionText--1c6d6\";\nexport var emailInputContainer = \"sectionLayout-module--emailInputContainer--50b11\";\nexport var embedVideosContainer = \"sectionLayout-module--embedVideosContainer--fe7b4\";\nexport var fadeIn = \"sectionLayout-module--fadeIn--d9d9e\";\nexport var fadeOut = \"sectionLayout-module--fadeOut--2370f\";\nexport var formSubmitSuccess = \"sectionLayout-module--formSubmitSuccess--b1dd0\";\nexport var heading = \"sectionLayout-module--heading--488ee\";\nexport var headingContainer = \"sectionLayout-module--headingContainer--1be2a\";\nexport var kpointPopupLogo = \"sectionLayout-module--kpointPopupLogo--f8f69\";\nexport var lifeatkpointContainer = \"sectionLayout-module--lifeatkpointContainer--10d27\";\nexport var minutes = \"sectionLayout-module--minutes--cc33b\";\nexport var mystoryContainer = \"sectionLayout-module--mystoryContainer--a4238\";\nexport var peopleCardLayout = \"sectionLayout-module--peopleCardLayout--d6fa5\";\nexport var peopleContainer = \"sectionLayout-module--peopleContainer--ae3fd\";\nexport var queryText = \"sectionLayout-module--queryText--8080c\";\nexport var shareContainer = \"sectionLayout-module--shareContainer--4c845\";\nexport var shareDivider = \"sectionLayout-module--shareDivider--331d7\";\nexport var shareIcon = \"sectionLayout-module--shareIcon--f475d\";\nexport var shareSocialContainer = \"sectionLayout-module--shareSocialContainer--f7a52\";\nexport var shareSocialLink = \"sectionLayout-module--shareSocialLink--6b74c\";\nexport var shareSocialLinkImg = \"sectionLayout-module--shareSocialLinkImg--b2679\";\nexport var shareTitle = \"sectionLayout-module--shareTitle--5fcec\";\nexport var successMessageBox = \"sectionLayout-module--successMessageBox--01066\";\nexport var useCaseTitleDesc = \"sectionLayout-module--useCaseTitleDesc--99584\";\nexport var videoContainer = \"sectionLayout-module--videoContainer--ac1ba\";\nexport var whiteText = \"sectionLayout-module--whiteText--763be\";","// Generated by CoffeeScript 1.12.2\n(function() {\n var getNanoSeconds, hrtime, loadTime, moduleLoadTime, nodeLoadTime, upTime;\n\n if ((typeof performance !== \"undefined\" && performance !== null) && performance.now) {\n module.exports = function() {\n return performance.now();\n };\n } else if ((typeof process !== \"undefined\" && process !== null) && process.hrtime) {\n module.exports = function() {\n return (getNanoSeconds() - nodeLoadTime) / 1e6;\n };\n hrtime = process.hrtime;\n getNanoSeconds = function() {\n var hr;\n hr = hrtime();\n return hr[0] * 1e9 + hr[1];\n };\n moduleLoadTime = getNanoSeconds();\n upTime = process.uptime() * 1e9;\n nodeLoadTime = moduleLoadTime - upTime;\n } else if (Date.now) {\n module.exports = function() {\n return Date.now() - loadTime;\n };\n loadTime = Date.now();\n } else {\n module.exports = function() {\n return new Date().getTime() - loadTime;\n };\n loadTime = new Date().getTime();\n }\n\n}).call(this);\n\n//# sourceMappingURL=performance-now.js.map\n","var now = require('performance-now')\n , root = typeof window === 'undefined' ? global : window\n , vendors = ['moz', 'webkit']\n , suffix = 'AnimationFrame'\n , raf = root['request' + suffix]\n , caf = root['cancel' + suffix] || root['cancelRequest' + suffix]\n\nfor(var i = 0; !raf && i < vendors.length; i++) {\n raf = root[vendors[i] + 'Request' + suffix]\n caf = root[vendors[i] + 'Cancel' + suffix]\n || root[vendors[i] + 'CancelRequest' + suffix]\n}\n\n// Some versions of FF have rAF but not cAF\nif(!raf || !caf) {\n var last = 0\n , id = 0\n , queue = []\n , frameDuration = 1000 / 60\n\n raf = function(callback) {\n if(queue.length === 0) {\n var _now = now()\n , next = Math.max(0, frameDuration - (_now - last))\n last = next + _now\n setTimeout(function() {\n var cp = queue.slice(0)\n // Clear queue here to prevent\n // callbacks from appending listeners\n // to the current frame's queue\n queue.length = 0\n for(var i = 0; i < cp.length; i++) {\n if(!cp[i].cancelled) {\n try{\n cp[i].callback(last)\n } catch(e) {\n setTimeout(function() { throw e }, 0)\n }\n }\n }\n }, Math.round(next))\n }\n queue.push({\n handle: ++id,\n callback: callback,\n cancelled: false\n })\n return id\n }\n\n caf = function(handle) {\n for(var i = 0; i < queue.length; i++) {\n if(queue[i].handle === handle) {\n queue[i].cancelled = true\n }\n }\n }\n}\n\nmodule.exports = function(fn) {\n // Wrap in a new function to prevent\n // `cancel` potentially being assigned\n // to the native rAF function\n return raf.call(root, fn)\n}\nmodule.exports.cancel = function() {\n caf.apply(root, arguments)\n}\nmodule.exports.polyfill = function(object) {\n if (!object) {\n object = root;\n }\n object.requestAnimationFrame = raf\n object.cancelAnimationFrame = caf\n}\n","(function(a,b){\"object\"==typeof exports&&\"undefined\"!=typeof module?b(exports,require(\"@babel/runtime/helpers/defineProperty\"),require(\"@babel/runtime/helpers/objectWithoutPropertiesLoose\"),require(\"react\")):\"function\"==typeof define&&define.amd?define([\"exports\",\"@babel/runtime/helpers/defineProperty\",\"@babel/runtime/helpers/objectWithoutPropertiesLoose\",\"react\"],b):(a=\"undefined\"==typeof globalThis?a||self:globalThis,b(a.Img={},a._defineProperty,a._objectWithoutPropertiesLoose,a.React))})(this,function(a,b,c,d){\"use strict\";function e(a){return a&&\"object\"==typeof a&&\"default\"in a?a:{default:a}}function f(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function g(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?f(Object(b),!0).forEach(function(c){l[\"default\"](a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):f(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}function h(a){var b=a.srcList,c=a.imgPromise,e=void 0===c?o({decode:!0}):c,f=a.useSuspense,h=void 0===f||f,i=d.useState(!1),j=i[1],k=p(q(b)),l=k.join(\"\");if(r[l]||(r[l]={promise:s(k,e),cache:\"pending\",error:null}),\"resolved\"===r[l].cache)return{src:r[l].src,isLoading:!1,error:null};if(\"rejected\"===r[l].cache){if(h)throw r[l].error;return{isLoading:!1,error:r[l].error,src:void 0}}if(r[l].promise.then(function(a){r[l]=g(g({},r[l]),{},{cache:\"resolved\",src:a}),h||j(l)})[\"catch\"](function(a){r[l]=g(g({},r[l]),{},{cache:\"rejected\",error:a}),h||j(l)}),h)throw r[l].promise;return{isLoading:!0,src:void 0,error:null}}function j(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function k(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?j(Object(b),!0).forEach(function(c){l[\"default\"](a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):j(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}var l=e(b),m=e(c),n=e(d),o=function(a){var b=a.decode,c=a.crossOrigin,d=void 0===c?\"\":c;return function(a){return new Promise(function(c,e){var f=new Image;d&&(f.crossOrigin=d),f.onload=function(){(!(void 0!==b)||b)&&f.decode?f.decode().then(c)[\"catch\"](e):c()},f.onerror=e,f.src=a})}},p=function(b){return b.filter(function(a){return a})},q=function(a){return Array.isArray(a)?a:[a]},r={},s=function(a,b){var c=!1;return new Promise(function(d,e){var f=function(a){return b(a).then(function(){c=!0,d(a)})};a.reduce(function(a,b){return a[\"catch\"](function(){if(!c)return f(b)})},f(a.shift()))[\"catch\"](e)})},t=[\"decode\",\"src\",\"loader\",\"unloader\",\"container\",\"loaderContainer\",\"unloaderContainer\",\"imgPromise\",\"crossorigin\",\"useSuspense\"],u=function(a){return a};a.Img=function(a){var b=a.decode,c=a.src,d=void 0===c?[]:c,e=a.loader,f=void 0===e?null:e,g=a.unloader,i=void 0===g?null:g,j=a.container,l=void 0===j?u:j,p=a.loaderContainer,q=void 0===p?u:p,r=a.unloaderContainer,s=void 0===r?u:r,v=a.imgPromise,w=a.crossorigin,x=a.useSuspense,y=void 0!==x&&x,z=m[\"default\"](a,t);v=v||o({decode:!(void 0!==b)||b,crossOrigin:w});var A=h({srcList:d,imgPromise:v,useSuspense:y}),B=A.src,C=A.isLoading;return B?l(n[\"default\"].createElement(\"img\",k({src:B},z))):!y&&C?q(f):!y&&i?s(i):null},a.useImage=h,Object.defineProperty(a,\"__esModule\",{value:!0})});\n//# sourceMappingURL=index.js.map\n","/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","/**\n * @license React\n * react-server-dom-webpack.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var k=require(\"react\"),l={stream:!0},n=new Map,p=Symbol.for(\"react.element\"),q=Symbol.for(\"react.lazy\"),r=Symbol.for(\"react.default_value\"),t=k.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ContextRegistry;function u(a){t[a]||(t[a]=k.createServerContext(a,r));return t[a]}function v(a,b,c){this._status=a;this._value=b;this._response=c}v.prototype.then=function(a){0===this._status?(null===this._value&&(this._value=[]),this._value.push(a)):a()};\nfunction w(a){switch(a._status){case 3:return a._value;case 1:var b=JSON.parse(a._value,a._response._fromJSON);a._status=3;return a._value=b;case 2:b=a._value;for(var c=b.chunks,d=0;d<c.length;d++){var e=n.get(c[d]);if(null!==e)throw e;}c=__webpack_require__(b.id);b=\"*\"===b.name?c:\"\"===b.name?c.__esModule?c.default:c:c[b.name];a._status=3;return a._value=b;case 0:throw a;default:throw a._value;}}function x(){var a=y(this,0);return w(a)}function z(a,b){return new v(3,b,a)}\nfunction A(a){if(null!==a)for(var b=0;b<a.length;b++)(0,a[b])()}function C(a,b){if(0===a._status){var c=a._value;a._status=4;a._value=b;A(c)}}function D(a,b){a._chunks.forEach(function(a){C(a,b)})}function y(a,b){var c=a._chunks,d=c.get(b);d||(d=new v(0,null,a),c.set(b,d));return d}\nfunction E(a,b,c){switch(c[0]){case \"$\":if(\"$\"===c)return p;if(\"$\"===c[1]||\"@\"===c[1])return c.substring(1);b=parseInt(c.substring(1),16);a=y(a,b);return w(a);case \"@\":return b=parseInt(c.substring(1),16),a=y(a,b),{$$typeof:q,_payload:a,_init:w}}return c}function F(a){D(a,Error(\"Connection closed.\"))}\nfunction G(a,b){if(\"\"!==b){var c=b[0],d=b.indexOf(\":\",1),e=parseInt(b.substring(1,d),16);d=b.substring(d+1);switch(c){case \"J\":b=a._chunks;(c=b.get(e))?0===c._status&&(a=c._value,c._status=1,c._value=d,A(a)):b.set(e,new v(1,d,a));break;case \"M\":b=a._chunks;c=b.get(e);d=JSON.parse(d,a._fromJSON);var f=a._bundlerConfig;d=f?f[d.id][d.name]:d;f=d.chunks;for(var h=0;h<f.length;h++){var g=f[h];if(void 0===n.get(g)){var B=__webpack_chunk_load__(g),m=n.set.bind(n,g,null),J=n.set.bind(n,g);B.then(m,J);n.set(g,\nB)}}c?0===c._status&&(a=c._value,c._status=2,c._value=d,A(a)):b.set(e,new v(2,d,a));break;case \"P\":a._chunks.set(e,z(a,u(d).Provider));break;case \"S\":c=JSON.parse(d);a._chunks.set(e,z(a,Symbol.for(c)));break;case \"E\":b=JSON.parse(d);c=Error(b.message);c.stack=b.stack;b=a._chunks;(d=b.get(e))?C(d,c):b.set(e,new v(4,c,a));break;default:throw Error(\"Error parsing the data. It's probably an error code or network corruption.\");}}}\nfunction H(a){return function(b,c){return\"string\"===typeof c?E(a,this,c):\"object\"===typeof c&&null!==c?(b=c[0]===p?{$$typeof:p,type:c[1],key:c[2],ref:null,props:c[3],_owner:null}:c,b):c}}function I(a){var b=new TextDecoder,c=new Map;a={_bundlerConfig:a,_chunks:c,readRoot:x,_partialRow:\"\",_stringDecoder:b};a._fromJSON=H(a);return a}\nfunction K(a,b){function c(b){var h=b.value;if(b.done)F(a);else{b=h;h=a._stringDecoder;for(var g=b.indexOf(10);-1<g;){var f=a._partialRow;var m=b.subarray(0,g);m=h.decode(m);G(a,f+m);a._partialRow=\"\";b=b.subarray(g+1);g=b.indexOf(10)}a._partialRow+=h.decode(b,l);return e.read().then(c,d)}}function d(b){D(a,b)}var e=b.getReader();e.read().then(c,d)}exports.createFromFetch=function(a,b){var c=I(b&&b.moduleMap?b.moduleMap:null);a.then(function(a){K(c,a.body)},function(a){D(c,a)});return c};\nexports.createFromReadableStream=function(a,b){b=I(b&&b.moduleMap?b.moduleMap:null);K(b,a);return b};\nexports.createFromXHR=function(a,b){function c(){for(var b=a.responseText,c=f,d=b.indexOf(\"\\n\",c);-1<d;)c=e._partialRow+b.substring(c,d),G(e,c),e._partialRow=\"\",c=d+1,d=b.indexOf(\"\\n\",c);e._partialRow+=b.substring(c);f=b.length}function d(){D(e,new TypeError(\"Network error\"))}var e=I(b&&b.moduleMap?b.moduleMap:null),f=0;a.addEventListener(\"progress\",c);a.addEventListener(\"load\",function(){c();F(e)});a.addEventListener(\"error\",d);a.addEventListener(\"abort\",d);a.addEventListener(\"timeout\",d);return e};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-server-dom-webpack.production.min.js');\n} else {\n module.exports = require('./cjs/react-server-dom-webpack.development.js');\n}\n","// easing functions from \"Tween.js\"\nexports.linear = function(n){\n return n;\n};\n\nexports.inQuad = function(n){\n return n * n;\n};\n\nexports.outQuad = function(n){\n return n * (2 - n);\n};\n\nexports.inOutQuad = function(n){\n n *= 2;\n if (n < 1) return 0.5 * n * n;\n return - 0.5 * (--n * (n - 2) - 1);\n};\n\nexports.inCube = function(n){\n return n * n * n;\n};\n\nexports.outCube = function(n){\n return --n * n * n + 1;\n};\n\nexports.inOutCube = function(n){\n n *= 2;\n if (n < 1) return 0.5 * n * n * n;\n return 0.5 * ((n -= 2 ) * n * n + 2);\n};\n\nexports.inQuart = function(n){\n return n * n * n * n;\n};\n\nexports.outQuart = function(n){\n return 1 - (--n * n * n * n);\n};\n\nexports.inOutQuart = function(n){\n n *= 2;\n if (n < 1) return 0.5 * n * n * n * n;\n return -0.5 * ((n -= 2) * n * n * n - 2);\n};\n\nexports.inQuint = function(n){\n return n * n * n * n * n;\n}\n\nexports.outQuint = function(n){\n return --n * n * n * n * n + 1;\n}\n\nexports.inOutQuint = function(n){\n n *= 2;\n if (n < 1) return 0.5 * n * n * n * n * n;\n return 0.5 * ((n -= 2) * n * n * n * n + 2);\n};\n\nexports.inSine = function(n){\n return 1 - Math.cos(n * Math.PI / 2 );\n};\n\nexports.outSine = function(n){\n return Math.sin(n * Math.PI / 2);\n};\n\nexports.inOutSine = function(n){\n return .5 * (1 - Math.cos(Math.PI * n));\n};\n\nexports.inExpo = function(n){\n return 0 == n ? 0 : Math.pow(1024, n - 1);\n};\n\nexports.outExpo = function(n){\n return 1 == n ? n : 1 - Math.pow(2, -10 * n);\n};\n\nexports.inOutExpo = function(n){\n if (0 == n) return 0;\n if (1 == n) return 1;\n if ((n *= 2) < 1) return .5 * Math.pow(1024, n - 1);\n return .5 * (-Math.pow(2, -10 * (n - 1)) + 2);\n};\n\nexports.inCirc = function(n){\n return 1 - Math.sqrt(1 - n * n);\n};\n\nexports.outCirc = function(n){\n return Math.sqrt(1 - (--n * n));\n};\n\nexports.inOutCirc = function(n){\n n *= 2\n if (n < 1) return -0.5 * (Math.sqrt(1 - n * n) - 1);\n return 0.5 * (Math.sqrt(1 - (n -= 2) * n) + 1);\n};\n\nexports.inBack = function(n){\n var s = 1.70158;\n return n * n * (( s + 1 ) * n - s);\n};\n\nexports.outBack = function(n){\n var s = 1.70158;\n return --n * n * ((s + 1) * n + s) + 1;\n};\n\nexports.inOutBack = function(n){\n var s = 1.70158 * 1.525;\n if ( ( n *= 2 ) < 1 ) return 0.5 * ( n * n * ( ( s + 1 ) * n - s ) );\n return 0.5 * ( ( n -= 2 ) * n * ( ( s + 1 ) * n + s ) + 2 );\n};\n\nexports.inBounce = function(n){\n return 1 - exports.outBounce(1 - n);\n};\n\nexports.outBounce = function(n){\n if ( n < ( 1 / 2.75 ) ) {\n return 7.5625 * n * n;\n } else if ( n < ( 2 / 2.75 ) ) {\n return 7.5625 * ( n -= ( 1.5 / 2.75 ) ) * n + 0.75;\n } else if ( n < ( 2.5 / 2.75 ) ) {\n return 7.5625 * ( n -= ( 2.25 / 2.75 ) ) * n + 0.9375;\n } else {\n return 7.5625 * ( n -= ( 2.625 / 2.75 ) ) * n + 0.984375;\n }\n};\n\nexports.inOutBounce = function(n){\n if (n < .5) return exports.inBounce(n * 2) * .5;\n return exports.outBounce(n * 2 - 1) * .5 + .5;\n};\n\nexports.inElastic = function(n){\n var s, a = 0.1, p = 0.4;\n if ( n === 0 ) return 0;\n if ( n === 1 ) return 1;\n if ( !a || a < 1 ) { a = 1; s = p / 4; }\n else s = p * Math.asin( 1 / a ) / ( 2 * Math.PI );\n return - ( a * Math.pow( 2, 10 * ( n -= 1 ) ) * Math.sin( ( n - s ) * ( 2 * Math.PI ) / p ) );\n};\n\nexports.outElastic = function(n){\n var s, a = 0.1, p = 0.4;\n if ( n === 0 ) return 0;\n if ( n === 1 ) return 1;\n if ( !a || a < 1 ) { a = 1; s = p / 4; }\n else s = p * Math.asin( 1 / a ) / ( 2 * Math.PI );\n return ( a * Math.pow( 2, - 10 * n) * Math.sin( ( n - s ) * ( 2 * Math.PI ) / p ) + 1 );\n};\n\nexports.inOutElastic = function(n){\n var s, a = 0.1, p = 0.4;\n if ( n === 0 ) return 0;\n if ( n === 1 ) return 1;\n if ( !a || a < 1 ) { a = 1; s = p / 4; }\n else s = p * Math.asin( 1 / a ) / ( 2 * Math.PI );\n if ( ( n *= 2 ) < 1 ) return - 0.5 * ( a * Math.pow( 2, 10 * ( n -= 1 ) ) * Math.sin( ( n - s ) * ( 2 * Math.PI ) / p ) );\n return a * Math.pow( 2, -10 * ( n -= 1 ) ) * Math.sin( ( n - s ) * ( 2 * Math.PI ) / p ) * 0.5 + 1;\n};\n\n// aliases\nexports['in-quad'] = exports.inQuad;\nexports['out-quad'] = exports.outQuad;\nexports['in-out-quad'] = exports.inOutQuad;\nexports['in-cube'] = exports.inCube;\nexports['out-cube'] = exports.outCube;\nexports['in-out-cube'] = exports.inOutCube;\nexports['in-quart'] = exports.inQuart;\nexports['out-quart'] = exports.outQuart;\nexports['in-out-quart'] = exports.inOutQuart;\nexports['in-quint'] = exports.inQuint;\nexports['out-quint'] = exports.outQuint;\nexports['in-out-quint'] = exports.inOutQuint;\nexports['in-sine'] = exports.inSine;\nexports['out-sine'] = exports.outSine;\nexports['in-out-sine'] = exports.inOutSine;\nexports['in-expo'] = exports.inExpo;\nexports['out-expo'] = exports.outExpo;\nexports['in-out-expo'] = exports.inOutExpo;\nexports['in-circ'] = exports.inCirc;\nexports['out-circ'] = exports.outCirc;\nexports['in-out-circ'] = exports.inOutCirc;\nexports['in-back'] = exports.inBack;\nexports['out-back'] = exports.outBack;\nexports['in-out-back'] = exports.inOutBack;\nexports['in-bounce'] = exports.inBounce;\nexports['out-bounce'] = exports.outBounce;\nexports['in-out-bounce'] = exports.inOutBounce;\nexports['in-elastic'] = exports.inElastic;\nexports['out-elastic'] = exports.outElastic;\nexports['in-out-elastic'] = exports.inOutElastic;\n","function Emitter(obj) {\n if (obj) return mixin(obj);\n};\n\nfunction mixin(obj) {\n for (var key in Emitter.prototype) {\n obj[key] = Emitter.prototype[key];\n }\n return obj;\n}\n\nEmitter.prototype.on =\nEmitter.prototype.addEventListener = function(event, fn){\n this._callbacks = this._callbacks || {};\n (this._callbacks['$' + event] = this._callbacks['$' + event] || [])\n .push(fn);\n return this;\n};\n\nEmitter.prototype.once = function(event, fn){\n function on() {\n this.off(event, on);\n fn.apply(this, arguments);\n }\n\n on.fn = fn;\n this.on(event, on);\n return this;\n};\n\nEmitter.prototype.off =\nEmitter.prototype.removeListener =\nEmitter.prototype.removeAllListeners =\nEmitter.prototype.removeEventListener = function(event, fn){\n this._callbacks = this._callbacks || {};\n\n // all\n if (0 == arguments.length) {\n this._callbacks = {};\n return this;\n }\n\n // specific event\n var callbacks = this._callbacks['$' + event];\n if (!callbacks) return this;\n\n // remove all handlers\n if (1 == arguments.length) {\n delete this._callbacks['$' + event];\n return this;\n }\n\n // remove specific handler\n var cb;\n for (var i = 0; i < callbacks.length; i++) {\n cb = callbacks[i];\n if (cb === fn || cb.fn === fn) {\n callbacks.splice(i, 1);\n break;\n }\n }\n\n // Remove event specific arrays for event types that no\n // one is subscribed for to avoid memory leak.\n if (callbacks.length === 0) {\n delete this._callbacks['$' + event];\n }\n\n return this;\n};\n\nEmitter.prototype.emit = function(event){\n this._callbacks = this._callbacks || {};\n var args = [].slice.call(arguments, 1)\n , callbacks = this._callbacks['$' + event];\n\n if (callbacks) {\n callbacks = callbacks.slice(0);\n for (var i = 0, len = callbacks.length; i < len; ++i) {\n callbacks[i].apply(this, args);\n }\n }\n\n return this;\n};\n\nEmitter.prototype.listeners = function(event){\n this._callbacks = this._callbacks || {};\n return this._callbacks['$' + event] || [];\n};\n\nEmitter.prototype.hasListeners = function(event){\n return !! this.listeners(event).length;\n};\n\nif (typeof module !== 'undefined') {\n module.exports = Emitter;\n}\n","var scroll = require('./scroll-to');\n\nfunction calculateScrollOffset(elem, additionalOffset, alignment) {\n var body = document.body,\n html = document.documentElement;\n\n var elemRect = elem.getBoundingClientRect();\n var clientHeight = html.clientHeight;\n var documentHeight = Math.max( body.scrollHeight, body.offsetHeight,\n html.clientHeight, html.scrollHeight, html.offsetHeight );\n\n additionalOffset = additionalOffset || 0;\n\n var scrollPosition;\n if (alignment === 'bottom') {\n scrollPosition = elemRect.bottom - clientHeight;\n } else if (alignment === 'middle') {\n scrollPosition = elemRect.bottom - clientHeight / 2 - elemRect.height / 2;\n } else { // top and default\n scrollPosition = elemRect.top;\n }\n\n var maxScrollPosition = documentHeight - clientHeight;\n return Math.min(scrollPosition + additionalOffset + window.pageYOffset,\n maxScrollPosition);\n}\n\nmodule.exports = function (elem, options) {\n options = options || {};\n if (typeof elem === 'string') elem = document.querySelector(elem);\n if (elem) return scroll(0, calculateScrollOffset(elem, options.offset, options.align), options);\n};\n","var Tween = require('./tween');\nvar raf = require('raf');\n\nfunction scroll() {\n var y = window.pageYOffset || document.documentElement.scrollTop;\n var x = window.pageXOffset || document.documentElement.scrollLeft;\n return { top: y, left: x };\n}\n\nfunction scrollTo(x, y, options) {\n options = options || {};\n\n // start position\n var start = scroll();\n\n // setup tween\n var tween = Tween(start)\n .ease(options.ease || 'out-circ')\n .to({ top: y, left: x })\n .duration(options.duration || 1000);\n\n // scroll\n tween.update(function(o){\n window.scrollTo(o.left | 0, o.top | 0);\n });\n\n // handle end\n tween.on('end', function(){\n animate = function(){};\n });\n\n // animate\n function animate() {\n raf(animate);\n tween.update();\n }\n\n animate();\n\n return tween;\n}\n\nmodule.exports = scrollTo;\n","var ease = require('./ease');\nvar Emitter = require('./emitter');\n\nfunction extend(obj, src) {\n for (var key in src) {\n if (src.hasOwnProperty(key)) obj[key] = src[key];\n }\n return obj;\n}\n\nfunction Tween(obj) {\n if (!(this instanceof Tween)) return new Tween(obj);\n this._from = obj;\n this.ease('linear');\n this.duration(500);\n}\n\nEmitter(Tween.prototype);\n\nTween.prototype.reset = function(){\n this.isArray = Object.prototype.toString.call(this._from) === '[object Array]';\n this._curr = extend({}, this._from);\n this._done = false;\n this._start = Date.now();\n return this;\n};\n\nTween.prototype.to = function(obj){\n this.reset();\n this._to = obj;\n return this;\n};\n\nTween.prototype.duration = function(ms){\n this._duration = ms;\n return this;\n};\n\nTween.prototype.ease = function(fn){\n fn = 'function' == typeof fn ? fn : ease[fn];\n if (!fn) throw new TypeError('invalid easing function');\n this._ease = fn;\n return this;\n};\n\nTween.prototype.stop = function(){\n this.stopped = true;\n this._done = true;\n this.emit('stop');\n this.emit('end');\n return this;\n};\n\nTween.prototype.step = function(){\n if (this._done) return;\n\n var duration = this._duration;\n var now = Date.now();\n var delta = now - this._start;\n var done = delta >= duration;\n\n if (done) {\n this._from = this._to;\n this._update(this._to);\n this._done = true;\n this.emit('end');\n return this;\n }\n\n var from = this._from;\n var to = this._to;\n var curr = this._curr;\n var fn = this._ease;\n var p = (now - this._start) / duration;\n var n = fn(p);\n\n if (this.isArray) {\n for (var i = 0; i < from.length; ++i) {\n curr[i] = from[i] + (to[i] - from[i]) * n;\n }\n\n this._update(curr);\n return this;\n }\n\n for (var k in from) {\n curr[k] = from[k] + (to[k] - from[k]) * n;\n }\n\n this._update(curr);\n return this;\n};\n\nTween.prototype.update = function(fn){\n if (0 == arguments.length) return this.step();\n this._update = fn;\n return this;\n};\n\nmodule.exports = Tween;\n","var React = require('react');\n\nfunction Check (props) {\n return React.createElement(\"svg\",props,React.createElement(\"path\",{\"d\":\"M413.505 91.951L133.49 371.966l-98.995-98.995c-4.686-4.686-12.284-4.686-16.971 0L6.211 284.284c-4.686 4.686-4.686 12.284 0 16.971l118.794 118.794c4.686 4.686 12.284 4.686 16.971 0l299.813-299.813c4.686-4.686 4.686-12.284 0-16.971l-11.314-11.314c-4.686-4.686-12.284-4.686-16.97 0z\"}));\n}\n\nCheck.defaultProps = {\"viewBox\":\"0 0 448 512\"};\n\nmodule.exports = Check;\n\nCheck.default = Check;\n","var React = require('react');\n\nfunction Copy (props) {\n return React.createElement(\"svg\",props,React.createElement(\"path\",{\"d\":\"M433.941 65.941l-51.882-51.882A48 48 0 0 0 348.118 0H176c-26.51 0-48 21.49-48 48v48H48c-26.51 0-48 21.49-48 48v320c0 26.51 21.49 48 48 48h224c26.51 0 48-21.49 48-48v-48h80c26.51 0 48-21.49 48-48V99.882a48 48 0 0 0-14.059-33.941zM352 32.491a15.88 15.88 0 0 1 7.431 4.195l51.882 51.883A15.885 15.885 0 0 1 415.508 96H352V32.491zM288 464c0 8.822-7.178 16-16 16H48c-8.822 0-16-7.178-16-16V144c0-8.822 7.178-16 16-16h80v240c0 26.51 21.49 48 48 48h112v48zm128-96c0 8.822-7.178 16-16 16H176c-8.822 0-16-7.178-16-16V48c0-8.822 7.178-16 16-16h144v72c0 13.2 10.8 24 24 24h72v240z\"}));\n}\n\nCopy.defaultProps = {\"viewBox\":\"0 0 448 512\"};\n\nmodule.exports = Copy;\n\nCopy.default = Copy;\n","var map = {\n\t\"./tube/animation.gif\": [\n\t\t96184,\n\t\t96184\n\t],\n\t\"./tube/tubeGredient.gif\": [\n\t\t70693,\n\t\t70693\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn __webpack_require__.e(ids[1]).then(function() {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = function() { return Object.keys(map); };\nwebpackAsyncContext.id = 64841;\nmodule.exports = webpackAsyncContext;","var map = {\n\t\"./brands/accessible-icon.svg\": [\n\t\t5879,\n\t\t5879\n\t],\n\t\"./brands/accusoft.svg\": [\n\t\t16592,\n\t\t16592\n\t],\n\t\"./brands/acquisitions-incorporated.svg\": [\n\t\t76730,\n\t\t76730\n\t],\n\t\"./brands/adn.svg\": [\n\t\t43322,\n\t\t43322\n\t],\n\t\"./brands/adobe.svg\": [\n\t\t97832,\n\t\t97832\n\t],\n\t\"./brands/adversal.svg\": [\n\t\t74879,\n\t\t74879\n\t],\n\t\"./brands/affiliatetheme.svg\": [\n\t\t24227,\n\t\t24227\n\t],\n\t\"./brands/airbnb.svg\": [\n\t\t7118,\n\t\t7118\n\t],\n\t\"./brands/algolia.svg\": [\n\t\t51545,\n\t\t51545\n\t],\n\t\"./brands/alipay.svg\": [\n\t\t47537,\n\t\t47537\n\t],\n\t\"./brands/amazon-pay.svg\": [\n\t\t34885,\n\t\t34885\n\t],\n\t\"./brands/amazon.svg\": [\n\t\t88502,\n\t\t88502\n\t],\n\t\"./brands/amilia.svg\": [\n\t\t65880,\n\t\t65880\n\t],\n\t\"./brands/android.svg\": [\n\t\t20394,\n\t\t20394\n\t],\n\t\"./brands/angellist.svg\": [\n\t\t24043,\n\t\t24043\n\t],\n\t\"./brands/angrycreative.svg\": [\n\t\t21964,\n\t\t21964\n\t],\n\t\"./brands/angular.svg\": [\n\t\t51454,\n\t\t51454\n\t],\n\t\"./brands/app-store-ios.svg\": [\n\t\t10269,\n\t\t10269\n\t],\n\t\"./brands/app-store.svg\": [\n\t\t33051,\n\t\t33051\n\t],\n\t\"./brands/apper.svg\": [\n\t\t96701,\n\t\t96701\n\t],\n\t\"./brands/apple-pay.svg\": [\n\t\t66886,\n\t\t66886\n\t],\n\t\"./brands/apple.svg\": [\n\t\t60697,\n\t\t60697\n\t],\n\t\"./brands/artstation.svg\": [\n\t\t12298,\n\t\t12298\n\t],\n\t\"./brands/asymmetrik.svg\": [\n\t\t20054,\n\t\t20054\n\t],\n\t\"./brands/atlassian.svg\": [\n\t\t5352,\n\t\t5352\n\t],\n\t\"./brands/audible.svg\": [\n\t\t17392,\n\t\t17392\n\t],\n\t\"./brands/autoprefixer.svg\": [\n\t\t33607,\n\t\t33607\n\t],\n\t\"./brands/avianex.svg\": [\n\t\t71414,\n\t\t71414\n\t],\n\t\"./brands/aviato.svg\": [\n\t\t29057,\n\t\t29057\n\t],\n\t\"./brands/aws.svg\": [\n\t\t39758,\n\t\t39758\n\t],\n\t\"./brands/bandcamp.svg\": [\n\t\t11130,\n\t\t11130\n\t],\n\t\"./brands/battle-net.svg\": [\n\t\t8563,\n\t\t8563\n\t],\n\t\"./brands/behance-square.svg\": [\n\t\t88627,\n\t\t88627\n\t],\n\t\"./brands/behance.svg\": [\n\t\t95768,\n\t\t95768\n\t],\n\t\"./brands/bimobject.svg\": [\n\t\t83821,\n\t\t83821\n\t],\n\t\"./brands/bitbucket.svg\": [\n\t\t22627,\n\t\t22627\n\t],\n\t\"./brands/bitcoin.svg\": [\n\t\t47564,\n\t\t47564\n\t],\n\t\"./brands/bity.svg\": [\n\t\t32129,\n\t\t32129\n\t],\n\t\"./brands/black-tie.svg\": [\n\t\t16702,\n\t\t16702\n\t],\n\t\"./brands/blackberry.svg\": [\n\t\t98775,\n\t\t98775\n\t],\n\t\"./brands/blogger-b.svg\": [\n\t\t37719,\n\t\t37719\n\t],\n\t\"./brands/blogger.svg\": [\n\t\t5689,\n\t\t5689\n\t],\n\t\"./brands/bluetooth-b.svg\": [\n\t\t60170,\n\t\t60170\n\t],\n\t\"./brands/bluetooth.svg\": [\n\t\t16663,\n\t\t16663\n\t],\n\t\"./brands/bootstrap.svg\": [\n\t\t58230,\n\t\t58230\n\t],\n\t\"./brands/btc.svg\": [\n\t\t78549,\n\t\t78549\n\t],\n\t\"./brands/buffer.svg\": [\n\t\t99046,\n\t\t99046\n\t],\n\t\"./brands/buromobelexperte.svg\": [\n\t\t73103,\n\t\t73103\n\t],\n\t\"./brands/buy-n-large.svg\": [\n\t\t77044,\n\t\t76052\n\t],\n\t\"./brands/buysellads.svg\": [\n\t\t74448,\n\t\t74448\n\t],\n\t\"./brands/canadian-maple-leaf.svg\": [\n\t\t55274,\n\t\t55274\n\t],\n\t\"./brands/cc-amazon-pay.svg\": [\n\t\t67040,\n\t\t67040\n\t],\n\t\"./brands/cc-amex.svg\": [\n\t\t39673,\n\t\t39673\n\t],\n\t\"./brands/cc-apple-pay.svg\": [\n\t\t3226,\n\t\t3226\n\t],\n\t\"./brands/cc-diners-club.svg\": [\n\t\t70150,\n\t\t70150\n\t],\n\t\"./brands/cc-discover.svg\": [\n\t\t81721,\n\t\t81721\n\t],\n\t\"./brands/cc-jcb.svg\": [\n\t\t19240,\n\t\t19240\n\t],\n\t\"./brands/cc-mastercard.svg\": [\n\t\t79923,\n\t\t79923\n\t],\n\t\"./brands/cc-paypal.svg\": [\n\t\t870,\n\t\t870\n\t],\n\t\"./brands/cc-stripe.svg\": [\n\t\t17105,\n\t\t17105\n\t],\n\t\"./brands/cc-visa.svg\": [\n\t\t40558,\n\t\t40558\n\t],\n\t\"./brands/centercode.svg\": [\n\t\t6715,\n\t\t6715\n\t],\n\t\"./brands/centos.svg\": [\n\t\t98496,\n\t\t98496\n\t],\n\t\"./brands/chrome.svg\": [\n\t\t5166,\n\t\t5166\n\t],\n\t\"./brands/chromecast.svg\": [\n\t\t71874,\n\t\t71874\n\t],\n\t\"./brands/cloudscale.svg\": [\n\t\t64136,\n\t\t64136\n\t],\n\t\"./brands/cloudsmith.svg\": [\n\t\t99301,\n\t\t99301\n\t],\n\t\"./brands/cloudversify.svg\": [\n\t\t11025,\n\t\t11025\n\t],\n\t\"./brands/codepen.svg\": [\n\t\t44446,\n\t\t44446\n\t],\n\t\"./brands/codiepie.svg\": [\n\t\t65021,\n\t\t65021\n\t],\n\t\"./brands/confluence.svg\": [\n\t\t59627,\n\t\t59627\n\t],\n\t\"./brands/connectdevelop.svg\": [\n\t\t66355,\n\t\t66355\n\t],\n\t\"./brands/contao.svg\": [\n\t\t83934,\n\t\t83934\n\t],\n\t\"./brands/cotton-bureau.svg\": [\n\t\t41617,\n\t\t41617\n\t],\n\t\"./brands/cpanel.svg\": [\n\t\t28989,\n\t\t28989\n\t],\n\t\"./brands/creative-commons-by.svg\": [\n\t\t26001,\n\t\t26001\n\t],\n\t\"./brands/creative-commons-nc-eu.svg\": [\n\t\t37824,\n\t\t37824\n\t],\n\t\"./brands/creative-commons-nc-jp.svg\": [\n\t\t59183,\n\t\t59183\n\t],\n\t\"./brands/creative-commons-nc.svg\": [\n\t\t97601,\n\t\t97601\n\t],\n\t\"./brands/creative-commons-nd.svg\": [\n\t\t27432,\n\t\t27432\n\t],\n\t\"./brands/creative-commons-pd-alt.svg\": [\n\t\t93371,\n\t\t93371\n\t],\n\t\"./brands/creative-commons-pd.svg\": [\n\t\t39604,\n\t\t39604\n\t],\n\t\"./brands/creative-commons-remix.svg\": [\n\t\t6002,\n\t\t6002\n\t],\n\t\"./brands/creative-commons-sa.svg\": [\n\t\t18343,\n\t\t18343\n\t],\n\t\"./brands/creative-commons-sampling-plus.svg\": [\n\t\t79411,\n\t\t79411\n\t],\n\t\"./brands/creative-commons-sampling.svg\": [\n\t\t61175,\n\t\t61175\n\t],\n\t\"./brands/creative-commons-share.svg\": [\n\t\t53539,\n\t\t53539\n\t],\n\t\"./brands/creative-commons-zero.svg\": [\n\t\t67279,\n\t\t67279\n\t],\n\t\"./brands/creative-commons.svg\": [\n\t\t94158,\n\t\t94158\n\t],\n\t\"./brands/critical-role.svg\": [\n\t\t34778,\n\t\t34778\n\t],\n\t\"./brands/css3-alt.svg\": [\n\t\t30570,\n\t\t30570\n\t],\n\t\"./brands/css3.svg\": [\n\t\t5385,\n\t\t5385\n\t],\n\t\"./brands/cuttlefish.svg\": [\n\t\t32620,\n\t\t32620\n\t],\n\t\"./brands/d-and-d-beyond.svg\": [\n\t\t44518,\n\t\t44518\n\t],\n\t\"./brands/d-and-d.svg\": [\n\t\t2307,\n\t\t2307\n\t],\n\t\"./brands/dailymotion.svg\": [\n\t\t79922,\n\t\t79922\n\t],\n\t\"./brands/dashcube.svg\": [\n\t\t24965,\n\t\t24965\n\t],\n\t\"./brands/delicious.svg\": [\n\t\t7051,\n\t\t7051\n\t],\n\t\"./brands/deploydog.svg\": [\n\t\t40934,\n\t\t40934\n\t],\n\t\"./brands/deskpro.svg\": [\n\t\t46819,\n\t\t46819\n\t],\n\t\"./brands/dev.svg\": [\n\t\t18930,\n\t\t18930\n\t],\n\t\"./brands/deviantart.svg\": [\n\t\t88510,\n\t\t88510\n\t],\n\t\"./brands/dhl.svg\": [\n\t\t11634,\n\t\t11634\n\t],\n\t\"./brands/diaspora.svg\": [\n\t\t660,\n\t\t660\n\t],\n\t\"./brands/digg.svg\": [\n\t\t7605,\n\t\t7605\n\t],\n\t\"./brands/digital-ocean.svg\": [\n\t\t5126,\n\t\t5126\n\t],\n\t\"./brands/discord.svg\": [\n\t\t62709,\n\t\t62709\n\t],\n\t\"./brands/discourse.svg\": [\n\t\t61274,\n\t\t61274\n\t],\n\t\"./brands/dochub.svg\": [\n\t\t34803,\n\t\t34803\n\t],\n\t\"./brands/docker.svg\": [\n\t\t53499,\n\t\t53499\n\t],\n\t\"./brands/draft2digital.svg\": [\n\t\t47072,\n\t\t47072\n\t],\n\t\"./brands/dribbble-square.svg\": [\n\t\t30399,\n\t\t30399\n\t],\n\t\"./brands/dribbble.svg\": [\n\t\t94314,\n\t\t94314\n\t],\n\t\"./brands/dropbox.svg\": [\n\t\t93166,\n\t\t93166\n\t],\n\t\"./brands/drupal.svg\": [\n\t\t73256,\n\t\t73256\n\t],\n\t\"./brands/dyalog.svg\": [\n\t\t89133,\n\t\t89133\n\t],\n\t\"./brands/earlybirds.svg\": [\n\t\t23511,\n\t\t23511\n\t],\n\t\"./brands/ebay.svg\": [\n\t\t63037,\n\t\t63037\n\t],\n\t\"./brands/edge.svg\": [\n\t\t44466,\n\t\t44466\n\t],\n\t\"./brands/elementor.svg\": [\n\t\t45880,\n\t\t45880\n\t],\n\t\"./brands/ello.svg\": [\n\t\t77970,\n\t\t77970\n\t],\n\t\"./brands/ember.svg\": [\n\t\t38190,\n\t\t38190\n\t],\n\t\"./brands/empire.svg\": [\n\t\t9104,\n\t\t9104\n\t],\n\t\"./brands/envira.svg\": [\n\t\t73671,\n\t\t73671\n\t],\n\t\"./brands/erlang.svg\": [\n\t\t7653,\n\t\t7653\n\t],\n\t\"./brands/ethereum.svg\": [\n\t\t28843,\n\t\t28843\n\t],\n\t\"./brands/etsy.svg\": [\n\t\t37949,\n\t\t37949\n\t],\n\t\"./brands/evernote.svg\": [\n\t\t66074,\n\t\t66074\n\t],\n\t\"./brands/expeditedssl.svg\": [\n\t\t31444,\n\t\t31444\n\t],\n\t\"./brands/facebook-f.svg\": [\n\t\t72383,\n\t\t72383\n\t],\n\t\"./brands/facebook-messenger.svg\": [\n\t\t44407,\n\t\t44407\n\t],\n\t\"./brands/facebook-square.svg\": [\n\t\t31093,\n\t\t31093\n\t],\n\t\"./brands/facebook.svg\": [\n\t\t16447,\n\t\t16447\n\t],\n\t\"./brands/fantasy-flight-games.svg\": [\n\t\t39649,\n\t\t39649\n\t],\n\t\"./brands/fedex.svg\": [\n\t\t99085,\n\t\t99085\n\t],\n\t\"./brands/fedora.svg\": [\n\t\t60718,\n\t\t60718\n\t],\n\t\"./brands/figma.svg\": [\n\t\t99668,\n\t\t99668\n\t],\n\t\"./brands/firefox-browser.svg\": [\n\t\t31600,\n\t\t31600\n\t],\n\t\"./brands/firefox.svg\": [\n\t\t94336,\n\t\t94336\n\t],\n\t\"./brands/first-order-alt.svg\": [\n\t\t12696,\n\t\t12696\n\t],\n\t\"./brands/first-order.svg\": [\n\t\t52698,\n\t\t52698\n\t],\n\t\"./brands/firstdraft.svg\": [\n\t\t38970,\n\t\t38970\n\t],\n\t\"./brands/flickr.svg\": [\n\t\t62565,\n\t\t62565\n\t],\n\t\"./brands/flipboard.svg\": [\n\t\t25626,\n\t\t25626\n\t],\n\t\"./brands/fly.svg\": [\n\t\t42113,\n\t\t42113\n\t],\n\t\"./brands/font-awesome-alt.svg\": [\n\t\t37809,\n\t\t37809\n\t],\n\t\"./brands/font-awesome-flag.svg\": [\n\t\t80722,\n\t\t80722\n\t],\n\t\"./brands/font-awesome-logo-full.svg\": [\n\t\t21486,\n\t\t21486\n\t],\n\t\"./brands/font-awesome.svg\": [\n\t\t903,\n\t\t903\n\t],\n\t\"./brands/fonticons-fi.svg\": [\n\t\t51535,\n\t\t51535\n\t],\n\t\"./brands/fonticons.svg\": [\n\t\t33537,\n\t\t33537\n\t],\n\t\"./brands/fort-awesome-alt.svg\": [\n\t\t76095,\n\t\t76095\n\t],\n\t\"./brands/fort-awesome.svg\": [\n\t\t72444,\n\t\t72444\n\t],\n\t\"./brands/forumbee.svg\": [\n\t\t80361,\n\t\t80361\n\t],\n\t\"./brands/foursquare.svg\": [\n\t\t20733,\n\t\t20733\n\t],\n\t\"./brands/free-code-camp.svg\": [\n\t\t87803,\n\t\t87803\n\t],\n\t\"./brands/freebsd.svg\": [\n\t\t70791,\n\t\t70791\n\t],\n\t\"./brands/fulcrum.svg\": [\n\t\t57337,\n\t\t57337\n\t],\n\t\"./brands/galactic-republic.svg\": [\n\t\t43774,\n\t\t43774\n\t],\n\t\"./brands/galactic-senate.svg\": [\n\t\t68843,\n\t\t68843\n\t],\n\t\"./brands/get-pocket.svg\": [\n\t\t88024,\n\t\t88024\n\t],\n\t\"./brands/gg-circle.svg\": [\n\t\t96085,\n\t\t96085\n\t],\n\t\"./brands/gg.svg\": [\n\t\t86663,\n\t\t86663\n\t],\n\t\"./brands/git-alt.svg\": [\n\t\t83921,\n\t\t83921\n\t],\n\t\"./brands/git-square.svg\": [\n\t\t33286,\n\t\t33286\n\t],\n\t\"./brands/git.svg\": [\n\t\t81362,\n\t\t81362\n\t],\n\t\"./brands/github-alt.svg\": [\n\t\t96380,\n\t\t533\n\t],\n\t\"./brands/github-square.svg\": [\n\t\t62315,\n\t\t62315\n\t],\n\t\"./brands/github.svg\": [\n\t\t10254,\n\t\t10254\n\t],\n\t\"./brands/gitkraken.svg\": [\n\t\t5614,\n\t\t5614\n\t],\n\t\"./brands/gitlab.svg\": [\n\t\t91970,\n\t\t91970\n\t],\n\t\"./brands/gitter.svg\": [\n\t\t90562,\n\t\t90562\n\t],\n\t\"./brands/glide-g.svg\": [\n\t\t36526,\n\t\t36526\n\t],\n\t\"./brands/glide.svg\": [\n\t\t75014,\n\t\t75014\n\t],\n\t\"./brands/gofore.svg\": [\n\t\t41489,\n\t\t41489\n\t],\n\t\"./brands/goodreads-g.svg\": [\n\t\t11370,\n\t\t11370\n\t],\n\t\"./brands/goodreads.svg\": [\n\t\t42741,\n\t\t42741\n\t],\n\t\"./brands/google-drive.svg\": [\n\t\t37077,\n\t\t37077\n\t],\n\t\"./brands/google-play.svg\": [\n\t\t84099,\n\t\t84099\n\t],\n\t\"./brands/google-plus-g.svg\": [\n\t\t54877,\n\t\t54877\n\t],\n\t\"./brands/google-plus-square.svg\": [\n\t\t88569,\n\t\t88569\n\t],\n\t\"./brands/google-plus.svg\": [\n\t\t40835,\n\t\t40835\n\t],\n\t\"./brands/google-wallet.svg\": [\n\t\t46766,\n\t\t46766\n\t],\n\t\"./brands/google.svg\": [\n\t\t29926,\n\t\t29926\n\t],\n\t\"./brands/gratipay.svg\": [\n\t\t11274,\n\t\t11274\n\t],\n\t\"./brands/grav.svg\": [\n\t\t2339,\n\t\t2339\n\t],\n\t\"./brands/gripfire.svg\": [\n\t\t45185,\n\t\t45185\n\t],\n\t\"./brands/grunt.svg\": [\n\t\t61697,\n\t\t61697\n\t],\n\t\"./brands/gulp.svg\": [\n\t\t34314,\n\t\t34314\n\t],\n\t\"./brands/hacker-news-square.svg\": [\n\t\t97941,\n\t\t97941\n\t],\n\t\"./brands/hacker-news.svg\": [\n\t\t68143,\n\t\t68143\n\t],\n\t\"./brands/hackerrank.svg\": [\n\t\t44424,\n\t\t44424\n\t],\n\t\"./brands/hips.svg\": [\n\t\t44592,\n\t\t44592\n\t],\n\t\"./brands/hire-a-helper.svg\": [\n\t\t65307,\n\t\t65307\n\t],\n\t\"./brands/hooli.svg\": [\n\t\t48657,\n\t\t48657\n\t],\n\t\"./brands/hornbill.svg\": [\n\t\t73875,\n\t\t73875\n\t],\n\t\"./brands/hotjar.svg\": [\n\t\t74645,\n\t\t74645\n\t],\n\t\"./brands/houzz.svg\": [\n\t\t45088,\n\t\t45088\n\t],\n\t\"./brands/html5.svg\": [\n\t\t69214,\n\t\t69214\n\t],\n\t\"./brands/hubspot.svg\": [\n\t\t74812,\n\t\t74812\n\t],\n\t\"./brands/ideal.svg\": [\n\t\t85559,\n\t\t85559\n\t],\n\t\"./brands/imdb.svg\": [\n\t\t51166,\n\t\t51166\n\t],\n\t\"./brands/instagram-square.svg\": [\n\t\t67863,\n\t\t67863\n\t],\n\t\"./brands/instagram.svg\": [\n\t\t33639,\n\t\t33639\n\t],\n\t\"./brands/intercom.svg\": [\n\t\t23774,\n\t\t23774\n\t],\n\t\"./brands/internet-explorer.svg\": [\n\t\t79418,\n\t\t79418\n\t],\n\t\"./brands/invision.svg\": [\n\t\t54849,\n\t\t54849\n\t],\n\t\"./brands/ioxhost.svg\": [\n\t\t79582,\n\t\t79582\n\t],\n\t\"./brands/itch-io.svg\": [\n\t\t29864,\n\t\t29864\n\t],\n\t\"./brands/itunes-note.svg\": [\n\t\t197,\n\t\t197\n\t],\n\t\"./brands/itunes.svg\": [\n\t\t34560,\n\t\t34560\n\t],\n\t\"./brands/java.svg\": [\n\t\t9220,\n\t\t9220\n\t],\n\t\"./brands/jedi-order.svg\": [\n\t\t48102,\n\t\t68952\n\t],\n\t\"./brands/jenkins.svg\": [\n\t\t634,\n\t\t634\n\t],\n\t\"./brands/jira.svg\": [\n\t\t15656,\n\t\t15656\n\t],\n\t\"./brands/joget.svg\": [\n\t\t4933,\n\t\t4933\n\t],\n\t\"./brands/joomla.svg\": [\n\t\t57221,\n\t\t57221\n\t],\n\t\"./brands/js-square.svg\": [\n\t\t631,\n\t\t631\n\t],\n\t\"./brands/js.svg\": [\n\t\t69975,\n\t\t69975\n\t],\n\t\"./brands/jsfiddle.svg\": [\n\t\t49212,\n\t\t49212\n\t],\n\t\"./brands/kaggle.svg\": [\n\t\t47724,\n\t\t47724\n\t],\n\t\"./brands/keybase.svg\": [\n\t\t47892,\n\t\t47892\n\t],\n\t\"./brands/keycdn.svg\": [\n\t\t99915,\n\t\t99915\n\t],\n\t\"./brands/kickstarter-k.svg\": [\n\t\t69373,\n\t\t69373\n\t],\n\t\"./brands/kickstarter.svg\": [\n\t\t66234,\n\t\t66234\n\t],\n\t\"./brands/korvue.svg\": [\n\t\t72515,\n\t\t72515\n\t],\n\t\"./brands/laravel.svg\": [\n\t\t9825,\n\t\t9825\n\t],\n\t\"./brands/lastfm-square.svg\": [\n\t\t52492,\n\t\t52492\n\t],\n\t\"./brands/lastfm.svg\": [\n\t\t49937,\n\t\t49937\n\t],\n\t\"./brands/leanpub.svg\": [\n\t\t72627,\n\t\t72627\n\t],\n\t\"./brands/less.svg\": [\n\t\t26091,\n\t\t26091\n\t],\n\t\"./brands/line.svg\": [\n\t\t4811,\n\t\t4811\n\t],\n\t\"./brands/linkedin-in.svg\": [\n\t\t15640,\n\t\t15640\n\t],\n\t\"./brands/linkedin.svg\": [\n\t\t71977,\n\t\t71977\n\t],\n\t\"./brands/linode.svg\": [\n\t\t4886,\n\t\t4886\n\t],\n\t\"./brands/linux.svg\": [\n\t\t16619,\n\t\t16619\n\t],\n\t\"./brands/lyft.svg\": [\n\t\t88184,\n\t\t88184\n\t],\n\t\"./brands/magento.svg\": [\n\t\t99242,\n\t\t99242\n\t],\n\t\"./brands/mailchimp.svg\": [\n\t\t3058,\n\t\t3058\n\t],\n\t\"./brands/mandalorian.svg\": [\n\t\t78013,\n\t\t78013\n\t],\n\t\"./brands/markdown.svg\": [\n\t\t67608,\n\t\t67608\n\t],\n\t\"./brands/mastodon.svg\": [\n\t\t51966,\n\t\t51966\n\t],\n\t\"./brands/maxcdn.svg\": [\n\t\t7512,\n\t\t7512\n\t],\n\t\"./brands/mdb.svg\": [\n\t\t95853,\n\t\t95853\n\t],\n\t\"./brands/medapps.svg\": [\n\t\t58008,\n\t\t58008\n\t],\n\t\"./brands/medium-m.svg\": [\n\t\t98348,\n\t\t98348\n\t],\n\t\"./brands/medium.svg\": [\n\t\t50997,\n\t\t50997\n\t],\n\t\"./brands/medrt.svg\": [\n\t\t92223,\n\t\t92223\n\t],\n\t\"./brands/meetup.svg\": [\n\t\t50346,\n\t\t50346\n\t],\n\t\"./brands/megaport.svg\": [\n\t\t66579,\n\t\t66579\n\t],\n\t\"./brands/mendeley.svg\": [\n\t\t64799,\n\t\t64799\n\t],\n\t\"./brands/microblog.svg\": [\n\t\t57713,\n\t\t57713\n\t],\n\t\"./brands/microsoft.svg\": [\n\t\t38867,\n\t\t38867\n\t],\n\t\"./brands/mix.svg\": [\n\t\t36658,\n\t\t36658\n\t],\n\t\"./brands/mixcloud.svg\": [\n\t\t47193,\n\t\t47193\n\t],\n\t\"./brands/mixer.svg\": [\n\t\t99243,\n\t\t99243\n\t],\n\t\"./brands/mizuni.svg\": [\n\t\t48596,\n\t\t48596\n\t],\n\t\"./brands/modx.svg\": [\n\t\t90398,\n\t\t90398\n\t],\n\t\"./brands/monero.svg\": [\n\t\t7969,\n\t\t7969\n\t],\n\t\"./brands/napster.svg\": [\n\t\t73865,\n\t\t73865\n\t],\n\t\"./brands/neos.svg\": [\n\t\t17070,\n\t\t17070\n\t],\n\t\"./brands/nimblr.svg\": [\n\t\t2257,\n\t\t2257\n\t],\n\t\"./brands/node-js.svg\": [\n\t\t89617,\n\t\t89617\n\t],\n\t\"./brands/node.svg\": [\n\t\t22805,\n\t\t22805\n\t],\n\t\"./brands/npm.svg\": [\n\t\t73086,\n\t\t73086\n\t],\n\t\"./brands/ns8.svg\": [\n\t\t18594,\n\t\t18594\n\t],\n\t\"./brands/nutritionix.svg\": [\n\t\t9319,\n\t\t9319\n\t],\n\t\"./brands/odnoklassniki-square.svg\": [\n\t\t23218,\n\t\t23218\n\t],\n\t\"./brands/odnoklassniki.svg\": [\n\t\t77443,\n\t\t77443\n\t],\n\t\"./brands/old-republic.svg\": [\n\t\t69114,\n\t\t69114\n\t],\n\t\"./brands/opencart.svg\": [\n\t\t58294,\n\t\t58294\n\t],\n\t\"./brands/openid.svg\": [\n\t\t62672,\n\t\t62672\n\t],\n\t\"./brands/opera.svg\": [\n\t\t42745,\n\t\t42745\n\t],\n\t\"./brands/optin-monster.svg\": [\n\t\t28377,\n\t\t28377\n\t],\n\t\"./brands/orcid.svg\": [\n\t\t18409,\n\t\t18409\n\t],\n\t\"./brands/osi.svg\": [\n\t\t85096,\n\t\t85096\n\t],\n\t\"./brands/page4.svg\": [\n\t\t62840,\n\t\t62840\n\t],\n\t\"./brands/pagelines.svg\": [\n\t\t24917,\n\t\t24917\n\t],\n\t\"./brands/palfed.svg\": [\n\t\t25791,\n\t\t25791\n\t],\n\t\"./brands/patreon.svg\": [\n\t\t45352,\n\t\t45352\n\t],\n\t\"./brands/paypal.svg\": [\n\t\t44326,\n\t\t44326\n\t],\n\t\"./brands/penny-arcade.svg\": [\n\t\t14229,\n\t\t14229\n\t],\n\t\"./brands/periscope.svg\": [\n\t\t61121,\n\t\t61121\n\t],\n\t\"./brands/phabricator.svg\": [\n\t\t28826,\n\t\t28826\n\t],\n\t\"./brands/phoenix-framework.svg\": [\n\t\t1901,\n\t\t1901\n\t],\n\t\"./brands/phoenix-squadron.svg\": [\n\t\t47202,\n\t\t47202\n\t],\n\t\"./brands/php.svg\": [\n\t\t33072,\n\t\t33072\n\t],\n\t\"./brands/pied-piper-alt.svg\": [\n\t\t92611,\n\t\t92611\n\t],\n\t\"./brands/pied-piper-hat.svg\": [\n\t\t92033,\n\t\t92033\n\t],\n\t\"./brands/pied-piper-pp.svg\": [\n\t\t30658,\n\t\t30658\n\t],\n\t\"./brands/pied-piper-square.svg\": [\n\t\t32893,\n\t\t32893\n\t],\n\t\"./brands/pied-piper.svg\": [\n\t\t11619,\n\t\t11619\n\t],\n\t\"./brands/pinterest-p.svg\": [\n\t\t8813,\n\t\t8813\n\t],\n\t\"./brands/pinterest-square.svg\": [\n\t\t5051,\n\t\t5051\n\t],\n\t\"./brands/pinterest.svg\": [\n\t\t53493,\n\t\t53493\n\t],\n\t\"./brands/playstation.svg\": [\n\t\t82857,\n\t\t49997\n\t],\n\t\"./brands/product-hunt.svg\": [\n\t\t4451,\n\t\t4451\n\t],\n\t\"./brands/pushed.svg\": [\n\t\t55136,\n\t\t55136\n\t],\n\t\"./brands/python.svg\": [\n\t\t47093,\n\t\t47093\n\t],\n\t\"./brands/qq.svg\": [\n\t\t20214,\n\t\t20214\n\t],\n\t\"./brands/quinscape.svg\": [\n\t\t3320,\n\t\t3320\n\t],\n\t\"./brands/quora.svg\": [\n\t\t95970,\n\t\t95970\n\t],\n\t\"./brands/r-project.svg\": [\n\t\t1007,\n\t\t1007\n\t],\n\t\"./brands/raspberry-pi.svg\": [\n\t\t73773,\n\t\t73773\n\t],\n\t\"./brands/ravelry.svg\": [\n\t\t33041,\n\t\t33041\n\t],\n\t\"./brands/react.svg\": [\n\t\t60730,\n\t\t60730\n\t],\n\t\"./brands/reacteurope.svg\": [\n\t\t11305,\n\t\t11305\n\t],\n\t\"./brands/readme.svg\": [\n\t\t93337,\n\t\t93337\n\t],\n\t\"./brands/rebel.svg\": [\n\t\t8569,\n\t\t8569\n\t],\n\t\"./brands/red-river.svg\": [\n\t\t84545,\n\t\t84545\n\t],\n\t\"./brands/reddit-alien.svg\": [\n\t\t10515,\n\t\t10515\n\t],\n\t\"./brands/reddit-square.svg\": [\n\t\t95337,\n\t\t95337\n\t],\n\t\"./brands/reddit.svg\": [\n\t\t28700,\n\t\t28700\n\t],\n\t\"./brands/redhat.svg\": [\n\t\t5828,\n\t\t5828\n\t],\n\t\"./brands/renren.svg\": [\n\t\t68302,\n\t\t68302\n\t],\n\t\"./brands/replyd.svg\": [\n\t\t18552,\n\t\t18552\n\t],\n\t\"./brands/researchgate.svg\": [\n\t\t83827,\n\t\t83827\n\t],\n\t\"./brands/resolving.svg\": [\n\t\t62629,\n\t\t62629\n\t],\n\t\"./brands/rev.svg\": [\n\t\t58329,\n\t\t58329\n\t],\n\t\"./brands/rocketchat.svg\": [\n\t\t90296,\n\t\t90296\n\t],\n\t\"./brands/rockrms.svg\": [\n\t\t4348,\n\t\t4348\n\t],\n\t\"./brands/safari.svg\": [\n\t\t60651,\n\t\t60651\n\t],\n\t\"./brands/salesforce.svg\": [\n\t\t38725,\n\t\t38725\n\t],\n\t\"./brands/sass.svg\": [\n\t\t63801,\n\t\t63801\n\t],\n\t\"./brands/schlix.svg\": [\n\t\t20404,\n\t\t20404\n\t],\n\t\"./brands/scribd.svg\": [\n\t\t17992,\n\t\t17992\n\t],\n\t\"./brands/searchengin.svg\": [\n\t\t81490,\n\t\t81490\n\t],\n\t\"./brands/sellcast.svg\": [\n\t\t54254,\n\t\t54254\n\t],\n\t\"./brands/sellsy.svg\": [\n\t\t1047,\n\t\t1047\n\t],\n\t\"./brands/servicestack.svg\": [\n\t\t79646,\n\t\t79646\n\t],\n\t\"./brands/shirtsinbulk.svg\": [\n\t\t61611,\n\t\t61611\n\t],\n\t\"./brands/shopify.svg\": [\n\t\t76533,\n\t\t76533\n\t],\n\t\"./brands/shopware.svg\": [\n\t\t70337,\n\t\t70337\n\t],\n\t\"./brands/simplybuilt.svg\": [\n\t\t41375,\n\t\t41375\n\t],\n\t\"./brands/sistrix.svg\": [\n\t\t91701,\n\t\t91701\n\t],\n\t\"./brands/sith.svg\": [\n\t\t66870,\n\t\t66870\n\t],\n\t\"./brands/sketch.svg\": [\n\t\t85637,\n\t\t85637\n\t],\n\t\"./brands/skyatlas.svg\": [\n\t\t88443,\n\t\t88443\n\t],\n\t\"./brands/skype.svg\": [\n\t\t28961,\n\t\t28961\n\t],\n\t\"./brands/slack-hash.svg\": [\n\t\t93346,\n\t\t93346\n\t],\n\t\"./brands/slack.svg\": [\n\t\t90127,\n\t\t90127\n\t],\n\t\"./brands/slideshare.svg\": [\n\t\t16697,\n\t\t16697\n\t],\n\t\"./brands/snapchat-ghost.svg\": [\n\t\t54878,\n\t\t54878\n\t],\n\t\"./brands/snapchat-square.svg\": [\n\t\t19466,\n\t\t19466\n\t],\n\t\"./brands/snapchat.svg\": [\n\t\t20794,\n\t\t20794\n\t],\n\t\"./brands/soundcloud.svg\": [\n\t\t21029,\n\t\t21029\n\t],\n\t\"./brands/sourcetree.svg\": [\n\t\t49653,\n\t\t49653\n\t],\n\t\"./brands/speakap.svg\": [\n\t\t52290,\n\t\t52290\n\t],\n\t\"./brands/speaker-deck.svg\": [\n\t\t40409,\n\t\t40409\n\t],\n\t\"./brands/spotify.svg\": [\n\t\t78045,\n\t\t78045\n\t],\n\t\"./brands/squarespace.svg\": [\n\t\t15444,\n\t\t15444\n\t],\n\t\"./brands/stack-exchange.svg\": [\n\t\t33098,\n\t\t33098\n\t],\n\t\"./brands/stack-overflow.svg\": [\n\t\t54430,\n\t\t54430\n\t],\n\t\"./brands/stackpath.svg\": [\n\t\t67656,\n\t\t67656\n\t],\n\t\"./brands/staylinked.svg\": [\n\t\t76164,\n\t\t76164\n\t],\n\t\"./brands/steam-square.svg\": [\n\t\t67955,\n\t\t67955\n\t],\n\t\"./brands/steam-symbol.svg\": [\n\t\t34175,\n\t\t34175\n\t],\n\t\"./brands/steam.svg\": [\n\t\t58633,\n\t\t58633\n\t],\n\t\"./brands/sticker-mule.svg\": [\n\t\t25850,\n\t\t25850\n\t],\n\t\"./brands/strava.svg\": [\n\t\t91526,\n\t\t91526\n\t],\n\t\"./brands/stripe-s.svg\": [\n\t\t16325,\n\t\t16325\n\t],\n\t\"./brands/stripe.svg\": [\n\t\t87985,\n\t\t91771\n\t],\n\t\"./brands/studiovinari.svg\": [\n\t\t10623,\n\t\t10623\n\t],\n\t\"./brands/stumbleupon-circle.svg\": [\n\t\t47729,\n\t\t48102\n\t],\n\t\"./brands/stumbleupon.svg\": [\n\t\t69655,\n\t\t69655\n\t],\n\t\"./brands/superpowers.svg\": [\n\t\t80830,\n\t\t80830\n\t],\n\t\"./brands/supple.svg\": [\n\t\t70587,\n\t\t70587\n\t],\n\t\"./brands/suse.svg\": [\n\t\t67424,\n\t\t67424\n\t],\n\t\"./brands/swift.svg\": [\n\t\t50139,\n\t\t50139\n\t],\n\t\"./brands/symfony.svg\": [\n\t\t99517,\n\t\t99517\n\t],\n\t\"./brands/teamspeak.svg\": [\n\t\t55741,\n\t\t55741\n\t],\n\t\"./brands/telegram-plane.svg\": [\n\t\t30499,\n\t\t30499\n\t],\n\t\"./brands/telegram.svg\": [\n\t\t51410,\n\t\t51410\n\t],\n\t\"./brands/tencent-weibo.svg\": [\n\t\t82336,\n\t\t82336\n\t],\n\t\"./brands/the-red-yeti.svg\": [\n\t\t28557,\n\t\t28557\n\t],\n\t\"./brands/themeco.svg\": [\n\t\t68509,\n\t\t68509\n\t],\n\t\"./brands/themeisle.svg\": [\n\t\t24044,\n\t\t24044\n\t],\n\t\"./brands/think-peaks.svg\": [\n\t\t38326,\n\t\t38326\n\t],\n\t\"./brands/trade-federation.svg\": [\n\t\t87017,\n\t\t87017\n\t],\n\t\"./brands/trello.svg\": [\n\t\t73642,\n\t\t73642\n\t],\n\t\"./brands/tripadvisor.svg\": [\n\t\t35132,\n\t\t35132\n\t],\n\t\"./brands/tumblr-square.svg\": [\n\t\t95612,\n\t\t95612\n\t],\n\t\"./brands/tumblr.svg\": [\n\t\t44170,\n\t\t44170\n\t],\n\t\"./brands/twitch.svg\": [\n\t\t55056,\n\t\t55056\n\t],\n\t\"./brands/twitter-square.svg\": [\n\t\t67291,\n\t\t67291\n\t],\n\t\"./brands/twitter.svg\": [\n\t\t75561,\n\t\t75561\n\t],\n\t\"./brands/typo3.svg\": [\n\t\t32795,\n\t\t32795\n\t],\n\t\"./brands/uber.svg\": [\n\t\t19258,\n\t\t19258\n\t],\n\t\"./brands/ubuntu.svg\": [\n\t\t24721,\n\t\t24721\n\t],\n\t\"./brands/uikit.svg\": [\n\t\t15197,\n\t\t15197\n\t],\n\t\"./brands/umbraco.svg\": [\n\t\t33306,\n\t\t33306\n\t],\n\t\"./brands/uniregistry.svg\": [\n\t\t64376,\n\t\t64376\n\t],\n\t\"./brands/unity.svg\": [\n\t\t72866,\n\t\t72866\n\t],\n\t\"./brands/untappd.svg\": [\n\t\t85951,\n\t\t85951\n\t],\n\t\"./brands/ups.svg\": [\n\t\t72714,\n\t\t72714\n\t],\n\t\"./brands/usb.svg\": [\n\t\t67973,\n\t\t67973\n\t],\n\t\"./brands/usps.svg\": [\n\t\t5474,\n\t\t5474\n\t],\n\t\"./brands/ussunnah.svg\": [\n\t\t84471,\n\t\t84471\n\t],\n\t\"./brands/vaadin.svg\": [\n\t\t6093,\n\t\t6093\n\t],\n\t\"./brands/viacoin.svg\": [\n\t\t76610,\n\t\t76610\n\t],\n\t\"./brands/viadeo-square.svg\": [\n\t\t41604,\n\t\t41604\n\t],\n\t\"./brands/viadeo.svg\": [\n\t\t58582,\n\t\t58582\n\t],\n\t\"./brands/viber.svg\": [\n\t\t66709,\n\t\t66709\n\t],\n\t\"./brands/vimeo-square.svg\": [\n\t\t26871,\n\t\t26871\n\t],\n\t\"./brands/vimeo-v.svg\": [\n\t\t10375,\n\t\t10375\n\t],\n\t\"./brands/vimeo.svg\": [\n\t\t94588,\n\t\t94588\n\t],\n\t\"./brands/vine.svg\": [\n\t\t60772,\n\t\t60772\n\t],\n\t\"./brands/vk.svg\": [\n\t\t46151,\n\t\t46151\n\t],\n\t\"./brands/vnv.svg\": [\n\t\t17465,\n\t\t17465\n\t],\n\t\"./brands/vuejs.svg\": [\n\t\t20120,\n\t\t20120\n\t],\n\t\"./brands/waze.svg\": [\n\t\t82165,\n\t\t82165\n\t],\n\t\"./brands/weebly.svg\": [\n\t\t9808,\n\t\t9808\n\t],\n\t\"./brands/weibo.svg\": [\n\t\t89787,\n\t\t89787\n\t],\n\t\"./brands/weixin.svg\": [\n\t\t59270,\n\t\t59270\n\t],\n\t\"./brands/whatsapp-square.svg\": [\n\t\t16171,\n\t\t16171\n\t],\n\t\"./brands/whatsapp.svg\": [\n\t\t5214,\n\t\t5214\n\t],\n\t\"./brands/whmcs.svg\": [\n\t\t77885,\n\t\t77885\n\t],\n\t\"./brands/wikipedia-w.svg\": [\n\t\t80900,\n\t\t80900\n\t],\n\t\"./brands/windows.svg\": [\n\t\t61860,\n\t\t61860\n\t],\n\t\"./brands/wix.svg\": [\n\t\t15339,\n\t\t15339\n\t],\n\t\"./brands/wizards-of-the-coast.svg\": [\n\t\t20379,\n\t\t20379\n\t],\n\t\"./brands/wolf-pack-battalion.svg\": [\n\t\t62778,\n\t\t62778\n\t],\n\t\"./brands/wordpress-simple.svg\": [\n\t\t32092,\n\t\t32092\n\t],\n\t\"./brands/wordpress.svg\": [\n\t\t60647,\n\t\t60647\n\t],\n\t\"./brands/wpbeginner.svg\": [\n\t\t46235,\n\t\t46235\n\t],\n\t\"./brands/wpexplorer.svg\": [\n\t\t55117,\n\t\t55117\n\t],\n\t\"./brands/wpforms.svg\": [\n\t\t33453,\n\t\t33453\n\t],\n\t\"./brands/wpressr.svg\": [\n\t\t29189,\n\t\t29189\n\t],\n\t\"./brands/xbox.svg\": [\n\t\t72251,\n\t\t72251\n\t],\n\t\"./brands/xing-square.svg\": [\n\t\t22161,\n\t\t22161\n\t],\n\t\"./brands/xing.svg\": [\n\t\t39581,\n\t\t39581\n\t],\n\t\"./brands/y-combinator.svg\": [\n\t\t56856,\n\t\t56856\n\t],\n\t\"./brands/yahoo.svg\": [\n\t\t36527,\n\t\t36527\n\t],\n\t\"./brands/yammer.svg\": [\n\t\t62996,\n\t\t62996\n\t],\n\t\"./brands/yandex-international.svg\": [\n\t\t92709,\n\t\t92709\n\t],\n\t\"./brands/yandex.svg\": [\n\t\t66200,\n\t\t66200\n\t],\n\t\"./brands/yarn.svg\": [\n\t\t47117,\n\t\t47117\n\t],\n\t\"./brands/yelp.svg\": [\n\t\t14033,\n\t\t14033\n\t],\n\t\"./brands/yoast.svg\": [\n\t\t12551,\n\t\t12551\n\t],\n\t\"./brands/youtube-square.svg\": [\n\t\t66958,\n\t\t66958\n\t],\n\t\"./brands/youtube.svg\": [\n\t\t37488,\n\t\t37488\n\t],\n\t\"./brands/zhihu.svg\": [\n\t\t92487,\n\t\t92487\n\t],\n\t\"./case/contentStrategy.svg\": [\n\t\t77198,\n\t\t77198\n\t],\n\t\"./case/cta.svg\": [\n\t\t46044,\n\t\t46044\n\t],\n\t\"./case/customerSupport.svg\": [\n\t\t78724,\n\t\t78724\n\t],\n\t\"./case/employeeEducation.svg\": [\n\t\t84909,\n\t\t84909\n\t],\n\t\"./case/inVideoNavigation.svg\": [\n\t\t52820,\n\t\t52820\n\t],\n\t\"./case/leadGeneration.svg\": [\n\t\t99562,\n\t\t99562\n\t],\n\t\"./case/personalization.svg\": [\n\t\t15272,\n\t\t15272\n\t],\n\t\"./case/preOnboarding.svg\": [\n\t\t75939,\n\t\t75939\n\t],\n\t\"./case/retention.svg\": [\n\t\t7482,\n\t\t7482\n\t],\n\t\"./case/videoProduction.svg\": [\n\t\t13135,\n\t\t13135\n\t],\n\t\"./fab/analitics.svg\": [\n\t\t60646,\n\t\t60646\n\t],\n\t\"./fab/fabLogo.svg\": [\n\t\t65244,\n\t\t65244\n\t],\n\t\"./fab/plugAndPlay.svg\": [\n\t\t88820,\n\t\t88820\n\t],\n\t\"./fab/reelsNStories.svg\": [\n\t\t83068,\n\t\t83068\n\t],\n\t\"./koel/audioPersonalization.svg\": [\n\t\t56278,\n\t\t56278\n\t],\n\t\"./koel/multilanguageSupport.svg\": [\n\t\t34451,\n\t\t34451\n\t],\n\t\"./koel/textToSpeech.svg\": [\n\t\t31468,\n\t\t31468\n\t],\n\t\"./light/abacus.svg\": [\n\t\t86535,\n\t\t86535\n\t],\n\t\"./light/acorn.svg\": [\n\t\t97510,\n\t\t97510\n\t],\n\t\"./light/ad.svg\": [\n\t\t34454,\n\t\t34454\n\t],\n\t\"./light/address-book.svg\": [\n\t\t48049,\n\t\t48049\n\t],\n\t\"./light/address-card.svg\": [\n\t\t84841,\n\t\t84841\n\t],\n\t\"./light/adjust.svg\": [\n\t\t70477,\n\t\t70477\n\t],\n\t\"./light/air-conditioner.svg\": [\n\t\t88802,\n\t\t88802\n\t],\n\t\"./light/air-freshener.svg\": [\n\t\t73329,\n\t\t73329\n\t],\n\t\"./light/alarm-clock.svg\": [\n\t\t60430,\n\t\t60430\n\t],\n\t\"./light/alarm-exclamation.svg\": [\n\t\t32394,\n\t\t32394\n\t],\n\t\"./light/alarm-plus.svg\": [\n\t\t49364,\n\t\t49364\n\t],\n\t\"./light/alarm-snooze.svg\": [\n\t\t92112,\n\t\t92112\n\t],\n\t\"./light/album-collection.svg\": [\n\t\t91176,\n\t\t91176\n\t],\n\t\"./light/album.svg\": [\n\t\t29932,\n\t\t29932\n\t],\n\t\"./light/alicorn.svg\": [\n\t\t1223,\n\t\t1223\n\t],\n\t\"./light/alien-monster.svg\": [\n\t\t16230,\n\t\t16230\n\t],\n\t\"./light/alien.svg\": [\n\t\t17755,\n\t\t17755\n\t],\n\t\"./light/align-center.svg\": [\n\t\t97336,\n\t\t97336\n\t],\n\t\"./light/align-justify.svg\": [\n\t\t53402,\n\t\t53402\n\t],\n\t\"./light/align-left.svg\": [\n\t\t23121,\n\t\t23121\n\t],\n\t\"./light/align-right.svg\": [\n\t\t50358,\n\t\t50358\n\t],\n\t\"./light/align-slash.svg\": [\n\t\t66185,\n\t\t66185\n\t],\n\t\"./light/allergies.svg\": [\n\t\t19778,\n\t\t19778\n\t],\n\t\"./light/ambulance.svg\": [\n\t\t80286,\n\t\t80286\n\t],\n\t\"./light/american-sign-language-interpreting.svg\": [\n\t\t69508,\n\t\t69508\n\t],\n\t\"./light/amp-guitar.svg\": [\n\t\t46361,\n\t\t46361\n\t],\n\t\"./light/analytics.svg\": [\n\t\t62187,\n\t\t62187\n\t],\n\t\"./light/anchor.svg\": [\n\t\t57956,\n\t\t57956\n\t],\n\t\"./light/angel.svg\": [\n\t\t14852,\n\t\t14852\n\t],\n\t\"./light/angle-double-down.svg\": [\n\t\t11672,\n\t\t11672\n\t],\n\t\"./light/angle-double-left.svg\": [\n\t\t13869,\n\t\t13869\n\t],\n\t\"./light/angle-double-right.svg\": [\n\t\t47434,\n\t\t47434\n\t],\n\t\"./light/angle-double-up.svg\": [\n\t\t31277,\n\t\t31277\n\t],\n\t\"./light/angle-down.svg\": [\n\t\t96960,\n\t\t96960\n\t],\n\t\"./light/angle-left.svg\": [\n\t\t66805,\n\t\t66805\n\t],\n\t\"./light/angle-right.svg\": [\n\t\t9244,\n\t\t9244\n\t],\n\t\"./light/angle-up.svg\": [\n\t\t21848,\n\t\t21848\n\t],\n\t\"./light/angry.svg\": [\n\t\t21101,\n\t\t21101\n\t],\n\t\"./light/ankh.svg\": [\n\t\t24850,\n\t\t24850\n\t],\n\t\"./light/apple-alt.svg\": [\n\t\t26648,\n\t\t26648\n\t],\n\t\"./light/apple-crate.svg\": [\n\t\t79096,\n\t\t79096\n\t],\n\t\"./light/archive.svg\": [\n\t\t51455,\n\t\t51455\n\t],\n\t\"./light/archway.svg\": [\n\t\t76350,\n\t\t76350\n\t],\n\t\"./light/arrow-alt-circle-down.svg\": [\n\t\t66784,\n\t\t66784\n\t],\n\t\"./light/arrow-alt-circle-left.svg\": [\n\t\t96447,\n\t\t96447\n\t],\n\t\"./light/arrow-alt-circle-right.svg\": [\n\t\t77979,\n\t\t77979\n\t],\n\t\"./light/arrow-alt-circle-up.svg\": [\n\t\t28155,\n\t\t28155\n\t],\n\t\"./light/arrow-alt-down.svg\": [\n\t\t10708,\n\t\t10708\n\t],\n\t\"./light/arrow-alt-from-bottom.svg\": [\n\t\t32528,\n\t\t32528\n\t],\n\t\"./light/arrow-alt-from-left.svg\": [\n\t\t32435,\n\t\t32435\n\t],\n\t\"./light/arrow-alt-from-right.svg\": [\n\t\t91025,\n\t\t91025\n\t],\n\t\"./light/arrow-alt-from-top.svg\": [\n\t\t38879,\n\t\t38879\n\t],\n\t\"./light/arrow-alt-left.svg\": [\n\t\t15263,\n\t\t15263\n\t],\n\t\"./light/arrow-alt-right.svg\": [\n\t\t90712,\n\t\t90712\n\t],\n\t\"./light/arrow-alt-square-down.svg\": [\n\t\t45842,\n\t\t45842\n\t],\n\t\"./light/arrow-alt-square-left.svg\": [\n\t\t86382,\n\t\t86382\n\t],\n\t\"./light/arrow-alt-square-right.svg\": [\n\t\t19955,\n\t\t19955\n\t],\n\t\"./light/arrow-alt-square-up.svg\": [\n\t\t60192,\n\t\t60192\n\t],\n\t\"./light/arrow-alt-to-bottom.svg\": [\n\t\t95016,\n\t\t95016\n\t],\n\t\"./light/arrow-alt-to-left.svg\": [\n\t\t5253,\n\t\t5253\n\t],\n\t\"./light/arrow-alt-to-right.svg\": [\n\t\t86410,\n\t\t86410\n\t],\n\t\"./light/arrow-alt-to-top.svg\": [\n\t\t30534,\n\t\t30534\n\t],\n\t\"./light/arrow-alt-up.svg\": [\n\t\t39471,\n\t\t39471\n\t],\n\t\"./light/arrow-circle-down.svg\": [\n\t\t19914,\n\t\t19914\n\t],\n\t\"./light/arrow-circle-left.svg\": [\n\t\t86331,\n\t\t86331\n\t],\n\t\"./light/arrow-circle-right.svg\": [\n\t\t38745,\n\t\t38745\n\t],\n\t\"./light/arrow-circle-up.svg\": [\n\t\t73035,\n\t\t73035\n\t],\n\t\"./light/arrow-down-to-line.svg\": [\n\t\t61215,\n\t\t61215\n\t],\n\t\"./light/arrow-down.svg\": [\n\t\t66701,\n\t\t66701\n\t],\n\t\"./light/arrow-from-bottom.svg\": [\n\t\t61279,\n\t\t61279\n\t],\n\t\"./light/arrow-from-left.svg\": [\n\t\t55097,\n\t\t55097\n\t],\n\t\"./light/arrow-from-right.svg\": [\n\t\t64252,\n\t\t64252\n\t],\n\t\"./light/arrow-from-top.svg\": [\n\t\t74089,\n\t\t74089\n\t],\n\t\"./light/arrow-left.svg\": [\n\t\t18109,\n\t\t18109\n\t],\n\t\"./light/arrow-right.svg\": [\n\t\t31478,\n\t\t31478\n\t],\n\t\"./light/arrow-square-down.svg\": [\n\t\t34945,\n\t\t34945\n\t],\n\t\"./light/arrow-square-left.svg\": [\n\t\t54085,\n\t\t54085\n\t],\n\t\"./light/arrow-square-right.svg\": [\n\t\t6411,\n\t\t6411\n\t],\n\t\"./light/arrow-square-up.svg\": [\n\t\t20229,\n\t\t20229\n\t],\n\t\"./light/arrow-to-bottom.svg\": [\n\t\t79889,\n\t\t79889\n\t],\n\t\"./light/arrow-to-left.svg\": [\n\t\t12832,\n\t\t12832\n\t],\n\t\"./light/arrow-to-right.svg\": [\n\t\t9735,\n\t\t9735\n\t],\n\t\"./light/arrow-to-top.svg\": [\n\t\t7080,\n\t\t7080\n\t],\n\t\"./light/arrow-up.svg\": [\n\t\t46565,\n\t\t46565\n\t],\n\t\"./light/arrows-alt-h.svg\": [\n\t\t20497,\n\t\t20497\n\t],\n\t\"./light/arrows-alt-v.svg\": [\n\t\t33749,\n\t\t33749\n\t],\n\t\"./light/arrows-alt.svg\": [\n\t\t84582,\n\t\t84582\n\t],\n\t\"./light/arrows-h.svg\": [\n\t\t41408,\n\t\t41408\n\t],\n\t\"./light/arrows-v.svg\": [\n\t\t55523,\n\t\t55523\n\t],\n\t\"./light/arrows.svg\": [\n\t\t1721,\n\t\t1721\n\t],\n\t\"./light/assistive-listening-systems.svg\": [\n\t\t4217,\n\t\t4217\n\t],\n\t\"./light/asterisk.svg\": [\n\t\t39640,\n\t\t39640\n\t],\n\t\"./light/at.svg\": [\n\t\t33833,\n\t\t33833\n\t],\n\t\"./light/atlas.svg\": [\n\t\t1560,\n\t\t1560\n\t],\n\t\"./light/atom-alt.svg\": [\n\t\t95990,\n\t\t95990\n\t],\n\t\"./light/atom.svg\": [\n\t\t85158,\n\t\t85158\n\t],\n\t\"./light/audio-description.svg\": [\n\t\t41975,\n\t\t41975\n\t],\n\t\"./light/award.svg\": [\n\t\t17194,\n\t\t17194\n\t],\n\t\"./light/axe-battle.svg\": [\n\t\t54814,\n\t\t54814\n\t],\n\t\"./light/axe.svg\": [\n\t\t15625,\n\t\t15625\n\t],\n\t\"./light/baby-carriage.svg\": [\n\t\t93153,\n\t\t93153\n\t],\n\t\"./light/baby.svg\": [\n\t\t29366,\n\t\t29366\n\t],\n\t\"./light/backpack.svg\": [\n\t\t24362,\n\t\t24362\n\t],\n\t\"./light/backspace.svg\": [\n\t\t43029,\n\t\t43029\n\t],\n\t\"./light/backward.svg\": [\n\t\t46705,\n\t\t46705\n\t],\n\t\"./light/bacon.svg\": [\n\t\t89693,\n\t\t1344\n\t],\n\t\"./light/bacteria.svg\": [\n\t\t14939,\n\t\t14939\n\t],\n\t\"./light/bacterium.svg\": [\n\t\t97715,\n\t\t97715\n\t],\n\t\"./light/badge-check.svg\": [\n\t\t93461,\n\t\t93461\n\t],\n\t\"./light/badge-dollar.svg\": [\n\t\t61321,\n\t\t61321\n\t],\n\t\"./light/badge-percent.svg\": [\n\t\t94668,\n\t\t94668\n\t],\n\t\"./light/badge-sheriff.svg\": [\n\t\t75134,\n\t\t75134\n\t],\n\t\"./light/badge.svg\": [\n\t\t79233,\n\t\t79233\n\t],\n\t\"./light/badger-honey.svg\": [\n\t\t25940,\n\t\t25940\n\t],\n\t\"./light/bags-shopping.svg\": [\n\t\t242,\n\t\t242\n\t],\n\t\"./light/bahai.svg\": [\n\t\t99112,\n\t\t99112\n\t],\n\t\"./light/balance-scale-left.svg\": [\n\t\t19205,\n\t\t19205\n\t],\n\t\"./light/balance-scale-right.svg\": [\n\t\t74281,\n\t\t74281\n\t],\n\t\"./light/balance-scale.svg\": [\n\t\t83969,\n\t\t83969\n\t],\n\t\"./light/ball-pile.svg\": [\n\t\t22273,\n\t\t22273\n\t],\n\t\"./light/ballot-check.svg\": [\n\t\t84248,\n\t\t84248\n\t],\n\t\"./light/ballot.svg\": [\n\t\t62129,\n\t\t62129\n\t],\n\t\"./light/ban.svg\": [\n\t\t97180,\n\t\t97180\n\t],\n\t\"./light/band-aid.svg\": [\n\t\t1590,\n\t\t1590\n\t],\n\t\"./light/banjo.svg\": [\n\t\t40997,\n\t\t40997\n\t],\n\t\"./light/barcode-alt.svg\": [\n\t\t2805,\n\t\t2805\n\t],\n\t\"./light/barcode-read.svg\": [\n\t\t95682,\n\t\t95682\n\t],\n\t\"./light/barcode-scan.svg\": [\n\t\t63257,\n\t\t63257\n\t],\n\t\"./light/barcode.svg\": [\n\t\t84669,\n\t\t84669\n\t],\n\t\"./light/bars.svg\": [\n\t\t75872,\n\t\t75872\n\t],\n\t\"./light/baseball-ball.svg\": [\n\t\t85014,\n\t\t85014\n\t],\n\t\"./light/baseball.svg\": [\n\t\t92921,\n\t\t92921\n\t],\n\t\"./light/basketball-ball.svg\": [\n\t\t52862,\n\t\t52862\n\t],\n\t\"./light/basketball-hoop.svg\": [\n\t\t3880,\n\t\t3880\n\t],\n\t\"./light/bat.svg\": [\n\t\t52433,\n\t\t52433\n\t],\n\t\"./light/bath.svg\": [\n\t\t25998,\n\t\t25998\n\t],\n\t\"./light/battery-bolt.svg\": [\n\t\t91105,\n\t\t91105\n\t],\n\t\"./light/battery-empty.svg\": [\n\t\t40578,\n\t\t40578\n\t],\n\t\"./light/battery-full.svg\": [\n\t\t3356,\n\t\t3356\n\t],\n\t\"./light/battery-half.svg\": [\n\t\t30804,\n\t\t30804\n\t],\n\t\"./light/battery-quarter.svg\": [\n\t\t13340,\n\t\t13340\n\t],\n\t\"./light/battery-slash.svg\": [\n\t\t28287,\n\t\t28287\n\t],\n\t\"./light/battery-three-quarters.svg\": [\n\t\t75123,\n\t\t75123\n\t],\n\t\"./light/bed-alt.svg\": [\n\t\t12034,\n\t\t12034\n\t],\n\t\"./light/bed-bunk.svg\": [\n\t\t45595,\n\t\t45595\n\t],\n\t\"./light/bed-empty.svg\": [\n\t\t53910,\n\t\t53910\n\t],\n\t\"./light/bed.svg\": [\n\t\t34172,\n\t\t34172\n\t],\n\t\"./light/beer.svg\": [\n\t\t16192,\n\t\t16192\n\t],\n\t\"./light/bell-exclamation.svg\": [\n\t\t81763,\n\t\t81763\n\t],\n\t\"./light/bell-on.svg\": [\n\t\t12628,\n\t\t12628\n\t],\n\t\"./light/bell-plus.svg\": [\n\t\t13903,\n\t\t13903\n\t],\n\t\"./light/bell-school-slash.svg\": [\n\t\t6269,\n\t\t6269\n\t],\n\t\"./light/bell-school.svg\": [\n\t\t8592,\n\t\t8592\n\t],\n\t\"./light/bell-slash.svg\": [\n\t\t11201,\n\t\t11201\n\t],\n\t\"./light/bell.svg\": [\n\t\t72387,\n\t\t72387\n\t],\n\t\"./light/bells.svg\": [\n\t\t36549,\n\t\t36549\n\t],\n\t\"./light/betamax.svg\": [\n\t\t31438,\n\t\t31438\n\t],\n\t\"./light/bezier-curve.svg\": [\n\t\t30725,\n\t\t30725\n\t],\n\t\"./light/bible.svg\": [\n\t\t8298,\n\t\t8298\n\t],\n\t\"./light/bicycle.svg\": [\n\t\t62222,\n\t\t62222\n\t],\n\t\"./light/biking-mountain.svg\": [\n\t\t79970,\n\t\t79970\n\t],\n\t\"./light/biking.svg\": [\n\t\t42732,\n\t\t42732\n\t],\n\t\"./light/binoculars.svg\": [\n\t\t35355,\n\t\t35355\n\t],\n\t\"./light/biohazard.svg\": [\n\t\t38706,\n\t\t38706\n\t],\n\t\"./light/birthday-cake.svg\": [\n\t\t81980,\n\t\t81980\n\t],\n\t\"./light/blanket.svg\": [\n\t\t23196,\n\t\t23196\n\t],\n\t\"./light/blender-phone.svg\": [\n\t\t42159,\n\t\t42159\n\t],\n\t\"./light/blender.svg\": [\n\t\t46149,\n\t\t46149\n\t],\n\t\"./light/blind.svg\": [\n\t\t27833,\n\t\t27833\n\t],\n\t\"./light/blinds-open.svg\": [\n\t\t52864,\n\t\t52864\n\t],\n\t\"./light/blinds-raised.svg\": [\n\t\t40720,\n\t\t40720\n\t],\n\t\"./light/blinds.svg\": [\n\t\t20938,\n\t\t20938\n\t],\n\t\"./light/blog.svg\": [\n\t\t97831,\n\t\t97831\n\t],\n\t\"./light/bold.svg\": [\n\t\t93360,\n\t\t93360\n\t],\n\t\"./light/bolt.svg\": [\n\t\t89466,\n\t\t89466\n\t],\n\t\"./light/bomb.svg\": [\n\t\t72401,\n\t\t72401\n\t],\n\t\"./light/bone-break.svg\": [\n\t\t17508,\n\t\t17508\n\t],\n\t\"./light/bone.svg\": [\n\t\t44882,\n\t\t44882\n\t],\n\t\"./light/bong.svg\": [\n\t\t63005,\n\t\t63005\n\t],\n\t\"./light/book-alt.svg\": [\n\t\t35456,\n\t\t35456\n\t],\n\t\"./light/book-dead.svg\": [\n\t\t48055,\n\t\t48055\n\t],\n\t\"./light/book-heart.svg\": [\n\t\t20580,\n\t\t20580\n\t],\n\t\"./light/book-medical.svg\": [\n\t\t94346,\n\t\t94346\n\t],\n\t\"./light/book-open.svg\": [\n\t\t72939,\n\t\t72939\n\t],\n\t\"./light/book-reader.svg\": [\n\t\t85023,\n\t\t85023\n\t],\n\t\"./light/book-spells.svg\": [\n\t\t94343,\n\t\t10902\n\t],\n\t\"./light/book-user.svg\": [\n\t\t32739,\n\t\t32739\n\t],\n\t\"./light/book.svg\": [\n\t\t51324,\n\t\t96380\n\t],\n\t\"./light/bookmark.svg\": [\n\t\t43806,\n\t\t43806\n\t],\n\t\"./light/books-medical.svg\": [\n\t\t9626,\n\t\t9626\n\t],\n\t\"./light/books.svg\": [\n\t\t53255,\n\t\t53255\n\t],\n\t\"./light/boombox.svg\": [\n\t\t87556,\n\t\t87556\n\t],\n\t\"./light/boot.svg\": [\n\t\t14596,\n\t\t14596\n\t],\n\t\"./light/booth-curtain.svg\": [\n\t\t55415,\n\t\t55415\n\t],\n\t\"./light/border-all.svg\": [\n\t\t96257,\n\t\t96257\n\t],\n\t\"./light/border-bottom.svg\": [\n\t\t28202,\n\t\t28202\n\t],\n\t\"./light/border-center-h.svg\": [\n\t\t84507,\n\t\t84507\n\t],\n\t\"./light/border-center-v.svg\": [\n\t\t2322,\n\t\t2322\n\t],\n\t\"./light/border-inner.svg\": [\n\t\t96641,\n\t\t96641\n\t],\n\t\"./light/border-left.svg\": [\n\t\t42407,\n\t\t42407\n\t],\n\t\"./light/border-none.svg\": [\n\t\t38007,\n\t\t38007\n\t],\n\t\"./light/border-outer.svg\": [\n\t\t83880,\n\t\t83880\n\t],\n\t\"./light/border-right.svg\": [\n\t\t26137,\n\t\t26137\n\t],\n\t\"./light/border-style-alt.svg\": [\n\t\t87793,\n\t\t87793\n\t],\n\t\"./light/border-style.svg\": [\n\t\t48422,\n\t\t48422\n\t],\n\t\"./light/border-top.svg\": [\n\t\t7501,\n\t\t7501\n\t],\n\t\"./light/bow-arrow.svg\": [\n\t\t53386,\n\t\t28812\n\t],\n\t\"./light/bowling-ball.svg\": [\n\t\t53553,\n\t\t53553\n\t],\n\t\"./light/bowling-pins.svg\": [\n\t\t57265,\n\t\t57265\n\t],\n\t\"./light/box-alt.svg\": [\n\t\t13102,\n\t\t13102\n\t],\n\t\"./light/box-ballot.svg\": [\n\t\t65370,\n\t\t65370\n\t],\n\t\"./light/box-check.svg\": [\n\t\t90336,\n\t\t90336\n\t],\n\t\"./light/box-fragile.svg\": [\n\t\t30278,\n\t\t30278\n\t],\n\t\"./light/box-full.svg\": [\n\t\t13992,\n\t\t13992\n\t],\n\t\"./light/box-heart.svg\": [\n\t\t76278,\n\t\t76278\n\t],\n\t\"./light/box-open.svg\": [\n\t\t96920,\n\t\t96920\n\t],\n\t\"./light/box-tissue.svg\": [\n\t\t42000,\n\t\t42000\n\t],\n\t\"./light/box-up.svg\": [\n\t\t20382,\n\t\t20382\n\t],\n\t\"./light/box-usd.svg\": [\n\t\t58280,\n\t\t58280\n\t],\n\t\"./light/box.svg\": [\n\t\t96739,\n\t\t96739\n\t],\n\t\"./light/boxes-alt.svg\": [\n\t\t12855,\n\t\t12855\n\t],\n\t\"./light/boxes.svg\": [\n\t\t7607,\n\t\t7607\n\t],\n\t\"./light/boxing-glove.svg\": [\n\t\t29216,\n\t\t29216\n\t],\n\t\"./light/brackets-curly.svg\": [\n\t\t46299,\n\t\t46299\n\t],\n\t\"./light/brackets.svg\": [\n\t\t31236,\n\t\t31236\n\t],\n\t\"./light/braille.svg\": [\n\t\t32060,\n\t\t32060\n\t],\n\t\"./light/brain.svg\": [\n\t\t87246,\n\t\t87246\n\t],\n\t\"./light/bread-loaf.svg\": [\n\t\t448,\n\t\t448\n\t],\n\t\"./light/bread-slice.svg\": [\n\t\t87127,\n\t\t87127\n\t],\n\t\"./light/briefcase-medical.svg\": [\n\t\t12157,\n\t\t12157\n\t],\n\t\"./light/briefcase.svg\": [\n\t\t78105,\n\t\t78105\n\t],\n\t\"./light/bring-forward.svg\": [\n\t\t82922,\n\t\t53368\n\t],\n\t\"./light/bring-front.svg\": [\n\t\t63758,\n\t\t63758\n\t],\n\t\"./light/broadcast-tower.svg\": [\n\t\t75625,\n\t\t75625\n\t],\n\t\"./light/broom.svg\": [\n\t\t2384,\n\t\t2384\n\t],\n\t\"./light/browser.svg\": [\n\t\t39591,\n\t\t39591\n\t],\n\t\"./light/brush.svg\": [\n\t\t7753,\n\t\t7753\n\t],\n\t\"./light/bug.svg\": [\n\t\t977,\n\t\t977\n\t],\n\t\"./light/building.svg\": [\n\t\t14818,\n\t\t14818\n\t],\n\t\"./light/bullhorn.svg\": [\n\t\t57387,\n\t\t57387\n\t],\n\t\"./light/bullseye-arrow.svg\": [\n\t\t88998,\n\t\t88998\n\t],\n\t\"./light/bullseye-pointer.svg\": [\n\t\t16064,\n\t\t16064\n\t],\n\t\"./light/bullseye.svg\": [\n\t\t82563,\n\t\t82563\n\t],\n\t\"./light/burger-soda.svg\": [\n\t\t61803,\n\t\t61803\n\t],\n\t\"./light/burn.svg\": [\n\t\t23693,\n\t\t23693\n\t],\n\t\"./light/burrito.svg\": [\n\t\t72974,\n\t\t72974\n\t],\n\t\"./light/bus-alt.svg\": [\n\t\t62684,\n\t\t95939\n\t],\n\t\"./light/bus-school.svg\": [\n\t\t57581,\n\t\t57581\n\t],\n\t\"./light/bus.svg\": [\n\t\t26497,\n\t\t26497\n\t],\n\t\"./light/business-time.svg\": [\n\t\t80458,\n\t\t80458\n\t],\n\t\"./light/cabinet-filing.svg\": [\n\t\t47902,\n\t\t47902\n\t],\n\t\"./light/cactus.svg\": [\n\t\t54613,\n\t\t54613\n\t],\n\t\"./light/calculator-alt.svg\": [\n\t\t36289,\n\t\t36289\n\t],\n\t\"./light/calculator.svg\": [\n\t\t52413,\n\t\t52413\n\t],\n\t\"./light/calendar-alt.svg\": [\n\t\t69518,\n\t\t69518\n\t],\n\t\"./light/calendar-check.svg\": [\n\t\t5987,\n\t\t5987\n\t],\n\t\"./light/calendar-day.svg\": [\n\t\t88021,\n\t\t88021\n\t],\n\t\"./light/calendar-edit.svg\": [\n\t\t82641,\n\t\t82641\n\t],\n\t\"./light/calendar-exclamation.svg\": [\n\t\t55011,\n\t\t55011\n\t],\n\t\"./light/calendar-minus.svg\": [\n\t\t37416,\n\t\t37416\n\t],\n\t\"./light/calendar-plus.svg\": [\n\t\t16026,\n\t\t16026\n\t],\n\t\"./light/calendar-star.svg\": [\n\t\t73984,\n\t\t73984\n\t],\n\t\"./light/calendar-times.svg\": [\n\t\t19763,\n\t\t19763\n\t],\n\t\"./light/calendar-week.svg\": [\n\t\t61492,\n\t\t61492\n\t],\n\t\"./light/calendar.svg\": [\n\t\t60095,\n\t\t60095\n\t],\n\t\"./light/camcorder.svg\": [\n\t\t75583,\n\t\t75583\n\t],\n\t\"./light/camera-alt.svg\": [\n\t\t17330,\n\t\t17330\n\t],\n\t\"./light/camera-home.svg\": [\n\t\t52560,\n\t\t52560\n\t],\n\t\"./light/camera-movie.svg\": [\n\t\t51302,\n\t\t51302\n\t],\n\t\"./light/camera-polaroid.svg\": [\n\t\t72226,\n\t\t72226\n\t],\n\t\"./light/camera-retro.svg\": [\n\t\t3240,\n\t\t3240\n\t],\n\t\"./light/camera.svg\": [\n\t\t47465,\n\t\t47465\n\t],\n\t\"./light/campfire.svg\": [\n\t\t65302,\n\t\t65302\n\t],\n\t\"./light/campground.svg\": [\n\t\t22509,\n\t\t22509\n\t],\n\t\"./light/candle-holder.svg\": [\n\t\t15997,\n\t\t15997\n\t],\n\t\"./light/candy-cane.svg\": [\n\t\t2218,\n\t\t2218\n\t],\n\t\"./light/candy-corn.svg\": [\n\t\t34291,\n\t\t34291\n\t],\n\t\"./light/cannabis.svg\": [\n\t\t60017,\n\t\t60017\n\t],\n\t\"./light/capsules.svg\": [\n\t\t80633,\n\t\t80633\n\t],\n\t\"./light/car-alt.svg\": [\n\t\t4962,\n\t\t4962\n\t],\n\t\"./light/car-battery.svg\": [\n\t\t85512,\n\t\t85512\n\t],\n\t\"./light/car-building.svg\": [\n\t\t10719,\n\t\t10719\n\t],\n\t\"./light/car-bump.svg\": [\n\t\t24285,\n\t\t24285\n\t],\n\t\"./light/car-bus.svg\": [\n\t\t68440,\n\t\t68440\n\t],\n\t\"./light/car-crash.svg\": [\n\t\t86534,\n\t\t86534\n\t],\n\t\"./light/car-garage.svg\": [\n\t\t82779,\n\t\t82779\n\t],\n\t\"./light/car-mechanic.svg\": [\n\t\t51505,\n\t\t51505\n\t],\n\t\"./light/car-side.svg\": [\n\t\t79438,\n\t\t79438\n\t],\n\t\"./light/car-tilt.svg\": [\n\t\t93384,\n\t\t93384\n\t],\n\t\"./light/car-wash.svg\": [\n\t\t86830,\n\t\t86830\n\t],\n\t\"./light/car.svg\": [\n\t\t42128,\n\t\t42128\n\t],\n\t\"./light/caravan-alt.svg\": [\n\t\t10511,\n\t\t10511\n\t],\n\t\"./light/caravan.svg\": [\n\t\t77086,\n\t\t77086\n\t],\n\t\"./light/caret-circle-down.svg\": [\n\t\t96948,\n\t\t96948\n\t],\n\t\"./light/caret-circle-left.svg\": [\n\t\t33557,\n\t\t33557\n\t],\n\t\"./light/caret-circle-right.svg\": [\n\t\t31240,\n\t\t31240\n\t],\n\t\"./light/caret-circle-up.svg\": [\n\t\t39926,\n\t\t39926\n\t],\n\t\"./light/caret-down.svg\": [\n\t\t11411,\n\t\t11411\n\t],\n\t\"./light/caret-left.svg\": [\n\t\t69330,\n\t\t69330\n\t],\n\t\"./light/caret-right.svg\": [\n\t\t17002,\n\t\t17002\n\t],\n\t\"./light/caret-square-down.svg\": [\n\t\t40530,\n\t\t40530\n\t],\n\t\"./light/caret-square-left.svg\": [\n\t\t40291,\n\t\t40291\n\t],\n\t\"./light/caret-square-right.svg\": [\n\t\t5864,\n\t\t5864\n\t],\n\t\"./light/caret-square-up.svg\": [\n\t\t27344,\n\t\t27344\n\t],\n\t\"./light/caret-up.svg\": [\n\t\t2318,\n\t\t2318\n\t],\n\t\"./light/carrot.svg\": [\n\t\t54417,\n\t\t54417\n\t],\n\t\"./light/cars.svg\": [\n\t\t97807,\n\t\t97807\n\t],\n\t\"./light/cart-arrow-down.svg\": [\n\t\t52136,\n\t\t52136\n\t],\n\t\"./light/cart-plus.svg\": [\n\t\t36854,\n\t\t36854\n\t],\n\t\"./light/cash-register.svg\": [\n\t\t72085,\n\t\t72085\n\t],\n\t\"./light/cassette-tape.svg\": [\n\t\t77515,\n\t\t77515\n\t],\n\t\"./light/cat-space.svg\": [\n\t\t34206,\n\t\t34206\n\t],\n\t\"./light/cat.svg\": [\n\t\t19365,\n\t\t19365\n\t],\n\t\"./light/cauldron.svg\": [\n\t\t23846,\n\t\t23846\n\t],\n\t\"./light/cctv.svg\": [\n\t\t71481,\n\t\t71481\n\t],\n\t\"./light/certificate.svg\": [\n\t\t59248,\n\t\t59248\n\t],\n\t\"./light/chair-office.svg\": [\n\t\t24334,\n\t\t24334\n\t],\n\t\"./light/chair.svg\": [\n\t\t79522,\n\t\t79522\n\t],\n\t\"./light/chalkboard-teacher.svg\": [\n\t\t61756,\n\t\t61756\n\t],\n\t\"./light/chalkboard.svg\": [\n\t\t87503,\n\t\t87503\n\t],\n\t\"./light/charging-station.svg\": [\n\t\t28048,\n\t\t28048\n\t],\n\t\"./light/chart-area.svg\": [\n\t\t83429,\n\t\t83429\n\t],\n\t\"./light/chart-bar.svg\": [\n\t\t9743,\n\t\t9743\n\t],\n\t\"./light/chart-line-down.svg\": [\n\t\t24413,\n\t\t24413\n\t],\n\t\"./light/chart-line.svg\": [\n\t\t16228,\n\t\t16228\n\t],\n\t\"./light/chart-network.svg\": [\n\t\t3464,\n\t\t3464\n\t],\n\t\"./light/chart-pie-alt.svg\": [\n\t\t34007,\n\t\t34007\n\t],\n\t\"./light/chart-pie.svg\": [\n\t\t46030,\n\t\t46030\n\t],\n\t\"./light/chart-scatter.svg\": [\n\t\t1772,\n\t\t1772\n\t],\n\t\"./light/check-circle.svg\": [\n\t\t9653,\n\t\t9653\n\t],\n\t\"./light/check-double.svg\": [\n\t\t17710,\n\t\t17710\n\t],\n\t\"./light/check-square.svg\": [\n\t\t20449,\n\t\t20449\n\t],\n\t\"./light/check.svg\": [\n\t\t53650\n\t],\n\t\"./light/cheese-swiss.svg\": [\n\t\t16809,\n\t\t16809\n\t],\n\t\"./light/cheese.svg\": [\n\t\t98202,\n\t\t98202\n\t],\n\t\"./light/cheeseburger.svg\": [\n\t\t49269,\n\t\t49269\n\t],\n\t\"./light/chess-bishop-alt.svg\": [\n\t\t22639,\n\t\t22639\n\t],\n\t\"./light/chess-bishop.svg\": [\n\t\t28424,\n\t\t28424\n\t],\n\t\"./light/chess-board.svg\": [\n\t\t3065,\n\t\t3065\n\t],\n\t\"./light/chess-clock-alt.svg\": [\n\t\t18611,\n\t\t18611\n\t],\n\t\"./light/chess-clock.svg\": [\n\t\t31197,\n\t\t31197\n\t],\n\t\"./light/chess-king-alt.svg\": [\n\t\t48629,\n\t\t48629\n\t],\n\t\"./light/chess-king.svg\": [\n\t\t87328,\n\t\t87328\n\t],\n\t\"./light/chess-knight-alt.svg\": [\n\t\t60738,\n\t\t60738\n\t],\n\t\"./light/chess-knight.svg\": [\n\t\t52385,\n\t\t52385\n\t],\n\t\"./light/chess-pawn-alt.svg\": [\n\t\t88335,\n\t\t88335\n\t],\n\t\"./light/chess-pawn.svg\": [\n\t\t58663,\n\t\t58663\n\t],\n\t\"./light/chess-queen-alt.svg\": [\n\t\t89503,\n\t\t89503\n\t],\n\t\"./light/chess-queen.svg\": [\n\t\t21304,\n\t\t21304\n\t],\n\t\"./light/chess-rook-alt.svg\": [\n\t\t97749,\n\t\t97749\n\t],\n\t\"./light/chess-rook.svg\": [\n\t\t22914,\n\t\t22914\n\t],\n\t\"./light/chess.svg\": [\n\t\t12346,\n\t\t12346\n\t],\n\t\"./light/chevron-circle-down.svg\": [\n\t\t30759,\n\t\t30759\n\t],\n\t\"./light/chevron-circle-left.svg\": [\n\t\t11418,\n\t\t11418\n\t],\n\t\"./light/chevron-circle-right.svg\": [\n\t\t37777,\n\t\t37777\n\t],\n\t\"./light/chevron-circle-up.svg\": [\n\t\t85540,\n\t\t85540\n\t],\n\t\"./light/chevron-double-down.svg\": [\n\t\t13124,\n\t\t13124\n\t],\n\t\"./light/chevron-double-left.svg\": [\n\t\t64707,\n\t\t64707\n\t],\n\t\"./light/chevron-double-right.svg\": [\n\t\t33350,\n\t\t33350\n\t],\n\t\"./light/chevron-double-up.svg\": [\n\t\t9251,\n\t\t9251\n\t],\n\t\"./light/chevron-down.svg\": [\n\t\t98645,\n\t\t98645\n\t],\n\t\"./light/chevron-left.svg\": [\n\t\t55234,\n\t\t55234\n\t],\n\t\"./light/chevron-right.svg\": [\n\t\t93375,\n\t\t93375\n\t],\n\t\"./light/chevron-square-down.svg\": [\n\t\t25659,\n\t\t25659\n\t],\n\t\"./light/chevron-square-left.svg\": [\n\t\t59293,\n\t\t59293\n\t],\n\t\"./light/chevron-square-right.svg\": [\n\t\t15056,\n\t\t15056\n\t],\n\t\"./light/chevron-square-up.svg\": [\n\t\t65366,\n\t\t65366\n\t],\n\t\"./light/chevron-up.svg\": [\n\t\t6371,\n\t\t6371\n\t],\n\t\"./light/child.svg\": [\n\t\t70408,\n\t\t70408\n\t],\n\t\"./light/chimney.svg\": [\n\t\t9690,\n\t\t9690\n\t],\n\t\"./light/church.svg\": [\n\t\t74769,\n\t\t74769\n\t],\n\t\"./light/circle-notch.svg\": [\n\t\t51133,\n\t\t51133\n\t],\n\t\"./light/circle.svg\": [\n\t\t45646,\n\t\t45646\n\t],\n\t\"./light/city.svg\": [\n\t\t19741,\n\t\t19741\n\t],\n\t\"./light/clarinet.svg\": [\n\t\t24979,\n\t\t24979\n\t],\n\t\"./light/claw-marks.svg\": [\n\t\t39839,\n\t\t39839\n\t],\n\t\"./light/clinic-medical.svg\": [\n\t\t13935,\n\t\t13935\n\t],\n\t\"./light/clipboard-check.svg\": [\n\t\t28312,\n\t\t28312\n\t],\n\t\"./light/clipboard-list-check.svg\": [\n\t\t65210,\n\t\t65210\n\t],\n\t\"./light/clipboard-list.svg\": [\n\t\t25994,\n\t\t25994\n\t],\n\t\"./light/clipboard-prescription.svg\": [\n\t\t85965,\n\t\t85965\n\t],\n\t\"./light/clipboard-user.svg\": [\n\t\t72349,\n\t\t98951\n\t],\n\t\"./light/clipboard.svg\": [\n\t\t61966,\n\t\t61966\n\t],\n\t\"./light/clock.svg\": [\n\t\t39979,\n\t\t39979\n\t],\n\t\"./light/clone.svg\": [\n\t\t21064,\n\t\t21064\n\t],\n\t\"./light/closed-captioning.svg\": [\n\t\t4776,\n\t\t4776\n\t],\n\t\"./light/cloud-download-alt.svg\": [\n\t\t95028,\n\t\t95028\n\t],\n\t\"./light/cloud-download.svg\": [\n\t\t36857,\n\t\t36857\n\t],\n\t\"./light/cloud-drizzle.svg\": [\n\t\t71278,\n\t\t71278\n\t],\n\t\"./light/cloud-hail-mixed.svg\": [\n\t\t12949,\n\t\t12949\n\t],\n\t\"./light/cloud-hail.svg\": [\n\t\t19627,\n\t\t19627\n\t],\n\t\"./light/cloud-meatball.svg\": [\n\t\t35028,\n\t\t35028\n\t],\n\t\"./light/cloud-moon-rain.svg\": [\n\t\t86372,\n\t\t86372\n\t],\n\t\"./light/cloud-moon.svg\": [\n\t\t60983,\n\t\t60983\n\t],\n\t\"./light/cloud-music.svg\": [\n\t\t21465,\n\t\t21465\n\t],\n\t\"./light/cloud-rain.svg\": [\n\t\t92316,\n\t\t92316\n\t],\n\t\"./light/cloud-rainbow.svg\": [\n\t\t57057,\n\t\t85418\n\t],\n\t\"./light/cloud-showers-heavy.svg\": [\n\t\t53889,\n\t\t53889\n\t],\n\t\"./light/cloud-showers.svg\": [\n\t\t64310,\n\t\t64310\n\t],\n\t\"./light/cloud-sleet.svg\": [\n\t\t79352,\n\t\t79352\n\t],\n\t\"./light/cloud-snow.svg\": [\n\t\t75073,\n\t\t75073\n\t],\n\t\"./light/cloud-sun-rain.svg\": [\n\t\t51268,\n\t\t51268\n\t],\n\t\"./light/cloud-sun.svg\": [\n\t\t85721,\n\t\t85721\n\t],\n\t\"./light/cloud-upload-alt.svg\": [\n\t\t7277,\n\t\t7277\n\t],\n\t\"./light/cloud-upload.svg\": [\n\t\t29007,\n\t\t29007\n\t],\n\t\"./light/cloud.svg\": [\n\t\t45949,\n\t\t45949\n\t],\n\t\"./light/clouds-moon.svg\": [\n\t\t61514,\n\t\t61514\n\t],\n\t\"./light/clouds-sun.svg\": [\n\t\t34710,\n\t\t34710\n\t],\n\t\"./light/clouds.svg\": [\n\t\t64599,\n\t\t64599\n\t],\n\t\"./light/club.svg\": [\n\t\t89467,\n\t\t89467\n\t],\n\t\"./light/cocktail.svg\": [\n\t\t2804,\n\t\t2804\n\t],\n\t\"./light/code-branch.svg\": [\n\t\t60001,\n\t\t60001\n\t],\n\t\"./light/code-commit.svg\": [\n\t\t39182,\n\t\t39182\n\t],\n\t\"./light/code-merge.svg\": [\n\t\t40135,\n\t\t40135\n\t],\n\t\"./light/code.svg\": [\n\t\t66900,\n\t\t66900\n\t],\n\t\"./light/coffee-pot.svg\": [\n\t\t55811,\n\t\t55811\n\t],\n\t\"./light/coffee-togo.svg\": [\n\t\t76437,\n\t\t76437\n\t],\n\t\"./light/coffee.svg\": [\n\t\t84135,\n\t\t84135\n\t],\n\t\"./light/coffin-cross.svg\": [\n\t\t25091,\n\t\t25091\n\t],\n\t\"./light/coffin.svg\": [\n\t\t60236,\n\t\t60236\n\t],\n\t\"./light/cog.svg\": [\n\t\t64327,\n\t\t64327\n\t],\n\t\"./light/cogs.svg\": [\n\t\t45362,\n\t\t45362\n\t],\n\t\"./light/coin.svg\": [\n\t\t34540,\n\t\t34540\n\t],\n\t\"./light/coins.svg\": [\n\t\t41174,\n\t\t41174\n\t],\n\t\"./light/columns.svg\": [\n\t\t61025,\n\t\t61025\n\t],\n\t\"./light/comet.svg\": [\n\t\t1341,\n\t\t1341\n\t],\n\t\"./light/comment-alt-check.svg\": [\n\t\t97098,\n\t\t97098\n\t],\n\t\"./light/comment-alt-dollar.svg\": [\n\t\t36993,\n\t\t36993\n\t],\n\t\"./light/comment-alt-dots.svg\": [\n\t\t72384,\n\t\t72384\n\t],\n\t\"./light/comment-alt-edit.svg\": [\n\t\t17502,\n\t\t17502\n\t],\n\t\"./light/comment-alt-exclamation.svg\": [\n\t\t69464,\n\t\t69464\n\t],\n\t\"./light/comment-alt-lines.svg\": [\n\t\t63617,\n\t\t63617\n\t],\n\t\"./light/comment-alt-medical.svg\": [\n\t\t62146,\n\t\t62146\n\t],\n\t\"./light/comment-alt-minus.svg\": [\n\t\t85328,\n\t\t85328\n\t],\n\t\"./light/comment-alt-music.svg\": [\n\t\t49401,\n\t\t49401\n\t],\n\t\"./light/comment-alt-plus.svg\": [\n\t\t11374,\n\t\t11374\n\t],\n\t\"./light/comment-alt-slash.svg\": [\n\t\t24148,\n\t\t24148\n\t],\n\t\"./light/comment-alt-smile.svg\": [\n\t\t78523,\n\t\t78523\n\t],\n\t\"./light/comment-alt-times.svg\": [\n\t\t68151,\n\t\t68151\n\t],\n\t\"./light/comment-alt.svg\": [\n\t\t56281,\n\t\t56281\n\t],\n\t\"./light/comment-check.svg\": [\n\t\t16707,\n\t\t16707\n\t],\n\t\"./light/comment-dollar.svg\": [\n\t\t43944,\n\t\t43944\n\t],\n\t\"./light/comment-dots.svg\": [\n\t\t84266,\n\t\t84266\n\t],\n\t\"./light/comment-edit.svg\": [\n\t\t72762,\n\t\t72762\n\t],\n\t\"./light/comment-exclamation.svg\": [\n\t\t52545,\n\t\t52545\n\t],\n\t\"./light/comment-lines.svg\": [\n\t\t58774,\n\t\t58774\n\t],\n\t\"./light/comment-medical.svg\": [\n\t\t37249,\n\t\t37249\n\t],\n\t\"./light/comment-minus.svg\": [\n\t\t9294,\n\t\t9294\n\t],\n\t\"./light/comment-music.svg\": [\n\t\t57933,\n\t\t57933\n\t],\n\t\"./light/comment-plus.svg\": [\n\t\t51483,\n\t\t51483\n\t],\n\t\"./light/comment-slash.svg\": [\n\t\t70812,\n\t\t70812\n\t],\n\t\"./light/comment-smile.svg\": [\n\t\t78704,\n\t\t78704\n\t],\n\t\"./light/comment-times.svg\": [\n\t\t22847,\n\t\t22847\n\t],\n\t\"./light/comment.svg\": [\n\t\t30389,\n\t\t30389\n\t],\n\t\"./light/comments-alt-dollar.svg\": [\n\t\t31895,\n\t\t31895\n\t],\n\t\"./light/comments-alt.svg\": [\n\t\t99837,\n\t\t99837\n\t],\n\t\"./light/comments-dollar.svg\": [\n\t\t89794,\n\t\t89794\n\t],\n\t\"./light/comments.svg\": [\n\t\t72207,\n\t\t72207\n\t],\n\t\"./light/compact-disc.svg\": [\n\t\t72989,\n\t\t72989\n\t],\n\t\"./light/compass-slash.svg\": [\n\t\t47391,\n\t\t47391\n\t],\n\t\"./light/compass.svg\": [\n\t\t12270,\n\t\t12270\n\t],\n\t\"./light/compress-alt.svg\": [\n\t\t68006,\n\t\t68006\n\t],\n\t\"./light/compress-arrows-alt.svg\": [\n\t\t77233,\n\t\t77233\n\t],\n\t\"./light/compress-wide.svg\": [\n\t\t50009,\n\t\t50009\n\t],\n\t\"./light/compress.svg\": [\n\t\t30069,\n\t\t30069\n\t],\n\t\"./light/computer-classic.svg\": [\n\t\t65064,\n\t\t65064\n\t],\n\t\"./light/computer-speaker.svg\": [\n\t\t97073,\n\t\t97073\n\t],\n\t\"./light/concierge-bell.svg\": [\n\t\t22813,\n\t\t22813\n\t],\n\t\"./light/construction.svg\": [\n\t\t17142,\n\t\t17142\n\t],\n\t\"./light/container-storage.svg\": [\n\t\t33605,\n\t\t33605\n\t],\n\t\"./light/conveyor-belt-alt.svg\": [\n\t\t63166,\n\t\t63166\n\t],\n\t\"./light/conveyor-belt.svg\": [\n\t\t24725,\n\t\t24725\n\t],\n\t\"./light/cookie-bite.svg\": [\n\t\t9347,\n\t\t9347\n\t],\n\t\"./light/cookie.svg\": [\n\t\t11156,\n\t\t11156\n\t],\n\t\"./light/copy.svg\": [\n\t\t67995\n\t],\n\t\"./light/copyright.svg\": [\n\t\t92993,\n\t\t92993\n\t],\n\t\"./light/corn.svg\": [\n\t\t48135,\n\t\t48135\n\t],\n\t\"./light/couch.svg\": [\n\t\t50101,\n\t\t50101\n\t],\n\t\"./light/cow.svg\": [\n\t\t19360,\n\t\t19360\n\t],\n\t\"./light/cowbell-more.svg\": [\n\t\t34932,\n\t\t34932\n\t],\n\t\"./light/cowbell.svg\": [\n\t\t41020,\n\t\t41020\n\t],\n\t\"./light/credit-card-blank.svg\": [\n\t\t18379,\n\t\t18379\n\t],\n\t\"./light/credit-card-front.svg\": [\n\t\t85518,\n\t\t85518\n\t],\n\t\"./light/credit-card.svg\": [\n\t\t47961,\n\t\t47961\n\t],\n\t\"./light/cricket.svg\": [\n\t\t51626,\n\t\t51626\n\t],\n\t\"./light/croissant.svg\": [\n\t\t29017,\n\t\t29017\n\t],\n\t\"./light/crop-alt.svg\": [\n\t\t57378,\n\t\t57378\n\t],\n\t\"./light/crop.svg\": [\n\t\t11063,\n\t\t11063\n\t],\n\t\"./light/cross.svg\": [\n\t\t57061,\n\t\t57061\n\t],\n\t\"./light/crosshairs.svg\": [\n\t\t60371,\n\t\t60371\n\t],\n\t\"./light/crow.svg\": [\n\t\t9897,\n\t\t9897\n\t],\n\t\"./light/crown.svg\": [\n\t\t7456,\n\t\t7456\n\t],\n\t\"./light/crutch.svg\": [\n\t\t94082,\n\t\t94082\n\t],\n\t\"./light/crutches.svg\": [\n\t\t21324,\n\t\t21324\n\t],\n\t\"./light/cube.svg\": [\n\t\t27421,\n\t\t27421\n\t],\n\t\"./light/cubes.svg\": [\n\t\t64594,\n\t\t64594\n\t],\n\t\"./light/curling.svg\": [\n\t\t47384,\n\t\t47384\n\t],\n\t\"./light/cut.svg\": [\n\t\t72147,\n\t\t72147\n\t],\n\t\"./light/dagger.svg\": [\n\t\t46975,\n\t\t46975\n\t],\n\t\"./light/database.svg\": [\n\t\t99045,\n\t\t99045\n\t],\n\t\"./light/deaf.svg\": [\n\t\t95862,\n\t\t95862\n\t],\n\t\"./light/debug.svg\": [\n\t\t70608,\n\t\t70608\n\t],\n\t\"./light/deer-rudolph.svg\": [\n\t\t7919,\n\t\t7919\n\t],\n\t\"./light/deer.svg\": [\n\t\t52727,\n\t\t52727\n\t],\n\t\"./light/democrat.svg\": [\n\t\t39479,\n\t\t39479\n\t],\n\t\"./light/desktop-alt.svg\": [\n\t\t70324,\n\t\t70324\n\t],\n\t\"./light/desktop.svg\": [\n\t\t87364,\n\t\t87364\n\t],\n\t\"./light/dewpoint.svg\": [\n\t\t33585,\n\t\t33585\n\t],\n\t\"./light/dharmachakra.svg\": [\n\t\t39542,\n\t\t39542\n\t],\n\t\"./light/diagnoses.svg\": [\n\t\t58816,\n\t\t58816\n\t],\n\t\"./light/diamond.svg\": [\n\t\t56064,\n\t\t56064\n\t],\n\t\"./light/dice-d10.svg\": [\n\t\t49507,\n\t\t49507\n\t],\n\t\"./light/dice-d12.svg\": [\n\t\t77454,\n\t\t77454\n\t],\n\t\"./light/dice-d20.svg\": [\n\t\t27848,\n\t\t27848\n\t],\n\t\"./light/dice-d4.svg\": [\n\t\t36349,\n\t\t36349\n\t],\n\t\"./light/dice-d6.svg\": [\n\t\t91908,\n\t\t91908\n\t],\n\t\"./light/dice-d8.svg\": [\n\t\t72276,\n\t\t72276\n\t],\n\t\"./light/dice-five.svg\": [\n\t\t24974,\n\t\t24974\n\t],\n\t\"./light/dice-four.svg\": [\n\t\t71058,\n\t\t71058\n\t],\n\t\"./light/dice-one.svg\": [\n\t\t19639,\n\t\t19639\n\t],\n\t\"./light/dice-six.svg\": [\n\t\t75662,\n\t\t75662\n\t],\n\t\"./light/dice-three.svg\": [\n\t\t38649,\n\t\t38649\n\t],\n\t\"./light/dice-two.svg\": [\n\t\t52792,\n\t\t52792\n\t],\n\t\"./light/dice.svg\": [\n\t\t88672,\n\t\t88672\n\t],\n\t\"./light/digging.svg\": [\n\t\t2835,\n\t\t2835\n\t],\n\t\"./light/digital-tachograph.svg\": [\n\t\t83476,\n\t\t27830\n\t],\n\t\"./light/diploma.svg\": [\n\t\t73340,\n\t\t73340\n\t],\n\t\"./light/directions.svg\": [\n\t\t75098,\n\t\t75098\n\t],\n\t\"./light/disc-drive.svg\": [\n\t\t16775,\n\t\t16775\n\t],\n\t\"./light/disease.svg\": [\n\t\t13938,\n\t\t13938\n\t],\n\t\"./light/divide.svg\": [\n\t\t62422,\n\t\t62422\n\t],\n\t\"./light/dizzy.svg\": [\n\t\t83408,\n\t\t83408\n\t],\n\t\"./light/dna.svg\": [\n\t\t55167,\n\t\t55167\n\t],\n\t\"./light/do-not-enter.svg\": [\n\t\t88547,\n\t\t88547\n\t],\n\t\"./light/dog-leashed.svg\": [\n\t\t22110,\n\t\t22110\n\t],\n\t\"./light/dog.svg\": [\n\t\t73112,\n\t\t73112\n\t],\n\t\"./light/dollar-sign.svg\": [\n\t\t36433,\n\t\t36433\n\t],\n\t\"./light/dolly-empty.svg\": [\n\t\t36636,\n\t\t36636\n\t],\n\t\"./light/dolly-flatbed-alt.svg\": [\n\t\t92330,\n\t\t92330\n\t],\n\t\"./light/dolly-flatbed-empty.svg\": [\n\t\t28288,\n\t\t28288\n\t],\n\t\"./light/dolly-flatbed.svg\": [\n\t\t59680,\n\t\t59680\n\t],\n\t\"./light/dolly.svg\": [\n\t\t30218,\n\t\t30218\n\t],\n\t\"./light/donate.svg\": [\n\t\t60727,\n\t\t60727\n\t],\n\t\"./light/door-closed.svg\": [\n\t\t27327,\n\t\t27327\n\t],\n\t\"./light/door-open.svg\": [\n\t\t9826,\n\t\t9826\n\t],\n\t\"./light/dot-circle.svg\": [\n\t\t40299,\n\t\t40299\n\t],\n\t\"./light/dove.svg\": [\n\t\t50397,\n\t\t50397\n\t],\n\t\"./light/download.svg\": [\n\t\t69282,\n\t\t69282\n\t],\n\t\"./light/drafting-compass.svg\": [\n\t\t33020,\n\t\t33020\n\t],\n\t\"./light/dragon.svg\": [\n\t\t30864,\n\t\t30864\n\t],\n\t\"./light/draw-circle.svg\": [\n\t\t50191,\n\t\t50191\n\t],\n\t\"./light/draw-polygon.svg\": [\n\t\t99903,\n\t\t99903\n\t],\n\t\"./light/draw-square.svg\": [\n\t\t90026,\n\t\t90026\n\t],\n\t\"./light/dreidel.svg\": [\n\t\t13821,\n\t\t13821\n\t],\n\t\"./light/drone-alt.svg\": [\n\t\t6489,\n\t\t6489\n\t],\n\t\"./light/drone.svg\": [\n\t\t85919,\n\t\t85919\n\t],\n\t\"./light/drum-steelpan.svg\": [\n\t\t17618,\n\t\t17618\n\t],\n\t\"./light/drum.svg\": [\n\t\t92756,\n\t\t92756\n\t],\n\t\"./light/drumstick-bite.svg\": [\n\t\t42227,\n\t\t42227\n\t],\n\t\"./light/drumstick.svg\": [\n\t\t44138,\n\t\t44138\n\t],\n\t\"./light/dryer-alt.svg\": [\n\t\t60002,\n\t\t60002\n\t],\n\t\"./light/dryer.svg\": [\n\t\t43986,\n\t\t43986\n\t],\n\t\"./light/duck.svg\": [\n\t\t76820,\n\t\t76820\n\t],\n\t\"./light/dumbbell.svg\": [\n\t\t26922,\n\t\t26922\n\t],\n\t\"./light/dumpster-fire.svg\": [\n\t\t90318,\n\t\t90318\n\t],\n\t\"./light/dumpster.svg\": [\n\t\t59616,\n\t\t59616\n\t],\n\t\"./light/dungeon.svg\": [\n\t\t16010,\n\t\t16010\n\t],\n\t\"./light/ear-muffs.svg\": [\n\t\t89282,\n\t\t89282\n\t],\n\t\"./light/ear.svg\": [\n\t\t42993,\n\t\t42993\n\t],\n\t\"./light/eclipse-alt.svg\": [\n\t\t9764,\n\t\t9764\n\t],\n\t\"./light/eclipse.svg\": [\n\t\t20225,\n\t\t20225\n\t],\n\t\"./light/edit.svg\": [\n\t\t31940,\n\t\t31940\n\t],\n\t\"./light/egg-fried.svg\": [\n\t\t13307,\n\t\t13307\n\t],\n\t\"./light/egg.svg\": [\n\t\t18653,\n\t\t18653\n\t],\n\t\"./light/eject.svg\": [\n\t\t53243,\n\t\t53243\n\t],\n\t\"./light/elephant.svg\": [\n\t\t34064,\n\t\t34064\n\t],\n\t\"./light/ellipsis-h-alt.svg\": [\n\t\t89809,\n\t\t89809\n\t],\n\t\"./light/ellipsis-h.svg\": [\n\t\t31542,\n\t\t31542\n\t],\n\t\"./light/ellipsis-v-alt.svg\": [\n\t\t83549,\n\t\t83549\n\t],\n\t\"./light/ellipsis-v.svg\": [\n\t\t22905,\n\t\t22905\n\t],\n\t\"./light/empty-set.svg\": [\n\t\t24509,\n\t\t24509\n\t],\n\t\"./light/engine-warning.svg\": [\n\t\t43752,\n\t\t43752\n\t],\n\t\"./light/envelope-open-dollar.svg\": [\n\t\t95868,\n\t\t58103\n\t],\n\t\"./light/envelope-open-text.svg\": [\n\t\t92163,\n\t\t92163\n\t],\n\t\"./light/envelope-open.svg\": [\n\t\t69157,\n\t\t69157\n\t],\n\t\"./light/envelope-square.svg\": [\n\t\t50730,\n\t\t50730\n\t],\n\t\"./light/envelope.svg\": [\n\t\t68593,\n\t\t68593\n\t],\n\t\"./light/equals.svg\": [\n\t\t39101,\n\t\t39101\n\t],\n\t\"./light/eraser.svg\": [\n\t\t84613,\n\t\t84613\n\t],\n\t\"./light/ethernet.svg\": [\n\t\t44989,\n\t\t44989\n\t],\n\t\"./light/euro-sign.svg\": [\n\t\t53143,\n\t\t53143\n\t],\n\t\"./light/exchange-alt.svg\": [\n\t\t93972,\n\t\t93972\n\t],\n\t\"./light/exchange.svg\": [\n\t\t16666,\n\t\t16666\n\t],\n\t\"./light/exclamation-circle.svg\": [\n\t\t12922,\n\t\t12922\n\t],\n\t\"./light/exclamation-square.svg\": [\n\t\t99804,\n\t\t99804\n\t],\n\t\"./light/exclamation-triangle.svg\": [\n\t\t73903,\n\t\t73903\n\t],\n\t\"./light/exclamation.svg\": [\n\t\t70252,\n\t\t70252\n\t],\n\t\"./light/expand-alt.svg\": [\n\t\t68212,\n\t\t68212\n\t],\n\t\"./light/expand-arrows-alt.svg\": [\n\t\t84009,\n\t\t84009\n\t],\n\t\"./light/expand-arrows.svg\": [\n\t\t48651,\n\t\t48651\n\t],\n\t\"./light/expand-wide.svg\": [\n\t\t63528,\n\t\t63528\n\t],\n\t\"./light/expand.svg\": [\n\t\t79540,\n\t\t79540\n\t],\n\t\"./light/external-link-alt.svg\": [\n\t\t40015,\n\t\t40015\n\t],\n\t\"./light/external-link-square-alt.svg\": [\n\t\t74358,\n\t\t74358\n\t],\n\t\"./light/external-link-square.svg\": [\n\t\t887,\n\t\t887\n\t],\n\t\"./light/external-link.svg\": [\n\t\t93391,\n\t\t93391\n\t],\n\t\"./light/eye-dropper.svg\": [\n\t\t12798,\n\t\t12798\n\t],\n\t\"./light/eye-evil.svg\": [\n\t\t44129,\n\t\t44129\n\t],\n\t\"./light/eye-slash.svg\": [\n\t\t5256,\n\t\t5256\n\t],\n\t\"./light/eye.svg\": [\n\t\t47817,\n\t\t47817\n\t],\n\t\"./light/fan-table.svg\": [\n\t\t30542,\n\t\t30542\n\t],\n\t\"./light/fan.svg\": [\n\t\t10072,\n\t\t10072\n\t],\n\t\"./light/farm.svg\": [\n\t\t68693,\n\t\t68693\n\t],\n\t\"./light/fast-backward.svg\": [\n\t\t85407,\n\t\t85407\n\t],\n\t\"./light/fast-forward.svg\": [\n\t\t70706,\n\t\t70706\n\t],\n\t\"./light/faucet-drip.svg\": [\n\t\t36683,\n\t\t36683\n\t],\n\t\"./light/faucet.svg\": [\n\t\t79393,\n\t\t79393\n\t],\n\t\"./light/fax.svg\": [\n\t\t19481,\n\t\t19481\n\t],\n\t\"./light/feather-alt.svg\": [\n\t\t59162,\n\t\t59162\n\t],\n\t\"./light/feather.svg\": [\n\t\t45184,\n\t\t45184\n\t],\n\t\"./light/female.svg\": [\n\t\t69154,\n\t\t69154\n\t],\n\t\"./light/field-hockey.svg\": [\n\t\t33082,\n\t\t33082\n\t],\n\t\"./light/fighter-jet.svg\": [\n\t\t46871,\n\t\t46871\n\t],\n\t\"./light/file-alt.svg\": [\n\t\t17572,\n\t\t17572\n\t],\n\t\"./light/file-archive.svg\": [\n\t\t63685,\n\t\t63685\n\t],\n\t\"./light/file-audio.svg\": [\n\t\t6660,\n\t\t6660\n\t],\n\t\"./light/file-certificate.svg\": [\n\t\t10019,\n\t\t10019\n\t],\n\t\"./light/file-chart-line.svg\": [\n\t\t63844,\n\t\t63844\n\t],\n\t\"./light/file-chart-pie.svg\": [\n\t\t23140,\n\t\t23140\n\t],\n\t\"./light/file-check.svg\": [\n\t\t77363,\n\t\t77363\n\t],\n\t\"./light/file-code.svg\": [\n\t\t29965,\n\t\t29965\n\t],\n\t\"./light/file-contract.svg\": [\n\t\t28068,\n\t\t28068\n\t],\n\t\"./light/file-csv.svg\": [\n\t\t95069,\n\t\t95069\n\t],\n\t\"./light/file-download.svg\": [\n\t\t71704,\n\t\t71704\n\t],\n\t\"./light/file-edit.svg\": [\n\t\t9678,\n\t\t9678\n\t],\n\t\"./light/file-excel.svg\": [\n\t\t36316,\n\t\t36316\n\t],\n\t\"./light/file-exclamation.svg\": [\n\t\t68585,\n\t\t68585\n\t],\n\t\"./light/file-export.svg\": [\n\t\t55332,\n\t\t55332\n\t],\n\t\"./light/file-image.svg\": [\n\t\t47998,\n\t\t47998\n\t],\n\t\"./light/file-import.svg\": [\n\t\t60540,\n\t\t60540\n\t],\n\t\"./light/file-invoice-dollar.svg\": [\n\t\t38917,\n\t\t38917\n\t],\n\t\"./light/file-invoice.svg\": [\n\t\t19638,\n\t\t19638\n\t],\n\t\"./light/file-medical-alt.svg\": [\n\t\t45151,\n\t\t45151\n\t],\n\t\"./light/file-medical.svg\": [\n\t\t38030,\n\t\t38030\n\t],\n\t\"./light/file-minus.svg\": [\n\t\t9095,\n\t\t9095\n\t],\n\t\"./light/file-music.svg\": [\n\t\t46542,\n\t\t46542\n\t],\n\t\"./light/file-pdf.svg\": [\n\t\t99205,\n\t\t99205\n\t],\n\t\"./light/file-plus.svg\": [\n\t\t98360,\n\t\t98360\n\t],\n\t\"./light/file-powerpoint.svg\": [\n\t\t61761,\n\t\t61761\n\t],\n\t\"./light/file-prescription.svg\": [\n\t\t57748,\n\t\t57748\n\t],\n\t\"./light/file-search.svg\": [\n\t\t77581,\n\t\t77581\n\t],\n\t\"./light/file-signature.svg\": [\n\t\t21792,\n\t\t21792\n\t],\n\t\"./light/file-spreadsheet.svg\": [\n\t\t90340,\n\t\t90340\n\t],\n\t\"./light/file-times.svg\": [\n\t\t67414,\n\t\t67414\n\t],\n\t\"./light/file-upload.svg\": [\n\t\t54983,\n\t\t54983\n\t],\n\t\"./light/file-user.svg\": [\n\t\t9906,\n\t\t9906\n\t],\n\t\"./light/file-video.svg\": [\n\t\t6177,\n\t\t6177\n\t],\n\t\"./light/file-word.svg\": [\n\t\t35236,\n\t\t35236\n\t],\n\t\"./light/file.svg\": [\n\t\t81621,\n\t\t81621\n\t],\n\t\"./light/files-medical.svg\": [\n\t\t25469,\n\t\t25469\n\t],\n\t\"./light/fill-drip.svg\": [\n\t\t95871,\n\t\t95871\n\t],\n\t\"./light/fill.svg\": [\n\t\t27978,\n\t\t27978\n\t],\n\t\"./light/film-alt.svg\": [\n\t\t49965,\n\t\t49965\n\t],\n\t\"./light/film-canister.svg\": [\n\t\t4582,\n\t\t4582\n\t],\n\t\"./light/film.svg\": [\n\t\t7883,\n\t\t7883\n\t],\n\t\"./light/filter.svg\": [\n\t\t6568,\n\t\t6568\n\t],\n\t\"./light/fingerprint.svg\": [\n\t\t12181,\n\t\t12181\n\t],\n\t\"./light/fire-alt.svg\": [\n\t\t24794,\n\t\t24794\n\t],\n\t\"./light/fire-extinguisher.svg\": [\n\t\t43935,\n\t\t43935\n\t],\n\t\"./light/fire-smoke.svg\": [\n\t\t91363,\n\t\t91363\n\t],\n\t\"./light/fire.svg\": [\n\t\t9363,\n\t\t9363\n\t],\n\t\"./light/fireplace.svg\": [\n\t\t15538,\n\t\t15538\n\t],\n\t\"./light/first-aid.svg\": [\n\t\t45277,\n\t\t45277\n\t],\n\t\"./light/fish-cooked.svg\": [\n\t\t4885,\n\t\t4885\n\t],\n\t\"./light/fish.svg\": [\n\t\t28281,\n\t\t28281\n\t],\n\t\"./light/fist-raised.svg\": [\n\t\t5062,\n\t\t5062\n\t],\n\t\"./light/flag-alt.svg\": [\n\t\t63940,\n\t\t63940\n\t],\n\t\"./light/flag-checkered.svg\": [\n\t\t79877,\n\t\t79877\n\t],\n\t\"./light/flag-usa.svg\": [\n\t\t4447,\n\t\t4447\n\t],\n\t\"./light/flag.svg\": [\n\t\t79719,\n\t\t79719\n\t],\n\t\"./light/flame.svg\": [\n\t\t25876,\n\t\t25876\n\t],\n\t\"./light/flashlight.svg\": [\n\t\t76228,\n\t\t76228\n\t],\n\t\"./light/flask-poison.svg\": [\n\t\t82889,\n\t\t82889\n\t],\n\t\"./light/flask-potion.svg\": [\n\t\t51502,\n\t\t51502\n\t],\n\t\"./light/flask.svg\": [\n\t\t87661,\n\t\t87661\n\t],\n\t\"./light/flower-daffodil.svg\": [\n\t\t88664,\n\t\t88664\n\t],\n\t\"./light/flower-tulip.svg\": [\n\t\t31184,\n\t\t31184\n\t],\n\t\"./light/flower.svg\": [\n\t\t91302,\n\t\t91302\n\t],\n\t\"./light/flushed.svg\": [\n\t\t60996,\n\t\t60996\n\t],\n\t\"./light/flute.svg\": [\n\t\t1204,\n\t\t1204\n\t],\n\t\"./light/flux-capacitor.svg\": [\n\t\t5658,\n\t\t5658\n\t],\n\t\"./light/fog.svg\": [\n\t\t41774,\n\t\t41774\n\t],\n\t\"./light/folder-download.svg\": [\n\t\t5871,\n\t\t5871\n\t],\n\t\"./light/folder-minus.svg\": [\n\t\t15394,\n\t\t15394\n\t],\n\t\"./light/folder-open.svg\": [\n\t\t89065,\n\t\t89065\n\t],\n\t\"./light/folder-plus.svg\": [\n\t\t45040,\n\t\t15785\n\t],\n\t\"./light/folder-times.svg\": [\n\t\t77573,\n\t\t77573\n\t],\n\t\"./light/folder-tree.svg\": [\n\t\t9904,\n\t\t9904\n\t],\n\t\"./light/folder-upload.svg\": [\n\t\t90014,\n\t\t90014\n\t],\n\t\"./light/folder.svg\": [\n\t\t30059,\n\t\t30059\n\t],\n\t\"./light/folders.svg\": [\n\t\t38170,\n\t\t38170\n\t],\n\t\"./light/font-awesome-logo-full.svg\": [\n\t\t38941,\n\t\t38941\n\t],\n\t\"./light/font-case.svg\": [\n\t\t62690,\n\t\t62690\n\t],\n\t\"./light/font.svg\": [\n\t\t34169,\n\t\t34169\n\t],\n\t\"./light/football-ball.svg\": [\n\t\t49028,\n\t\t49028\n\t],\n\t\"./light/football-helmet.svg\": [\n\t\t5136,\n\t\t5136\n\t],\n\t\"./light/forklift.svg\": [\n\t\t10700,\n\t\t10700\n\t],\n\t\"./light/forward.svg\": [\n\t\t66286,\n\t\t66286\n\t],\n\t\"./light/fragile.svg\": [\n\t\t87691,\n\t\t87691\n\t],\n\t\"./light/french-fries.svg\": [\n\t\t32690,\n\t\t32690\n\t],\n\t\"./light/frog.svg\": [\n\t\t97443,\n\t\t97443\n\t],\n\t\"./light/frosty-head.svg\": [\n\t\t22906,\n\t\t22906\n\t],\n\t\"./light/frown-open.svg\": [\n\t\t86174,\n\t\t90607\n\t],\n\t\"./light/frown.svg\": [\n\t\t21680,\n\t\t21680\n\t],\n\t\"./light/function.svg\": [\n\t\t43241,\n\t\t43241\n\t],\n\t\"./light/funnel-dollar.svg\": [\n\t\t48930,\n\t\t48930\n\t],\n\t\"./light/futbol.svg\": [\n\t\t50570,\n\t\t50570\n\t],\n\t\"./light/galaxy.svg\": [\n\t\t78377,\n\t\t78377\n\t],\n\t\"./light/game-board-alt.svg\": [\n\t\t21491,\n\t\t21491\n\t],\n\t\"./light/game-board.svg\": [\n\t\t14537,\n\t\t14537\n\t],\n\t\"./light/game-console-handheld.svg\": [\n\t\t44752,\n\t\t44752\n\t],\n\t\"./light/gamepad-alt.svg\": [\n\t\t68853,\n\t\t68853\n\t],\n\t\"./light/gamepad.svg\": [\n\t\t77079,\n\t\t77079\n\t],\n\t\"./light/garage-car.svg\": [\n\t\t9259,\n\t\t9259\n\t],\n\t\"./light/garage-open.svg\": [\n\t\t11613,\n\t\t11613\n\t],\n\t\"./light/garage.svg\": [\n\t\t70476,\n\t\t70476\n\t],\n\t\"./light/gas-pump-slash.svg\": [\n\t\t6010,\n\t\t6010\n\t],\n\t\"./light/gas-pump.svg\": [\n\t\t25609,\n\t\t25609\n\t],\n\t\"./light/gavel.svg\": [\n\t\t81074,\n\t\t81074\n\t],\n\t\"./light/gem.svg\": [\n\t\t3996,\n\t\t3996\n\t],\n\t\"./light/genderless.svg\": [\n\t\t15076,\n\t\t15076\n\t],\n\t\"./light/ghost.svg\": [\n\t\t84923,\n\t\t84923\n\t],\n\t\"./light/gift-card.svg\": [\n\t\t27042,\n\t\t27042\n\t],\n\t\"./light/gift.svg\": [\n\t\t54650,\n\t\t54650\n\t],\n\t\"./light/gifts.svg\": [\n\t\t37095,\n\t\t37095\n\t],\n\t\"./light/gingerbread-man.svg\": [\n\t\t70014,\n\t\t70014\n\t],\n\t\"./light/glass-champagne.svg\": [\n\t\t93138,\n\t\t93138\n\t],\n\t\"./light/glass-cheers.svg\": [\n\t\t69619,\n\t\t69619\n\t],\n\t\"./light/glass-citrus.svg\": [\n\t\t77262,\n\t\t77262\n\t],\n\t\"./light/glass-martini-alt.svg\": [\n\t\t68531,\n\t\t68531\n\t],\n\t\"./light/glass-martini.svg\": [\n\t\t72593,\n\t\t72593\n\t],\n\t\"./light/glass-whiskey-rocks.svg\": [\n\t\t95705,\n\t\t95705\n\t],\n\t\"./light/glass-whiskey.svg\": [\n\t\t67943,\n\t\t67943\n\t],\n\t\"./light/glass.svg\": [\n\t\t97937,\n\t\t97937\n\t],\n\t\"./light/glasses-alt.svg\": [\n\t\t71089,\n\t\t71089\n\t],\n\t\"./light/glasses.svg\": [\n\t\t22128,\n\t\t22128\n\t],\n\t\"./light/globe-africa.svg\": [\n\t\t87673,\n\t\t87673\n\t],\n\t\"./light/globe-americas.svg\": [\n\t\t70979,\n\t\t70979\n\t],\n\t\"./light/globe-asia.svg\": [\n\t\t33071,\n\t\t33071\n\t],\n\t\"./light/globe-europe.svg\": [\n\t\t83838,\n\t\t83838\n\t],\n\t\"./light/globe-snow.svg\": [\n\t\t15826,\n\t\t15826\n\t],\n\t\"./light/globe-stand.svg\": [\n\t\t39660,\n\t\t39660\n\t],\n\t\"./light/globe.svg\": [\n\t\t50355,\n\t\t50355\n\t],\n\t\"./light/golf-ball.svg\": [\n\t\t95203,\n\t\t95203\n\t],\n\t\"./light/golf-club.svg\": [\n\t\t9975,\n\t\t9975\n\t],\n\t\"./light/gopuram.svg\": [\n\t\t81450,\n\t\t81450\n\t],\n\t\"./light/graduation-cap.svg\": [\n\t\t64778,\n\t\t64778\n\t],\n\t\"./light/gramophone.svg\": [\n\t\t80969,\n\t\t80969\n\t],\n\t\"./light/greater-than-equal.svg\": [\n\t\t65226,\n\t\t65226\n\t],\n\t\"./light/greater-than.svg\": [\n\t\t80650,\n\t\t80650\n\t],\n\t\"./light/grimace.svg\": [\n\t\t50241,\n\t\t50241\n\t],\n\t\"./light/grin-alt.svg\": [\n\t\t50736,\n\t\t50736\n\t],\n\t\"./light/grin-beam-sweat.svg\": [\n\t\t43625,\n\t\t43625\n\t],\n\t\"./light/grin-beam.svg\": [\n\t\t10218,\n\t\t10218\n\t],\n\t\"./light/grin-hearts.svg\": [\n\t\t19446,\n\t\t19446\n\t],\n\t\"./light/grin-squint-tears.svg\": [\n\t\t46679,\n\t\t46679\n\t],\n\t\"./light/grin-squint.svg\": [\n\t\t63216,\n\t\t63216\n\t],\n\t\"./light/grin-stars.svg\": [\n\t\t66317,\n\t\t66317\n\t],\n\t\"./light/grin-tears.svg\": [\n\t\t7537,\n\t\t7537\n\t],\n\t\"./light/grin-tongue-squint.svg\": [\n\t\t23806,\n\t\t23806\n\t],\n\t\"./light/grin-tongue-wink.svg\": [\n\t\t73744,\n\t\t73744\n\t],\n\t\"./light/grin-tongue.svg\": [\n\t\t31278,\n\t\t31278\n\t],\n\t\"./light/grin-wink.svg\": [\n\t\t68076,\n\t\t68076\n\t],\n\t\"./light/grin.svg\": [\n\t\t13756,\n\t\t13756\n\t],\n\t\"./light/grip-horizontal.svg\": [\n\t\t34030,\n\t\t34030\n\t],\n\t\"./light/grip-lines-vertical.svg\": [\n\t\t53439,\n\t\t53439\n\t],\n\t\"./light/grip-lines.svg\": [\n\t\t81660,\n\t\t81660\n\t],\n\t\"./light/grip-vertical.svg\": [\n\t\t76319,\n\t\t76319\n\t],\n\t\"./light/guitar-electric.svg\": [\n\t\t24391,\n\t\t24391\n\t],\n\t\"./light/guitar.svg\": [\n\t\t66866,\n\t\t66866\n\t],\n\t\"./light/guitars.svg\": [\n\t\t88014,\n\t\t88014\n\t],\n\t\"./light/h-square.svg\": [\n\t\t19078,\n\t\t19078\n\t],\n\t\"./light/h1.svg\": [\n\t\t79168,\n\t\t79168\n\t],\n\t\"./light/h2.svg\": [\n\t\t83066,\n\t\t83066\n\t],\n\t\"./light/h3.svg\": [\n\t\t918,\n\t\t918\n\t],\n\t\"./light/h4.svg\": [\n\t\t61190,\n\t\t61190\n\t],\n\t\"./light/hamburger.svg\": [\n\t\t70379,\n\t\t70379\n\t],\n\t\"./light/hammer-war.svg\": [\n\t\t14272,\n\t\t14272\n\t],\n\t\"./light/hammer.svg\": [\n\t\t83938,\n\t\t83938\n\t],\n\t\"./light/hamsa.svg\": [\n\t\t6770,\n\t\t6770\n\t],\n\t\"./light/hand-heart.svg\": [\n\t\t57978,\n\t\t57978\n\t],\n\t\"./light/hand-holding-box.svg\": [\n\t\t28136,\n\t\t28136\n\t],\n\t\"./light/hand-holding-heart.svg\": [\n\t\t54708,\n\t\t54708\n\t],\n\t\"./light/hand-holding-magic.svg\": [\n\t\t36096,\n\t\t36096\n\t],\n\t\"./light/hand-holding-medical.svg\": [\n\t\t10127,\n\t\t10127\n\t],\n\t\"./light/hand-holding-seedling.svg\": [\n\t\t17190,\n\t\t17190\n\t],\n\t\"./light/hand-holding-usd.svg\": [\n\t\t21175,\n\t\t21175\n\t],\n\t\"./light/hand-holding-water.svg\": [\n\t\t96419,\n\t\t96419\n\t],\n\t\"./light/hand-holding.svg\": [\n\t\t15460,\n\t\t15460\n\t],\n\t\"./light/hand-lizard.svg\": [\n\t\t94914,\n\t\t94914\n\t],\n\t\"./light/hand-middle-finger.svg\": [\n\t\t22722,\n\t\t22722\n\t],\n\t\"./light/hand-paper.svg\": [\n\t\t72464,\n\t\t72464\n\t],\n\t\"./light/hand-peace.svg\": [\n\t\t7708,\n\t\t7708\n\t],\n\t\"./light/hand-point-down.svg\": [\n\t\t29260,\n\t\t29260\n\t],\n\t\"./light/hand-point-left.svg\": [\n\t\t21677,\n\t\t21677\n\t],\n\t\"./light/hand-point-right.svg\": [\n\t\t31579,\n\t\t31579\n\t],\n\t\"./light/hand-point-up.svg\": [\n\t\t91377,\n\t\t91377\n\t],\n\t\"./light/hand-pointer.svg\": [\n\t\t13316,\n\t\t13316\n\t],\n\t\"./light/hand-receiving.svg\": [\n\t\t13277,\n\t\t13277\n\t],\n\t\"./light/hand-rock.svg\": [\n\t\t58441,\n\t\t58441\n\t],\n\t\"./light/hand-scissors.svg\": [\n\t\t50285,\n\t\t50285\n\t],\n\t\"./light/hand-sparkles.svg\": [\n\t\t30895,\n\t\t30895\n\t],\n\t\"./light/hand-spock.svg\": [\n\t\t54206,\n\t\t54206\n\t],\n\t\"./light/hands-heart.svg\": [\n\t\t78137,\n\t\t78137\n\t],\n\t\"./light/hands-helping.svg\": [\n\t\t55413,\n\t\t55413\n\t],\n\t\"./light/hands-usd.svg\": [\n\t\t88375,\n\t\t88375\n\t],\n\t\"./light/hands-wash.svg\": [\n\t\t80169,\n\t\t80169\n\t],\n\t\"./light/hands.svg\": [\n\t\t45755,\n\t\t45755\n\t],\n\t\"./light/handshake-alt-slash.svg\": [\n\t\t11182,\n\t\t11182\n\t],\n\t\"./light/handshake-alt.svg\": [\n\t\t11560,\n\t\t11560\n\t],\n\t\"./light/handshake-slash.svg\": [\n\t\t14762,\n\t\t14762\n\t],\n\t\"./light/handshake.svg\": [\n\t\t62274,\n\t\t62274\n\t],\n\t\"./light/hanukiah.svg\": [\n\t\t32841,\n\t\t32841\n\t],\n\t\"./light/hard-hat.svg\": [\n\t\t25352,\n\t\t25352\n\t],\n\t\"./light/hashtag.svg\": [\n\t\t82838,\n\t\t82838\n\t],\n\t\"./light/hat-chef.svg\": [\n\t\t86464,\n\t\t86464\n\t],\n\t\"./light/hat-cowboy-side.svg\": [\n\t\t38839,\n\t\t38839\n\t],\n\t\"./light/hat-cowboy.svg\": [\n\t\t88528,\n\t\t88528\n\t],\n\t\"./light/hat-santa.svg\": [\n\t\t69448,\n\t\t69448\n\t],\n\t\"./light/hat-winter.svg\": [\n\t\t4033,\n\t\t4033\n\t],\n\t\"./light/hat-witch.svg\": [\n\t\t7280,\n\t\t7280\n\t],\n\t\"./light/hat-wizard.svg\": [\n\t\t19883,\n\t\t19883\n\t],\n\t\"./light/hdd.svg\": [\n\t\t99789,\n\t\t99789\n\t],\n\t\"./light/head-side-brain.svg\": [\n\t\t28614,\n\t\t28614\n\t],\n\t\"./light/head-side-cough-slash.svg\": [\n\t\t88839,\n\t\t88839\n\t],\n\t\"./light/head-side-cough.svg\": [\n\t\t32218,\n\t\t32218\n\t],\n\t\"./light/head-side-headphones.svg\": [\n\t\t46889,\n\t\t46889\n\t],\n\t\"./light/head-side-mask.svg\": [\n\t\t98198,\n\t\t98198\n\t],\n\t\"./light/head-side-medical.svg\": [\n\t\t78772,\n\t\t78772\n\t],\n\t\"./light/head-side-virus.svg\": [\n\t\t95576,\n\t\t95576\n\t],\n\t\"./light/head-side.svg\": [\n\t\t49156,\n\t\t49156\n\t],\n\t\"./light/head-vr.svg\": [\n\t\t39825,\n\t\t39825\n\t],\n\t\"./light/heading.svg\": [\n\t\t78214,\n\t\t78214\n\t],\n\t\"./light/headphones-alt.svg\": [\n\t\t41310,\n\t\t41310\n\t],\n\t\"./light/headphones.svg\": [\n\t\t37527,\n\t\t37527\n\t],\n\t\"./light/headset.svg\": [\n\t\t55449,\n\t\t55449\n\t],\n\t\"./light/heart-broken.svg\": [\n\t\t17015,\n\t\t17015\n\t],\n\t\"./light/heart-circle.svg\": [\n\t\t2179,\n\t\t2179\n\t],\n\t\"./light/heart-rate.svg\": [\n\t\t38162,\n\t\t38162\n\t],\n\t\"./light/heart-square.svg\": [\n\t\t14817,\n\t\t14817\n\t],\n\t\"./light/heart.svg\": [\n\t\t26964,\n\t\t26964\n\t],\n\t\"./light/heartbeat.svg\": [\n\t\t31739,\n\t\t31739\n\t],\n\t\"./light/heat.svg\": [\n\t\t12618,\n\t\t12618\n\t],\n\t\"./light/helicopter.svg\": [\n\t\t57907,\n\t\t57907\n\t],\n\t\"./light/helmet-battle.svg\": [\n\t\t9994,\n\t\t9994\n\t],\n\t\"./light/hexagon.svg\": [\n\t\t84606,\n\t\t84606\n\t],\n\t\"./light/highlighter.svg\": [\n\t\t10076,\n\t\t10076\n\t],\n\t\"./light/hiking.svg\": [\n\t\t81675,\n\t\t81675\n\t],\n\t\"./light/hippo.svg\": [\n\t\t3099,\n\t\t3099\n\t],\n\t\"./light/history.svg\": [\n\t\t54605,\n\t\t54605\n\t],\n\t\"./light/hockey-mask.svg\": [\n\t\t16338,\n\t\t16338\n\t],\n\t\"./light/hockey-puck.svg\": [\n\t\t79866,\n\t\t79866\n\t],\n\t\"./light/hockey-sticks.svg\": [\n\t\t62484,\n\t\t62484\n\t],\n\t\"./light/holly-berry.svg\": [\n\t\t24681,\n\t\t24681\n\t],\n\t\"./light/home-alt.svg\": [\n\t\t40837,\n\t\t40837\n\t],\n\t\"./light/home-heart.svg\": [\n\t\t48500,\n\t\t48500\n\t],\n\t\"./light/home-lg-alt.svg\": [\n\t\t98752,\n\t\t98752\n\t],\n\t\"./light/home-lg.svg\": [\n\t\t93729,\n\t\t93729\n\t],\n\t\"./light/home.svg\": [\n\t\t80675,\n\t\t80675\n\t],\n\t\"./light/hood-cloak.svg\": [\n\t\t39854,\n\t\t39854\n\t],\n\t\"./light/horizontal-rule.svg\": [\n\t\t80923,\n\t\t80923\n\t],\n\t\"./light/horse-head.svg\": [\n\t\t96478,\n\t\t96478\n\t],\n\t\"./light/horse-saddle.svg\": [\n\t\t47775,\n\t\t47775\n\t],\n\t\"./light/horse.svg\": [\n\t\t76886,\n\t\t76886\n\t],\n\t\"./light/hospital-alt.svg\": [\n\t\t42860,\n\t\t42860\n\t],\n\t\"./light/hospital-symbol.svg\": [\n\t\t53666,\n\t\t53666\n\t],\n\t\"./light/hospital-user.svg\": [\n\t\t20994,\n\t\t20994\n\t],\n\t\"./light/hospital.svg\": [\n\t\t611,\n\t\t611\n\t],\n\t\"./light/hospitals.svg\": [\n\t\t52162,\n\t\t52162\n\t],\n\t\"./light/hot-tub.svg\": [\n\t\t63439,\n\t\t63439\n\t],\n\t\"./light/hotdog.svg\": [\n\t\t48421,\n\t\t48421\n\t],\n\t\"./light/hotel.svg\": [\n\t\t1874,\n\t\t1874\n\t],\n\t\"./light/hourglass-end.svg\": [\n\t\t6648,\n\t\t6648\n\t],\n\t\"./light/hourglass-half.svg\": [\n\t\t65217,\n\t\t65217\n\t],\n\t\"./light/hourglass-start.svg\": [\n\t\t83520,\n\t\t83520\n\t],\n\t\"./light/hourglass.svg\": [\n\t\t64984,\n\t\t64984\n\t],\n\t\"./light/house-damage.svg\": [\n\t\t13530,\n\t\t13530\n\t],\n\t\"./light/house-day.svg\": [\n\t\t22721,\n\t\t22721\n\t],\n\t\"./light/house-flood.svg\": [\n\t\t10794,\n\t\t10794\n\t],\n\t\"./light/house-leave.svg\": [\n\t\t72604,\n\t\t72604\n\t],\n\t\"./light/house-night.svg\": [\n\t\t92839,\n\t\t92839\n\t],\n\t\"./light/house-return.svg\": [\n\t\t79917,\n\t\t79917\n\t],\n\t\"./light/house-signal.svg\": [\n\t\t91763,\n\t\t91763\n\t],\n\t\"./light/house-user.svg\": [\n\t\t16850,\n\t\t16850\n\t],\n\t\"./light/house.svg\": [\n\t\t58990,\n\t\t58990\n\t],\n\t\"./light/hryvnia.svg\": [\n\t\t44029,\n\t\t44029\n\t],\n\t\"./light/humidity.svg\": [\n\t\t98531,\n\t\t98531\n\t],\n\t\"./light/hurricane.svg\": [\n\t\t11302,\n\t\t11302\n\t],\n\t\"./light/i-cursor.svg\": [\n\t\t56118,\n\t\t56118\n\t],\n\t\"./light/ice-cream.svg\": [\n\t\t91852,\n\t\t91852\n\t],\n\t\"./light/ice-skate.svg\": [\n\t\t40834,\n\t\t40834\n\t],\n\t\"./light/icicles.svg\": [\n\t\t82408,\n\t\t82408\n\t],\n\t\"./light/icons-alt.svg\": [\n\t\t10781,\n\t\t10781\n\t],\n\t\"./light/icons.svg\": [\n\t\t24515,\n\t\t24515\n\t],\n\t\"./light/id-badge.svg\": [\n\t\t5002,\n\t\t5002\n\t],\n\t\"./light/id-card-alt.svg\": [\n\t\t24205,\n\t\t24205\n\t],\n\t\"./light/id-card.svg\": [\n\t\t86330,\n\t\t86330\n\t],\n\t\"./light/igloo.svg\": [\n\t\t37053,\n\t\t37053\n\t],\n\t\"./light/image-polaroid.svg\": [\n\t\t59280,\n\t\t59280\n\t],\n\t\"./light/image.svg\": [\n\t\t76620,\n\t\t76620\n\t],\n\t\"./light/images.svg\": [\n\t\t56765,\n\t\t56765\n\t],\n\t\"./light/inbox-in.svg\": [\n\t\t6802,\n\t\t6802\n\t],\n\t\"./light/inbox-out.svg\": [\n\t\t9120,\n\t\t9120\n\t],\n\t\"./light/inbox.svg\": [\n\t\t64214,\n\t\t64214\n\t],\n\t\"./light/indent.svg\": [\n\t\t11089,\n\t\t11089\n\t],\n\t\"./light/industry-alt.svg\": [\n\t\t22167,\n\t\t22167\n\t],\n\t\"./light/industry.svg\": [\n\t\t13381,\n\t\t13381\n\t],\n\t\"./light/infinity.svg\": [\n\t\t78126,\n\t\t78126\n\t],\n\t\"./light/info-circle.svg\": [\n\t\t77609,\n\t\t77609\n\t],\n\t\"./light/info-square.svg\": [\n\t\t16535,\n\t\t16535\n\t],\n\t\"./light/info.svg\": [\n\t\t90344,\n\t\t90344\n\t],\n\t\"./light/inhaler.svg\": [\n\t\t96522,\n\t\t96522\n\t],\n\t\"./light/integral.svg\": [\n\t\t92109,\n\t\t92109\n\t],\n\t\"./light/intersection.svg\": [\n\t\t20960,\n\t\t20960\n\t],\n\t\"./light/inventory.svg\": [\n\t\t92358,\n\t\t92358\n\t],\n\t\"./light/island-tropical.svg\": [\n\t\t52529,\n\t\t52529\n\t],\n\t\"./light/italic.svg\": [\n\t\t78081,\n\t\t78081\n\t],\n\t\"./light/jack-o-lantern.svg\": [\n\t\t66303,\n\t\t66303\n\t],\n\t\"./light/jedi.svg\": [\n\t\t75130,\n\t\t75130\n\t],\n\t\"./light/joint.svg\": [\n\t\t59706,\n\t\t59706\n\t],\n\t\"./light/journal-whills.svg\": [\n\t\t50837,\n\t\t50837\n\t],\n\t\"./light/joystick.svg\": [\n\t\t5099,\n\t\t5099\n\t],\n\t\"./light/jug.svg\": [\n\t\t40111,\n\t\t40111\n\t],\n\t\"./light/kaaba.svg\": [\n\t\t55517,\n\t\t55517\n\t],\n\t\"./light/kazoo.svg\": [\n\t\t5473,\n\t\t5473\n\t],\n\t\"./light/kerning.svg\": [\n\t\t87920,\n\t\t87920\n\t],\n\t\"./light/key-skeleton.svg\": [\n\t\t4396,\n\t\t4396\n\t],\n\t\"./light/key.svg\": [\n\t\t41600,\n\t\t41600\n\t],\n\t\"./light/keyboard.svg\": [\n\t\t34032,\n\t\t34032\n\t],\n\t\"./light/keynote.svg\": [\n\t\t78440,\n\t\t78440\n\t],\n\t\"./light/khanda.svg\": [\n\t\t93617,\n\t\t93617\n\t],\n\t\"./light/kidneys.svg\": [\n\t\t30332,\n\t\t30332\n\t],\n\t\"./light/kiss-beam.svg\": [\n\t\t50284,\n\t\t50284\n\t],\n\t\"./light/kiss-wink-heart.svg\": [\n\t\t42131,\n\t\t42131\n\t],\n\t\"./light/kiss.svg\": [\n\t\t99204,\n\t\t99204\n\t],\n\t\"./light/kite.svg\": [\n\t\t43173,\n\t\t43173\n\t],\n\t\"./light/kiwi-bird.svg\": [\n\t\t24801,\n\t\t24801\n\t],\n\t\"./light/knife-kitchen.svg\": [\n\t\t86398,\n\t\t86398\n\t],\n\t\"./light/lambda.svg\": [\n\t\t51045,\n\t\t51045\n\t],\n\t\"./light/lamp-desk.svg\": [\n\t\t57098,\n\t\t57098\n\t],\n\t\"./light/lamp-floor.svg\": [\n\t\t16859,\n\t\t16859\n\t],\n\t\"./light/lamp.svg\": [\n\t\t68486,\n\t\t68486\n\t],\n\t\"./light/landmark-alt.svg\": [\n\t\t21985,\n\t\t21985\n\t],\n\t\"./light/landmark.svg\": [\n\t\t89398,\n\t\t89398\n\t],\n\t\"./light/language.svg\": [\n\t\t6889,\n\t\t6889\n\t],\n\t\"./light/laptop-code.svg\": [\n\t\t61786,\n\t\t61786\n\t],\n\t\"./light/laptop-house.svg\": [\n\t\t93008,\n\t\t93008\n\t],\n\t\"./light/laptop-medical.svg\": [\n\t\t32561,\n\t\t32561\n\t],\n\t\"./light/laptop.svg\": [\n\t\t12287,\n\t\t12287\n\t],\n\t\"./light/lasso.svg\": [\n\t\t41010,\n\t\t87985\n\t],\n\t\"./light/laugh-beam.svg\": [\n\t\t62953,\n\t\t62953\n\t],\n\t\"./light/laugh-squint.svg\": [\n\t\t96955,\n\t\t96955\n\t],\n\t\"./light/laugh-wink.svg\": [\n\t\t29850,\n\t\t29850\n\t],\n\t\"./light/laugh.svg\": [\n\t\t4414,\n\t\t4414\n\t],\n\t\"./light/layer-group.svg\": [\n\t\t32805,\n\t\t32805\n\t],\n\t\"./light/layer-minus.svg\": [\n\t\t47178,\n\t\t47178\n\t],\n\t\"./light/layer-plus.svg\": [\n\t\t22511,\n\t\t22511\n\t],\n\t\"./light/leaf-heart.svg\": [\n\t\t92334,\n\t\t92334\n\t],\n\t\"./light/leaf-maple.svg\": [\n\t\t51794,\n\t\t51794\n\t],\n\t\"./light/leaf-oak.svg\": [\n\t\t20579,\n\t\t20579\n\t],\n\t\"./light/leaf.svg\": [\n\t\t8165,\n\t\t8165\n\t],\n\t\"./light/lemon.svg\": [\n\t\t2223,\n\t\t2223\n\t],\n\t\"./light/less-than-equal.svg\": [\n\t\t87273,\n\t\t91564\n\t],\n\t\"./light/less-than.svg\": [\n\t\t44332,\n\t\t44332\n\t],\n\t\"./light/level-down-alt.svg\": [\n\t\t12334,\n\t\t12334\n\t],\n\t\"./light/level-down.svg\": [\n\t\t5060,\n\t\t5060\n\t],\n\t\"./light/level-up-alt.svg\": [\n\t\t44036,\n\t\t86174\n\t],\n\t\"./light/level-up.svg\": [\n\t\t8321,\n\t\t8321\n\t],\n\t\"./light/life-ring.svg\": [\n\t\t52925,\n\t\t52925\n\t],\n\t\"./light/light-ceiling.svg\": [\n\t\t86902,\n\t\t86902\n\t],\n\t\"./light/light-switch-off.svg\": [\n\t\t89619,\n\t\t89619\n\t],\n\t\"./light/light-switch-on.svg\": [\n\t\t92929,\n\t\t92929\n\t],\n\t\"./light/light-switch.svg\": [\n\t\t695,\n\t\t695\n\t],\n\t\"./light/lightbulb-dollar.svg\": [\n\t\t78995,\n\t\t78995\n\t],\n\t\"./light/lightbulb-exclamation.svg\": [\n\t\t54147,\n\t\t82922\n\t],\n\t\"./light/lightbulb-on.svg\": [\n\t\t65463,\n\t\t65463\n\t],\n\t\"./light/lightbulb-slash.svg\": [\n\t\t12703,\n\t\t12703\n\t],\n\t\"./light/lightbulb.svg\": [\n\t\t70928,\n\t\t70928\n\t],\n\t\"./light/lights-holiday.svg\": [\n\t\t52193,\n\t\t52193\n\t],\n\t\"./light/line-columns.svg\": [\n\t\t50422,\n\t\t50422\n\t],\n\t\"./light/line-height.svg\": [\n\t\t7490,\n\t\t7490\n\t],\n\t\"./light/link.svg\": [\n\t\t95260,\n\t\t95260\n\t],\n\t\"./light/lips.svg\": [\n\t\t51050,\n\t\t51050\n\t],\n\t\"./light/lira-sign.svg\": [\n\t\t7666,\n\t\t7666\n\t],\n\t\"./light/list-alt.svg\": [\n\t\t96493,\n\t\t96493\n\t],\n\t\"./light/list-music.svg\": [\n\t\t44869,\n\t\t44869\n\t],\n\t\"./light/list-ol.svg\": [\n\t\t99737,\n\t\t99737\n\t],\n\t\"./light/list-ul.svg\": [\n\t\t36048,\n\t\t36048\n\t],\n\t\"./light/list.svg\": [\n\t\t7912,\n\t\t7912\n\t],\n\t\"./light/location-arrow.svg\": [\n\t\t35332,\n\t\t35332\n\t],\n\t\"./light/location-circle.svg\": [\n\t\t91149,\n\t\t91149\n\t],\n\t\"./light/location-slash.svg\": [\n\t\t14209,\n\t\t14209\n\t],\n\t\"./light/location.svg\": [\n\t\t72877,\n\t\t72877\n\t],\n\t\"./light/lock-alt.svg\": [\n\t\t28459,\n\t\t28459\n\t],\n\t\"./light/lock-open-alt.svg\": [\n\t\t7523,\n\t\t7523\n\t],\n\t\"./light/lock-open.svg\": [\n\t\t7971,\n\t\t7971\n\t],\n\t\"./light/lock.svg\": [\n\t\t99565,\n\t\t99565\n\t],\n\t\"./light/long-arrow-alt-down.svg\": [\n\t\t36802,\n\t\t36802\n\t],\n\t\"./light/long-arrow-alt-left.svg\": [\n\t\t16950,\n\t\t16950\n\t],\n\t\"./light/long-arrow-alt-right.svg\": [\n\t\t39745,\n\t\t39745\n\t],\n\t\"./light/long-arrow-alt-up.svg\": [\n\t\t13562,\n\t\t13562\n\t],\n\t\"./light/long-arrow-down.svg\": [\n\t\t38559,\n\t\t87273\n\t],\n\t\"./light/long-arrow-left.svg\": [\n\t\t82948,\n\t\t82948\n\t],\n\t\"./light/long-arrow-right.svg\": [\n\t\t90294,\n\t\t90294\n\t],\n\t\"./light/long-arrow-up.svg\": [\n\t\t34938,\n\t\t34938\n\t],\n\t\"./light/loveseat.svg\": [\n\t\t16000,\n\t\t16000\n\t],\n\t\"./light/low-vision.svg\": [\n\t\t16456,\n\t\t16456\n\t],\n\t\"./light/luchador.svg\": [\n\t\t11452,\n\t\t11452\n\t],\n\t\"./light/luggage-cart.svg\": [\n\t\t97256,\n\t\t97256\n\t],\n\t\"./light/lungs-virus.svg\": [\n\t\t82646,\n\t\t82646\n\t],\n\t\"./light/lungs.svg\": [\n\t\t47466,\n\t\t47466\n\t],\n\t\"./light/mace.svg\": [\n\t\t83916,\n\t\t83916\n\t],\n\t\"./light/magic.svg\": [\n\t\t81073,\n\t\t81073\n\t],\n\t\"./light/magnet.svg\": [\n\t\t93796,\n\t\t93796\n\t],\n\t\"./light/mail-bulk.svg\": [\n\t\t6401,\n\t\t6401\n\t],\n\t\"./light/mailbox.svg\": [\n\t\t82212,\n\t\t82212\n\t],\n\t\"./light/male.svg\": [\n\t\t64371,\n\t\t64371\n\t],\n\t\"./light/mandolin.svg\": [\n\t\t98382,\n\t\t98382\n\t],\n\t\"./light/map-marked-alt.svg\": [\n\t\t70133,\n\t\t70133\n\t],\n\t\"./light/map-marked.svg\": [\n\t\t62009,\n\t\t62009\n\t],\n\t\"./light/map-marker-alt-slash.svg\": [\n\t\t12345,\n\t\t12345\n\t],\n\t\"./light/map-marker-alt.svg\": [\n\t\t65295,\n\t\t65295\n\t],\n\t\"./light/map-marker-check.svg\": [\n\t\t66094,\n\t\t66094\n\t],\n\t\"./light/map-marker-edit.svg\": [\n\t\t7936,\n\t\t7936\n\t],\n\t\"./light/map-marker-exclamation.svg\": [\n\t\t1704,\n\t\t1704\n\t],\n\t\"./light/map-marker-minus.svg\": [\n\t\t70682,\n\t\t70682\n\t],\n\t\"./light/map-marker-plus.svg\": [\n\t\t97637,\n\t\t97637\n\t],\n\t\"./light/map-marker-question.svg\": [\n\t\t82315,\n\t\t82315\n\t],\n\t\"./light/map-marker-slash.svg\": [\n\t\t54627,\n\t\t54627\n\t],\n\t\"./light/map-marker-smile.svg\": [\n\t\t75848,\n\t\t75848\n\t],\n\t\"./light/map-marker-times.svg\": [\n\t\t43341,\n\t\t43341\n\t],\n\t\"./light/map-marker.svg\": [\n\t\t76781,\n\t\t76781\n\t],\n\t\"./light/map-pin.svg\": [\n\t\t14682,\n\t\t14682\n\t],\n\t\"./light/map-signs.svg\": [\n\t\t74549,\n\t\t74549\n\t],\n\t\"./light/map.svg\": [\n\t\t54796,\n\t\t54796\n\t],\n\t\"./light/marker.svg\": [\n\t\t23793,\n\t\t23793\n\t],\n\t\"./light/mars-double.svg\": [\n\t\t39623,\n\t\t39623\n\t],\n\t\"./light/mars-stroke-h.svg\": [\n\t\t67888,\n\t\t67888\n\t],\n\t\"./light/mars-stroke-v.svg\": [\n\t\t23953,\n\t\t23953\n\t],\n\t\"./light/mars-stroke.svg\": [\n\t\t62692,\n\t\t62692\n\t],\n\t\"./light/mars.svg\": [\n\t\t55881,\n\t\t55881\n\t],\n\t\"./light/mask.svg\": [\n\t\t95480,\n\t\t95480\n\t],\n\t\"./light/meat.svg\": [\n\t\t67553,\n\t\t67553\n\t],\n\t\"./light/medal.svg\": [\n\t\t25656,\n\t\t25656\n\t],\n\t\"./light/medkit.svg\": [\n\t\t68186,\n\t\t68186\n\t],\n\t\"./light/megaphone.svg\": [\n\t\t50786,\n\t\t50786\n\t],\n\t\"./light/meh-blank.svg\": [\n\t\t30054,\n\t\t30054\n\t],\n\t\"./light/meh-rolling-eyes.svg\": [\n\t\t54508,\n\t\t54508\n\t],\n\t\"./light/meh.svg\": [\n\t\t63511,\n\t\t63511\n\t],\n\t\"./light/memory.svg\": [\n\t\t94868,\n\t\t94868\n\t],\n\t\"./light/menorah.svg\": [\n\t\t7142,\n\t\t7142\n\t],\n\t\"./light/mercury.svg\": [\n\t\t48202,\n\t\t48202\n\t],\n\t\"./light/meteor.svg\": [\n\t\t29048,\n\t\t29048\n\t],\n\t\"./light/microchip.svg\": [\n\t\t50227,\n\t\t50227\n\t],\n\t\"./light/microphone-alt-slash.svg\": [\n\t\t90912,\n\t\t90912\n\t],\n\t\"./light/microphone-alt.svg\": [\n\t\t58381,\n\t\t58381\n\t],\n\t\"./light/microphone-slash.svg\": [\n\t\t53963,\n\t\t53963\n\t],\n\t\"./light/microphone-stand.svg\": [\n\t\t80805,\n\t\t80805\n\t],\n\t\"./light/microphone.svg\": [\n\t\t96953,\n\t\t96953\n\t],\n\t\"./light/microscope.svg\": [\n\t\t61805,\n\t\t61805\n\t],\n\t\"./light/microwave.svg\": [\n\t\t71649,\n\t\t71649\n\t],\n\t\"./light/mind-share.svg\": [\n\t\t29243,\n\t\t29243\n\t],\n\t\"./light/minus-circle.svg\": [\n\t\t85563,\n\t\t85563\n\t],\n\t\"./light/minus-hexagon.svg\": [\n\t\t38312,\n\t\t38312\n\t],\n\t\"./light/minus-octagon.svg\": [\n\t\t75248,\n\t\t75248\n\t],\n\t\"./light/minus-square.svg\": [\n\t\t98889,\n\t\t98889\n\t],\n\t\"./light/minus.svg\": [\n\t\t29829,\n\t\t29829\n\t],\n\t\"./light/mistletoe.svg\": [\n\t\t55955,\n\t\t55955\n\t],\n\t\"./light/mitten.svg\": [\n\t\t85668,\n\t\t85668\n\t],\n\t\"./light/mobile-alt.svg\": [\n\t\t41846,\n\t\t41846\n\t],\n\t\"./light/mobile-android-alt.svg\": [\n\t\t32370,\n\t\t32370\n\t],\n\t\"./light/mobile-android.svg\": [\n\t\t29579,\n\t\t29579\n\t],\n\t\"./light/mobile.svg\": [\n\t\t49340,\n\t\t49340\n\t],\n\t\"./light/money-bill-alt.svg\": [\n\t\t16118,\n\t\t16118\n\t],\n\t\"./light/money-bill-wave-alt.svg\": [\n\t\t28392,\n\t\t28392\n\t],\n\t\"./light/money-bill-wave.svg\": [\n\t\t98497,\n\t\t98497\n\t],\n\t\"./light/money-bill.svg\": [\n\t\t38982,\n\t\t38982\n\t],\n\t\"./light/money-check-alt.svg\": [\n\t\t11073,\n\t\t11073\n\t],\n\t\"./light/money-check-edit-alt.svg\": [\n\t\t43487,\n\t\t43487\n\t],\n\t\"./light/money-check-edit.svg\": [\n\t\t70763,\n\t\t70763\n\t],\n\t\"./light/money-check.svg\": [\n\t\t37914,\n\t\t37914\n\t],\n\t\"./light/monitor-heart-rate.svg\": [\n\t\t20336,\n\t\t20336\n\t],\n\t\"./light/monkey.svg\": [\n\t\t62745,\n\t\t62745\n\t],\n\t\"./light/monument.svg\": [\n\t\t60525,\n\t\t60525\n\t],\n\t\"./light/moon-cloud.svg\": [\n\t\t10280,\n\t\t10280\n\t],\n\t\"./light/moon-stars.svg\": [\n\t\t53822,\n\t\t41792\n\t],\n\t\"./light/moon.svg\": [\n\t\t80664,\n\t\t80664\n\t],\n\t\"./light/mortar-pestle.svg\": [\n\t\t64567,\n\t\t64567\n\t],\n\t\"./light/mosque.svg\": [\n\t\t43963,\n\t\t43963\n\t],\n\t\"./light/motorcycle.svg\": [\n\t\t61728,\n\t\t61728\n\t],\n\t\"./light/mountain.svg\": [\n\t\t22228,\n\t\t22228\n\t],\n\t\"./light/mountains.svg\": [\n\t\t81700,\n\t\t81700\n\t],\n\t\"./light/mouse-alt.svg\": [\n\t\t20100,\n\t\t20100\n\t],\n\t\"./light/mouse-pointer.svg\": [\n\t\t5285,\n\t\t5285\n\t],\n\t\"./light/mouse.svg\": [\n\t\t29459,\n\t\t29459\n\t],\n\t\"./light/mp3-player.svg\": [\n\t\t4923,\n\t\t4923\n\t],\n\t\"./light/mug-hot.svg\": [\n\t\t36302,\n\t\t36302\n\t],\n\t\"./light/mug-marshmallows.svg\": [\n\t\t39600,\n\t\t39600\n\t],\n\t\"./light/mug-tea.svg\": [\n\t\t13976,\n\t\t62684\n\t],\n\t\"./light/mug.svg\": [\n\t\t56101,\n\t\t56101\n\t],\n\t\"./light/music-alt-slash.svg\": [\n\t\t68696,\n\t\t68696\n\t],\n\t\"./light/music-alt.svg\": [\n\t\t84397,\n\t\t84397\n\t],\n\t\"./light/music-slash.svg\": [\n\t\t52588,\n\t\t52588\n\t],\n\t\"./light/music.svg\": [\n\t\t29811,\n\t\t29811\n\t],\n\t\"./light/narwhal.svg\": [\n\t\t29055,\n\t\t29055\n\t],\n\t\"./light/network-wired.svg\": [\n\t\t17605,\n\t\t17605\n\t],\n\t\"./light/neuter.svg\": [\n\t\t31271,\n\t\t31271\n\t],\n\t\"./light/newspaper.svg\": [\n\t\t42561,\n\t\t42561\n\t],\n\t\"./light/not-equal.svg\": [\n\t\t35668,\n\t\t35668\n\t],\n\t\"./light/notes-medical.svg\": [\n\t\t46181,\n\t\t46181\n\t],\n\t\"./light/object-group.svg\": [\n\t\t76573,\n\t\t76573\n\t],\n\t\"./light/object-ungroup.svg\": [\n\t\t98627,\n\t\t98627\n\t],\n\t\"./light/octagon.svg\": [\n\t\t14602,\n\t\t14602\n\t],\n\t\"./light/oil-can.svg\": [\n\t\t97024,\n\t\t97024\n\t],\n\t\"./light/oil-temp.svg\": [\n\t\t63807,\n\t\t63807\n\t],\n\t\"./light/om.svg\": [\n\t\t76492,\n\t\t76492\n\t],\n\t\"./light/omega.svg\": [\n\t\t93908,\n\t\t93908\n\t],\n\t\"./light/ornament.svg\": [\n\t\t20853,\n\t\t20853\n\t],\n\t\"./light/otter.svg\": [\n\t\t61133,\n\t\t61133\n\t],\n\t\"./light/outdent.svg\": [\n\t\t29830,\n\t\t53386\n\t],\n\t\"./light/outlet.svg\": [\n\t\t68290,\n\t\t68290\n\t],\n\t\"./light/oven.svg\": [\n\t\t51327,\n\t\t51327\n\t],\n\t\"./light/overline.svg\": [\n\t\t84743,\n\t\t84743\n\t],\n\t\"./light/page-break.svg\": [\n\t\t78484,\n\t\t78484\n\t],\n\t\"./light/pager.svg\": [\n\t\t53909,\n\t\t53909\n\t],\n\t\"./light/paint-brush-alt.svg\": [\n\t\t61880,\n\t\t61880\n\t],\n\t\"./light/paint-brush.svg\": [\n\t\t13885,\n\t\t13885\n\t],\n\t\"./light/paint-roller.svg\": [\n\t\t44748,\n\t\t44748\n\t],\n\t\"./light/palette.svg\": [\n\t\t84772,\n\t\t84772\n\t],\n\t\"./light/pallet-alt.svg\": [\n\t\t42839,\n\t\t42839\n\t],\n\t\"./light/pallet.svg\": [\n\t\t41508,\n\t\t41508\n\t],\n\t\"./light/paper-plane.svg\": [\n\t\t7946,\n\t\t7946\n\t],\n\t\"./light/paperclip.svg\": [\n\t\t69403,\n\t\t69403\n\t],\n\t\"./light/parachute-box.svg\": [\n\t\t52412,\n\t\t52412\n\t],\n\t\"./light/paragraph-rtl.svg\": [\n\t\t27886,\n\t\t27886\n\t],\n\t\"./light/paragraph.svg\": [\n\t\t83615,\n\t\t83615\n\t],\n\t\"./light/parking-circle-slash.svg\": [\n\t\t19390,\n\t\t19390\n\t],\n\t\"./light/parking-circle.svg\": [\n\t\t78978,\n\t\t78978\n\t],\n\t\"./light/parking-slash.svg\": [\n\t\t56266,\n\t\t56266\n\t],\n\t\"./light/parking.svg\": [\n\t\t70219,\n\t\t70219\n\t],\n\t\"./light/passport.svg\": [\n\t\t16688,\n\t\t16688\n\t],\n\t\"./light/pastafarianism.svg\": [\n\t\t78375,\n\t\t78375\n\t],\n\t\"./light/paste.svg\": [\n\t\t85773,\n\t\t85773\n\t],\n\t\"./light/pause-circle.svg\": [\n\t\t60949,\n\t\t60949\n\t],\n\t\"./light/pause.svg\": [\n\t\t45435,\n\t\t45435\n\t],\n\t\"./light/paw-alt.svg\": [\n\t\t30881,\n\t\t30881\n\t],\n\t\"./light/paw-claws.svg\": [\n\t\t954,\n\t\t954\n\t],\n\t\"./light/paw.svg\": [\n\t\t26572,\n\t\t26572\n\t],\n\t\"./light/peace.svg\": [\n\t\t46798,\n\t\t46798\n\t],\n\t\"./light/pegasus.svg\": [\n\t\t29854,\n\t\t29854\n\t],\n\t\"./light/pen-alt.svg\": [\n\t\t64277,\n\t\t64277\n\t],\n\t\"./light/pen-fancy.svg\": [\n\t\t41091,\n\t\t41091\n\t],\n\t\"./light/pen-nib.svg\": [\n\t\t65121,\n\t\t65121\n\t],\n\t\"./light/pen-square.svg\": [\n\t\t44165,\n\t\t44165\n\t],\n\t\"./light/pen.svg\": [\n\t\t54173,\n\t\t54173\n\t],\n\t\"./light/pencil-alt.svg\": [\n\t\t38489,\n\t\t38489\n\t],\n\t\"./light/pencil-paintbrush.svg\": [\n\t\t90232,\n\t\t90232\n\t],\n\t\"./light/pencil-ruler.svg\": [\n\t\t65531,\n\t\t65531\n\t],\n\t\"./light/pencil.svg\": [\n\t\t81915,\n\t\t81915\n\t],\n\t\"./light/pennant.svg\": [\n\t\t87692,\n\t\t87692\n\t],\n\t\"./light/people-arrows.svg\": [\n\t\t20755,\n\t\t20755\n\t],\n\t\"./light/people-carry.svg\": [\n\t\t32629,\n\t\t32629\n\t],\n\t\"./light/pepper-hot.svg\": [\n\t\t94036,\n\t\t94036\n\t],\n\t\"./light/percent.svg\": [\n\t\t1256,\n\t\t1256\n\t],\n\t\"./light/percentage.svg\": [\n\t\t51507,\n\t\t51507\n\t],\n\t\"./light/person-booth.svg\": [\n\t\t45176,\n\t\t45176\n\t],\n\t\"./light/person-carry.svg\": [\n\t\t94148,\n\t\t94148\n\t],\n\t\"./light/person-dolly-empty.svg\": [\n\t\t81474,\n\t\t81474\n\t],\n\t\"./light/person-dolly.svg\": [\n\t\t70394,\n\t\t70394\n\t],\n\t\"./light/person-sign.svg\": [\n\t\t90207,\n\t\t90207\n\t],\n\t\"./light/phone-alt.svg\": [\n\t\t91962,\n\t\t91962\n\t],\n\t\"./light/phone-laptop.svg\": [\n\t\t77350,\n\t\t77350\n\t],\n\t\"./light/phone-office.svg\": [\n\t\t58881,\n\t\t58881\n\t],\n\t\"./light/phone-plus.svg\": [\n\t\t59177,\n\t\t59177\n\t],\n\t\"./light/phone-rotary.svg\": [\n\t\t93553,\n\t\t93553\n\t],\n\t\"./light/phone-slash.svg\": [\n\t\t64174,\n\t\t64174\n\t],\n\t\"./light/phone-square-alt.svg\": [\n\t\t49959,\n\t\t49959\n\t],\n\t\"./light/phone-square.svg\": [\n\t\t71182,\n\t\t71182\n\t],\n\t\"./light/phone-volume.svg\": [\n\t\t95255,\n\t\t95255\n\t],\n\t\"./light/phone.svg\": [\n\t\t17235,\n\t\t17235\n\t],\n\t\"./light/photo-video.svg\": [\n\t\t84340,\n\t\t84340\n\t],\n\t\"./light/pi.svg\": [\n\t\t42257,\n\t\t42257\n\t],\n\t\"./light/piano-keyboard.svg\": [\n\t\t55110,\n\t\t55110\n\t],\n\t\"./light/piano.svg\": [\n\t\t26674,\n\t\t26674\n\t],\n\t\"./light/pie.svg\": [\n\t\t52404,\n\t\t52404\n\t],\n\t\"./light/pig.svg\": [\n\t\t25916,\n\t\t25916\n\t],\n\t\"./light/piggy-bank.svg\": [\n\t\t20499,\n\t\t20499\n\t],\n\t\"./light/pills.svg\": [\n\t\t14245,\n\t\t14245\n\t],\n\t\"./light/pizza-slice.svg\": [\n\t\t27607,\n\t\t27607\n\t],\n\t\"./light/pizza.svg\": [\n\t\t74042,\n\t\t74042\n\t],\n\t\"./light/place-of-worship.svg\": [\n\t\t5313,\n\t\t5313\n\t],\n\t\"./light/plane-alt.svg\": [\n\t\t77379,\n\t\t77379\n\t],\n\t\"./light/plane-arrival.svg\": [\n\t\t31851,\n\t\t31851\n\t],\n\t\"./light/plane-departure.svg\": [\n\t\t84358,\n\t\t84358\n\t],\n\t\"./light/plane-slash.svg\": [\n\t\t83621,\n\t\t83621\n\t],\n\t\"./light/plane.svg\": [\n\t\t30221,\n\t\t53822\n\t],\n\t\"./light/planet-moon.svg\": [\n\t\t99334,\n\t\t99334\n\t],\n\t\"./light/planet-ringed.svg\": [\n\t\t36258,\n\t\t36258\n\t],\n\t\"./light/play-circle.svg\": [\n\t\t71642,\n\t\t71642\n\t],\n\t\"./light/play.svg\": [\n\t\t50468,\n\t\t50468\n\t],\n\t\"./light/plug.svg\": [\n\t\t2515,\n\t\t2515\n\t],\n\t\"./light/plus-circle.svg\": [\n\t\t49793,\n\t\t49793\n\t],\n\t\"./light/plus-hexagon.svg\": [\n\t\t77485,\n\t\t77485\n\t],\n\t\"./light/plus-octagon.svg\": [\n\t\t97571,\n\t\t97571\n\t],\n\t\"./light/plus-square.svg\": [\n\t\t37176,\n\t\t37176\n\t],\n\t\"./light/plus.svg\": [\n\t\t24869,\n\t\t24869\n\t],\n\t\"./light/podcast.svg\": [\n\t\t6734,\n\t\t6734\n\t],\n\t\"./light/podium-star.svg\": [\n\t\t53304,\n\t\t53304\n\t],\n\t\"./light/podium.svg\": [\n\t\t8331,\n\t\t8331\n\t],\n\t\"./light/police-box.svg\": [\n\t\t51613,\n\t\t51613\n\t],\n\t\"./light/poll-h.svg\": [\n\t\t92414,\n\t\t92414\n\t],\n\t\"./light/poll-people.svg\": [\n\t\t3562,\n\t\t3562\n\t],\n\t\"./light/poll.svg\": [\n\t\t38591,\n\t\t38591\n\t],\n\t\"./light/poo-storm.svg\": [\n\t\t39696,\n\t\t39696\n\t],\n\t\"./light/poo.svg\": [\n\t\t47370,\n\t\t47370\n\t],\n\t\"./light/poop.svg\": [\n\t\t46902,\n\t\t46902\n\t],\n\t\"./light/popcorn.svg\": [\n\t\t60408,\n\t\t60408\n\t],\n\t\"./light/portal-enter.svg\": [\n\t\t52089,\n\t\t52089\n\t],\n\t\"./light/portal-exit.svg\": [\n\t\t89590,\n\t\t89590\n\t],\n\t\"./light/portrait.svg\": [\n\t\t60687,\n\t\t60687\n\t],\n\t\"./light/pound-sign.svg\": [\n\t\t75284,\n\t\t75284\n\t],\n\t\"./light/power-off.svg\": [\n\t\t17157,\n\t\t17157\n\t],\n\t\"./light/pray.svg\": [\n\t\t64477,\n\t\t64477\n\t],\n\t\"./light/praying-hands.svg\": [\n\t\t30942,\n\t\t30942\n\t],\n\t\"./light/prescription-bottle-alt.svg\": [\n\t\t35988,\n\t\t35988\n\t],\n\t\"./light/prescription-bottle.svg\": [\n\t\t90200,\n\t\t90200\n\t],\n\t\"./light/prescription.svg\": [\n\t\t28301,\n\t\t28301\n\t],\n\t\"./light/presentation.svg\": [\n\t\t15220,\n\t\t15220\n\t],\n\t\"./light/print-search.svg\": [\n\t\t46690,\n\t\t46690\n\t],\n\t\"./light/print-slash.svg\": [\n\t\t79440,\n\t\t79440\n\t],\n\t\"./light/print.svg\": [\n\t\t54255,\n\t\t54255\n\t],\n\t\"./light/procedures.svg\": [\n\t\t53976,\n\t\t53976\n\t],\n\t\"./light/project-diagram.svg\": [\n\t\t71854,\n\t\t71854\n\t],\n\t\"./light/projector.svg\": [\n\t\t27746,\n\t\t27746\n\t],\n\t\"./light/pump-medical.svg\": [\n\t\t77603,\n\t\t77603\n\t],\n\t\"./light/pump-soap.svg\": [\n\t\t3820,\n\t\t3820\n\t],\n\t\"./light/pumpkin.svg\": [\n\t\t1665,\n\t\t1665\n\t],\n\t\"./light/puzzle-piece.svg\": [\n\t\t1043,\n\t\t1043\n\t],\n\t\"./light/qrcode.svg\": [\n\t\t16047,\n\t\t16047\n\t],\n\t\"./light/question-circle.svg\": [\n\t\t8294,\n\t\t8294\n\t],\n\t\"./light/question-square.svg\": [\n\t\t31536,\n\t\t31536\n\t],\n\t\"./light/question.svg\": [\n\t\t30794,\n\t\t30794\n\t],\n\t\"./light/quidditch.svg\": [\n\t\t11465,\n\t\t11465\n\t],\n\t\"./light/quote-left.svg\": [\n\t\t55034,\n\t\t55034\n\t],\n\t\"./light/quote-right.svg\": [\n\t\t13683,\n\t\t13683\n\t],\n\t\"./light/quran.svg\": [\n\t\t18637,\n\t\t18637\n\t],\n\t\"./light/rabbit-fast.svg\": [\n\t\t59126,\n\t\t59126\n\t],\n\t\"./light/rabbit.svg\": [\n\t\t39417,\n\t\t39417\n\t],\n\t\"./light/racquet.svg\": [\n\t\t5870,\n\t\t5870\n\t],\n\t\"./light/radar.svg\": [\n\t\t74381,\n\t\t74381\n\t],\n\t\"./light/radiation-alt.svg\": [\n\t\t98796,\n\t\t98796\n\t],\n\t\"./light/radiation.svg\": [\n\t\t9196,\n\t\t9196\n\t],\n\t\"./light/radio-alt.svg\": [\n\t\t16692,\n\t\t16692\n\t],\n\t\"./light/radio.svg\": [\n\t\t95553,\n\t\t95553\n\t],\n\t\"./light/rainbow.svg\": [\n\t\t70047,\n\t\t70047\n\t],\n\t\"./light/raindrops.svg\": [\n\t\t44213,\n\t\t44213\n\t],\n\t\"./light/ram.svg\": [\n\t\t55285,\n\t\t55285\n\t],\n\t\"./light/ramp-loading.svg\": [\n\t\t92427,\n\t\t92427\n\t],\n\t\"./light/random.svg\": [\n\t\t41411,\n\t\t41411\n\t],\n\t\"./light/raygun.svg\": [\n\t\t53572,\n\t\t53572\n\t],\n\t\"./light/receipt.svg\": [\n\t\t72831,\n\t\t72831\n\t],\n\t\"./light/record-vinyl.svg\": [\n\t\t78589,\n\t\t78589\n\t],\n\t\"./light/rectangle-landscape.svg\": [\n\t\t92000,\n\t\t92000\n\t],\n\t\"./light/rectangle-portrait.svg\": [\n\t\t78789,\n\t\t78789\n\t],\n\t\"./light/rectangle-wide.svg\": [\n\t\t40906,\n\t\t40906\n\t],\n\t\"./light/recycle.svg\": [\n\t\t71050,\n\t\t71050\n\t],\n\t\"./light/redo-alt.svg\": [\n\t\t63570,\n\t\t63570\n\t],\n\t\"./light/redo.svg\": [\n\t\t90991,\n\t\t90991\n\t],\n\t\"./light/refrigerator.svg\": [\n\t\t61030,\n\t\t61030\n\t],\n\t\"./light/registered.svg\": [\n\t\t67349,\n\t\t67349\n\t],\n\t\"./light/remove-format.svg\": [\n\t\t55284,\n\t\t55284\n\t],\n\t\"./light/repeat-1-alt.svg\": [\n\t\t17705,\n\t\t17705\n\t],\n\t\"./light/repeat-1.svg\": [\n\t\t70916,\n\t\t70916\n\t],\n\t\"./light/repeat-alt.svg\": [\n\t\t94345,\n\t\t94345\n\t],\n\t\"./light/repeat.svg\": [\n\t\t79179,\n\t\t79179\n\t],\n\t\"./light/reply-all.svg\": [\n\t\t39241,\n\t\t39241\n\t],\n\t\"./light/reply.svg\": [\n\t\t82678,\n\t\t82678\n\t],\n\t\"./light/republican.svg\": [\n\t\t99262,\n\t\t99262\n\t],\n\t\"./light/restroom.svg\": [\n\t\t11278,\n\t\t11278\n\t],\n\t\"./light/retweet-alt.svg\": [\n\t\t9952,\n\t\t9952\n\t],\n\t\"./light/retweet.svg\": [\n\t\t49915,\n\t\t49915\n\t],\n\t\"./light/ribbon.svg\": [\n\t\t10310,\n\t\t10310\n\t],\n\t\"./light/ring.svg\": [\n\t\t92446,\n\t\t92446\n\t],\n\t\"./light/rings-wedding.svg\": [\n\t\t2144,\n\t\t2144\n\t],\n\t\"./light/road.svg\": [\n\t\t59117,\n\t\t59117\n\t],\n\t\"./light/robot.svg\": [\n\t\t60347,\n\t\t60347\n\t],\n\t\"./light/rocket-launch.svg\": [\n\t\t29107,\n\t\t29107\n\t],\n\t\"./light/rocket.svg\": [\n\t\t37118,\n\t\t37118\n\t],\n\t\"./light/route-highway.svg\": [\n\t\t14804,\n\t\t14804\n\t],\n\t\"./light/route-interstate.svg\": [\n\t\t27684,\n\t\t27684\n\t],\n\t\"./light/route.svg\": [\n\t\t15017,\n\t\t15017\n\t],\n\t\"./light/router.svg\": [\n\t\t19130,\n\t\t19130\n\t],\n\t\"./light/rss-square.svg\": [\n\t\t15836,\n\t\t15836\n\t],\n\t\"./light/rss.svg\": [\n\t\t18489,\n\t\t18489\n\t],\n\t\"./light/ruble-sign.svg\": [\n\t\t22920,\n\t\t22920\n\t],\n\t\"./light/ruler-combined.svg\": [\n\t\t16975,\n\t\t16975\n\t],\n\t\"./light/ruler-horizontal.svg\": [\n\t\t39445,\n\t\t39445\n\t],\n\t\"./light/ruler-triangle.svg\": [\n\t\t24291,\n\t\t24291\n\t],\n\t\"./light/ruler-vertical.svg\": [\n\t\t61213,\n\t\t61213\n\t],\n\t\"./light/ruler.svg\": [\n\t\t76528,\n\t\t76528\n\t],\n\t\"./light/running.svg\": [\n\t\t87533,\n\t\t87533\n\t],\n\t\"./light/rupee-sign.svg\": [\n\t\t38734,\n\t\t38734\n\t],\n\t\"./light/rv.svg\": [\n\t\t26731,\n\t\t26731\n\t],\n\t\"./light/sack-dollar.svg\": [\n\t\t53546,\n\t\t53546\n\t],\n\t\"./light/sack.svg\": [\n\t\t98355,\n\t\t98355\n\t],\n\t\"./light/sad-cry.svg\": [\n\t\t18285,\n\t\t18285\n\t],\n\t\"./light/sad-tear.svg\": [\n\t\t26515,\n\t\t26515\n\t],\n\t\"./light/salad.svg\": [\n\t\t88061,\n\t\t88061\n\t],\n\t\"./light/sandwich.svg\": [\n\t\t97304,\n\t\t97304\n\t],\n\t\"./light/satellite-dish.svg\": [\n\t\t37934,\n\t\t37934\n\t],\n\t\"./light/satellite.svg\": [\n\t\t75690,\n\t\t75690\n\t],\n\t\"./light/sausage.svg\": [\n\t\t67620,\n\t\t67620\n\t],\n\t\"./light/save.svg\": [\n\t\t3861,\n\t\t3861\n\t],\n\t\"./light/sax-hot.svg\": [\n\t\t21405,\n\t\t21405\n\t],\n\t\"./light/saxophone.svg\": [\n\t\t23039,\n\t\t23039\n\t],\n\t\"./light/scalpel-path.svg\": [\n\t\t40365,\n\t\t40365\n\t],\n\t\"./light/scalpel.svg\": [\n\t\t67084,\n\t\t67084\n\t],\n\t\"./light/scanner-image.svg\": [\n\t\t94954,\n\t\t94954\n\t],\n\t\"./light/scanner-keyboard.svg\": [\n\t\t70326,\n\t\t70326\n\t],\n\t\"./light/scanner-touchscreen.svg\": [\n\t\t40127,\n\t\t40127\n\t],\n\t\"./light/scanner.svg\": [\n\t\t82775,\n\t\t82775\n\t],\n\t\"./light/scarecrow.svg\": [\n\t\t79217,\n\t\t79217\n\t],\n\t\"./light/scarf.svg\": [\n\t\t62131,\n\t\t62131\n\t],\n\t\"./light/school.svg\": [\n\t\t31724,\n\t\t31724\n\t],\n\t\"./light/screwdriver.svg\": [\n\t\t42489,\n\t\t42489\n\t],\n\t\"./light/scroll-old.svg\": [\n\t\t11143,\n\t\t11143\n\t],\n\t\"./light/scroll.svg\": [\n\t\t22514,\n\t\t22514\n\t],\n\t\"./light/scrubber.svg\": [\n\t\t23690,\n\t\t23690\n\t],\n\t\"./light/scythe.svg\": [\n\t\t21873,\n\t\t21873\n\t],\n\t\"./light/sd-card.svg\": [\n\t\t26558,\n\t\t26558\n\t],\n\t\"./light/search-dollar.svg\": [\n\t\t20060,\n\t\t20060\n\t],\n\t\"./light/search-location.svg\": [\n\t\t24789,\n\t\t24789\n\t],\n\t\"./light/search-minus.svg\": [\n\t\t48241,\n\t\t48241\n\t],\n\t\"./light/search-plus.svg\": [\n\t\t36157,\n\t\t36157\n\t],\n\t\"./light/search.svg\": [\n\t\t92781,\n\t\t92781\n\t],\n\t\"./light/seedling.svg\": [\n\t\t78976,\n\t\t78976\n\t],\n\t\"./light/send-back.svg\": [\n\t\t51424,\n\t\t51424\n\t],\n\t\"./light/send-backward.svg\": [\n\t\t3991,\n\t\t3991\n\t],\n\t\"./light/sensor-alert.svg\": [\n\t\t45883,\n\t\t45883\n\t],\n\t\"./light/sensor-fire.svg\": [\n\t\t41854,\n\t\t41854\n\t],\n\t\"./light/sensor-on.svg\": [\n\t\t57357,\n\t\t57357\n\t],\n\t\"./light/sensor-smoke.svg\": [\n\t\t15653,\n\t\t15653\n\t],\n\t\"./light/sensor.svg\": [\n\t\t97973,\n\t\t97973\n\t],\n\t\"./light/server.svg\": [\n\t\t72830,\n\t\t72830\n\t],\n\t\"./light/shapes.svg\": [\n\t\t92119,\n\t\t92119\n\t],\n\t\"./light/share-all.svg\": [\n\t\t69078,\n\t\t69078\n\t],\n\t\"./light/share-alt-square.svg\": [\n\t\t7475,\n\t\t7475\n\t],\n\t\"./light/share-alt.svg\": [\n\t\t64517,\n\t\t64517\n\t],\n\t\"./light/share-square.svg\": [\n\t\t84093,\n\t\t84093\n\t],\n\t\"./light/share.svg\": [\n\t\t51104,\n\t\t51104\n\t],\n\t\"./light/sheep.svg\": [\n\t\t5209,\n\t\t5209\n\t],\n\t\"./light/shekel-sign.svg\": [\n\t\t23616,\n\t\t23616\n\t],\n\t\"./light/shield-alt.svg\": [\n\t\t66088,\n\t\t66088\n\t],\n\t\"./light/shield-check.svg\": [\n\t\t27435,\n\t\t27435\n\t],\n\t\"./light/shield-cross.svg\": [\n\t\t21568,\n\t\t21568\n\t],\n\t\"./light/shield-virus.svg\": [\n\t\t62231,\n\t\t62231\n\t],\n\t\"./light/shield.svg\": [\n\t\t91774,\n\t\t91774\n\t],\n\t\"./light/ship.svg\": [\n\t\t70551,\n\t\t70551\n\t],\n\t\"./light/shipping-fast.svg\": [\n\t\t99778,\n\t\t99778\n\t],\n\t\"./light/shipping-timed.svg\": [\n\t\t51821,\n\t\t51821\n\t],\n\t\"./light/shish-kebab.svg\": [\n\t\t51551,\n\t\t51551\n\t],\n\t\"./light/shoe-prints.svg\": [\n\t\t97299,\n\t\t97299\n\t],\n\t\"./light/shopping-bag.svg\": [\n\t\t44626,\n\t\t44626\n\t],\n\t\"./light/shopping-basket.svg\": [\n\t\t379,\n\t\t379\n\t],\n\t\"./light/shopping-cart.svg\": [\n\t\t25978,\n\t\t72349\n\t],\n\t\"./light/shovel-snow.svg\": [\n\t\t98209,\n\t\t98209\n\t],\n\t\"./light/shovel.svg\": [\n\t\t95158,\n\t\t95158\n\t],\n\t\"./light/shower.svg\": [\n\t\t48320,\n\t\t48320\n\t],\n\t\"./light/shredder.svg\": [\n\t\t19867,\n\t\t19867\n\t],\n\t\"./light/shuttle-van.svg\": [\n\t\t35133,\n\t\t35133\n\t],\n\t\"./light/shuttlecock.svg\": [\n\t\t75299,\n\t\t75299\n\t],\n\t\"./light/sickle.svg\": [\n\t\t1063,\n\t\t1063\n\t],\n\t\"./light/sigma.svg\": [\n\t\t77832,\n\t\t77832\n\t],\n\t\"./light/sign-in-alt.svg\": [\n\t\t2505,\n\t\t2505\n\t],\n\t\"./light/sign-in.svg\": [\n\t\t27694,\n\t\t27694\n\t],\n\t\"./light/sign-language.svg\": [\n\t\t41013,\n\t\t41013\n\t],\n\t\"./light/sign-out-alt.svg\": [\n\t\t39382,\n\t\t39382\n\t],\n\t\"./light/sign-out.svg\": [\n\t\t1695,\n\t\t1695\n\t],\n\t\"./light/sign.svg\": [\n\t\t78837,\n\t\t78837\n\t],\n\t\"./light/signal-1.svg\": [\n\t\t32715,\n\t\t32715\n\t],\n\t\"./light/signal-2.svg\": [\n\t\t23046,\n\t\t23046\n\t],\n\t\"./light/signal-3.svg\": [\n\t\t97243,\n\t\t97243\n\t],\n\t\"./light/signal-4.svg\": [\n\t\t98562,\n\t\t98562\n\t],\n\t\"./light/signal-alt-1.svg\": [\n\t\t22204,\n\t\t22204\n\t],\n\t\"./light/signal-alt-2.svg\": [\n\t\t61989,\n\t\t61989\n\t],\n\t\"./light/signal-alt-3.svg\": [\n\t\t6700,\n\t\t6700\n\t],\n\t\"./light/signal-alt-slash.svg\": [\n\t\t80668,\n\t\t80668\n\t],\n\t\"./light/signal-alt.svg\": [\n\t\t87881,\n\t\t87881\n\t],\n\t\"./light/signal-slash.svg\": [\n\t\t93286,\n\t\t93286\n\t],\n\t\"./light/signal-stream.svg\": [\n\t\t44568,\n\t\t44568\n\t],\n\t\"./light/signal.svg\": [\n\t\t11036,\n\t\t11036\n\t],\n\t\"./light/signature.svg\": [\n\t\t41034,\n\t\t41034\n\t],\n\t\"./light/sim-card.svg\": [\n\t\t46577,\n\t\t46577\n\t],\n\t\"./light/sink.svg\": [\n\t\t5925,\n\t\t5925\n\t],\n\t\"./light/siren-on.svg\": [\n\t\t59920,\n\t\t59920\n\t],\n\t\"./light/siren.svg\": [\n\t\t97549,\n\t\t97549\n\t],\n\t\"./light/sitemap.svg\": [\n\t\t33775,\n\t\t33775\n\t],\n\t\"./light/skating.svg\": [\n\t\t13572,\n\t\t13572\n\t],\n\t\"./light/skeleton.svg\": [\n\t\t13801,\n\t\t13801\n\t],\n\t\"./light/ski-jump.svg\": [\n\t\t75200,\n\t\t75200\n\t],\n\t\"./light/ski-lift.svg\": [\n\t\t79151,\n\t\t94343\n\t],\n\t\"./light/skiing-nordic.svg\": [\n\t\t38763,\n\t\t38763\n\t],\n\t\"./light/skiing.svg\": [\n\t\t30087,\n\t\t30087\n\t],\n\t\"./light/skull-cow.svg\": [\n\t\t35568,\n\t\t35568\n\t],\n\t\"./light/skull-crossbones.svg\": [\n\t\t94606,\n\t\t94606\n\t],\n\t\"./light/skull.svg\": [\n\t\t86249,\n\t\t86249\n\t],\n\t\"./light/slash.svg\": [\n\t\t87460,\n\t\t87460\n\t],\n\t\"./light/sledding.svg\": [\n\t\t13393,\n\t\t13393\n\t],\n\t\"./light/sleigh.svg\": [\n\t\t74213,\n\t\t74213\n\t],\n\t\"./light/sliders-h-square.svg\": [\n\t\t88169,\n\t\t88169\n\t],\n\t\"./light/sliders-h.svg\": [\n\t\t28258,\n\t\t28258\n\t],\n\t\"./light/sliders-v-square.svg\": [\n\t\t64647,\n\t\t64647\n\t],\n\t\"./light/sliders-v.svg\": [\n\t\t67701,\n\t\t67701\n\t],\n\t\"./light/smile-beam.svg\": [\n\t\t49081,\n\t\t49081\n\t],\n\t\"./light/smile-plus.svg\": [\n\t\t40693,\n\t\t40693\n\t],\n\t\"./light/smile-wink.svg\": [\n\t\t82429,\n\t\t82429\n\t],\n\t\"./light/smile.svg\": [\n\t\t43397,\n\t\t43397\n\t],\n\t\"./light/smog.svg\": [\n\t\t48121,\n\t\t48121\n\t],\n\t\"./light/smoke.svg\": [\n\t\t66425,\n\t\t66425\n\t],\n\t\"./light/smoking-ban.svg\": [\n\t\t25329,\n\t\t25329\n\t],\n\t\"./light/smoking.svg\": [\n\t\t44462,\n\t\t44462\n\t],\n\t\"./light/sms.svg\": [\n\t\t50498,\n\t\t50498\n\t],\n\t\"./light/snake.svg\": [\n\t\t15014,\n\t\t15014\n\t],\n\t\"./light/snooze.svg\": [\n\t\t6701,\n\t\t6701\n\t],\n\t\"./light/snow-blowing.svg\": [\n\t\t84555,\n\t\t84555\n\t],\n\t\"./light/snowboarding.svg\": [\n\t\t63192,\n\t\t63192\n\t],\n\t\"./light/snowflake.svg\": [\n\t\t47088,\n\t\t82857\n\t],\n\t\"./light/snowflakes.svg\": [\n\t\t20170,\n\t\t20170\n\t],\n\t\"./light/snowman.svg\": [\n\t\t21934,\n\t\t21934\n\t],\n\t\"./light/snowmobile.svg\": [\n\t\t87913,\n\t\t87913\n\t],\n\t\"./light/snowplow.svg\": [\n\t\t91411,\n\t\t91411\n\t],\n\t\"./light/soap.svg\": [\n\t\t85897,\n\t\t85897\n\t],\n\t\"./light/socks.svg\": [\n\t\t4439,\n\t\t4439\n\t],\n\t\"./light/solar-panel.svg\": [\n\t\t48021,\n\t\t48021\n\t],\n\t\"./light/solar-system.svg\": [\n\t\t96626,\n\t\t96626\n\t],\n\t\"./light/sort-alpha-down-alt.svg\": [\n\t\t70321,\n\t\t70321\n\t],\n\t\"./light/sort-alpha-down.svg\": [\n\t\t94476,\n\t\t94476\n\t],\n\t\"./light/sort-alpha-up-alt.svg\": [\n\t\t32352,\n\t\t32352\n\t],\n\t\"./light/sort-alpha-up.svg\": [\n\t\t55694,\n\t\t55694\n\t],\n\t\"./light/sort-alt.svg\": [\n\t\t78186,\n\t\t78186\n\t],\n\t\"./light/sort-amount-down-alt.svg\": [\n\t\t18166,\n\t\t18166\n\t],\n\t\"./light/sort-amount-down.svg\": [\n\t\t47759,\n\t\t47759\n\t],\n\t\"./light/sort-amount-up-alt.svg\": [\n\t\t58494,\n\t\t58494\n\t],\n\t\"./light/sort-amount-up.svg\": [\n\t\t25371,\n\t\t25371\n\t],\n\t\"./light/sort-circle-down.svg\": [\n\t\t84753,\n\t\t84753\n\t],\n\t\"./light/sort-circle-up.svg\": [\n\t\t21863,\n\t\t21863\n\t],\n\t\"./light/sort-circle.svg\": [\n\t\t90513,\n\t\t90513\n\t],\n\t\"./light/sort-down.svg\": [\n\t\t74108,\n\t\t74108\n\t],\n\t\"./light/sort-numeric-down-alt.svg\": [\n\t\t76503,\n\t\t76503\n\t],\n\t\"./light/sort-numeric-down.svg\": [\n\t\t43389,\n\t\t43389\n\t],\n\t\"./light/sort-numeric-up-alt.svg\": [\n\t\t75208,\n\t\t75208\n\t],\n\t\"./light/sort-numeric-up.svg\": [\n\t\t4376,\n\t\t4376\n\t],\n\t\"./light/sort-shapes-down-alt.svg\": [\n\t\t49879,\n\t\t49879\n\t],\n\t\"./light/sort-shapes-down.svg\": [\n\t\t57066,\n\t\t57066\n\t],\n\t\"./light/sort-shapes-up-alt.svg\": [\n\t\t24609,\n\t\t24609\n\t],\n\t\"./light/sort-shapes-up.svg\": [\n\t\t22312,\n\t\t22312\n\t],\n\t\"./light/sort-size-down-alt.svg\": [\n\t\t36274,\n\t\t36274\n\t],\n\t\"./light/sort-size-down.svg\": [\n\t\t94965,\n\t\t94965\n\t],\n\t\"./light/sort-size-up-alt.svg\": [\n\t\t96485,\n\t\t96485\n\t],\n\t\"./light/sort-size-up.svg\": [\n\t\t73825,\n\t\t73825\n\t],\n\t\"./light/sort-up.svg\": [\n\t\t15086,\n\t\t15086\n\t],\n\t\"./light/sort.svg\": [\n\t\t79025,\n\t\t79025\n\t],\n\t\"./light/soup.svg\": [\n\t\t1110,\n\t\t1110\n\t],\n\t\"./light/spa.svg\": [\n\t\t8906,\n\t\t8906\n\t],\n\t\"./light/space-shuttle.svg\": [\n\t\t77140,\n\t\t77140\n\t],\n\t\"./light/space-station-moon-alt.svg\": [\n\t\t73158,\n\t\t73158\n\t],\n\t\"./light/space-station-moon.svg\": [\n\t\t76952,\n\t\t76952\n\t],\n\t\"./light/spade.svg\": [\n\t\t24784,\n\t\t24784\n\t],\n\t\"./light/sparkles.svg\": [\n\t\t34389,\n\t\t34389\n\t],\n\t\"./light/speaker.svg\": [\n\t\t61437,\n\t\t61437\n\t],\n\t\"./light/speakers.svg\": [\n\t\t81612,\n\t\t81612\n\t],\n\t\"./light/spell-check.svg\": [\n\t\t62532,\n\t\t62532\n\t],\n\t\"./light/spider-black-widow.svg\": [\n\t\t95563,\n\t\t95563\n\t],\n\t\"./light/spider-web.svg\": [\n\t\t61970,\n\t\t61970\n\t],\n\t\"./light/spider.svg\": [\n\t\t36054,\n\t\t36054\n\t],\n\t\"./light/spinner-third.svg\": [\n\t\t38952,\n\t\t38952\n\t],\n\t\"./light/spinner.svg\": [\n\t\t49127,\n\t\t49127\n\t],\n\t\"./light/splotch.svg\": [\n\t\t22555,\n\t\t22555\n\t],\n\t\"./light/spray-can.svg\": [\n\t\t14395,\n\t\t14395\n\t],\n\t\"./light/sprinkler.svg\": [\n\t\t38093,\n\t\t38093\n\t],\n\t\"./light/square-full.svg\": [\n\t\t17781,\n\t\t17781\n\t],\n\t\"./light/square-root-alt.svg\": [\n\t\t20164,\n\t\t20164\n\t],\n\t\"./light/square-root.svg\": [\n\t\t94097,\n\t\t94097\n\t],\n\t\"./light/square.svg\": [\n\t\t10873,\n\t\t10873\n\t],\n\t\"./light/squirrel.svg\": [\n\t\t12468,\n\t\t12468\n\t],\n\t\"./light/staff.svg\": [\n\t\t6313,\n\t\t6313\n\t],\n\t\"./light/stamp.svg\": [\n\t\t94255,\n\t\t94255\n\t],\n\t\"./light/star-and-crescent.svg\": [\n\t\t93987,\n\t\t93987\n\t],\n\t\"./light/star-christmas.svg\": [\n\t\t66143,\n\t\t66143\n\t],\n\t\"./light/star-exclamation.svg\": [\n\t\t56958,\n\t\t56958\n\t],\n\t\"./light/star-half-alt.svg\": [\n\t\t45139,\n\t\t45139\n\t],\n\t\"./light/star-half.svg\": [\n\t\t11442,\n\t\t11442\n\t],\n\t\"./light/star-of-david.svg\": [\n\t\t98927,\n\t\t98927\n\t],\n\t\"./light/star-of-life.svg\": [\n\t\t45721,\n\t\t45721\n\t],\n\t\"./light/star-shooting.svg\": [\n\t\t5511,\n\t\t5511\n\t],\n\t\"./light/star.svg\": [\n\t\t6231,\n\t\t6231\n\t],\n\t\"./light/starfighter-alt.svg\": [\n\t\t13126,\n\t\t13126\n\t],\n\t\"./light/starfighter.svg\": [\n\t\t88829,\n\t\t88829\n\t],\n\t\"./light/stars.svg\": [\n\t\t46272,\n\t\t46272\n\t],\n\t\"./light/starship-freighter.svg\": [\n\t\t5544,\n\t\t5544\n\t],\n\t\"./light/starship.svg\": [\n\t\t79454,\n\t\t79454\n\t],\n\t\"./light/steak.svg\": [\n\t\t67698,\n\t\t67698\n\t],\n\t\"./light/steering-wheel.svg\": [\n\t\t32899,\n\t\t32899\n\t],\n\t\"./light/step-backward.svg\": [\n\t\t82008,\n\t\t82008\n\t],\n\t\"./light/step-forward.svg\": [\n\t\t89262,\n\t\t89262\n\t],\n\t\"./light/stethoscope.svg\": [\n\t\t7018,\n\t\t7018\n\t],\n\t\"./light/sticky-note.svg\": [\n\t\t23744,\n\t\t23744\n\t],\n\t\"./light/stocking.svg\": [\n\t\t27762,\n\t\t27762\n\t],\n\t\"./light/stomach.svg\": [\n\t\t23002,\n\t\t23002\n\t],\n\t\"./light/stop-circle.svg\": [\n\t\t12096,\n\t\t12096\n\t],\n\t\"./light/stop.svg\": [\n\t\t25532,\n\t\t25532\n\t],\n\t\"./light/stopwatch-20.svg\": [\n\t\t27251,\n\t\t27251\n\t],\n\t\"./light/stopwatch.svg\": [\n\t\t53929,\n\t\t53929\n\t],\n\t\"./light/store-alt-slash.svg\": [\n\t\t44101,\n\t\t44101\n\t],\n\t\"./light/store-alt.svg\": [\n\t\t37164,\n\t\t37164\n\t],\n\t\"./light/store-slash.svg\": [\n\t\t38719,\n\t\t38719\n\t],\n\t\"./light/store.svg\": [\n\t\t71128,\n\t\t71128\n\t],\n\t\"./light/stream.svg\": [\n\t\t52477,\n\t\t52477\n\t],\n\t\"./light/street-view.svg\": [\n\t\t1128,\n\t\t1128\n\t],\n\t\"./light/stretcher.svg\": [\n\t\t97002,\n\t\t97002\n\t],\n\t\"./light/strikethrough.svg\": [\n\t\t98091,\n\t\t98091\n\t],\n\t\"./light/stroopwafel.svg\": [\n\t\t22131,\n\t\t22131\n\t],\n\t\"./light/subscript.svg\": [\n\t\t50888,\n\t\t50888\n\t],\n\t\"./light/subway.svg\": [\n\t\t21653,\n\t\t21653\n\t],\n\t\"./light/suitcase-rolling.svg\": [\n\t\t79412,\n\t\t79412\n\t],\n\t\"./light/suitcase.svg\": [\n\t\t1250,\n\t\t1250\n\t],\n\t\"./light/sun-cloud.svg\": [\n\t\t4206,\n\t\t4206\n\t],\n\t\"./light/sun-dust.svg\": [\n\t\t45549,\n\t\t45549\n\t],\n\t\"./light/sun-haze.svg\": [\n\t\t58970,\n\t\t58970\n\t],\n\t\"./light/sun.svg\": [\n\t\t1577,\n\t\t1577\n\t],\n\t\"./light/sunglasses.svg\": [\n\t\t21810,\n\t\t21810\n\t],\n\t\"./light/sunrise.svg\": [\n\t\t3891,\n\t\t3891\n\t],\n\t\"./light/sunset.svg\": [\n\t\t57660,\n\t\t57660\n\t],\n\t\"./light/superscript.svg\": [\n\t\t45855,\n\t\t45855\n\t],\n\t\"./light/surprise.svg\": [\n\t\t18,\n\t\t18\n\t],\n\t\"./light/swatchbook.svg\": [\n\t\t99451,\n\t\t99451\n\t],\n\t\"./light/swimmer.svg\": [\n\t\t56022,\n\t\t56022\n\t],\n\t\"./light/swimming-pool.svg\": [\n\t\t80239,\n\t\t80239\n\t],\n\t\"./light/sword-laser-alt.svg\": [\n\t\t62529,\n\t\t62529\n\t],\n\t\"./light/sword-laser.svg\": [\n\t\t53331,\n\t\t53331\n\t],\n\t\"./light/sword.svg\": [\n\t\t84697,\n\t\t84697\n\t],\n\t\"./light/swords-laser.svg\": [\n\t\t4826,\n\t\t4826\n\t],\n\t\"./light/swords.svg\": [\n\t\t20805,\n\t\t20805\n\t],\n\t\"./light/synagogue.svg\": [\n\t\t28169,\n\t\t28169\n\t],\n\t\"./light/sync-alt.svg\": [\n\t\t90525,\n\t\t90525\n\t],\n\t\"./light/sync.svg\": [\n\t\t71324,\n\t\t71324\n\t],\n\t\"./light/syringe.svg\": [\n\t\t10869,\n\t\t10869\n\t],\n\t\"./light/table-tennis.svg\": [\n\t\t64678,\n\t\t64678\n\t],\n\t\"./light/table.svg\": [\n\t\t59633,\n\t\t59633\n\t],\n\t\"./light/tablet-alt.svg\": [\n\t\t14579,\n\t\t14579\n\t],\n\t\"./light/tablet-android-alt.svg\": [\n\t\t72152,\n\t\t72152\n\t],\n\t\"./light/tablet-android.svg\": [\n\t\t80790,\n\t\t80790\n\t],\n\t\"./light/tablet-rugged.svg\": [\n\t\t55100,\n\t\t55100\n\t],\n\t\"./light/tablet.svg\": [\n\t\t33700,\n\t\t33700\n\t],\n\t\"./light/tablets.svg\": [\n\t\t60901,\n\t\t60901\n\t],\n\t\"./light/tachometer-alt-average.svg\": [\n\t\t22326,\n\t\t22326\n\t],\n\t\"./light/tachometer-alt-fast.svg\": [\n\t\t6391,\n\t\t6391\n\t],\n\t\"./light/tachometer-alt-fastest.svg\": [\n\t\t81513,\n\t\t81513\n\t],\n\t\"./light/tachometer-alt-slow.svg\": [\n\t\t81280,\n\t\t81280\n\t],\n\t\"./light/tachometer-alt-slowest.svg\": [\n\t\t61655,\n\t\t61655\n\t],\n\t\"./light/tachometer-alt.svg\": [\n\t\t59705,\n\t\t59705\n\t],\n\t\"./light/tachometer-average.svg\": [\n\t\t38151,\n\t\t38151\n\t],\n\t\"./light/tachometer-fast.svg\": [\n\t\t83705,\n\t\t83705\n\t],\n\t\"./light/tachometer-fastest.svg\": [\n\t\t43270,\n\t\t43270\n\t],\n\t\"./light/tachometer-slow.svg\": [\n\t\t86716,\n\t\t86716\n\t],\n\t\"./light/tachometer-slowest.svg\": [\n\t\t75272,\n\t\t75272\n\t],\n\t\"./light/tachometer.svg\": [\n\t\t78987,\n\t\t78987\n\t],\n\t\"./light/taco.svg\": [\n\t\t77644,\n\t\t77644\n\t],\n\t\"./light/tag.svg\": [\n\t\t55518,\n\t\t55518\n\t],\n\t\"./light/tags.svg\": [\n\t\t35300,\n\t\t35300\n\t],\n\t\"./light/tally.svg\": [\n\t\t66167,\n\t\t77044\n\t],\n\t\"./light/tanakh.svg\": [\n\t\t30644,\n\t\t30644\n\t],\n\t\"./light/tape.svg\": [\n\t\t78329,\n\t\t78329\n\t],\n\t\"./light/tasks-alt.svg\": [\n\t\t38461,\n\t\t38461\n\t],\n\t\"./light/tasks.svg\": [\n\t\t25813,\n\t\t25813\n\t],\n\t\"./light/taxi.svg\": [\n\t\t77065,\n\t\t77065\n\t],\n\t\"./light/teeth-open.svg\": [\n\t\t22512,\n\t\t22512\n\t],\n\t\"./light/teeth.svg\": [\n\t\t5446,\n\t\t5446\n\t],\n\t\"./light/telescope.svg\": [\n\t\t15351,\n\t\t15351\n\t],\n\t\"./light/temperature-down.svg\": [\n\t\t50345,\n\t\t50345\n\t],\n\t\"./light/temperature-frigid.svg\": [\n\t\t82533,\n\t\t82533\n\t],\n\t\"./light/temperature-high.svg\": [\n\t\t58057,\n\t\t58057\n\t],\n\t\"./light/temperature-hot.svg\": [\n\t\t7791,\n\t\t7791\n\t],\n\t\"./light/temperature-low.svg\": [\n\t\t24253,\n\t\t24253\n\t],\n\t\"./light/temperature-up.svg\": [\n\t\t43133,\n\t\t43133\n\t],\n\t\"./light/tenge.svg\": [\n\t\t51529,\n\t\t51529\n\t],\n\t\"./light/tennis-ball.svg\": [\n\t\t64954,\n\t\t64954\n\t],\n\t\"./light/terminal.svg\": [\n\t\t35428,\n\t\t35428\n\t],\n\t\"./light/text-height.svg\": [\n\t\t2435,\n\t\t2435\n\t],\n\t\"./light/text-size.svg\": [\n\t\t50889,\n\t\t50889\n\t],\n\t\"./light/text-width.svg\": [\n\t\t12260,\n\t\t12260\n\t],\n\t\"./light/text.svg\": [\n\t\t30494,\n\t\t30494\n\t],\n\t\"./light/th-large.svg\": [\n\t\t42518,\n\t\t42518\n\t],\n\t\"./light/th-list.svg\": [\n\t\t11380,\n\t\t11380\n\t],\n\t\"./light/th.svg\": [\n\t\t97818,\n\t\t97818\n\t],\n\t\"./light/theater-masks.svg\": [\n\t\t81132,\n\t\t81132\n\t],\n\t\"./light/thermometer-empty.svg\": [\n\t\t51445,\n\t\t51445\n\t],\n\t\"./light/thermometer-full.svg\": [\n\t\t27385,\n\t\t27385\n\t],\n\t\"./light/thermometer-half.svg\": [\n\t\t19471,\n\t\t19471\n\t],\n\t\"./light/thermometer-quarter.svg\": [\n\t\t69427,\n\t\t69427\n\t],\n\t\"./light/thermometer-three-quarters.svg\": [\n\t\t44546,\n\t\t44546\n\t],\n\t\"./light/thermometer.svg\": [\n\t\t23176,\n\t\t23176\n\t],\n\t\"./light/theta.svg\": [\n\t\t25857,\n\t\t25857\n\t],\n\t\"./light/thumbs-down.svg\": [\n\t\t96977,\n\t\t96977\n\t],\n\t\"./light/thumbs-up.svg\": [\n\t\t78400,\n\t\t78400\n\t],\n\t\"./light/thumbtack.svg\": [\n\t\t31115,\n\t\t31115\n\t],\n\t\"./light/thunderstorm-moon.svg\": [\n\t\t90572,\n\t\t90572\n\t],\n\t\"./light/thunderstorm-sun.svg\": [\n\t\t991,\n\t\t991\n\t],\n\t\"./light/thunderstorm.svg\": [\n\t\t6732,\n\t\t6732\n\t],\n\t\"./light/ticket-alt.svg\": [\n\t\t79041,\n\t\t79041\n\t],\n\t\"./light/ticket.svg\": [\n\t\t63007,\n\t\t63007\n\t],\n\t\"./light/tilde.svg\": [\n\t\t78571,\n\t\t78571\n\t],\n\t\"./light/times-circle.svg\": [\n\t\t84648,\n\t\t84648\n\t],\n\t\"./light/times-hexagon.svg\": [\n\t\t56229,\n\t\t56229\n\t],\n\t\"./light/times-octagon.svg\": [\n\t\t45639,\n\t\t45639\n\t],\n\t\"./light/times-square.svg\": [\n\t\t35902,\n\t\t35902\n\t],\n\t\"./light/times.svg\": [\n\t\t54451,\n\t\t54451\n\t],\n\t\"./light/tint-slash.svg\": [\n\t\t74436,\n\t\t74436\n\t],\n\t\"./light/tint.svg\": [\n\t\t98476,\n\t\t98476\n\t],\n\t\"./light/tire-flat.svg\": [\n\t\t96314,\n\t\t96314\n\t],\n\t\"./light/tire-pressure-warning.svg\": [\n\t\t26064,\n\t\t26064\n\t],\n\t\"./light/tire-rugged.svg\": [\n\t\t96114,\n\t\t96114\n\t],\n\t\"./light/tire.svg\": [\n\t\t80761,\n\t\t80761\n\t],\n\t\"./light/tired.svg\": [\n\t\t60594,\n\t\t60594\n\t],\n\t\"./light/toggle-off.svg\": [\n\t\t64380,\n\t\t64380\n\t],\n\t\"./light/toggle-on.svg\": [\n\t\t66515,\n\t\t66515\n\t],\n\t\"./light/toilet-paper-alt.svg\": [\n\t\t14644,\n\t\t14644\n\t],\n\t\"./light/toilet-paper-slash.svg\": [\n\t\t97327,\n\t\t97327\n\t],\n\t\"./light/toilet-paper.svg\": [\n\t\t97600,\n\t\t97600\n\t],\n\t\"./light/toilet.svg\": [\n\t\t35354,\n\t\t35354\n\t],\n\t\"./light/tombstone-alt.svg\": [\n\t\t80179,\n\t\t80179\n\t],\n\t\"./light/tombstone.svg\": [\n\t\t58035,\n\t\t58035\n\t],\n\t\"./light/toolbox.svg\": [\n\t\t1148,\n\t\t1148\n\t],\n\t\"./light/tools.svg\": [\n\t\t74101,\n\t\t74101\n\t],\n\t\"./light/tooth.svg\": [\n\t\t56153,\n\t\t56153\n\t],\n\t\"./light/toothbrush.svg\": [\n\t\t92723,\n\t\t92723\n\t],\n\t\"./light/torah.svg\": [\n\t\t97668,\n\t\t97668\n\t],\n\t\"./light/torii-gate.svg\": [\n\t\t54901,\n\t\t54901\n\t],\n\t\"./light/tornado.svg\": [\n\t\t37278,\n\t\t37278\n\t],\n\t\"./light/tractor.svg\": [\n\t\t26016,\n\t\t26016\n\t],\n\t\"./light/trademark.svg\": [\n\t\t8927,\n\t\t8927\n\t],\n\t\"./light/traffic-cone.svg\": [\n\t\t36233,\n\t\t36233\n\t],\n\t\"./light/traffic-light-go.svg\": [\n\t\t55578,\n\t\t55578\n\t],\n\t\"./light/traffic-light-slow.svg\": [\n\t\t24188,\n\t\t24188\n\t],\n\t\"./light/traffic-light-stop.svg\": [\n\t\t68920,\n\t\t68920\n\t],\n\t\"./light/traffic-light.svg\": [\n\t\t26123,\n\t\t26123\n\t],\n\t\"./light/trailer.svg\": [\n\t\t50439,\n\t\t50439\n\t],\n\t\"./light/train.svg\": [\n\t\t29731,\n\t\t29731\n\t],\n\t\"./light/tram.svg\": [\n\t\t67006,\n\t\t67006\n\t],\n\t\"./light/transgender-alt.svg\": [\n\t\t60578,\n\t\t60578\n\t],\n\t\"./light/transgender.svg\": [\n\t\t2762,\n\t\t2762\n\t],\n\t\"./light/transporter-1.svg\": [\n\t\t92892,\n\t\t92892\n\t],\n\t\"./light/transporter-2.svg\": [\n\t\t76060,\n\t\t76060\n\t],\n\t\"./light/transporter-3.svg\": [\n\t\t45690,\n\t\t45690\n\t],\n\t\"./light/transporter-empty.svg\": [\n\t\t83025,\n\t\t83025\n\t],\n\t\"./light/transporter.svg\": [\n\t\t29066,\n\t\t29066\n\t],\n\t\"./light/trash-alt.svg\": [\n\t\t93984,\n\t\t93984\n\t],\n\t\"./light/trash-restore-alt.svg\": [\n\t\t54369,\n\t\t54369\n\t],\n\t\"./light/trash-restore.svg\": [\n\t\t95235,\n\t\t95235\n\t],\n\t\"./light/trash-undo-alt.svg\": [\n\t\t20818,\n\t\t20818\n\t],\n\t\"./light/trash-undo.svg\": [\n\t\t32924,\n\t\t32924\n\t],\n\t\"./light/trash.svg\": [\n\t\t81646,\n\t\t81646\n\t],\n\t\"./light/treasure-chest.svg\": [\n\t\t17379,\n\t\t17379\n\t],\n\t\"./light/tree-alt.svg\": [\n\t\t18362,\n\t\t18362\n\t],\n\t\"./light/tree-christmas.svg\": [\n\t\t2657,\n\t\t2657\n\t],\n\t\"./light/tree-decorated.svg\": [\n\t\t45358,\n\t\t45358\n\t],\n\t\"./light/tree-large.svg\": [\n\t\t9241,\n\t\t9241\n\t],\n\t\"./light/tree-palm.svg\": [\n\t\t4428,\n\t\t4428\n\t],\n\t\"./light/tree.svg\": [\n\t\t3844,\n\t\t3844\n\t],\n\t\"./light/trees.svg\": [\n\t\t24755,\n\t\t24755\n\t],\n\t\"./light/triangle-music.svg\": [\n\t\t63824,\n\t\t63824\n\t],\n\t\"./light/triangle.svg\": [\n\t\t96009,\n\t\t96009\n\t],\n\t\"./light/trophy-alt.svg\": [\n\t\t52128,\n\t\t52128\n\t],\n\t\"./light/trophy.svg\": [\n\t\t30056,\n\t\t30056\n\t],\n\t\"./light/truck-container.svg\": [\n\t\t54831,\n\t\t54831\n\t],\n\t\"./light/truck-couch.svg\": [\n\t\t2387,\n\t\t2387\n\t],\n\t\"./light/truck-loading.svg\": [\n\t\t58619,\n\t\t58619\n\t],\n\t\"./light/truck-monster.svg\": [\n\t\t56748,\n\t\t56748\n\t],\n\t\"./light/truck-moving.svg\": [\n\t\t75721,\n\t\t75721\n\t],\n\t\"./light/truck-pickup.svg\": [\n\t\t7448,\n\t\t7448\n\t],\n\t\"./light/truck-plow.svg\": [\n\t\t92438,\n\t\t92438\n\t],\n\t\"./light/truck-ramp.svg\": [\n\t\t24396,\n\t\t24396\n\t],\n\t\"./light/truck.svg\": [\n\t\t42005,\n\t\t42005\n\t],\n\t\"./light/trumpet.svg\": [\n\t\t9730,\n\t\t9730\n\t],\n\t\"./light/tshirt.svg\": [\n\t\t83768,\n\t\t83768\n\t],\n\t\"./light/tty.svg\": [\n\t\t88889,\n\t\t88889\n\t],\n\t\"./light/turkey.svg\": [\n\t\t81249,\n\t\t81249\n\t],\n\t\"./light/turntable.svg\": [\n\t\t7382,\n\t\t7382\n\t],\n\t\"./light/turtle.svg\": [\n\t\t1515,\n\t\t1515\n\t],\n\t\"./light/tv-alt.svg\": [\n\t\t91034,\n\t\t91034\n\t],\n\t\"./light/tv-music.svg\": [\n\t\t586,\n\t\t586\n\t],\n\t\"./light/tv-retro.svg\": [\n\t\t85189,\n\t\t85189\n\t],\n\t\"./light/tv.svg\": [\n\t\t98955,\n\t\t98955\n\t],\n\t\"./light/typewriter.svg\": [\n\t\t25645,\n\t\t25645\n\t],\n\t\"./light/ufo-beam.svg\": [\n\t\t56417,\n\t\t56417\n\t],\n\t\"./light/ufo.svg\": [\n\t\t22246,\n\t\t22246\n\t],\n\t\"./light/umbrella-beach.svg\": [\n\t\t85745,\n\t\t85745\n\t],\n\t\"./light/umbrella.svg\": [\n\t\t33470,\n\t\t33470\n\t],\n\t\"./light/underline.svg\": [\n\t\t58460,\n\t\t58460\n\t],\n\t\"./light/undo-alt.svg\": [\n\t\t63742,\n\t\t63742\n\t],\n\t\"./light/undo.svg\": [\n\t\t85944,\n\t\t85944\n\t],\n\t\"./light/unicorn.svg\": [\n\t\t13058,\n\t\t13058\n\t],\n\t\"./light/union.svg\": [\n\t\t86796,\n\t\t86796\n\t],\n\t\"./light/universal-access.svg\": [\n\t\t72949,\n\t\t72949\n\t],\n\t\"./light/university.svg\": [\n\t\t771,\n\t\t771\n\t],\n\t\"./light/unlink.svg\": [\n\t\t52198,\n\t\t52198\n\t],\n\t\"./light/unlock-alt.svg\": [\n\t\t96730,\n\t\t96730\n\t],\n\t\"./light/unlock.svg\": [\n\t\t28079,\n\t\t28079\n\t],\n\t\"./light/upload.svg\": [\n\t\t58132,\n\t\t58132\n\t],\n\t\"./light/usb-drive.svg\": [\n\t\t33282,\n\t\t33282\n\t],\n\t\"./light/usd-circle.svg\": [\n\t\t43136,\n\t\t43136\n\t],\n\t\"./light/usd-square.svg\": [\n\t\t67841,\n\t\t67841\n\t],\n\t\"./light/user-alien.svg\": [\n\t\t41386,\n\t\t41386\n\t],\n\t\"./light/user-alt-slash.svg\": [\n\t\t12128,\n\t\t12128\n\t],\n\t\"./light/user-alt.svg\": [\n\t\t32459,\n\t\t32459\n\t],\n\t\"./light/user-astronaut.svg\": [\n\t\t34702,\n\t\t34702\n\t],\n\t\"./light/user-chart.svg\": [\n\t\t37059,\n\t\t37059\n\t],\n\t\"./light/user-check.svg\": [\n\t\t34021,\n\t\t34021\n\t],\n\t\"./light/user-circle.svg\": [\n\t\t32954,\n\t\t32954\n\t],\n\t\"./light/user-clock.svg\": [\n\t\t25962,\n\t\t25962\n\t],\n\t\"./light/user-cog.svg\": [\n\t\t88240,\n\t\t88240\n\t],\n\t\"./light/user-cowboy.svg\": [\n\t\t91074,\n\t\t91074\n\t],\n\t\"./light/user-crown.svg\": [\n\t\t57662,\n\t\t57662\n\t],\n\t\"./light/user-edit.svg\": [\n\t\t10309,\n\t\t10309\n\t],\n\t\"./light/user-friends.svg\": [\n\t\t64255,\n\t\t64255\n\t],\n\t\"./light/user-graduate.svg\": [\n\t\t89337,\n\t\t89337\n\t],\n\t\"./light/user-hard-hat.svg\": [\n\t\t37264,\n\t\t37264\n\t],\n\t\"./light/user-headset.svg\": [\n\t\t46298,\n\t\t46298\n\t],\n\t\"./light/user-injured.svg\": [\n\t\t37341,\n\t\t37341\n\t],\n\t\"./light/user-lock.svg\": [\n\t\t95040,\n\t\t95040\n\t],\n\t\"./light/user-md-chat.svg\": [\n\t\t22102,\n\t\t22102\n\t],\n\t\"./light/user-md.svg\": [\n\t\t48985,\n\t\t48985\n\t],\n\t\"./light/user-minus.svg\": [\n\t\t18866,\n\t\t18866\n\t],\n\t\"./light/user-music.svg\": [\n\t\t91181,\n\t\t91181\n\t],\n\t\"./light/user-ninja.svg\": [\n\t\t44557,\n\t\t44557\n\t],\n\t\"./light/user-nurse.svg\": [\n\t\t79521,\n\t\t79521\n\t],\n\t\"./light/user-plus.svg\": [\n\t\t88012,\n\t\t88012\n\t],\n\t\"./light/user-robot.svg\": [\n\t\t37741,\n\t\t37741\n\t],\n\t\"./light/user-secret.svg\": [\n\t\t15709,\n\t\t15709\n\t],\n\t\"./light/user-shield.svg\": [\n\t\t48496,\n\t\t48496\n\t],\n\t\"./light/user-slash.svg\": [\n\t\t41804,\n\t\t41804\n\t],\n\t\"./light/user-tag.svg\": [\n\t\t18125,\n\t\t18125\n\t],\n\t\"./light/user-tie.svg\": [\n\t\t39982,\n\t\t39982\n\t],\n\t\"./light/user-times.svg\": [\n\t\t91872,\n\t\t91872\n\t],\n\t\"./light/user-unlock.svg\": [\n\t\t27845,\n\t\t27845\n\t],\n\t\"./light/user-visor.svg\": [\n\t\t29889,\n\t\t29889\n\t],\n\t\"./light/user.svg\": [\n\t\t96369,\n\t\t96369\n\t],\n\t\"./light/users-class.svg\": [\n\t\t86824,\n\t\t86824\n\t],\n\t\"./light/users-cog.svg\": [\n\t\t7337,\n\t\t7337\n\t],\n\t\"./light/users-crown.svg\": [\n\t\t88276,\n\t\t88276\n\t],\n\t\"./light/users-medical.svg\": [\n\t\t96860,\n\t\t96860\n\t],\n\t\"./light/users-slash.svg\": [\n\t\t87646,\n\t\t87646\n\t],\n\t\"./light/users.svg\": [\n\t\t44468,\n\t\t44468\n\t],\n\t\"./light/utensil-fork.svg\": [\n\t\t10077,\n\t\t10077\n\t],\n\t\"./light/utensil-knife.svg\": [\n\t\t53100,\n\t\t53100\n\t],\n\t\"./light/utensil-spoon.svg\": [\n\t\t27105,\n\t\t27105\n\t],\n\t\"./light/utensils-alt.svg\": [\n\t\t69374,\n\t\t69374\n\t],\n\t\"./light/utensils.svg\": [\n\t\t60833,\n\t\t60833\n\t],\n\t\"./light/vacuum-robot.svg\": [\n\t\t19788,\n\t\t19788\n\t],\n\t\"./light/vacuum.svg\": [\n\t\t90073,\n\t\t90073\n\t],\n\t\"./light/value-absolute.svg\": [\n\t\t86738,\n\t\t86738\n\t],\n\t\"./light/vector-square.svg\": [\n\t\t19324,\n\t\t19324\n\t],\n\t\"./light/venus-double.svg\": [\n\t\t55473,\n\t\t55473\n\t],\n\t\"./light/venus-mars.svg\": [\n\t\t10390,\n\t\t10390\n\t],\n\t\"./light/venus.svg\": [\n\t\t76654,\n\t\t76654\n\t],\n\t\"./light/vhs.svg\": [\n\t\t92807,\n\t\t92807\n\t],\n\t\"./light/vial.svg\": [\n\t\t33794,\n\t\t89693\n\t],\n\t\"./light/vials.svg\": [\n\t\t52622,\n\t\t52622\n\t],\n\t\"./light/video-plus.svg\": [\n\t\t95220,\n\t\t95220\n\t],\n\t\"./light/video-slash.svg\": [\n\t\t26936,\n\t\t26936\n\t],\n\t\"./light/video.svg\": [\n\t\t23331,\n\t\t23331\n\t],\n\t\"./light/vihara.svg\": [\n\t\t34051,\n\t\t34051\n\t],\n\t\"./light/violin.svg\": [\n\t\t20254,\n\t\t20254\n\t],\n\t\"./light/virus-slash.svg\": [\n\t\t26187,\n\t\t26187\n\t],\n\t\"./light/virus.svg\": [\n\t\t94565,\n\t\t94565\n\t],\n\t\"./light/viruses.svg\": [\n\t\t83061,\n\t\t83061\n\t],\n\t\"./light/voicemail.svg\": [\n\t\t11783,\n\t\t11783\n\t],\n\t\"./light/volcano.svg\": [\n\t\t72176,\n\t\t72176\n\t],\n\t\"./light/volleyball-ball.svg\": [\n\t\t99926,\n\t\t99926\n\t],\n\t\"./light/volume-down.svg\": [\n\t\t34801,\n\t\t34801\n\t],\n\t\"./light/volume-mute.svg\": [\n\t\t43377,\n\t\t43377\n\t],\n\t\"./light/volume-off.svg\": [\n\t\t36104,\n\t\t36104\n\t],\n\t\"./light/volume-slash.svg\": [\n\t\t99540,\n\t\t99540\n\t],\n\t\"./light/volume-up.svg\": [\n\t\t73877,\n\t\t73877\n\t],\n\t\"./light/volume.svg\": [\n\t\t40653,\n\t\t40653\n\t],\n\t\"./light/vote-nay.svg\": [\n\t\t8135,\n\t\t8135\n\t],\n\t\"./light/vote-yea.svg\": [\n\t\t4616,\n\t\t4616\n\t],\n\t\"./light/vr-cardboard.svg\": [\n\t\t54456,\n\t\t54456\n\t],\n\t\"./light/wagon-covered.svg\": [\n\t\t86870,\n\t\t86870\n\t],\n\t\"./light/walker.svg\": [\n\t\t89296,\n\t\t89296\n\t],\n\t\"./light/walkie-talkie.svg\": [\n\t\t32356,\n\t\t32356\n\t],\n\t\"./light/walking.svg\": [\n\t\t59517,\n\t\t59517\n\t],\n\t\"./light/wallet.svg\": [\n\t\t49282,\n\t\t49282\n\t],\n\t\"./light/wand-magic.svg\": [\n\t\t17749,\n\t\t17749\n\t],\n\t\"./light/wand.svg\": [\n\t\t58732,\n\t\t58732\n\t],\n\t\"./light/warehouse-alt.svg\": [\n\t\t20144,\n\t\t20144\n\t],\n\t\"./light/warehouse.svg\": [\n\t\t24516,\n\t\t24516\n\t],\n\t\"./light/washer.svg\": [\n\t\t92174,\n\t\t92174\n\t],\n\t\"./light/watch-calculator.svg\": [\n\t\t94795,\n\t\t94795\n\t],\n\t\"./light/watch-fitness.svg\": [\n\t\t95743,\n\t\t95743\n\t],\n\t\"./light/watch.svg\": [\n\t\t88822,\n\t\t88822\n\t],\n\t\"./light/water-lower.svg\": [\n\t\t43998,\n\t\t43998\n\t],\n\t\"./light/water-rise.svg\": [\n\t\t97495,\n\t\t97495\n\t],\n\t\"./light/water.svg\": [\n\t\t86840,\n\t\t86840\n\t],\n\t\"./light/wave-sine.svg\": [\n\t\t86376,\n\t\t86376\n\t],\n\t\"./light/wave-square.svg\": [\n\t\t85691,\n\t\t85691\n\t],\n\t\"./light/wave-triangle.svg\": [\n\t\t75671,\n\t\t75671\n\t],\n\t\"./light/waveform-path.svg\": [\n\t\t44353,\n\t\t44353\n\t],\n\t\"./light/waveform.svg\": [\n\t\t3642,\n\t\t3642\n\t],\n\t\"./light/webcam-slash.svg\": [\n\t\t6310,\n\t\t6310\n\t],\n\t\"./light/webcam.svg\": [\n\t\t60559,\n\t\t60559\n\t],\n\t\"./light/weight-hanging.svg\": [\n\t\t81768,\n\t\t81768\n\t],\n\t\"./light/weight.svg\": [\n\t\t39711,\n\t\t39711\n\t],\n\t\"./light/whale.svg\": [\n\t\t69864,\n\t\t69864\n\t],\n\t\"./light/wheat.svg\": [\n\t\t48766,\n\t\t48766\n\t],\n\t\"./light/wheelchair.svg\": [\n\t\t946,\n\t\t946\n\t],\n\t\"./light/whistle.svg\": [\n\t\t61400,\n\t\t61400\n\t],\n\t\"./light/wifi-1.svg\": [\n\t\t55021,\n\t\t55021\n\t],\n\t\"./light/wifi-2.svg\": [\n\t\t71791,\n\t\t71791\n\t],\n\t\"./light/wifi-slash.svg\": [\n\t\t8581,\n\t\t8581\n\t],\n\t\"./light/wifi.svg\": [\n\t\t5158,\n\t\t5158\n\t],\n\t\"./light/wind-turbine.svg\": [\n\t\t82381,\n\t\t82381\n\t],\n\t\"./light/wind-warning.svg\": [\n\t\t30610,\n\t\t30610\n\t],\n\t\"./light/wind.svg\": [\n\t\t77570,\n\t\t77570\n\t],\n\t\"./light/window-alt.svg\": [\n\t\t1540,\n\t\t1540\n\t],\n\t\"./light/window-close.svg\": [\n\t\t79635,\n\t\t79635\n\t],\n\t\"./light/window-frame-open.svg\": [\n\t\t44427,\n\t\t44427\n\t],\n\t\"./light/window-frame.svg\": [\n\t\t83180,\n\t\t83180\n\t],\n\t\"./light/window-maximize.svg\": [\n\t\t46930,\n\t\t46930\n\t],\n\t\"./light/window-minimize.svg\": [\n\t\t91244,\n\t\t91244\n\t],\n\t\"./light/window-restore.svg\": [\n\t\t75544,\n\t\t75544\n\t],\n\t\"./light/window.svg\": [\n\t\t37645,\n\t\t37645\n\t],\n\t\"./light/windsock.svg\": [\n\t\t49478,\n\t\t49478\n\t],\n\t\"./light/wine-bottle.svg\": [\n\t\t61536,\n\t\t61536\n\t],\n\t\"./light/wine-glass-alt.svg\": [\n\t\t35967,\n\t\t35967\n\t],\n\t\"./light/wine-glass.svg\": [\n\t\t52582,\n\t\t52582\n\t],\n\t\"./light/won-sign.svg\": [\n\t\t26843,\n\t\t26843\n\t],\n\t\"./light/wreath.svg\": [\n\t\t87833,\n\t\t87833\n\t],\n\t\"./light/wrench.svg\": [\n\t\t73028,\n\t\t73028\n\t],\n\t\"./light/x-ray.svg\": [\n\t\t32447,\n\t\t32447\n\t],\n\t\"./light/yen-sign.svg\": [\n\t\t67552,\n\t\t67552\n\t],\n\t\"./light/yin-yang.svg\": [\n\t\t10037,\n\t\t10037\n\t],\n\t\"./logos/buyingJourney.svg\": [\n\t\t89620,\n\t\t89620\n\t],\n\t\"./logos/compliance.svg\": [\n\t\t98167,\n\t\t98167\n\t],\n\t\"./logos/contentDiscoverty.svg\": [\n\t\t89796,\n\t\t89796\n\t],\n\t\"./logos/createIconTube.svg\": [\n\t\t91978,\n\t\t91978\n\t],\n\t\"./logos/customerSupport.svg\": [\n\t\t62701,\n\t\t62701\n\t],\n\t\"./logos/groupPeopleTube.svg\": [\n\t\t95737,\n\t\t95737\n\t],\n\t\"./logos/hostKpoint.svg\": [\n\t\t11136,\n\t\t11136\n\t],\n\t\"./logos/knowledgeRetention.svg\": [\n\t\t48923,\n\t\t48923\n\t],\n\t\"./logos/learningPaths.svg\": [\n\t\t88301,\n\t\t88301\n\t],\n\t\"./logos/miniXpressoLogo.svg\": [\n\t\t12617,\n\t\t12617\n\t],\n\t\"./logos/onBoarding.svg\": [\n\t\t27393,\n\t\t27393\n\t],\n\t\"./logos/onboardingDigital.svg\": [\n\t\t10745,\n\t\t10745\n\t],\n\t\"./logos/organiseIcon.svg\": [\n\t\t51238,\n\t\t51238\n\t],\n\t\"./logos/personalize.svg\": [\n\t\t97249,\n\t\t97249\n\t],\n\t\"./logos/preOnBoardingtube.svg\": [\n\t\t9513,\n\t\t9513\n\t],\n\t\"./logos/shareIcon.svg\": [\n\t\t12796,\n\t\t12796\n\t],\n\t\"./logos/teamColabration.svg\": [\n\t\t59359,\n\t\t59359\n\t],\n\t\"./logos/tubeLogo.svg\": [\n\t\t22467,\n\t\t22467\n\t],\n\t\"./logos/xpressoLogo.svg\": [\n\t\t64272,\n\t\t64272\n\t],\n\t\"./logos/xpressoTextLogo.svg\": [\n\t\t91172,\n\t\t91172\n\t],\n\t\"./play/analytics.svg\": [\n\t\t79470,\n\t\t79470\n\t],\n\t\"./play/customerSupport.svg\": [\n\t\t6421,\n\t\t6421\n\t],\n\t\"./play/diyInteractivityBuilder.svg\": [\n\t\t79856,\n\t\t79856\n\t],\n\t\"./play/outcomeDrivenInteractivity.svg\": [\n\t\t90381,\n\t\t90381\n\t],\n\t\"./play/playLogo.svg\": [\n\t\t42590,\n\t\t42590\n\t],\n\t\"./play/publishVideosDirectly.svg\": [\n\t\t75923,\n\t\t75923\n\t],\n\t\"./play/upsellCrosssell.svg\": [\n\t\t86960,\n\t\t86960\n\t],\n\t\"./regular/file-lines.svg\": [\n\t\t27108,\n\t\t27108\n\t],\n\t\"./regular/file-magnifying-glass.svg\": [\n\t\t84831,\n\t\t84831\n\t],\n\t\"./regular/film.svg\": [\n\t\t73408,\n\t\t73408\n\t],\n\t\"./regular/globe.svg\": [\n\t\t57762,\n\t\t57762\n\t],\n\t\"./regular/magnifying-glass.svg\": [\n\t\t47422,\n\t\t47422\n\t],\n\t\"./solid/caret-down.svg\": [\n\t\t34015,\n\t\t34015\n\t],\n\t\"./solid/envelope.svg\": [\n\t\t66768,\n\t\t66768\n\t],\n\t\"./solid/info-circle.svg\": [\n\t\t58855,\n\t\t58855\n\t],\n\t\"./solid/play.svg\": [\n\t\t87373,\n\t\t87373\n\t],\n\t\"./tube/anyDevice.svg\": [\n\t\t11968,\n\t\t11968\n\t],\n\t\"./tube/everyVideoDetailedData.svg\": [\n\t\t8749,\n\t\t8749\n\t],\n\t\"./tube/yourdataYourControl.svg\": [\n\t\t53198,\n\t\t53198\n\t],\n\t\"./xpresso/collaborateAndPublish.svg\": [\n\t\t13404,\n\t\t13404\n\t],\n\t\"./xpresso/communication.svg\": [\n\t\t54789,\n\t\t54789\n\t],\n\t\"./xpresso/digitalCommunities.svg\": [\n\t\t18756,\n\t\t18756\n\t],\n\t\"./xpresso/easyEdit.svg\": [\n\t\t94091,\n\t\t94091\n\t],\n\t\"./xpresso/employeeDevelopment.svg\": [\n\t\t49634,\n\t\t49634\n\t],\n\t\"./xpresso/fieldForceConnect.svg\": [\n\t\t33599,\n\t\t33599\n\t],\n\t\"./xpresso/knowledge.svg\": [\n\t\t86917,\n\t\t86917\n\t],\n\t\"./xpresso/personalizedContentDiscovery.svg\": [\n\t\t24328,\n\t\t24328\n\t],\n\t\"./xpresso/techAdoption.svg\": [\n\t\t25942,\n\t\t25942\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn Promise.all(ids.slice(1).map(__webpack_require__.e)).then(function() {\n\t\treturn __webpack_require__.t(id, 7 | 16);\n\t});\n}\nwebpackAsyncContext.keys = function() { return Object.keys(map); };\nwebpackAsyncContext.id = 40531;\nmodule.exports = webpackAsyncContext;","function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}\nmodule.exports = _assertThisInitialized, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var toPropertyKey = require(\"./toPropertyKey.js\");\nfunction _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nmodule.exports = _defineProperty, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var setPrototypeOf = require(\"./setPrototypeOf.js\");\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n setPrototypeOf(subClass, superClass);\n}\nmodule.exports = _inheritsLoose, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\nmodule.exports = _objectWithoutPropertiesLoose, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _setPrototypeOf(o, p) {\n module.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _setPrototypeOf(o, p);\n}\nmodule.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nmodule.exports = toPrimitive, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nvar toPrimitive = require(\"./toPrimitive.js\");\nfunction toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : String(i);\n}\nmodule.exports = toPropertyKey, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return (module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _typeof(o);\n}\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nconst PartytownSnippet = \"/* Partytown 0.7.6 - MIT builder.io */\\n!function(t,e,n,i,r,o,a,d,s,c,p,l){function u(){l||(l=1,\\\"/\\\"==(a=(o.lib||\\\"/~partytown/\\\")+(o.debug?\\\"debug/\\\":\\\"\\\"))[0]&&(s=e.querySelectorAll('script[type=\\\"text/partytown\\\"]'),i!=t?i.dispatchEvent(new CustomEvent(\\\"pt1\\\",{detail:t})):(d=setTimeout(f,1e4),e.addEventListener(\\\"pt0\\\",w),r?h(1):n.serviceWorker?n.serviceWorker.register(a+(o.swPath||\\\"partytown-sw.js\\\"),{scope:a}).then((function(t){t.active?h():t.installing&&t.installing.addEventListener(\\\"statechange\\\",(function(t){\\\"activated\\\"==t.target.state&&h()}))}),console.error):f())))}function h(t){c=e.createElement(t?\\\"script\\\":\\\"iframe\\\"),t||(c.setAttribute(\\\"style\\\",\\\"display:block;width:0;height:0;border:0;visibility:hidden\\\"),c.setAttribute(\\\"aria-hidden\\\",!0)),c.src=a+\\\"partytown-\\\"+(t?\\\"atomics.js?v=0.7.6\\\":\\\"sandbox-sw.html?\\\"+Date.now()),e.body.appendChild(c)}function f(n,r){for(w(),i==t&&(o.forward||[]).map((function(e){delete t[e.split(\\\".\\\")[0]]})),n=0;n<s.length;n++)(r=e.createElement(\\\"script\\\")).innerHTML=s[n].innerHTML,e.head.appendChild(r);c&&c.parentNode.removeChild(c)}function w(){clearTimeout(d)}o=t.partytown||{},i==t&&(o.forward||[]).map((function(e){p=t,e.split(\\\".\\\").map((function(e,n,i){p=p[i[n]]=n+1<i.length?\\\"push\\\"==i[n+1]?[]:p[i[n]]||{}:function(){(t._ptf=t._ptf||[]).push(i,arguments)}}))})),\\\"complete\\\"==e.readyState?u():(t.addEventListener(\\\"DOMContentLoaded\\\",u),t.addEventListener(\\\"load\\\",u))}(window,document,navigator,top,window.crossOriginIsolated);\";\n\nconst createSnippet = (config, snippetCode) => {\n const { forward = [], ...filteredConfig } = config || {};\n const configStr = JSON.stringify(filteredConfig, (k, v) => {\n if (typeof v === 'function') {\n v = String(v);\n if (v.startsWith(k + '(')) {\n v = 'function ' + v;\n }\n }\n return v;\n });\n return [\n `!(function(w,p,f,c){`,\n Object.keys(filteredConfig).length > 0\n ? `c=w[p]=Object.assign(w[p]||{},${configStr});`\n : `c=w[p]=w[p]||{};`,\n `c[f]=(c[f]||[])`,\n forward.length > 0 ? `.concat(${JSON.stringify(forward)})` : ``,\n `})(window,'partytown','forward');`,\n snippetCode,\n ].join('');\n};\n\n/**\n * The `type` attribute for Partytown scripts, which does two things:\n *\n * 1. Prevents the `<script>` from executing on the main thread.\n * 2. Is used as a selector so the Partytown library can find all scripts to execute in a web worker.\n *\n * @public\n */\nconst SCRIPT_TYPE = `text/partytown`;\n\n/**\n * Function that returns the Partytown snippet as a string, which can be\n * used as the innerHTML of the inlined Partytown script in the head.\n *\n * @public\n */\nconst partytownSnippet = (config) => createSnippet(config, PartytownSnippet);\n\nexports.SCRIPT_TYPE = SCRIPT_TYPE;\nexports.partytownSnippet = partytownSnippet;\n","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n setPrototypeOf(subClass, superClass);\n}","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import*as e from\"react\";import t from\"react\";import r from\"prop-types\";import n from\"invariant\";function o(){return o=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},o.apply(this,arguments)}function a(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)t.indexOf(r=a[n])>=0||(o[r]=e[r]);return o}const s=e=>{const{search:t,hash:r,href:n,origin:o,protocol:a,host:s,hostname:i,port:c}=e.location;let{pathname:l}=e.location;return!l&&n&&u&&(l=new URL(n).pathname),{pathname:encodeURI(decodeURI(l)),search:t,hash:r,href:n,origin:o,protocol:a,host:s,hostname:i,port:c,state:e.history.state,key:e.history.state&&e.history.state.key||\"initial\"}},i=(e,t)=>{let r=[],n=s(e),a=!1,i=()=>{};return{get location(){return n},get transitioning(){return a},_onTransitionComplete(){a=!1,i()},listen(t){r.push(t);const o=()=>{n=s(e),t({location:n,action:\"POP\"})};return e.addEventListener(\"popstate\",o),()=>{e.removeEventListener(\"popstate\",o),r=r.filter(e=>e!==t)}},navigate(t,{state:c,replace:u=!1}={}){if(\"number\"==typeof t)e.history.go(t);else{c=o({},c,{key:Date.now()+\"\"});try{a||u?e.history.replaceState(c,null,t):e.history.pushState(c,null,t)}catch(r){e.location[u?\"replace\":\"assign\"](t)}}n=s(e),a=!0;const l=new Promise(e=>i=e);return r.forEach(e=>e({location:n,action:\"PUSH\"})),l}}},c=(e=\"/\")=>{const t=e.indexOf(\"?\"),r={pathname:t>-1?e.substr(0,t):e,search:t>-1?e.substr(t):\"\"};let n=0;const o=[r],a=[null];return{get location(){return o[n]},addEventListener(e,t){},removeEventListener(e,t){},history:{get entries(){return o},get index(){return n},get state(){return a[n]},pushState(e,t,r){const[s,i=\"\"]=r.split(\"?\");n++,o.push({pathname:s,search:i.length?`?${i}`:i}),a.push(e)},replaceState(e,t,r){const[s,i=\"\"]=r.split(\"?\");o[n]={pathname:s,search:i},a[n]=e},go(e){const t=n+e;t<0||t>a.length-1||(n=t)}}}},u=!(\"undefined\"==typeof window||!window.document||!window.document.createElement),l=i(u?window:c()),{navigate:p}=l;function h(e,r){return t.createServerContext?((e,r=null)=>(globalThis.__SERVER_CONTEXT||(globalThis.__SERVER_CONTEXT={}),globalThis.__SERVER_CONTEXT[e]||(globalThis.__SERVER_CONTEXT[e]=t.createServerContext(e,r)),globalThis.__SERVER_CONTEXT[e]))(e,r):t.createContext(r)}const m=h(\"Base\",{baseuri:\"/\",basepath:\"/\"}),d=h(\"Location\"),f=()=>e.useContext(m),y=()=>e.useContext(d);function E(e){this.uri=e}const g=e=>e instanceof E,v=e=>{throw new E(e)};function b(t){const{to:r,replace:n=!0,state:o,noThrow:a,baseuri:s}=t;e.useEffect(()=>{Promise.resolve().then(()=>{const e=k(r,s);p(P(e,t),{replace:n,state:o})})},[]);const i=k(r,s);return a||v(P(i,t)),null}const R=t=>{const r=y(),{baseuri:n}=f();/*#__PURE__*/return e.createElement(b,o({},r,{baseuri:n},t))};R.propTypes={from:r.string,to:r.string.isRequired};const C=(e,t)=>e.substr(0,t.length)===t,w=(e,t)=>{let r,o;const[a]=t.split(\"?\"),s=N(a),i=\"\"===s[0],c=j(e);for(let e=0,a=c.length;e<a;e++){let a=!1;const u=c[e].route;if(u.default){o={route:u,params:{},uri:t};continue}const l=N(u.path),p={},h=Math.max(s.length,l.length);let m=0;for(;m<h;m++){const e=l[m],t=s[m];if($(e)){p[e.slice(1)||\"*\"]=s.slice(m).map(decodeURIComponent).join(\"/\");break}if(void 0===t){a=!0;break}const r=O.exec(e);if(r&&!i){const e=-1===U.indexOf(r[1]);n(e,`<Router> dynamic segment \"${r[1]}\" is a reserved name. Please use a different name in path \"${u.path}\".`);const o=decodeURIComponent(t);p[r[1]]=o}else if(e!==t){a=!0;break}}if(!a){r={route:u,params:p,uri:\"/\"+s.slice(0,m).join(\"/\")};break}}return r||o||null},x=(e,t)=>w([{path:e}],t),k=(e,t)=>{if(C(e,\"/\"))return e;const[r,n]=e.split(\"?\"),[o]=t.split(\"?\"),a=N(r),s=N(o);if(\"\"===a[0])return L(o,n);if(!C(a[0],\".\")){const e=s.concat(a).join(\"/\");return L((\"/\"===o?\"\":\"/\")+e,n)}const i=s.concat(a),c=[];for(let e=0,t=i.length;e<t;e++){const t=i[e];\"..\"===t?c.pop():\".\"!==t&&c.push(t)}return L(\"/\"+c.join(\"/\"),n)},P=(e,t)=>{const[r,n=\"\"]=e.split(\"?\");let o=\"/\"+N(r).map(e=>{const r=O.exec(e);return r?t[r[1]]:e}).join(\"/\");const{location:{search:a=\"\"}={}}=t,s=a.split(\"?\")[1]||\"\";return o=L(o,n,s),o},T=(e,t)=>{const r=e=>_(e);return N(e).filter(r).sort().join(\"/\")===N(t).filter(r).sort().join(\"/\")},O=/^:(.+)/,_=e=>O.test(e),$=e=>e&&\"*\"===e[0],S=(e,t)=>({route:e,score:e.default?0:N(e.path).reduce((e,t)=>(e+=4,(e=>\"\"===e)(t)?e+=1:_(t)?e+=2:$(t)?e-=5:e+=3,e),0),index:t}),j=e=>e.map(S).sort((e,t)=>e.score<t.score?1:e.score>t.score?-1:e.index-t.index),N=e=>e.replace(/(^\\/+|\\/+$)/g,\"\").split(\"/\"),L=(e,...t)=>e+((t=t.filter(e=>e&&e.length>0))&&t.length>0?`?${t.join(\"&\")}`:\"\"),U=[\"uri\",\"path\"],D=(e,t)=>{const r=Object.keys(e);return r.length===Object.keys(t).length&&r.every(r=>t.hasOwnProperty(r)&&e[r]===t[r])},M=e=>e.replace(/(^\\/+|\\/+$)/g,\"\"),I=t=>r=>{if(!r)return null;if(r.type===e.Fragment&&r.props.children)return e.Children.map(r.props.children,I(t));if(n(r.props.path||r.props.default||r.type===R,`<Router>: Children of <Router> must have a \\`path\\` or \\`default\\` prop, or be a \\`<Redirect>\\`. None found on element type \\`${r.type}\\``),n(!!(r.type!==R||r.props.from&&r.props.to),`<Redirect from=\"${r.props.from}\" to=\"${r.props.to}\"/> requires both \"from\" and \"to\" props when inside a <Router>.`),n(!(r.type===R&&!T(r.props.from,r.props.to)),`<Redirect from=\"${r.props.from} to=\"${r.props.to}\"/> has mismatched dynamic segments, ensure both paths have the exact same dynamic segments.`),r.props.default)return{value:r,default:!0};const o=r.type===R?r.props.from:r.props.path,a=\"/\"===o?t:`${M(t)}/${M(o)}`;return{value:r,default:r.props.default,path:r.props.children?`${M(a)}/*`:a}},V=[\"innerRef\"],q=[\"to\",\"state\",\"replace\",\"getProps\"],X=[\"key\"];let{forwardRef:B}=e;void 0===B&&(B=e=>e);const K=()=>{},A=B((t,r)=>{let{innerRef:n}=t,s=a(t,V);const{baseuri:i}=f(),{location:c}=y(),{to:u,state:l,replace:h,getProps:m=K}=s,d=a(s,q),E=k(u,i),g=encodeURI(E),v=c.pathname===g,b=C(c.pathname,g);/*#__PURE__*/return e.createElement(\"a\",o({ref:r||n,\"aria-current\":v?\"page\":void 0},d,m({isCurrent:v,isPartiallyCurrent:b,href:E,location:c}),{href:E,onClick:e=>{if(d.onClick&&d.onClick(e),(e=>!e.defaultPrevented&&0===e.button&&!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey))(e)){e.preventDefault();let t=h;if(\"boolean\"!=typeof h&&v){const e=a(o({},c.state),X);t=D(o({},l),e)}p(E,{state:l,replace:t})}}}))});A.displayName=\"Link\",A.propTypes={to:r.string.isRequired};class F extends e.Component{constructor(...e){super(...e),this.displayName=\"ReactUseErrorBoundary\"}componentDidCatch(...e){this.setState({}),this.props.onError(...e)}render(){return this.props.children}}const W=e.createContext({componentDidCatch:{current:void 0},error:void 0,setError:()=>!1});function H({children:t}){const[r,n]=e.useState(),o=e.useRef(),a=e.useMemo(()=>({componentDidCatch:o,error:r,setError:n}),[r]);/*#__PURE__*/return e.createElement(W.Provider,{value:a},/*#__PURE__*/e.createElement(F,{error:r,onError:(e,t)=>{n(e),null==o.current||o.current(e,t)}},t))}H.displayName=\"ReactUseErrorBoundaryContext\";const z=function(t){var r,n;function a(r){/*#__PURE__*/return e.createElement(H,null,/*#__PURE__*/e.createElement(t,o({key:\"WrappedComponent\"},r)))}return a.displayName=`WithErrorBoundary(${null!=(r=null!=(n=t.displayName)?n:t.name)?r:\"Component\"})`,a}(({history:t=l,children:r})=>{const{location:n}=t,[o,a]=e.useState({location:n}),[s]=function(t){const r=e.useContext(W);r.componentDidCatch.current=void 0;const n=e.useCallback(()=>{r.setError(void 0)},[]);return[r.error,n]}();if(e.useEffect(()=>{t._onTransitionComplete()},[o.location]),e.useEffect(()=>{let e=!1;const r=t.listen(({location:t})=>{Promise.resolve().then(()=>{requestAnimationFrame(()=>{e||a({location:t})})})});return()=>{e=!0,r()}},[]),s){if(!g(s))throw s;p(s.uri,{replace:!0})}/*#__PURE__*/return e.createElement(d.Provider,{value:o},\"function\"==typeof r?r(o):r||null)}),G=({children:t})=>{const r=y();return r?t(r):/*#__PURE__*/e.createElement(z,null,t)},J=({url:t,children:r})=>{const n=t.indexOf(\"?\");let o,a=\"\";return n>-1?(o=t.substring(0,n),a=t.substring(n)):o=t,/*#__PURE__*/e.createElement(d.Provider,{value:{location:{pathname:o,search:a,hash:\"\"}}},r)},Q=({path:e,children:t})=>{const{baseuri:r}=f(),{location:n}=y(),a=k(e,r),s=x(a,n.pathname);return t({location:n,match:s?o({},s.params,{uri:s.uri,path:e}):null})},Y=[\"uri\",\"location\",\"component\"],Z=[\"children\",\"style\",\"component\",\"uri\",\"location\"],ee=t=>{let{uri:r,location:n,component:s}=t,i=a(t,Y);/*#__PURE__*/return e.createElement(re,o({},i,{component:s,uri:r,location:n}))};let te=0;const re=t=>{let{children:r,style:n,component:s=\"div\",uri:i,location:c}=t,u=a(t,Z);const l=e.useRef(),p=e.useRef(!0),h=e.useRef(i),m=e.useRef(c.pathname),d=e.useRef(!1);e.useEffect(()=>(te++,f(),()=>{te--,0===te&&(p.current=!0)}),[]),e.useEffect(()=>{let e=!1,t=!1;i!==h.current&&(h.current=i,e=!0),c.pathname!==m.current&&(m.current=c.pathname,t=!0),d.current=e||t&&c.pathname===i,d.current&&f()},[i,c]);const f=e.useCallback(()=>{var e;\"test\"!==process.env.NODE_ENV&&(p.current?p.current=!1:(e=l.current,d.current&&e&&e.focus()))},[]);/*#__PURE__*/return e.createElement(s,o({style:o({outline:\"none\"},n),tabIndex:\"-1\",ref:l},u),r)},ne=[\"location\",\"primary\",\"children\",\"basepath\",\"baseuri\",\"component\"],oe=t=>{const r=f(),n=y();/*#__PURE__*/return e.createElement(ae,o({},r,n,t))};function ae(t){const{location:r,primary:n=!0,children:s,basepath:i,component:c=\"div\"}=t,u=a(t,ne),l=e.Children.toArray(s).reduce((e,t)=>{const r=I(i)(t);return e.concat(r)},[]),{pathname:p}=r,h=w(l,p);if(h){const{params:t,uri:a,route:s,route:{value:l}}=h,p=s.default?i:s.path.replace(/\\*$/,\"\"),d=o({},t,{uri:a,location:r}),f=e.cloneElement(l,d,l.props.children?/*#__PURE__*/e.createElement(oe,{location:r,primary:n},l.props.children):void 0),y=n?ee:c,E=n?o({uri:a,location:r,component:c},u):u;/*#__PURE__*/return e.createElement(m.Provider,{value:{baseuri:a,basepath:p}},/*#__PURE__*/e.createElement(y,E,f))}return null}const se=()=>{const e=y();if(!e)throw new Error(\"useLocation hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router\");return e.location},ie=()=>{throw new Error(\"useNavigate is removed. Use import { navigate } from 'gatsby' instead\")},ce=()=>{const e=f();if(!e)throw new Error(\"useParams hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router\");const t=se(),r=x(e.basepath,t.pathname);return r?r.params:null},ue=e=>{if(!e)throw new Error(\"useMatch(path: string) requires an argument of a string to match against\");const t=f();if(!t)throw new Error(\"useMatch hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router\");const r=se(),n=k(e,t.baseuri),a=x(n,r.pathname);return a?o({},a.params,{uri:a.uri,path:e}):null};export{m as BaseContext,A as Link,G as Location,d as LocationContext,z as LocationProvider,Q as Match,R as Redirect,oe as Router,J as ServerLocation,i as createHistory,c as createMemorySource,l as globalHistory,P as insertParams,g as isRedirect,x as match,p as navigate,w as pick,v as redirectTo,k as resolve,D as shallowCompare,C as startsWith,f as useBaseContext,se as useLocation,y as useLocationContext,ue as useMatch,ie as useNavigate,ce as useParams,T as validateRedirect};\n//# sourceMappingURL=index.modern.mjs.map\n","\"use client\"\nimport t from\"prop-types\";import e from\"react\";import{resolve as n,Location as r,Link as o}from\"@gatsbyjs/reach-router\";import{applyTrailingSlashOption as s}from\"gatsby-page-utils/apply-trailing-slash-option\";function i(){return i=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},i.apply(this,arguments)}function a(t){let e=t||\"/\",n=\"\",r=\"\";const o=e.indexOf(\"#\");-1!==o&&(r=e.slice(o),e=e.slice(0,o));const s=e.indexOf(\"?\");return-1!==s&&(n=e.slice(s),e=e.slice(0,s)),{pathname:e,search:\"?\"===n?\"\":n,hash:\"#\"===r?\"\":r}}const c=/^[a-zA-Z][a-zA-Z\\d+\\-.]*?:/,l=t=>{if(\"string\"==typeof t)return!(t=>c.test(t))(t)},p=()=>\"production\"!==process.env.NODE_ENV?\"undefined\"!=typeof __BASE_PATH__?__BASE_PATH__:void 0:__BASE_PATH__,h=()=>\"production\"!==process.env.NODE_ENV?\"undefined\"!=typeof __PATH_PREFIX__?__PATH_PREFIX__:void 0:__PATH_PREFIX__;function f(t,e=p()){var n;if(!l(t))return t;if(t.startsWith(\"./\")||t.startsWith(\"../\"))return t;const r=null!=(n=null!=e?e:h())?n:\"/\";return`${null!=r&&r.endsWith(\"/\")?r.slice(0,-1):r}${t.startsWith(\"/\")?t:`/${t}`}`}const u=t=>null==t?void 0:t.startsWith(\"/\"),_=()=>\"undefined\"!=typeof __TRAILING_SLASH__?__TRAILING_SLASH__:void 0;function d(t,e){const{pathname:n,search:r,hash:o}=a(t);return`${s(n,e)}${r}${o}`}const m=(t,e)=>\"number\"==typeof t?t:l(t)?u(t)?function(t){const e=f(t),n=_();return\"always\"===n||\"never\"===n?d(e,n):e}(t):function(t,e){if(u(t))return t;const r=_(),o=n(t,e);return\"always\"===r||\"never\"===r?d(o,r):o}(t,e):t,y=[\"to\",\"getProps\",\"onClick\",\"onMouseEnter\",\"activeClassName\",\"activeStyle\",\"innerRef\",\"partiallyActive\",\"state\",\"replace\",\"_location\"];function v(t){return f(t,h())}const b={activeClassName:t.string,activeStyle:t.object,partiallyActive:t.bool};function w(t){/*#__PURE__*/return e.createElement(r,null,({location:n})=>/*#__PURE__*/e.createElement(P,i({},t,{_location:n})))}class P extends e.Component{constructor(t){super(t),this.defaultGetProps=({isPartiallyCurrent:t,isCurrent:e})=>(this.props.partiallyActive?t:e)?{className:[this.props.className,this.props.activeClassName].filter(Boolean).join(\" \"),style:i({},this.props.style,this.props.activeStyle)}:null;let e=!1;\"undefined\"!=typeof window&&window.IntersectionObserver&&(e=!0),this.state={IOSupported:e},this.abortPrefetch=null,this.handleRef=this.handleRef.bind(this)}_prefetch(){let t=window.location.pathname+window.location.search;this.props._location&&this.props._location.pathname&&(t=this.props._location.pathname+this.props._location.search);const e=a(m(this.props.to,t)),n=e.pathname+e.search;if(t!==n)return ___loader.enqueue(n)}componentWillUnmount(){if(!this.io)return;const{instance:t,el:e}=this.io;this.abortPrefetch&&this.abortPrefetch.abort(),t.unobserve(e),t.disconnect()}handleRef(t){this.props.innerRef&&Object.prototype.hasOwnProperty.call(this.props.innerRef,\"current\")?this.props.innerRef.current=t:this.props.innerRef&&this.props.innerRef(t),this.state.IOSupported&&t&&(this.io=((t,e)=>{const n=new window.IntersectionObserver(n=>{n.forEach(n=>{t===n.target&&e(n.isIntersecting||n.intersectionRatio>0)})});return n.observe(t),{instance:n,el:t}})(t,t=>{t?this.abortPrefetch=this._prefetch():this.abortPrefetch&&this.abortPrefetch.abort()}))}render(){const t=this.props,{to:n,getProps:r=this.defaultGetProps,onClick:s,onMouseEnter:c,state:p,replace:h,_location:f}=t,u=function(t,e){if(null==t)return{};var n,r,o={},s=Object.keys(t);for(r=0;r<s.length;r++)e.indexOf(n=s[r])>=0||(o[n]=t[n]);return o}(t,y);\"production\"===process.env.NODE_ENV||l(n)||console.warn(`External link ${n} was detected in a Link component. Use the Link component only for internal links. See: https://gatsby.dev/internal-links`);const _=m(n,f.pathname);return l(_)?/*#__PURE__*/e.createElement(o,i({to:_,state:p,getProps:r,innerRef:this.handleRef,onMouseEnter:t=>{c&&c(t);const e=a(_);___loader.hovering(e.pathname+e.search)},onClick:t=>{if(s&&s(t),!(0!==t.button||this.props.target||t.defaultPrevented||t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)){t.preventDefault();let e=h;const n=encodeURI(_)===f.pathname;\"boolean\"!=typeof h&&n&&(e=!0),window.___navigate(_,{state:p,replace:e})}return!0}},u)):/*#__PURE__*/e.createElement(\"a\",i({href:_},u))}}P.propTypes=i({},b,{onClick:t.func,to:t.string.isRequired,replace:t.bool,state:t.object});const E=e.forwardRef((t,n)=>/*#__PURE__*/e.createElement(w,i({innerRef:n},t))),g=(t,e)=>{window.___navigate(m(t,window.location.pathname),e)};export{E as Link,g as navigate,a as parsePath,v as withAssetPrefix,f as withPrefix};\n//# sourceMappingURL=index.modern.mjs.map\n","\"use client\"\nimport t,{useEffect as e}from\"react\";import{Location as n,useLocation as r}from\"@gatsbyjs/reach-router\";function o(){return o=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},o.apply(this,arguments)}const a=new Map,l={get:t=>a.get(t)||[],set(t,e){const n=a.get(t)||[];n.push(e),a.set(t,n)},delete(t){a.delete(t)}},s=\"undefined\"!=typeof self&&self.requestIdleCallback&&self.requestIdleCallback.bind(window)||function(t){const e=Date.now();return setTimeout(function(){t({didTimeout:!1,timeRemaining:function(){return Math.max(0,50-(Date.now()-e))}})},1)};var c;!function(t){t.postHydrate=\"post-hydrate\",t.idle=\"idle\",t.offMainThread=\"off-main-thread\"}(c||(c={}));const i=new Set([\"src\",\"strategy\",\"dangerouslySetInnerHTML\",\"children\",\"onLoad\",\"onError\"]),u=new Set,d=new Map;function f(e){/*#__PURE__*/return t.createElement(n,null,()=>/*#__PURE__*/t.createElement(p,e))}function p(n){const{src:a,strategy:i=c.postHydrate}=n||{},{pathname:u}=r();if(e(()=>{let t;switch(i){case c.postHydrate:t=y(n);break;case c.idle:s(()=>{t=y(n)});break;case c.offMainThread:{const t=b(n);l.set(u,t)}}return()=>{const{script:e,loadCallback:n,errorCallback:r}=t||{};n&&(null==e||e.removeEventListener(\"load\",n)),r&&(null==e||e.removeEventListener(\"error\",r)),null==e||e.remove()}},[]),i===c.offMainThread){const e=m(n),r=b(n);return\"undefined\"==typeof window&&l.set(u,r),/*#__PURE__*/t.createElement(\"script\",e?o({type:\"text/partytown\",\"data-strategy\":i,crossOrigin:\"anonymous\"},r,{dangerouslySetInnerHTML:{__html:m(n)}}):o({type:\"text/partytown\",src:h(a),\"data-strategy\":i,crossOrigin:\"anonymous\"},r))}return null}function y(t){const{id:e,src:n,strategy:r=c.postHydrate,onLoad:a,onError:l}=t||{},s=e||n,i=[\"load\",\"error\"],f={load:a,error:l};if(s){for(const t of i)if(null!=f&&f[t]){var p;const e=d.get(s)||{},{callbacks:n=[]}=(null==e?void 0:e[t])||{};var y,h;n.push(null==f?void 0:f[t]),null!=e&&null!=(p=e[t])&&p.event?null==f||null==(y=f[t])||y.call(f,null==e||null==(h=e[t])?void 0:h.event):d.set(s,o({},e,{[t]:{callbacks:n}}))}if(u.has(s))return null}const v=m(t),k=b(t),w=document.createElement(\"script\");e&&(w.id=e),w.dataset.strategy=r;for(const[t,e]of Object.entries(k))w.setAttribute(t,e);v&&(w.textContent=v),n&&(w.src=n);const C={};if(s){for(const t of i){const e=e=>g(e,s,t);w.addEventListener(t,e),C[`${t}Callback`]=e}u.add(s)}return document.body.appendChild(w),{script:w,loadCallback:C.loadCallback,errorCallback:C.errorCallback}}function m(t){const{dangerouslySetInnerHTML:e,children:n=\"\"}=t||{},{__html:r=\"\"}=e||{};return r||n}function b(t){const e={};for(const[n,r]of Object.entries(t))i.has(n)||(e[n]=r);return e}function h(t){if(t)return`/__third-party-proxy?url=${encodeURIComponent(t)}`}function g(t,e,n){const r=d.get(e)||{};for(const e of(null==r||null==(o=r[n])?void 0:o.callbacks)||[]){var o;e(t)}d.set(e,{[n]:{event:t}})}export{f as Script,c as ScriptStrategy,l as collectedScriptsByPage,u as scriptCache,d as scriptCallbackCache};\n//# sourceMappingURL=index.modern.mjs.map\n"],"names":["UPPERCASE","LOWERCASE","LEADING_CAPITAL","IDENTIFIER","SEPARATORS","LEADING_SEPARATORS","RegExp","source","SEPARATORS_AND_IDENTIFIER","NUMBERS_AND_IDENTIFIER","camelCase","input","options","Array","isArray","TypeError","pascalCase","preserveConsecutiveUppercase","map","x","trim","filter","length","join","toLowerCase","locale","string","toLocaleLowerCase","toUpperCase","toLocaleUpperCase","isLastCharLower","isLastCharUpper","isLastLastCharUpper","i","character","test","slice","preserveCamelCase","replace","lastIndex","m1","charAt","_","identifier","m","postProcess","module","exports","suffixes","option","hasTrailingSlash","endsWith","suffix","endsWithSuffixes","_scrollHandler","ScrollHandler","_useScrollRestoration","useScrollRestoration","_interopRequireDefault","__esModule","ScrollContext","_assertThisInitialized2","_inheritsLoose2","React","obj","nodeInterop","default","cache","_getRequireWildcardCache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_interopRequireWildcard","_propTypes","_sessionStorage","WeakMap","cacheBabelInterop","cacheNodeInterop","createContext","SessionStorage","displayName","_React$Component","_this","_len","arguments","args","_key","apply","this","concat","_stateStorage","_isTicking","_latestKnownScrollY","scrollListener","window","scrollY","requestAnimationFrame","_saveScroll","bind","windowScroll","position","prevProps","shouldUpdateScroll","props","scrollTo","scrollToHash","hash","node","document","getElementById","substring","scrollIntoView","prevRouterProps","routerProps","_proto","location","save","componentDidMount","scrollPosition","addEventListener","_this$props$location","read","decodeURI","undefined","componentWillUnmount","removeEventListener","componentDidUpdate","_this$props$location2","render","createElement","Provider","value","children","Component","propTypes","func","element","isRequired","object","GATSBY_ROUTER_SCROLL_STATE","stateKey","getStateKey","sessionStorage","getItem","JSON","parse","e","storedValue","stringify","setItem","stateKeyBase","pathname","_reachRouter","useLocation","state","_react","useContext","ref","useRef","useLayoutEffect","current","onScroll","scrollTop","onInitialClientRender","getForwards","collectedScripts","flatMap","script","forward","injectPartytownSnippet","existingSnippet","querySelector","existingSandbox","remove","forwards","_getForwards","snippet","dataset","partytown","innerHTML","_integration","partytownSnippet","head","appendChild","components","component---src-pages-404-index-js","component---src-pages-about-index-js","component---src-pages-ai-at-kpoint-index-js","component---src-pages-author-index-js","component---src-pages-careers-details-index-js","component---src-pages-careers-index-js","component---src-pages-compliance-index-js","component---src-pages-contact-us-index-js","component---src-pages-content-center-index-js","component---src-pages-embed-index-js","component---src-pages-events-iisa-2025-index-js","component---src-pages-events-index-js","component---src-pages-forms-getfab-index-js","component---src-pages-home-index-js","component---src-pages-index-js","component---src-pages-manish-connect-index-jsx","component---src-pages-manish-index-js","component---src-pages-page-2-js","component---src-pages-platform-index-js","component---src-pages-privacy-policy-index-js","component---src-pages-products-index-js","component---src-pages-products-koel-index-js","component---src-pages-products-play-index-js","component---src-pages-products-tube-index-js","component---src-pages-products-xpresso-index-js","component---src-pages-resources-blogs-details-index-js","component---src-pages-resources-blogs-index-js","component---src-pages-resources-casestudy-details-index-js","component---src-pages-resources-casestudy-index-js","component---src-pages-resources-index-js","component---src-pages-resources-kpoint-now-details-index-js","component---src-pages-resources-kpoint-now-index-js","component---src-pages-resources-miscvideos-index-js","component---src-pages-swayam-demo-cta-section-jsx","component---src-pages-swayam-demo-feature-details-jsx","component---src-pages-swayam-demo-feature-sections-jsx","component---src-pages-swayam-demo-hero-sections-jsx","component---src-pages-swayam-demo-index-jsx","component---src-pages-terms-of-use-index-js","component---src-pages-usecases-index-js","component---src-pages-using-ssr-js","component---src-pages-using-typescript-tsx","component---src-templates-using-dsg-js","plugin","require","plugins","getResourceURLsForPathname","loadPage","loadPageSync","api","defaultReturn","argTransform","results","result","reduce","previous","next","then","Promise","resolve","all","create","on","type","handler","push","off","splice","indexOf","emit","evt","mitt","pathAndSearch","path","search","split","pathCache","Map","matchPaths","trimPathname","rawPathname","newRawPathname","qs","encodeURIComponent","decodeURIComponent","stripPrefix","__BASE_PATH__","absolutify","startsWith","URL","href","setMatchPaths","findMatchPath","trimmedPathname","cleanPath","pickPaths","_ref","matchPath","originalPath","pick","normalizePagePath","route","grabMatchParams","_ref2","params","findPath","redirect","maybeGetBrowserRedirect","toPath","foundPath","_getPrototypeOf","o","setPrototypeOf","getPrototypeOf","__proto__","_isNativeReflectConstruct","t","Boolean","valueOf","Reflect","construct","_wrapNativeSuper","Class","_cache","fn","Function","toString","Wrapper","r","p","constructor","enumerable","writable","configurable","ServerSliceRenderer","sliceId","contents","id","ServerSlice","sliceName","allowEmpty","sliceProps","slicesMap","SlicesMapContext","slicesProps","SlicesPropsContext","concreteSliceName","Error","getSliceId","keys","createContentDigest","sliceUsage","hasChildren","InlineSlice","slicesResultsMap","SlicesResultsContext","component","assign","sliceContext","data","Slice","internalProps","alias","__renderedByLocation","slicesContext","SlicesContext","propErrors","validateSliceProps","SlicePropsError","renderEnvironment","additionalContextMessage","sliceRoot","name","componentPath","_Error","inBrowser","renderedByLocation","errors","entries","stack","message","stackLines","ReactDebugCurrentFrame","getCurrentStack","captureStackTrace","self","ReferenceError","_assertThisInitialized","forcedLocation","functionName","_inheritsLoose","seenObjects","propPath","prefetchPathname","loader","enqueue","graphql","supportedPrefetchStrategy","feature","fakeLink","relList","supports","err","support","url","reject","link","setAttribute","forEach","onload","onerror","getElementsByTagName","getElementsByName","parentNode","req","XMLHttpRequest","open","status","send","preFetched","catch","PageResourceStatus","Success","createPageDataUrl","rawPath","maybeSearch","s","shouldAbortFetch","doFetch","method","onreadystatechange","readyState","BOT_REGEX","toPageResources","pageData","_pageData$slicesMap","page","componentChunkName","webpackCompilationHash","staticQueryHashes","getServerDataError","json","waitForResponse","response","readRoot","setTimeout","BaseLoader","loadComponent","inFlightNetworkRequests","pageDb","inFlightDb","staticQueryDb","pageDataDb","partialHydrationDb","slicesDataDb","sliceInflightDb","slicesDb","isPrefetchQueueRunning","prefetchQueued","prefetchTriggered","Set","prefetchCompleted","memoizedGet","inFlightPromise","delete","setApiRunner","apiRunner","prefetchDisabled","some","a","fetchPageDataJson","loadObj","pagePath","retries","responseText","jsonPayload","includes","payload","notFound","internalServerError","fetchPartialHydrationJson","loadPageDataJson","loadPartialHydrationJson","loadSliceDataJson","res","error","loadDataPromises","loadAppData","allData","appDataResponse","pageDataResponse","rscDataResponse","pageStaticQueryHashes","finalResult","dedupedSliceNames","from","values","loadSlice","inFlight","slicesData","slices","dedupedStaticQueryHashes","_toConsumableArray","staticQueryHash","loadChunkPromises","componentChunkPromises","sliceComponents","headComponent","pageComponent","createdAt","Date","sliceComponent","pageResources","partialHydration","readableStream","ReadableStream","start","controller","te","TextEncoder","encode","pull","close","cancel","createFromReadableStream","staticQueryBatchPromise","staticQueryResults","staticQueryResultsMap","emitter","_options","withErrorDetails","shouldPrefetch","doesConnectionSupportPrefetch","navigator","connection","effectiveType","saveData","userAgent","prefetch","abort","defer","promise","abortC","AbortController","signal","index","findIndex","_ref3","_processNextPrefetchBatch","requestIdleCallback","cb","toPrefetch","prefetches","_ref4","dPromise","add","doPrefetch","pageDataUrl","prefetchHelper","crossOrigin","as","hovering","createComponentUrls","isPageNotFound","appData","___chunkMapping","chunk","__PATH_PREFIX__","instance","ProdLoader","_BaseLoader","asyncRequires","chunkName","exportType","_proto2","componentUrls","setLoader","_loader","publicLoader","getStaticQueryResults","getSliceResults","FireCallbackInEffect","callback","useEffect","VALID_NODE_NAMES","isEqualNode","oldTag","newTag","HTMLElement","nonce","getAttribute","cloneTag","cloneNode","getValidHeadNodesAndAttributes","rootNode","htmlAndBodyAttributes","html","body","seenIds","validHeadNodes","childNodes","_node$attributes","_node$attributes$id","nodeName","attributes","isElementType","isValidNodeName","attribute","isStyleAttribute","_htmlAndBodyAttribute","style","clonedNode","massageScript","_validHeadNodes$index","indexOfPreviouslyInsertedNode","removeChild","attr","nodeType","hiddenRoot","keysOfHtmlAndBodyAttributes","onHeadRendered","_document$head2","htmlElement","attributeName","attributeValue","bodyElement","applyHtmlAndBodyAttributes","existingHeadElements","querySelectorAll","_document$head","append","newHeadNodes","oldNodes","newNodes","onStale","onNew","existingHeadElement","indexInNewNodes","newNode","diffNodes","headHandlerForBrowser","pageComponentProps","Head","headExportValidator","reactDOMUtils","HeadElement","serverData","pageContext","WrapHeadElement","pop","StaticQueryContext","LocationProvider","prevHeadNodes","removePrevHeadElements","htmlAndBodyattributeList","removeAttribute","removeHtmlAndBodyAttributes","PageRenderer","__params","pageElement","PropTypes","RouteAnnouncerProps","top","width","height","padding","overflow","clip","whiteSpace","border","maybeRedirect","___replace","nextRoute","event","reason","onPreRouteUpdate","prevLocation","onRouteUpdate","navigate","to","globalHistory","parsePath","___swUpdated","timeoutId","history","replaceState","clearTimeout","___webpackCompilationHash","serviceWorker","postMessage","gatsbyApi","reachNavigate","getSavedScrollPosition","oldPathname","RouteAnnouncer","announcementRef","nextProps","pageName","title","pageHeadings","textContent","newAnnouncement","innerText","compareLocationProps","nextLocation","_prevLocation$state","_nextLocation$state","RouteUpdates","_React$Component2","_this2","shouldComponentUpdate","shallowDiffers","b","_i","EnsureResources","getDerivedStateFromProps","prevState","loadResources","setState","nextState","shallowCompare","hydrate","___emitter","___loader","listen","action","___push","___navigate","reloadStorageKey","apiRunnerAsync","RouteHandler","BaseContext","baseuri","basepath","DataContext","GatsbyRoot","Location","sliceResults","LocationHandler","Consumer","Router","encodeURI","browserLoc","match","getSessionStorage","_page$page","reload","removeItem","console","SiteRoot","App","onClientEntryRanRef","performance","mark","focusEl","defaultRenderer","renderer","runRender","rootElement","doc","documentElement","doScroll","InternalPageRenderer","reactDomClient","el","root","createRoot","hydrateRoot","redirectMap","redirectIgnoreCaseMap","ignoreCase","fromPath","protocol","hostname","register","reg","installingWorker","installing","log","___failedResources","defaultValue","createServerContext","globalThis","__SERVER_CONTEXT","StaticQueryDataRenderer","staticQueryData","query","finalData","StaticQuery","useStaticQuery","_context$query","context","isNaN","Number","str","prefix","CompanyMenuLogo","HeaderBtnSection","HideHeader","HomeLinkNav","MenuActive","MenuContainer","MenuOpen","NavVisited","SocialMediaLinks","copyrights","dot","dotWrap","headerConnectBtn","headerContainer","headerWrapper","hiddenActive","hover","logo","mobileMenuRules","mobileMenuWrap","navMenuLinks","navbar","pageLink","policyTerms","rightSection","headermenu","polics_terms","companylogo","handleMenu","styles","copyRights","companyLogoMenu","handleProductsClick","handleProducts","componentOrder","sortedContent","items","sort","slug","className","linkPath","displayTitle","Title","onClick","RenderSvg","IconName","IconType","fill","transform","Link","label","OpenInNewTab","target","rel","textTransform","ProductsPopup","openProductsPopup","setOpenProductsPopup","header","isMobile","contact","share","images","allFile","edges","findImageByRelativePath","relativePath","imageNode","find","image","getImage","popupRef","excludedRef","hoveredProduct","setHoveredProduct","useState","closePopup","useCallback","handleClickOutside","_excludedRef$current","contains","handleEscKey","opacity","zIndex","maxWidth","marginTop","marginLeft","borderRadius","background","display","flexDirection","gap","justifyContent","isExternal","product","onMouseEnter","onMouseLeave","textDecoration","color","alignItems","cursor","objectFit","GatsbyImage","alt","textAlign","fontSize","fontWeight","ScreenSize","isDesktop","right","Header","_allStrapiHeaderPage$","_allStrapiHeaderPage$2","_allStrapiHeaderPage$3","prevScrollPos","setPrevScrollPos","visible","setVisible","openPopup","setOpenPopup","MenuRef","headerRef","menuDotRef","connectButtonRef","companyLogoRef","allStrapiHeaderPage","internal","nodes","content","headerButton","privaryTerms","copyRight","socialLinks","localFile","handleScroll","currentScrollPos","pageYOffset","playORPauseVideo","menuDot","menuRef","classList","IsEmbedded","src","publicURL","isCurrentPage","isCurrentPageProducts","MenuBar","Popup","isVertical","scheduleDemo","anchorLink","anchorLinkCity","bottomContent","cityContainer","citySubcontainer","disabledAnchorLink","disabledHeading","disabledLink","dropDownHeading","dropDownList","dropDownListUl","dropDownTab","footer","footerDiv","footerGroup","footerGroup0","footerGroup1","footerGroup2","footerGroup3","footerGroup4","footerGroup5","footerLinksIcons","footerLogo","footerSection","group","heading","linksContainer","list","nonClickable","nonClickableContainer","nonClickableLink","ourPresenceList","privacyPolicy","footerData","sections","section","disable","isAdress","mobileFooterData","Footer","allStrapiFooterSection","companyLogo","logoUrl","activeDropdownIndex","setActiveDropdownIndex","handleDropdownToggle","prevIndex","RedirectTo","item","AnchorLink","DropdownSection","isOpen","onToggle","linkIndex","ConnectSection","Locations","city","cityIndex","baseUrl","groupIndex","_section$items","renderHeading","renderLink","openInNewTa","origin","isTablet","sectionIndex","players","setPlayers","isMuteRef","muteAll","prevPlayers","player","mute","unMuteAll","unmute","KpointPlayerContext","addPlayer","bindEvents","removePlayer","isConnectPage","ObserverProvider","KpointPlayerProvider","onClientEntry","loadScript","async","wrapPageElement","Layout","_gatsby","_utils","ownKeys","enumerableOnly","getOwnPropertySymbols","symbols","sym","_objectSpread","_defineProperty","getOwnPropertyDescriptors","defineProperties","_ref$stripHash","stripHash","_ref$gatsbyLinkProps","gatsbyLinkProps","onAnchorLinkClick","onClickHandler","handleStrippedLinkClick","handleLinkClick","linkProps","stripHashedLocation","bool","INVALID_HASH","IMPROPPER_FORMATTING","windowHash","_ref2$offset","offset","_ref2$duration","duration","isBrowser","gatsby_scroll_offset","gatsby_scroll_duration","gatsby_scroll_hash","scroller","checkHash","_AnchorLink","_typeof","Symbol","iterator","logWarning","errorTypes","_to$split2","_slicedToArray","anchorPath","anchor","withPrefix","preventDefault","_to$split4","isSamePage","isDifferentPage","selector","substr","validElement","isDevelopment","_scrollToElement","arr","_arrayWithHoles","_arr","_n","_d","_e","_s","done","_iterableToArrayLimit","minLen","_arrayLikeToArray","n","_unsupportedIterableToArray","_nonIterableRest","len","arr2","process","warn","W","hasNativeLazyLoadSupport","HTMLImageElement","fallback","gatsbyImageData","gatsbyImage","childImageSharp","z","P","h","loading","shouldLoad","A","l","backgroundColor","left","bottom","objectPosition","d","transition","H","F","_ref5","layout","paddingTop","role","G","u","V","B","U","srcSet","decoding","Y","sources","sizes","_ref6","media","X","J","Z","K","Q","ee","ae","c","ie","se","re","ne","oe","le","de","class","g","onStartLoad","onLoad","onError","f","w","y","v","E","k","S","M","N","$","I","_ref7","renderImageToString","swapPlaceholderImage","complete","wasCached","_ref8","isLoading","isLoaded","cancelAnimationFrame","dangerouslySetInnerHTML","__html","suppressHydrationWarning","ce","he","ue","__imageData","__error","ge","imgClassName","imgStyle","placeholder","pe","_len2","_key2","me","fe","we","pluginOptions","GetMediaFromSrc","getPublicUrl","folder","imagePath","allImages","mediaName","SvgData","extension","Mp4Data","imgData","Img","autoPlay","loop","muted","playsInline","controls","PDFButton","PopupButton","PrimaryButton","SecondaryButton","TabPrimaryButton","TabPrimaryButtonActive","TagBanner","TagBannerActive","TagBannerBlackColor","ViewMoreButton","ViewMoreButtonActive","buttonText","rest","PrimaryButtonLink","buttonLinkText","RenderDiv","TabButton","tabText","isActive","BannerTag","tagText","black","forwardRef","copy","xmlns","viewBox","GatsbyImageCircleImage","GatsbyImageContainer","PlatformBannerCard","PlatformBannerCardBg","PlatformBannerCardSubText","PlatformBannerCardText","PlatformBannerCardTextDiv","PrimaryCrad","PrimaryCradActive","PrimaryCradEmbed","PrimaryCradImg","PrimaryCradText","PrimaryCradTitleText","PrimaryCradVideo","PrimarySquareCard","PrimarySquareCardEmbed","PrimarySquareCardImg","PrimarySquareCardOverlayDiv","PrimarySquareCardOverlayText","PrimarySquareCardTitle","PrimarySquareCardVideo","SecondaryCard","SecondaryCardEmbed","SecondaryCardImg","SecondaryCardVideo","SecondaryCircleCardEmbed","SecondaryCircleCardImg","SecondaryCircleCardVideo","SecondaryCircleCrad","SecondarySquareCard","SecondarySquareCardEmbed","SecondarySquareCardImg","SecondarySquareCardVideo","StoryCrad","StoryCradImage","StoryCradText","StoryCradTitleText","UseCaseBannerCard","caseStudyCard","caseStudyCardDesc","caseStudyCardTitle","caseStudyExplore","clientCardActive","clientsCircleCard","icon","iconContainer","imgContainer","isPlatform","minutes","moveUp1","moveUp2","moveUp3","moveUp4","moveUp5","moveUp6","moveUp7","overlayDiv","peopleCardContainer","peopleCardImgDiv","readTime","Text","circleCard","video","CardActive","embedCode","platformCard","RenderData","description","bgSrc","paddingBottom","SecondaryCircleCard","circleImage","showMinute","_ref9","ClientsCard","_ref11","social","CaseStudyCard","_ref12","subTitle","bgColor","iconName","iconSize","knowmoreIcon","maxHeight","ContactBtn","ContactFormContainer","ContactFormWrap","addressContent","addressContentItem","captcha","closeIcon","contactAddressContainer","contactBannerContainer","contactFormInput","contactTextArea","contentContainer","contentInnerContainer","errorContainer","errorIcon","errorMessage","errorMessages","mainContainer","mapContainer","successMessage","videoContainer","_excluded","_extends","_setPrototypeOf","ReCAPTCHA","subClass","superClass","handleExpired","handleErrored","handleChange","handleRecaptchaRef","getCaptchaFunction","fnName","grecaptcha","enterprise","getValue","getResponse","_widgetId","getWidgetId","execute","_executeRequested","executeAsync","executionResolve","executionReject","reset","resetter","forceReset","onExpired","onErrored","token","onChange","explicitRender","wrapper","sitekey","theme","tabindex","size","stoken","hl","badge","isolated","elem","_this$props","childProps","excluded","sourceKeys","_objectWithoutPropertiesLoose","defaultProps","SCRIPT_MAP","idCount","callbackName","getOptions","recaptchaOptions","getScriptURL","dynamicOptions","useRecaptchaNet","globalName","WrappedComponent","wrappedComponentName","AsyncScriptLoader","_Component","__scriptURL","asyncScriptLoaderGetScriptLoaderID","__scriptLoaderID","setupScriptURL","asyncScriptLoaderHandleLoad","asyncScriptOnLoad","asyncScriptLoaderTriggerOnScriptLoaded","mapEntry","loaded","obsKey","observers","_this3","scriptURL","scriptId","entry","errored","callObserverFuncAndRemoveObserver","observersMap","observer","removeOnUnmount","allScripts","forwardedRef","ForwardedComponent","isValidEmail","email","_email$split$1$split$","isAllowedDomain","isValidPhoneNumber","phoneNumber","digits","ContactForm","memo","handelContactForm","handelCheckFormIsFilled","formIsFilled","contactForm","success","setSuccess","submitButtonRef","formRef","showConfirmation","ConfirmationPopUpComponent","useConfirmationPopup","setToken","inputRef","btnValid","setBtnValid","recaptchaRef","focus","trackContactFormOpened","handleInputChange","setCustomValidity","clearForm","closeForm","isFilled","trackContactFormClosed","onSubmit","formData","FormData","yourBusinessEmail","textarea","Email","PhoneNumber","textArea","reportValidity","fetch","headers","YourBusinessEmail","ok","trackContactFormSubmitted","parent","eventName","text","noValidate","required","autoComplete","pattern","rows","cols","siteKey","disabled","handelPop","handelPopUp","stopPropagation","isVisible","setIsVisible","resolver","setResolver","ConfirmationPopUp","blueGradient","grad","greenGradient","greyGradient","redGradient","wave1","wave2","wave3","waves","BackgroundWave","getColorCode","red","green","blue","grey","getBgClass","fillOpacity","SectionLayout","About","Platform","People","myStory","usecases","careers","lifeatkpoint","SecondaryCircleCardLayout","BannerVideo","SecondarySquareCardLayout","ScheduleADemo","isFormSuccess","setIsFormSuccess","setError","emailError","handleEmailValid","_value$split$1$split$","setTimeoutId","RenderMedia","letterSpacing","phone","FullName","formError","fromSuccess","handleSubmit","autoFocus","Share","copied","setCopied","clipboard","writeText","socialMediaShare","handleShare","readOnly","CheckedIcon","CopyIcon","CaseStudyLinkUseCaseSection","layoutHashLinkId","bgcolor","caseStudies","personalizationInfo","PlatformTitleDesc","KpointPlayerFromEmbedCode","containerClassNames","autoplay","playerSkinType","toc","playWhenInViewOnly","_e$DesktopMedia","_e$DesktopMedia$local","_e$DesktopMedia$local2","_e$caseStudyName","Media","DesktopMedia","caseStudyName","replaceAll","TitleDescription","Description","isPlatForm","fontColor","fontColorClass","ClientsNameDesignation","designation","company","ClientsDescription","shareLink","isLargeScreen","setIsLargeScreen","marginInline","ObserverContext","observe","unobserve","inViewObserver","loadObserver","elementsToObserve","IntersectionObserver","_entry$target$inViewC","_entry$target","_entry$target$inViewC2","_entry$target2","isIntersecting","inViewCallback","threshold","_entry$target$loadCal","_entry$target3","loadCallback","rootMargin","innerHeight","_inViewObserver$curre","_loadObserver$current","disconnect","useObserver","kpointBlue","kpointGreen","kpointRed","kpointSpinner","kpointSpinner__dot","markupTemplateContainer","notLoaded","playerOverlay","spin78236","thumbnail","wobble1","wobble2","onClose","playerRef","setEmail","isSubmitted","setIsSubmitted","emailInputRef","modalRef","timeoutRef","focusableElements","firstFocusableElement","focusableContent","lastFocusableElement","info","personalizedData","videoTitle","trapFocus","keyCode","shiftKey","activeElement","_modalRef$current","_playerRef$current5","_playerRef$current5$i","_playerRef$current5$i2","_playerRef$current","_playerRef$current$in","_playerRef$current$in2","_playerRef$current2","_playerRef$current2$i","_playerRef$current2$i2","_playerRef$current3","_playerRef$current3$i","_playerRef$current$in3","_playerRef$current4","_playerRef$current4$i","_playerRef$current4$i2","videoId","viewToken","mailTo","_videoDetails$node","_videoDetails$node$th","_videoDetails$node$th2","_videoDetails$node$th3","fakeVideoId","horizontalVideoId","verticalVideoId","fakeHorizontalVideoId","fakeVerticalVideoId","host","externalWidgetsConfig","packageId","thumbnailPath","isVerticalVideo","videoClassNames","onVideoLoad","onVideoRemove","onVideoEnd","childRef","customformOpenRef","emailGateOpened","setEmailGateOpened","playerIsPlayingTimeout","videoState","setVideoState","isVisibleRef","handelStateChange","playStates","ENDED","skipNextMuteEventRef","previousMuteStateRef","initPlayer","kvideoId","isSmartPlayer","videoHost","packageVideoId","packageDetails","videoEmbedcode","DOMParser","parseFromString","embedCodeDiv","bodyElements","scripts","tagName","newScript","markup","outerHTML","parentElement","videoParams","config1","config2","mergedConfig","widgetName","widgetConfig","mergeWidgetConfig","widgetsConfig","playerInstance","kPoint","Player","_childRef$current$par","playVideo","gtag","sendVideoLoadedEvent","setVolume","varifyCorrectVideoPlaying","gccId","setGccId","videoDetails","useMemo","allStrapiVideo","pauseVideo","varifyPlayerIsPlaying","getPlayState","UNSTARTED","useImperativeHandle","rePlayVideo","_playerRef$current6","seekTo","time","getCurrentTime","getDuration","getVolume","volume","setWidgetsConfig","setWidgetConfig","togglePlayPauseVideo","PLAYING","loadVideoById","newVideoId","isVideoEnded","inView","postCustomEvent","_playerRef$current7","isPlaying","sendVideoPlayEvent","sendVideoPauseEvent","_playerRef$current8","_playerRef$current8$p","_playerRef$current9","_playerRef$current9$p","handleOnClickButton","p0","p1","detail","_playerRef$current10","EmailGate","aspectRatio","_a","Uint16Array","charCodeAt","decodeMap","fromCodePoint","String","codePoint","output","fromCharCode","replaceCodePoint","CharCodes","BinTrieFlags","EntityDecoderState","isNumber","code","ZERO","NINE","isEntityInAttributeInvalidEnd","EQUALS","UPPER_A","UPPER_Z","LOWER_A","LOWER_Z","isAsciiAlphaNumeric","DecodingMode","EntityDecoder","decodeTree","emitCodePoint","EntityStart","consumed","treeIndex","excess","decodeMode","Strict","startEntity","write","NUM","NumericStart","stateNumericStart","NamedEntity","stateNamedEntity","NumericDecimal","stateNumericDecimal","NumericHex","stateNumericHex","LOWER_X","addToNumericResult","end","base","digitCount","Math","pow","parseInt","startIdx","char","UPPER_F","LOWER_F","emitNumericEntity","lastCp","expectedLength","absenceOfDigitsInNumericCharacterReference","SEMI","missingSemicolonAfterCharacterReference","validateNumericCharacterReference","valueLength","VALUE_LENGTH","determineBranch","max","Attribute","emitNotTerminatedNamedEntity","emitNamedEntityData","getDecoder","ret","decoder","nodeIdx","branchCount","BRANCH_LENGTH","jumpOffset","JUMP_TABLE","lo","hi","mid","midVal","State","QuoteType","isWhitespace","Space","NewLine","Tab","FormFeed","CarriageReturn","isEndOfTagSection","Slash","Gt","Sequences","Cdata","Uint8Array","CdataEnd","CommentEnd","ScriptEnd","StyleEnd","TitleEnd","TextareaEnd","Tokenizer","xmlMode","decodeEntities","cbs","buffer","sectionStart","entityStart","baseState","isSpecial","running","currentSequence","sequenceIndex","entityDecoder","cp","finish","pause","resume","stateText","Lt","fastForwardTo","ontext","BeforeTagName","Amp","stateSpecialStartSequence","isEnd","InTagName","stateInTagName","stateInSpecialTag","endOfText","actualIndex","stateInClosingTagName","stateCDATASequence","InCommentLike","InDeclaration","stateInDeclaration","stateInCommentLike","oncdata","oncomment","isTagStartChar","LowerA","LowerZ","UpperA","UpperZ","isASCIIAlpha","startSpecial","sequence","SpecialStartSequence","stateBeforeTagName","ExclamationMark","BeforeDeclaration","Questionmark","InProcessingInstruction","lower","BeforeSpecialS","BeforeSpecialT","BeforeClosingTagName","onopentagname","BeforeAttributeName","stateBeforeAttributeName","stateBeforeClosingTagName","InClosingTagName","InSpecialComment","onclosetag","AfterClosingTagName","stateAfterClosingTagName","onopentagend","InSpecialTag","InSelfClosingTag","InAttributeName","stateInSelfClosingTag","onselfclosingtag","stateInAttributeName","Eq","onattribname","AfterAttributeName","stateAfterAttributeName","BeforeAttributeValue","onattribend","NoValue","stateBeforeAttributeValue","DoubleQuote","InAttributeValueDq","SingleQuote","InAttributeValueSq","InAttributeValueNq","stateInAttributeValueNoQuotes","handleInAttributeValue","quote","onattribdata","Double","Single","stateInAttributeValueDoubleQuotes","stateInAttributeValueSingleQuotes","Unquoted","stateBeforeDeclaration","OpeningSquareBracket","CDATASequence","Dash","BeforeComment","ondeclaration","stateInProcessingInstruction","onprocessinginstruction","stateBeforeComment","stateInSpecialComment","stateBeforeSpecialS","stateBeforeSpecialT","InEntity","Legacy","stateInEntity","cleanup","shouldContinue","handleTrailingData","onend","endIndex","onattribentity","ontextentity","formTags","pTag","tableSectionTags","ddtTags","rtpTags","openImpliesClose","voidElements","foreignContextElements","htmlIntegrationElements","reNameEnd","_b","_c","_f","startIndex","openTagStart","tagname","attribname","attribvalue","attribs","buffers","bufferOffset","writeIndex","ended","htmlMode","lowerCaseTagNames","lowerCaseTags","lowerCaseAttributeNames","recognizeSelfClosing","tokenizer","foreignContext","onparserinit","getSlice","isVoidElement","emitOpenTag","impliesClose","shift","unshift","onopentag","endOpenTag","isImplied","_g","_h","pos","closeCurrentTag","isOpenImplied","onattribute","getInstructionName","oncommentend","_j","_k","recognizeCDATA","oncdatastart","oncdataend","onreset","parseComplete","shiftBuffer","parseChunk","ElementType","Root","Directive","Comment","Script","Style","Tag","CDATA","Doctype","Node","prev","previousSibling","nextSibling","recursive","DataNode","super","nodeValue","ProcessingInstruction","NodeWithChildren","firstChild","lastChild","Document","Element","namespace","isCDATA","isText","isComment","cloneChildren","clone","child","isDocument","isDirective","instruction","sourceCodeLocation","childs","defaultOpts","withStartIndices","withEndIndices","elementCB","dom","tagStack","lastNode","parser","handleCallback","addNode","restoreDiff","xmlCodeMap","codePointAt","getEscaper","regex","lastIdx","exec","EntityLevel","EncodingMode","val","findOne","recurse","DocumentPosition","parseDocument","divElement","DomUtils","KpointPlayer","event_category","event_label","page_location","checkFirstVisit","localStorage","trackScrollDepth","hasScrolled50","hasScrolled100","scrollPercentage","scrollHeight","sendTimeSpentEvent","startTime","endTime","getTime","timeSpent","round","time_spent","platform","sharingUrl","eventTriggeredFrom","event_triggered_from","sendJobDescriptionOpened","jobTitle","SendSubmittedResume","handleCopy","_temp","onSuccess","alert","NotallowedFreeDomains","isValidEmailFormat","domain","innerWidth","isLaptop","isWidth","toCamelCase","word","template","queryParams","URLSearchParams","queryParamsObject","restStyles","defaultStyles","Font","preProps","nextprops","RenderGif","gifName","gifFolder","gifSrc","setGifSrc","importGif","homepageBannerId","isMuted","click","getJobShareUrl","reactIs","REACT_STATICS","childContextTypes","contextType","contextTypes","getDefaultProps","getDerivedStateFromError","mixins","KNOWN_STATICS","caller","callee","arity","MEMO_STATICS","compare","TYPE_STATICS","getStatics","isMemo","ForwardRef","Memo","getOwnPropertyNames","objectPrototype","hoistNonReactStatics","targetComponent","sourceComponent","blacklist","inheritedComponent","targetStatics","sourceStatics","descriptor","condition","format","argIndex","framesToPop","AboutSectionContainer","CircleDescriptionTitle","DesginationCompany","DesginationContainer","DesginationDescription","DesginationName","DesginationTitle","MisionVisonTitleDesc","PlatformSectionContainer","ScheduleADemoDesc","ScheduleADemoForm","ScheduleADemoHeading","ScheduleADemoThankyouText","ScheduleADemoWelcomeText","SecondarySquareCardLayoutContent","SecondarySquareCardLayoutSecondaryText","UseCaseSectionContainer","bgVideo","blackText","careersContainer","clientsDescription","clientsNameDesignation","connectH2","container","contentBox","copyDiv","demoButton","descriptionPlatform","descriptionText","emailInputContainer","embedVideosContainer","fadeIn","fadeOut","formSubmitSuccess","headingContainer","kpointPopupLogo","lifeatkpointContainer","mystoryContainer","peopleCardLayout","peopleContainer","queryText","shareContainer","shareDivider","shareIcon","shareSocialContainer","shareSocialLink","shareSocialLinkImg","shareTitle","successMessageBox","useCaseTitleDesc","whiteText","getNanoSeconds","hrtime","loadTime","moduleLoadTime","nodeLoadTime","upTime","now","hr","uptime","vendors","raf","caf","last","queue","_now","cancelled","handle","polyfill","srcList","imgPromise","decode","useSuspense","j","q","Image","unloader","loaderContainer","unloaderContainer","crossorigin","C","useImage","for","$$typeof","AsyncMode","ConcurrentMode","ContextConsumer","ContextProvider","Fragment","Lazy","Portal","Profiler","StrictMode","Suspense","isAsyncMode","isConcurrentMode","isContextConsumer","isContextProvider","isElement","isForwardRef","isFragment","isLazy","isPortal","isProfiler","isStrictMode","isSuspense","isValidElementType","typeOf","stream","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","ContextRegistry","_status","_value","_response","_fromJSON","chunks","__webpack_require__","D","_chunks","_bundlerConfig","_payload","_init","_owner","TextDecoder","_partialRow","_stringDecoder","getReader","subarray","moduleMap","linear","inQuad","outQuad","inOutQuad","inCube","outCube","inOutCube","inQuart","outQuart","inOutQuart","inQuint","outQuint","inOutQuint","inSine","cos","PI","outSine","sin","inOutSine","inExpo","outExpo","inOutExpo","inCirc","sqrt","outCirc","inOutCirc","inBack","outBack","inOutBack","inBounce","outBounce","inOutBounce","inElastic","asin","outElastic","inOutElastic","Emitter","mixin","_callbacks","once","removeListener","removeAllListeners","callbacks","listeners","hasListeners","scroll","additionalOffset","alignment","elemRect","getBoundingClientRect","clientHeight","documentHeight","offsetHeight","maxScrollPosition","min","calculateScrollOffset","align","Tween","pageXOffset","scrollLeft","tween","ease","animate","update","_from","_curr","extend","_done","_start","_to","ms","_duration","_ease","stop","stopped","step","_update","curr","Check","Copy","webpackAsyncContext","ids","toPropertyKey","toPrimitive","SCRIPT_TYPE","config","snippetCode","filteredConfig","configStr","createSnippet","iter","port","transitioning","_onTransitionComplete","go","pushState","uri","noThrow","R","O","L","T","score","every","innerRef","getProps","isCurrent","isPartiallyCurrent","defaultPrevented","button","metaKey","altKey","ctrlKey","componentDidCatch","outline","tabIndex","primary","toArray","activeClassName","activeStyle","partiallyActive","_location","defaultGetProps","IOSupported","abortPrefetch","handleRef","_prefetch","io","intersectionRatio","didTimeout","timeRemaining","postHydrate","idle","offMainThread","strategy","errorCallback","load"],"sourceRoot":""}