ng-diff-match-patch
Version:
A Diff-Match-Patch component for your Angular 2 + applications
1 lines • 146 kB
Source Map (JSON)
{"version":3,"sources":["ng://ng-diff-match-patch/lib/diffMatchPatch.ts","ng://ng-diff-match-patch/lib/diffMatchPatch.service.ts","null","ng://ng-diff-match-patch/lib/lineCompare.component.ts","ng://ng-diff-match-patch/lib/diff.directive.ts","ng://ng-diff-match-patch/lib/lineDiff.directive.ts","ng://ng-diff-match-patch/lib/processingDiff.directive.ts","ng://ng-diff-match-patch/lib/semanticDiff.directive.ts","ng://ng-diff-match-patch/lib/diffMatchPatch.module.ts"],"names":["DiffMatchPatch","RegExp","diffs","html","pattern_amp","pattern_lt","pattern_gt","pattern_para","x","length","op","text","replace","join","patches","patch_size","this","Match_MaxBits","length1","bigpatch","splice","start1","start2","precontext","patch","patch_obj","empty","length2","push","Patch_Margin","diff_type","diff_text","shift","substring","diff_text2","postcontext","diff_text1","prototype","diff_main","text1","text2","opt_checklines","opt_deadline","Diff_Timeout","Number","MAX_VALUE","Date","getTime","deadline","Error","checklines","commonlength","diff_commonPrefix","commonprefix","diff_commonSuffix","commonsuffix","diff_compute_","unshift","diff_cleanupMerge","longtext","shorttext","i","indexOf","hm","diff_halfMatch_","text1_a","text1_b","text2_a","text2_b","mid_common","diffs_a","diffs_b","concat","diff_lineMode_","diff_bisect_","a","diff_linesToChars_","chars1","chars2","linearray","lineArray","diff_charsToLines_","diff_cleanupSemantic","pointer","count_delete","count_insert","text_delete","text_insert","b","j","pop","text1_length","text2_length","max_d","Math","ceil","v_offset","v_length","v1","Array","v2","delta","front","k1start","k1end","k2start","k2end","d","k1","k1_offset","x1","y1","charAt","k2_offset","x2","diff_bisectSplit_","k2","y2","y","text1a","text2a","text1b","text2b","diffsb","lineHash","diff_linesToCharsMunge_","chars","lineStart","lineEnd","lineArrayLength","line","hasOwnProperty","undefined","String","fromCharCode","charCodeAt","pointermin","pointermax","min","pointermid","pointerstart","floor","pointerend","diff_commonOverlap_","text_length","best","pattern","found","hm1","diff_halfMatchI_","hm2","dmp","best_longtext_a","best_longtext_b","best_shorttext_a","best_shorttext_b","seed","best_common","prefixLength","suffixLength","changes","equalities","equalitiesLength","lastequality","length_insertions1","length_deletions1","length_insertions2","length_deletions2","max","diff_cleanupSemanticLossless","deletion","insertion","overlap_length1","overlap_length2","diff_cleanupSemanticScore_","one","two","nonAlphaNumericRegex_","char1","char2","nonAlphaNumeric1","match","nonAlphaNumeric2","whitespace1","whitespaceRegex_","whitespace2","lineBreak1","linebreakRegex_","lineBreak2","blankLine1","blanklineEndRegex_","blankLine2","blanklineStartRegex_","equality1","edit","equality2","commonOffset","commonString","bestEquality1","bestEdit","bestEquality2","bestScore","score","diff_cleanupEfficiency","pre_ins","pre_del","post_ins","post_del","Diff_EditCost","diff_xIndex","loc","last_chars1","last_chars2","diff_levenshtein","levenshtein","insertions","deletions","data","diff_toDelta","encodeURI","diff_fromDelta","diffsLength","tokens","split","param","decodeURI","ex","n","parseInt","isNaN","match_main","match_bitap_","s","match_alphabet_","match_bitapScore_","e","accuracy","proximity","abs","Match_Distance","score_threshold","Match_Threshold","best_loc","lastIndexOf","bin_min","bin_mid","matchmask","last_rd","bin_max","start","finish","rd","charMatch","patch_addContext_","padding","prefix","suffix","patch_make","opt_b","opt_c","patchDiffLength","char_count1","char_count2","prepatch_text","postpatch_text","patch_deepCopy","patchesCopy","patchCopy","patch_apply","nullPadding","patch_addPadding","patch_splitMax","results","expected_loc","start_loc","end_loc","Patch_DeleteThreshold","index1","index2","mod","paddingLength","extraLength","patch_toText","patch_fromText","textline","textPointer","patchHeader","m","sign","DiffMatchPatchService","ngOnInit","getDiff","left","right","getSemanticDiff","getProcessingDiff","getLineDiff","getDmp","Injectable","__values","o","Symbol","iterator","call","next","value","done","LineCompareComponent","updateHtml","ngOnChanges","toString","calculateLineDiff","diffCalculation","lines","lineLeft","lineRight","isContentEqual","calculatedDiff","diff","diffLines","isFirstDiff","isLastDiff","outputEqualDiff","outputDeleteDiff","outputInsertDiff","lineContextSize","lineIncrement","slice","outputEqualDiffLines","numberOfSkippedLines","diffLines_1","tslib_1.__values","diffLines_1_1","diffLines_2","diffLines_2_1","diffLines_3","diffLines_3_1","Component","args","selector","styles","template","Input","el","DiffDirective","nativeElement","innerHTML","createHtml","diffs_1","diffs_1_1","Directive","ElementRef","LineDiffDirective","ProcessingDiffDirective","SemanticDiffDirective","DiffMatchPatchModule","NgModule","declarations","imports","CommonModule","exports","providers"],"mappings":"+UAYA,IAAAA,EAAA,WAEE,SAAAA,sBAMe,qBAEC,uBAEE,uBAID,+BAKO,qBAET,qBAGC,yBAQG,IAAIC,OAAO,4BACZ,IAAIA,OAAO,oCACR,IAAIA,OAAO,wCACT,IAAIA,OAAO,sCAsnCd,SAASC,GAM3B,IALA,IAAMC,EAAO,GACPC,EAAc,KACdC,EAAa,KACbC,EAAa,KACbC,EAAe,MACZC,EAAI,EAAGA,EAAIN,EAAMO,OAAQD,IAAK,CACrC,IAAME,EAAKR,EAAMM,GAAG,GAEdG,EADOT,EAAMM,GAAG,GACJI,QAAQR,EAAa,SAASQ,QAAQP,EAAY,QAC/DO,QAAQN,EAAY,QAAQM,QAAQL,EAAc,cACvD,OAAQG,GACN,KAAA,EACEP,EAAKK,GAAK,oCAAsCG,EAAO,SACvD,MACF,KAAA,EACER,EAAKK,GAAK,oCAAsCG,EAAO,SACvD,MACF,KAAA,EACER,EAAKK,GAAK,SAAWG,EAAO,WAIlC,OAAOR,EAAKU,KAAK,yBA0rBA,SAASC,GAE1B,IADA,IAAMC,EAAaC,KAAKC,cACfT,EAAI,EAAGA,EAAIM,EAAQL,OAAQD,IAClC,KAAIM,EAAQN,GAAGU,SAAWH,GAA1B,CAGA,IAAMI,EAAWL,EAAQN,GAEzBM,EAAQM,OAAOZ,IAAK,GAIpB,IAHA,IAAIa,EAASF,EAASE,OAClBC,EAASH,EAASG,OAClBC,EAAa,GACgB,IAA1BJ,EAASjB,MAAMO,QAAc,CAElC,IAAMe,EAAQ,IAAIC,EACdC,GAAQ,EAOZ,IANAF,EAAMH,OAASA,EAASE,EAAWd,OACnCe,EAAMF,OAASA,EAASC,EAAWd,OAChB,KAAfc,IACFC,EAAMN,QAAUM,EAAMG,QAAUJ,EAAWd,OAC3Ce,EAAMtB,MAAM0B,KAAK,CAAA,EAAeL,KAED,IAA1BJ,EAASjB,MAAMO,QAChBe,EAAMN,QAAUH,EAAaC,KAAKa,cAAc,CACpD,IAAMC,EAAYX,EAASjB,MAAM,GAAG,GAChC6B,EAAYZ,EAASjB,MAAM,GAAG,GACrB,IAAT4B,GAEFN,EAAMG,SAAWI,EAAUtB,OAC3Ba,GAAUS,EAAUtB,OACpBe,EAAMtB,MAAM0B,KAAKT,EAASjB,MAAM8B,SAChCN,GAAQ,IACU,IAATI,GAAqD,GAAtBN,EAAMtB,MAAMO,QAC3B,GAAjBe,EAAMtB,MAAM,GAAG,IACf6B,EAAUtB,OAAS,EAAIM,GAE/BS,EAAMN,SAAWa,EAAUtB,OAC3BY,GAAUU,EAAUtB,OACpBiB,GAAQ,EACRF,EAAMtB,MAAM0B,KAAK,CAACE,EAAWC,IAC7BZ,EAASjB,MAAM8B,UAGfD,EAAYA,EAAUE,UAAU,EAC5BlB,EAAaS,EAAMN,QAAUF,KAAKa,cACtCL,EAAMN,SAAWa,EAAUtB,OAC3BY,GAAUU,EAAUtB,OACP,IAATqB,GACFN,EAAMG,SAAWI,EAAUtB,OAC3Ba,GAAUS,EAAUtB,QAEpBiB,GAAQ,EAEVF,EAAMtB,MAAM0B,KAAK,CAACE,EAAWC,IACzBA,GAAaZ,EAASjB,MAAM,GAAG,GACjCiB,EAASjB,MAAM8B,QAEfb,EAASjB,MAAM,GAAG,GACdiB,EAASjB,MAAM,GAAG,GAAG+B,UAAUF,EAAUtB,SAMnDc,GADAA,EAAaP,KAAKkB,WAAWV,EAAMtB,QAEpB+B,UAAUV,EAAWd,OAASO,KAAKa,cAElD,IAAMM,EAAcnB,KAAKoB,WAAWjB,EAASjB,OACtB+B,UAAU,EAAGjB,KAAKa,cACrB,KAAhBM,IACFX,EAAMN,SAAWiB,EAAY1B,OAC7Be,EAAMG,SAAWQ,EAAY1B,OACF,IAAvBe,EAAMtB,MAAMO,QAC0B,IAAtCe,EAAMtB,MAAMsB,EAAMtB,MAAMO,OAAS,GAAG,GACtCe,EAAMtB,MAAMsB,EAAMtB,MAAMO,OAAS,GAAG,IAAM0B,EAE1CX,EAAMtB,MAAM0B,KAAK,CAAA,EAAeO,KAG/BT,GACHZ,EAAQM,SAASZ,EAAG,EAAGgB,aAx4D7BxB,EAAAqC,UAAAC,UAAA,SAAWC,EAAeC,EAAeC,EAA0BC,QAEtC,IAAhBA,IAEPA,EADE1B,KAAK2B,cAAgB,EACRC,OAAOC,WAEP,IAAKC,MAAMC,UAAgC,IAApB/B,KAAK2B,cAG/C,IAAMK,EAAWN,EAGjB,GAAa,MAATH,GAA0B,MAATC,EACnB,MAAM,IAAIS,MAAM,2BAIlB,GAAIV,GAASC,EACX,OAAID,EACK,CAAC,CAAA,EAAeA,IAElB,QAGoB,IAAlBE,IACTA,GAAiB,GAEnB,IAAMS,EAAaT,EAGfU,EAAenC,KAAKoC,kBAAkBb,EAAOC,GAC3Ca,EAAed,EAAMN,UAAU,EAAGkB,GACxCZ,EAAQA,EAAMN,UAAUkB,GACxBX,EAAQA,EAAMP,UAAUkB,GAGxBA,EAAenC,KAAKsC,kBAAkBf,EAAOC,GAC7C,IAAMe,EAAehB,EAAMN,UAAUM,EAAM9B,OAAS0C,GACpDZ,EAAQA,EAAMN,UAAU,EAAGM,EAAM9B,OAAS0C,GAC1CX,EAAQA,EAAMP,UAAU,EAAGO,EAAM/B,OAAS0C,GAG1C,IAAMjD,EAAQc,KAAKwC,cAAcjB,EAAOC,EAAOU,EAAYF,GAU3D,OAPIK,GACFnD,EAAMuD,QAAQ,CAAA,EAAeJ,IAE3BE,GACFrD,EAAM0B,KAAK,CAAA,EAAe2B,IAE5BvC,KAAK0C,kBAAkBxD,GAChBA,GAgBTF,EAAAqC,UAAAmB,cAAA,SAAejB,EAAeC,EAAeU,EAC3CF,GACF,IAAI9C,EAEJ,IAAKqC,EAEH,MAAO,CAAC,CAAA,EAAgBC,IAG1B,IAAKA,EAEH,MAAO,CAAC,EAAA,EAAgBD,IAG1B,IAAMoB,EAAWpB,EAAM9B,OAAS+B,EAAM/B,OAAS8B,EAAQC,EACjDoB,EAAYrB,EAAM9B,OAAS+B,EAAM/B,OAAS+B,EAAQD,EAClDsB,EAAIF,EAASG,QAAQF,GAC3B,IAAU,GAANC,EASF,OAPA3D,EAAQ,CAAC,CAAA,EAAgByD,EAAS1B,UAAU,EAAG4B,IACvC,CAAA,EAAeD,GACf,CAAA,EAAgBD,EAAS1B,UAAU4B,EAAID,EAAUnD,UAErD8B,EAAM9B,OAAS+B,EAAM/B,SACvBP,EAAM,GAAG,GAAKA,EAAM,GAAG,IAAE,GAEpBA,EAGT,GAAwB,GAApB0D,EAAUnD,OAGZ,MAAO,CAAC,EAAA,EAAgB8B,GAAQ,CAAA,EAAgBC,IAIlD,IAAMuB,EAAK/C,KAAKgD,gBAAgBzB,EAAOC,GACvC,GAAIuB,EAAI,CAEN,IAAME,EAAUF,EAAG,GACbG,EAAUH,EAAG,GACbI,EAAUJ,EAAG,GACbK,EAAUL,EAAG,GACbM,EAAaN,EAAG,GAEhBO,EAAUtD,KAAKsB,UAAU2B,EAASE,EAASjB,EAAYF,GACvDuB,EAAUvD,KAAKsB,UAAU4B,EAASE,EAASlB,EAAYF,GAE7D,OAAOsB,EAAQE,OAAO,CAAC,CAAA,EAAeH,IAAcE,GAGtD,OAAIrB,GAA6B,IAAfX,EAAM9B,QAA+B,IAAf+B,EAAM/B,OACrCO,KAAKyD,eAAelC,EAAOC,EAAOQ,GAGpChC,KAAK0D,aAAanC,EAAOC,EAAOQ,IAcvChD,EAAAqC,UAAAoC,eAAA,SAAgBlC,EAAeC,EAAeQ,GAE9C,IAAM2B,EAAI3D,KAAK4D,mBAAmBrC,EAAOC,GACzCD,EAAQoC,EAAEE,OACVrC,EAAQmC,EAAEG,OACV,IAAMC,EAAYJ,EAAEK,UAEd9E,EAAQc,KAAKsB,UAAUC,EAAOC,GAAO,EAAOQ,GAGlDhC,KAAKiE,mBAAmB/E,EAAO6E,GAE/B/D,KAAKkE,qBAAqBhF,GAI1BA,EAAM0B,KAAK,CAAA,EAAe,KAM1B,IALA,IAAIuD,EAAU,EACVC,EAAe,EACfC,EAAe,EACfC,EAAc,GACdC,EAAc,GACXJ,EAAUjF,EAAMO,QAAQ,CAC7B,OAAQP,EAAMiF,GAAS,IACrB,KAAA,EACEE,IACAE,GAAerF,EAAMiF,GAAS,GAC9B,MACF,KAAA,EACEC,IACAE,GAAepF,EAAMiF,GAAS,GAC9B,MACF,KAAA,EAEE,GAAoB,GAAhBC,GAAqC,GAAhBC,EAAmB,CAE1CnF,EAAMkB,OAAO+D,EAAUC,EAAeC,EAC1BD,EAAeC,GAC3BF,EAAUA,EAAUC,EAAeC,EAEnC,IADA,IAAMG,EAAIxE,KAAKsB,UAAUgD,EAAaC,GAAa,EAAOvC,GACjDyC,EAAID,EAAE/E,OAAS,EAAQ,GAALgF,EAAQA,IACjCvF,EAAMkB,OAAO+D,EAAS,EAAGK,EAAEC,IAE7BN,GAAoBK,EAAE/E,OAGxB2E,EADAC,EAAe,EAGfE,EADAD,EAAc,GAIlBH,IAIF,OAFAjF,EAAMwF,MAECxF,GAcPF,EAAAqC,UAAAqC,aAAA,SAAcnC,EAAeC,EAAeQ,GAW5C,IATA,IAAM2C,EAAepD,EAAM9B,OACrBmF,EAAepD,EAAM/B,OACrBoF,EAAQC,KAAKC,MAAMJ,EAAeC,GAAgB,GAClDI,EAAWH,EACXI,EAAW,EAAIJ,EACfK,EAAK,IAAIC,MAAMF,GACfG,EAAK,IAAID,MAAMF,GAGZzF,EAAI,EAAGA,EAAIyF,EAAUzF,IAC5B0F,EAAG1F,IAAM,EACT4F,EAAG5F,IAAM,EAEX0F,EAAGF,EAAW,GAAK,EAYnB,IAVA,IAAMK,EAAQV,EAAeC,EAGvBU,EAASD,EAAQ,IAJvBD,EAAGJ,EAAW,GAAK,GAOfO,EAAU,EACVC,EAAQ,EACRC,EAAU,EACVC,EAAQ,EACHC,EAAI,EAAGA,EAAId,MAEd,IAAK/C,MAAQC,UAAYC,GAFJ2D,IAAK,CAO9B,IAAK,IAAIC,GAAMD,EAAIJ,EAASK,GAAMD,EAAIH,EAAOI,GAAM,EAAG,CASpD,IARA,IAAMC,EAAYb,EAAWY,EACzBE,OAAE,EAMFC,GAJFD,EADEF,IAAOD,GAAMC,GAAMD,GAAKT,EAAGW,EAAY,GAAKX,EAAGW,EAAY,GACxDX,EAAGW,EAAY,GAEfX,EAAGW,EAAY,GAAK,GAEbD,EACPE,EAAKnB,GAAgBoB,EAAKnB,GAC3BrD,EAAMyE,OAAOF,IAAOtE,EAAMwE,OAAOD,IACrCD,IACAC,IAGF,GAASpB,GADTO,EAAGW,GAAaC,GAGdN,GAAS,OACJ,GAASZ,EAALmB,EAETR,GAAW,OACN,GAAID,EAAO,CAEhB,GAAiB,IADXW,EAAYjB,EAAWK,EAAQO,IACfK,EAAYhB,IAA8B,GAAlBG,EAAGa,GAG/C,IADMC,EAAKvB,EAAeS,EAAGa,KACzBH,EAEF,OAAO9F,KAAKmG,kBAAkB5E,EAAOC,EAAOsE,EAAIC,EAAI/D,IAO5D,IAAK,IAAIoE,GAAMT,EAAIF,EAASW,GAAMT,EAAID,EAAOU,GAAM,EAAG,CASpD,IARA,IAAMH,EAAYjB,EAAWoB,EACzBF,OAAE,EAMFG,GAJFH,EADEE,IAAOT,GAAMS,GAAMT,GAAKP,EAAGa,EAAY,GAAKb,EAAGa,EAAY,GACxDb,EAAGa,EAAY,GAEfb,EAAGa,EAAY,GAAK,GAEbG,EACPF,EAAKvB,GAAgB0B,EAAKzB,GAC3BrD,EAAMyE,OAAOrB,EAAeuB,EAAK,IACjC1E,EAAMwE,OAAOpB,EAAeyB,EAAK,IACrCH,IACAG,IAGF,GAAS1B,GADTS,EAAGa,GAAaC,GAGdR,GAAS,OACJ,GAASd,EAALyB,EAETZ,GAAW,OACN,IAAKH,EAAO,CAEjB,GAAiB,IADXO,EAAYb,EAAWK,EAAQe,IACfP,EAAYZ,IAA8B,GAAlBC,EAAGW,GAAkB,CAE3DE,EAAKf,GADLc,EAAKZ,EAAGW,IACaA,EAG3B,IADAK,EAAKvB,EAAeuB,IAChBJ,EAEF,OAAO9F,KAAKmG,kBAAkB5E,EAAOC,EAAOsE,EAAIC,EAAI/D,MAQ9D,MAAO,CAAC,EAAA,EAAgBT,GAAQ,CAAA,EAAgBC,KAehDxC,EAAAqC,UAAA8E,kBAAA,SAAmB5E,EAAeC,EAAehC,EAAW8G,EAAWtE,GACrE,IAAMuE,EAAShF,EAAMN,UAAU,EAAGzB,GAC5BgH,EAAShF,EAAMP,UAAU,EAAGqF,GAC5BG,EAASlF,EAAMN,UAAUzB,GACzBkH,EAASlF,EAAMP,UAAUqF,GAGzBpH,EAAQc,KAAKsB,UAAUiF,EAAQC,GAAQ,EAAOxE,GAC9C2E,EAAS3G,KAAKsB,UAAUmF,EAAQC,GAAQ,EAAO1E,GAErD,OAAO9C,EAAMsE,OAAOmD,IAetB3H,EAAAqC,UAAAuC,mBAAA,SAAoBrC,EAAeC,GACjC,IAAMwC,EAAY,GACZ4C,EAAW,GASjB,OALA5C,EAAU,GAAK,GAKR,CAACH,OAFO7D,KAAK6G,wBAAwBtF,EAAOyC,EAAW4C,GAEtC9C,OADT9D,KAAK6G,wBAAwBrF,EAAOwC,EAAW4C,GACtB5C,UAAWA,IAWvDhF,EAAAqC,UAAAwF,wBAAA,SAAwBlH,EAAcqE,EAA0B4C,GAS9D,IARA,IAAIE,EAAQ,GAIRC,EAAY,EACZC,GAAW,EAEXC,EAAkBjD,EAAUvE,OACzBuH,EAAUrH,EAAKF,OAAS,GAAG,EAEhB,IADhBuH,EAAUrH,EAAKmD,QAAQ,KAAMiE,MAE3BC,EAAUrH,EAAKF,OAAS,GAE1B,IAAMyH,EAAOvH,EAAKsB,UAAU8F,EAAWC,EAAU,GACjDD,EAAYC,EAAU,GAElBJ,EAASO,eAAiBP,EAASO,eAAeD,GACjDN,EAASM,KAAUE,WACtBN,GAASO,OAAOC,aAAaV,EAASM,KAEtCJ,GAASO,OAAOC,aAAaL,GAC7BL,EAASM,GAAQD,EACjBjD,EAAUiD,KAAqBC,GAGnC,OAAOJ,GAUP9H,EAAAqC,UAAA4C,mBAAA,SAAoB/E,EAAoB8E,GACxC,IAAK,IAAIxE,EAAI,EAAGA,EAAIN,EAAMO,OAAQD,IAAK,CAGrC,IAFA,IAAMsH,EAAQ5H,EAAMM,GAAG,GACjBG,EAAO,GACJ2G,EAAI,EAAGA,EAAIQ,EAAMrH,OAAQ6G,IAChC3G,EAAK2G,GAAKtC,EAAU8C,EAAMS,WAAWjB,IAEvCpH,EAAMM,GAAG,GAAKG,EAAKE,KAAK,MAY1Bb,EAAAqC,UAAAe,kBAAA,SAAmBb,EAAeC,GAElC,IAAKD,IAAUC,GAASD,EAAMyE,OAAO,IAAMxE,EAAMwE,OAAO,GACtD,OAAO,EAQT,IAJA,IAAIwB,EAAa,EACbC,EAAa3C,KAAK4C,IAAInG,EAAM9B,OAAQ+B,EAAM/B,QAC1CkI,EAAaF,EACbG,EAAe,EACZJ,EAAaG,GACdpG,EAAMN,UAAU2G,EAAcD,IAC9BnG,EAAMP,UAAU2G,EAAcD,GAEhCC,EADAJ,EAAaG,EAGbF,EAAaE,EAEfA,EAAa7C,KAAK+C,OAAOJ,EAAaD,GAAc,EAAIA,GAE1D,OAAOG,GAUP3I,EAAAqC,UAAAiB,kBAAA,SAAmBf,EAAeC,GAElC,IAAKD,IAAUC,GACXD,EAAMyE,OAAOzE,EAAM9B,OAAS,IAAM+B,EAAMwE,OAAOxE,EAAM/B,OAAS,GAChE,OAAO,EAQT,IAJA,IAAI+H,EAAa,EACbC,EAAa3C,KAAK4C,IAAInG,EAAM9B,OAAQ+B,EAAM/B,QAC1CkI,EAAaF,EACbK,EAAa,EACVN,EAAaG,GACdpG,EAAMN,UAAUM,EAAM9B,OAASkI,EAAYpG,EAAM9B,OAASqI,IAC1DtG,EAAMP,UAAUO,EAAM/B,OAASkI,EAAYnG,EAAM/B,OAASqI,GAE5DA,EADAN,EAAaG,EAGbF,EAAaE,EAEfA,EAAa7C,KAAK+C,OAAOJ,EAAaD,GAAc,EAAIA,GAE1D,OAAOG,GAYP3I,EAAAqC,UAAA0G,oBAAA,SAAqBxG,EAAeC,GAEpC,IAAMmD,EAAepD,EAAM9B,OACrBmF,EAAepD,EAAM/B,OAE3B,GAAoB,GAAhBkF,GAAqC,GAAhBC,EACvB,OAAO,EAGUA,EAAfD,EACFpD,EAAQA,EAAMN,UAAU0D,EAAeC,GAC9BD,EAAeC,IACxBpD,EAAQA,EAAMP,UAAU,EAAG0D,IAE7B,IAAMqD,EAAclD,KAAK4C,IAAI/C,EAAcC,GAE3C,GAAIrD,GAASC,EACX,OAAOwG,EAQT,IAFA,IAAIC,EAAO,EACPxI,EAAS,IACA,CACX,IAAMyI,EAAU3G,EAAMN,UAAU+G,EAAcvI,GACxC0I,EAAQ3G,EAAMsB,QAAQoF,GAC5B,IAAc,GAAVC,EACF,OAAOF,EAETxI,GAAU0I,EACG,GAATA,GAAc5G,EAAMN,UAAU+G,EAAcvI,IAC5C+B,EAAMP,UAAU,EAAGxB,KACrBwI,EAAOxI,EACPA,OAiBJT,EAAAqC,UAAA2B,gBAAA,SAAiBzB,EAAeC,GAChC,GAAIxB,KAAK2B,cAAgB,EAEvB,OAAO,KAET,IAAMgB,EAAWpB,EAAM9B,OAAS+B,EAAM/B,OAAS8B,EAAQC,EACjDoB,EAAYrB,EAAM9B,OAAS+B,EAAM/B,OAAS+B,EAAQD,EACxD,GAAIoB,EAASlD,OAAS,GAAwB,EAAnBmD,EAAUnD,OAAakD,EAASlD,OACzD,OAAO,KAET,IASIsD,EAaAE,EAASC,EAASC,EAASC,EAlBzBgF,EAAMpI,KAAKqI,iBAAiB1F,EAAUC,EAClBkC,KAAKC,KAAKpC,EAASlD,OAAS,GAL1CO,MAONsI,EAAMtI,KAAKqI,iBAAiB1F,EAAUC,EAClBkC,KAAKC,KAAKpC,EAASlD,OAAS,GAR1CO,MAUZ,OAAKoI,GAAQE,GAQXvF,EANUuF,EAEAF,GAILA,EAAI,GAAG3I,OAAS6I,EAAI,GAAG7I,OAAS2I,EAHhCE,EAFAF,EAUH7G,EAAM9B,OAAS+B,EAAM/B,QACvBwD,EAAUF,EAAG,GACbG,EAAUH,EAAG,GACbI,EAAUJ,EAAG,GACbK,EAAUL,EAAG,KAEbI,EAAUJ,EAAG,GACbK,EAAUL,EAAG,GACbE,EAAUF,EAAG,GACbG,EAAUH,EAAG,IAGR,CAACE,EAASC,EAASC,EAASC,EADhBL,EAAG,KAvBb,MAuCX/D,EAAAqC,UAAAgH,iBAAA,SAAiB1F,EAAkBC,EAAmBC,EAAW0F,GAM/D,IAJA,IAGIC,EAAiBC,EAAiBC,EAAkBC,EAHlDC,EAAOjG,EAAS1B,UAAU4B,EAAGA,EAAIiC,KAAK+C,MAAMlF,EAASlD,OAAS,IAChEgF,GAAK,EACLoE,EAAc,IAE8B,IAAxCpE,EAAI7B,EAAUE,QAAQ8F,EAAMnE,EAAI,KAAW,CACjD,IAAMqE,EAAeP,EAAInG,kBAAkBO,EAAS1B,UAAU4B,GACtBD,EAAU3B,UAAUwD,IACtDsE,EAAeR,EAAIjG,kBAAkBK,EAAS1B,UAAU,EAAG4B,GACzBD,EAAU3B,UAAU,EAAGwD,IAC3DoE,EAAYpJ,OAASsJ,EAAeD,IACtCD,EAAcjG,EAAU3B,UAAUwD,EAAIsE,EAActE,GAChD7B,EAAU3B,UAAUwD,EAAGA,EAAIqE,GAC/BN,EAAkB7F,EAAS1B,UAAU,EAAG4B,EAAIkG,GAC5CN,EAAkB9F,EAAS1B,UAAU4B,EAAIiG,GACzCJ,EAAmB9F,EAAU3B,UAAU,EAAGwD,EAAIsE,GAC9CJ,EAAmB/F,EAAU3B,UAAUwD,EAAIqE,IAG/C,OAAyB,EAArBD,EAAYpJ,QAAckD,EAASlD,OAC9B,CAAC+I,EAAiBC,EACjBC,EAAkBC,EAAkBE,GAErC,MAQT7J,EAAAqC,UAAA6C,qBAAA,SAAsBhF,GActB,IAbA,IAAI8J,GAAU,EACRC,EAAa,GACfC,EAAmB,EAEnBC,EAAe,KAEfhF,EAAU,EAEViF,EAAqB,EACrBC,EAAoB,EAEpBC,EAAqB,EACrBC,EAAoB,EACjBpF,EAAUjF,EAAMO,QACA,GAAjBP,EAAMiF,GAAS,IAEjBiF,EAAqBE,EACrBD,EAAoBE,EAEpBA,EADAD,EAAqB,EAErBH,EAAejK,EALf+J,EAAWC,KAAsB/E,GAKH,KAET,GAAjBjF,EAAMiF,GAAS,GACjBmF,GAAsBpK,EAAMiF,GAAS,GAAG1E,OAExC8J,GAAqBrK,EAAMiF,GAAS,GAAG1E,OAIrC0J,GAAiBA,EAAa1J,QAC9BqF,KAAK0E,IAAIJ,EAAoBC,IAC5BF,EAAa1J,QAAUqF,KAAK0E,IAAIF,EACDC,KAElCrK,EAAMkB,OAAO6I,EAAWC,EAAmB,GAAI,EACnC,EAAA,EAAgBC,IAE5BjK,EAAM+J,EAAWC,EAAmB,GAAK,GAAG,GAAE,EAE9CA,IAGA/E,EAA6B,IAD7B+E,EACiCD,EAAWC,EAAmB,IAAM,EAIrEK,EADAD,EADAD,EADAD,EAAqB,EAKrBJ,IADAG,EAAe,QAInBhF,IAgBF,IAZI6E,GACFhJ,KAAK0C,kBAAkBxD,GAEzBc,KAAKyJ,6BAA6BvK,GAQlCiF,EAAU,EACHA,EAAUjF,EAAMO,QAAQ,CAC7B,IAAyB,GAArBP,EAAMiF,EAAU,GAAG,IACF,GAAjBjF,EAAMiF,GAAS,GAAqB,CACtC,IAAMuF,EAAWxK,EAAMiF,EAAU,GAAG,GAC9BwF,EAAYzK,EAAMiF,GAAS,GAC3ByF,EAAkB5J,KAAK+H,oBAAoB2B,EAAUC,GACrDE,EAAkB7J,KAAK+H,oBAAoB4B,EAAWD,GACrCG,GAAnBD,GACEA,GAAmBF,EAASjK,OAAS,GACrCmK,GAAmBD,EAAUlK,OAAS,KAExCP,EAAMkB,OAAO+D,EAAS,EAClB,CAAA,EAAewF,EAAU1I,UAAU,EAAG2I,KAC1C1K,EAAMiF,EAAU,GAAG,GACfuF,EAASzI,UAAU,EAAGyI,EAASjK,OAASmK,GAC5C1K,EAAMiF,EAAU,GAAG,GAAKwF,EAAU1I,UAAU2I,GAC5CzF,MAGE0F,GAAmBH,EAASjK,OAAS,GACrCoK,GAAmBF,EAAUlK,OAAS,KAGxCP,EAAMkB,OAAO+D,EAAS,EAClB,CAAA,EAAeuF,EAASzI,UAAU,EAAG4I,KACzC3K,EAAMiF,EAAU,GAAG,GAAE,EACrBjF,EAAMiF,EAAU,GAAG,GACfwF,EAAU1I,UAAU,EAAG0I,EAAUlK,OAASoK,GAC9C3K,EAAMiF,EAAU,GAAG,IAAE,EACrBjF,EAAMiF,EAAU,GAAG,GACfuF,EAASzI,UAAU4I,GACvB1F,KAGJA,IAEFA,MAWFnF,EAAAqC,UAAAoI,6BAAA,SAA8BvK,GAW9B,SAAA4K,EAAoCC,EAAaC,GAC/C,IAAKD,IAAQC,EAEX,OAAO,EAIT,IAAMC,EAAwB,IAAIhL,OAAO,kBAOnCiL,EAAQH,EAAI/D,OAAO+D,EAAItK,OAAS,GAChC0K,EAAQH,EAAIhE,OAAO,GACnBoE,EAAmBF,EAAMG,MAAMJ,GAC/BK,EAAmBH,EAAME,MAAMJ,GAC/BM,EAAcH,GAChBF,EAAMG,MAAMrK,KAAKwK,kBACfC,EAAcH,GAChBH,EAAME,MAAMrK,KAAKwK,kBACfE,EAAaH,GACfL,EAAMG,MAAMrK,KAAK2K,iBACfC,EAAaH,GACfN,EAAME,MAAMrK,KAAK2K,iBACfE,EAAaH,GACfX,EAAIM,MAAMrK,KAAK8K,oBACbC,EAAaH,GACfZ,EAAIK,MAAMrK,KAAKgL,sBAEnB,OAAIH,GAAcE,EAET,EACEL,GAAcE,EAEhB,EACER,IAAqBG,GAAeE,EAEtC,EACEF,GAAeE,EAEjB,EACEL,GAAoBE,EAEtB,EAEF,EAKT,IAFA,IAAInG,EAAU,EAEPA,EAAUjF,EAAMO,OAAS,GAAG,CACjC,GAAyB,GAArBP,EAAMiF,EAAU,GAAG,IACE,GAArBjF,EAAMiF,EAAU,GAAG,GAAoB,CAEzC,IAAI8G,EAAY/L,EAAMiF,EAAU,GAAG,GAC/B+G,EAAOhM,EAAMiF,GAAS,GACtBgH,EAAYjM,EAAMiF,EAAU,GAAG,GAG7BiH,EAAepL,KAAKsC,kBAAkB2I,EAAWC,GACvD,GAAIE,EAAc,CAChB,IAAMC,EAAeH,EAAKjK,UAAUiK,EAAKzL,OAAS2L,GAClDH,EAAYA,EAAUhK,UAAU,EAAGgK,EAAUxL,OAAS2L,GACtDF,EAAOG,EAAeH,EAAKjK,UAAU,EAAGiK,EAAKzL,OAAS2L,GACtDD,EAAYE,EAAeF,EAS7B,IALA,IAAIG,EAAgBL,EAChBM,EAAWL,EACXM,EAAgBL,EAChBM,EAAY3B,EAA2BmB,EAAWC,GAClDpB,EAA2BoB,EAAMC,GAC9BD,EAAKlF,OAAO,KAAOmF,EAAUnF,OAAO,IAAI,CAC7CiF,GAAaC,EAAKlF,OAAO,GACzBkF,EAAOA,EAAKjK,UAAU,GAAKkK,EAAUnF,OAAO,GAC5CmF,EAAYA,EAAUlK,UAAU,GAChC,IAAMyK,EAAQ5B,EAA2BmB,EAAWC,GAChDpB,EAA2BoB,EAAMC,GAExBM,GAATC,IACFD,EAAYC,EACZJ,EAAgBL,EAChBM,EAAWL,EACXM,EAAgBL,GAIhBjM,EAAMiF,EAAU,GAAG,IAAMmH,IAEvBA,EACFpM,EAAMiF,EAAU,GAAG,GAAKmH,GAExBpM,EAAMkB,OAAO+D,EAAU,EAAG,GAC1BA,KAEFjF,EAAMiF,GAAS,GAAKoH,EAChBC,EACFtM,EAAMiF,EAAU,GAAG,GAAKqH,GAExBtM,EAAMkB,OAAO+D,EAAU,EAAG,GAC1BA,MAINA,MASFnF,EAAAqC,UAAAsK,uBAAA,SAAwBzM,GAgBxB,IAfA,IAAI8J,GAAU,EACRC,EAAa,GACfC,EAAmB,EAEnBC,EAAe,KAEfhF,EAAU,EAEVyH,GAAU,EAEVC,GAAU,EAEVC,GAAW,EAEXC,GAAW,EACR5H,EAAUjF,EAAMO,QACA,GAAjBP,EAAMiF,GAAS,IACbjF,EAAMiF,GAAS,GAAG1E,OAASO,KAAKgM,gBAC/BF,GAAYC,IAGfH,EAAUE,EACVD,EAAUE,EACV5C,EAAejK,EAHf+J,EAAWC,KAAsB/E,GAGH,KAG9B+E,EAAmB,EACnBC,EAAe,MAEjB2C,EAAWC,GAAW,KAED,GAAjB7M,EAAMiF,GAAS,GACjB4H,GAAW,EAEXD,GAAW,EAUT3C,IAAkByC,GAAWC,GAAWC,GAAYC,GAClC5C,EAAa1J,OAASO,KAAKgM,cAAgB,IAC3CJ,EAAQ,EAAE,IAAMC,EAAQ,EAAE,IAAMC,EAAS,EAAE,IAAMC,EAAS,EAAE,IAAM,KAEtF7M,EAAMkB,OAAO6I,EAAWC,EAAmB,GAAI,EACnC,EAAA,EAAgBC,IAE5BjK,EAAM+J,EAAWC,EAAmB,GAAK,GAAG,GAAE,EAC9CA,IACAC,EAAe,KACXyC,GAAWC,GAEbC,EAAWC,GAAW,EACtB7C,EAAmB,IAGnB/E,EAA6B,IAD7B+E,EAEID,EAAWC,EAAmB,IAAM,EACxC4C,EAAWC,GAAW,GAExB/C,GAAU,IAGd7E,IAGE6E,GACFhJ,KAAK0C,kBAAkBxD,IAUzBF,EAAAqC,UAAAqB,kBAAA,SAAmBxD,GACnBA,EAAM0B,KAAK,CAAA,EAAe,KAO1B,IANA,IAKIuB,EALAgC,EAAU,EACVC,EAAe,EACfC,EAAe,EACfC,EAAc,GACdC,EAAc,GAEXJ,EAAUjF,EAAMO,QACrB,OAAQP,EAAMiF,GAAS,IACrB,KAAA,EACEE,IACAE,GAAerF,EAAMiF,GAAS,GAC9BA,IACA,MACF,KAAA,EACEC,IACAE,GAAepF,EAAMiF,GAAS,GAC9BA,IACA,MACF,KAAA,EAEoC,EAA9BC,EAAeC,GACI,IAAjBD,GAAuC,IAAjBC,IAGH,KADrBlC,EAAenC,KAAKoC,kBAAkBmC,EAAaD,MAEH,EAAzCH,EAAUC,EAAeC,MAC1BnF,EAAMiF,EAAUC,EAAeC,EAAe,GAAG,GAEnDnF,EAAMiF,EAAUC,EAAeC,EAAe,GAAG,IAC7CE,EAAYtD,UAAU,EAAGkB,IAE7BjD,EAAMkB,OAAO,EAAG,EAAG,CAAA,EACCmE,EAAYtD,UAAU,EAAGkB,KAC7CgC,KAEFI,EAAcA,EAAYtD,UAAUkB,GACpCmC,EAAcA,EAAYrD,UAAUkB,IAIjB,KADrBA,EAAenC,KAAKsC,kBAAkBiC,EAAaD,MAEjDpF,EAAMiF,GAAS,GAAKI,EAAYtD,UAAUsD,EAAY9E,OAClD0C,GAAgBjD,EAAMiF,GAAS,GACnCI,EAAcA,EAAYtD,UAAU,EAAGsD,EAAY9E,OAC/C0C,GACJmC,EAAcA,EAAYrD,UAAU,EAAGqD,EAAY7E,OAC/C0C,KAIa,IAAjBiC,EACFlF,EAAMkB,OAAO+D,EAAUE,EACnBD,EAAeC,EAAc,CAAA,EAAgBE,IACvB,IAAjBF,EACTnF,EAAMkB,OAAO+D,EAAUC,EACnBA,EAAeC,EAAc,EAAA,EAAgBC,IAEjDpF,EAAMkB,OAAO+D,EAAUC,EAAeC,EAClCD,EAAeC,EAAc,EAAA,EAAgBC,GAC7C,CAAA,EAAgBC,IAEtBJ,EAAUA,EAAUC,EAAeC,GACxBD,EAAe,EAAI,IAAMC,EAAe,EAAI,GAAK,GACvC,IAAZF,GAAsC,GAArBjF,EAAMiF,EAAU,GAAG,IAE7CjF,EAAMiF,EAAU,GAAG,IAAMjF,EAAMiF,GAAS,GACxCjF,EAAMkB,OAAO+D,EAAS,IAEtBA,IAGFC,EADAC,EAAe,EAGfE,EADAD,EAAc,GAKe,KAA/BpF,EAAMA,EAAMO,OAAS,GAAG,IAC1BP,EAAMwF,MAMR,IAAIsE,GAAU,EAGd,IAFA7E,EAAU,EAEHA,EAAUjF,EAAMO,OAAS,GACL,GAArBP,EAAMiF,EAAU,GAAG,IACE,GAArBjF,EAAMiF,EAAU,GAAG,KAEjBjF,EAAMiF,GAAS,GAAGlD,UAAU/B,EAAMiF,GAAS,GAAG1E,OAC9CP,EAAMiF,EAAU,GAAG,GAAG1E,SAAWP,EAAMiF,EAAU,GAAG,IAEtDjF,EAAMiF,GAAS,GAAKjF,EAAMiF,EAAU,GAAG,GACnCjF,EAAMiF,GAAS,GAAGlD,UAAU,EAAG/B,EAAMiF,GAAS,GAAG1E,OACrBP,EAAMiF,EAAU,GAAG,GAAG1E,QACtDP,EAAMiF,EAAU,GAAG,GAAKjF,EAAMiF,EAAU,GAAG,GAAKjF,EAAMiF,EAAU,GAAG,GACnEjF,EAAMkB,OAAO+D,EAAU,EAAG,GAC1B6E,GAAU,GACD9J,EAAMiF,GAAS,GAAGlD,UAAU,EAAG/B,EAAMiF,EAAU,GAAG,GAAG1E,SAC5DP,EAAMiF,EAAU,GAAG,KAErBjF,EAAMiF,EAAU,GAAG,IAAMjF,EAAMiF,EAAU,GAAG,GAC5CjF,EAAMiF,GAAS,GACXjF,EAAMiF,GAAS,GAAGlD,UAAU/B,EAAMiF,EAAU,GAAG,GAAG1E,QAClDP,EAAMiF,EAAU,GAAG,GACvBjF,EAAMkB,OAAO+D,EAAU,EAAG,GAC1B6E,GAAU,IAGd7E,IAGE6E,GACFhJ,KAAK0C,kBAAkBxD,IAazBF,EAAAqC,UAAA4K,YAAA,SAAa/M,EAAoBgN,GACjC,IAII1M,EAJAqE,EAAS,EACTC,EAAS,EACTqI,EAAc,EACdC,EAAc,EAElB,IAAK5M,EAAI,EAAGA,EAAIN,EAAMO,SACL,IAAXP,EAAMM,GAAG,KACXqE,GAAU3E,EAAMM,GAAG,GAAGC,SAET,IAAXP,EAAMM,GAAG,KACXsE,GAAU5E,EAAMM,GAAG,GAAGC,UAEXyM,EAATrI,IAPwBrE,IAU5B2M,EAActI,EACduI,EAActI,EAGhB,OAAI5E,EAAMO,QAAUD,IAAgB,IAAXN,EAAMM,GAAG,GACzB4M,EAGFA,GAAeF,EAAMC,IAyC5BnN,EAAAqC,UAAAD,WAAA,SAAYlC,GAEZ,IADA,IAAMS,EAAO,GACJH,EAAI,EAAGA,EAAIN,EAAMO,OAAQD,IACjB,IAAXN,EAAMM,GAAG,KACXG,EAAKH,GAAKN,EAAMM,GAAG,IAGvB,OAAOG,EAAKE,KAAK,KASjBb,EAAAqC,UAAAH,WAAA,SAAYhC,GAEZ,IADA,IAAMS,EAAO,GACJH,EAAI,EAAGA,EAAIN,EAAMO,OAAQD,KACjB,IAAXN,EAAMM,GAAG,KACXG,EAAKH,GAAKN,EAAMM,GAAG,IAGvB,OAAOG,EAAKE,KAAK,KAUjBb,EAAAqC,UAAAgL,iBAAA,SAAkBnN,GAIlB,IAHA,IAAIoN,EAAc,EACdC,EAAa,EACbC,EAAY,EACPhN,EAAI,EAAGA,EAAIN,EAAMO,OAAQD,IAAK,CACrC,IAAME,EAAKR,EAAMM,GAAG,GACdiN,EAAOvN,EAAMM,GAAG,GACtB,OAAQE,GACN,KAAA,EACE6M,GAAcE,EAAKhN,OACnB,MACF,KAAA,EACE+M,GAAaC,EAAKhN,OAClB,MACF,KAAA,EAEE6M,GAAexH,KAAK0E,IAAI+C,EAAYC,GAEpCA,EADAD,EAAa,GAMnB,OADAD,GAAexH,KAAK0E,IAAI+C,EAAYC,IAapCxN,EAAAqC,UAAAqL,aAAA,SAAcxN,GAEd,IADA,IAAMS,EAAO,GACJH,EAAI,EAAGA,EAAIN,EAAMO,OAAQD,IAChC,OAAQN,EAAMM,GAAG,IACf,KAAA,EACEG,EAAKH,GAAK,IAAMmN,UAAUzN,EAAMM,GAAG,IACnC,MACF,KAAA,EACEG,EAAKH,GAAK,IAAMN,EAAMM,GAAG,GAAGC,OAC5B,MACF,KAAA,EACEE,EAAKH,GAAK,IAAMN,EAAMM,GAAG,GAAGC,OAIlC,OAAOE,EAAKE,KAAK,MAAMD,QAAQ,OAAQ,MAYvCZ,EAAAqC,UAAAuL,eAAA,SAAgBrL,EAAe8D,GAK/B,IAJA,IAAMnG,EAAQ,GACV2N,EAAc,EACd1I,EAAU,EACR2I,EAASzH,EAAM0H,MAAM,OAClBvN,EAAI,EAAGA,EAAIsN,EAAOrN,OAAQD,IAAK,CAGtC,IAAMwN,EAAQF,EAAOtN,GAAGyB,UAAU,GAClC,OAAQ6L,EAAOtN,GAAGwG,OAAO,IACvB,IAAK,IACH,IACE9G,EAAM2N,KAAiB,CAAA,EAAgBI,UAAUD,IACjD,MAAOE,GAEP,MAAM,IAAIjL,MAAM,qCAAuC+K,GAEzD,MACF,IAAK,IAEL,IAAK,IACH,IAAMG,EAAIC,SAASJ,EAAO,IAC1B,GAAIK,MAAMF,IAAMA,EAAI,EAClB,MAAM,IAAIlL,MAAM,qCAAuC+K,GAEzD,IAAMrN,EAAO4B,EAAMN,UAAUkD,EAASA,GAAWgJ,GACtB,KAAvBL,EAAOtN,GAAGwG,OAAO,GACnB9G,EAAM2N,KAAiB,CAAA,EAAelN,GAEtCT,EAAM2N,KAAiB,EAAA,EAAgBlN,GAEzC,MACF,QAGE,GAAImN,EAAOtN,GACT,MAAM,IAAIyC,MAAM,6CACA6K,EAAOtN,KAI/B,GAAI2E,GAAW5C,EAAM9B,OACnB,MAAM,IAAIwC,MAAM,iBAAmBkC,EAC/B,wCAA0C5C,EAAM9B,OAAS,MAE/D,OAAOP,GAUPF,EAAAqC,UAAAiM,WAAA,SAAY3N,EAAcuI,EAAiBgE,GAE3C,GAAY,MAARvM,GAA2B,MAAXuI,GAA0B,MAAPgE,EACrC,MAAM,IAAIjK,MAAM,4BAIlB,OADAiK,EAAMpH,KAAK0E,IAAI,EAAG1E,KAAK4C,IAAIwE,EAAKvM,EAAKF,SACjCE,GAAQuI,EAEH,EACGvI,EAAKF,OAGNE,EAAKsB,UAAUiL,EAAKA,EAAMhE,EAAQzI,SAAWyI,EAE/CgE,EAGAlM,KAAKuN,aAAa5N,EAAMuI,EAASgE,IANhC,GAoBVlN,EAAAqC,UAAAkM,aAAA,SAAc5N,EAAcuI,EAAiBgE,GAC7C,GAAIhE,EAAQzI,OAASO,KAAKC,cACxB,MAAM,IAAIgC,MAAM,sCAIlB,IAAMuL,EAAIxN,KAAKyN,gBAAgBvF,GAEzBK,EAAMvI,KAUZ,SAAA0N,EAA2BC,EAAWnO,GACpC,IAAMoO,EAAWD,EAAIzF,EAAQzI,OACvBoO,EAAY/I,KAAKgJ,IAAI5B,EAAM1M,GACjC,OAAK+I,EAAIwF,eAIFH,EAAYC,EAAYtF,EAAIwF,eAF1BF,EAAY,EAAMD,EAM7B,IAAII,EAAkBhO,KAAKiO,gBAEvBC,EAAWvO,EAAKmD,QAAQoF,EAASgE,IACpB,GAAbgC,IACFF,EAAkBlJ,KAAK4C,IAAIgG,EAAkB,EAAGQ,GAAWF,IAG1C,IADjBE,EAAWvO,EAAKwO,YAAYjG,EAASgE,EAAMhE,EAAQzI,WAEjDuO,EACIlJ,KAAK4C,IAAIgG,EAAkB,EAAGQ,GAAWF,KAKjD,IAGII,EAASC,EAHPC,EAAY,GAAMpG,EAAQzI,OAAS,EACzCyO,GAAY,EAKZ,IAFA,IACIK,EADAC,EAAUtG,EAAQzI,OAASE,EAAKF,OAE3BkG,EAAI,EAAGA,EAAIuC,EAAQzI,OAAQkG,IAAK,CAMvC,IAFAyI,EAAU,EACVC,EAAUG,EACHJ,EAAUC,GACXX,EAAkB/H,EAAGuG,EAAMmC,IAAYL,EACzCI,EAAUC,EAEVG,EAAUH,EAEZA,EAAUvJ,KAAK+C,OAAO2G,EAAUJ,GAAW,EAAIA,GAGjDI,EAAUH,EACV,IAAII,EAAQ3J,KAAK0E,IAAI,EAAG0C,EAAMmC,EAAU,GAClCK,EAAS5J,KAAK4C,IAAIwE,EAAMmC,EAAS1O,EAAKF,QAAUyI,EAAQzI,OAExDkP,EAAKxJ,MAAMuJ,EAAS,GAC1BC,EAAGD,EAAS,IAAM,GAAK/I,GAAK,EAC5B,IAAK,IAAIlB,EAAIiK,EAAaD,GAALhK,EAAYA,IAAK,CAGpC,IAAMmK,EAAYpB,EAAE7N,EAAKqG,OAAOvB,EAAI,IAQpC,GANEkK,EAAGlK,GADK,IAANkB,GACQgJ,EAAGlK,EAAI,IAAM,EAAK,GAAKmK,GAEtBD,EAAGlK,EAAI,IAAM,EAAK,GAAKmK,GACvBL,EAAQ9J,EAAI,GAAK8J,EAAQ9J,KAAO,EAAK,EACxC8J,EAAQ9J,EAAI,GAElBkK,EAAGlK,GAAK6J,EAAW,CACrB,IAAM5C,EAAQgC,EAAkB/H,EAAGlB,EAAI,GAGvC,GAAIiH,GAASsC,EAAiB,CAI5B,GAFAA,EAAkBtC,IAEHQ,GADfgC,EAAWzJ,EAAI,IAMb,MAHAgK,EAAQ3J,KAAK0E,IAAI,EAAG,EAAI0C,EAAMgC,KAStC,GAAIR,EAAkB/H,EAAI,EAAGuG,GAAO8B,EAClC,MAEFO,EAAUI,EAEZ,OAAOT,GAUPlP,EAAAqC,UAAAoM,gBAAA,SAAiBvF,GAEjB,IADA,IAAMsF,EAAqC,GAClC3K,EAAI,EAAGA,EAAIqF,EAAQzI,OAAQoD,IAClC2K,EAAEtF,EAAQlC,OAAOnD,IAAM,EAEzB,IAASA,EAAI,EAAGA,EAAIqF,EAAQzI,OAAQoD,IAClC2K,EAAEtF,EAAQlC,OAAOnD,KAAO,GAAMqF,EAAQzI,OAASoD,EAAI,EAErD,OAAO2K,GAWPxO,EAAAqC,UAAAwN,kBAAA,SAAmBrO,EAAkBb,GACrC,GAAmB,GAAfA,EAAKF,OAAT,CAQA,IALA,IAAIyI,EAAUvI,EAAKsB,UAAUT,EAAMF,OAAQE,EAAMF,OAASE,EAAMN,SAC5D4O,EAAU,EAIPnP,EAAKmD,QAAQoF,IAAYvI,EAAKwO,YAAYjG,IAC3CA,EAAQzI,OAASO,KAAKC,cAAgBD,KAAKa,aAC3Cb,KAAKa,cACTiO,GAAW9O,KAAKa,aAChBqH,EAAUvI,EAAKsB,UAAUT,EAAMF,OAASwO,EAChBtO,EAAMF,OAASE,EAAMN,QAAU4O,GAGzDA,GAAW9O,KAAKa,aAGhB,IAAMkO,EAASpP,EAAKsB,UAAUT,EAAMF,OAASwO,EAAStO,EAAMF,QACxDyO,GACFvO,EAAMtB,MAAMuD,QAAQ,CAAA,EAAesM,IAGrC,IAAMC,EAASrP,EAAKsB,UAAUT,EAAMF,OAASE,EAAMN,QACvBM,EAAMF,OAASE,EAAMN,QAAU4O,GACvDE,GACFxO,EAAMtB,MAAM0B,KAAK,CAAA,EAAeoO,IAIlCxO,EAAMH,QAAU0O,EAAOtP,OACvBe,EAAMF,QAAUyO,EAAOtP,OAEvBe,EAAMN,SAAW6O,EAAOtP,OAASuP,EAAOvP,OACxCe,EAAMG,SAAWoO,EAAOtP,OAASuP,EAAOvP,SA0BxCT,EAAAqC,UAAA4N,WAAA,SAAYtL,EAAyBuL,EAA6BC,GAClE,IAAI5N,EAAOrC,EACX,GAAgB,iBAALyE,GAAiC,iBAATuL,QACf,IAATC,EAGT5N,EAAK,EAEc,GADnBrC,EAAQc,KAAKsB,UAAUC,EAAK,GAAW,IAC7B9B,SACRO,KAAKkE,qBAAqBhF,GAC1Bc,KAAK2L,uBAAuBzM,SAEzB,GAAIyE,GAAiB,iBAALA,QAAiC,IAATuL,QAC3B,IAATC,EAGTjQ,EAAK,EACLqC,EAAQvB,KAAKoB,WAAWlC,QACnB,GAAgB,iBAALyE,GAAiBuL,GAAyB,iBAATA,QAC/B,IAATC,EAET5N,EAAK,EACLrC,EAAK,MACA,CAAA,GAAgB,iBAALyE,GAAiC,iBAATuL,IACtCC,GAAyB,iBAATA,EAMlB,MAAM,IAAIlN,MAAM,sCAHhBV,EAAK,EACLrC,EAAK,EAKP,GAAqB,IAAjBA,EAAMO,OACR,MAAO,GAYT,IAVA,IAAMK,EAAU,GACZU,EAAQ,IAAIC,EACZ2O,EAAkB,EAClBC,EAAc,EACdC,EAAc,EAIdC,EAAgBhO,EAChBiO,EAAiBjO,EACZ/B,EAAI,EAAGA,EAAIN,EAAMO,OAAQD,IAAK,CACrC,IAAMsB,EAAY5B,EAAMM,GAAG,GACrBuB,EAAY7B,EAAMM,GAAG,GAQ3B,OANK4P,GAA4B,IAATtO,IAEtBN,EAAMH,OAASgP,EACf7O,EAAMF,OAASgP,GAGTxO,GACN,KAAA,EACEN,EAAMtB,MAAMkQ,KAAqBlQ,EAAMM,GACvCgB,EAAMG,SAAWI,EAAUtB,OAC3B+P,EAAiBA,EAAevO,UAAU,EAAGqO,GAAevO,EAC5CyO,EAAevO,UAAUqO,GACzC,MACF,KAAA,EACE9O,EAAMN,SAAWa,EAAUtB,OAC3Be,EAAMtB,MAAMkQ,KAAqBlQ,EAAMM,GACvCgQ,EAAiBA,EAAevO,UAAU,EAAGqO,GAC7BE,EAAevO,UAAUqO,EACrBvO,EAAUtB,QAC9B,MACF,KAAA,EACMsB,EAAUtB,QAAU,EAAIO,KAAKa,cAC7BuO,GAAmBlQ,EAAMO,QAAUD,EAAI,GAEzCgB,EAAMtB,MAAMkQ,KAAqBlQ,EAAMM,GACvCgB,EAAMN,SAAWa,EAAUtB,OAC3Be,EAAMG,SAAWI,EAAUtB,QAClBsB,EAAUtB,QAAU,EAAIO,KAAKa,cAElCuO,IACFpP,KAAK6O,kBAAkBrO,EAAO+O,GAC9BzP,EAAQc,KAAKJ,GACbA,EAAQ,IAAIC,EACZ2O,EAAkB,EAKlBG,EAAgBC,EAChBH,EAAcC,GAOT,IAATxO,IACFuO,GAAetO,EAAUtB,SAEd,IAATqB,IACFwO,GAAevO,EAAUtB,QAS7B,OALI2P,IACFpP,KAAK6O,kBAAkBrO,EAAO+O,GAC9BzP,EAAQc,KAAKJ,IAGRV,GASPd,EAAAqC,UAAAoO,eAAA,SAAgB3P,GAGhB,IADA,IAAM4P,EAAc,GACXlQ,EAAI,EAAGA,EAAIM,EAAQL,OAAQD,IAAK,CACvC,IAAMgB,EAAQV,EAAQN,GAChBmQ,EAAY,IAAIlP,EACtBkP,EAAUzQ,MAAQ,GAClB,IAAK,IAAIoH,EAAI,EAAGA,EAAI9F,EAAMtB,MAAMO,OAAQ6G,IACtCqJ,EAAUzQ,MAAMoH,GAAK,CAAC9F,EAAMtB,MAAMoH,GAAG,GAAI9F,EAAMtB,MAAMoH,GAAG,IAE1DqJ,EAAUtP,OAASG,EAAMH,OACzBsP,EAAUrP,OAASE,EAAMF,OACzBqP,EAAUzP,QAAUM,EAAMN,QAC1ByP,EAAUhP,QAAUH,EAAMG,QAC1B+O,EAAYlQ,GAAKmQ,EAEnB,OAAOD,GAYP1Q,EAAAqC,UAAAuO,YAAA,SAAa9P,EAA2BH,GACxC,GAAsB,GAAlBG,EAAQL,OACV,MAAO,CAACE,EAAM,IAIhBG,EAAUE,KAAKyP,eAAe3P,GAE9B,IAAM+P,EAAc7P,KAAK8P,iBAAiBhQ,GAC1CH,EAAOkQ,EAAclQ,EAAOkQ,EAE5B7P,KAAK+P,eAAejQ,GAOpB,IAFA,IAAIuF,EAAQ,EACN2K,EAAU,GACPxQ,EAAI,EAAGA,EAAIM,EAAQL,OAAQD,IAAK,CACvC,IAAMyQ,EAAenQ,EAAQN,GAAGc,OAAS+E,EACnC9D,EAAQvB,KAAKoB,WAAWtB,EAAQN,GAAGN,OACrCgR,OAAS,EACTC,GAAW,EAkBf,GAjBI5O,EAAM9B,OAASO,KAAKC,eAKJ,IAFlBiQ,EAAYlQ,KAAKsN,WAAW3N,EAAM4B,EAAMN,UAAU,EAAGjB,KAAKC,eAC9BgQ,OAKV,IAHhBE,EAAUnQ,KAAKsN,WAAW3N,EACtB4B,EAAMN,UAAUM,EAAM9B,OAASO,KAAKC,eACpCgQ,EAAe1O,EAAM9B,OAASO,KAAKC,iBACLkQ,GAAbD,KAEnBA,GAAa,GAIjBA,EAAYlQ,KAAKsN,WAAW3N,EAAM4B,EAAO0O,IAEzB,GAAdC,EAEFF,EAAQxQ,IAAK,EAEb6F,GAASvF,EAAQN,GAAGmB,QAAUb,EAAQN,GAAGU,YACpC,CAEL8P,EAAQxQ,IAAK,EACb6F,EAAQ6K,EAAYD,EACpB,IAAIzO,OAAK,EAMT,GAAID,IAJFC,GADc,GAAZ2O,EACMxQ,EAAKsB,UAAUiP,EAAWA,EAAY3O,EAAM9B,QAE5CE,EAAKsB,UAAUiP,EAAWC,EAAUnQ,KAAKC,gBAIjDN,EAAOA,EAAKsB,UAAU,EAAGiP,GACnBlQ,KAAKkB,WAAWpB,EAAQN,GAAGN,OAC3BS,EAAKsB,UAAUiP,EAAY3O,EAAM9B,YAClC,CAGL,IAAMP,EAAQc,KAAKsB,UAAUC,EAAOC,GAAO,GAC3C,GAAID,EAAM9B,OAASO,KAAKC,eACpBD,KAAKqM,iBAAiBnN,GAASqC,EAAM9B,OACrCO,KAAKoQ,sBAEPJ,EAAQxQ,IAAK,MACR,CACLQ,KAAKyJ,6BAA6BvK,GAGlC,IAFA,IAAImR,EAAS,EACTC,OAAM,EACDhK,EAAI,EAAGA,EAAIxG,EAAQN,GAAGN,MAAMO,OAAQ6G,IAAK,CAChD,IAAMiK,EAAMzQ,EAAQN,GAAGN,MAAMoH,GACnB,IAANiK,EAAI,KACND,EAAStQ,KAAKiM,YAAY/M,EAAOmR,IAEzB,IAANE,EAAI,GACN5Q,EAAOA,EAAKsB,UAAU,EAAGiP,EAAYI,GAAUC,EAAI,GAC7C5Q,EAAKsB,UAAUiP,EAAYI,IAClB,IAANC,EAAI,KACb5Q,EAAOA,EAAKsB,UAAU,EAAGiP,EAAYI,GAC/B3Q,EAAKsB,UAAUiP,EAAYlQ,KAAKiM,YAAY/M,EACxCmR,EAASE,EAAI,GAAG9Q,WAElB,IAAN8Q,EAAI,KACNF,GAAUE,EAAI,GAAG9Q,YAS7B,MAAO,CADPE,EAAOA,EAAKsB,UAAU4O,EAAYpQ,OAAQE,EAAKF,OAASoQ,EAAYpQ,QACtDuQ,IAUdhR,EAAAqC,UAAAyO,iBAAA,SAAkBhQ,GAGlB,IAFA,IAAM0Q,EAAgBxQ,KAAKa,aACvBgP,EAAc,GACTrQ,EAAI,EAAGA,GAAKgR,EAAehR,IAClCqQ,GAAexI,OAAOC,aAAa9H,GAIrC,IAASA,EAAI,EAAGA,EAAIM,EAAQL,OAAQD,IAClCM,EAAQN,GAAGa,QAAUmQ,EACrB1Q,EAAQN,GAAGc,QAAUkQ,EAIvB,IAAIhQ,EAAQV,EAAQ,GAChBZ,EAAQsB,EAAMtB,MAClB,GAAoB,GAAhBA,EAAMO,QAA0B,GAAXP,EAAM,GAAG,GAEhCA,EAAMuD,QAAQ,CAAA,EAAeoN,IAC7BrP,EAAMH,QAAUmQ,EAChBhQ,EAAMF,QAAUkQ,EAChBhQ,EAAMN,SAAWsQ,EACjBhQ,EAAMG,SAAW6P,OACZ,GAAIA,EAAgBtR,EAAM,GAAG,GAAGO,OAAQ,CAE7C,IAAMgR,EAAcD,EAAgBtR,EAAM,GAAG,GAAGO,OAChDP,EAAM,GAAG,GAAK2Q,EAAY5O,UAAU/B,EAAM,GAAG,GAAGO,QAAUP,EAAM,GAAG,GACnEsB,EAAMH,QAAUoQ,EAChBjQ,EAAMF,QAAUmQ,EAChBjQ,EAAMN,SAAWuQ,EACjBjQ,EAAMG,SAAW8P,EAMnB,GAAoB,IADpBvR,GADAsB,EAAQV,EAAQA,EAAQL,OAAS,IACnBP,OACJO,QAAyC,GAA1BP,EAAMA,EAAMO,OAAS,GAAG,GAE/CP,EAAM0B,KAAK,CAAA,EAAeiP,IAC1BrP,EAAMN,SAAWsQ,EACjBhQ,EAAMG,SAAW6P,OACZ,GAAIA,EAAgBtR,EAAMA,EAAMO,OAAS,GAAG,GAAGA,OAAQ,CAEtDgR,EAAcD,EAAgBtR,EAAMA,EAAMO,OAAS,GAAG,GAAGA,OAC/DP,EAAMA,EAAMO,OAAS,GAAG,IAAMoQ,EAAY5O,UAAU,EAAGwP,GACvDjQ,EAAMN,SAAWuQ,EACjBjQ,EAAMG,SAAW8P,EAGnB,OAAOZ,GAsGP7Q,EAAAqC,UAAAqP,aAAA,SAAc5Q,GAEd,IADA,IAAMH,EAAO,GACJH,EAAI,EAAGA,EAAIM,EAAQL,OAAQD,IAClCG,EAAKH,GAAKM,EAAQN,GAEpB,OAAOG,EAAKE,KAAK,KAUjBb,EAAAqC,UAAAsP,eAAA,SAAgBC,GAChB,IAAM9Q,EAA4B,GAClC,IAAK8Q,EACH,OAAO9Q,EAKT,IAHA,IAAMH,EAAOiR,EAAS7D,MAAM,MACxB8D,EAAc,EACZC,EAAc,uCACbD,EAAclR,EAAKF,QAAQ,CAChC,IAAMsR,EAAIpR,EAAKkR,GAAaxG,MAAMyG,GAClC,IAAKC,EACH,MAAM,IAAI9O,MAAM,yBAA2BtC,EAAKkR,IAElD,IAAMrQ,EAAQ,IAAIC,EAyBlB,IAxBAX,EAAQc,KAAKJ,GACbA,EAAMH,OAAS+M,SAAS2D,EAAE,GAAI,IACjB,KAATA,EAAE,IACJvQ,EAAMH,SACNG,EAAMN,QAAU,GACC,KAAR6Q,EAAE,GACXvQ,EAAMN,QAAU,GAEhBM,EAAMH,SACNG,EAAMN,QAAUkN,SAAS2D,EAAE,GAAI,KAGjCvQ,EAAMF,OAAS8M,SAAS2D,EAAE,GAAI,IACjB,KAATA,EAAE,IACJvQ,EAAMF,SACNE,EAAMG,QAAU,GACC,KAARoQ,EAAE,GACXvQ,EAAMG,QAAU,GAEhBH,EAAMF,SACNE,EAAMG,QAAUyM,SAAS2D,EAAE,GAAI,KAEjCF,IAEOA,EAAclR,EAAKF,QAAQ,CAChC,IAAMuR,EAAOrR,EAAKkR,GAAa7K,OAAO,GAClCkB,OAAI,EACR,IACEA,EAAO+F,UAAUtN,EAAKkR,GAAa5P,UAAU,IAC7C,MAAOiM,GAEP,MAAM,IAAIjL,MAAM,qCAAuCiF,GAEzD,GAAY,KAAR8J,EAEFxQ,EAAMtB,MAAM0B,KAAK,EAAA,EAAgBsG,SAC5B,GAAY,KAAR8J,EAETxQ,EAAMtB,MAAM0B,KAAK,CAAA,EAAgBsG,SAC5B,GAAY,KAAR8J,EAETxQ,EAAMtB,MAAM0B,KAAK,CAAA,EAAesG,QAC3B,CAAA,GAAY,KAAR8J,EAET,MACK,GAAa,KAATA,EAIT,MAAM,IAAI/O,MAAM,uBAAyB+O,EAAO,SAAW9J,GAE7D2J,KAGJ,OAAO/Q,KA3hEX,GAqiEAW,EAEE,sBAEqB,eACJ,iBACA,kBACC,eACA,gBAOP,WAmBT,IAlBA,IAgBIf,EADEC,EAAO,CAAC,QAdO,IAAjBK,KAAKE,QACGF,KAAKK,OAAS,KACC,GAAhBL,KAAKE,QACJF,KAAKK,OAAS,EAEbL,KAAKK,OAAS,EAAK,IAAML,KAAKE,SASV,MAPZ,IAAjBF,KAAKW,QACGX,KAAKM,OAAS,KACC,GAAhBN,KAAKW,QACJX,KAAKM,OAAS,EAEbN,KAAKM,OAAS,EAAK,IAAMN,KAAKW,SAEO,SAGzCnB,EAAI,EAAGA,EAAIQ,KAAKd,MAAMO,OAAQD,IAAK,CAC1C,OAAQQ,KAAKd,MAAMM,GAAG,IACpB,KAAA,EACEE,EAAK,IACL,MACF,KAAA,EACEA,EAAK,IACL,MACF,KAAA,EACEA,EAAK,IAGTC,EAAKH,EAAI,GAAKE,EAAKiN,UAAU3M,KAAKd,MAAMM,GAAG,IAAM,KAEnD,OAAOG,EAAKE,KAAK,IAAID,QAAQ,OAAQ,OCjmEzCqR,EAAA,WAME,SAAAA,EAAoB1I,GAAAvI,KAAAuI,IAAAA,SAEpB0I,EAAA5P,UAAA6P,SAAA,aAIAD,EAAA5P,UAAA8P,QAAA,SAAQC,EAAcC,GACnB,OAAOrR,KAAKuI,IAAIjH,UAAU8P,EAAMC,IAGnCJ,EAAA5P,UAAAiQ,gBAAA,SAAgBF,EAAcC,GAC5B,IAAMnS,EAAQc,KAAKuI,IAAIjH,UAAU8P,EAAMC,GAEvC,OADArR,KAAKuI,IAAIrE,qBAAqBhF,GACvBA,GAGT+R,EAAA5P,UAAAkQ,kBAAA,SAAkBH,EAAcC,GAC9B,IAAMnS,EAAQc,KAAKuI,IAAIjH,UAAU8P,EAAMC,GAEvC,OADArR,KAAKuI,IAAIoD,uBAAuBzM,GACzBA,GAGT+R,EAAA5P,UAAAmQ,YAAA,SAAYJ,EAAcC,GACxB,IAAMvK,EAAQ9G,KAAKuI,IAAI3E,mBAAmBwN,EAAMC,GAC1CnS,EAAQc,KAAKuI,IAAIjH,UAAUwF,EAAMjD,OAAQiD,EAAMhD,QAAQ,GAE7D,OADA9D,KAAKuI,IAAItE,mBAAmB/E,EAAO4H,EAAM9C,WAClC9E,GAGT+R,EAAA5P,UAAAoQ,OAAA,WACE,OAAOzR,KAAKuI,yBAjCfmJ,EAAAA,sDAFQ1S,OADT,GCcA,SAAA2S,EA4FyBC,GACrB,IAAIb,EAAsB,mBAAXc,QAAyBD,EAAEC,OAAOC,UAAWjP,EAAI,EAChE,OAAIkO,EAAUA,EAAEgB,KAAKH,GACd,CACHI,KAAM,WAEF,OADIJ,GAAK/O,GAAK+O,EAAEnS,SAAQmS,OAAI,GACrB,CAAEK,MAAOL,GAAKA,EAAE/O,KAAMqP,MAAON,iCCgBlCrJ,GAAAvI,KAAAuI,IAAAA,SAEL4J,EAAA9Q,UAAA6P,oBACLlR,KAAKoS,cAGAD,EAAA9Q,UAAAgR,uBACLrS,KAAKoS,cAGCD,EAAA9Q,UAAA+Q,sBACmB,iBAAdpS,KAAKoR,MAA0C,kBAAdpR,KAAKoR,OAC/CpR,KAAKoR,KAAOpR,KAAKoR,KAAKkB,YAEE,iBAAftS,KAAKqR,OAA4C,kBAAfrR,KAAKqR,QAChDrR,KAAKqR,MAAQrR,KAAKqR,MAAMiB,YAE1BtS,KAAKuS,kBAAkBvS,KAAKuI,IAAIiJ,YAAYxR,KAAKoR,KAAMpR,KAAKqR,SAGtDc,EAAA9Q,UAAAkR,2BAAkBrT,GACxB,IAAMsT,EAAmC,CACvCC,MAAO,GACPC,SAAU,EACVC,UAAW,GAIb,GADA3S,KAAK4S,eAAkC,IAAjB1T,EAAMO,QAA2B,IAAXP,EAAM,GAAG,GACjDc,KAAK4S,eACP5S,KAAK6S,eAAiB,OADxB,CAKA,IAAK,IAAIhQ,EAAI,EAAGA,EAAI3D,EAAMO,OAAQoD,IAAK,CACrC,IAAMiQ,EAAO5T,EAAM2D,GACfkQ,EAAsBD,EAAK,GAAG/F,MAAM,SAQxC,OAJ8C,GAA1CgG,EAAUA,EAAUtT,OAAS,GAAGA,QAClCsT,EAAUrO,MAGJoO,EAAK,IACX,KAAA,EACE,IAAME,EAAoB,IAANnQ,EACdoQ,EAAapQ,IAAM3D,EAAMO,OAAS,EACxCO,KAAKkT,gBAAgBH,EAAWP,EAAiBQ,EAAaC,GAC9D,MAEF,KAAA,EACEjT,KAAKmT,iBAAiBJ,EAAWP,GACjC,MAEF,KAAA,EACExS,KAAKoT,iBAAiBL,EAAWP,IAMvCxS,KAAK6S,eAAiBL,EAAgBC,QAiBhCN,EAAA9Q,UAAA6R,yBACJH,EACAP,EACAQ,EACAC,GACF,GAAIjT,KAAKqT,iBAAmBN,EAAUtT,OAASO,KAAKqT,gBAClD,GAAIL,EAAa,CAEf,IAAMM,EAAgBP,EAAUtT,OAASO,KAAKqT,gBAC9Cb,EAAgBE,UAAYY,EAC5Bd,EAAgBG,WAAaW,EAC7BP,EAAYA,EAAUQ,MAAMR,EAAUtT,OAASO,KAAKqT,gBAAiBN,EAAUtT,aAE5E,GAAIwT,EAEPF,EAAYA,EAAUQ,MAAM,EAAGvT,KAAKqT,sBAEjC,GAAIN,EAAUtT,OAAS,EAAIO,KAAKqT,gBAAiB,CAEpDrT,KAAKwT,qBAAqBT,EAAUQ,MAAM,EAAGvT,KAAKqT,iBAAkBb,GAGpEA,EAAgBC,MAAM7R,KAAK,CAAC,yBAA0B,MAAO,MAAO,QACpE,IAAM6S,EAAuBV,EAAUtT,OAAU,EAAIO,KAAKqT,gBAQ1D,OAPAb,EAAgBE,UAAYe,EAC5BjB,EAAgBG,WAAac,OAG7BzT,KAAKwT,qBAAqBT,EAAUQ,MAAMR,EAAUtT,OAASO,KAAKqT,iBAAkBb,GAMxFxS,KAAKwT,qBAAqBT,EAAWP,IAG/BL,EAAA9Q,UAAAmS,8BACJT,EACAP,OACF,IAAmB,IAAAkB,EAAAC,EAAAZ,GAASa,EAAAF,EAAA1B,QAAA4B,EAAA1B,KAAA0B,EAAAF,EAAA1B,OAAA,CAAvB,IAAM9K,EAAI0M,EAAA3B,MACbO,EAAgBC,MAAM7R,KAAK,CAAC,yBAA0B,GAAG4R,EAAgBE,SAAY,GAAGF,EAAgBG,UAAazL,IACrHsL,EAAgBE,WAChBF,EAAgBG,0HAIZR,EAAA9Q,UAAA8R,0BACJJ,EACAP,OACF,IAAmB,IAAAqB,EAAAF,EAAAZ,GAASe,EAAAD,EAAA7B,QAAA8B,EAAA5B,KAAA4B,EAAAD,EAAA7B,OAAA,CAAvB,IAAM9K,EAAI4M,EAAA7B,MACbO,EAAgBC,MAAM7R,KAAK,CAAC,0BAA2B,GAAG4R,EAAgBE,SAAY,IAAKxL,IAC3FsL,EAAgBE,yHAIZP,EAAA9Q,UAAA+R,0BACJL,EACAP,OACF,IAAmB,IAAAuB,EAAAJ,EAAAZ,GAASiB,EAAAD,EAAA/B,QAAAgC,EAAA9B,KAAA8B,EAAAD,EAAA/B,OAAA,CAAvB,IAAM9K,EAAI8M,EAAA/B,MACbO,EAAgBC,MAAM7R,KAAK,CAAC,0BAA2B,IAAK,GAAG4R,EAAgBG,UAAazL,IAC5FsL,EAAgBG,8IA5PrBsB,EAAAA,UAASC,KAAA,CAAC,CACTC,SAAU,mBACVC,OAAQ,CAAC,67DA2ETC,SAAU,46BA1FHpD,mCAiHNqD,EAAAA,qBAEAA,EAAAA,+BAIAA,EAAAA,sCC5GSC,EACAhM,GADAvI,KAAAuU,GAAAA,EACAvU,KAAAuI,IAAAA,SAEHiM,EAAAnT,UAAA6P,oBACLlR,KAAKoS,cAGAoC,EAAAnT,UAAAgR,uBACLrS,KAAKoS,cAGCoC,EAAAnT,UAAA+Q,sBACNpS,KAAKuU,GAAGE,cAAcC,UAAY1U,KAAK2U,WACrC3U,KAAKuI,IAAI4I,QAAQnR,KAAKoR,KAAMpR,KAAKqR,SAG7BmD,EAAAnT,UAAAsT,oBAAWzV,GACjB,IAAIC,MACJA,EAAO,YACP,IAAgB,IAAAyV,EAAAjB,EAAAzU,GAAK2V,EAAAD,EAAA5C,QAAA6C,EAAA3C,KAAA2C,EAAAD,EAAA5C,OAAA,CAAjB,IAAIc,EAAI+B,EAAA5C,MACVa,EAAK,GAAKA,EAAK,GAAGlT,QAAQ,MAAO,SAEvB,IAAPkT,EAAK,KACN3T,GAAQ,uBAAyB2T,EAAK,GAAK,YAEnC,IAAPA,EAAK,KACN3T,GAAQ,QAAU2T,EAAK,GAAK,UAEpB,IAAPA,EAAK,KACN3T,GAAQ,QAAU2T,EAAK,GAAK,+GAIhC,OADA3T,GAAQ,8BAzCX2V,EAAAA,UAASZ,KAAA,CAAC,CACTC,SAAU,sDALQY,EAAAA,kBACX9D,mCAQNqD,EAAAA,qBACAA,EAAAA,sCCESC,EACAhM,GADAvI,KAAAuU,GAAAA,EACAvU,KAAAuI,IAAAA,SAEHyM,EAAA3T,UAAA6P,oBACLlR,KAAKoS,cAGA4C,EAAA3T,UAAAgR,uBACLrS,KAAKoS,cAGC4C,EAAA3T,UAAA+Q,sBACmB,iBAAdpS,KAAKoR,MAA0C,kBAAdpR,KAAKoR,OAC/CpR,KAAKoR,KAAOpR,KAAKoR,KAAKkB,YAEE,iBAAftS,KAAKqR,OAA4C,kBAAfrR,KAAKqR,QAChDrR,KAAKqR,MAAQrR,KAAKqR,MAAMiB,YAE1BtS,KAAKuU,GAAGE,cAAcC,UAAY1U,KAAK2U,WAAW3U,KAAKuI,IAAIiJ,YAAYxR,KAAKoR,KAAMpR,KAAKqR,SAIjF2D,EAAA3T,UAAAsT,oBAAWzV,GACjB,IAAIC,MACJA,EAAO,YACP,IAAiB,IAAAyV,EAAAjB,EAAAzU,GAAK2V,EAAAD,EAAA5C,QAAA6C,EAAA3C,KAAA2C,EAAAD,EAAA5C,OAAA,CAAjB,IAAIc,EAAI+B,EAAA5C,MACA,IAAPa,EAAK,KACP3T,GAAQ,uBAAyB2T,EAAK,GAAK,YAElC,IAAPA,EAAK,KACP3T,GAAQ,4BAAgC2T,EAAK,GAAK,kBAEzC,IAAPA,EAAK,KACP3T,GAAQ,4BAAgC2T,EAAK,GAAK,uHAItD,OADA3T,GAAQ,8BA5CX2V,EAAAA,UAASZ,KAAA,CAAC,CACTC,SAAU,0DALQY,EAAAA,kBACX9D,mCAONqD,EAAAA,qBACAA,EAAAA,sCCGSC,EACAhM,GADAvI,KAAAuU,GAAAA,EACAvU,KAAAuI,IAAAA,SAEH0M,EAAA5T,UAAA6P,oBACLlR,KAAKoS,cAGA6C,EAAA5T,UAAAgR,uBACLrS,KAAKoS,cAGC6C,EAAA5T,UAAA+Q,sBACNpS,KAAKuU,GAAGE,cAAcC,UAAY1U,KAAK2U,WACrC3U,KAAKuI,IAAIgJ,kBAAkBvR,KAAKoR,KAAMpR,KAAKqR,SAIvC4D,EAAA5T,UAAAsT,oBAAWzV,GACjB,IAAIC,MACJA,EAAO,YACP,IAAiB,IAAAyV,EAAAjB,EAAAzU,GAAK2V,EAAAD,EAAA5C,QAAA6C,EAAA3C,KAAA2C,EAAAD,EAAA5C,OAAA,CAAjB,IAAIc,EAAI+B,EAAA5C,MACXa,EAAK,GAAKA,EAAK,GAAGlT,QAAQ,MAAO,SAEtB,IAAPkT,EAAK,KACP3T,GAAQ,uBAAyB2T,EAAK,GAAK,YAElC,IAAPA,EAAK,KACP3T,GAAQ,QAAU2T,EAAK,GAAK,UAEnB,IAAPA,EAAK,KACP3T,GAAQ,QAAU2T,EAAK,GAAK,+GAIhC,OADA3T,GAAQ,8BAzCX2V,EAAAA,UAASZ,KAAA,CAAC,CACTC,SAAU,gEALQY,EAAAA,kBACX9D,mCAONqD,EAAAA,qBACAA,EAAAA,sCCGSC,EACAhM,GADAvI,KAAAuU,GAAAA,EACAvU,KAAAuI,IAAAA,SAEH2M,EAAA7T,UAAA6P,oBACLlR,KAAKoS,cAGA8C,EAAA7T,UAAAgR,uBACLrS,KAAKoS,cAGC8C,EAAA7T,UAAA+Q,sBACDpS,KAAKoR,OACRpR,KAAKoR,KAAO,IAETpR,KAAKqR,QACRrR,KAAKqR,MAAQ,IAEU,iBAAdrR,KAAKoR,MAA0C,kBAAdpR,KAAKoR,OAC/CpR,KAAKoR,KAAOpR,KAAKoR,KAAKkB,YAEE,iBAAftS,KAAKqR,OAA4C,kBAAfrR,KAAKqR,QAChDrR,KAAKqR,MAAQrR,KAAKqR,MAAMiB,YAE1BtS,KAAKuU,GAAGE,cAAcC,UAAY1U,KAAK2U,WACrC3U,KAAKuI,IAAI+I,gBAAgBtR,KAAKoR,KAAMpR,KAAKqR,SAIrC6D,EAAA7T,UAAAsT,oBAAWzV,GACjB,IAAIC,MACJA,EAAO,YACP,IAAiB,IAAAyV,EAAAjB,EAAAzU,GAAK2V,EAAAD,EAAA5C,QAAA6C,EAAA3C,KAAA2C,EAAAD,EAAA5C,OAAA,CAAjB,IAAIc,EAAI+B,EAAA5C,MACXa,EAAK,GAAKA,EAAK,GAAGlT,QAAQ,MAAO,SAEtB,IAAPkT,EAAK,KACP3T,GAAQ,uBAAyB2T,EAAK,GAAK,YAElC,IAAPA,EAAK,KACP3T,GAAQ,QAAU2T,EAAK,GAAK,UAEnB,IAAPA,EAAK,KACP3T,GAAQ,QAAU2T,EAAK,GAAK,+GAIhC,OADA3T,GAAQ,8BArDX2V,EAAAA,UAASZ,KAAA,CAAC,CACTC,SAAU,8DALQY,EAAAA,kBACX9D,mCAONqD,EAAAA,qBACAA,EAAAA,cCTHa,EAAA,oDAWCC,EAAAA,SAAQlB,KAAA,CAAC,CACRmB,aAAc,CACZb,EACAQ,EACAC,EACAC,EACA/C,GAEFmD,QAAS,CACPC,EAAAA,cAEFC,QAAS,CACPhB,EACAQ,EACAC,EACAC,EACA/C,GAEFsD,UAAW,CACTzW,EACAiS,SA/BJ","sourcesContent":["export const enum DiffOp {\n Delete = -1,\n Equal = 0,\n Insert = 1\n}\n\nexport type Diff = [DiffOp, string];\n\n/**\n * Class containing the diff, match and patch methods.\n\n */\nclass DiffMatchPatch {\n\n constructor() { }\n\n // Defaults.\n // Redefine these in your program to override the defaults.\n\n // Number of seconds to map a diff before giving up (0 for infinity).\n Diff_Timeout = 1.0;\n // Cost of an empty edit operation in terms of edit characters.\n Diff_EditCost = 4;\n // At what point is no match declared (0.0 = perfection, 1.0 = very loose).\n Match_Threshold = 0.5;\n // How far to search for a match (0 = exact location, 1000+ = broad match).\n // A match this many characters away from the expected location will add\n // 1.0 to the score (0.0 is a perfect match).\n Match_Distance = 1000;\n // When deleting a large block of text (over ~64 characters), how close do\n // the contents have to be to match the expected contents. (0.0 = perfection,\n // 1.0 = very loose). Note that Match_Threshold controls how closely the\n // end points of a delete need to match.\n Patch_DeleteThreshold = 0.5;\n // Chunk size for context length.\n Patch_Margin = 4;\n\n // The number of bits in an int.\n Match_MaxBits = 32;\n /**\n * The data structure representing a diff is an array of tuples:\n * [[DiffOp.Delete, 'Hello'], [DiffOp.Insert, 'Goodbye'], [DiffOp.Equal, ' world.']]\n * which means: delete 'Hello', add 'Goodbye' and keep ' world.'\n */\n\n // Define some regex patterns for matching boundaries.\n whitespaceRegex_ = new RegExp('/\\s/');\n linebreakRegex_ = new RegExp('/[\\r\\n]/');\n blanklineEndRegex_ = new RegExp('/\\n\\r?\\n$/');\n blanklineStartRegex_ = new RegExp('/^\\r?\\n\\r?\\n/');\n\n /**\n * Find the differences between two texts. Simplifies the problem by stripping\n * any common prefix or suffix off the texts before diffing.\n * @param text1 Old string to be diffed.\n * @param text2 New string to be diffed.\n * @param opt_checklines Optional speedup flag. If present and false,\n * then don't run a line-level diff first to identify the changed areas.\n * Defaults to true, which does a faster, slightly less optimal diff.\n * @param opt_deadline Optional time when the diff should be complete\n * by. Used internally for recursive calls. Users should set DiffTimeout\n * instead.\n * @return Array of diff tuples.\n */\n diff_main (text1: string, text2: string, opt_checklines?: boolean, opt_deadline?: number): Array<Diff> {\n // Set a deadline by which time the diff must be complete.\n if (typeof opt_deadline == 'undefined') {\n if (this.Diff_Timeout <= 0) {\n opt_deadline = Number.MAX_VALUE;\n } else {\n opt_deadline = (new Date).getTime() + this.Diff_Timeout * 1000;\n }\n }\n const deadline = opt_deadline;\n\n // Check for null inputs.\n if (text1 == null || text2 == null) {\n throw new Error('Null input. (diff_main)');\n }\n\n // Check for equality (speedup).\n if (text1 == text2) {\n if (text1) {\n return [[DiffOp.Equal, text1]];\n }\n return [];\n }\n\n if (typeof opt_checklines == 'undefined') {\n opt_checklines = true;\n }\n const checklines = opt_checklines;\n\n // Trim off common prefix (speedup).\n let commonlength = this.diff_commonPrefix(text1, text2);\n const commonprefix = text1.substring(0, commonlength);\n text1 = text1.substring(commonlength);\n text2 = text2.substring(commonlength);\n\n // Trim off common suffix (speedup).\n commonlength = this.diff_commonSuffix(text1, text2);\n const commonsuffix = text1.substring(text1.length - commonlength);\n text1 = text1.substring(0, text1.length - commonlength);\n text2 = text2.substring(0, text2.length - commonlength);\n\n // Compute the diff on the middle block.\n const diffs = this.diff_compute_(text1, text2, checklines, deadline);\n\n // Restore the prefix and suffix.\n if (commonprefix) {\n diffs.unshift([DiffOp.Equal, commonprefix]);\n }\n if (commonsuffix) {\n diffs.push([DiffOp.Equal, commonsuffix]);\n }\n this.diff_cleanupMerge(diffs);\n return diffs;\n };\n\n\n /**\n * Find the differences between two texts. Assumes that the texts do not\n * have any common prefix or suffix.\n * @param text1 Old string to be diffed.\n * @param text2 New string to be diffed.\n * @param checklines Speedup flag. If false, then don't run a\n * line-level diff first to identify the changed areas.\n * If true, then run a faster, slightly less optimal diff.\n * @param deadline Time when the diff should be complete by.\n * @return Array of diff tuples.\n\n */\n diff_compute_ (text1: string, text2: string, checklines: boolean,\n deadline: number): Array<Diff> {\n let diffs: Array<Diff>;\n\n if (!text1) {\n // Just add some text (speedup).\n return [[DiffOp.Insert, text2]];\n }\n\n if (!text2) {\n // Just delete some text (speedup).\n return [[DiffOp.Delete, text1]];\n }\n\n const longtext = text1.length > text2.length ? text1 : text2;\n const shorttext = text1.length > text2.length ? text2 : text1;\n const i = longtext.indexOf(shorttext);\n if (i != -1) {\n // Shorter text is inside the longer text (speedup).\n diffs = [[DiffOp.Insert, longtext.substring(0, i)],\n [DiffOp.Equal, shorttext],\n [DiffOp.Insert, longtext.substring(i + shorttext.length)]];\n // Swap insertions for deletions if diff is reversed.\n if (text1.length > text2.length) {\n diffs[0][0] = diffs[2][0] = DiffOp.Delete;\n }\n return diffs;\n }\n\n if (shorttext.length == 1) {\n // Single character string.\n // After the previous speedup, the character can't be an equality.\n return [[DiffOp.Delete, text1], [DiffOp.Insert, text2]];\n }\n\n // Check to see if the problem can be split in two.\n const hm = this.diff_halfMatch_(text1, text2);\n if (hm) {\n // A half-match was found, sort out the return data.\n const text1_a = hm[0];\n const text1_b = hm[1];\n const text2_a = hm[2];\n const text2_b = hm[3];\n const mid_common = hm[4];\n // Send both pairs off for separate processing.\n const diffs_a = this.diff_main(text1_a, text2_a, checklines, deadline);\n const diffs_b = this.diff_main(text1_b, text2_b, checklines, deadline);\n // Merge the results.\n return diffs_a.concat([[DiffOp.Equal, mid_common]], diffs_b);\n }\n\n if (checklines && text1.length > 100 && text2.length > 100) {\n return this.diff_lineMode_(text1, text2, deadline);\n }\n\n return this.diff_bisect_(text1, text2, deadline);\n };\n\n\n /**\n * Do a quick line-level diff on both strings, then rediff the parts for\n * greater accuracy.\n * This speedup can produce non-minimal diffs.\n * @param text1 Old string to be diffed.\n * @param text2 New string to be diffed.\n * @param deadline Time when the diff should be complete by.\n * @return Array of diff tuples.\n\n */\n diff_lineMode_ (text1: string, text2: string, deadline: number) {\n // Scan the text on a line-by-line basis first.\n const a = this.diff_linesToChars_(text1, text2);\n text1 = a.chars1;\n text2 = a.chars2;\n const linearray = a.lineArray;\n\n const diffs = this.diff_main(text1, text2, false, deadline);\n\n // Convert the diff back to original text.\n this.diff_charsToLines_(diffs, linearray);\n // Eliminate freak matches (e.g. blank lines)\n this.diff_cleanupSemantic(diffs);\n\n // Rediff any replacement blocks, this time character-by-character.\n // Add a dummy entry at the end.\n diffs.push([DiffOp.Equal, '']);\n let pointer = 0;\n let count_delete = 0;\n let count_insert = 0;\n let text_delete = '';\n let text_insert = '';\n while (pointer < diffs.length) {\n switch (diffs[pointer][0]) {\n case DiffOp.Insert:\n count_insert++;\n text_insert += diffs[pointer][1];\n break;\n case DiffOp.Delete:\n count_delete++;\n text_delete += diffs[pointer][1];\n break;\n case DiffOp.Equal:\n // Upon reaching an equality, check for prior redundancies.\n if (count_delete >= 1 && count_insert >= 1) {\n // Delete the offending records and add the merged ones.\n diffs.splice(pointer - count_delete - count_insert,\n count_delete + count_insert);\n pointer = pointer - count_delete - count_insert;\n const b = this.diff_main(text_delete, text_insert, false, deadline);\n for (let j = b.length - 1; j >= 0; j--) {\n diffs.splice(pointer, 0, b[j]);\n }\n pointer = pointer + b.length;\n }\n count_insert = 0;\n count_delete = 0;\n text_delete = '';\n text_insert = '';\n break;\n }\n pointer++;\n }\n diffs.pop(); // Remove the dummy entry at the end.\n\n return diffs;\n };\n\n\n /**\n * Find the 'middle snake' of a diff, split the problem in two\n * and return the recursively constructed diff.\n * See Myers 1986 paper: An O(ND) Difference Algorithm and Its constiations.\n * @param text1 Old string to be diffed.\n * @param text2 New string to be diffed.\n * @param deadline Time at which to bail if not yet complete.\n * @return Array of diff tuples.\n\n */\n diff_bisect_ (text1: string, text2: string, deadline: number): Array<Diff> {\n // Cache the text lengths to prevent multiple calls.\n const text1_length = text1.length;\n const text2_length = text2.length;\n const max_d = Math.ceil((text1_length + text2_length) / 2);\n const v_offset = max_d;\n const v_length = 2 * max_d;\n const v1 = new Array(v_length);\n const v2 = new Array(v_length);\n // Setting all elements to -1 is faster in Chrome & Firefox than mixing\n // integers and undefined.\n for (let x = 0; x < v_length; x++) {\n v1[x] = -1;\n v2[x] = -1;\n }\n v1[v_offset + 1] = 0;\n v2[v_offset + 1] = 0;\n const delta = text1_length - text