{"version":3,"sources":["../js/Text/GreenlightTextTools.js"],"names":["g_oTextTools","TextTools","this","g_eToolTypes","TextHighlight","ParagraphHighlight","RemoveTextHighlight","AreaTextHighlight","g_bHighlightInProgress","g_bHighlightIsCharacterAccuracy","g_bHighlightOnCompareCanvas","g_eActiveToolType","g_eActiveAnnotationType","g_oAnnotationText","g_oCurrentText","g_oStartingText","g_oEndingText","g_szHighlightColour","g_iExistingAnnotationId","prototype","initialiseTextTool","eToolType","eAnnotationType","bCharacterLevelAccuracy","bCompareCanvas","colour","setHighlightColour","$","remove","g_oAnnotations","closeActiveAnnotations","length","displayHighlightInfo","g_oSettings","g_oUserSettings","ShowAnnotations","click","changeCanvasFunction","prop","g_oTextTools_TextHighlight","initialiseHighlight","g_oTextTools_ParagraphHighlight","g_oTextTools_RemoveTextHighlight","g_oTextTools_AreaTextHighlight","endhighlight","oArtworkCanvas","oAnnotationCanvas","bSaveAnnotation","g_oGreenlightMessages","closeBubbles","g_oTextCompare","g_bTextCompareInProgress","bAutoSelect","g_oTextCompare_AutoSelection","isAutoSelectionEnabled","addTextData","updateTextData","rebuildAnnotationList","createAnnotation","updateNewAnnotation","updateAnnotation","convertMousePositionToPercentages","event","coords","getClick","transformedClick","transformClickForRotation","co","g_oCompare","calculateCompareOffsetInPx","compareOffset_x","x","compareOffset_y","y","g_iScaledImageWidth","g_iScaledImageHeight","i","g_oActiveBubbles","closeBubble","id","displayInfoBubble","getHighlightInfo","szHighlightInfo","c_szTextHighlight","c_szParagraphHighlight","c_szRemoveTextHighlight","c_szAreaTextHighlight","isTextHighlightLeftToRight","c_szTextHighlightLeftToRight","c_szTextHighlightRightToLeft","c_szTextHighlightExit","c_szTextHighlightSeeMore","c_szTextHighlightClickDragRelease","c_szTextHighlightChangeDirection","showMoreHighlightInfo","hide","slideToggle","toggleHighlightDirection","HighlightPreference","eHighlightType","LeftToRight","RightToLeft","updateSettingHighlightPreference","getFirstTextInParagraph","iParagraph","getFirstCharacterInParagraph","getFirstWordInParagraph","oTextData","g_oTextData","getTextData","g_oDoc","documentId","g_iCurrentPage","textData","paragraph","Paragraphs","Order","line","Lines","word","Words","character","Characters","getLastTextInParagraph","getLastCharacterInParagraph","getLastWordInParagraph","isLastCharacterInWord","findText","point_x","point_y","findText_Character","findText_Word","findParagraph","iLine","findLine","iWord","findWord","iCharacter","findChararacter","isPointWithinBounds","X1","X2","Y1","Y2","bounds_x1","bounds_x2","bounds_y1","bounds_y2","findClosestText","findClosestText_Character","findClosestText_Word","oText","iClosestDistance","j","k","iDistance","distancePointToBounds","l","bounds_x_middle","bounds_y_middle","Math","min","sqrt","pow","showAllParagraphs","highlightParagraph","showAllLines","highlightLine","showAllWords","highlightWord","removeHighlights","g_oContext","save","g_oMarquee","derotateCanvasContext","g_oCanvas","width","height","clearRect","restore","highlightSections","oSections","highlightSections_Character","highlightSections_Word","oWords","getSectionsWords","sort","sortWords","distinctWords","oWord","oPreviousWord","iX1","iX2","iY1","iY2","highlightElement","oCharacters","getSectionsCharacters","sortCharacters","distinctCharacters","oCharacter","oPreviousCharacter","highlightCharacter","concat","getSectionWords","startingText","endingText","leftToRight","textHighlightCorrectOrder","characterLevelAccuracy","oStart","oParagraph","isWordInSection","push","getSectionCharacters","isCharacterInSection","a","b","splice","getSectionsBounds_Words","oSectionsBounds","x1","x2","y1","y2","oSectionBounds","getSectionBounds_Words","max","getSectionsBounds_Characters","getSectionBounds_Characters","getWordListBounds","oWordList","getCharacterListBounds","oCharacterList","getWordText","Content","getCharacterText","getWordListText","szText","getCharacterListText","getSectionsText_Words","szPrepend","szAppend","szSectionsText","getSectionText_Words","szSectionText","bPreviousWordHighlighted","bWordInSection","SpaceAfter","split","reverse","join","getSectionsText_Characters","getSectionText_Characters","getWordBoldSetting","Bold","getWordItalicSetting","Italic","getCharacterBoldSetting","getCharacterItalicSetting","getCharacterLastInWord","getWordCharacters","splitSections","splitSections_Characters","splitSections_Words","oSplitSections","oSectionWords","mergeSections","mergeSections_Characters","mergeSections_Words","oMergedSections","oMergedSection","isWordInList","isCharacterInList","isWordInSection_LeftToRight","isWordInSection_RightToLeft","isCharacterInSection_LeftToRight","isCharacterInSection_RightToLeft","bCharacterInSection","grep","oWordListItem","oCharacterListItem","oLine","iScaledImageWidth","iScaledImageHeight","iCompareRotation","getCompareRotation","oRotatedLetterLower","rotate","rotated_x","rotated_y","oRotatedLetterUpper","startX","g_iCenterShift_x","startY","g_iCenterShift_y","distX","distY","drawTextHighlight","indexOf","oHexColour","getHexColour","oRGB","convertColourHexToRGB","r","g","oTextAnnotation","generateTextAnnotation","g_oAnnotationsMade","createAnnotationDiv","eAnnotationDivType","Popup","redrawAnnotations","repositionSpeechBubbles","focus","oAnnotationText","Annotation","g_iApprovalId","getNextAnnotationId","g_iAnnotationType","g_oDrawArray","g_szTextContent","g_szTextHighlightContent","JSON","stringify","g_iParentAnnotationId","g_iNumber","apply","map","o","g_szColour","g_oAnnotationColSelected","g_iDocumentId","g_iAuthor","g_oUserDetails","UserId","g_szAuthorEmail","EmailAddress","g_bSaved","status","isEmptyObject","pages","documentPageNumber","g_iDocumentPageId","documentPageId","eAnnotationTypes","TextClassification","g_oAnnotationData","g_oAnnotationTextClassification","populateDefaultAnnotationData","ann","g_oDrawCoordSetArray","xCoordinate","yCoordinate","AnnotationSave","window"],"mappings":"AAcA,IAAIA,aAAe,IAElB,WACA,aAKA,SAASC,YAGRC,KAAKC,aAAe,CACnBC,cAAe,EACfC,mBAAoB,EACpBC,oBAAqB,EACrBC,kBAAmB,GAIpBL,KAAKM,wBAAyB,EAG9BN,KAAKO,iCAAkC,EAGvCP,KAAKQ,6BAA8B,EAGnCR,KAAKS,kBAAoB,KAGzBT,KAAKU,wBAA0B,KAG/BV,KAAKW,kBAAoB,GAGzBX,KAAKY,eAAiB,KAGtBZ,KAAKa,gBAAkB,KAGvBb,KAAKc,cAAgB,KAGrBd,KAAKe,oBAAsB,GAG3Bf,KAAKgB,wBAA0B,KAWhCjB,UAAUkB,UAAUC,mBAAqB,SAAUC,UAAWC,gBAAiBC,wBAAyBC,eAAgBC,QA4CvH,OAzCAzB,aAAaQ,wBAAyB,EAGtCR,aAAaW,kBAAoBU,UACjCrB,aAAaY,wBAA0BU,gBACvCtB,aAAaU,4BAA8Bc,eAC3CxB,aAAaS,gCAAkCc,wBAG/CvB,aAAa0B,mBAAmBD,QAG5BzB,aAAakB,wBAA0B,GAC1CS,EAAE,IAAM3B,aAAakB,yBAAyBU,SAI/CC,eAAeC,yBAGfH,EAAE,uBAAuBC,SAGuB,GAA5CD,EAAE,gCAAgCI,QACrC/B,aAAagC,uBAITC,YAAYC,gBAAgBC,iBAChCR,EAAE,oBAAoBS,QAIvBC,uBAGIV,EAAE,wBAAwBW,KAAK,YAClCX,EAAE,wBAAwBS,QAInBpC,aAAaW,mBACpB,KAAKX,aAAaG,aAAaC,cAC9BmC,2BAA2BC,sBAC3B,MACD,KAAKxC,aAAaG,aAAaE,mBAC9BoC,gCAAgCD,sBAChC,MACD,KAAKxC,aAAaG,aAAaG,oBAC9BoC,iCAAiCF,sBACjC,MACD,KAAKxC,aAAaG,aAAaI,kBAC9BoC,+BAA+BH,wBAWlCvC,UAAUkB,UAAUyB,aAAe,SAAUC,eAAgBC,kBAAmBC,iBAS/E,GANA/C,aAAaQ,wBAAyB,EAGtCwC,sBAAsBC,aAAa,QAG9BF,gBAKL,GAAIG,eAAeC,yBAAnB,CAGCd,uBAGA,IAAIe,YAAcC,6BAA6BC,yBAGH,MAAxCtD,aAAakB,wBAChBgC,eAAeK,YAAYvD,aAAaa,kBAAmBb,aAAaU,4BAA6B0C,aAAa,GAIlHF,eAAeM,eAAexD,aAAaa,kBAAmBb,aAAaU,4BAA6B0C,kBAM1GvB,eAAe4B,sBAAsBZ,eAAgBC,mBAGR,GAAzC9C,aAAaa,kBAAkBkB,SAKS,MAAxC/B,aAAakB,wBAGhBlB,aAAa0D,iBAAiBb,eAAgBC,mBAGtC9C,aAAakB,wBAA0B,EAG/ClB,aAAa2D,oBAAoBd,eAAgBC,mBAMjD9C,aAAa4D,iBAAiBf,eAAgBC,qBAWhD7C,UAAUkB,UAAU0C,kCAAoC,SAAUC,MAAOjB,eAAgBC,mBAGxF,IAAIiB,OAASlC,eAAemC,SAASF,MAAOhB,mBAGxCmB,iBAAmBpC,eAAeqC,0BAA0BH,OAAO,GAAIA,OAAO,GAAIlB,gBACtFkB,OAAO,GAAKE,iBAAiB,GAC7BF,OAAO,GAAKE,iBAAiB,GAG7B,IAAIE,GAAKC,WAAWC,2BAA2BxB,gBAC3CyB,gBAAkBH,GAAGI,EACrBC,gBAAkBL,GAAGM,EAOzB,OAJAV,OAAO,IAAMA,OAAO,GAAKO,iBAAmBzB,eAAe6B,oBAC3DX,OAAO,IAAMA,OAAO,GAAKS,iBAAmB3B,eAAe8B,qBAGpD,CACNJ,EAAGR,OAAO,GACVU,EAAGV,OAAO,KAOZ9D,UAAUkB,UAAUa,qBAAuB,WAG1C,IAAK,IAAI4C,EAAI,EAAGA,EAAIC,iBAAiB9C,OAAQ6C,IAC5C5B,sBAAsB8B,YAAYD,iBAAiBD,GAAGG,IAAI,GAAM,GAIjE/B,sBAAsBgC,kBAAkBhF,aAAaiF,oBAAoB,IAM1EhF,UAAUkB,UAAU8D,iBAAmB,WAGtC,IAAIC,gBAAkB,GAOtB,OAJAA,iBAAmB,4CAGnBA,iBAAmB,0DACXlF,aAAaW,mBACpB,KAAKX,aAAaG,aAAaC,cAC9B8E,iBAAmBlF,aAAamF,kBAChC,MACD,KAAKnF,aAAaG,aAAaE,mBAC9B6E,iBAAmBlF,aAAaoF,uBAChC,MACD,KAAKpF,aAAaG,aAAaG,oBAC9B4E,iBAAmBlF,aAAaqF,wBAChC,MACD,KAAKrF,aAAaG,aAAaI,kBAC9B2E,iBAAmBlF,aAAasF,sBAsBlC,OAnBAJ,iBAAmBlF,aAAauF,6BAA+B,IAAMvF,aAAawF,6BAA+B,IAAMxF,aAAayF,6BACpIP,iBAAmB,SAGnBA,iBAAmB,oDAAsDlF,aAAa0F,sBAAwB,SAG9GR,iBAAmB,qNAAuNlF,aAAa2F,yBAA2B,SAGlRT,iBAAmB,6DACnBA,iBAAmB,uDAAyDlF,aAAa4F,kCAAoC,SAC7HV,iBAAmB,uDAAyDlF,aAAa6F,iCAAmC,SAC5HX,iBAAmB,SAGnBA,iBAAmB,UASpBjF,UAAUkB,UAAU2E,sBAAwB,WAG3CnE,EAAE,iCAAiCoE,OAGnCpE,EAAE,6BAA6BqE,eAMhC/F,UAAUkB,UAAU8E,yBAA2B,WAG9ChE,YAAYC,gBAAgBgE,oBAAsBjE,YAAYC,gBAAgBgE,qBAAuBC,eAAeC,YAAcD,eAAeE,YAAcF,eAAeC,YAG9KnE,YAAYqE,kCAAiC,GAG7CtG,aAAagC,wBASd/B,UAAUkB,UAAUoF,wBAA0B,SAAUC,WAAY3D,eAAgBC,mBACnF,OAAO9C,aAAaS,gCAAkCT,aAAayG,6BAA6BD,WAAY3D,gBAAkB7C,aAAa0G,wBAAwBF,WAAY3D,iBAShL5C,UAAUkB,UAAUuF,wBAA0B,SAAUF,WAAY3D,gBAGnE,IAAI8D,UAAYC,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGzG,MAAO,CACNC,UAAWP,UAAUQ,WAAWX,YAAYY,MAC5CC,KAAMV,UAAUQ,WAAWX,YAAYc,MAAM,GAAGF,MAChDG,KAAMZ,UAAUQ,WAAWX,YAAYc,MAAM,GAAGE,MAAM,GAAGJ,QAU3DnH,UAAUkB,UAAUsF,6BAA+B,SAAUD,WAAY3D,gBAGxE,IAAI8D,UAAYC,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGzG,MAAO,CACNC,UAAWP,UAAUQ,WAAWX,YAAYY,MAC5CC,KAAMV,UAAUQ,WAAWX,YAAYc,MAAM,GAAGF,MAChDG,KAAMZ,UAAUQ,WAAWX,YAAYc,MAAM,GAAGE,MAAM,GAAGJ,MACzDK,UAAWd,UAAUQ,WAAWX,YAAYc,MAAM,GAAGE,MAAM,GAAGE,WAAW,GAAGN,QAU9EnH,UAAUkB,UAAUwG,uBAAyB,SAAUnB,WAAY3D,eAAgBC,mBAClF,OAAO9C,aAAaS,gCAAkCT,aAAa4H,4BAA4BpB,WAAY3D,gBAAkB7C,aAAa6H,uBAAuBrB,WAAY3D,iBAS9K5C,UAAUkB,UAAU0G,uBAAyB,SAAUrB,WAAY3D,gBAGlE,IAAI8D,UAAYC,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGzG,MAAO,CACNC,UAAWP,UAAUQ,WAAWX,YAAYY,MAC5CC,KAAMV,UAAUQ,WAAWX,YAAYc,MAAMX,UAAUQ,WAAWX,YAAYc,MAAMvF,OAAS,GAAGqF,MAChGG,KAAMZ,UAAUQ,WAAWX,YAAYc,MAAMX,UAAUQ,WAAWX,YAAYc,MAAMvF,OAAS,GAAGyF,MAAMb,UAAUQ,WAAWX,YAAYc,MAAMX,UAAUQ,WAAWX,YAAYc,MAAMvF,OAAS,GAAGyF,MAAMzF,OAAS,GAAGqF,QAUpNnH,UAAUkB,UAAUyG,4BAA8B,SAAUpB,WAAY3D,gBAGvE,IAAI8D,UAAYC,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGzG,MAAO,CACNC,UAAWP,UAAUQ,WAAWX,YAAYY,MAC5CC,KAAMV,UAAUQ,WAAWX,YAAYc,MAAMX,UAAUQ,WAAWX,YAAYc,MAAMvF,OAAS,GAAGqF,MAChGG,KAAMZ,UAAUQ,WAAWX,YAAYc,MAAMX,UAAUQ,WAAWX,YAAYc,MAAMvF,OAAS,GAAGyF,MAAMb,UAAUQ,WAAWX,YAAYc,MAAMX,UAAUQ,WAAWX,YAAYc,MAAMvF,OAAS,GAAGyF,MAAMzF,OAAS,GAAGqF,MAClNK,UAAWd,UAAUQ,WAAWX,YAAYc,MAAMX,UAAUQ,WAAWX,YAAYc,MAAMvF,OAAS,GAAGyF,MAAMb,UAAUQ,WAAWX,YAAYc,MAAMX,UAAUQ,WAAWX,YAAYc,MAAMvF,OAAS,GAAGyF,MAAMzF,OAAS,GAAG2F,WAAWf,UAAUQ,WAAWX,YAAYc,MAAMX,UAAUQ,WAAWX,YAAYc,MAAMvF,OAAS,GAAGyF,MAAMb,UAAUQ,WAAWX,YAAYc,MAAMX,UAAUQ,WAAWX,YAAYc,MAAMvF,OAAS,GAAGyF,MAAMzF,OAAS,GAAG2F,WAAW3F,OAAS,GAAGqF,QAYvcnH,UAAUkB,UAAU2G,sBAAwB,SAAUZ,UAAWG,KAAME,KAAME,UAAWd,WACvF,OAAOA,UAAUQ,WAAWD,WAAWI,MAAMD,MAAMG,MAAMD,MAAMG,WAAW3F,QAAU0F,UAAY,GAWjGxH,UAAUkB,UAAU4G,SAAW,SAAUC,QAASC,QAASpF,eAAgBC,mBAC1E,OAAO9C,aAAaS,gCAAkCT,aAAakI,mBAAmBF,QAASC,QAASpF,eAAgBC,mBAAqB9C,aAAamI,cAAcH,QAASC,QAASpF,eAAgBC,oBAW3M7C,UAAUkB,UAAUgH,cAAgB,SAAUH,QAASC,QAASpF,eAAgBC,mBAG/E,IAAI6D,UAAYC,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGrGT,WAAaxG,aAAaoI,cAAcJ,QAASC,QAAStB,WAG9D,IAAmB,GAAfH,WAAkB,CAGrB,IAAI6B,MAAQrI,aAAasI,SAASN,QAASC,QAASzB,WAAYG,WAGhE,IAAc,GAAV0B,MAAa,CAGhB,IAAIE,MAAQvI,aAAawI,SAASR,QAASC,QAASzB,WAAY6B,MAAO1B,WAGvE,IAAc,GAAV4B,MAGH,MAAO,CACNrB,UAAWV,WACXa,KAAMgB,MACNd,KAAMgB,QAOV,OAAO,MAWRtI,UAAUkB,UAAU+G,mBAAqB,SAAUF,QAASC,QAASpF,eAAgBC,mBAGpF,IAAI6D,UAAYC,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGrGT,WAAaxG,aAAaoI,cAAcJ,QAASC,QAAStB,WAG9D,IAAmB,GAAfH,WAAkB,CAGrB,IAAI6B,MAAQrI,aAAasI,SAASN,QAASC,QAASzB,WAAYG,WAGhE,IAAc,GAAV0B,MAAa,CAGhB,IAAIE,MAAQvI,aAAawI,SAASR,QAASC,QAASzB,WAAY6B,MAAO1B,WAGvE,IAAc,GAAV4B,MAAa,CAGhB,IAAIE,WAAazI,aAAa0I,gBAAgBV,QAASC,QAASzB,WAAY6B,MAAOE,MAAO5B,WAG1F,IAAmB,GAAf8B,WAGH,MAAO,CACNvB,UAAWV,WACXa,KAAMgB,MACNd,KAAMgB,MACNd,UAAWgB,cAQhB,OAAO,MAURxI,UAAUkB,UAAUiH,cAAgB,SAAUJ,QAASC,QAAStB,WAM/D,IAHA,IAAIH,YAAc,EAGT5B,EAAI,EAAGA,EAAI+B,UAAUQ,WAAWpF,OAAQ6C,IAGhD,GAAI5E,aAAa2I,oBAAoBX,QAASC,QAAStB,UAAUQ,WAAWvC,GAAGgE,GAAIjC,UAAUQ,WAAWvC,GAAGiE,GAAIlC,UAAUQ,WAAWvC,GAAGkE,GAAInC,UAAUQ,WAAWvC,GAAGmE,IAAK,CAGvKvC,WAAa5B,EACb,MAKF,OAAO4B,YAWRvG,UAAUkB,UAAUmH,SAAW,SAAUN,QAASC,QAASf,UAAWP,WAMrE,IAHA,IAAI0B,OAAS,EAGJzD,EAAI,EAAGA,EAAI+B,UAAUQ,WAAWD,WAAWI,MAAMvF,OAAQ6C,IAGjE,GAAI5E,aAAa2I,oBAAoBX,QAASC,QAAStB,UAAUQ,WAAWD,WAAWI,MAAM1C,GAAGgE,GAAIjC,UAAUQ,WAAWD,WAAWI,MAAM1C,GAAGiE,GAAIlC,UAAUQ,WAAWD,WAAWI,MAAM1C,GAAGkE,GAAInC,UAAUQ,WAAWD,WAAWI,MAAM1C,GAAGmE,IAAK,CAG3OV,MAAQzD,EACR,MAKF,OAAOyD,OAYRpI,UAAUkB,UAAUqH,SAAW,SAAUR,QAASC,QAASf,UAAWG,KAAMV,WAM3E,IAHA,IAAI4B,OAAS,EAGJ3D,EAAI,EAAGA,EAAI+B,UAAUQ,WAAWD,WAAWI,MAAMD,MAAMG,MAAMzF,OAAQ6C,IAG7E,GAAI5E,aAAa2I,oBAAoBX,QAASC,QAAStB,UAAUQ,WAAWD,WAAWI,MAAMD,MAAMG,MAAM5C,GAAGgE,GAAIjC,UAAUQ,WAAWD,WAAWI,MAAMD,MAAMG,MAAM5C,GAAGiE,GAAIlC,UAAUQ,WAAWD,WAAWI,MAAMD,MAAMG,MAAM5C,GAAGkE,GAAInC,UAAUQ,WAAWD,WAAWI,MAAMD,MAAMG,MAAM5C,GAAGmE,IAAK,CAG3RR,MAAQ3D,EACR,MAKF,OAAO2D,OAaRtI,UAAUkB,UAAUuH,gBAAkB,SAAUV,QAASC,QAASf,UAAWG,KAAME,KAAMZ,WAMxF,IAHA,IAAI8B,YAAc,EAGT7D,EAAI,EAAGA,EAAI+B,UAAUQ,WAAWD,WAAWI,MAAMD,MAAMG,MAAMD,MAAMG,WAAW3F,OAAQ6C,IAG9F,GAAI5E,aAAa2I,oBAAoBX,QAASC,QAAStB,UAAUQ,WAAWD,WAAWI,MAAMD,MAAMG,MAAMD,MAAMG,WAAW9C,GAAGgE,GAAIjC,UAAUQ,WAAWD,WAAWI,MAAMD,MAAMG,MAAMD,MAAMG,WAAW9C,GAAGiE,GAAIlC,UAAUQ,WAAWD,WAAWI,MAAMD,MAAMG,MAAMD,MAAMG,WAAW9C,GAAGkE,GAAInC,UAAUQ,WAAWD,WAAWI,MAAMD,MAAMG,MAAMD,MAAMG,WAAW9C,GAAGmE,IAAK,CAG/VN,WAAa7D,EACb,MAKF,OAAO6D,YAaRxI,UAAUkB,UAAUwH,oBAAsB,SAAUX,QAASC,QAASe,UAAWC,UAAWC,UAAWC,WACtG,OAAkBH,WAAXhB,SAAwBA,SAAWiB,WAAwBC,WAAXjB,SAAwBA,SAAWkB,WAU3FlJ,UAAUkB,UAAUiI,gBAAkB,SAAUpB,QAASC,QAASpF,eAAgBC,mBACjF,OAAO9C,aAAaS,gCAAkCT,aAAaqJ,0BAA0BrB,QAASC,QAASpF,eAAgBC,mBAAqB9C,aAAasJ,qBAAqBtB,QAASC,QAASpF,eAAgBC,oBAUzN7C,UAAUkB,UAAUmI,qBAAuB,SAAUtB,QAASC,QAASpF,eAAgBC,mBAUtF,IAPA,IAAIyG,MAAQ,KACRC,kBAAoB,EAGpB7C,UAAYC,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGhGrC,EAAI,EAAGA,EAAI+B,UAAUQ,WAAWpF,OAAQ6C,IAGhD,IAAK,IAAI6E,EAAI,EAAGA,EAAI9C,UAAUQ,WAAWvC,GAAG0C,MAAMvF,OAAQ0H,IAGzD,IAAK,IAAIC,EAAI,EAAGA,EAAI/C,UAAUQ,WAAWvC,GAAG0C,MAAMmC,GAAGjC,MAAMzF,OAAQ2H,IAAK,CAGvE,IAAIC,UAAY3J,aAAa4J,sBAAsB5B,QAASC,QAAStB,UAAUQ,WAAWvC,GAAG0C,MAAMmC,GAAGjC,MAAMkC,GAAGd,GAAIjC,UAAUQ,WAAWvC,GAAG0C,MAAMmC,GAAGjC,MAAMkC,GAAGb,GAAIlC,UAAUQ,WAAWvC,GAAG0C,MAAMmC,GAAGjC,MAAMkC,GAAGZ,GAAInC,UAAUQ,WAAWvC,GAAG0C,MAAMmC,GAAGjC,MAAMkC,GAAGX,KAG5O,MAATQ,OAAiBI,UAAYH,oBAGhCD,MAAQ,CACPrC,UAAWtC,EACXyC,KAAMoC,EACNlC,KAAMmC,GAIPF,iBAAmBG,WAOvB,OAAOJ,OAURtJ,UAAUkB,UAAUkI,0BAA4B,SAAUrB,QAASC,QAASpF,eAAgBC,mBAU3F,IAPA,IAAIyG,MAAQ,KACRC,kBAAoB,EAGpB7C,UAAYC,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGhGrC,EAAI,EAAGA,EAAI+B,UAAUQ,WAAWpF,OAAQ6C,IAGhD,IAAK,IAAI6E,EAAI,EAAGA,EAAI9C,UAAUQ,WAAWvC,GAAG0C,MAAMvF,OAAQ0H,IAGzD,IAAK,IAAIC,EAAI,EAAGA,EAAI/C,UAAUQ,WAAWvC,GAAG0C,MAAMmC,GAAGjC,MAAMzF,OAAQ2H,IAGlE,IAAK,IAAIG,EAAI,EAAGA,EAAIlD,UAAUQ,WAAWvC,GAAG0C,MAAMmC,GAAGjC,MAAMkC,GAAGhC,WAAW3F,OAAQ8H,IAAK,CAGrF,IAAIF,UAAY3J,aAAa4J,sBAAsB5B,QAASC,QAAStB,UAAUQ,WAAWvC,GAAG0C,MAAMmC,GAAGjC,MAAMkC,GAAGhC,WAAWmC,GAAGjB,GAAIjC,UAAUQ,WAAWvC,GAAG0C,MAAMmC,GAAGjC,MAAMkC,GAAGhC,WAAWmC,GAAGhB,GAAIlC,UAAUQ,WAAWvC,GAAG0C,MAAMmC,GAAGjC,MAAMkC,GAAGhC,WAAWmC,GAAGf,GAAInC,UAAUQ,WAAWvC,GAAG0C,MAAMmC,GAAGjC,MAAMkC,GAAGhC,WAAWmC,GAAGd,KAGpS,MAATQ,OAAiBI,UAAYH,oBAGhCD,MAAQ,CACPrC,UAAWtC,EACXyC,KAAMoC,EACNlC,KAAMmC,EACNjC,UAAWoC,GAIZL,iBAAmBG,WAQxB,OAAOJ,OAYRtJ,UAAUkB,UAAUyI,sBAAwB,SAAU5B,QAASC,QAASe,UAAWC,UAAWC,UAAWC,WAGxG,IAAIW,gBAAkBd,WAAcC,UAAYD,WAAa,EACzDe,gBAAkBb,WAAcC,UAAYD,WAAa,EAG7D,OAAOc,KAAKC,IACXD,KAAKE,KAAKF,KAAKG,IAAKnC,QAAUgB,UAAY,GAAKgB,KAAKG,IAAKlC,QAAUiB,UAAY,IAC/Ec,KAAKE,KAAKF,KAAKG,IAAKnC,QAAUiB,UAAY,GAAKe,KAAKG,IAAKlC,QAAUiB,UAAY,IAC/Ec,KAAKE,KAAKF,KAAKG,IAAKnC,QAAUgB,UAAY,GAAKgB,KAAKG,IAAKlC,QAAUkB,UAAY,IAC/Ea,KAAKE,KAAKF,KAAKG,IAAKnC,QAAUiB,UAAY,GAAKe,KAAKG,IAAKlC,QAAUkB,UAAY,IAC/Ea,KAAKE,KAAKF,KAAKG,IAAKnC,QAAU8B,gBAAkB,GAAKE,KAAKG,IAAKlC,QAAUiB,UAAY,IACrFc,KAAKE,KAAKF,KAAKG,IAAKnC,QAAU8B,gBAAkB,GAAKE,KAAKG,IAAKlC,QAAUkB,UAAY,IACrFa,KAAKE,KAAKF,KAAKG,IAAKnC,QAAUgB,UAAY,GAAKgB,KAAKG,IAAKlC,QAAU8B,gBAAkB,IACrFC,KAAKE,KAAKF,KAAKG,IAAKnC,QAAUiB,UAAY,GAAKe,KAAKG,IAAKlC,QAAU8B,gBAAkB,MASvF9J,UAAUkB,UAAUiJ,kBAAoB,SAAUvH,eAAgBC,mBAMjE,IAHA,IAAI6D,UAAYC,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGhGrC,EAAI,EAAGA,EAAI+B,UAAUQ,WAAWpF,OAAQ6C,IAChD5E,aAAaqK,mBAAmBzF,EAAG/B,eAAgBC,oBASrD7C,UAAUkB,UAAUmJ,aAAe,SAAUzH,eAAgBC,mBAM5D,IAHA,IAAI6D,UAAYC,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGhGrC,EAAI,EAAGA,EAAI+B,UAAUQ,WAAWpF,OAAQ6C,IAChD,IAAK,IAAI6E,EAAI,EAAGA,EAAI9C,UAAUQ,WAAWvC,GAAG0C,MAAMvF,OAAQ0H,IACzDzJ,aAAauK,cAAc3F,EAAG6E,EAAG5G,eAAgBC,oBAUpD7C,UAAUkB,UAAUqJ,aAAe,SAAU3H,eAAgBC,mBAM5D,IAHA,IAAI6D,UAAYC,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGhGrC,EAAI,EAAGA,EAAI+B,UAAUQ,WAAWpF,OAAQ6C,IAChD,IAAK,IAAI6E,EAAI,EAAGA,EAAI9C,UAAUQ,WAAWvC,GAAG0C,MAAMvF,OAAQ0H,IACzD,IAAK,IAAIC,EAAI,EAAGA,EAAI/C,UAAUQ,WAAWvC,GAAG0C,MAAMmC,GAAGjC,MAAMzF,OAAQ2H,IAClE1J,aAAayK,cAAc7F,EAAG6E,EAAGC,EAAG7G,eAAgBC,oBAUxD7C,UAAUkB,UAAUuJ,iBAAmB,SAAU5H,mBAChDA,kBAAkB6H,WAAWC,OAC7BC,WAAWC,sBAAsBhI,kBAAkB6H,WAAY7H,kBAAmBA,kBAAkBiI,UAAUC,MAAOlI,kBAAkBiI,UAAUE,OAAQnI,kBAAkBiI,UAAUC,MAAQ,EAAGlI,kBAAkBiI,UAAUE,OAAS,GACrOnI,kBAAkB6H,WAAWO,UAAU,EAAG,EAAGpI,kBAAkBiI,UAAUC,MAAOlI,kBAAkBiI,UAAUE,QAC5GnI,kBAAkB6H,WAAWQ,WAS9BlL,UAAUkB,UAAUiK,kBAAoB,SAAUC,UAAWxI,eAAgBC,mBAC5E9C,aAAaS,gCAAkCT,aAAasL,4BAA4BD,UAAWxI,eAAgBC,mBAAqB9C,aAAauL,uBAAuBF,UAAWxI,eAAgBC,oBASxM7C,UAAUkB,UAAUoK,uBAAyB,SAAUF,UAAWxI,eAAgBC,mBAGjF,IAAI6D,UAAYC,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGrGuE,OAASxL,aAAayL,iBAAiBJ,UAAWxI,eAAgBC,mBAGtE0I,OAASA,OAAOE,KAAK1L,aAAa2L,WAGlCH,OAASxL,aAAa4L,cAAcJ,QAGpC,IAAK,IAAI5G,EAAI,EAAGA,EAAI4G,OAAOzJ,OAAQ6C,IAAK,CAGvC,GAAQ,EAAJA,GAAS4G,OAAO5G,GAAG2C,MAAQiE,OAAO5G,EAAI,GAAG2C,KAAO,GAAKiE,OAAO5G,GAAGyC,MAAQmE,OAAO5G,EAAI,GAAGyC,MAAQmE,OAAO5G,GAAGsC,WAAasE,OAAO5G,EAAI,GAAGsC,UAAW,CAGhJ,IAAI2E,MAAQlF,UAAUQ,WAAWqE,OAAO5G,GAAGsC,WAAWI,MAAMkE,OAAO5G,GAAGyC,MAAMG,MAAMgE,OAAO5G,GAAG2C,MACxFuE,cAAgBnF,UAAUQ,WAAWqE,OAAO5G,EAAI,GAAGsC,WAAWI,MAAMkE,OAAO5G,EAAI,GAAGyC,MAAMG,MAAMgE,OAAO5G,EAAI,GAAG2C,MAG5GwE,IAAMD,cAAcjD,GAAKgD,MAAMjD,GAAKkD,cAAcjD,GAAKiD,cAAclD,GACrEoD,IAAMF,cAAcjD,GAAKgD,MAAMjD,GAAKiD,MAAMjD,GAAKiD,MAAMhD,GACrDoD,IAAMH,cAAchD,GAAK+C,MAAM9C,GAAK+C,cAAc/C,GAAK+C,cAAchD,GACrEoD,IAAMJ,cAAchD,GAAK+C,MAAM9C,GAAK8C,MAAM/C,GAAK+C,MAAM9C,GAGzD/I,aAAamM,iBAAiBJ,IAAKC,IAAKC,IAAKC,IAAKrJ,eAAgBC,mBAInE9C,aAAayK,cAAce,OAAO5G,GAAGsC,UAAWsE,OAAO5G,GAAGyC,KAAMmE,OAAO5G,GAAG2C,KAAM1E,eAAgBC,qBAUlG7C,UAAUkB,UAAUmK,4BAA8B,SAAUD,UAAWxI,eAAgBC,mBAGtF,IAAI6D,UAAYC,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGrGmF,YAAcpM,aAAaqM,sBAAsBhB,UAAWxI,eAAgBC,mBAGhFsJ,YAAcA,YAAYV,KAAK1L,aAAasM,gBAG5CF,YAAcpM,aAAauM,mBAAmBH,aAG9C,IAAK,IAAIxH,EAAI,EAAGA,EAAIwH,YAAYrK,OAAQ6C,IAAK,CAG5C,GAAQ,EAAJA,GAASwH,YAAYxH,GAAG2C,MAAQ6E,YAAYxH,EAAI,GAAG2C,KAAO,GAAK6E,YAAYxH,GAAGyC,MAAQ+E,YAAYxH,EAAI,GAAGyC,MAAQ+E,YAAYxH,GAAGsC,WAAakF,YAAYxH,EAAI,GAAGsC,WAAalH,aAAa8H,sBAAsBsE,YAAYxH,EAAI,GAAGsC,UAAWkF,YAAYxH,EAAI,GAAGyC,KAAM+E,YAAYxH,EAAI,GAAG2C,KAAM6E,YAAYxH,EAAI,GAAG6C,UAAWd,YAA0C,GAA5ByF,YAAYxH,GAAG6C,UAAgB,CAG9W,IAAI+E,WAAa7F,UAAUQ,WAAWiF,YAAYxH,GAAGsC,WAAWI,MAAM8E,YAAYxH,GAAGyC,MAAMG,MAAM4E,YAAYxH,GAAG2C,MAAMG,WAAW0E,YAAYxH,GAAG6C,WAC5IgF,mBAAqB9F,UAAUQ,WAAWiF,YAAYxH,EAAI,GAAGsC,WAAWI,MAAM8E,YAAYxH,EAAI,GAAGyC,MAAMG,MAAM4E,YAAYxH,EAAI,GAAG2C,MAAMG,WAAW0E,YAAYxH,EAAI,GAAG6C,WAGpKsE,IAAMU,mBAAmB5D,GAAK2D,WAAW5D,GAAK6D,mBAAmB5D,GAAK4D,mBAAmB7D,GACzFoD,IAAMS,mBAAmB5D,GAAK2D,WAAW5D,GAAK4D,WAAW5D,GAAK4D,WAAW3D,GACzEoD,IAAMQ,mBAAmB3D,GAAK0D,WAAWzD,GAAK0D,mBAAmB1D,GAAK0D,mBAAmB3D,GACzFoD,IAAMO,mBAAmB3D,GAAK0D,WAAWzD,GAAKyD,WAAW1D,GAAK0D,WAAWzD,GAG7E/I,aAAamM,iBAAiBJ,IAAKC,IAAKC,IAAKC,IAAKrJ,eAAgBC,mBAInE9C,aAAa0M,mBAAmBN,YAAYxH,GAAGsC,UAAWkF,YAAYxH,GAAGyC,KAAM+E,YAAYxH,GAAG2C,KAAM6E,YAAYxH,GAAG6C,UAAW5E,eAAgBC,qBAWhJ7C,UAAUkB,UAAUsK,iBAAmB,SAAUJ,UAAWxI,eAAgBC,mBAM3E,IAHA,IAAI0I,OAAS,GAGJ5G,EAAI,EAAGA,EAAIyG,UAAUtJ,OAAQ6C,IAGrC4G,OAASA,OAAOmB,OAAO3M,aAAa4M,gBAAgBvB,UAAUzG,GAAGiI,aAAcxB,UAAUzG,GAAGkI,WAAYzB,UAAUzG,GAAGmI,YAAalK,eAAgBC,oBAInJ,OAAO0I,QAURvL,UAAUkB,UAAU6L,0BAA4B,SAAUH,aAAcC,WAAYC,YAAaE,wBAGhG,QAAIH,WAAW5F,UAAY2F,aAAa3F,eAKpC4F,WAAW5F,WAAa2F,aAAa3F,WAAa4F,WAAWzF,KAAOwF,aAAaxF,UAKjF0F,aAAeD,WAAW5F,WAAa2F,aAAa3F,WAAa4F,WAAWzF,MAAQwF,aAAaxF,MAAQyF,WAAWvF,KAAOsF,aAAatF,WAKvIwF,aAAeD,WAAW5F,WAAa2F,aAAa3F,WAAa4F,WAAWzF,MAAQwF,aAAaxF,MAAQwF,aAAatF,KAAOuF,WAAWvF,UAKzI0F,wBAA0BF,aAAeD,WAAW5F,WAAa2F,aAAa3F,WAAa4F,WAAWzF,MAAQwF,aAAaxF,MAAQwF,aAAatF,MAAQuF,WAAWvF,MAAQuF,WAAWrF,UAAYoF,aAAapF,cAK/MwF,yBAA2BF,aAAeD,WAAW5F,WAAa2F,aAAa3F,WAAa4F,WAAWzF,MAAQwF,aAAaxF,MAAQwF,aAAatF,MAAQuF,WAAWvF,MAAQsF,aAAapF,UAAYqF,WAAWrF,gBAiBrNxH,UAAUkB,UAAUyL,gBAAkB,SAAUC,aAAcC,WAAYC,YAAalK,eAAgBC,mBAGtG,IAAI0I,OAAS,GAGb,IAAKxL,aAAagN,0BAA0BH,aAAcC,WAAYC,aAAa,GAAQ,CAG1F,IAAIG,OAASL,aACbA,aAAeC,WACfA,WAAaI,OAOd,IAHA,IAAIvG,UAAYC,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGhGrC,EAAI,EAAGA,EAAI+B,UAAUQ,WAAWpF,OAAQ6C,IAAK,CAGrD,IAAIuI,WAAaxG,UAAUQ,WAAWvC,GAGtC,GAAIA,GAAKiI,aAAa3F,WAAatC,GAAKkI,WAAW5F,UAGlD,IAAK,IAAIuC,EAAI,EAAGA,EAAI0D,WAAW7F,MAAMvF,OAAQ0H,IAG5C,IAAK,IAAIC,EAAI,EAAGA,EAAIyD,WAAW7F,MAAMmC,GAAGjC,MAAMzF,OAAQ2H,IAGjD1J,aAAaoN,gBAAgBxI,EAAG6E,EAAGC,EAAGmD,aAAcC,WAAYC,cAGnEvB,OAAO6B,KAAK,CAAEnG,UAAWtC,EAAGyC,KAAMoC,EAAGlC,KAAMmC,IAQhD,OAAO8B,QAURvL,UAAUkB,UAAUkL,sBAAwB,SAAUhB,UAAWxI,eAAgBC,mBAMhF,IAHA,IAAIsJ,YAAc,GAGTxH,EAAI,EAAGA,EAAIyG,UAAUtJ,OAAQ6C,IAGrCwH,YAAcA,YAAYO,OAAO3M,aAAasN,qBAAqBjC,UAAUzG,GAAGiI,aAAcxB,UAAUzG,GAAGkI,WAAYzB,UAAUzG,GAAGmI,YAAalK,eAAgBC,oBAIlK,OAAOsJ,aAYRnM,UAAUkB,UAAUmM,qBAAuB,SAAUT,aAAcC,WAAYC,YAAalK,eAAgBC,mBAG3G,IAAIsJ,YAAc,GAGlB,IAAKpM,aAAagN,0BAA0BH,aAAcC,WAAYC,aAAa,GAAO,CAGzF,IAAIG,OAASL,aACbA,aAAeC,WACfA,WAAaI,OAOd,IAHA,IAAIvG,UAAYC,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGhGrC,EAAI,EAAGA,EAAI+B,UAAUQ,WAAWpF,OAAQ6C,IAAK,CAGrD,IAAIuI,WAAaxG,UAAUQ,WAAWvC,GAGtC,GAAIA,GAAKiI,aAAa3F,WAAatC,GAAKkI,WAAW5F,UAGlD,IAAK,IAAIuC,EAAI,EAAGA,EAAI0D,WAAW7F,MAAMvF,OAAQ0H,IAG5C,IAAK,IAAIC,EAAI,EAAGA,EAAIyD,WAAW7F,MAAMmC,GAAGjC,MAAMzF,OAAQ2H,IAGrD,IAAK,IAAIG,EAAI,EAAGA,EAAIsD,WAAW7F,MAAMmC,GAAGjC,MAAMkC,GAAGhC,WAAW3F,OAAQ8H,IAG/D7J,aAAauN,qBAAqB3I,EAAG6E,EAAGC,EAAGG,EAAGgD,aAAcC,WAAYC,cAG3EX,YAAYiB,KAAK,CAAEnG,UAAWtC,EAAGyC,KAAMoC,EAAGlC,KAAMmC,EAAGjC,UAAWoC,IASpE,OAAOuC,aASRnM,UAAUkB,UAAUwK,UAAY,SAAU6B,EAAGC,GAC5C,OAAID,EAAEtG,UAAYuG,EAAEvG,WACX,EAEAsG,EAAEtG,UAAYuG,EAAEvG,UACjB,EAECsG,EAAEnG,KAAOoG,EAAEpG,MACX,EAEAmG,EAAEnG,KAAOoG,EAAEpG,KACZ,EAECmG,EAAEjG,KAAOkG,EAAElG,MACX,EAEAiG,EAAEjG,KAAOkG,EAAElG,KACZ,EAGA,GAUTtH,UAAUkB,UAAUmL,eAAiB,SAAUkB,EAAGC,GACjD,OAAID,EAAEtG,UAAYuG,EAAEvG,WACX,EAEAsG,EAAEtG,UAAYuG,EAAEvG,UACjB,EAECsG,EAAEnG,KAAOoG,EAAEpG,MACX,EAEAmG,EAAEnG,KAAOoG,EAAEpG,KACZ,EAECmG,EAAEjG,KAAOkG,EAAElG,MACX,EAEAiG,EAAEjG,KAAOkG,EAAElG,KACZ,EAECiG,EAAE/F,UAAYgG,EAAEhG,WAChB,EAEA+F,EAAE/F,UAAYgG,EAAEhG,UACjB,EAGA,GASTxH,UAAUkB,UAAUyK,cAAgB,SAAUJ,QAG7C,IAAK,IAAI5G,EAAI,EAAGA,EAAI4G,OAAOzJ,OAAQ6C,IAG1B,EAAJA,GAAS4G,OAAO5G,GAAG2C,MAAQiE,OAAO5G,EAAI,GAAG2C,MAAQiE,OAAO5G,GAAGyC,MAAQmE,OAAO5G,EAAI,GAAGyC,MAAQmE,OAAO5G,GAAGsC,WAAasE,OAAO5G,EAAI,GAAGsC,YAGjIsE,OAAOkC,OAAO9I,EAAG,GACjBA,KAKF,OAAO4G,QAQRvL,UAAUkB,UAAUoL,mBAAqB,SAAUH,aAGlD,IAAK,IAAIxH,EAAI,EAAGA,EAAIwH,YAAYrK,OAAQ6C,IAG/B,EAAJA,GAASwH,YAAYxH,GAAG6C,WAAa2E,YAAYxH,EAAI,GAAG6C,WAAa2E,YAAYxH,GAAG2C,MAAQ6E,YAAYxH,EAAI,GAAG2C,MAAQ6E,YAAYxH,GAAGyC,MAAQ+E,YAAYxH,EAAI,GAAGyC,MAAQ+E,YAAYxH,GAAGsC,WAAakF,YAAYxH,EAAI,GAAGsC,YAG3NkF,YAAYsB,OAAO9I,EAAG,GACtBA,KAKF,OAAOwH,aAURnM,UAAUkB,UAAUwM,wBAA0B,SAAUtC,UAAWxI,eAAgBC,mBAWlF,IARA,IAAI8K,gBAAkB,CACrBC,GAAI,EACJC,GAAI,EACJC,GAAI,EACJC,GAAI,GAIIpJ,EAAI,EAAGA,EAAIyG,UAAUtJ,OAAQ6C,IAAK,CAG1C,IAAIqJ,eAAiBjO,aAAakO,uBAAuB7C,UAAUzG,GAAGiI,aAAcxB,UAAUzG,GAAGkI,WAAYzB,UAAUzG,GAAGmI,YAAalK,eAAgBC,mBAGvJ8K,gBAAgBC,GAAK7D,KAAKC,IAAI2D,gBAAgBC,GAAII,eAAeJ,IACjED,gBAAgBE,GAAK9D,KAAKmE,IAAIP,gBAAgBE,GAAIG,eAAeH,IACjEF,gBAAgBG,GAAK/D,KAAKC,IAAI2D,gBAAgBG,GAAIE,eAAeF,IACjEH,gBAAgBI,GAAKhE,KAAKmE,IAAIP,gBAAgBI,GAAIC,eAAeD,IAIlE,OAAOJ,iBAUR3N,UAAUkB,UAAUiN,6BAA+B,SAAU/C,UAAWxI,eAAgBC,mBAWvF,IARA,IAAI8K,gBAAkB,CACrBC,GAAI,EACJC,GAAI,EACJC,GAAI,EACJC,GAAI,GAIIpJ,EAAI,EAAGA,EAAIyG,UAAUtJ,OAAQ6C,IAAK,CAG1C,IAAIqJ,eAAiBjO,aAAaqO,4BAA4BhD,UAAUzG,GAAGiI,aAAcxB,UAAUzG,GAAGkI,WAAYzB,UAAUzG,GAAGmI,YAAalK,eAAgBC,mBAG5J8K,gBAAgBC,GAAK7D,KAAKC,IAAI2D,gBAAgBC,GAAII,eAAeJ,IACjED,gBAAgBE,GAAK9D,KAAKmE,IAAIP,gBAAgBE,GAAIG,eAAeH,IACjEF,gBAAgBG,GAAK/D,KAAKC,IAAI2D,gBAAgBG,GAAIE,eAAeF,IACjEH,gBAAgBI,GAAKhE,KAAKmE,IAAIP,gBAAgBI,GAAIC,eAAeD,IAIlE,OAAOJ,iBASR3N,UAAUkB,UAAUmN,kBAAoB,SAAUC,UAAW1L,eAAgBC,mBAc5E,IAXA,IAAImL,eAAiB,CACpBJ,GAAI,EACJC,GAAI,EACJC,GAAI,EACJC,GAAI,GAIDrH,UAAYC,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGhGrC,EAAI,EAAGA,EAAI2J,UAAUxM,OAAQ6C,IAAK,CAG1C,IAAIiH,MAAQlF,UAAUQ,WAAWoH,UAAU3J,GAAGsC,WAAWI,MAAMiH,UAAU3J,GAAGyC,MAAMG,MAAM+G,UAAU3J,GAAG2C,MAGrG0G,eAAeJ,GAAK7D,KAAKC,IAAIgE,eAAeJ,GAAIhC,MAAMjD,GAAIiD,MAAMhD,IAChEoF,eAAeH,GAAK9D,KAAKmE,IAAIF,eAAeH,GAAIjC,MAAMjD,GAAIiD,MAAMhD,IAChEoF,eAAeF,GAAK/D,KAAKC,IAAIgE,eAAeF,GAAIlC,MAAM/C,GAAI+C,MAAM9C,IAChEkF,eAAeD,GAAKhE,KAAKmE,IAAIF,eAAeD,GAAInC,MAAM/C,GAAI+C,MAAM9C,IAIjE,OAAOkF,gBASRhO,UAAUkB,UAAUqN,uBAAyB,SAAUC,eAAgB5L,eAAgBC,mBActF,IAXA,IAAImL,eAAiB,CACpBJ,GAAI,EACJC,GAAI,EACJC,GAAI,EACJC,GAAI,GAIDrH,UAAYC,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGhGrC,EAAI,EAAGA,EAAI6J,eAAe1M,OAAQ6C,IAAK,CAG/C,IAAIiH,MAAQlF,UAAUQ,WAAWsH,eAAe7J,GAAGsC,WAAWI,MAAMmH,eAAe7J,GAAGyC,MAAMG,MAAMiH,eAAe7J,GAAG2C,MAAMG,WAAW+G,eAAe7J,GAAG6C,WAGvJwG,eAAeJ,GAAK7D,KAAKC,IAAIgE,eAAeJ,GAAIhC,MAAMjD,GAAIiD,MAAMhD,IAChEoF,eAAeH,GAAK9D,KAAKmE,IAAIF,eAAeH,GAAIjC,MAAMjD,GAAIiD,MAAMhD,IAChEoF,eAAeF,GAAK/D,KAAKC,IAAIgE,eAAeF,GAAIlC,MAAM/C,GAAI+C,MAAM9C,IAChEkF,eAAeD,GAAKhE,KAAKmE,IAAIF,eAAeD,GAAInC,MAAM/C,GAAI+C,MAAM9C,IAIjE,OAAOkF,gBAYRhO,UAAUkB,UAAU+M,uBAAyB,SAAUrB,aAAcC,WAAYC,YAAalK,eAAgBC,mBAG7G,IAAImL,eAAiB,CACpBJ,GAAI,EACJC,GAAI,EACJC,GAAI,EACJC,GAAI,GAIL,GAAKlB,WAAW5F,UAAY2F,aAAa3F,WAAe4F,WAAW5F,WAAa2F,aAAa3F,WAAa4F,WAAWzF,KAAOwF,aAAaxF,MAAUyF,WAAW5F,WAAa2F,aAAa3F,WAAa4F,WAAWzF,MAAQwF,aAAaxF,MAAQyF,WAAWvF,KAAOsF,aAAatF,KAAO,CAClR,IAAI2F,OAASL,aACbA,aAAeC,WACfA,WAAaI,OAOd,IAHA,IAAIvG,UAAYC,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGhGrC,EAAI,EAAGA,EAAI+B,UAAUQ,WAAWpF,OAAQ6C,IAAK,CAGrD,IAAIuI,WAAaxG,UAAUQ,WAAWvC,GAGtC,GAAIA,GAAKiI,aAAa3F,WAAatC,GAAKkI,WAAW5F,UAGlD,IAAK,IAAIuC,EAAI,EAAGA,EAAI0D,WAAW7F,MAAMvF,OAAQ0H,IAG5C,IAAK,IAAIC,EAAI,EAAGA,EAAIyD,WAAW7F,MAAMmC,GAAGjC,MAAMzF,OAAQ2H,IAAK,CAGrC1J,aAAaoN,gBAAgBxI,EAAG6E,EAAGC,EAAGmD,aAAcC,WAAYC,eAMpFkB,eAAeJ,GAAK7D,KAAKC,IAAIgE,eAAeJ,GAAIV,WAAW7F,MAAMmC,GAAGjC,MAAMkC,GAAGd,GAAIuE,WAAW7F,MAAMmC,GAAGjC,MAAMkC,GAAGb,IAC9GoF,eAAeH,GAAK9D,KAAKmE,IAAIF,eAAeH,GAAIX,WAAW7F,MAAMmC,GAAGjC,MAAMkC,GAAGd,GAAIuE,WAAW7F,MAAMmC,GAAGjC,MAAMkC,GAAGb,IAC9GoF,eAAeF,GAAK/D,KAAKC,IAAIgE,eAAeF,GAAIZ,WAAW7F,MAAMmC,GAAGjC,MAAMkC,GAAGZ,GAAIqE,WAAW7F,MAAMmC,GAAGjC,MAAMkC,GAAGX,IAC9GkF,eAAeD,GAAKhE,KAAKmE,IAAIF,eAAeD,GAAIb,WAAW7F,MAAMmC,GAAGjC,MAAMkC,GAAGZ,GAAIqE,WAAW7F,MAAMmC,GAAGjC,MAAMkC,GAAGX,MAQnH,OAAOkF,gBAYRhO,UAAUkB,UAAUkN,4BAA8B,SAAUxB,aAAcC,WAAYC,YAAalK,eAAgBC,mBAGlH,IAAImL,eAAiB,CACpBJ,GAAI,EACJC,GAAI,EACJC,GAAI,EACJC,GAAI,GAIL,GAAKlB,WAAW5F,UAAY2F,aAAa3F,WACvC4F,WAAW5F,WAAa2F,aAAa3F,WAAa4F,WAAWzF,KAAOwF,aAAaxF,MACjFyF,WAAW5F,WAAa2F,aAAa3F,WAAa4F,WAAWzF,MAAQwF,aAAaxF,MAAQyF,WAAWvF,KAAOsF,aAAatF,MACzHuF,WAAW5F,WAAa2F,aAAa3F,WAAa4F,WAAWzF,MAAQwF,aAAaxF,MAAQyF,WAAWvF,MAAQsF,aAAatF,MAAQuF,WAAWrF,UAAYoF,aAAapF,UAAY,CACnL,IAAIyF,OAASL,aACbA,aAAeC,WACfA,WAAaI,OAOd,IAHA,IAAIvG,UAAYC,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGhGrC,EAAI,EAAGA,EAAI+B,UAAUQ,WAAWpF,OAAQ6C,IAAK,CAGrD,IAAIuI,WAAaxG,UAAUQ,WAAWvC,GAGtC,GAAIA,GAAKiI,aAAa3F,WAAatC,GAAKkI,WAAW5F,UAGlD,IAAK,IAAIuC,EAAI,EAAGA,EAAI0D,WAAW7F,MAAMvF,OAAQ0H,IAG5C,IAAK,IAAIC,EAAI,EAAGA,EAAIyD,WAAW7F,MAAMmC,GAAGjC,MAAMzF,OAAQ2H,IAGrD,IAAK,IAAIG,EAAI,EAAGA,EAAIsD,WAAW7F,MAAMmC,GAAGjC,MAAMkC,GAAGhC,WAAW3F,OAAQ8H,IAAK,CAG9C7J,aAAauN,qBAAqB3I,EAAG6E,EAAGC,EAAGG,EAAGgD,aAAcC,WAAYC,eAMjGkB,eAAeJ,GAAK7D,KAAKC,IAAIgE,eAAeJ,GAAIV,WAAW7F,MAAMmC,GAAGjC,MAAMkC,GAAGhC,WAAWmC,GAAGjB,GAAIuE,WAAW7F,MAAMmC,GAAGjC,MAAMkC,GAAGhC,WAAWmC,GAAGhB,IAC1IoF,eAAeH,GAAK9D,KAAKmE,IAAIF,eAAeH,GAAIX,WAAW7F,MAAMmC,GAAGjC,MAAMkC,GAAGhC,WAAWmC,GAAGjB,GAAIuE,WAAW7F,MAAMmC,GAAGjC,MAAMkC,GAAGhC,WAAWmC,GAAGhB,IAC1IoF,eAAeF,GAAK/D,KAAKC,IAAIgE,eAAeF,GAAIZ,WAAW7F,MAAMmC,GAAGjC,MAAMkC,GAAGhC,WAAWmC,GAAGf,GAAIqE,WAAW7F,MAAMmC,GAAGjC,MAAMkC,GAAGhC,WAAWmC,GAAGd,IAC1IkF,eAAeD,GAAKhE,KAAKmE,IAAIF,eAAeD,GAAIb,WAAW7F,MAAMmC,GAAGjC,MAAMkC,GAAGhC,WAAWmC,GAAGf,GAAIqE,WAAW7F,MAAMmC,GAAGjC,MAAMkC,GAAGhC,WAAWmC,GAAGd,MAShJ,OAAOkF,gBASRhO,UAAUkB,UAAUuN,YAAc,SAAU7C,MAAOhJ,eAAgBC,mBAMlE,OAHgB8D,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGxFE,WAAW0E,MAAM3E,WAAWI,MAAMuE,MAAMxE,MAAMG,MAAMqE,MAAMtE,MAAMoH,SAGlF1O,UAAUkB,UAAUyN,iBAAmB,SAAUpC,WAAY3J,eAAgBC,mBAM5E,OAHgB8D,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGxFE,WAAWqF,WAAWtF,WAAWI,MAAMkF,WAAWnF,MAAMG,MAAMgF,WAAWjF,MAAMG,WAAW8E,WAAW/E,WAAWkH,SASlI1O,UAAUkB,UAAU0N,gBAAkB,SAAUN,UAAW1L,eAAgBC,mBAS1E,IANA,IAAIgM,OAAS,GAGTnI,UAAYC,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGhGrC,EAAI,EAAGA,EAAI2J,UAAUxM,OAAQ6C,IAG7B,EAAJA,IACHkK,QAAU,KAIXA,QAAUnI,UAAUQ,WAAWoH,UAAU3J,GAAGsC,WAAWI,MAAMiH,UAAU3J,GAAGyC,MAAMG,MAAM+G,UAAU3J,GAAG2C,MAAMoH,QAI1G,OAAOG,QASR7O,UAAUkB,UAAU4N,qBAAuB,SAAUN,eAAgB5L,eAAgBC,mBASpF,IANA,IAAIgM,OAAS,GAGTnI,UAAYC,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGhGrC,EAAI,EAAGA,EAAI6J,eAAe1M,OAAQ6C,IAG1CkK,QAAUnI,UAAUQ,WAAWsH,eAAe7J,GAAGsC,WAAWI,MAAMmH,eAAe7J,GAAGyC,MAAMG,MAAMiH,eAAe7J,GAAG2C,MAAMG,WAAW+G,eAAe7J,GAAG6C,WAAWkH,QAG5J3O,aAAa8H,sBAAsB2G,eAAe7J,GAAGsC,UAAWuH,eAAe7J,GAAGyC,KAAMoH,eAAe7J,GAAG2C,KAAMkH,eAAe7J,GAAG6C,UAAWd,YAAc/B,EAAI,EAAI6J,eAAe1M,SACrL+M,QAAU,KAKZ,OAAOA,QAUR7O,UAAUkB,UAAU6N,sBAAwB,SAAU3D,UAAWxI,eAAgBoM,UAAWC,UAG3F,IAAIC,eAAiB,GAGrBA,gBAAkBF,UAGlB,IAAK,IAAIrK,EAAI,EAAGA,EAAIyG,UAAUtJ,OAAQ6C,IAGrCuK,gBAAkBnP,aAAaoP,qBAAqB/D,UAAUzG,GAAGiI,aAAcxB,UAAUzG,GAAGkI,WAAYzB,UAAUzG,GAAGmI,YAAalK,gBAOnI,OAHAsM,gBAAkBD,UAenBjP,UAAUkB,UAAUiO,qBAAuB,SAAUvC,aAAcC,WAAYC,YAAalK,gBAG3F,IAAIwM,cAAgB,GAGpB,GAAKvC,WAAW5F,UAAY2F,aAAa3F,WAAe4F,WAAW5F,WAAa2F,aAAa3F,WAAa4F,WAAWzF,KAAOwF,aAAaxF,MAAUyF,WAAW5F,WAAa2F,aAAa3F,WAAa4F,WAAWzF,MAAQwF,aAAaxF,MAAQyF,WAAWvF,KAAOsF,aAAatF,KAAO,CAClR,IAAI2F,OAASL,aACbA,aAAeC,WACfA,WAAaI,OAOd,IAHA,IAAIvG,UAAYC,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGhGrC,EAAI,EAAGA,EAAI+B,UAAUQ,WAAWpF,OAAQ6C,IAAK,CAGrD,IAAIuI,WAAaxG,UAAUQ,WAAWvC,GAGtC,GAAIA,GAAKiI,aAAa3F,WAAatC,GAAKkI,WAAW5F,UAAW,CAGzDtC,EAAIiI,aAAa3F,YACpBmI,eAAiB,KAIlB,IAAK,IAAI5F,EAAI,EAAGA,EAAI0D,WAAW7F,MAAMvF,OAAQ0H,IAAK,EAG7C7E,EAAIiI,aAAa3F,WAAauC,EAAIoD,aAAaxF,QAClDgI,eAAiB,KAOlB,IAHA,IAAIC,0BAA2B,EAGtB5F,EAAI,EAAGA,EAAIyD,WAAW7F,MAAMmC,GAAGjC,MAAMzF,OAAQ2H,IAAK,CAG1D,IAAI6F,eAAiBvP,aAAaoN,gBAAgBxI,EAAG6E,EAAGC,EAAGmD,aAAcC,WAAYC,aAGjFwC,iBAGCD,0BAA4BnC,WAAW7F,MAAMmC,GAAGjC,MAAMkC,EAAI,GAAG8F,aAGhEH,eAAiB,KAIlBA,eAAiBlC,WAAW7F,MAAMmC,GAAGjC,MAAMkC,GAAGiF,SAI/CW,yBAA2BC,kBAY/B,OALKxC,cACJsC,cAAgBA,cAAcI,MAAM,KAAKC,UAAUC,KAAK,MAIlDN,eAURpP,UAAUkB,UAAUyO,2BAA6B,SAAUvE,UAAWxI,eAAgBoM,UAAWC,UAGhG,IAAIC,eAAiB,GAGrBA,gBAAkBF,UAGlB,IAAK,IAAIrK,EAAI,EAAGA,EAAIyG,UAAUtJ,OAAQ6C,IAGrCuK,gBAAkBnP,aAAa6P,0BAA0BxE,UAAUzG,GAAGiI,aAAcxB,UAAUzG,GAAGkI,WAAYzB,UAAUzG,GAAGmI,YAAalK,gBAOxI,OAHAsM,gBAAkBD,UAenBjP,UAAUkB,UAAU0O,0BAA4B,SAAUhD,aAAcC,WAAYC,YAAalK,gBAGhG,IAAIwM,cAAgB,GAGpB,GAAKvC,WAAW5F,UAAY2F,aAAa3F,WACvC4F,WAAW5F,WAAa2F,aAAa3F,WAAa4F,WAAWzF,KAAOwF,aAAaxF,MACjFyF,WAAW5F,WAAa2F,aAAa3F,WAAa4F,WAAWzF,MAAQwF,aAAaxF,MAAQyF,WAAWvF,KAAOsF,aAAatF,MACzHuF,WAAW5F,WAAa2F,aAAa3F,WAAa4F,WAAWzF,MAAQwF,aAAaxF,MAAQyF,WAAWvF,MAAQsF,aAAatF,MAAQuF,WAAWrF,UAAYoF,aAAapF,UAAY,CACnL,IAAIyF,OAASL,aACbA,aAAeC,WACfA,WAAaI,OAOd,IAHA,IAAIvG,UAAYC,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGhGrC,EAAI,EAAGA,EAAI+B,UAAUQ,WAAWpF,OAAQ6C,IAAK,CAGrD,IAAIuI,WAAaxG,UAAUQ,WAAWvC,GAGtC,GAAIA,GAAKiI,aAAa3F,WAAatC,GAAKkI,WAAW5F,UAAW,CAGzDtC,EAAIiI,aAAa3F,YACpBmI,eAAiB,KAIlB,IAAK,IAAI5F,EAAI,EAAGA,EAAI0D,WAAW7F,MAAMvF,OAAQ0H,IAAK,EAG7C7E,EAAIiI,aAAa3F,WAAauC,EAAIoD,aAAaxF,QAClDgI,eAAiB,KAIlB,IAAK,IAAI3F,EAAI,EAAGA,EAAIyD,WAAW7F,MAAMmC,GAAGjC,MAAMzF,OAAQ2H,IAAK,EAGtD9E,EAAIiI,aAAa3F,WAAauC,EAAIoD,aAAaxF,MAAQqC,EAAImD,aAAatF,QAC3E8H,eAAiB,KAIlB,IAAK,IAAIxF,EAAI,EAAGA,EAAIsD,WAAW7F,MAAMmC,GAAGjC,MAAMkC,GAAGhC,WAAW3F,OAAQ8H,IAAK,CAG9C7J,aAAauN,qBAAqB3I,EAAG6E,EAAGC,EAAGG,EAAGgD,aAAcC,WAAYC,eAMjGsC,eAAiBlC,WAAW7F,MAAMmC,GAAGjC,MAAMkC,GAAGhC,WAAWmC,GAAG8E,aAclE,OALK5B,cACJsC,cAAgBA,cAAcI,MAAM,KAAKC,UAAUC,KAAK,MAIlDN,eASRpP,UAAUkB,UAAU2O,mBAAqB,SAAUjE,MAAOhJ,eAAgBC,mBAMzE,OAHgB8D,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGxFE,WAAW0E,MAAM3E,WAAWI,MAAMuE,MAAMxE,MAAMG,MAAMqE,MAAMtE,MAAMwI,MASlF9P,UAAUkB,UAAU6O,qBAAuB,SAAUnE,MAAOhJ,eAAgBC,mBAM3E,OAHgB8D,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGxFE,WAAW0E,MAAM3E,WAAWI,MAAMuE,MAAMxE,MAAMG,MAAMqE,MAAMtE,MAAM0I,QASlFhQ,UAAUkB,UAAU+O,wBAA0B,SAAU1D,WAAY3J,eAAgBC,mBAMnF,OAHgB8D,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGxFE,WAAWqF,WAAWtF,WAAWI,MAAMkF,WAAWnF,MAAMG,MAAMgF,WAAWjF,MAAMG,WAAW8E,WAAW/E,WAAWsI,MASlI9P,UAAUkB,UAAUgP,0BAA4B,SAAU3D,WAAY3J,eAAgBC,mBAMrF,OAHgB8D,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGxFE,WAAWqF,WAAWtF,WAAWI,MAAMkF,WAAWnF,MAAMG,MAAMgF,WAAWjF,MAAMG,WAAW8E,WAAW/E,WAAWwI,QASlIhQ,UAAUkB,UAAUiP,uBAAyB,SAAU5D,WAAY3J,eAAgBC,mBAGlF,IAAI6D,UAAYC,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGzG,OAAOjH,aAAa8H,sBAAsB0E,WAAWtF,UAAWsF,WAAWnF,KAAMmF,WAAWjF,KAAMiF,WAAW/E,UAAWd,YASzH1G,UAAUkB,UAAUkP,kBAAoB,SAAUxE,MAAOhJ,eAAgBC,mBASxE,OAHI+I,MAHYjF,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGnFE,WAAW0E,MAAM3E,WAAWI,MAAMuE,MAAMxE,MAAMG,MAAMqE,MAAMtE,OAGnEG,YASdzH,UAAUkB,UAAUmP,cAAgB,SAAUjF,UAAWxI,eAAgBC,mBACxE,OAAO9C,aAAaS,gCAAkCT,aAAauQ,yBAAyBlF,UAAWxI,eAAgBC,mBAAqB9C,aAAawQ,oBAAoBnF,UAAWxI,eAAgBC,oBASzM7C,UAAUkB,UAAUqP,oBAAsB,SAAUnF,UAAWxI,eAAgBC,mBAM9E,IAHA,IAAI2N,eAAiB,GAGZ7L,EAAI,EAAGA,EAAIyG,UAAUtJ,OAAQ6C,IAMrC,IAHA,IAAI8L,cAAgB1Q,aAAa4M,gBAAgBvB,UAAUzG,GAAGiI,aAAcxB,UAAUzG,GAAGkI,WAAYzB,UAAUzG,GAAGmI,YAAalK,eAAgBC,mBAGtI2G,EAAI,EAAGA,EAAIiH,cAAc3O,OAAQ0H,IACzCgH,eAAepD,KAAK,CACnBR,aAAc,CACb3F,UAAWwJ,cAAcjH,GAAGvC,UAC5BG,KAAMqJ,cAAcjH,GAAGpC,KACvBE,KAAMmJ,cAAcjH,GAAGlC,MAExBuF,WAAY,CACX5F,UAAWwJ,cAAcjH,GAAGvC,UAC5BG,KAAMqJ,cAAcjH,GAAGpC,KACvBE,KAAMmJ,cAAcjH,GAAGlC,MAExBwF,aAAa,IAMhB,OAAO0D,gBASRxQ,UAAUkB,UAAUoP,yBAA2B,SAAUlF,UAAWxI,eAAgBC,mBAMnF,IAHA,IAAI2N,eAAiB,GAGZ7L,EAAI,EAAGA,EAAIyG,UAAUtJ,OAAQ6C,IAMrC,IAHA,IAAI8L,cAAgB1Q,aAAasN,qBAAqBjC,UAAUzG,GAAGiI,aAAcxB,UAAUzG,GAAGkI,WAAYzB,UAAUzG,GAAGmI,YAAalK,eAAgBC,mBAG3I2G,EAAI,EAAGA,EAAIiH,cAAc3O,OAAQ0H,IACzCgH,eAAepD,KAAK,CACnBR,aAAc,CACb3F,UAAWwJ,cAAcjH,GAAGvC,UAC5BG,KAAMqJ,cAAcjH,GAAGpC,KACvBE,KAAMmJ,cAAcjH,GAAGlC,KACvBE,UAAWiJ,cAAcjH,GAAGhC,WAE7BqF,WAAY,CACX5F,UAAWwJ,cAAcjH,GAAGvC,UAC5BG,KAAMqJ,cAAcjH,GAAGpC,KACvBE,KAAMmJ,cAAcjH,GAAGlC,KACvBE,UAAWiJ,cAAcjH,GAAGhC,WAE7BsF,aAAa,IAMhB,OAAO0D,gBASRxQ,UAAUkB,UAAUwP,cAAgB,SAAUtF,UAAWxI,eAAgBC,mBACxE,OAAO9C,aAAaS,gCAAkCT,aAAa4Q,yBAAyBvF,UAAWxI,eAAgBC,mBAAqB9C,aAAa6Q,oBAAoBxF,UAAWxI,eAAgBC,oBASzM7C,UAAUkB,UAAU0P,oBAAsB,SAAUxF,UAAWxI,eAAgBC,mBAG9E,IAAIgO,gBAAkB,GAGlBtF,OAASxL,aAAayL,iBAAiBJ,UAAWxI,eAAgBC,mBAGtE0I,OAASA,OAAOE,KAAK1L,aAAa2L,WAGlCH,OAASxL,aAAa4L,cAAcJ,QASpC,IANA,IAAI7E,UAAYC,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGrG8J,eAAiB,KAGZnM,EAAI,EAAGA,EAAI+B,UAAUQ,WAAWpF,OAAQ6C,IAGhD,IAAK,IAAI6E,EAAI,EAAGA,EAAI9C,UAAUQ,WAAWvC,GAAG0C,MAAMvF,OAAQ0H,IAGzD,IAAK,IAAIC,EAAI,EAAGA,EAAI/C,UAAUQ,WAAWvC,GAAG0C,MAAMmC,GAAGjC,MAAMzF,OAAQ2H,IAwClE,GArCS,GAAL9E,GAAe,GAAL6E,GAAe,GAALC,IACvB9E,EAAI4G,OAAO,GAAGtE,UACduC,EAAI+B,OAAO,GAAGnE,KACdqC,EAAI8B,OAAO,GAAGjE,MAIXvH,aAAagR,aAAapM,EAAG6E,EAAGC,EAAG8B,QAGhB,MAAlBuF,eACHA,eAAejE,WAAa,CAC3B5F,UAAWtC,EAAGyC,KAAMoC,EAAGlC,KAAMmC,GAK9BqH,eAAiB,CAChBlE,aAAc,CAAE3F,UAAWtC,EAAGyC,KAAMoC,EAAGlC,KAAMmC,GAC7CoD,WAAY,CAAE5F,UAAWtC,EAAGyC,KAAMoC,EAAGlC,KAAMmC,GAC3CqD,aAAa,IAQO,MAAlBgE,gBACHD,gBAAgBzD,KAAK0D,gBAItBA,eAAiB,MAIdnM,GAAK4G,OAAOA,OAAOzJ,OAAS,GAAGmF,WAAauC,GAAK+B,OAAOA,OAAOzJ,OAAS,GAAGsF,MAAQqC,GAAK8B,OAAOA,OAAOzJ,OAAS,GAAGwF,KAQrH,OALsB,MAAlBwJ,gBACHD,gBAAgBzD,KAAK0D,gBAIfD,gBAOX,OAAOA,iBASR7Q,UAAUkB,UAAUyP,yBAA2B,SAAUvF,UAAWxI,eAAgBC,mBAGnF,IAAIgO,gBAAkB,GAGlB1E,YAAcpM,aAAaqM,sBAAsBhB,UAAWxI,eAAgBC,mBAGhFsJ,YAAcA,YAAYV,KAAK1L,aAAasM,gBAG5CF,YAAcpM,aAAauM,mBAAmBH,aAS9C,IANA,IAAIzF,UAAYC,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGrG8J,eAAiB,KAGZnM,EAAI,EAAGA,EAAI+B,UAAUQ,WAAWpF,OAAQ6C,IAGhD,IAAK,IAAI6E,EAAI,EAAGA,EAAI9C,UAAUQ,WAAWvC,GAAG0C,MAAMvF,OAAQ0H,IAGzD,IAAK,IAAIC,EAAI,EAAGA,EAAI/C,UAAUQ,WAAWvC,GAAG0C,MAAMmC,GAAGjC,MAAMzF,OAAQ2H,IAGlE,IAAK,IAAIG,EAAI,EAAGA,EAAIlD,UAAUQ,WAAWvC,GAAG0C,MAAMmC,GAAGjC,MAAMkC,GAAGhC,WAAW3F,OAAQ8H,IAyChF,GAtCS,GAALjF,GAAe,GAAL6E,GAAe,GAALC,GAAe,GAALG,IACjCjF,EAAIwH,YAAY,GAAGlF,UACnBuC,EAAI2C,YAAY,GAAG/E,KACnBqC,EAAI0C,YAAY,GAAG7E,KACnBsC,EAAIuC,YAAY,GAAG3E,WAIhBzH,aAAaiR,kBAAkBrM,EAAG6E,EAAGC,EAAGG,EAAGuC,aAGxB,MAAlB2E,eACHA,eAAejE,WAAa,CAC3B5F,UAAWtC,EAAGyC,KAAMoC,EAAGlC,KAAMmC,EAAGjC,UAAWoC,GAK5CkH,eAAiB,CAChBlE,aAAc,CAAE3F,UAAWtC,EAAGyC,KAAMoC,EAAGlC,KAAMmC,EAAGjC,UAAWoC,GAC3DiD,WAAY,CAAE5F,UAAWtC,EAAGyC,KAAMoC,EAAGlC,KAAMmC,EAAGjC,UAAWoC,GACzDkD,aAAa,IAQO,MAAlBgE,gBACHD,gBAAgBzD,KAAK0D,gBAItBA,eAAiB,MAIdnM,GAAKwH,YAAYA,YAAYrK,OAAS,GAAGmF,WAAauC,GAAK2C,YAAYA,YAAYrK,OAAS,GAAGsF,MAAQqC,GAAK0C,YAAYA,YAAYrK,OAAS,GAAGwF,MAAQsC,GAAKuC,YAAYA,YAAYrK,OAAS,GAAG0F,UAQpM,OALsB,MAAlBsJ,gBACHD,gBAAgBzD,KAAK0D,gBAIfD,gBAQZ,OAAOA,iBAaR7Q,UAAUkB,UAAUiM,gBAAkB,SAAUlG,UAAWG,KAAME,KAAMsF,aAAcC,WAAYC,aAGhG,OAAOA,YAAc/M,aAAakR,4BAA4BhK,UAAWG,KAAME,KAAMsF,aAAcC,YAAc9M,aAAamR,4BAA4BjK,UAAWG,KAAME,KAAMsF,aAAcC,aAchM7M,UAAUkB,UAAUoM,qBAAuB,SAAUrG,UAAWG,KAAME,KAAME,UAAWoF,aAAcC,WAAYC,aAGhH,OAAOA,YAAc/M,aAAaoR,iCAAiClK,UAAWG,KAAME,KAAME,UAAWoF,aAAcC,YAAc9M,aAAaqR,iCAAiCnK,UAAWG,KAAME,KAAME,UAAWoF,aAAcC,aAYhO7M,UAAUkB,UAAU+P,4BAA8B,SAAUhK,UAAWG,KAAME,KAAMsF,aAAcC,YAGhG,IAAIyC,gBAAiB,EAkBrB,OAfKrI,UAAY2F,aAAa3F,WAC5BA,WAAa2F,aAAa3F,WAAaG,KAAOwF,aAAaxF,MAC3DH,WAAa2F,aAAa3F,WAAaG,MAAQwF,aAAaxF,MAAQE,MAAQsF,aAAatF,QAGrFL,UAAY4F,WAAW5F,WAC1BA,WAAa4F,WAAW5F,WAAaG,KAAOyF,WAAWzF,MACvDH,WAAa4F,WAAW5F,WAAaG,MAAQyF,WAAWzF,MAAQE,MAAQuF,WAAWvF,QAGpFgI,gBAAiB,GAKZA,gBAaRtP,UAAUkB,UAAUiQ,iCAAmC,SAAUlK,UAAWG,KAAME,KAAME,UAAWoF,aAAcC,YAGhH,IAAIwE,qBAAsB,EAoB1B,OAjBKpK,UAAY2F,aAAa3F,WAC5BA,WAAa2F,aAAa3F,WAAaG,KAAOwF,aAAaxF,MAC3DH,WAAa2F,aAAa3F,WAAaG,MAAQwF,aAAaxF,MAAQE,KAAOsF,aAAatF,MACxFL,WAAa2F,aAAa3F,WAAaG,MAAQwF,aAAaxF,MAAQE,MAAQsF,aAAatF,MAAQE,WAAaoF,aAAapF,aAGvHP,UAAY4F,WAAW5F,WAC1BA,WAAa4F,WAAW5F,WAAaG,KAAOyF,WAAWzF,MACvDH,WAAa4F,WAAW5F,WAAaG,MAAQyF,WAAWzF,MAAQE,KAAOuF,WAAWvF,MAClFL,WAAa4F,WAAW5F,WAAaG,MAAQyF,WAAWzF,MAAQE,MAAQuF,WAAWvF,MAAQE,WAAaqF,WAAWrF,aAGpH6J,qBAAsB,GAKjBA,qBAYRrR,UAAUkB,UAAUgQ,4BAA8B,SAAUjK,UAAWG,KAAME,KAAMsF,aAAcC,YAGhG,IAAIyC,gBAAiB,EA0BrB,OAvBKrI,UAAY2F,aAAa3F,WAC5BA,WAAa2F,aAAa3F,WAAaG,KAAOwF,aAAaxF,MAC3DH,WAAa2F,aAAa3F,WAAaG,MAAQwF,aAAaxF,MAAQE,MAAQsF,aAAatF,QAGrFL,UAAY4F,WAAW5F,WAC1BA,WAAa4F,WAAW5F,WAAaG,KAAOyF,WAAWzF,MACvDH,WAAa4F,WAAW5F,WAAaG,MAAQyF,WAAWzF,MAAQE,MAAQuF,WAAWvF,QAGpFgI,gBAAiB,GAKf1C,aAAa3F,WAAa4F,WAAW5F,WAAa2F,aAAaxF,MAAQyF,WAAWzF,MACrFH,WAAa4F,WAAW5F,WAAaG,MAAQyF,WAAWzF,MAAQE,MAAQsF,aAAatF,MAAQA,MAAQuF,WAAWvF,OAGhHgI,gBAAiB,GAIXA,gBAaRtP,UAAUkB,UAAUkQ,iCAAmC,SAAUnK,UAAWG,KAAME,KAAME,UAAWoF,aAAcC,YAGhH,IAAIwE,qBAAsB,EA6B1B,OA1BKpK,UAAY2F,aAAa3F,WAC5BA,WAAa2F,aAAa3F,WAAaG,KAAOwF,aAAaxF,MAC3DH,WAAa2F,aAAa3F,WAAaG,MAAQwF,aAAaxF,MAAQE,KAAOsF,aAAatF,MACxFL,WAAa2F,aAAa3F,WAAaG,MAAQwF,aAAaxF,MAAQE,MAAQsF,aAAatF,MAAQE,WAAaoF,aAAapF,aAGvHP,UAAY4F,WAAW5F,WAC1BA,WAAa4F,WAAW5F,WAAaG,KAAOyF,WAAWzF,MACvDH,WAAa4F,WAAW5F,WAAaG,MAAQyF,WAAWzF,MAAQE,KAAOuF,WAAWvF,MAClFL,WAAa4F,WAAW5F,WAAaG,MAAQyF,WAAWzF,MAAQE,MAAQuF,WAAWvF,MAAQE,WAAaqF,WAAWrF,aAGpH6J,qBAAsB,GAKpBzE,aAAa3F,WAAa4F,WAAW5F,WAAa2F,aAAaxF,MAAQyF,WAAWzF,MAAQwF,aAAatF,MAAQuF,WAAWvF,MAC7HL,WAAa4F,WAAW5F,WAAaG,MAAQyF,WAAWzF,MAAQE,MAAQuF,WAAWvF,MACnFE,WAAaoF,aAAapF,WAAaA,WAAaqF,WAAWrF,YAG/D6J,qBAAsB,GAIhBA,qBAURrR,UAAUkB,UAAU6P,aAAe,SAAU9J,UAAWG,KAAME,KAAMgH,WACnE,OAEY,EAFL5M,EAAE4P,KAAKhD,UAAW,SAAUiD,eAClC,OAAOA,cAActK,WAAaA,WAAasK,cAAcnK,MAAQA,MAAQmK,cAAcjK,MAAQA,OACjGxF,QAWJ9B,UAAUkB,UAAU8P,kBAAoB,SAAU/J,UAAWG,KAAME,KAAME,UAAWgH,gBACnF,OAEY,EAFL9M,EAAE4P,KAAK9C,eAAgB,SAAUgD,oBACvC,OAAOA,mBAAmBvK,WAAaA,WAAauK,mBAAmBpK,MAAQA,MAAQoK,mBAAmBlK,MAAQA,MAAQkK,mBAAmBhK,WAAaA,YACxJ1F,QASJ9B,UAAUkB,UAAUkJ,mBAAqB,SAAUnD,UAAWrE,eAAgBC,mBAG7E,IAGIqK,WAHYvG,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAG9EE,WAAWD,WAGtClH,aAAamM,iBAAiBgB,WAAWvE,GAAIuE,WAAWtE,GAAIsE,WAAWrE,GAAIqE,WAAWpE,GAAIlG,eAAgBC,oBAU3G7C,UAAUkB,UAAUoJ,cAAgB,SAAUrD,UAAWG,KAAMxE,eAAgBC,mBAG9E,IAGI4O,MAHY9K,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAGnFE,WAAWD,WAAWI,MAAMD,MAGlDrH,aAAamM,iBAAiBuF,MAAM9I,GAAI8I,MAAM7I,GAAI6I,MAAM5I,GAAI4I,MAAM3I,GAAIlG,eAAgBC,oBAWvF7C,UAAUkB,UAAUsJ,cAAgB,SAAUvD,UAAWG,KAAME,KAAM1E,eAAgBC,mBAGpF,IACI+I,MADYjF,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SACnFE,WAAWD,WAAWI,MAAMD,MAAMG,MAAMD,MAG9DvH,aAAamM,iBAAiBN,MAAMjD,GAAIiD,MAAMhD,GAAIgD,MAAM/C,GAAI+C,MAAM9C,GAAIlG,eAAgBC,oBAYvF7C,UAAUkB,UAAUuL,mBAAqB,SAAUxF,UAAWG,KAAME,KAAME,UAAW5E,eAAgBC,mBAGpG,IACI0J,WADY5F,YAAYC,YAAYhE,eAAeiE,OAAOC,WAAYlE,eAAemE,gBAAgBC,SAC9EE,WAAWD,WAAWI,MAAMD,MAAMG,MAAMD,MAAMG,WAAWD,WAGpFzH,aAAamM,iBAAiBK,WAAW5D,GAAI4D,WAAW3D,GAAI2D,WAAW1D,GAAI0D,WAAWzD,GAAIlG,eAAgBC,oBAY3G7C,UAAUkB,UAAUgL,iBAAmB,SAAUvD,GAAIC,GAAIC,GAAIC,GAAIlG,eAAgBC,mBAGhF,IAAI6O,kBAAoB9O,eAAe6B,oBACnCkN,mBAAqB/O,eAAe8B,qBAGpCR,GAAKC,WAAWC,2BAA2BxB,gBAC3CyB,gBAAkBH,GAAGI,EACrBC,gBAAkBL,GAAGM,EAGrBoN,iBAAmBzN,WAAW0N,mBAAmBjP,gBAGrD,GAAuB,EAAnBgP,iBAAsB,CAGD,IAApBA,kBAA8C,KAApBA,mBAC7BF,kBAAoB9O,eAAe8B,qBACnCiN,mBAAqB/O,eAAe6B,qBAIrC,IAAIqN,oBAAsBjP,kBAAkBkP,OAAOpJ,GAAIE,GAAI,GAAK,GAAK+I,kBACrEjJ,GAAKmJ,oBAAoBE,UACzBnJ,GAAKiJ,oBAAoBG,UAGzB,IAAIC,oBAAsBrP,kBAAkBkP,OAAOnJ,GAAIE,GAAI,GAAK,GAAK8I,kBACrEhJ,GAAKsJ,oBAAoBF,UACzBlJ,GAAKoJ,oBAAoBD,UAI1B,IAAIE,OAAUxJ,GAAK+I,kBAAqB9O,eAAewP,iBAAmB/N,gBACtEgO,OAAUvJ,GAAK6I,mBAAsB/O,eAAe0P,iBAAmB/N,gBACvEgO,OAAU3J,GAAKD,IAAM+I,kBACrBc,OAAU3J,GAAKC,IAAM6I,mBAGzB9O,kBAAkB4P,kBAAkB5P,kBAAkB6H,WAAYyH,OAAQE,OAAQE,MAAOC,MAAOzS,aAAaiB,sBAO9GhB,UAAUkB,UAAUO,mBAAqB,SAAUD,QAGlD,GAA+B,GAA3BA,OAAOkR,QAAQ,SAAnB,CAMA,IAAIC,WAAa/Q,eAAegR,aAAapR,QAGzCqR,KAAOC,sBAAsBH,YAGjC5S,aAAaiB,oBAAsB,QAAU6R,KAAKE,EAAI,KAAOF,KAAKG,EAAI,KAAOH,KAAKrF,EAAI,cAXrFzN,aAAaiB,oBAAsBQ,QAmBrCxB,UAAUkB,UAAUuC,iBAAmB,SAAUb,eAAgBC,mBAGhE,IAAIoQ,gBAAkBlT,aAAamT,uBAAuBnT,aAAaa,kBAAmBb,aAAaY,wBAAyBiC,eAAgBC,mBAGhJjB,eAAeuR,mBAAmB/F,KAAK6F,iBAGvCA,gBAAgBG,oBAAoBC,mBAAmBC,OAAO,EAAM,KAAM1Q,eAAgBC,mBAG1FA,kBAAkB6H,WAAWO,UAAU,EAAG,EAAGpI,kBAAkBiI,UAAUC,MAAOlI,kBAAkBiI,UAAUE,QAC5GpJ,eAAe2R,kBAAkB3Q,eAAgBC,mBAGjDjB,eAAe4R,wBAAwB5Q,eAAgBC,mBAGvDnB,EAAE,gBAAgB+R,SAUnBzT,UAAUkB,UAAUgS,uBAAyB,SAAUQ,gBAAiBrS,gBAAiBuB,eAAgBC,mBAGxG,IAAIoQ,gBAAkB,IAAIU,WAAW/R,eAAegS,eAGpDX,gBAAgBnO,GAAKlD,eAAeiS,sBAGpCZ,gBAAgBa,kBAAoBzS,gBAGpC,IAAI2M,eAAiBjO,aAAaS,gCAAkCT,aAAaoO,6BAA6BuF,gBAAiB9Q,eAAgBC,mBAAqB9C,aAAa2N,wBAAwBgG,gBAAiB9Q,eAAgBC,mBAoB1O,GAnBAoQ,gBAAgBc,aAAe,CAAC,CAAC/F,eAAeJ,GAAII,eAAeF,IAAK,CAACE,eAAeH,GAAIG,eAAeD,KAG3GkF,gBAAgBe,gBAAkBjU,aAAaS,gCAAkCT,aAAa4P,2BAA2B+D,gBAAiB9Q,eAAgB,QAAS,UAAY7C,aAAagP,sBAAsB2E,gBAAiB9Q,eAAgB,QAAS,UAG5PqQ,gBAAgBgB,yBAA2BC,KAAKC,UAAUT,iBAG1DT,gBAAgBmB,sBAAwB,EACxCnB,gBAAgBoB,UAAYtK,KAAKmE,IAAI,EAAGnE,KAAKmE,IAAIoG,MAAMvK,KAAMnI,eAAeuR,mBAAmBoB,IAAI,SAAUC,GAAK,OAAOA,EAAEH,aAAiB,GAC5IpB,gBAAgBwB,WAAa7S,eAAegR,aAAahR,eAAe8S,0BACxEzB,gBAAgB0B,cAAgB/R,eAAeiE,OAAOC,WACtDmM,gBAAgB2B,UAAYC,eAAeC,OAC3C7B,gBAAgB8B,gBAAkBF,eAAeG,aACjD/B,gBAAgBgC,UAAW,EAC3BhC,gBAAgBiC,OAAS,KAGpBxT,EAAEyT,cAAcvS,eAAeiE,OAAOuO,OAC1C,IAAK,IAAIzQ,EAAI,EAAGA,EAAI/B,eAAeiE,OAAOuO,MAAMtT,OAAQ6C,IACvD,GAAI/B,eAAeiE,OAAOuO,MAAMzQ,GAAG0Q,oBAAsBzS,eAAemE,eAAgB,CACvFkM,gBAAgBqC,kBAAoB1S,eAAeiE,OAAOuO,MAAMzQ,GAAG4Q,eACnE,MAWH,OALIlU,iBAAmBmU,iBAAiBC,qBACvCxC,gBAAgByC,kBAAoBC,gCAAgCC,iCAI9D3C,iBAQRjT,UAAUkB,UAAUyC,iBAAmB,SAAUf,eAAgBC,mBAGhE,IAAIoQ,gBAAkBvR,EAAE4P,KAAK1P,eAAeuR,mBAAoB,SAAU0C,KACzE,OAAOA,IAAI/Q,IAAM/E,aAAakB,0BAC5B,GAGC+M,eAAiBjO,aAAaS,gCAAkCT,aAAaoO,6BAA6BpO,aAAaa,kBAAmBgC,eAAgBC,mBAAqB9C,aAAa2N,wBAAwB3N,aAAaa,kBAAmBgC,eAAgBC,mBACxQoQ,gBAAgBc,aAAe,CAAC,CAAC/F,eAAeJ,GAAII,eAAeF,IAAK,CAACE,eAAeH,GAAIG,eAAeD,KAC3GkF,gBAAgB6C,qBAAqB,GAAGC,YAAc/H,eAAeJ,GACrEqF,gBAAgB6C,qBAAqB,GAAGE,YAAchI,eAAeF,GACrEmF,gBAAgB6C,qBAAqB,GAAGC,YAAc/H,eAAeH,GACrEoF,gBAAgB6C,qBAAqB,GAAGC,YAAc/H,eAAeD,GAGrEkF,gBAAgBe,gBAAkBjU,aAAaS,gCAAkCT,aAAa4P,2BAA2B5P,aAAaa,kBAAmBgC,eAAgB,QAAS,UAAY7C,aAAagP,sBAAsBhP,aAAaa,kBAAmBgC,eAAgB,QAAS,UAG1RqQ,gBAAgBgB,yBAA2BC,KAAKC,UAAUpU,aAAaa,mBAGvEqS,gBAAgBiC,OAAmC,KAA1BjC,gBAAgBiC,OAAgB,IAAM,IAG/DjC,gBAAgBgD,eAAe5C,mBAAmBC,MAAO1Q,eAAgBC,mBAAmB,IAQ7F7C,UAAUkB,UAAUwC,oBAAsB,SAAUd,eAAgBC,mBAGnE,IAAIoQ,gBAAkBvR,EAAE4P,KAAK1P,eAAeuR,mBAAoB,SAAU0C,KACzE,OAAOA,IAAI/Q,IAAM/E,aAAakB,0BAC5B,GAGC+M,eAAiBjO,aAAaS,gCAAkCT,aAAaoO,6BAA6BpO,aAAaa,kBAAmBgC,eAAgBC,mBAAqB9C,aAAa2N,wBAAwB3N,aAAaa,kBAAmBgC,eAAgBC,mBACxQoQ,gBAAgBc,aAAe,CAAC,CAAC/F,eAAeJ,GAAII,eAAeF,IAAK,CAACE,eAAeH,GAAIG,eAAeD,KAG3GkF,gBAAgBe,gBAAkBjU,aAAaS,gCAAkCT,aAAa4P,2BAA2B5P,aAAaa,kBAAmBgC,eAAgB,QAAS,UAAY7C,aAAagP,sBAAsBhP,aAAaa,kBAAmBgC,eAAgB,QAAS,UAG1RqQ,gBAAgBgB,yBAA2BC,KAAKC,UAAUpU,aAAaa,mBAGvEqS,gBAAgBG,oBAAoBC,mBAAmBC,OAAO,EAAM,KAAM1Q,eAAgBC,mBAG1FA,kBAAkB6H,WAAWO,UAAU,EAAG,EAAGpI,kBAAkBiI,UAAUC,MAAOlI,kBAAkBiI,UAAUE,QAC5GpJ,eAAe2R,kBAAkB3Q,eAAgBC,mBAGjDjB,eAAe4R,wBAAwB5Q,eAAgBC,oBAOxD7C,UAAUkB,UAAUoE,2BAA6B,WAChD,OAAOtD,YAAYC,gBAAgBgE,qBAAuBC,eAAeC,aAI1E+P,OAAOlW,UAAYA,UAvtFpB","file":"GreenlightTextTools-5571b88334.js","sourcesContent":["/*\r\n * Copyright (c) 2021 SGS Europe. All rights reserved.\r\n *\r\n * This program is the CONFIDENTIAL and PROPRIETARY property of SGS Europe.\r\n * Any unauthorised use, reproduction, or transfer of this program is strictly\r\n * prohibited.\r\n *\r\n * File Name: GreenlightTextTools.js\r\n *\r\n * Description:\tThe class containing the functionality required by the Greenlight for text tools.\r\n * \r\n */\r\n\r\n// The text tools object.\r\nvar g_oTextTools = {};\r\n\r\n(function () {\r\n\t\"use strict\";\r\n\r\n\t/**\r\n\t * Load the text content for the page.\r\n\t */\r\n\tfunction TextTools() {\r\n\r\n\t\t// The tools available for use.\r\n\t\tthis.g_eToolTypes = {\r\n\t\t\tTextHighlight: 1,\r\n\t\t\tParagraphHighlight: 2,\r\n\t\t\tRemoveTextHighlight: 3,\r\n\t\t\tAreaTextHighlight: 4\r\n\t\t};\r\n\r\n\t\t// Keeps track of if a highlight is in progress.\r\n\t\tthis.g_bHighlightInProgress = false;\r\n\r\n\t\t// Keep track of the highlight accuracy.\r\n\t\tthis.g_bHighlightIsCharacterAccuracy = false;\r\n\r\n\t\t// Keeps track of if the highlight is on the compare canvas.\r\n\t\tthis.g_bHighlightOnCompareCanvas = false;\r\n\r\n\t\t// Keep track of the active tool type.\r\n\t\tthis.g_eActiveToolType = null;\r\n\r\n\t\t// Keep track of the active annotation type.\r\n\t\tthis.g_eActiveAnnotationType = null;\r\n\r\n\t\t// The annotation text for the highlight.\r\n\t\tthis.g_oAnnotationText = [];\r\n\r\n\t\t// The current text on highlight.\r\n\t\tthis.g_oCurrentText = null;\r\n\r\n\t\t// The starting text on highlight.\r\n\t\tthis.g_oStartingText = null;\r\n\r\n\t\t// The ending text on highlight.\r\n\t\tthis.g_oEndingText = null;\r\n\r\n\t\t// The colour to use for highlighting.\r\n\t\tthis.g_szHighlightColour = \"\";\r\n\r\n\t\t// The annotation to add text to.\r\n\t\tthis.g_iExistingAnnotationId = null;\r\n\t};\r\n\r\n\t/**\r\n\t * Initialises a text tool.\r\n\t * @param {enum} eToolType - The tool to be initialised.\r\n\t * @param {enum} eAnnotationType - The annotation type.\r\n\t * @param {bool} bCharacterLevelAccuracy - If the tool should be at character or word level accuracy.\r\n\t * @param {bool} bCompareCanvas - If this is on the compare canvas.\r\n\t * @param {string} colour - The colour to be used.\r\n\t */\r\n\tTextTools.prototype.initialiseTextTool = function (eToolType, eAnnotationType, bCharacterLevelAccuracy, bCompareCanvas, colour) {\r\n\t\t\r\n\t\t// Set that a highlight is in progress.\r\n\t\tg_oTextTools.g_bHighlightInProgress = true;\r\n\r\n\t\t// Update the highlight settings.\r\n\t\tg_oTextTools.g_eActiveToolType = eToolType;\r\n\t\tg_oTextTools.g_eActiveAnnotationType = eAnnotationType;\r\n\t\tg_oTextTools.g_bHighlightOnCompareCanvas = bCompareCanvas;\r\n\t\tg_oTextTools.g_bHighlightIsCharacterAccuracy = bCharacterLevelAccuracy;\r\n\r\n\t\t// Update the highlight colour.\r\n\t\tg_oTextTools.setHighlightColour(colour);\r\n\r\n\t\t// If this is an edit for a new annotation, remove the div without deleting the annotation.\r\n\t\tif (g_oTextTools.g_iExistingAnnotationId < 0) {\r\n\t\t\t$(\"#\" + g_oTextTools.g_iExistingAnnotationId).remove();\r\n\t\t}\r\n\r\n\t\t// Close any other open annotations.\r\n\t\tg_oAnnotations.closeActiveAnnotations();\r\n\r\n\t\t// Hide the existing annotations from the annotation list.\r\n\t\t$(\".annotationListItem\").remove();\r\n\r\n\t\t// Display an info bubble for highlighting text if required.\r\n\t\tif ($(\".speechbubble__texthighlight\").length == 0) {\r\n\t\t\tg_oTextTools.displayHighlightInfo();\r\n\t\t}\r\n\r\n\t\t// Reshow annotations if they are hidden.\r\n\t\tif (!g_oSettings.g_oUserSettings.ShowAnnotations) {\r\n\t\t\t$(\"#HideAnnotations\").click();\r\n\t\t}\r\n\r\n\t\t// Clear all bindings.\r\n\t\tchangeCanvasFunction();\r\n\r\n\t\t// Ensure we are on the main canvas.\r\n\t\tif ($(\"#chkAnnotationToggle\").prop(\"checked\")) {\r\n\t\t\t$(\"#chkAnnotationToggle\").click();\r\n\t\t}\r\n\r\n\t\t// Initialise the tool.\r\n\t\tswitch (g_oTextTools.g_eActiveToolType) {\r\n\t\t\tcase g_oTextTools.g_eToolTypes.TextHighlight:\r\n\t\t\t\tg_oTextTools_TextHighlight.initialiseHighlight();\r\n\t\t\t\tbreak;\r\n\t\t\tcase g_oTextTools.g_eToolTypes.ParagraphHighlight:\r\n\t\t\t\tg_oTextTools_ParagraphHighlight.initialiseHighlight();\r\n\t\t\t\tbreak;\r\n\t\t\tcase g_oTextTools.g_eToolTypes.RemoveTextHighlight:\r\n\t\t\t\tg_oTextTools_RemoveTextHighlight.initialiseHighlight();\r\n\t\t\t\tbreak;\r\n\t\t\tcase g_oTextTools.g_eToolTypes.AreaTextHighlight:\r\n\t\t\t\tg_oTextTools_AreaTextHighlight.initialiseHighlight();\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n\t * Ends a text highlight.\r\n\t * @param {object} oArtworkCanvas - The artwork canvas.\r\n\t * @param {object} oAnnotationCanvas - The annotation canvas.\r\n\t * @param {bool} bSaveAnnotation - If the highlight annotation should be saved.\r\n\t */\r\n\tTextTools.prototype.endhighlight = function (oArtworkCanvas, oAnnotationCanvas, bSaveAnnotation) {\r\n\r\n\t\t// Set that a highlight is not in progress.\r\n\t\tg_oTextTools.g_bHighlightInProgress = false;\r\n\r\n\t\t// Close any open info bubbles.\r\n\t\tg_oGreenlightMessages.closeBubbles(\"Info\");\r\n\r\n\t\t// If we do not want to save the annotation, stop the process here.\r\n\t\tif (!bSaveAnnotation) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// If this is part of a text compare, send the annotation text back to the text compare.\r\n\t\tif (g_oTextCompare.g_bTextCompareInProgress) {\r\n\r\n\t\t\t// Reset the canvas function.\r\n\t\t\tchangeCanvasFunction();\r\n\r\n\t\t\t// Should we auto select the text on the compare document.\r\n\t\t\tvar bAutoSelect = g_oTextCompare_AutoSelection.isAutoSelectionEnabled();\r\n\r\n\t\t\t// If this is a new annotation.\r\n\t\t\tif (g_oTextTools.g_iExistingAnnotationId == null) {\r\n\t\t\t\tg_oTextCompare.addTextData(g_oTextTools.g_oAnnotationText, g_oTextTools.g_bHighlightOnCompareCanvas, bAutoSelect, true);\r\n\t\t\t}\r\n\t\t\t// If this is an existing annotation.\r\n\t\t\telse {\r\n\t\t\t\tg_oTextCompare.updateTextData(g_oTextTools.g_oAnnotationText, g_oTextTools.g_bHighlightOnCompareCanvas, bAutoSelect);\r\n\t\t\t}\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// Re-build the annotation list.\r\n\t\tg_oAnnotations.rebuildAnnotationList(oArtworkCanvas, oAnnotationCanvas);\r\n\r\n\t\t// Check we have highlight content.\r\n\t\tif (g_oTextTools.g_oAnnotationText.length == 0) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// If this is a new annotation.\r\n\t\tif (g_oTextTools.g_iExistingAnnotationId == null) {\r\n\r\n\t\t\t// Create the annotation.\r\n\t\t\tg_oTextTools.createAnnotation(oArtworkCanvas, oAnnotationCanvas);\r\n\t\t}\r\n\t\t// If this is an edit of a new annotation.\r\n\t\telse if (g_oTextTools.g_iExistingAnnotationId < 0) {\r\n\r\n\t\t\t// Update the new annotation.\r\n\t\t\tg_oTextTools.updateNewAnnotation(oArtworkCanvas, oAnnotationCanvas);\r\n\t\t}\r\n\t\t// If this is an existing annotation.\r\n\t\telse {\r\n\r\n\t\t\t// Update the annotation.\r\n\t\t\tg_oTextTools.updateAnnotation(oArtworkCanvas, oAnnotationCanvas);\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n\t * Converts a mouse position to percentages.\r\n\t * @param {object} event - The event.\r\n\t * @param {object} oArtworkCanvas - The artwork canvas.\r\n\t * @param {object} oAnnotationCanvas - The annotation canvas.\r\n\t * @returns {object} - The mouse percentages.\r\n\t */\r\n\tTextTools.prototype.convertMousePositionToPercentages = function (event, oArtworkCanvas, oAnnotationCanvas) {\r\n\r\n\t\t// Get the click coordinates.\r\n\t\tvar coords = g_oAnnotations.getClick(event, oAnnotationCanvas);\r\n\r\n\t\t// Get the transformed coordinates.\r\n\t\tvar transformedClick = g_oAnnotations.transformClickForRotation(coords[0], coords[1], oArtworkCanvas);\r\n\t\tcoords[0] = transformedClick[0];\r\n\t\tcoords[1] = transformedClick[1];\r\n\r\n\t\t// Calculate the compare offset of the canvas.\r\n\t\tvar co = g_oCompare.calculateCompareOffsetInPx(oArtworkCanvas);\r\n\t\tvar compareOffset_x = co.x;\r\n\t\tvar compareOffset_y = co.y;\r\n\r\n\t\t// Convert the coordinates to percentages.\r\n\t\tcoords[0] = (coords[0] - compareOffset_x) / oArtworkCanvas.g_iScaledImageWidth;\r\n\t\tcoords[1] = (coords[1] - compareOffset_y) / oArtworkCanvas.g_iScaledImageHeight;\r\n\r\n\t\t// Return the result.\r\n\t\treturn {\r\n\t\t\tx: coords[0],\r\n\t\t\ty: coords[1]\r\n\t\t};\r\n\t};\r\n\r\n\t/**\r\n\t * Displays the highlight info.\r\n\t */\r\n\tTextTools.prototype.displayHighlightInfo = function () {\r\n\t\t\r\n\t\t// Hide any existing bubbles.\r\n\t\tfor (var i = 0; i < g_oActiveBubbles.length; i++) {\r\n\t\t\tg_oGreenlightMessages.closeBubble(g_oActiveBubbles[i].id, true, true);\r\n\t\t}\r\n\t\t\r\n\t\t// Display the info bubble with the correct text.\r\n\t\tg_oGreenlightMessages.displayInfoBubble(g_oTextTools.getHighlightInfo(), true);\r\n\t};\r\n\r\n\t/**\r\n\t * Gets the text highlight info.\r\n\t */\r\n\tTextTools.prototype.getHighlightInfo = function () {\r\n\t\t\r\n\t\t// Outline the highlight info to be returned.\r\n\t\tvar szHighlightInfo = \"\";\r\n\r\n\t\t// Open the main info div.\r\n\t\tszHighlightInfo += '