w-flowchart 1.0.6 → 1.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"w-flowchart.umd.js","sources":["../node_modules/lodash-es/isArray.js","../node_modules/lodash-es/_freeGlobal.js","../node_modules/lodash-es/_root.js","../node_modules/lodash-es/_Symbol.js","../node_modules/lodash-es/_getRawTag.js","../node_modules/lodash-es/_objectToString.js","../node_modules/lodash-es/_baseGetTag.js","../node_modules/lodash-es/isObjectLike.js","../node_modules/lodash-es/isSymbol.js","../node_modules/lodash-es/_isKey.js","../node_modules/lodash-es/isObject.js","../node_modules/lodash-es/isFunction.js","../node_modules/lodash-es/_coreJsData.js","../node_modules/lodash-es/_isMasked.js","../node_modules/lodash-es/_toSource.js","../node_modules/lodash-es/_baseIsNative.js","../node_modules/lodash-es/_getNative.js","../node_modules/lodash-es/_getValue.js","../node_modules/lodash-es/_nativeCreate.js","../node_modules/lodash-es/_hashGet.js","../node_modules/lodash-es/_hashHas.js","../node_modules/lodash-es/_Hash.js","../node_modules/lodash-es/eq.js","../node_modules/lodash-es/_assocIndexOf.js","../node_modules/lodash-es/_hashClear.js","../node_modules/lodash-es/_hashDelete.js","../node_modules/lodash-es/_hashSet.js","../node_modules/lodash-es/_listCacheDelete.js","../node_modules/lodash-es/_ListCache.js","../node_modules/lodash-es/_listCacheClear.js","../node_modules/lodash-es/_listCacheGet.js","../node_modules/lodash-es/_listCacheHas.js","../node_modules/lodash-es/_listCacheSet.js","../node_modules/lodash-es/_Map.js","../node_modules/lodash-es/_getMapData.js","../node_modules/lodash-es/_isKeyable.js","../node_modules/lodash-es/_MapCache.js","../node_modules/lodash-es/_mapCacheClear.js","../node_modules/lodash-es/_mapCacheDelete.js","../node_modules/lodash-es/_mapCacheGet.js","../node_modules/lodash-es/_mapCacheHas.js","../node_modules/lodash-es/_mapCacheSet.js","../node_modules/lodash-es/memoize.js","../node_modules/lodash-es/_stringToPath.js","../node_modules/lodash-es/_memoizeCapped.js","../node_modules/lodash-es/_baseToString.js","../node_modules/lodash-es/_arrayMap.js","../node_modules/lodash-es/_castPath.js","../node_modules/lodash-es/toString.js","../node_modules/lodash-es/_toKey.js","../node_modules/lodash-es/get.js","../node_modules/lodash-es/_baseGet.js","../node_modules/lodash-es/_Stack.js","../node_modules/lodash-es/_stackClear.js","../node_modules/lodash-es/_stackDelete.js","../node_modules/lodash-es/_stackGet.js","../node_modules/lodash-es/_stackHas.js","../node_modules/lodash-es/_stackSet.js","../node_modules/lodash-es/_defineProperty.js","../node_modules/lodash-es/_baseAssignValue.js","../node_modules/lodash-es/_assignValue.js","../node_modules/lodash-es/_copyObject.js","../node_modules/lodash-es/_baseIsArguments.js","../node_modules/lodash-es/isArguments.js","../node_modules/lodash-es/isBuffer.js","../node_modules/lodash-es/stubFalse.js","../node_modules/lodash-es/_isIndex.js","../node_modules/lodash-es/isLength.js","../node_modules/lodash-es/_baseIsTypedArray.js","../node_modules/lodash-es/_baseUnary.js","../node_modules/lodash-es/_nodeUtil.js","../node_modules/lodash-es/isTypedArray.js","../node_modules/lodash-es/_arrayLikeKeys.js","../node_modules/lodash-es/_baseTimes.js","../node_modules/lodash-es/_isPrototype.js","../node_modules/lodash-es/_overArg.js","../node_modules/lodash-es/_nativeKeys.js","../node_modules/lodash-es/_baseKeys.js","../node_modules/lodash-es/isArrayLike.js","../node_modules/lodash-es/keys.js","../node_modules/lodash-es/_baseKeysIn.js","../node_modules/lodash-es/_nativeKeysIn.js","../node_modules/lodash-es/keysIn.js","../node_modules/lodash-es/_cloneBuffer.js","../node_modules/lodash-es/stubArray.js","../node_modules/lodash-es/_getSymbols.js","../node_modules/lodash-es/_arrayFilter.js","../node_modules/lodash-es/_arrayPush.js","../node_modules/lodash-es/_getPrototype.js","../node_modules/lodash-es/_getSymbolsIn.js","../node_modules/lodash-es/_baseGetAllKeys.js","../node_modules/lodash-es/_getAllKeys.js","../node_modules/lodash-es/_getAllKeysIn.js","../node_modules/lodash-es/_DataView.js","../node_modules/lodash-es/_Promise.js","../node_modules/lodash-es/_Set.js","../node_modules/lodash-es/_WeakMap.js","../node_modules/lodash-es/_getTag.js","../node_modules/lodash-es/_initCloneArray.js","../node_modules/lodash-es/_Uint8Array.js","../node_modules/lodash-es/_cloneArrayBuffer.js","../node_modules/lodash-es/_cloneRegExp.js","../node_modules/lodash-es/_cloneSymbol.js","../node_modules/lodash-es/_initCloneByTag.js","../node_modules/lodash-es/_cloneDataView.js","../node_modules/lodash-es/_cloneTypedArray.js","../node_modules/lodash-es/_baseCreate.js","../node_modules/lodash-es/isMap.js","../node_modules/lodash-es/_baseIsMap.js","../node_modules/lodash-es/isSet.js","../node_modules/lodash-es/_baseIsSet.js","../node_modules/lodash-es/_baseClone.js","../node_modules/lodash-es/_copyArray.js","../node_modules/lodash-es/_initCloneObject.js","../node_modules/lodash-es/_copySymbolsIn.js","../node_modules/lodash-es/_baseAssignIn.js","../node_modules/lodash-es/_copySymbols.js","../node_modules/lodash-es/_baseAssign.js","../node_modules/lodash-es/_arrayEach.js","../node_modules/wsemi/src/isstr.mjs","../node_modules/wsemi/src/isestr.mjs","../node_modules/wsemi/src/isobj.mjs","../node_modules/wsemi/src/isarr.mjs","../node_modules/wsemi/src/iser.mjs","../node_modules/wsemi/src/isundefined.mjs","../node_modules/wsemi/src/isnull.mjs","../node_modules/wsemi/src/isobj0.mjs","../node_modules/wsemi/src/isstr0.mjs","../node_modules/wsemi/src/isarr0.mjs","../node_modules/wsemi/src/isnan.mjs","../src/WFlowchart.mjs","../src/common/palette.mjs","../src/common/cdn.mjs","../src/p1/gen.mjs","../src/p2/gen.mjs","../src/p3/gen.mjs","../src/p4/gen.mjs","../src/p5/gen.mjs","../src/p6/gen.mjs","../src/p7/gen.mjs","../src/p8/gen.mjs","../src/p9/gen.mjs","../src/p10/gen.mjs","../node_modules/wsemi/src/iseobj.mjs","../node_modules/wsemi/src/isearr.mjs","../src/common/derive.mjs","../node_modules/lodash-es/cloneDeep.js"],"sourcesContent":null,"names":["isArray$1","Array","isArray","freeGlobal$1","global","Object","freeSelf","self","root$1","freeGlobal","Function","Symbol$1","root","Symbol","objectProto","prototype","hasOwnProperty","nativeObjectToString","toString","symToStringTag","toStringTag","undefined","baseGetTag","value","isOwn","call","tag","unmasked","e","result","getRawTag","objectToString","isObjectLike","isSymbol","reIsDeepProp","reIsPlainProp","isObject","type","isFunction","uid","coreJsData$1","maskSrcKey","exec","coreJsData","keys","IE_PROTO","funcToString","toSource","func","reIsHostCtor","funcProto","reIsNative","RegExp","replace","baseIsNative","test","getNative","object","key","getValue","nativeCreate$1","Hash","entries","index","length","this","clear","entry","set","eq","other","assocIndexOf","array","__data__","nativeCreate","size","has","get","data","splice","ListCache","pop","push","Map$1","getMapData","map","MapCache","hash","Map","string","memoize","resolver","TypeError","memoized","args","arguments","apply","cache","Cache","rePropName","reEscapeChar","stringToPath","charCodeAt","match","number","quote","subString","stringToPath$1","symbolProto","symbolToString","baseToString","iteratee","arrayMap","castPath","isKey","toKey","path","defaultValue","baseGet","Stack","pairs","LARGE_ARRAY_SIZE","defineProperty","defineProperty$1","baseAssignValue","configurable","enumerable","writable","assignValue","objValue","copyObject","source","props","customizer","isNew","newValue","baseIsArguments","propertyIsEnumerable","isArguments","isArguments$1","freeExports","exports","nodeType","freeModule","module","Buffer","isBuffer$1","isBuffer","reIsUint","isIndex","isLength","typedArrayTags","baseUnary","freeProcess","process","nodeUtil$1","types","require","binding","nodeIsTypedArray","nodeUtil","isTypedArray","isTypedArray$1","arrayLikeKeys","inherited","isArr","isArg","isBuff","isType","skipIndexes","n","baseTimes","String","isPrototype","Ctor","constructor","overArg","transform","arg","nativeKeys$1","isArrayLike","nativeKeys","baseKeys","baseKeysIn","nativeKeysIn","isProto","keysIn","allocUnsafe","stubArray","nativeGetSymbols","getOwnPropertySymbols","getSymbols","predicate","resIndex","arrayFilter","symbol","getSymbols$1","arrayPush","values","offset","getPrototype$1","getPrototypeOf","getSymbolsIn","getPrototype","getSymbolsIn$1","baseGetAllKeys","keysFunc","symbolsFunc","getAllKeys","getAllKeysIn","DataView$1","Promise$2","Set$2","WeakMap$1","mapTag","promiseTag","setTag","weakMapTag","dataViewTag","dataViewCtorString","DataView","mapCtorString","promiseCtorString","Promise","setCtorString","Set","weakMapCtorString","WeakMap","getTag","ArrayBuffer","resolve","ctorString","getTag$1","Uint8Array$1","Uint8Array","cloneArrayBuffer","arrayBuffer","byteLength","reFlags","symbolValueOf","valueOf","initCloneByTag","isDeep","dataView","buffer","byteOffset","cloneDataView","typedArray","cloneTypedArray","regexp","lastIndex","cloneRegExp","objectCreate","create","baseCreate","proto","baseCreate$1","nodeIsMap","isMap","isMap$1","nodeIsSet","isSet","isSet$1","argsTag","funcTag","objectTag","cloneableTags","baseClone","bitmask","stack","isFlat","isFull","input","initCloneArray","copyArray","isFunc","slice","copy","cloneBuffer","initCloneObject","copySymbolsIn","baseAssignIn","copySymbols","baseAssign","stacked","forEach","subValue","add","arrayEach","isstr","v","isestr","isobj","isarr","iser","isundefined","isnull","k","isobj0","isstr0","isarr0","isnan","LOADERS","p1","then","gen$9","p2","gen$8","p3","gen$7","p4","gen$6","p5","gen$5","p6","gen$4","p7","gen$3","p8","gen$2","p9","gen$1","p10","gen","SVG_MODES","PALETTE","blue","fill","stroke","text","shape","green","orange","purple","red","done","diamond","blueG","group","blueG2","greenG","greenG2","orangeG","purpleG","EDGE","line","textBg","haloColor","haloWidth","FONT","isGroupCls","cls","colorOf","PKG","mermaid10","graphre","nomnoml","cytoscape","g6","joint","logicflow","react","xyflow","dagre","elkjs","cdnUrl","rel","Error","cdnScript","cdnStyle","_textCache","nl","s","nodeShape","nd","qid","id","label","translate","dir","nodes","edges","used","qidMap","base","q","byId","filter","clsSet","classDefLines","p","clsToIds","classLines","ids","join","topGroupIds","standaloneNodes","renderSubgraph","gid","indent","g","lines","directChildren","nestedGroups","ng","edgeLines","ed","arrow","kind","lbl","from","to","async","renderFigPage","code","browser","chromium","launch","page","newPage","deviceScaleFactor","setContent","JSON","stringify","mermaidHtml","waitUntil","waitForFunction","document","title","timeout","msg","evaluate","el","getElementById","innerText","fonts","ready","err","close","opt","locator","screenshot","querySelector","vb","viewBox","baseVal","style","maxWidth","setAttribute","Math","ceil","width","height","innerHTML","trim","innerDir","childrenOf","nodeById","topNodes","renderNode","sp","repeat","kids","cid","clsByNodes","fillColor","strokeColor","textColor","sw","setup","window","__ready","__setupErr","catch","setupErr","r","c","idx","renderFig","ok","waitForTimeout","css","querySelectorAll","textContent","st","createElementNS","insertBefore","firstChild","out","remove","clsAlias","toLowerCase","clsDirs","buildClsDirectives","nlSp","nodeLabel","fromRef","toRef","src","fx","sweep","best","x","renderAndDetect","split","collisions","spacing","details","autofix","toEls","els","parent","classes","target","html","renderPage","mode","res","rd","md","m","__svg","__png","b64","svg","FONT_FAMILY","FONT_OVERRIDE","EDGE_HALO_STYLE","esc","DIR_MAP","TB","LR","BT","RL","styLines","isGroup","qualifiedId","nodeId","parentMap","parts","cur","unshift","childrenMap","dataDir","pad","sl","kid","baseOpt","layout","themeID","d2Svg","D2","import","d2inst","d2src","blocks","compile","fs","options","render","diagram","renderOptions","maskBlock","attrs","inner","indexOf","injectEdgeLabelHalo","injectFont","worker","terminate","default","sharp","w","parseFloat","density","min","max","png","toBuffer","measure","round","reduce","a","ch","combos","comboIds","firstLeaf","resolveEnd","combo","zIndex","labelText","labelPlacement","labelFontFamily","labelFontSize","labelFontWeight","labelFill","fillOpacity","lineWidth","isDiamond","h","radius","eid","dashed","endArrow","lineDash","labelBackground","labelStroke","labelLineWidth","labelPaintOrder","labelAutoRotate","htmlSvg","errs","on","message","gg","ns","rs","cv","ft","cz","ez","snap","__readySvg","renderFigSvg","snapSvg","CLS","fromEntries","o","color","ex","SEP","nodesep","ranksep","rankDir","$","outer","$eval","outerHTML","m0","PAL","PAL_JSON","EDGE_JSON","renderToReadyPage","fig","openTagMatch","openTag","logicflowCss","url","fetch","status","cdnFetchText","inject","__dir","dirname","fileURLToPath","_html","readFileSync","boot","t","__err","spec","l","groups","align","mi","font","items","i","parentOf","anc","at","container","find","PAGE_HTML","inp","output","includes","iseobj","d","CLONE_DEEP_FLAG","genSvg","genPng"],"mappings":";;;;;qbAyBAA,EAFcC,MAAMC,QCpBpBC,EAFkC,iBAAVC,QAAsBA,QAAUA,OAAOC,SAAWA,QAAUD,OCEhFE,EAA0B,iBAARC,MAAoBA,MAAQA,KAAKF,SAAWA,QAAUE,KAK5EC,EAFWC,GAAcH,GAAYI,SAAS,cAATA,GCDrCC,EAFaC,EAAKC,OCAdC,EAAcT,OAAOU,UAGrBC,EAAiBF,EAAYE,eAO7BC,EAAuBH,EAAYI,SAGnCC,EAAiBN,EAASA,EAAOO,iBAAcC,ECfnD,IAOIJ,EAPcZ,OAAOU,UAOcG,SCHvC,IAIIC,EAAiBN,EAASA,EAAOO,iBAAcC,EASnD,SAASC,EAAWC,GAClB,OAAa,MAATA,OACeF,IAAVE,EAdQ,qBADL,gBAiBJJ,GAAkBA,KAAkBd,OAAOkB,GFGrD,SAAmBA,GACjB,IAAIC,EAAQR,EAAeS,KAAKF,EAAOJ,GACnCO,EAAMH,EAAMJ,GAEhB,IACEI,EAAMJ,QAAkBE,EACxB,IAAIM,GAAW,CACjB,CAAE,MAAOC,GAAI,CAEb,IAAIC,EAASZ,EAAqBQ,KAAKF,GAQvC,OAPII,IACEH,EACFD,EAAMJ,GAAkBO,SAEjBH,EAAMJ,IAGVU,CACT,CEpBMC,CAAUP,GDNhB,SAAwBA,GACtB,OAAON,EAAqBQ,KAAKF,EACnC,CCKMQ,CAAeR,EACrB,CCDA,SAASS,EAAaT,GACpB,OAAgB,MAATA,GAAiC,iBAATA,CACjC,CCHA,SAASU,EAASV,GAChB,MAAuB,iBAATA,GACXS,EAAaT,IArBF,mBAqBYD,EAAWC,EACvC,CCtBA,IAAIW,EAAe,mDACfC,EAAgB,QCoBpB,SAASC,EAASb,GAChB,IAAIc,SAAcd,EAClB,OAAgB,MAATA,IAA0B,UAARc,GAA4B,YAARA,EAC/C,CCFA,SAASC,EAAWf,GAClB,IAAKa,EAASb,GACZ,OAAO,EAIT,IAAIG,EAAMJ,EAAWC,GACrB,MA5BY,qBA4BLG,GA3BI,8BA2BcA,GA7BZ,0BA6B6BA,GA1B7B,kBA0BgDA,CAC/D,CC/BA,ICCMa,EDCNC,EAFiB5B,EAAK,sBCAlB6B,GACEF,EAAM,SAASG,KAAKC,GAAcA,EAAWC,MAAQD,EAAWC,KAAKC,UAAY,KACvE,iBAAmBN,EAAO,GCJ1C,IAGIO,EAHYpC,SAASK,UAGIG,SAS7B,SAAS6B,EAASC,GAChB,GAAY,MAARA,EAAc,CAChB,IACE,OAAOF,EAAarB,KAAKuB,EAC3B,CAAE,MAAOpB,GAAI,CACb,IACE,OAAQoB,EAAO,EACjB,CAAE,MAAOpB,GAAI,CACf,CACA,MAAO,EACT,CCdA,IAGIqB,EAAe,8BAGfC,EAAYxC,SAASK,UACrBD,EAAcT,OAAOU,UAGrB+B,EAAeI,EAAUhC,SAGzBF,EAAiBF,EAAYE,eAG7BmC,EAAaC,OAAO,IACtBN,EAAarB,KAAKT,GAAgBqC,QAjBjB,sBAiBuC,QACvDA,QAAQ,yDAA0D,SAAW,KAWhF,SAASC,EAAa/B,GACpB,SAAKa,EAASb,KFxBEyB,EEwBiBzB,EFvBxBkB,GAAeA,KAAcO,ME0BxBV,EAAWf,GAAS4B,EAAaF,GAChCM,KAAKR,EAASxB,IF5B/B,IAAkByB,CE6BlB,CCjCA,SAASQ,EAAUC,EAAQC,GACzB,IAAInC,ECJN,SAAkBkC,EAAQC,GACxB,OAAiB,MAAVD,OAAiBpC,EAAYoC,EAAOC,EAC7C,CDEcC,CAASF,EAAQC,GAC7B,OAAOJ,EAAa/B,GAASA,OAAQF,CACvC,CEXA,IAEAuC,EAFmBJ,EAAUnD,OAAQ,UCArC,IAMIW,EAHcX,OAAOU,UAGQC,eCNjC,IAGIA,EAHcX,OAAOU,UAGQC,eCOjC,SAAS6C,EAAKC,GACZ,IAAIC,GAAS,EACTC,EAAoB,MAAXF,EAAkB,EAAIA,EAAQE,OAG3C,IADAC,KAAKC,UACIH,EAAQC,GAAQ,CACvB,IAAIG,EAAQL,EAAQC,GACpBE,KAAKG,IAAID,EAAM,GAAIA,EAAM,GAC3B,CACF,CCUA,SAASE,EAAG9C,EAAO+C,GACjB,OAAO/C,IAAU+C,GAAU/C,GAAUA,GAAS+C,GAAUA,CAC1D,CCxBA,SAASC,EAAaC,EAAOd,GAE3B,IADA,IAAIM,EAASQ,EAAMR,OACZA,KACL,GAAIK,EAAGG,EAAMR,GAAQ,GAAIN,GACvB,OAAOM,EAGX,OAAQ,CACV,CFOAH,EAAK9C,UAAUmD,MGhBf,WACED,KAAKQ,SAAWC,EAAeA,EAAa,MAAQ,CAAA,EACpDT,KAAKU,KAAO,CACd,EHcAd,EAAK9C,UAAkB,OIhBvB,SAAoB2C,GAClB,IAAI7B,EAASoC,KAAKW,IAAIlB,WAAeO,KAAKQ,SAASf,GAEnD,OADAO,KAAKU,MAAQ9C,EAAS,EAAI,EACnBA,CACT,EJaAgC,EAAK9C,UAAU8D,IFPf,SAAiBnB,GACf,IAAIoB,EAAOb,KAAKQ,SAChB,GAAIC,EAAc,CAChB,IAAI7C,EAASiD,EAAKpB,GAClB,MArBiB,8BAqBV7B,OAA4BR,EAAYQ,CACjD,CACA,OAAOb,EAAeS,KAAKqD,EAAMpB,GAAOoB,EAAKpB,QAAOrC,CACtD,EECAwC,EAAK9C,UAAU6D,IDXf,SAAiBlB,GACf,IAAIoB,EAAOb,KAAKQ,SAChB,OAAOC,OAA8BrD,IAAdyD,EAAKpB,GAAsB1C,EAAeS,KAAKqD,EAAMpB,EAC9E,ECSAG,EAAK9C,UAAUqD,IKdf,SAAiBV,EAAKnC,GACpB,IAAIuD,EAAOb,KAAKQ,SAGhB,OAFAR,KAAKU,MAAQV,KAAKW,IAAIlB,GAAO,EAAI,EACjCoB,EAAKpB,GAAQgB,QAA0BrD,IAAVE,EAfV,4BAekDA,EAC9D0C,IACT,ECjBA,IAGIc,EAHa9E,MAAMc,UAGCgE,OCOxB,SAASC,EAAUlB,GACjB,IAAIC,GAAS,EACTC,EAAoB,MAAXF,EAAkB,EAAIA,EAAQE,OAG3C,IADAC,KAAKC,UACIH,EAAQC,GAAQ,CACvB,IAAIG,EAAQL,EAAQC,GACpBE,KAAKG,IAAID,EAAM,GAAIA,EAAM,GAC3B,CACF,CAGAa,EAAUjE,UAAUmD,MClBpB,WACED,KAAKQ,SAAW,GAChBR,KAAKU,KAAO,CACd,EDgBAK,EAAUjE,UAAkB,ODT5B,SAAyB2C,GACvB,IAAIoB,EAAOb,KAAKQ,SACZV,EAAQQ,EAAaO,EAAMpB,GAE/B,QAAIK,EAAQ,KAIRA,GADYe,EAAKd,OAAS,EAE5Bc,EAAKG,MAELF,EAAOtD,KAAKqD,EAAMf,EAAO,KAEzBE,KAAKU,MACA,EACT,ECLAK,EAAUjE,UAAU8D,IEhBpB,SAAsBnB,GACpB,IAAIoB,EAAOb,KAAKQ,SACZV,EAAQQ,EAAaO,EAAMpB,GAE/B,OAAOK,EAAQ,OAAI1C,EAAYyD,EAAKf,GAAO,EAC7C,EFYAiB,EAAUjE,UAAU6D,IGjBpB,SAAsBlB,GACpB,OAAOa,EAAaN,KAAKQ,SAAUf,IAAQ,CAC7C,EHgBAsB,EAAUjE,UAAUqD,IIjBpB,SAAsBV,EAAKnC,GACzB,IAAIuD,EAAOb,KAAKQ,SACZV,EAAQQ,EAAaO,EAAMpB,GAQ/B,OANIK,EAAQ,KACRE,KAAKU,KACPG,EAAKI,KAAK,CAACxB,EAAKnC,KAEhBuD,EAAKf,GAAO,GAAKxC,EAEZ0C,IACT,ECnBA,IAEAkB,EAFU3B,EAAU5C,EAAM,OCM1B,SAASwE,EAAWC,EAAK3B,GACvB,ICJiBnC,EACbc,EDGAyC,EAAOO,EAAIZ,SACf,OCHgB,WADZpC,SADad,EDKAmC,KCHmB,UAARrB,GAA4B,UAARA,GAA4B,WAARA,EACrD,cAAVd,EACU,OAAVA,GDEDuD,EAAmB,iBAAPpB,EAAkB,SAAW,QACzCoB,EAAKO,GACX,CEFA,SAASC,EAASxB,GAChB,IAAIC,GAAS,EACTC,EAAoB,MAAXF,EAAkB,EAAIA,EAAQE,OAG3C,IADAC,KAAKC,UACIH,EAAQC,GAAQ,CACvB,IAAIG,EAAQL,EAAQC,GACpBE,KAAKG,IAAID,EAAM,GAAIA,EAAM,GAC3B,CACF,CAGAmB,EAASvE,UAAUmD,MCdnB,WACED,KAAKU,KAAO,EACZV,KAAKQ,SAAW,CACdc,KAAQ,IAAI1B,EACZwB,IAAO,IAAKG,GAAOR,GACnBS,OAAU,IAAI5B,EAElB,EDQAyB,EAASvE,UAAkB,OEf3B,SAAwB2C,GACtB,IAAI7B,EAASuD,EAAWnB,KAAMP,GAAa,OAAEA,GAE7C,OADAO,KAAKU,MAAQ9C,EAAS,EAAI,EACnBA,CACT,EFYAyD,EAASvE,UAAU8D,IGhBnB,SAAqBnB,GACnB,OAAO0B,EAAWnB,KAAMP,GAAKmB,IAAInB,EACnC,EHeA4B,EAASvE,UAAU6D,IIjBnB,SAAqBlB,GACnB,OAAO0B,EAAWnB,KAAMP,GAAKkB,IAAIlB,EACnC,EJgBA4B,EAASvE,UAAUqD,IKjBnB,SAAqBV,EAAKnC,GACxB,IAAIuD,EAAOM,EAAWnB,KAAMP,GACxBiB,EAAOG,EAAKH,KAIhB,OAFAG,EAAKV,IAAIV,EAAKnC,GACd0C,KAAKU,MAAQG,EAAKH,MAAQA,EAAO,EAAI,EAC9BV,IACT,EC8BA,SAASyB,EAAQ1C,EAAM2C,GACrB,GAAmB,mBAAR3C,GAAmC,MAAZ2C,GAAuC,mBAAZA,EAC3D,MAAM,IAAIC,UAhDQ,uBAkDpB,IAAIC,EAAW,WACb,IAAIC,EAAOC,UACPrC,EAAMiC,EAAWA,EAASK,MAAM/B,KAAM6B,GAAQA,EAAK,GACnDG,EAAQJ,EAASI,MAErB,GAAIA,EAAMrB,IAAIlB,GACZ,OAAOuC,EAAMpB,IAAInB,GAEnB,IAAI7B,EAASmB,EAAKgD,MAAM/B,KAAM6B,GAE9B,OADAD,EAASI,MAAQA,EAAM7B,IAAIV,EAAK7B,IAAWoE,EACpCpE,GAGT,OADAgE,EAASI,MAAQ,IAAKP,EAAQQ,OAASZ,GAChCO,CACT,CAGAH,EAAQQ,MAAQZ,ECnEhB,ICUuBtC,EACjBnB,EAOAoE,EDlBFE,EAAa,mGAGbC,EAAe,WASfC,GCFmBrD,EDEU,SAASyC,GACxC,IAAI5D,EAAS,GAOb,OAN6B,KAAzB4D,EAAOa,WAAW,IACpBzE,EAAOqD,KAAK,IAEdO,EAAOpC,QAAQ8C,EAAY,SAASI,EAAOC,EAAQC,EAAOC,GACxD7E,EAAOqD,KAAKuB,EAAQC,EAAUrD,QAAQ+C,EAAc,MAASI,GAAUD,EACzE,GACO1E,CACT,ECVMA,EAAS6D,EAAQ1C,EAAM,SAASU,GAIlC,OAfmB,MAYfuC,EAAMtB,MACRsB,EAAM/B,QAEDR,CACT,GAEIuC,EAAQpE,EAAOoE,MACZpE,GDIT8E,GAAeN,EEpBf,IAGIO,GAAc/F,EAASA,EAAOE,eAAYM,EAC1CwF,GAAiBD,GAAcA,GAAY1F,cAAWG,EAU1D,SAASyF,GAAavF,GAEpB,GAAoB,iBAATA,EACT,OAAOA,EAET,GAAIrB,EAAQqB,GAEV,OClBJ,SAAkBiD,EAAOuC,GAKvB,IAJA,IAAIhD,GAAS,EACTC,EAAkB,MAATQ,EAAgB,EAAIA,EAAMR,OACnCnC,EAAS5B,MAAM+D,KAEVD,EAAQC,GACfnC,EAAOkC,GAASgD,EAASvC,EAAMT,GAAQA,EAAOS,GAEhD,OAAO3C,CACT,CDSWmF,CAASzF,EAAOuF,IAAgB,GAEzC,GAAI7E,EAASV,GACX,OAAOsF,GAAiBA,GAAepF,KAAKF,GAAS,GAEvD,IAAIM,EAAUN,EAAQ,GACtB,MAAkB,KAAVM,GAAkB,EAAIN,IAAU,IAAa,KAAOM,CAC9D,CErBA,SAASoF,GAAS1F,EAAOkC,GACvB,OAAIvD,EAAQqB,GACHA,EtCAX,SAAeA,EAAOkC,GACpB,GAAIvD,EAAQqB,GACV,OAAO,EAET,IAAIc,SAAcd,EAClB,QAAY,UAARc,GAA4B,UAARA,GAA4B,WAARA,GAC/B,MAATd,IAAiBU,EAASV,KAGvBY,EAAcoB,KAAKhC,KAAWW,EAAaqB,KAAKhC,IAC1C,MAAVkC,GAAkBlC,KAASlB,OAAOoD,EACvC,CsCTSyD,CAAM3F,EAAOkC,GAAU,CAAClC,GAAS8E,GCM1C,SAAkB9E,GAChB,OAAgB,MAATA,EAAgB,GAAKuF,GAAavF,EAC3C,CDRuDL,CAASK,GAChE,CENA,SAAS4F,GAAM5F,GACb,GAAoB,iBAATA,GAAqBU,EAASV,GACvC,OAAOA,EAET,IAAIM,EAAUN,EAAQ,GACtB,MAAkB,KAAVM,GAAkB,EAAIN,IAAU,IAAa,KAAOM,CAC9D,CCSA,SAASgD,GAAIpB,EAAQ2D,EAAMC,GACzB,IAAIxF,EAAmB,MAAV4B,OAAiBpC,ECjBhC,SAAiBoC,EAAQ2D,GAMvB,IAHA,IAAIrD,EAAQ,EACRC,GAHJoD,EAAOH,GAASG,EAAM3D,IAGJO,OAED,MAAVP,GAAkBM,EAAQC,GAC/BP,EAASA,EAAO0D,GAAMC,EAAKrD,OAE7B,OAAQA,GAASA,GAASC,EAAUP,OAASpC,CAC/C,CDO4CiG,CAAQ7D,EAAQ2D,GAC1D,YAAkB/F,IAAXQ,EAAuBwF,EAAexF,CAC/C,CEhBA,SAAS0F,GAAMzD,GACb,IAAIgB,EAAOb,KAAKQ,SAAW,IAAIO,EAAUlB,GACzCG,KAAKU,KAAOG,EAAKH,IACnB,CAGA4C,GAAMxG,UAAUmD,MCXhB,WACED,KAAKQ,SAAW,IAAIO,EACpBf,KAAKU,KAAO,CACd,EDSA4C,GAAMxG,UAAkB,OEZxB,SAAqB2C,GACnB,IAAIoB,EAAOb,KAAKQ,SACZ5C,EAASiD,EAAa,OAAEpB,GAG5B,OADAO,KAAKU,KAAOG,EAAKH,KACV9C,CACT,EFOA0F,GAAMxG,UAAU8D,IGbhB,SAAkBnB,GAChB,OAAOO,KAAKQ,SAASI,IAAInB,EAC3B,EHYA6D,GAAMxG,UAAU6D,IIdhB,SAAkBlB,GAChB,OAAOO,KAAKQ,SAASG,IAAIlB,EAC3B,EJaA6D,GAAMxG,UAAUqD,IKPhB,SAAkBV,EAAKnC,GACrB,IAAIuD,EAAOb,KAAKQ,SAChB,GAAIK,aAAgBE,EAAW,CAC7B,IAAIwC,EAAQ1C,EAAKL,SACjB,IAAKe,GAAQgC,EAAMxD,OAASyD,IAG1B,OAFAD,EAAMtC,KAAK,CAACxB,EAAKnC,IACjB0C,KAAKU,OAASG,EAAKH,KACZV,KAETa,EAAOb,KAAKQ,SAAW,IAAIa,EAASkC,EACtC,CAGA,OAFA1C,EAAKV,IAAIV,EAAKnC,GACd0C,KAAKU,KAAOG,EAAKH,KACVV,IACT,EC7BA,IAAIyD,GAAkB,WACpB,IACE,IAAI1E,EAAOQ,EAAUnD,OAAQ,kBAE7B,OADA2C,EAAK,CAAE,EAAE,GAAI,CAAA,GACNA,CACT,CAAE,MAAOpB,GAAI,CACf,CANsB,GAQtB+F,GAAeD,GCCf,SAASE,GAAgBnE,EAAQC,EAAKnC,GACzB,aAAPmC,GAAsBgE,GACxBA,GAAejE,EAAQC,EAAK,CAC1BmE,cAAgB,EAChBC,YAAc,EACdvG,MAASA,EACTwG,UAAY,IAGdtE,EAAOC,GAAOnC,CAElB,CClBA,IAGIP,GAHcX,OAAOU,UAGQC,eAYjC,SAASgH,GAAYvE,EAAQC,EAAKnC,GAChC,IAAI0G,EAAWxE,EAAOC,GAChB1C,GAAeS,KAAKgC,EAAQC,IAAQW,EAAG4D,EAAU1G,UACxCF,IAAVE,GAAyBmC,KAAOD,IACnCmE,GAAgBnE,EAAQC,EAAKnC,EAEjC,CCZA,SAAS2G,GAAWC,EAAQC,EAAO3E,EAAQ4E,GACzC,IAAIC,GAAS7E,EACbA,IAAWA,EAAS,CAAA,GAKpB,IAHA,IAAIM,GAAS,EACTC,EAASoE,EAAMpE,SAEVD,EAAQC,GAAQ,CACvB,IAAIN,EAAM0E,EAAMrE,GAEZwE,EAAWF,EACXA,EAAW5E,EAAOC,GAAMyE,EAAOzE,GAAMA,EAAKD,EAAQ0E,QAClD9G,OAEaA,IAAbkH,IACFA,EAAWJ,EAAOzE,IAEhB4E,EACFV,GAAgBnE,EAAQC,EAAK6E,GAE7BP,GAAYvE,EAAQC,EAAK6E,EAE7B,CACA,OAAO9E,CACT,CCxBA,SAAS+E,GAAgBjH,GACvB,OAAOS,EAAaT,IAVR,sBAUkBD,EAAWC,EAC3C,CCXA,IAAIT,GAAcT,OAAOU,UAGrBC,GAAiBF,GAAYE,eAG7ByH,GAAuB3H,GAAY2H,qBAoBnCC,GAAcF,GAAgB,WAAa,OAAOzC,SAAW,CAA/B,IAAsCyC,GAAkB,SAASjH,GACjG,OAAOS,EAAaT,IAAUP,GAAeS,KAAKF,EAAO,YACtDkH,GAAqBhH,KAAKF,EAAO,SACtC,EAEAoH,GAAeD,GC/Bf,IAAIE,GAAgC,iBAAXC,SAAuBA,UAAYA,QAAQC,UAAYD,QAG5EE,GAAaH,IAAgC,iBAAVI,QAAsBA,SAAWA,OAAOF,UAAYE,OAMvFC,GAHgBF,IAAcA,GAAWF,UAAYD,GAG5BhI,EAAKqI,YAAS5H,EAwB3C6H,IArBqBD,GAASA,GAAOE,cAAW9H,ICHhD,WACE,OAAO,CACT,ECXI+H,GAAW,mBAUf,SAASC,GAAQ9H,EAAOyC,GACtB,IAAI3B,SAAcd,EAGlB,SAFAyC,EAAmB,MAAVA,EAfY,iBAewBA,KAGlC,UAAR3B,GACU,UAARA,GAAoB+G,GAAS7F,KAAKhC,KAChCA,GAAS,GAAKA,EAAQ,GAAK,GAAKA,EAAQyC,CACjD,CCOA,SAASsF,GAAS/H,GAChB,MAAuB,iBAATA,GACZA,GAAS,GAAKA,EAAQ,GAAK,GAAKA,GA9Bb,gBA+BvB,CC3BA,IA2BIgI,GAAiB,CAAA,ECzBrB,SAASC,GAAUxG,GACjB,OAAO,SAASzB,GACd,OAAOyB,EAAKzB,GAEhB,CDsBAgI,GAZiB,yBAYYA,GAXZ,yBAYjBA,GAXc,sBAWYA,GAVX,uBAWfA,GAVe,uBAUYA,GATZ,uBAUfA,GATsB,8BASYA,GARlB,wBAShBA,GARgB,yBAQY,EAC5BA,GAjCc,sBAiCYA,GAhCX,kBAiCfA,GApBqB,wBAoBYA,GAhCnB,oBAiCdA,GApBkB,qBAoBYA,GAhChB,iBAiCdA,GAhCe,kBAgCYA,GA/Bb,qBAgCdA,GA/Ba,gBA+BYA,GA9BT,mBA+BhBA,GA9BgB,mBA8BYA,GA7BZ,mBA8BhBA,GA7Ba,gBA6BYA,GA5BT,mBA6BhBA,GA5BiB,qBA4BY,EE1C7B,IAAIX,GAAgC,iBAAXC,SAAuBA,UAAYA,QAAQC,UAAYD,QAG5EE,GAAaH,IAAgC,iBAAVI,QAAsBA,SAAWA,OAAOF,UAAYE,OAMvFS,GAHgBV,IAAcA,GAAWF,UAAYD,IAGtBnI,EAAWiJ,QAiB9CC,GAdgB,WACd,IAEE,IAAIC,EAAQb,IAAcA,GAAWc,SAAWd,GAAWc,QAAQ,QAAQD,MAE3E,OAAIA,GAKGH,IAAeA,GAAYK,SAAWL,GAAYK,QAAQ,OACnE,CAAE,MAAOlI,GAAI,CACf,CAZgB,GCVZmI,GAAmBC,IAAYA,GAASC,aAqB5CC,GAFmBH,GAAmBP,GAAUO,IH8BhD,SAA0BxI,GACxB,OAAOS,EAAaT,IAClB+H,GAAS/H,EAAMyC,WAAauF,GAAejI,EAAWC,GAC1D,EI9CIP,GAHcX,OAAOU,UAGQC,eAUjC,SAASmJ,GAAc5I,EAAO6I,GAC5B,IAAIC,EAAQnK,EAAQqB,GAChB+I,GAASD,GAAS3B,GAAYnH,GAC9BgJ,GAAUF,IAAUC,GAASnB,GAAS5H,GACtCiJ,GAAUH,IAAUC,IAAUC,GAAUN,GAAa1I,GACrDkJ,EAAcJ,GAASC,GAASC,GAAUC,EAC1C3I,EAAS4I,EClBf,SAAmBC,EAAG3D,GAIpB,IAHA,IAAIhD,GAAS,EACTlC,EAAS5B,MAAMyK,KAEV3G,EAAQ2G,GACf7I,EAAOkC,GAASgD,EAAShD,GAE3B,OAAOlC,CACT,CDU6B8I,CAAUpJ,EAAMyC,OAAQ4G,QAAU,GACzD5G,EAASnC,EAAOmC,OAEpB,IAAK,IAAIN,KAAOnC,GACT6I,IAAapJ,GAAeS,KAAKF,EAAOmC,IACvC+G,IAEQ,UAAP/G,GAEC6G,IAAkB,UAAP7G,GAA0B,UAAPA,IAE9B8G,IAAkB,UAAP9G,GAA0B,cAAPA,GAA8B,cAAPA,IAEtD2F,GAAQ3F,EAAKM,KAElBnC,EAAOqD,KAAKxB,GAGhB,OAAO7B,CACT,CE7CA,IAAIf,GAAcT,OAAOU,UASzB,SAAS8J,GAAYtJ,GACnB,IAAIuJ,EAAOvJ,GAASA,EAAMwJ,YAG1B,OAAOxJ,KAFqB,mBAARuJ,GAAsBA,EAAK/J,WAAcD,GAG/D,CCPA,SAASkK,GAAQhI,EAAMiI,GACrB,OAAO,SAASC,GACd,OAAOlI,EAAKiI,EAAUC,IAE1B,CCTA,IAEAC,GAFiBH,GAAQ3K,OAAOuC,KAAMvC,QCIlCW,GAHcX,OAAOU,UAGQC,eCqBjC,SAASoK,GAAY7J,GACnB,OAAgB,MAATA,GAAiB+H,GAAS/H,EAAMyC,UAAY1B,EAAWf,EAChE,CCEA,SAASqB,GAAKa,GACZ,OAAO2H,GAAY3H,GAAU0G,GAAc1G,GFjB7C,SAAkBA,GAChB,IAAKoH,GAAYpH,GACf,OAAO4H,GAAW5H,GAEpB,IAAI5B,EAAS,GACb,IAAK,IAAI6B,KAAOrD,OAAOoD,GACjBzC,GAAeS,KAAKgC,EAAQC,IAAe,eAAPA,GACtC7B,EAAOqD,KAAKxB,GAGhB,OAAO7B,CACT,CEMuDyJ,CAAS7H,EAChE,CC7BA,IAGIzC,GAHcX,OAAOU,UAGQC,eASjC,SAASuK,GAAW9H,GAClB,IAAKrB,EAASqB,GACZ,OCVJ,SAAsBA,GACpB,IAAI5B,EAAS,GACb,GAAc,MAAV4B,EACF,IAAK,IAAIC,KAAOrD,OAAOoD,GACrB5B,EAAOqD,KAAKxB,GAGhB,OAAO7B,CACT,CDEW2J,CAAa/H,GAEtB,IAAIgI,EAAUZ,GAAYpH,GACtB5B,EAAS,GAEb,IAAK,IAAI6B,KAAOD,GACD,eAAPC,IAAyB+H,GAAYzK,GAAeS,KAAKgC,EAAQC,KACrE7B,EAAOqD,KAAKxB,GAGhB,OAAO7B,CACT,CEHA,SAAS6J,GAAOjI,GACd,OAAO2H,GAAY3H,GAAU0G,GAAc1G,GAAQ,GAAQ8H,GAAW9H,EACxE,CC1BA,IAAImF,GAAgC,iBAAXC,SAAuBA,UAAYA,QAAQC,UAAYD,QAG5EE,GAAaH,IAAgC,iBAAVI,QAAsBA,SAAWA,OAAOF,UAAYE,OAMvFC,GAHgBF,IAAcA,GAAWF,UAAYD,GAG5BhI,EAAKqI,YAAS5H,EACvCsK,GAAc1C,GAASA,GAAO0C,iBAActK,ECKhD,SAASuK,KACP,MAAO,EACT,CChBA,IAGInD,GAHcpI,OAAOU,UAGc0H,qBAGnCoD,GAAmBxL,OAAOyL,sBAS1BC,GAAcF,GAA+B,SAASpI,GACxD,OAAc,MAAVA,EACK,IAETA,EAASpD,OAAOoD,GCdlB,SAAqBe,EAAOwH,GAM1B,IALA,IAAIjI,GAAS,EACTC,EAAkB,MAATQ,EAAgB,EAAIA,EAAMR,OACnCiI,EAAW,EACXpK,EAAS,KAEJkC,EAAQC,GAAQ,CACvB,IAAIzC,EAAQiD,EAAMT,GACdiI,EAAUzK,EAAOwC,EAAOS,KAC1B3C,EAAOoK,KAAc1K,EAEzB,CACA,OAAOM,CACT,CDESqK,CAAYL,GAAiBpI,GAAS,SAAS0I,GACpD,OAAO1D,GAAqBhH,KAAKgC,EAAQ0I,EAC3C,GACF,EARqCP,GAUrCQ,GAAeL,GErBf,SAASM,GAAU7H,EAAO8H,GAKxB,IAJA,IAAIvI,GAAS,EACTC,EAASsI,EAAOtI,OAChBuI,EAAS/H,EAAMR,SAEVD,EAAQC,GACfQ,EAAM+H,EAASxI,GAASuI,EAAOvI,GAEjC,OAAOS,CACT,CCdA,IAEAgI,GAFmBxB,GAAQ3K,OAAOoM,eAAgBpM,QCY9CqM,GATmBrM,OAAOyL,sBASqB,SAASrI,GAE1D,IADA,IAAI5B,EAAS,GACN4B,GACL4I,GAAUxK,EAAQkK,GAAWtI,IAC7BA,EAASkJ,GAAalJ,GAExB,OAAO5B,CACT,EAPuC+J,GASvCgB,GAAeF,GCVf,SAASG,GAAepJ,EAAQqJ,EAAUC,GACxC,IAAIlL,EAASiL,EAASrJ,GACtB,OAAOvD,EAAQuD,GAAU5B,EAASwK,GAAUxK,EAAQkL,EAAYtJ,GAClE,CCNA,SAASuJ,GAAWvJ,GAClB,OAAOoJ,GAAepJ,EAAQb,GAAMmJ,GACtC,CCDA,SAASkB,GAAaxJ,GACpB,OAAOoJ,GAAepJ,EAAQiI,GAAQgB,GACxC,CCVA,IAEAQ,GAFe1J,EAAU5C,EAAM,YCE/BuM,GAFc3J,EAAU5C,EAAM,WCE9BwM,GAFU5J,EAAU5C,EAAM,OCE1ByM,GAFc7J,EAAU5C,EAAM,WCK1B0M,GAAS,eAETC,GAAa,mBACbC,GAAS,eACTC,GAAa,mBAEbC,GAAc,oBAGdC,GAAqB5K,EAAS6K,IAC9BC,GAAgB9K,EAASyC,GACzBsI,GAAoB/K,EAASgL,IAC7BC,GAAgBjL,EAASkL,IACzBC,GAAoBnL,EAASoL,IAS7BC,GAAS9M,GAGRsM,IAAYQ,GAAO,IAAIR,GAAS,IAAIS,YAAY,MAAQX,IACxDlI,GAAO4I,GAAO,IAAI5I,IAAQ8H,IAC1BS,IAAWK,GAAOL,GAAQO,YAAcf,IACxCU,IAAOG,GAAO,IAAIH,KAAQT,IAC1BW,IAAWC,GAAO,IAAID,KAAYV,MACrCW,GAAS,SAAS7M,GAChB,IAAIM,EAASP,EAAWC,GACpBuJ,EA/BQ,mBA+BDjJ,EAAsBN,EAAMwJ,iBAAc1J,EACjDkN,EAAazD,EAAO/H,EAAS+H,GAAQ,GAEzC,GAAIyD,EACF,OAAQA,GACN,KAAKZ,GAAoB,OAAOD,GAChC,KAAKG,GAAe,OAAOP,GAC3B,KAAKQ,GAAmB,OAAOP,GAC/B,KAAKS,GAAe,OAAOR,GAC3B,KAAKU,GAAmB,OAAOT,GAGnC,OAAO5L,IAIX,IAAA2M,GAAeJ,GCrDXpN,GAHcX,OAAOU,UAGQC,eCDjC,IAEAyN,GAFiB7N,EAAK8N,WCMtB,SAASC,GAAiBC,GACxB,IAAI/M,EAAS,IAAI+M,EAAY7D,YAAY6D,EAAYC,YAErD,OADA,IAAIH,GAAW7M,GAAQuC,IAAI,IAAIsK,GAAWE,IACnC/M,CACT,CCZA,IAAIiN,GAAU,OCEd,IAAIlI,GAAc/F,EAASA,EAAOE,eAAYM,EAC1C0N,GAAgBnI,GAAcA,GAAYoI,aAAU3N,ECoCxD,SAAS4N,GAAexL,EAAQ/B,EAAKwN,GACnC,ID5BmB/C,EC4BfrB,EAAOrH,EAAOsH,YAClB,OAAQrJ,GACN,IA3BiB,uBA4Bf,OAAOiN,GAAiBlL,GAE1B,IAvCU,mBAwCV,IAvCU,gBAwCR,OAAO,IAAIqH,GAAMrH,GAEnB,IAjCc,oBAkCZ,OCzCN,SAAuB0L,EAAUD,GAC/B,IAAIE,EAASF,EAASP,GAAiBQ,EAASC,QAAUD,EAASC,OACnE,OAAO,IAAID,EAASpE,YAAYqE,EAAQD,EAASE,WAAYF,EAASN,WACxE,CDsCaS,CAAc7L,EAAQyL,GAE/B,IAnCa,wBAmCI,IAlCJ,wBAmCb,IAlCU,qBAkCI,IAjCH,sBAiCkB,IAhClB,sBAiCX,IAhCW,sBAgCI,IA/BG,6BA+BmB,IA9BzB,uBA8ByC,IA7BzC,uBA8BV,OE9CN,SAAyBK,EAAYL,GACnC,IAAIE,EAASF,EAASP,GAAiBY,EAAWH,QAAUG,EAAWH,OACvE,OAAO,IAAIG,EAAWxE,YAAYqE,EAAQG,EAAWF,WAAYE,EAAWvL,OAC9E,CF2CawL,CAAgB/L,EAAQyL,GAEjC,IAjDS,eA2DT,IAxDS,eAyDP,OAAO,IAAIpE,EARb,IAnDY,kBAoDZ,IAjDY,kBAkDV,OAAO,IAAIA,EAAKrH,GAElB,IAtDY,kBAuDV,OFxDN,SAAqBgM,GACnB,IAAI5N,EAAS,IAAI4N,EAAO1E,YAAY0E,EAAOtH,OAAQ2G,GAAQpM,KAAK+M,IAEhE,OADA5N,EAAO6N,UAAYD,EAAOC,UACnB7N,CACT,CEoDa8N,CAAYlM,GAKrB,IAzDY,kBA0DV,OD3De0I,EC2DI1I,ED1DhBsL,GAAgB1O,OAAO0O,GAActN,KAAK0K,IAAW,GC4D9D,CGvEA,IAAIyD,GAAevP,OAAOwP,OAUtBC,GAAc,WAChB,SAASrM,IAAU,CACnB,OAAO,SAASsM,GACd,IAAK3N,EAAS2N,GACZ,MAAO,GAET,GAAIH,GACF,OAAOA,GAAaG,GAEtBtM,EAAO1C,UAAYgP,EACnB,IAAIlO,EAAS,IAAI4B,EAEjB,OADAA,EAAO1C,eAAYM,EACZQ,EAEX,CAdkB,GAgBlBmO,GAAeF,GCxBf,IAAIG,GAAYjG,IAAYA,GAASkG,MAqBrCC,GAFYF,GAAYzG,GAAUyG,ICXlC,SAAmB1O,GACjB,OAAOS,EAAaT,IAVT,gBAUmB6M,GAAO7M,EACvC,ECVA,IAAI6O,GAAYpG,IAAYA,GAASqG,MAqBrCC,GAFYF,GAAY5G,GAAU4G,ICXlC,SAAmB7O,GACjB,OAAOS,EAAaT,IAVT,gBAUmB6M,GAAO7M,EACvC,ECcIgP,GAAU,qBAKVC,GAAU,oBAIVC,GAAY,kBAoBZC,GAAgB,CAAA,EA+BpB,SAASC,GAAUpP,EAAOqP,EAASvI,EAAY3E,EAAKD,EAAQoN,GAC1D,IAAIhP,EACAqN,EAnEgB,EAmEP0B,EACTE,EAnEgB,EAmEPF,EACTG,EAnEmB,EAmEVH,EAKb,GAHIvI,IACFxG,EAAS4B,EAAS4E,EAAW9G,EAAOmC,EAAKD,EAAQoN,GAASxI,EAAW9G,SAExDF,IAAXQ,EACF,OAAOA,EAET,IAAKO,EAASb,GACZ,OAAOA,EAET,IAAI8I,EAAQnK,EAAQqB,GACpB,GAAI8I,GAEF,GADAxI,Eb7FJ,SAAwB2C,GACtB,IAAIR,EAASQ,EAAMR,OACfnC,EAAS,IAAI2C,EAAMuG,YAAY/G,GAOnC,OAJIA,GAA6B,iBAAZQ,EAAM,IAAkBxD,GAAeS,KAAK+C,EAAO,WACtE3C,EAAOkC,MAAQS,EAAMT,MACrBlC,EAAOmP,MAAQxM,EAAMwM,OAEhBnP,CACT,CamFaoP,CAAe1P,IACnB2N,EACH,OCpGN,SAAmB/G,EAAQ3D,GACzB,IAAIT,GAAS,EACTC,EAASmE,EAAOnE,OAGpB,IADAQ,IAAUA,EAAQvE,MAAM+D,MACfD,EAAQC,GACfQ,EAAMT,GAASoE,EAAOpE,GAExB,OAAOS,CACT,CD2Fa0M,CAAU3P,EAAOM,OAErB,CACL,IAAIH,EAAM0M,GAAO7M,GACb4P,EAASzP,GAAO8O,IA7EX,8BA6EsB9O,EAE/B,GAAIyH,GAAS5H,GACX,O5B5FN,SAAqB6N,EAAQF,GAC3B,GAAIA,EACF,OAAOE,EAAOgC,QAEhB,IAAIpN,EAASoL,EAAOpL,OAChBnC,EAAS8J,GAAcA,GAAY3H,GAAU,IAAIoL,EAAOrE,YAAY/G,GAGxE,OADAoL,EAAOiC,KAAKxP,GACLA,CACT,C4BmFayP,CAAY/P,EAAO2N,GAE5B,GAAIxN,GAAO+O,IAAa/O,GAAO6O,IAAYY,IAAW1N,GAEpD,GADA5B,EAAUiP,GAAUK,EAAU,CAAE,EE3GtC,SAAyB1N,GACvB,MAAqC,mBAAtBA,EAAOsH,aAA8BF,GAAYpH,GAE5D,CAAA,EADAqM,GAAWnD,GAAalJ,GAE9B,CFuGyC8N,CAAgBhQ,IAC9C2N,EACH,OAAO4B,EG7Gf,SAAuB3I,EAAQ1E,GAC7B,OAAOyE,GAAWC,EAAQuE,GAAavE,GAAS1E,EAClD,CH4GY+N,CAAcjQ,EI7G1B,SAAsBkC,EAAQ0E,GAC5B,OAAO1E,GAAUyE,GAAWC,EAAQuD,GAAOvD,GAAS1E,EACtD,CJ2GiCgO,CAAa5P,EAAQN,IK9GtD,SAAqB4G,EAAQ1E,GAC3B,OAAOyE,GAAWC,EAAQ4D,GAAW5D,GAAS1E,EAChD,CL6GYiO,CAAYnQ,EM9GxB,SAAoBkC,EAAQ0E,GAC1B,OAAO1E,GAAUyE,GAAWC,EAAQvF,GAAKuF,GAAS1E,EACpD,CN4G+BkO,CAAW9P,EAAQN,QAEvC,CACL,IAAKmP,GAAchP,GACjB,OAAO+B,EAASlC,EAAQ,GAE1BM,EAASoN,GAAe1N,EAAOG,EAAKwN,EACtC,CACF,CAEA2B,IAAUA,EAAQ,IAAItJ,IACtB,IAAIqK,EAAUf,EAAMhM,IAAItD,GACxB,GAAIqQ,EACF,OAAOA,EAETf,EAAMzM,IAAI7C,EAAOM,GAEbwO,GAAM9O,GACRA,EAAMsQ,QAAQ,SAASC,GACrBjQ,EAAOkQ,IAAIpB,GAAUmB,EAAUlB,EAASvI,EAAYyJ,EAAUvQ,EAAOsP,GACvE,GACSX,GAAM3O,IACfA,EAAMsQ,QAAQ,SAASC,EAAUpO,GAC/B7B,EAAOuC,IAAIV,EAAKiN,GAAUmB,EAAUlB,EAASvI,EAAY3E,EAAKnC,EAAOsP,GACvE,GAGF,IAIIzI,EAAQiC,OAAQhJ,GAJL0P,EACVD,EAAS7D,GAAeD,GACxB8D,EAASpF,GAAS9I,IAEkBrB,GASzC,OOzJF,SAAmBiD,EAAOuC,GAIxB,IAHA,IAAIhD,GAAS,EACTC,EAAkB,MAATQ,EAAgB,EAAIA,EAAMR,SAE9BD,EAAQC,IAC8B,IAAzC+C,EAASvC,EAAMT,GAAQA,EAAOS,KAKtC,CPuIEwN,CAAU5J,GAAS7G,EAAO,SAASuQ,EAAUpO,GACvC0E,IAEF0J,EAAWvQ,EADXmC,EAAMoO,IAIR9J,GAAYnG,EAAQ6B,EAAKiN,GAAUmB,EAAUlB,EAASvI,EAAY3E,EAAKnC,EAAOsP,GAChF,GACOhP,CACT,CAxGA6O,GAAcH,IAAWG,GA7BV,kBA8BfA,GAfqB,wBAeWA,GAdd,qBAelBA,GA9Bc,oBA8BWA,GA7BX,iBA8BdA,GAfiB,yBAeWA,GAdX,yBAejBA,GAdc,sBAcWA,GAbV,uBAcfA,GAbe,uBAaWA,GA5Bb,gBA6BbA,GA5BgB,mBA4BWA,GAAcD,IACzCC,GA3BgB,mBA2BWA,GA1Bd,gBA2BbA,GA1BgB,mBA0BWA,GAzBX,mBA0BhBA,GAhBe,uBAgBWA,GAfJ,8BAgBtBA,GAfgB,wBAeWA,GAdX,yBAcsC,EACtDA,GArCe,kBAqCWA,GAAcF,IACxCE,GA5BiB,qBA4BW,EQpD5B,SAASuB,GAAMC,GAEX,MAAa,oBADL7R,OAAOU,UAAUG,SAASO,KAAKyQ,EAE3C,CCAA,SAASC,GAAOD,GAGZ,SAAID,GAAMC,IACI,KAANA,EAKZ,CCfA,SAASE,GAAMF,GAEX,MAAa,oBADL7R,OAAOU,UAAUG,SAASO,KAAKyQ,EAE3C,CCHA,SAASG,GAAMH,GAEX,MAAa,mBADL7R,OAAOU,UAAUG,SAASO,KAAKyQ,EAE3C,CC0BA,SAASI,GAAKJ,GAEV,QClCJ,SAAqBA,GAEjB,MAAa,uBADL7R,OAAOU,UAAUG,SAASO,KAAKyQ,EAE3C,CD+BQK,CAAYL,OElCpB,SAAgBA,GAEZ,MAAa,kBADL7R,OAAOU,UAAUG,SAASO,KAAKyQ,EAE3C,CFkCQM,CAAON,OG/Bf,SAAgBA,GAEZ,GAAIE,GAAMF,GAAI,CACV,IAAK,IAAIO,KAAKP,EACV,OAAO,EAEX,OAAO,CACX,CACA,OAAO,CACX,CHyBQQ,CAAOR,OI/Bf,SAAgBA,GAEZ,SAAID,GAAMC,IACI,KAANA,EAKZ,CJ0BQS,CAAOT,OKrCf,SAAgBA,GAEZ,QAAIG,GAAMH,IACW,IAAbA,EAAElO,MAMd,CL+BQ4O,CAAOV,MM3Cf,SAAeA,GAGX,OAAOA,GAAMA,CACjB,CN0CQW,CAAMX,MAId,COjDA,MAAMY,GAAU,CACZC,GAAIA,IAAMhF,QAAsBO,UAAA0E,KAAA,WAAA,OAAAC,EAAA,GAChCC,GAAIA,IAAMnF,QAAsBO,UAAA0E,KAAA,WAAA,OAAAG,EAAA,GAChCC,GAAIA,IAAMrF,QAAsBO,UAAA0E,KAAA,WAAA,OAAAK,EAAA,GAChCC,GAAIA,IAAMvF,QAAsBO,UAAA0E,KAAA,WAAA,OAAAO,EAAA,GAChCC,GAAIA,IAAMzF,QAAsBO,UAAA0E,KAAA,WAAA,OAAAS,EAAA,GAChCC,GAAIA,IAAM3F,QAAsBO,UAAA0E,KAAA,WAAA,OAAAW,EAAA,GAChCC,GAAIA,IAAM7F,QAAsBO,UAAA0E,KAAA,WAAA,OAAAa,EAAA,GAChCC,GAAIA,IAAM/F,QAAsBO,UAAA0E,KAAA,WAAA,OAAAe,EAAA,GAChCC,GAAIA,IAAMjG,QAAsBO,UAAA0E,KAAA,WAAA,OAAAiB,EAAA,GAChCC,IAAKA,IAAMnG,QAAsBO,UAAA0E,KAAA,WAAA,OAAAmB,EAAA,IAM/BC,GAAY,CAAC,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,OC/B5D,MAAMC,GAAU,CAEnBC,KAAM,CAAEC,KAAM,UAAWC,OAAQ,UAAWC,KAAM,UAAWC,MAAO,OACpEC,MAAO,CAAEJ,KAAM,UAAWC,OAAQ,UAAWC,KAAM,UAAWC,MAAO,OACrEE,OAAQ,CAAEL,KAAM,UAAWC,OAAQ,UAAWC,KAAM,UAAWC,MAAO,OACtEG,OAAQ,CAAEN,KAAM,UAAWC,OAAQ,UAAWC,KAAM,UAAWC,MAAO,OACtEI,IAAK,CAAEP,KAAM,UAAWC,OAAQ,UAAWC,KAAM,UAAWC,MAAO,OACnEK,KAAM,CAAER,KAAM,UAAWC,OAAQ,UAAWC,KAAM,UAAWC,MAAO,OAEpEM,QAAS,CAAET,KAAM,UAAWC,OAAQ,UAAWC,KAAM,UAAWC,MAAO,WAEvEO,MAAO,CAAEV,KAAM,UAAWC,OAAQ,UAAWC,KAAM,UAAWS,OAAO,GACrEC,OAAQ,CAAEZ,KAAM,UAAWC,OAAQ,UAAWC,KAAM,UAAWS,OAAO,GACtEE,OAAQ,CAAEb,KAAM,UAAWC,OAAQ,UAAWC,KAAM,UAAWS,OAAO,GACtEG,QAAS,CAAEd,KAAM,UAAWC,OAAQ,UAAWC,KAAM,UAAWS,OAAO,GACvEI,QAAS,CAAEf,KAAM,UAAWC,OAAQ,UAAWC,KAAM,UAAWS,OAAO,GACvEK,QAAS,CAAEhB,KAAM,UAAWC,OAAQ,UAAWC,KAAM,UAAWS,OAAO,IAO9DM,GAAO,CAAEC,KAAM,UAAWhB,KAAM,UAAWiB,OAAQ,cAAeC,UAAW,UAAWC,UAAW,KAGnGC,GAAO,mCAGPC,GAAaC,GAAO,OAAOxS,KAAKwS,GAAO,IAEvCC,GAAUD,GAAO1B,GAAQ0B,IAAQ1B,GAAQC,KCzBhD2B,GAAM,CAERC,UAAa,qCAEb,gBAAiB,2CACjB,iBAAkB,mEAElBC,QAAW,gCACXC,QAAW,gCAEXC,UAAa,yCACb,kBAAmB,gDACnB,gBAAiB,uCAEjBC,GAAM,gCACN,SAAU,2CACV,QAAS,0CAETC,MAAS,sCAETC,UAAa,0CACb,gBAAiB,uCAEjBC,MAAS,2CACT,YAAa,mDACbC,OAAU,0CACV,aAAc,uCAEd,gBAAiB,yCAEjBC,MAAS,gCAETC,MAAS,mCAIN,SAASC,GAAOnT,GACnB,MAAMoT,EAAMb,GAAIvS,GAChB,IAAKoT,EAAK,MAAM,IAAIC,MAAM,eAAiBrT,GAC3C,MA1CS,gCA0CKoT,CAClB,CAGO,SAASE,GAAUtT,GACtB,MAAO,gBAAgBmT,GAAOnT,gBAClC,CAGO,SAASuT,GAASvT,GACrB,MAAO,gCAAgCmT,GAAOnT,MAClD,CAIA,MAAMwT,GAAa,CAAA,ECpDnB,MAAMC,GAAMC,GAAMxM,OAAOwM,GAAG/T,QAAQ,MAAO,SAI3C,SAASgU,GAAUC,EAAIC,GACnB,MAAe,YAAXD,EAAGvB,IAA0B,GAAGwB,EAAID,EAAGE,QAAQL,GAAGG,EAAGG,WAClD,GAAGF,EAAID,EAAGE,QAAQL,GAAGG,EAAGG,UACnC,CAWA,SAASC,GAAU5S,GACf,MAAM6S,IAAEA,EAAGC,MAAEA,EAAKC,MAAEA,GAAU/S,EAIxBgT,EAAO,IAAI7J,IACX8J,EAAS,CAAA,EACTR,EAAOC,IACT,GAAIO,EAAOP,GAAK,OAAOO,EAAOP,GAC9B,MAAMQ,EAAO,KAAOpN,OAAO4M,GAAInU,QAAQ,iBAAkB,KACzD,IAAI4U,EAAID,EAAMvF,EAAI,EAClB,KAAOqF,EAAKlT,IAAIqT,IAAIA,EAAID,EAAO,IAAOvF,IAGtC,OAFAqF,EAAK/F,IAAIkG,GACTF,EAAOP,GAAMS,EACNA,GAILC,EAAO,CAAA,EACb,IAAK,MAAMZ,KAAMM,EAAOM,EAAKZ,EAAGE,IAAMF,EAGrB,IAAIrJ,IAAI2J,EAAMO,OAAOb,GAAMxB,GAAWwB,EAAGvB,MAAM1Q,IAAIiS,GAAMA,EAAGE,KAG7E,MAAMY,EAAS,IAAInK,IAAI2J,EAAMvS,IAAIiS,GAAMA,EAAGvB,MAGpCsC,EAAgB,GACtB,IAAK,MAAMtC,KAAOqC,EAAQ,CACtB,MAAME,EAAIjE,GAAQ0B,IAAQ1B,GAAQC,KAC9BwB,GAAWC,GAEXsC,EAAcnT,KAAK,cAAc6Q,UAAYuC,EAAE/D,eAAe+D,EAAE9D,mCAAmC8D,EAAE7D,QACtF,YAARsB,EACPsC,EAAcnT,KAAK,cAAc6Q,UAAYuC,EAAE/D,eAAe+D,EAAE9D,mCAAmC8D,EAAE7D,QAErG4D,EAAcnT,KAAK,cAAc6Q,UAAYuC,EAAE/D,eAAe+D,EAAE9D,mCAAmC8D,EAAE7D,OAE7G,CAGA,MAAM8D,EAAW,CAAA,EACjB,IAAK,MAAMjB,KAAMM,EACRW,EAASjB,EAAGvB,OAAMwC,EAASjB,EAAGvB,KAAO,IAC1CwC,EAASjB,EAAGvB,KAAK7Q,KAAKoS,EAAGE,IAE7B,MAAMgB,EAAa,GACnB,IAAK,MAAOzC,EAAK0C,KAAQpY,OAAOyD,QAAQyU,GACpCC,EAAWtT,KAAK,WAAWuT,EAAIpT,IAAIkS,GAAKmB,KAAK,QAAQ3C,KAMzD,MAAM4C,EAAcf,EAAMO,OAAOb,GAAMxB,GAAWwB,EAAGvB,OAASuB,EAAGpC,OAAO7P,IAAIiS,GAAMA,EAAGE,IAE/EoB,EAAkBhB,EAAMO,OAAOb,IAAOxB,GAAWwB,EAAGvB,OAASuB,EAAGpC,OAGtE,SAAS2D,EAAeC,EAAKC,GACzB,MAAMC,EAAId,EAAKY,GACTG,EAAQ,GAEdA,EAAM/T,KAAK,GAAG6T,aAAkBxB,EAAIuB,OAASlO,OAAOoO,EAAEvB,OAAOpU,QAAQ,MAAO,UAE5E,MAAM6V,EAAiBtB,EAAMO,OAAOb,GAAMA,EAAGpC,QAAU4D,IAAQhD,GAAWwB,EAAGvB,MAC7E,IAAK,MAAMuB,KAAM4B,EACbD,EAAM/T,KAAK,GAAG6T,MAAW1B,GAAUC,EAAIC,MAG3C,MAAM4B,EAAevB,EAAMO,OAAOb,GAAMxB,GAAWwB,EAAGvB,MAAQuB,EAAGpC,QAAU4D,GAC3E,IAAK,MAAMM,KAAMD,EACbF,EAAM/T,QAAQ2T,EAAeO,EAAG5B,GAAIuB,EAAS,OAGjD,OADAE,EAAM/T,KAAK,GAAG6T,QACPE,CACX,CAGA,MAAMI,EAAY,GAClB,IAAK,MAAMC,KAAMzB,EAAO,CACpB,MAAM0B,EAAoB,WAAZD,EAAGE,KAAoB,QAAU,SACzCC,EAAMH,EAAG7B,MAAQ,KAAKN,GAAGmC,EAAG7B,YAAc,GAChD4B,EAAUnU,KAAK,KAAKqS,EAAI+B,EAAGI,SAASH,KAASE,IAAMlC,EAAI+B,EAAGK,MAC9D,CAGA,MAAMV,EAAQ,CAAC,aAAatB,KAE5B,IAAK,MAAML,KAAMsB,EACbK,EAAM/T,KAAK,KAAKmS,GAAUC,EAAIC,MAGlC,IAAK,MAAMuB,KAAOH,EACdM,EAAM/T,QAAQ2T,EAAeC,EAAK,OAQtC,OALAG,EAAM/T,QAAQmU,GAEdJ,EAAM/T,QAAQmT,GACdY,EAAM/T,QAAQsT,GAEPS,EAAMP,KAAK,KACtB,CAyDAkB,eAAeC,GAAcC,GACzB,MAAMC,QAAgBC,WAASC,SAC/B,IACI,MAAMC,QAAaH,EAAQI,QAAQ,CAAEC,kBAAmB,UAClDF,EAAKG,WAvDnB,SAAqBP,GACjB,MAAO,qEACT9C,GAAU,8kCAOwCsD,KAAKC,UAAUT,g1FAuCnE,CAO8BU,CAAYV,GAAO,CAAEW,UAAW,eAChDP,EAAKQ,gBAAgB,IAAyB,SAAnBC,SAASC,OAAuC,SAAnBD,SAASC,MAAkB,CAAEC,QAAS,MAEpG,GAAc,eADMX,EAAKU,QACH,CAClB,MAAME,QAAYZ,EAAKa,SAAS,KAAQ,MAAMC,EAAKL,SAASM,eAAe,OAAQ,OAAOD,EAAKA,EAAGE,UAAY,KAC9G,MAAM,IAAInE,MAAM,0BAA0B+D,IAC9C,CAEA,aADMZ,EAAKa,SAAS,IAAMJ,SAASQ,MAAMC,OAClC,CAAErB,UAASG,OACrB,CACD,MAAOmB,GAEH,YADMtB,EAAQuB,QACRD,CACV,CACJ,6CAGAzB,eAAsB9U,EAAMyW,EAAM,IAC9B,MAAMxB,QAAEA,EAAOG,KAAEA,SAAeL,GAAcnC,GAAU5S,IACxD,IACI,aAAaoV,EAAKsB,QAAQ,YAAYC,YAC1C,CACQ,cACE1B,EAAQuB,OAClB,CACJ,SAIA1B,eAAsB9U,EAAMyW,EAAM,IAC9B,MAAMxB,QAAEA,EAAOG,KAAEA,SAAeL,GAAcnC,GAAU5S,IACxD,IACI,aAAcoV,EAAKa,SAAS,KACxB,MAAMC,EAAKL,SAASe,cAAc,YAC5BC,EAAKX,EAAGY,QAAQC,QAItB,OAHAb,EAAGc,MAAMC,SAAW,OACpBf,EAAGgB,aAAa,QAASC,KAAKC,KAAKP,EAAGQ,QACtCnB,EAAGgB,aAAa,SAAUC,KAAKC,KAAKP,EAAGS,SAChCzB,SAASM,eAAe,OAAOoB,aACtChZ,QAAQ,UAAW,UAAUiZ,MACrC,CACQ,cACEvC,EAAQuB,OAClB,CACJ,ICvNO,SAAS5D,GAAU5S,GACtB,MAAM6S,EAAM7S,EAAK6S,KAAO,KAClB4E,EAAmB,OAAR5E,EAAe,KAAO,KAIjCG,EAAO,IAAI7J,IACX8J,EAAS,CAAA,EACTR,EAAOC,IACT,GAAIO,EAAOP,GAAK,OAAOO,EAAOP,GAC9B,MAAMQ,EAAO,KAAOpN,OAAO4M,GAAInU,QAAQ,iBAAkB,KACzD,IAAI4U,EAAID,EAAMvF,EAAI,EAClB,KAAOqF,EAAKlT,IAAIqT,IAAIA,EAAID,EAAO,IAAOvF,IAGtC,OAFAqF,EAAK/F,IAAIkG,GACTF,EAAOP,GAAMS,EACNA,GAILuE,EAAa,CAAA,EACbC,EAAW,CAAA,EACjB,IAAK,MAAMnF,KAAMxS,EAAK8S,MAClB6E,EAASnF,EAAGE,IAAMF,EACdA,EAAGpC,QACEsH,EAAWlF,EAAGpC,SAAQsH,EAAWlF,EAAGpC,OAAS,IAClDsH,EAAWlF,EAAGpC,OAAOhQ,KAAKoS,EAAGE,KAKrC,MAAMkF,EAAW5X,EAAK8S,MAAMO,OAAOb,IAAOA,EAAGpC,OAEvC+D,EAAQ,GAGd,SAAS0D,EAAWrF,EAAIyB,GACpB,MAAM6D,EAAK,KAAKC,OAAO9D,GACvB,GAAIjD,GAAWwB,EAAGvB,KAAM,CACpBkD,EAAM/T,KAAK,GAAG0X,aAAcrF,EAAID,EAAGE,QAAQF,EAAGG,WAC9CwB,EAAM/T,KAAK,GAAG0X,gBAAiBL,KAC/B,MAAMO,EAAON,EAAWlF,EAAGE,KAAO,GAClC,IAAK,MAAMuF,KAAOD,EAAMH,EAAWF,EAASM,GAAMhE,EAAS,GAC3DE,EAAM/T,KAAK,GAAG0X,OAClB,KAAO,CACH,MAAMlI,EAAmB,YAAX4C,EAAGvB,IACX,IAAIuB,EAAGG,SACP,KAAKH,EAAGG,UACdwB,EAAM/T,KAAK,GAAG0X,IAAKrF,EAAID,EAAGE,MAAM9C,IACpC,CACJ,CAEAuE,EAAM/T,KAAK,aAAayS,KACxB,IAAK,MAAML,KAAMoF,EAAUC,EAAWrF,EAAI,GAG1C,IAAK,MAAMgC,KAAMxU,EAAK+S,MAAO,CACzB,MAAM0B,EAAoB,WAAZD,EAAGE,KAAoB,OAAS,SACxCC,EAAMH,EAAG7B,MAAQ,KAAK6B,EAAG7B,UAAY,GAC3CwB,EAAM/T,KAAK,KAAKqS,EAAI+B,EAAGI,SAASH,IAAQE,KAAOlC,EAAI+B,EAAGK,MAC1D,CAGA,MAAMvB,EAAS,IAAInK,IAAInJ,EAAK8S,MAAMvS,IAAIiS,GAAMA,EAAGvB,MACzCiH,EAAa,CAAA,EACnB,IAAK,MAAM1F,KAAMxS,EAAK8S,MACboF,EAAW1F,EAAGvB,OAAMiH,EAAW1F,EAAGvB,KAAO,IAC9CiH,EAAW1F,EAAGvB,KAAK7Q,KAAKoS,EAAGE,IAE/B,IAAK,MAAMzB,KAAOqC,EAAQ,CACtB,MAAME,EAAIjE,GAAQ0B,IAAQ1B,GAAQC,KAC5B2I,EAAY3E,EAAE/D,KACd2I,EAAc5E,EAAE9D,OAChB2I,EAAY7E,EAAE7D,KACd2I,GAAKtH,GAAWC,GAAO,SAC7BkD,EAAM/T,KAAK,cAAc6Q,UAAYkH,YAAoBC,kBAA4BE,WAAYD,KACrG,CACA,IAAK,MAAOpH,EAAK0C,KAAQpY,OAAOyD,QAAQkZ,GACpC/D,EAAM/T,KAAK,WAAWuT,EAAIpT,IAAIkS,GAAKmB,KAAK,QAAQ3C,MAGpD,OAAOkD,EAAMP,KAAK,KACtB,CAGA,MAAM2E,GAAQ,qvCAkCqBxG,GAAO,6DACXA,GAAO,qnGAmDtC+C,eAAeC,GAAc/U,GACzB,MAAMgV,EAtLC,qCAsLWpC,GAAU5S,GACtBiV,QAAgBC,WAASC,SAC/B,IACI,MAAMC,QAAaH,EAAQI,QAAQ,CAAEC,kBAAmB,UAClDF,EAAKG,WAAWgD,GAAO,CAAE5C,UAAW,eACpCP,EAAKQ,gBAAgB,IAAM4C,OAAOC,SAAWD,OAAOE,WAAY,CAAE3C,QAAS,MAAS4C,MAAM,QAChG,MAAMC,QAAiBxD,EAAKa,SAAS,IAAMuC,OAAOE,YAClD,GAAIE,EAAU,MAAM,IAAI3G,MAAM2G,GAC9B,MAAMC,QAAUzD,EAAKa,SAAS,EAAE6C,EAAGC,KAASP,OAAOQ,UAAUF,EAAGC,GAAM,CAAC/D,EAAM,IAC7E,IAAK6D,EAAEI,GAAI,MAAM,IAAIhH,MAAM4G,EAAEtC,KAE7B,aADMnB,EAAK8D,eAAe,KACnB,CAAEjE,UAASG,OACrB,CACD,MAAOmB,GAEH,YADMtB,EAAQuB,QACRD,CACV,CACJ,6CAGOzB,eAAsB9U,EAAMyW,EAAM,IACrC,MAAMxB,QAAEA,EAAOG,KAAEA,SAAeL,GAAc/U,GAC9C,IACI,aAAaoV,EAAKsB,QAAQ,YAAYC,YAC1C,CAAU,cACA1B,EAAQuB,OAClB,CACJ,SAIO1B,eAAsB9U,EAAMyW,EAAM,IACrC,MAAMxB,QAAEA,EAAOG,KAAEA,SAAeL,GAAc/U,GAC9C,IACI,aAAcoV,EAAKa,SAAS,KACxB,MAAMC,EAAKL,SAASe,cAAc,YAC5BuC,EAAMhe,MAAMyZ,KAAKiB,SAASuD,iBAAiB,eAAe7Y,IAAI+R,GAAKA,EAAE+G,aAAazF,KAAK,MACvF0F,EAAKzD,SAAS0D,gBAAgB,6BAA8B,SAClED,EAAGD,YAAcF,EACjBjD,EAAGsD,aAAaF,EAAIpD,EAAGuD,YACvB,MAAMC,EAAM7D,SAASM,eAAe,OAAOoB,UAE3C,OADA+B,EAAGK,SACID,KACPnb,QAAQ,UAAW,UAAUiZ,MACrC,CAAU,cACAvC,EAAQuB,OAClB,CACJ,iBCvNA,SAASoD,GAAS3I,GACd,OAAOnL,OAAOmL,GAAK4I,cAActb,QAAQ,UAAWua,GAAY,MAANA,EAAY,IAAM,IAChF,CAyBA,SAASlG,GAAU5S,GACf,MAAM6S,EAAmB,OAAb7S,EAAK6S,IAAe,QAAU,OACpCiH,EAvBV,WACI,MAAM3F,EAAQ,GACd,IAAK,MAAOlD,EAAKuC,KAAMjY,OAAOyD,QAAQuQ,IACtB,YAAR0B,GACJkD,EAAM/T,KAAK,KAAKwZ,GAAS3I,YAAcuC,EAAE/D,eAAe+D,EAAE9D,UAE9D,OAAOyE,EAAMP,KAAK,KACtB,CAgBoBmG,GASV3G,EAAO,CAAA,EACb,IAAK,MAAMZ,KAAMxS,EAAK8S,MAAOM,EAAKZ,EAAGE,IAAMF,EAI3C,MAAMH,EAAMC,GAAMxM,OAAOwM,GAAG/T,QAAQ,MAAO,KACrCyb,EAAQ1H,GAAMxM,OAAOwM,GAAG/T,QAAQ,MAAO,KAGvC0b,EAAazH,GAAkB,YAAXA,EAAGvB,IAAoB+I,EAAKxH,EAAGG,OAASN,EAAGG,EAAGG,OAmBxE,MAAO,eAAeE,iCAExBiH,MApBmB9Z,EAAK8S,MAAMvS,IAAIiS,IAAM,UAhCtBvB,EAgCqCuB,EAAGvB,IA/B5C,YAARA,EAA0B,WACvB,IAAI2I,GAAS3I,QA8B2CgJ,EAAUzH,MAhC7E,IAAoBvB,IAgCiE2C,KAAK,UAIpE5T,EAAK8S,MAClBO,OAAOb,GAAMA,EAAGpC,OAASgD,EAAKZ,EAAGpC,QACjC7P,IAAIiS,GAAM,IAAIyH,EAAU7G,EAAKZ,EAAGpC,oBAAiB6J,EAAUzH,OAC3DoB,KAAK,UAGO5T,EAAK+S,MAAMxS,IAAIiU,IAC5B,MAAM0F,EAAU9G,EAAKoB,EAAGI,MAAQqF,EAAU7G,EAAKoB,EAAGI,OAASvC,EAAGmC,EAAGI,MAC3DuF,EAAQ/G,EAAKoB,EAAGK,IAAMoF,EAAU7G,EAAKoB,EAAGK,KAAOxC,EAAGmC,EAAGK,IACrDJ,EAAoB,WAAZD,EAAGE,KAAoB,SAAQ,KAE7C,MAAO,IAAIwF,KADO1F,EAAG7B,MAAQ,IAAIqH,EAAKxF,EAAG7B,UAAY,MACnB8B,MAAU0F,OAC7CvG,KAAK,OAQZ,CAUA,MAAM2E,GAAQ,qEACZrG,GAAU,eACVA,GAAU,sMAIOsD,KAAKC,UAAU/E,GAAKG,wBAAwBH,GAAKI,w9DA6DpEgE,eAAeC,GAAc/U,GACzB,MAAMiV,QAAgBC,WAASC,SAC/B,IACI,MAAMC,QAAaH,EAAQI,QAAQ,CAAEC,kBAAmB,UAClDF,EAAKG,WAAWgD,GAAO,CAAE5C,UAAW,eACpCP,EAAKQ,gBAAgB,IAAM4C,OAAOC,QAAS,CAAE1C,QAAS,MAAS4C,MAAM,QAC3E,MAAMyB,EAAMxH,GAAU5S,GAChBqa,QAtBdvF,eAAuBM,EAAMgF,GACzB,MAAME,EAAQ,CAAC,GAAI,GAAI,IACvB,IAAIC,EAAO,KACX,IAAK,MAAMjI,KAAKgI,EAAO,CACnB,MAAMzB,QAAUzD,EAAKa,SAAUuE,GAAMhC,OAAOiC,gBAAgBD,GAAI,aAAelI,EAAI,KAAO8H,GAC1F,IAAKvB,EAAEI,GAAI,MAAO,CAAEA,IAAI,EAAO1C,IAAKzQ,OAAO+S,EAAEtC,KAAKmE,MAAM,MAAM,IAE9D,IADa,OAATH,GAAiB1B,EAAE8B,WAAaJ,EAAKI,cAAYJ,EAAO,CAAEK,QAAStI,EAAGqI,WAAY9B,EAAE8B,WAAYE,QAAShC,EAAEgC,UAC1F,IAAjBhC,EAAE8B,WAAkB,CAAEJ,EAAO,CAAEK,QAAStI,EAAGqI,WAAY,EAAGE,QAAS,IAAM,KAAM,CACvF,CACA,MAAO,CAAE5B,IAAI,KAASsB,EAC1B,CAYyBO,CAAQ1F,EAAMgF,GAC/B,IAAKC,EAAGpB,GAAI,MAAM,IAAIhH,MAAMoI,EAAG9D,KAK/B,aAHMnB,EAAKa,SAAUuE,GAAMhC,OAAOiC,gBAAgBD,GAAI,aAAeH,EAAGO,QAAU,KAAOR,SACnFhF,EAAKa,SAAS,IAAMJ,SAASQ,OAASR,SAASQ,MAAMC,aACrDlB,EAAK8D,eAAe,KACnB,CAAEjE,UAASG,OACrB,CACD,MAAOmB,GAEH,YADMtB,EAAQuB,QACRD,CACV,CACJ,6CAGOzB,eAAsB9U,EAAMyW,EAAM,IACrC,MAAMxB,QAAEA,EAAOG,KAAEA,SAAeL,GAAc/U,GAC9C,IACI,aAAaoV,EAAKsB,QAAQ,YAAYC,YAC1C,CAAU,cACA1B,EAAQuB,OAClB,CACJ,SAGO1B,eAAsB9U,EAAMyW,EAAM,IACrC,MAAMxB,QAAEA,EAAOG,KAAEA,SAAeL,GAAc/U,GAC9C,IACI,aAAcoV,EAAKa,SAAS,IAAMJ,SAASM,eAAe,OAAOoB,YAAYhZ,QAAQ,UAAW,UAAUiZ,MAC9G,CAAU,cACAvC,EAAQuB,OAClB,CACJ,IC5MA,SAASuE,GAAM/a,GACX,MAAMgb,EAAM,GACZ,IAAK,MAAMxI,KAAMxS,EAAK8S,MAAOkI,EAAI5a,KAAK,CAAEJ,KAAM,CAAE0S,GAAIF,EAAGE,GAAIC,MAAOH,EAAGG,MAAOsI,OAAQzI,EAAGpC,OAAS8K,QAAS1I,EAAGvB,MAC5G,IAAK,MAAMuD,KAAMxU,EAAK+S,MAAOiI,EAAI5a,KAAK,CAAEJ,KAAM,CAAEqD,OAAQmR,EAAGI,KAAMuG,OAAQ3G,EAAGK,GAAIlC,MAAO6B,EAAG7B,OAASuI,QAAqB,WAAZ1G,EAAGE,KAAoB,cAAWnY,IAC9I,OAAOye,CACX,CAGA,MAmBMI,GAAO,qEACXlJ,GAAU,iBACVA,GAAU,aACVA,GAAU,uBACVA,GAAU,y7CA+BZ4C,eAAeuG,GAAWrb,EAAMsb,GAC5B,MAAMrG,QAAgBC,WAASC,SAC/B,IACI,MAAMC,QAAaH,EAAQI,QAAQ,CAAEC,kBAAmB,UAClDF,EAAKG,WAAW6F,GAAM,CAAEzF,UAAW,eACnCP,EAAKQ,gBAAgB,IAAM4C,OAAOC,QAAS,CAAE1C,QAAS,MAAS4C,MAAM,cACrEvD,EAAKa,SAAS,IAAMJ,SAASQ,OAASR,SAASQ,MAAMC,OAC3D,MAAMiF,QAAYnG,EAAKa,SAAS,EAAE+E,EAAK1B,EAAIkC,EAAIC,KAAQjD,OAAOQ,UAAUgC,EAAK1B,EAAIkC,EAAIC,GAAK,CAACV,GAAM/a,GA7D3F,85EA6DyGA,EAAK6S,IAAKyI,IACzH,IAAKC,EAAItC,GAAI,MAAM,IAAIhH,MAAMsJ,EAAIhF,KACjC,aAAanB,EAAKa,SAAUyF,GAAa,QAANA,EAAclD,OAAOmD,MAAQnD,OAAOoD,MAAQN,EACnF,CAAU,cACArG,EAAQuB,OAClB,CACJ,6CAKO1B,eAAsB9U,EAAMyW,EAAM,IACrC,MAAMoF,QAAYR,GAAWrb,EAAM,OACnC,OAAOmE,OAAOyQ,KAAKiH,EAAK,SAC5B,SAKO/G,eAAsB9U,EAAMyW,EAAM,IACrC,IAAIqF,QAAYT,GAAWrb,EAAM,OAIjC,OAHA8b,EAAMA,EAAIvd,QAAQ,UAAW,UACxB,WAAWE,KAAKqd,KAAMA,EAAMA,EAAIvd,QAAQ,OAAQ,4CAChD,cAAcE,KAAKqd,KAAMA,EAAMA,EAAIvd,QAAQ,IAAK,sEAC9Cud,CACX,IC3FA,MAAMC,GAAc,oDACdC,GAAgB,yEAAyED,kEAqB/F,MAAME,GAAkB,qFAiBxB,MAAMC,GAAO5J,GAAMxM,OAAOwM,GAAG/T,QAAQ,MAAO,OAAOA,QAAQ,MAAO,OAG5D4d,GAAU,CAAEC,GAAI,OAAQC,GAAI,QAASC,GAAI,KAAMC,GAAI,QAGzD,SAASC,GAASvL,EAAKwL,GACnB,MAAM3D,EAAI5H,GAAQD,GACZkD,EAAQ,GAMd,OALAA,EAAM/T,KAAK,kBAAkB0Y,EAAErJ,SAC/B0E,EAAM/T,KAAK,oBAAoB0Y,EAAEpJ,WAC7BoJ,EAAEnJ,OAAS8M,GAAmB,SAARxL,IAAiBkD,EAAM/T,KAAK,wBAAwB0Y,EAAEnJ,SAC5E8M,GAAStI,EAAM/T,KAAK,sBACR,YAAZ0Y,EAAElJ,OAAqBuE,EAAM/T,KAAK,oBAC/B+T,CACX,CAIA,SAASuI,GAAYC,EAAQC,EAAWnK,GACpC,MAAMoK,EAAQ,GACd,IAAIC,EAAMH,EACV,KAAOG,GACHD,EAAME,QAAQD,GACdA,EAAMF,EAAUE,GAEpB,OAAOD,EAAMtc,IAAIkS,GAAKmB,KAAK,IAC/B,CAKA,SAASiE,GAAWrF,EAAIwK,EAAaJ,EAAWK,EAAShJ,EAAQxB,GAC7D,MAAMyK,EAAM,IAAInF,OAAO9D,GAEjBE,EAAQ,GAEd,GAHgBnD,GAAWwB,EAAGvB,KAGjB,CAETkD,EAAM/T,KAAK,GAAG8c,IAAMzK,EAAID,EAAGE,SAASwJ,GAAI1J,EAAGG,aAE3C,MAAMqF,EAAOgF,EAAYxK,EAAGE,KAAO,GAC/BsF,EAAK9Y,OAAS,GACdiV,EAAM/T,KAAK,GAAG8c,iBAAmBf,GAAQc,IAAY,UAEzD,IAAK,MAAME,KAAMX,GAAShK,EAAGvB,KAAK,GAC9BkD,EAAM/T,KAAK,GAAG8c,IAAMC,KAExB,IAAK,MAAMC,KAAOpF,EACd7D,EAAM/T,KAAKyX,GAAWuF,EAAKJ,EAAaJ,EAAWK,EAAShJ,EAAS,EAAGxB,IAE5E0B,EAAM/T,KAAK,GAAG8c,KAClB,KAAO,CAEH/I,EAAM/T,KAAK,GAAG8c,IAAMzK,EAAID,EAAGE,SAASwJ,GAAI1J,EAAGG,aAC3C,IAAK,MAAMwK,KAAMX,GAAShK,EAAGvB,KAAK,GAC9BkD,EAAM/T,KAAK,GAAG8c,IAAMC,KAExBhJ,EAAM/T,KAAK,GAAG8c,KAClB,CAEA,OAAO/I,EAAMP,KAAK,KACtB,CA0DA,MAAMyJ,GAAU,CAAEC,OAAQ,QAASJ,IAAK,GAAIK,QAAS,GAMrDzI,eAAe0I,GAAMxd,GACjB,MAAMyd,GAAEA,SAAaC,OAAO,mBACtBC,EAAS,IAAIF,EACnB,IACI,MAAMG,EAhEd,SAAmB5d,GAGf,MAAMgT,EAAO,IAAI7J,IACX8J,EAAS,CAAA,EACTR,EAAOC,IACT,GAAIO,EAAOP,GAAK,OAAOO,EAAOP,GAC9B,MAAMQ,EAAO,KAAOpN,OAAO4M,GAAInU,QAAQ,iBAAkB,KACzD,IAAI4U,EAAID,EAAMvF,EAAI,EAClB,KAAOqF,EAAKlT,IAAIqT,IAAIA,EAAID,EAAO,IAAOvF,IAGtC,OAFAqF,EAAK/F,IAAIkG,GACTF,EAAOP,GAAMS,EACNA,GAILyJ,EAAY,CAAA,EACZI,EAAc,CAAA,EACpB,IAAK,MAAMxK,KAAMxS,EAAK8S,MACdN,EAAGpC,QACHwM,EAAUpK,EAAGE,IAAMF,EAAGpC,MACjB4M,EAAYxK,EAAGpC,SAAQ4M,EAAYxK,EAAGpC,OAAS,IACpD4M,EAAYxK,EAAGpC,OAAOhQ,KAAKoS,IAKnC,MAAMoF,EAAW5X,EAAK8S,MAAMO,OAAOb,IAAOA,EAAGpC,OAEvCyN,EAAS,GAGfA,EAAOzd,KAAK,cAAc+b,GAAQnc,EAAK6S,MAAQ,UAG/C,IAAK,MAAML,KAAMoF,EACbiG,EAAOzd,KAAKyX,GAAWrF,EAAIwK,EAAaJ,EAAW5c,EAAK6S,IAAK,EAAGJ,IAIpE,IAAK,MAAM+B,KAAMxU,EAAK+S,MAAO,CAGzB,IAAIT,EAAI,GAFIoK,GAAYlI,EAAGI,KAAMgI,EAAWnK,SAChCiK,GAAYlI,EAAGK,GAAI+H,EAAWnK,KAEtC+B,EAAG7B,QAAOL,GAAK,MAAM4J,GAAI1H,EAAG7B,WAChB,WAAZ6B,EAAGE,OAAmBpC,GAAK,6BAC/BuL,EAAOzd,KAAKkS,EAChB,CAEA,OAAOuL,EAAOjK,KAAK,OACvB,CAcsBhB,CAAU5S,GAClBub,QAAYoC,EAAOG,QAAQ,CAAEC,GAAI,CAAE9e,MAAO2e,GAASI,QAASX,KAClE,IAAIvB,QAAY6B,EAAOM,OAAO1C,EAAI2C,QAAS3C,EAAI4C,eAG/C,OAFArC,EArJR,SAA6BA,GASzB,MAAM/C,GANN+C,EAAMA,EAAIvd,QAAQ,qCAAsC,CAAC6f,EAAWC,EAAOC,IAGhE,QAAQD,KADCC,EAAM/f,QAAQ,wCAAyC,eAI3DggB,QAAQ,UACxB,GAAIxF,GAAO,EAAG,OAAO+C,EAAIxP,MAAM,EAAGyM,GAAOkD,GAAkBH,EAAIxP,MAAMyM,GACrE,MAAMvF,EAAIsI,EAAIyC,QAAQ,KACtB,OAAOzC,EAAIxP,MAAM,EAAGkH,EAAI,GAAKyI,GAAkBH,EAAIxP,MAAMkH,EAAI,EACjE,CAwIcgL,CAAoB1C,GAC1BA,EA3KR,SAAoBA,GAMhB,MAAM/C,GADN+C,GADAA,EAAMA,EAAIvd,QAAQ,8BAA+B,eAAewd,OACtDxd,QAAQ,8BAA+B,gBAAgBwd,QACjDwC,QAAQ,UACxB,GAAIxF,GAAO,EAAG,OAAO+C,EAAIxP,MAAM,EAAGyM,GAAOiD,GAAgBF,EAAIxP,MAAMyM,GACnE,MAAMvF,EAAIsI,EAAIyC,QAAQ,KACtB,OAAOzC,EAAIxP,MAAM,EAAGkH,EAAI,GAAKwI,GAAgBF,EAAIxP,MAAMkH,EAAI,EAC/D,CAiKciL,CAAW3C,GACVA,CACX,CACQ,cACE6B,EAAOrH,MAAMqC,MAAM,QACrBgF,EAAOe,QAAUf,EAAOe,OAAOC,iBAAiBhB,EAAOe,OAAOC,WACtE,CACJ,6CAGO7J,eAAsB9U,EAAMyW,EAAM,IACrC,MAAQmI,QAASC,SAAgBnB,OAAO,SAClC5B,QAAY0B,GAAMxd,GAElB0b,EAAII,EAAIra,MAAM,iDACdqd,EAAIpD,EAAIqD,WAAWrD,EAAE,IAAM,IAC3BsD,EAAU,GAAK7H,KAAK8H,IAAI,IAAK9H,KAAK+H,IAAI,IAAK,KAAOJ,IACxD,aAAaD,EAAM1a,OAAOyQ,KAAKkH,GAAM,CAAEkD,YAAWG,MAAMC,UAC5D,SAGOtK,eAAsB9U,EAAMyW,EAAM,IACrC,aAAa+G,GAAMxd,EACvB,IC1KA,SAASqf,GAAQ1M,GACb,MAAMwB,EAAQrO,OAAO6M,GAAO+H,MAAM,MAIlC,MAAO,CAFGvD,KAAKmI,MAAMnI,KAAK+H,OAAO/K,EAAM5T,IADtB+R,GAAM,IAAIA,GAAGiN,OAAO,CAACC,EAAGC,IAAOD,GAAK,WAAW/gB,KAAKghB,GAX3D,KACE,KAUiF,KARnF,IAUAtI,KAAKmI,MAXJ,GAWUnL,EAAMjV,OATjB,IAWd,CAOA,SAAS0T,GAAU5S,GACf,MAAM8S,EAAQ,GACR4M,EAAS,GAITC,EAAW,IAAIxW,IAAInJ,EAAK8S,MAAMO,OAAOb,GAAMxB,GAAWwB,EAAGvB,MAAM1Q,IAAIiS,GAAMA,EAAGE,KAC5EgF,EAAa,CAAA,EACnB,IAAK,MAAMlF,KAAMxS,EAAK8S,MACdN,EAAGpC,QAAQsH,EAAWlF,EAAGpC,OAASsH,EAAWlF,EAAGpC,QAAU,IAAIhQ,KAAKoS,GAE3E,MAAMoN,EAAa3H,IACf,IAAK,MAAMwH,KAAO/H,EAAWO,IAAQ,GAAK,CACtC,IAAKjH,GAAWyO,EAAGxO,KAAM,OAAOwO,EAAG/M,GACnC,MAAMmG,EAAI+G,EAAUH,EAAG/M,IACvB,GAAImG,EAAG,OAAOA,CAClB,CACA,OAAO,MAELgH,EAAcnN,GAAQiN,EAAS7f,IAAI4S,IAAOkN,EAAUlN,IAAQA,EAClE,IAAK,MAAMF,KAAMxS,EAAK8S,MAAO,CACzB,MAAMgG,EAAI5H,GAAQsB,EAAGvB,KACrB,GAAID,GAAWwB,EAAGvB,KAAM,CACpByO,EAAOtf,KAAK,CACRsS,GAAIF,EAAGE,GACPoN,MAAOtN,EAAGpC,MACV7S,KAAM,OACNyZ,MAAO,CAEH+I,QAtDJ,GAuDIC,UAAWxN,EAAGG,MAAOsN,eAAgB,MACrCC,gBAAiBnP,GAAMoP,cAAe,GAAIC,gBAAiB,IAAKC,UAAWvH,EAAEnJ,KAC7EF,KAAMqJ,EAAErJ,KAAM6Q,YAAa,GAAK5Q,OAAQoJ,EAAEpJ,OAAQ6Q,UAAW,KAGrE,QACJ,CACA,MAAMC,EAAwB,YAAZ1H,EAAElJ,MACpB,IAAKkP,EAAG2B,GAAKpB,GAAQ7M,EAAGG,OACpB6N,IAAa1B,GAxDN,GAwDuB2B,GAvDvB,IAwDX3N,EAAM1S,KAAK,CACPsS,GAAIF,EAAGE,GACPoN,MAAOtN,EAAGpC,MACV7S,KAAMijB,EAAY,UAAY,OAC9BxJ,MAAO,CACHnX,KAAM,CAACif,EAAG2B,GAAIC,OAAQF,EAAY,EAAI,EAAGD,UAAW,IAEpD9Q,KAAMqJ,EAAErJ,KAAMC,OAAQoJ,EAAEpJ,OACxBsQ,UAAWxN,EAAGG,MAAOsN,eAAgB,SAAUI,UAAWvH,EAAEnJ,KAC5DwQ,cAAe,GAAID,gBAAiBnP,KAGhD,CACA,IAAI4P,EAAM,EAqBV,MAAO,CAAE7N,QAAO4M,SAAQ3M,MApBV/S,EAAK+S,MAAMxS,IAAKiU,IAC1BmM,IACA,MAAMC,EAAqB,WAAZpM,EAAGE,KAClB,MAAO,CACHhC,GAAI,IAAMiO,EAAKtd,OAAQwc,EAAWrL,EAAGI,MAAOuG,OAAQ0E,EAAWrL,EAAGK,IAClEmC,MAAO,CAEH+I,OArFD,IAsFCQ,UAAW,IAAKM,UAAU,EAC1BnR,OAAQkR,EAAS1P,GAAQ,UAAUxB,OAASgB,GAAKC,KACjDmQ,SAAUF,EAAS,CAAC,EAAG,QAAKrkB,EAC5ByjB,UAAWxL,EAAG7B,OAAS,GACvBuN,gBAAiBnP,GAAMoP,cAAe,KAAME,UAAW3P,GAAKf,KAE5DoR,iBAAiB,EACjBC,YAAatQ,GAAKG,UAAWoQ,eAAgBvQ,GAAKI,UAAWoQ,gBAAiB,SAC9EC,iBAAiB,MAKjC,CAMA,MAAM/F,GAAO,qEACXlJ,GAAU,spDAkEZ,MAAMkP,GAAU,qEACdlP,GAAU,cACVA,GAAU,aACVA,GAAU,qqGA7BL4C,eAAsB9U,EAAMyW,EAAM,IACrC,MAAMxB,QAAgBC,WAASC,SAC/B,IACI,MAAMC,QAAaH,EAAQI,QAAQ,CAAEC,kBAAmB,IAClD+L,EAAO,GACbjM,EAAKkM,GAAG,YAAaxkB,GAAKukB,EAAKjhB,KAAKtD,EAAEykB,UACtCnM,EAAKkM,GAAG,UAAW5F,IAAwB,UAAbA,EAAEne,QAAoB8jB,EAAKjhB,KAAK,KAAOsb,EAAE/L,gBACjEyF,EAAKG,WAAW6F,GAAM,CAAEzF,UAAW,eACnCP,EAAKQ,gBAAgB,IAAM4C,OAAOC,QAAS,CAAE1C,QAAS,MAAS4C,MAAM,cACrEvD,EAAKa,SAAS,IAAMJ,SAASQ,OAASR,SAASQ,MAAMC,OAC3D,MAAMpC,EAAItB,GAAU5S,GACd6Y,QAAUzD,EAAKa,SAAS,EAAEuL,EAAIhG,EAAIiG,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,KAAQtJ,OAAOQ,UAAUwI,EAAIhG,EAAIiG,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,GAC7G,CAAC5N,EAAGlU,EAAK6S,IAlKL,GACA,GAHD,KAoKqC9B,IA/JpC,GACD,MA+JP,IAAK8H,EAAEI,GAAI,MAAM,IAAIhH,MAAM,uBAAyBnM,OAAO+S,EAAEtC,KAAKmE,MAAM,MAAM,IAC9E,MAAMa,QAAYnG,EAAKa,SAAS,IAAMuC,OAAOuJ,QAC7C,IAAKxG,EAAItC,GAAI,MAAM,IAAIhH,MAAM,kBAAoBsJ,EAAIhF,KACrD,OAAOpS,OAAOyQ,KAAK2G,EAAI4D,IAAIzE,MAAM,KAAK,GAAI,SAC9C,CAAU,cACAzF,EAAQuB,OAClB,CACJ,SAwEO1B,eAAsB9U,EAAMyW,EAAM,IACrC,MAAMxB,QAAgBC,WAASC,SAC/B,IACI,MAAMC,QAAaH,EAAQI,UACrBgM,EAAO,GACbjM,EAAKkM,GAAG,YAAaxkB,GAAKukB,EAAKjhB,KAAKtD,EAAEykB,UACtCnM,EAAKkM,GAAG,UAAW5F,IAAwB,UAAbA,EAAEne,QAAoB8jB,EAAKjhB,KAAK,KAAOsb,EAAE/L,gBACjEyF,EAAKG,WAAW6L,GAAS,CAAEzL,UAAW,eACtCP,EAAKQ,gBAAgB,IAAM4C,OAAOwJ,WAAY,CAAEjM,QAAS,MAAS4C,MAAM,cACxEvD,EAAKa,SAAS,IAAMJ,SAASQ,OAASR,SAASQ,MAAMC,OAC3D,MAAMpC,EAAItB,GAAU5S,GACd6Y,QAAUzD,EAAKa,SAAS,EAAEuL,EAAIhG,EAAIiG,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,KAAQtJ,OAAOyJ,aAAaT,EAAIhG,EAAIiG,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,GAChH,CAAC5N,EAAGlU,EAAK6S,IA9PL,GACA,GAHD,KAgQqC9B,IA3PpC,GACD,MA2PP,IAAK8H,EAAEI,GAAI,MAAM,IAAIhH,MAAM,0BAA4BnM,OAAO+S,EAAEtC,KAAKmE,MAAM,MAAM,IACjF,MAAMa,QAAYnG,EAAKa,SAAS,IAAMuC,OAAO0J,WAC7C,IAAK3G,EAAItC,GAAI,MAAM,IAAIhH,MAAM,qBAAuBsJ,EAAIhF,KACxD,OAAOgF,EAAIO,GACf,CAAU,cACA7G,EAAQuB,OAClB,CACJ,ICnRA,MAAM2L,GAAM5mB,OAAO6mB,YAAY7mB,OAAOyD,QAAQuQ,IAAShP,IAAI,EAAE0Q,EAAKuC,MAC9D,MAAM6O,EAAI,CAAE5S,KAAM+D,EAAE/D,KAAMC,OAAQ8D,EAAE9D,OAAQ4S,MAAO9O,EAAE7D,MAGrD,MAFgB,YAAZ6D,EAAE5D,QAAqByS,EAAEzS,MAAQ,WACjC4D,EAAEpD,QAAOiS,EAAEjS,OAAQ,GAChB,CAACa,EAAKoR,MAajB,MAAMjH,GAAO,qEACXlJ,GAAU,aACVA,GAAU,iIAIAsD,KAAKC,UAAU0M,grdA8U3BrN,eAAeC,GAAc/U,GACzB,MAAMiV,QAAgBC,WAASC,SAC/B,IACI,MAAMC,QAAaH,EAAQI,QAAQ,CAAEC,kBAAmB,IAClD+L,EAAO,GACbjM,EAAKkM,GAAG,YAAaiB,GAAMlB,EAAKjhB,KAAKmiB,EAAGhB,UACxCnM,EAAKkM,GAAG,UAAW5F,IAAwB,UAAbA,EAAEne,QAAoB8jB,EAAKjhB,KAAK,KAAOsb,EAAE/L,gBACjEyF,EAAKG,WAAW6F,GAAM,CAAEzF,UAAW,eACnCP,EAAKQ,gBAAgB,IAAM4C,OAAOC,QAAS,CAAE1C,QAAS,MAAS4C,MAAM,cACrEvD,EAAKa,SAAS,IAAMJ,SAASQ,OAASR,SAASQ,MAAMC,OAG3D,MAAMkM,EAAM,CAAEC,QAAS,GAAIC,QAAS,KAC9B1H,IAAEA,EAAG2H,QAAEA,GAxWrB,SAAmB3iB,GACf,MAAMgb,EAAM,GACZ,IAAK,MAAMxI,KAAMxS,EAAK8S,MAAOkI,EAAI5a,KAAK,CAAEsS,GAAIF,EAAGE,GAAIC,MAAOH,EAAGG,MAAO1B,IAAKuB,EAAGvB,KAAO,OAAQgK,OAAQzI,EAAGpC,OAAS,OAC/G,IAAK,MAAMoE,KAAMxU,EAAK+S,MAAOiI,EAAI5a,KAAK,CAAEiD,OAAQmR,EAAGI,KAAMuG,OAAQ3G,EAAGK,GAAIlC,MAAO6B,EAAG7B,OAAS,GAAI1B,IAAiB,WAAZuD,EAAGE,KAAoB,SAAW,KACtI,MAAO,CAAEsG,MAAK2H,QAAS3iB,EAAK6S,IAChC,CAmWiCD,CAAU5S,GAC7Bub,QAAYnG,EAAKa,SAAS,EAAEnZ,EAAG0e,EAAIlJ,KAAOkG,OAAOQ,UAAUlc,EAAG0e,EAAIlJ,GAAI,CAAC0I,EAAK2H,EAASH,IAC3F,IAAKjH,EAAItC,GAAI,MAAM,IAAIhH,MAAMsJ,EAAIhF,KAAOgF,EAAIxP,MAAQ,KAAOwP,EAAIxP,MAAQ,KACvE,MAAO,CAAEkJ,UAASG,OAAMmG,MAC3B,CACD,MAAOhF,GAEH,YADMtB,EAAQuB,QACRD,CACV,CACJ,6CAIOzB,eAAsB9U,EAAMyW,EAAM,IACrC,MAAMxB,QAAEA,EAAOG,KAAEA,SAAeL,GAAc/U,GAC9C,IACI,MAAMkW,QAAWd,EAAKwN,EAAE,cACxB,aAAa1M,EAAGS,YACpB,CAAU,cACA1B,EAAQuB,OAClB,CACJ,SAUO1B,eAAsB9U,EAAMyW,EAAM,IACrC,MAAMxB,QAAEA,EAAOG,KAAEA,EAAImG,IAAEA,SAAcxG,GAAc/U,GACnD,IACI,IAAI6iB,QAAczN,EAAK0N,MAAM,aAAc5M,GAAMA,EAAG6M,WASpD,OARAF,EAAQA,EAAMtkB,QAAQ,gBAAiB,CAACykB,EAAI3E,KACxC,IAAImB,EAAInB,EAKR,MAJK,WAAW5f,KAAK+gB,KAAIA,EAAI,sCAAwCA,GACrEA,EAAIA,EAAEjhB,QAAQ,iBAAkB,WAAWgd,EAAIuD,MAC/CU,EAAIA,EAAEjhB,QAAQ,kBAAmB,YAAYgd,EAAIkF,MACjDjB,EAAIA,EAAEjhB,QAAQ,6CAA8C,IACrD,OAAOihB,OAEXqD,EAAMtkB,QAAQ,UAAW,UAAUiZ,MAC9C,CAAU,cACAvC,EAAQuB,OAClB,CACJ,ICtZA,MAAMyM,GAAM1nB,OAAO6mB,YAAY7mB,OAAOyD,QAAQuQ,IAAShP,IAAI,EAAE0Q,EAAKuC,KAAO,CAACvC,EAAK,CAAExB,KAAM+D,EAAE/D,KAAMC,OAAQ8D,EAAE9D,OAAQC,KAAM6D,EAAE7D,SACnHuT,GAAW1N,KAAKC,UAAUwN,IAC1BE,GAAY3N,KAAKC,UAAU/E,IAE3B0K,GAAO,qEACXjJ,GAAS,qBACTD,GAAU,iBACVA,GAAU,yCAESnB,8LAQTmS,kBACCC,kBACA3N,KAAKC,UAAU,QAAQ1E,gEAChByE,KAAKC,UAAU1E,2wgBAmWnC+D,eAAesO,GAAkBpjB,GAC7B,MAAMiV,QAAgBC,WAASC,SAC/B,IACI,MAAMC,QAAaH,EAAQI,QAAQ,CAAEC,kBAAmB,IAClD+L,EAAO,GACbjM,EAAKkM,GAAG,YAAaxkB,GAAKukB,EAAKjhB,KAAKtD,EAAEykB,UACtCnM,EAAKkM,GAAG,UAAW5F,IAAwB,UAAbA,EAAEne,QAAoB8jB,EAAKjhB,KAAK,WAAasb,EAAE/L,gBACvEyF,EAAKG,WAAW6F,GAAM,CAAEzF,UAAW,eACnCP,EAAKQ,gBAAgB,IAAM4C,OAAOC,QAAS,CAAE1C,QAAS,MAAS4C,MAAM,cACrEvD,EAAKa,SAAS,IAAMJ,SAASQ,OAASR,SAASQ,MAAMC,OAC3D,MAAM+M,EAzYd,SAAmBrjB,GACf,MAAMgb,EAAM,GACZ,IAAK,MAAMxI,KAAMxS,EAAK8S,MAAOkI,EAAI5a,KAAK,CAAEsS,GAAIF,EAAGE,GAAIC,MAAOH,EAAGG,MAAO1B,IAAKuB,EAAGvB,KAAO,OAAQgK,OAAQzI,EAAGpC,QACtG,IAAK,MAAMoE,KAAMxU,EAAK+S,MAAOiI,EAAI5a,KAAK,CAAEiD,OAAQmR,EAAGI,KAAMuG,OAAQ3G,EAAGK,GAAIlC,MAAO6B,EAAG7B,OAAS,GAAIiO,OAAoB,WAAZpM,EAAGE,OAC1G,MAAO,CAAEiO,QAAS3iB,EAAK6S,IAAKmI,MAChC,CAoYoBpI,CAAU5S,GAChBub,QAAYnG,EAAKa,SAAUoN,GAAQ7K,OAAOQ,UAAUqK,GAAMA,GAChE,IAAK9H,EAAItC,GAAI,MAAM,IAAIhH,MAAMsJ,EAAIhF,KAAO,oBAExC,aADMnB,EAAKa,SAAS,IAAMJ,SAASQ,OAASR,SAASQ,MAAMC,OACpD,CAAErB,UAASG,OAAMmG,MAC3B,CAAC,MAAOze,GAEL,YADMmY,EAAQuB,QACR1Z,CACV,CACJ,6CAGOgY,eAAsB9U,EAAMyW,EAAM,IACrC,MAAMxB,QAAEA,EAAOG,KAAEA,SAAegO,GAAkBpjB,GAClD,IACI,aAAaoV,EAAKsB,QAAQ,QAAQC,YACtC,CAAU,cACA1B,EAAQuB,OAClB,CACJ,SAOO1B,eAAsB9U,EAAMyW,EAAM,IACrC,MAAMxB,QAAEA,EAAOG,KAAEA,EAAImG,IAAEA,SAAc6H,GAAkBpjB,GACvD,IACI,IAAI8b,QAAY1G,EAAKa,SAAS,IAAMJ,SAASe,cAAc,yBAAyBmM,WACpF,MAAMO,EAAexH,EAAIra,MAAM,eAC/B,IAAK6hB,EAAc,MAAM,IAAIrR,MAAM,yBACnC,IAAIsR,EAAUD,EAAa,GACtB/kB,QAAQ,eAAgB,UAAUgd,EAAIuD,MACtCvgB,QAAQ,gBAAiB,WAAWgd,EAAIkF,MAC7C8C,EAAUA,EAAQhlB,QAAQ,KAAM,iBAAiBgd,EAAIuD,KAAKvD,EAAIkF,OAC9D3E,EAAMyH,EAAUzH,EAAIxP,MAAMgX,EAAa,GAAGpkB,QAG1C,MAAMskB,QR9XP1O,eAA4BlW,GAC/B,QAAwBrC,IAApB6V,GAAWxT,GAAoB,CAC/B,MAAM6kB,EAAM1R,GAAOnT,GACb2c,QAAYmI,MAAMD,GACxB,IAAKlI,EAAItC,GAAI,MAAM,IAAIhH,MAAM,YAAYsJ,EAAIoI,WAAWF,KACxDrR,GAAWxT,SAAa2c,EAAI5L,MAChC,CACA,OAAOyC,GAAWxT,EACtB,CQsXmCglB,CAAa,iBAClCC,EAAS,UAAUL,uBAAkCzS,yCACzBwK,EAAIuD,cAAcvD,EAAIkF,yBAGxD,OAFA3E,EAAMA,EAAIvd,QAAQ,eAAgBslB,EAAS,gBAC3C/H,EAAMA,EAAIvd,QAAQ,UAAW,UACtBud,CACX,CAAU,cACA7G,EAAQuB,OAClB,CACJ,IC1bA,MAAMsN,GAAQC,EAAOA,QAACC,gBAActG,oBAAAA,UAAAA,oBAAAA,SAAAA,QAAAA,OAAAA,cAAAA,YAAAA,KAAAA,oBAAAA,SAAAA,SAAAA,KAAAA,GAAAA,WAAAA,EAAAA,QAAAA,eAAAA,EAAAA,KAAAA,IAAAA,IAAAA,qBAAAA,SAAAA,SAAAA,OAIpC,IAAIuG,GAAQ,iDAiCLnP,eAAsB9U,EAAMyW,EAAM,IACrC,MAAMxB,QAAgBC,WAASC,SAC/B,IACI,MAAMC,QAAaH,EAAQI,QAAQ,CAAEC,kBAAmB,IAClD+L,EAAO,GACbjM,EAAKkM,GAAG,YAAaxkB,GAAKukB,EAAKjhB,KAAKtD,EAAEykB,UACtCnM,EAAKkM,GAAG,UAAW5F,IAAwB,UAAbA,EAAEne,QAAoB8jB,EAAKjhB,KAAK,KAAOsb,EAAE/L,OAAOrD,MAAM,EAAG,cACjF8I,EAAKG,YAtCD,OAAV0O,KACAA,GAAQlG,EAAGmG,aAAa,GAAGJ,gBAAoB,QAC1CvlB,QAAQ,oCAAqC,IAAM4T,GAAS,eAC5D5T,QAAQ,qCAAqC,IAAM2T,GAAU,UAC7D3T,QAAQ,yCAAyC,IAAM2T,GAAU,cACjE3T,QAAQ,sCAAsC,IAAM2T,GAAU,WAC9D3T,QAAQ,qCAAqC,IAAM2T,GAAU,mBAE/D+R,IA8B8B,CAAEtO,UAAW,eACxCP,EAAKQ,gBAAgB,IAAyB,UAAnBC,SAASC,OAAwC,SAAnBD,SAASC,MAAkB,CAAEC,QAAS,MAAS4C,MAAM,QACpH,MAAMwL,QAAa/O,EAAKa,SAAS,KAAO,CAAEmO,EAAGvO,SAASC,MAAOS,IAAKiC,OAAO6L,SACzE,GAAe,UAAXF,EAAKC,EAAe,MAAM,IAAInS,MAAM,gBAAkBkS,EAAK5N,IAAM,MAAQ8K,EAAK/U,MAAM,EAAG,GAAGsH,KAAK,QACnG,MAAM0Q,EA3Bd,SAAmBtkB,GACf,MAAM8S,EAAQ9S,EAAK8S,MAAMvS,IAAKqF,IAC1B,MAAMyc,EAAI,CAAE3P,GAAI9M,EAAE8M,GAAIC,MAAO/M,EAAE+M,MAAO+B,KAAM9O,EAAEqL,KAE9C,OADIrL,EAAEwK,QAAOiS,EAAEpH,OAASrV,EAAEwK,OACnBiS,IAELtP,EAAQ/S,EAAK+S,MAAMxS,IAAKzD,IAC1B,MAAMulB,EAAI,CAAE/P,EAAGxV,EAAE8X,KAAMwP,EAAGtnB,EAAE+X,IAG5B,OAFI/X,EAAE6V,QAAO0P,EAAEkC,EAAIznB,EAAE6V,OACN,WAAX7V,EAAE4X,OAAmB2N,EAAEzB,QAAS,GAC7ByB,IAEX,MAAO,CAAE/E,OAAQ,SAAUqF,QAAS3iB,EAAK6S,KAAO,KAAM4P,QAAS,GAAIC,QAAS,GAAI5P,QAAOC,QAC3F,CAcqBH,CAAU5S,GACjBub,QAAYnG,EAAKa,SAAS3D,GAAKkG,OAAOQ,UAAU1G,GAAIgS,GAC1D,IAAK/I,EAAItC,GAAI,MAAM,IAAIhH,MAAM,WAAasJ,EAAIhF,KAG9C,aAFMnB,EAAKa,SAAS,IAAMJ,SAASQ,OAASR,SAASQ,MAAMC,aACrDlB,EAAK8D,eAAe,WACb9D,EAAKsB,QAAQ,SAASC,YACvC,CAAU,cACA1B,EAAQuB,OAClB,CACJ,ICzDO,SAAS5D,GAAU5S,GAEtB,MAAMwkB,EAASxkB,EAAK8S,MAAMO,OAAOzN,GAAKoL,GAAWpL,EAAEqL,MAAM1Q,IAAIqF,IAAO,MAAMkT,EAAI5H,GAAQtL,EAAEqL,KAAM,MAAO,CAAEyB,GAAI9M,EAAE8M,GAAIC,MAAO/M,EAAE+M,MAAOsI,OAAQrV,EAAEwK,OAAS,KAAMqU,MAAO7e,EAAE6e,MAAOC,GAAI1kB,EAAK8S,MAAMyL,QAAQ3Y,GAAI6J,KAAMqJ,EAAErJ,KAAMC,OAAQoJ,EAAEpJ,OAAQiV,KAAM7L,EAAEnJ,QACvOmD,EAAQ9S,EAAK8S,MAAMO,OAAOzN,IAAMoL,GAAWpL,EAAEqL,MAAM1Q,IAAIqF,IAAO,MAAMkT,EAAI5H,GAAQtL,EAAEqL,KAAM,MAAO,CAAEyB,GAAI9M,EAAE8M,GAAIC,MAAO/M,EAAE+M,MAAOmD,MAAOlQ,EAAEkQ,MAAO8O,MAAOhf,EAAEgf,MAAO3J,OAAQrV,EAAEwK,OAAS,KAAMsU,GAAI1kB,EAAK8S,MAAMyL,QAAQ3Y,GAAIsK,QAAqB,YAAZ4I,EAAElJ,MAAqBH,KAAMqJ,EAAErJ,KAAMC,OAAQoJ,EAAEpJ,OAAQiV,KAAM7L,EAAEnJ,QACvRoD,EAAQ/S,EAAK+S,MAAMxS,IAAI,CAACzD,EAAG+nB,KAAO,CAAEnS,GAAI,IAAMmS,EAAGjQ,KAAM9X,EAAE8X,KAAMC,GAAI/X,EAAE+X,GAAIlC,MAAO7V,EAAE6V,OAAS,GAAIiO,OAAmB,WAAX9jB,EAAE4X,QAEzGoQ,EAAW,CAAA,EAAIN,EAAOzX,QAAQmH,GAAK4Q,EAAS5Q,EAAExB,IAAMwB,EAAE+G,QAASnI,EAAM/F,QAAQnH,GAAKkf,EAASlf,EAAE8M,IAAM9M,EAAEqV,QAC3G,MAAM8J,EAAMrS,IAAQ,MAAMmG,EAAI,GAAI,IAAIrF,EAAIsR,EAASpS,GAAK,KAAOc,GAAKqF,EAAEzY,KAAKoT,GAAIA,EAAIsR,EAAStR,GAAK,OAAOqF,GAExG,OADA9F,EAAMhG,QAAQjQ,IAAO,MAAMkoB,EAAK,IAAI7b,IAAI4b,EAAIjoB,EAAE+X,KAAM/X,EAAEmoB,UAAYF,EAAIjoB,EAAE8X,MAAMsQ,KAAK1F,GAAKwF,EAAGllB,IAAI0f,KAAO,OAC/F,CAAE3M,IAAK7S,EAAK6S,KAAO,KAAMC,QAAO0R,SAAQzR,QACnD,CAEO,MAAMoS,GAAY,qEACvBjT,GAAU,qXAOSxB,GAAKC,uBAAuBD,GAAKf,kBAAkBe,GAAKG,q7zBA0X7EiE,eAAeC,GAAc/U,GACzB,MAAMiV,QAAgBC,WAASC,SAC/B,IACI,MAAMC,QAAaH,EAAQI,QAAQ,CAAEC,kBAAmB,UAClDF,EAAKG,WAAW4P,GAAW,CAAExP,UAAW,eACxCP,EAAKQ,gBAAgB,IAAM4C,OAAOC,QAAS,CAAE1C,QAAS,MAAS4C,MAAM,cACrEvD,EAAKa,SAAS,IAAMJ,SAASQ,OAASR,SAASQ,MAAMC,OAC3D,MAAMiF,QAAYnG,EAAKa,SAAS3D,GAAKkG,OAAOQ,UAAU1G,GAAIM,GAAU5S,IACpE,IAAKub,EAAItC,GAAI,MAAM,IAAIhH,MAAM,sBAAwBsJ,EAAIhF,KAGzD,aAFMnB,EAAKa,SAAS,IAAMJ,SAASQ,OAASR,SAASQ,MAAMC,aACrDlB,EAAK8D,eAAe,KACnB,CAAEjE,UAASG,OACrB,CACD,MAAOmB,GAEH,YADMtB,EAAQuB,QACRD,CACV,CACJ,0DAGOzB,eAAsB9U,EAAMyW,EAAM,IACrC,MAAMxB,QAAEA,EAAOG,KAAEA,SAAeL,GAAc/U,GAC9C,IACI,aAAaoV,EAAKsB,QAAQ,cAAcC,YAC5C,CACQ,cACE1B,EAAQuB,OAClB,CACJ,SAGO1B,eAAsB9U,EAAMyW,EAAM,IACrC,MAAMxB,QAAEA,EAAOG,KAAEA,SAAeL,GAAc/U,GAC9C,IACI,aAAcoV,EAAKa,SAAS,IAAMJ,SAASM,eAAe,SAASoB,YAAYhZ,QAAQ,UAAW,UAAUiZ,MAChH,CACQ,cACEvC,EAAQuB,OAClB,CACJ,wBZnXA1B,eAA0BsQ,EAAK3O,EAAM,IACjC,IAAI6E,EAAOvb,GAAI0W,EAAK,QACfpJ,GAAOiO,KAAOA,EAAO,OAC1B,MAAMI,EAAIJ,EAAK9D,OAAOqC,cACtB,IAAK7L,GAAQ0N,GAAI,MAAM,IAAIzJ,MAAM,oBAAoBqJ,UAAa/f,OAAOuC,KAAKkQ,IAAS4F,KAAK,YAC5F,IAAIyR,EAAStlB,GAAI0W,EAAK,UACjBpJ,GAAOgY,KAASA,EAAS,OAC9B,MAAMhD,EAAIgD,EAAO7N,OAAOqC,cACxB,GAAU,QAANwI,GAAqB,QAANA,EAAa,MAAM,IAAIpQ,MAAM,sBAAsBoT,oBACtE,GAAU,QAANhD,IAAgB/S,GAAUgW,SAAS5J,GAAI,MAAM,IAAIzJ,MAAM,QAAQyJ,sBAAsBpM,GAAUsE,KAAK,SACxG,IarEJ,SAAgBxG,GAEZ,GAAIE,GAAMF,GAAI,CACV,IAAK,IAAIO,KAAKP,EACV,OAAO,EAEX,OAAO,CACX,CACA,OAAO,CACX,Cb4DSmY,CAAOH,GAAM,MAAM,IAAInT,MAAM,iDAClC,IclEK1E,GAHOH,EdqEAgY,EAAItS,Qc7DC,IAAb1F,EAAElO,QAKW,IAAbkO,EAAElO,QACEsO,GAAKJ,EAAE,IduDS,MAAM,IAAI6E,MAAM,6BcrE5C,IAAgB7E,EdsEZ,IAAKG,GAAM6X,EAAIrS,OAAQ,MAAM,IAAId,MAAM,2BACvC,MAAMjS,IezFmBwlB,ECuBpB3Z,GhBkE+BuZ,EgBlEdK,IDtBpB3S,MAAM/F,QAAQnH,IACRA,EAAEkQ,OAAoB,MAAXlQ,EAAE+M,QAAe/M,EAAE+M,MAAQ/M,EAAEkQ,OAASlQ,EAAEgf,OAAShf,EAAEgf,MAAM1lB,OAAS,KAAO0G,EAAEgf,MAAMhR,KAAK,KAAO,IAAM,OAC3G4R,GAHR,IAAsBA,Ef0FzB,MAAMnW,QAAYrB,GAAQ0N,KAC1B,aAAoB,QAAN2G,EAAchT,EAAIqW,OAASrW,EAAIsW,QAAQ3lB,EAAMyW,EAC/D","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,143,144,146]}
1
+ {"version":3,"file":"w-flowchart.umd.js","sources":["../node_modules/lodash-es/isArray.js","../node_modules/lodash-es/_freeGlobal.js","../node_modules/lodash-es/_root.js","../node_modules/lodash-es/_Symbol.js","../node_modules/lodash-es/_getRawTag.js","../node_modules/lodash-es/_objectToString.js","../node_modules/lodash-es/_baseGetTag.js","../node_modules/lodash-es/isObjectLike.js","../node_modules/lodash-es/isSymbol.js","../node_modules/lodash-es/_isKey.js","../node_modules/lodash-es/isObject.js","../node_modules/lodash-es/isFunction.js","../node_modules/lodash-es/_coreJsData.js","../node_modules/lodash-es/_isMasked.js","../node_modules/lodash-es/_toSource.js","../node_modules/lodash-es/_baseIsNative.js","../node_modules/lodash-es/_getNative.js","../node_modules/lodash-es/_getValue.js","../node_modules/lodash-es/_nativeCreate.js","../node_modules/lodash-es/_hashGet.js","../node_modules/lodash-es/_hashHas.js","../node_modules/lodash-es/_Hash.js","../node_modules/lodash-es/eq.js","../node_modules/lodash-es/_assocIndexOf.js","../node_modules/lodash-es/_hashClear.js","../node_modules/lodash-es/_hashDelete.js","../node_modules/lodash-es/_hashSet.js","../node_modules/lodash-es/_listCacheDelete.js","../node_modules/lodash-es/_ListCache.js","../node_modules/lodash-es/_listCacheClear.js","../node_modules/lodash-es/_listCacheGet.js","../node_modules/lodash-es/_listCacheHas.js","../node_modules/lodash-es/_listCacheSet.js","../node_modules/lodash-es/_Map.js","../node_modules/lodash-es/_getMapData.js","../node_modules/lodash-es/_isKeyable.js","../node_modules/lodash-es/_MapCache.js","../node_modules/lodash-es/_mapCacheClear.js","../node_modules/lodash-es/_mapCacheDelete.js","../node_modules/lodash-es/_mapCacheGet.js","../node_modules/lodash-es/_mapCacheHas.js","../node_modules/lodash-es/_mapCacheSet.js","../node_modules/lodash-es/memoize.js","../node_modules/lodash-es/_stringToPath.js","../node_modules/lodash-es/_memoizeCapped.js","../node_modules/lodash-es/_baseToString.js","../node_modules/lodash-es/_arrayMap.js","../node_modules/lodash-es/_castPath.js","../node_modules/lodash-es/toString.js","../node_modules/lodash-es/_toKey.js","../node_modules/lodash-es/get.js","../node_modules/lodash-es/_baseGet.js","../node_modules/lodash-es/_Stack.js","../node_modules/lodash-es/_stackClear.js","../node_modules/lodash-es/_stackDelete.js","../node_modules/lodash-es/_stackGet.js","../node_modules/lodash-es/_stackHas.js","../node_modules/lodash-es/_stackSet.js","../node_modules/lodash-es/_defineProperty.js","../node_modules/lodash-es/_baseAssignValue.js","../node_modules/lodash-es/_assignValue.js","../node_modules/lodash-es/_copyObject.js","../node_modules/lodash-es/_baseIsArguments.js","../node_modules/lodash-es/isArguments.js","../node_modules/lodash-es/isBuffer.js","../node_modules/lodash-es/stubFalse.js","../node_modules/lodash-es/_isIndex.js","../node_modules/lodash-es/isLength.js","../node_modules/lodash-es/_baseIsTypedArray.js","../node_modules/lodash-es/_baseUnary.js","../node_modules/lodash-es/_nodeUtil.js","../node_modules/lodash-es/isTypedArray.js","../node_modules/lodash-es/_arrayLikeKeys.js","../node_modules/lodash-es/_baseTimes.js","../node_modules/lodash-es/_isPrototype.js","../node_modules/lodash-es/_overArg.js","../node_modules/lodash-es/_nativeKeys.js","../node_modules/lodash-es/_baseKeys.js","../node_modules/lodash-es/isArrayLike.js","../node_modules/lodash-es/keys.js","../node_modules/lodash-es/_baseKeysIn.js","../node_modules/lodash-es/_nativeKeysIn.js","../node_modules/lodash-es/keysIn.js","../node_modules/lodash-es/_cloneBuffer.js","../node_modules/lodash-es/stubArray.js","../node_modules/lodash-es/_getSymbols.js","../node_modules/lodash-es/_arrayFilter.js","../node_modules/lodash-es/_arrayPush.js","../node_modules/lodash-es/_getPrototype.js","../node_modules/lodash-es/_getSymbolsIn.js","../node_modules/lodash-es/_baseGetAllKeys.js","../node_modules/lodash-es/_getAllKeys.js","../node_modules/lodash-es/_getAllKeysIn.js","../node_modules/lodash-es/_DataView.js","../node_modules/lodash-es/_Promise.js","../node_modules/lodash-es/_Set.js","../node_modules/lodash-es/_WeakMap.js","../node_modules/lodash-es/_getTag.js","../node_modules/lodash-es/_initCloneArray.js","../node_modules/lodash-es/_Uint8Array.js","../node_modules/lodash-es/_cloneArrayBuffer.js","../node_modules/lodash-es/_cloneRegExp.js","../node_modules/lodash-es/_cloneSymbol.js","../node_modules/lodash-es/_initCloneByTag.js","../node_modules/lodash-es/_cloneDataView.js","../node_modules/lodash-es/_cloneTypedArray.js","../node_modules/lodash-es/_baseCreate.js","../node_modules/lodash-es/isMap.js","../node_modules/lodash-es/_baseIsMap.js","../node_modules/lodash-es/isSet.js","../node_modules/lodash-es/_baseIsSet.js","../node_modules/lodash-es/_baseClone.js","../node_modules/lodash-es/_copyArray.js","../node_modules/lodash-es/_initCloneObject.js","../node_modules/lodash-es/_copySymbolsIn.js","../node_modules/lodash-es/_baseAssignIn.js","../node_modules/lodash-es/_copySymbols.js","../node_modules/lodash-es/_baseAssign.js","../node_modules/lodash-es/_arrayEach.js","../node_modules/wsemi/src/isstr.mjs","../node_modules/wsemi/src/isestr.mjs","../node_modules/wsemi/src/isobj.mjs","../node_modules/wsemi/src/isarr.mjs","../node_modules/wsemi/src/iser.mjs","../node_modules/wsemi/src/isundefined.mjs","../node_modules/wsemi/src/isnull.mjs","../node_modules/wsemi/src/isobj0.mjs","../node_modules/wsemi/src/isstr0.mjs","../node_modules/wsemi/src/isarr0.mjs","../node_modules/wsemi/src/isnan.mjs","../src/WFlowchart.mjs","../src/common/palette.mjs","../src/common/cdn.mjs","../src/p1/gen.mjs","../src/p2/gen.mjs","../src/p3/gen.mjs","../src/p4/gen.mjs","../src/p5/gen.mjs","../src/p6/gen.mjs","../src/p7/gen.mjs","../src/p8/gen.mjs","../src/p9/gen.mjs","../src/p10/gen.mjs","../node_modules/wsemi/src/iseobj.mjs","../node_modules/wsemi/src/isearr.mjs","../src/common/derive.mjs","../node_modules/lodash-es/cloneDeep.js"],"sourcesContent":null,"names":["isArray$1","Array","isArray","freeGlobal$1","global","Object","freeSelf","self","root$1","freeGlobal","Function","Symbol$1","root","Symbol","objectProto","prototype","hasOwnProperty","nativeObjectToString","toString","symToStringTag","toStringTag","undefined","baseGetTag","value","isOwn","call","tag","unmasked","e","result","getRawTag","objectToString","isObjectLike","isSymbol","reIsDeepProp","reIsPlainProp","isObject","type","isFunction","uid","coreJsData$1","maskSrcKey","exec","coreJsData","keys","IE_PROTO","funcToString","toSource","func","reIsHostCtor","funcProto","reIsNative","RegExp","replace","baseIsNative","test","getNative","object","key","getValue","nativeCreate$1","Hash","entries","index","length","this","clear","entry","set","eq","other","assocIndexOf","array","__data__","nativeCreate","size","has","get","data","splice","ListCache","pop","push","Map$1","getMapData","map","MapCache","hash","Map","string","memoize","resolver","TypeError","memoized","args","arguments","apply","cache","Cache","rePropName","reEscapeChar","stringToPath","charCodeAt","match","number","quote","subString","stringToPath$1","symbolProto","symbolToString","baseToString","iteratee","arrayMap","castPath","isKey","toKey","path","defaultValue","baseGet","Stack","pairs","LARGE_ARRAY_SIZE","defineProperty","defineProperty$1","baseAssignValue","configurable","enumerable","writable","assignValue","objValue","copyObject","source","props","customizer","isNew","newValue","baseIsArguments","propertyIsEnumerable","isArguments","isArguments$1","freeExports","exports","nodeType","freeModule","module","Buffer","isBuffer$1","isBuffer","reIsUint","isIndex","isLength","typedArrayTags","baseUnary","freeProcess","process","nodeUtil$1","types","require","binding","nodeIsTypedArray","nodeUtil","isTypedArray","isTypedArray$1","arrayLikeKeys","inherited","isArr","isArg","isBuff","isType","skipIndexes","n","baseTimes","String","isPrototype","Ctor","constructor","overArg","transform","arg","nativeKeys$1","isArrayLike","nativeKeys","baseKeys","baseKeysIn","nativeKeysIn","isProto","keysIn","allocUnsafe","stubArray","nativeGetSymbols","getOwnPropertySymbols","getSymbols","predicate","resIndex","arrayFilter","symbol","getSymbols$1","arrayPush","values","offset","getPrototype$1","getPrototypeOf","getSymbolsIn","getPrototype","getSymbolsIn$1","baseGetAllKeys","keysFunc","symbolsFunc","getAllKeys","getAllKeysIn","DataView$1","Promise$2","Set$2","WeakMap$1","mapTag","promiseTag","setTag","weakMapTag","dataViewTag","dataViewCtorString","DataView","mapCtorString","promiseCtorString","Promise","setCtorString","Set","weakMapCtorString","WeakMap","getTag","ArrayBuffer","resolve","ctorString","getTag$1","Uint8Array$1","Uint8Array","cloneArrayBuffer","arrayBuffer","byteLength","reFlags","symbolValueOf","valueOf","initCloneByTag","isDeep","dataView","buffer","byteOffset","cloneDataView","typedArray","cloneTypedArray","regexp","lastIndex","cloneRegExp","objectCreate","create","baseCreate","proto","baseCreate$1","nodeIsMap","isMap","isMap$1","nodeIsSet","isSet","isSet$1","argsTag","funcTag","objectTag","cloneableTags","baseClone","bitmask","stack","isFlat","isFull","input","initCloneArray","copyArray","isFunc","slice","copy","cloneBuffer","initCloneObject","copySymbolsIn","baseAssignIn","copySymbols","baseAssign","stacked","forEach","subValue","add","arrayEach","isstr","v","isestr","isobj","isarr","iser","isundefined","isnull","k","isobj0","isstr0","isarr0","isnan","LOADERS","p1","then","gen$9","p2","gen$8","p3","gen$7","p4","gen$6","p5","gen$5","p6","gen$4","p7","gen$3","p8","gen$2","p9","gen$1","p10","gen","SVG_MODES","PALETTE","blue","fill","stroke","text","shape","green","orange","purple","red","done","diamond","blueG","group","blueG2","greenG","greenG2","orangeG","purpleG","EDGE","line","textBg","haloColor","haloWidth","FONT","isGroupCls","cls","colorOf","PKG","mermaid10","graphre","nomnoml","cytoscape","g6","joint","logicflow","react","xyflow","dagre","elkjs","cdnUrl","rel","Error","cdnScript","cdnStyle","_textCache","nl","s","nodeShape","nd","qid","id","label","translate","dir","nodes","edges","used","qidMap","base","q","byId","filter","clsSet","classDefLines","p","clsToIds","classLines","ids","join","topGroupIds","standaloneNodes","renderSubgraph","gid","indent","g","lines","directChildren","nestedGroups","ng","edgeLines","ed","arrow","kind","lbl","from","to","async","renderFigPage","code","browser","chromium","launch","page","newPage","deviceScaleFactor","setContent","JSON","stringify","mermaidHtml","waitUntil","waitForFunction","document","title","timeout","msg","evaluate","el","getElementById","innerText","fonts","ready","err","close","opt","locator","screenshot","querySelector","vb","viewBox","baseVal","style","maxWidth","setAttribute","Math","ceil","width","height","innerHTML","trim","innerDir","childrenOf","nodeById","topNodes","renderNode","sp","repeat","kids","cid","clsByNodes","fillColor","strokeColor","textColor","sw","setup","window","__ready","__setupErr","catch","setupErr","r","c","idx","renderFig","ok","waitForTimeout","css","querySelectorAll","textContent","st","createElementNS","insertBefore","firstChild","out","remove","clsAlias","toLowerCase","clsDirs","buildClsDirectives","nlSp","nodeLabel","fromRef","toRef","src","fx","sweep","best","x","renderAndDetect","split","collisions","spacing","details","autofix","toEls","els","parent","classes","target","html","renderPage","mode","res","rd","md","m","__svg","__png","b64","svg","FONT_FAMILY","FONT_OVERRIDE","EDGE_HALO_STYLE","esc","DIR_MAP","TB","LR","BT","RL","styLines","isGroup","qualifiedId","nodeId","parentMap","parts","cur","unshift","childrenMap","dataDir","pad","sl","kid","baseOpt","layout","themeID","d2Svg","D2","import","d2inst","d2src","blocks","compile","fs","options","render","diagram","renderOptions","maskBlock","attrs","inner","indexOf","injectEdgeLabelHalo","injectFont","worker","terminate","default","sharp","w","parseFloat","density","min","max","png","toBuffer","measure","round","reduce","a","ch","combos","comboIds","firstLeaf","resolveEnd","combo","zIndex","labelText","labelPlacement","labelFontFamily","labelFontSize","labelFontWeight","labelFill","fillOpacity","lineWidth","isDiamond","h","radius","eid","dashed","endArrow","lineDash","labelBackground","labelStroke","labelLineWidth","labelPaintOrder","labelAutoRotate","htmlSvg","errs","on","message","gg","ns","rs","cv","ft","cz","ez","snap","__readySvg","renderFigSvg","snapSvg","CLS","fromEntries","o","color","ex","SEP","nodesep","ranksep","rankDir","$","outer","$eval","outerHTML","m0","PAL","PAL_JSON","EDGE_JSON","renderToReadyPage","fig","openTagMatch","openTag","logicflowCss","url","fetch","status","cdnFetchText","inject","__dir","dirname","fileURLToPath","_html","readFileSync","boot","t","__err","spec","l","groups","align","mi","font","items","i","fromSide","toSide","parentOf","anc","at","container","find","PAGE_HTML","inp","output","includes","iseobj","d","CLONE_DEEP_FLAG","genSvg","genPng"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,143,144,146]}
@@ -156,7 +156,7 @@ export default WFlowchart
156
156
  <br class="clear">
157
157
 
158
158
  <footer>
159
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.5</a> on Wed Jul 29 2026 22:36:23 GMT+0800 (台北標準時間) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
159
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.5</a> on Sat Aug 01 2026 22:21:27 GMT+0800 (台北標準時間) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
160
160
  </footer>
161
161
 
162
162
  <script>prettyPrint();</script>
package/docs/global.html CHANGED
@@ -644,7 +644,7 @@ fs.writeFileSync('flowchart.svg', svg)
644
644
  <br class="clear">
645
645
 
646
646
  <footer>
647
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.5</a> on Wed Jul 29 2026 22:36:23 GMT+0800 (台北標準時間) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
647
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.5</a> on Sat Aug 01 2026 22:21:27 GMT+0800 (台北標準時間) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
648
648
  </footer>
649
649
 
650
650
  <script>prettyPrint();</script>
package/docs/index.html CHANGED
@@ -71,7 +71,7 @@
71
71
  <br class="clear">
72
72
 
73
73
  <footer>
74
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.5</a> on Wed Jul 29 2026 22:36:23 GMT+0800 (台北標準時間) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
74
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.5</a> on Sat Aug 01 2026 22:21:27 GMT+0800 (台北標準時間) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
75
75
  </footer>
76
76
 
77
77
  <script>prettyPrint();</script>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "w-flowchart",
3
- "version": "1.0.6",
3
+ "version": "1.0.7",
4
4
  "main": "dist/w-flowchart.umd.js",
5
5
  "dependencies": {
6
6
  "@terrastruct/d2": "0.1.33",
package/src/p10/README.md CHANGED
@@ -15,6 +15,7 @@ p1~p9 為現成繪圖套件;**p10 是唯一「自寫 SVG 渲染器」產線**:
15
15
  - **群組/巢狀容器**:群組為 ELK 的 child node、其成員為該 node 的 `children`(支援多層巢狀);`elk.padding` 上方留標題空間;`hierarchyHandling:INCLUDE_CHILDREN` 確保**跨容器邊不會把成員拉出容器**。渲染時容器 rect 墊底(深度小先畫)+ 標題置頂粗體。
16
16
  - **邊**:依 source/target 之最近共同祖先容器(LCA)宣告(無共同容器則掛於 root)——ELK 對「宣告於某容器的邊」回傳之 section 座標相對該容器,故渲染時需對位;ELK 以 `edgeRouting:ORTHOGONAL` 算**正交直角路由**,輸出 sections 轉折點 → 本產線繪 polyline + 自繪三角箭頭。座標依邊所在容器之絕對位移還原。
17
17
  - **流向**:`dir` → ELK `elk.direction`(TB→DOWN、LR→RIGHT)。
18
+ - **邊進出方位指定(選填)**:edge 可加 `fromSide` / `toSide`(值 `'L' | 'R' | 'T' | 'B'`)指定該邊自端點節點的哪一側出/入,轉為 ELK port(`portConstraints:FIXED_SIDE` + `elk.port.side`)實現;典型用途為流程圖慣例之判斷菱形「否/退回」自左(右)側出,使進入邊保有頂部頂點。僅對葉節點端點生效(群組端點忽略側值);未指定之邊與圖行為完全不變。菱形貼齊規則(共進共出)以幾何判側,與 port 路由自動相容(指定側之出邊仍 snap 至該側頂點)。
18
19
 
19
20
  ## 自動化機制
20
21
 
package/src/p10/gen.mjs CHANGED
@@ -14,7 +14,7 @@ export function translate(data) {
14
14
  // mi=原始數據索引(容器與葉節點同一序列): 供渲染端 elk.position 保序(同層混排容器/葉節點時仍可比較)
15
15
  const groups = data.nodes.filter(n => isGroupCls(n.cls)).map(n => { const c = colorOf(n.cls); return { id: n.id, label: n.label, parent: n.group || null, align: n.align, mi: data.nodes.indexOf(n), fill: c.fill, stroke: c.stroke, font: c.text } })
16
16
  const nodes = data.nodes.filter(n => !isGroupCls(n.cls)).map(n => { const c = colorOf(n.cls); return { id: n.id, label: n.label, title: n.title, items: n.items, parent: n.group || null, mi: data.nodes.indexOf(n), diamond: c.shape === 'diamond', fill: c.fill, stroke: c.stroke, font: c.text } })
17
- const edges = data.edges.map((e, i) => ({ id: 'e' + i, from: e.from, to: e.to, label: e.label || '', dashed: e.kind === 'dashed' }))
17
+ const edges = data.edges.map((e, i) => ({ id: 'e' + i, from: e.from, to: e.to, label: e.label || '', dashed: e.kind === 'dashed', fromSide: e.fromSide || null, toSide: e.toSide || null }))
18
18
  // 每邊之 LCA 容器: ELK 對「宣告於某容器的邊」回傳之 section 座標相對該容器; 故把邊放到 source/target 之最近共同祖先容器, 渲染才對位(否則跑到左上)
19
19
  const parentOf = {}; groups.forEach(g => parentOf[g.id] = g.parent); nodes.forEach(n => parentOf[n.id] = n.parent)
20
20
  const anc = id => { const r = []; let p = parentOf[id]; while (p) { r.push(p); p = parentOf[p] } return r }
@@ -164,6 +164,14 @@ window.renderFig = async function(spec){
164
164
  const nById={}, gById={}
165
165
  spec.nodes.forEach(n=>nById[n.id]=n); spec.groups.forEach(g=>gById[g.id]=g)
166
166
 
167
+ // edge 方位指定(fromSide/toSide: L/R/T/B)→ ELK port(FIXED_SIDE); 僅對葉節點端點生效
168
+ // (群組端點不建 port: 群組容器於 INCLUDE_CHILDREN 下掛 port 行為未定義, 忽略側值以免 ELK 端 id 參照失敗)
169
+ const SIDEP={L:'WEST',R:'EAST',T:'NORTH',B:'SOUTH'}, portsByNode={}
170
+ spec.edges.forEach(e=>{
171
+ if(e.fromSide&&SIDEP[e.fromSide]&&nById[e.from]){ const pid=e.id+'_ps'; (portsByNode[e.from]=portsByNode[e.from]||[]).push({id:pid,side:SIDEP[e.fromSide]}); e._srcPort=pid }
172
+ if(e.toSide&&SIDEP[e.toSide]&&nById[e.to]){ const pid=e.id+'_pt'; (portsByNode[e.to]=portsByNode[e.to]||[]).push({id:pid,side:SIDEP[e.toSide]}); e._tgtPort=pid }
173
+ })
174
+
167
175
  // 節點尺寸量測
168
176
  const size={}
169
177
  spec.nodes.forEach(n=>{
@@ -182,7 +190,7 @@ window.renderFig = async function(spec){
182
190
  const ORDER_OPTS = { 'elk.layered.crossingMinimization.semiInteractive':'true' }
183
191
  const hasCycle = (() => { const adj={}; spec.edges.forEach(e=>{ (adj[e.from]=adj[e.from]||[]).push(e.to) }); const st={}; const dfs=(u)=>{ st[u]=1; for(const v of (adj[u]||[])){ if(st[v]===1) return true; if(!st[v] && dfs(v)) return true } st[u]=2; return false }; return Object.keys(adj).some(u=>!st[u]&&dfs(u)) })()
184
192
  const gOpts = { 'elk.layered.nodePlacement.bk.fixedAlignment':'BALANCED', 'elk.padding':'[top=10,left=14,bottom=14,right=14]', 'elk.nodeLabels.placement':'[H_CENTER, V_TOP, INSIDE]', 'elk.algorithm':'layered', 'elk.direction':dir, 'elk.edgeRouting':'ORTHOGONAL', 'elk.hierarchyHandling':'INCLUDE_CHILDREN', 'elk.spacing.nodeNode':'28', 'elk.layered.spacing.nodeNodeBetweenLayers':'30', 'elk.spacing.edgeEdge':'22', 'elk.layered.spacing.edgeEdgeBetweenLayers':'24', ...ORDER_OPTS }
185
- function elkEdge(e){ let lab=[]; if(e.label){ const m=measure(e.label,EFS,300); lab=[{ text:e.label, width:m.w, height:m.h }] } return { id:e.id, sources:[e.from], targets:[e.to], labels:lab } }
193
+ function elkEdge(e){ let lab=[]; if(e.label){ const m=measure(e.label,EFS,300); lab=[{ text:e.label, width:m.w, height:m.h }] } return { id:e.id, sources:[e._srcPort||e.from], targets:[e._tgtPort||e.to], labels:lab } }
186
194
  function build(parentId, padMap, wrapAR){
187
195
  const children=[], edges=[]
188
196
  spec.groups.filter(g=>g.parent===parentId).forEach(g=>{ const sub=build(g.id, padMap, wrapAR); const gm=measure(g.label,GFS,400)
@@ -193,7 +201,7 @@ window.renderFig = async function(spec){
193
201
  const ar=wrapAR&&wrapAR[g.id]; if(ar){ go['elk.aspectRatio']=String(ar); go['elk.layered.wrapping.strategy']='SINGLE_EDGE' }
194
202
  if(parentId || !hasCycle){ go['elk.position']='('+g.mi+','+g.mi+')' }
195
203
  children.push({ id:g.id, labels:[{text:g.label, width:gm.w+12, height:gm.h+6}], layoutOptions:go, children:sub.children, edges:sub.edges }) })
196
- spec.nodes.filter(n=>n.parent===parentId).forEach(n=>{ const va=VALIGN[(gById[parentId]&&gById[parentId].align)||DEF_VALIGN]||'TOP'; const lo={ 'elk.alignment':va }; if(parentId || !hasCycle){ lo['elk.position']='('+n.mi+','+n.mi+')' } children.push({ id:n.id, width:size[n.id].w, height:size[n.id].h, layoutOptions:lo }) })
204
+ spec.nodes.filter(n=>n.parent===parentId).forEach(n=>{ const va=VALIGN[(gById[parentId]&&gById[parentId].align)||DEF_VALIGN]||'TOP'; const lo={ 'elk.alignment':va }; if(parentId || !hasCycle){ lo['elk.position']='('+n.mi+','+n.mi+')' } const ch={ id:n.id, width:size[n.id].w, height:size[n.id].h, layoutOptions:lo }; const nps=portsByNode[n.id]; if(nps){ lo['elk.portConstraints']='FIXED_SIDE'; ch.ports=nps.map(p=>({ id:p.id, layoutOptions:{ 'elk.port.side':p.side } })) } children.push(ch) })
197
205
  spec.edges.filter(e=>e.container===parentId).forEach(e=>{ edges.push(elkEdge(e)) })
198
206
  return { children, edges }
199
207
  }
@@ -0,0 +1,105 @@
1
+ // 邊進出方位指定(fromSide/toSide)案 — 僅供 p10 套件(不進 p1~p9 矩陣)
2
+ // 規則(spec, 見 src/p10/README.md「邊進出方位指定」):
3
+ // 1. edge 帶 fromSide/toSide('L'|'R'|'T'|'B')時, 該邊改自端點節點之指定側出/入(ELK port FIXED_SIDE)。
4
+ // 2. 菱形端點: port 定側後貼齊規則仍生效 → 指定側之出邊 snap 至該側「頂點」; 因指定而讓出的側恢復純進 → 進邊匯頂點。
5
+ // 3. 矩形端點: 邊端點落在指定側之「面」上(x 或 y 貼齊該面), 無頂點 snap。
6
+ // 4. 群組端點: 側值忽略(不建 port), 邊照常路由不失敗。
7
+ // check 即上述規則之可執行翻譯: 斷言邊實際繪製端點落在指定側之錨點/面。
8
+ const EPS = 2.5
9
+ const near = (p, q) => !!p && !!q && Math.abs(p.x - q.x) <= EPS && Math.abs(p.y - q.y) <= EPS
10
+
11
+ // 菱形四頂點
12
+ function vertices(D) {
13
+ const cx = D.x + D.w / 2, cy = D.y + D.h / 2
14
+ return {
15
+ vT: { x: cx, y: D.y },
16
+ vB: { x: cx, y: D.y + D.h },
17
+ vL: { x: D.x, y: cy },
18
+ vR: { x: D.x + D.w, y: cy },
19
+ }
20
+ }
21
+ const edgeOf = (geom, id) => geom.edges.find(e => e.id === id)
22
+ const segStart = (geom, id) => { const g = edgeOf(geom, id); const s = g && g.segs[0]; return s && s[0] }
23
+ const segEnd = (geom, id) => { const g = edgeOf(geom, id); const s = g && g.segs[g.segs.length - 1]; return s && s[s.length - 1] }
24
+ const fmt = (p) => p ? `(${p.x.toFixed(1)},${p.y.toFixed(1)})` : '(無)'
25
+
26
+ // 點貼齊矩形某側之「面」: 指定軸座標貼齊該面, 另一軸落在框範圍內
27
+ function onFace(p, box, side) {
28
+ if (!p) return false
29
+ const inX = p.x >= box.x - EPS && p.x <= box.x + box.w + EPS
30
+ const inY = p.y >= box.y - EPS && p.y <= box.y + box.h + EPS
31
+ if (side === 'L') return Math.abs(p.x - box.x) <= EPS && inY
32
+ if (side === 'R') return Math.abs(p.x - (box.x + box.w)) <= EPS && inY
33
+ if (side === 'T') return Math.abs(p.y - box.y) <= EPS && inX
34
+ return Math.abs(p.y - (box.y + box.h)) <= EPS && inX
35
+ }
36
+
37
+ export const SIDE_CASES = [
38
+
39
+ // 1) 菱形 fromSide:'L'(規則 2; 即報告之「退回」情境): 退回邊自左頂點出, 頂側恢復純進匯頂點, 底側出仍為底頂點
40
+ {
41
+ name: 'side-dia-out-L', desc: '菱形指定 fromSide:L — 退回邊左頂點出/進邊回頂點',
42
+ data: {
43
+ dir: 'TB',
44
+ nodes: [
45
+ { id: 'S', label: '申請資料', cls: 'blue' },
46
+ { id: 'D', label: '審核通過?', cls: 'diamond' },
47
+ { id: 'T', label: '建檔完成', cls: 'green' },
48
+ ],
49
+ edges: [
50
+ { from: 'S', to: 'D' }, //e0 頂側進
51
+ { from: 'D', to: 'T', label: '是' }, //e1 底側出
52
+ { from: 'D', to: 'S', label: '退回', kind: 'dashed', fromSide: 'L' }, //e2 指定左側出
53
+ ],
54
+ },
55
+ check: (spec, geom, h) => {
56
+ const V = vertices(h.node('D'))
57
+ const s2 = segStart(geom, 'e2'), s0 = segEnd(geom, 'e0'), s1 = segStart(geom, 'e1')
58
+ return [
59
+ { name: 'e2 出=左頂點(fromSide:L)', pass: near(s2, V.vL), detail: `${fmt(s2)} vs ${fmt(V.vL)}` },
60
+ { name: 'e0 進=頂點(頂側因指定恢復純進)', pass: near(s0, V.vT), detail: `${fmt(s0)} vs ${fmt(V.vT)}` },
61
+ { name: 'e1 出=底頂點(未指定側不受影響)', pass: near(s1, V.vB), detail: `${fmt(s1)} vs ${fmt(V.vB)}` },
62
+ ]
63
+ },
64
+ },
65
+
66
+ // 2) 矩形 fromSide:'R' + toSide:'L'(規則 3): TB 直排下預設必為底出/頂進, 指定後改走側面
67
+ {
68
+ name: 'side-rect-RL', desc: '矩形指定 fromSide:R/toSide:L — 邊走側面非上下',
69
+ data: {
70
+ dir: 'TB',
71
+ nodes: [
72
+ { id: 'a', label: '節點甲', cls: 'blue' },
73
+ { id: 'b', label: '節點乙', cls: 'green' },
74
+ ],
75
+ edges: [{ from: 'a', to: 'b', fromSide: 'R', toSide: 'L' }], //e0
76
+ },
77
+ check: (spec, geom, h) => {
78
+ const A = h.node('a'), B = h.node('b')
79
+ const s = segStart(geom, 'e0'), e = segEnd(geom, 'e0')
80
+ return [
81
+ { name: 'e0 起點=甲右側面(fromSide:R)', pass: onFace(s, A, 'R'), detail: `${fmt(s)} vs 右面x=${(A.x + A.w).toFixed(1)}` },
82
+ { name: 'e0 終點=乙左側面(toSide:L)', pass: onFace(e, B, 'L'), detail: `${fmt(e)} vs 左面x=${B.x.toFixed(1)}` },
83
+ ]
84
+ },
85
+ },
86
+
87
+ // 3) 群組端點側值忽略(規則 4): fromSide 掛在群組上不建 port, 邊照常路由(不炸不失聯)
88
+ {
89
+ name: 'side-group-ignored', desc: '群組端點帶 fromSide — 側值忽略仍正常路由',
90
+ data: {
91
+ dir: 'TB',
92
+ nodes: [
93
+ { id: 'G', label: '處理群組', cls: 'blueG' },
94
+ { id: 'm', label: '成員', cls: 'blue', group: 'G' },
95
+ { id: 'x', label: '外部節點', cls: 'green' },
96
+ ],
97
+ edges: [{ from: 'G', to: 'x', fromSide: 'L' }], //e0(兩端接節點由通用不變量 6 把關)
98
+ },
99
+ check: (spec, geom) => {
100
+ const g = edgeOf(geom, 'e0'), seg = g && g.segs && g.segs.find(s => s.length >= 2)
101
+ return [{ name: 'e0 有路由(群組端點側值被忽略不致失敗)', pass: !!seg, detail: seg ? `${seg.length} 點` : '(無路由)' }]
102
+ },
103
+ },
104
+
105
+ ]
package/test/p10.test.mjs CHANGED
@@ -15,6 +15,7 @@ import { PNG } from 'pngjs'
15
15
  import { openStage, renderCase, runInvariants, helpers } from './lib.mjs'
16
16
  import { CASES } from './cases.mjs'
17
17
  import { DIAMOND_CASES } from './cases-diamond.mjs'
18
+ import { SIDE_CASES } from './cases-sides.mjs'
18
19
  import { FIGURES } from './figures.mjs'
19
20
 
20
21
  const __dir = dirname(fileURLToPath(import.meta.url))
@@ -26,6 +27,7 @@ const UPDATE = process.env.UPDATE_BASELINE === '1' || process.env.UPDATE_BASELIN
26
27
  const items = []
27
28
  for (const c of CASES) items.push({ name: c.name, data: c.data, check: c.check, expect: c.expect, kind: '合成' })
28
29
  for (const c of DIAMOND_CASES) items.push({ name: c.name, data: c.data, check: c.check, kind: '菱形' })
30
+ for (const c of SIDE_CASES) items.push({ name: c.name, data: c.data, check: c.check, kind: '方位' })
29
31
  for (const f of FIGURES) items.push({ name: f.key, data: f.data, kind: '真圖' })
30
32
 
31
33
  // PNG 像素比對(反鋸齒容差): 回 { same, detail }
Binary file
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="240" height="451" viewBox="-18 -18 240 451" style="background:#fff"><path d="M 96.58333333333334 48 L 96.58333333333334 74 L 127.5 74 L 127.5 152" fill="none" stroke="#44505a" stroke-width="2"></path><path d="M 127.5 152 L 131.5 143 L 123.5 143 Z" fill="#44505a"></path><path d="M 127.5 281 L 127.5 367" fill="none" stroke="#44505a" stroke-width="2"></path><path d="M 127.5 367 L 131.5 358 L 123.5 358 Z" fill="#44505a"></path><foreignObject x="112.5" y="315" width="19" height="22"><div xmlns="http://www.w3.org/1999/xhtml" class="lbl" style="font-size:12.5px;color:#4a5560;text-shadow:0 0 3px #ffffff,0 0 3px #ffffff,0 0 3px #ffffff,0 0 3px #ffffff;white-space:pre-line">是</div></foreignObject><path d="M 63 216.5 L 39 216.5 L 39 74 L 69.91666666666667 74 L 69.91666666666667 48" fill="none" stroke="#44505a" stroke-width="2" stroke-dasharray="6 4"></path><path d="M 69.91666666666667 48 L 65.91666666666667 57 L 73.91666666666667 57 Z" fill="#44505a"></path><foreignObject x="12" y="100" width="31" height="22"><div xmlns="http://www.w3.org/1999/xhtml" class="lbl" style="font-size:12.5px;color:#4a5560;text-shadow:0 0 3px #ffffff,0 0 3px #ffffff,0 0 3px #ffffff,0 0 3px #ffffff;white-space:pre-line">退回</div></foreignObject><rect x="43.25" y="12" width="80" height="36" rx="7" fill="#eef4fb" stroke="#3f6fb0" stroke-width="1.6"></rect><foreignObject x="43.25" y="12" width="80" height="36"><div xmlns="http://www.w3.org/1999/xhtml" class="lbl" style="width:100%;height:100%;display:flex;align-items:center;justify-content:center;text-align:center;font-size:14px;color:#1c2b36;line-height:1.4;padding:0 4px;box-sizing:border-box"><div style="width:100%;min-width:0;white-space:pre-line;overflow-wrap:break-word;word-break:normal">申請資料</div></div></foreignObject><polygon points="127.5,152 192,216.5 127.5,281 63,216.5" fill="#fcf0e2" stroke="#c46e1a" stroke-width="1.8"></polygon><foreignObject x="63" y="152" width="129" height="129"><div xmlns="http://www.w3.org/1999/xhtml" class="lbl" style="width:100%;height:100%;display:flex;align-items:center;justify-content:center;text-align:center;font-size:14px;color:#23303a;line-height:1.4;padding:0 4px;box-sizing:border-box"><div style="width:100%;min-width:0;white-space:pre-line;overflow-wrap:break-word;word-break:normal">審核通過?</div></div></foreignObject><rect x="87.5" y="367" width="80" height="36" rx="7" fill="#eaf4ef" stroke="#348a5c" stroke-width="1.6"></rect><foreignObject x="87.5" y="367" width="80" height="36"><div xmlns="http://www.w3.org/1999/xhtml" class="lbl" style="width:100%;height:100%;display:flex;align-items:center;justify-content:center;text-align:center;font-size:14px;color:#1c2b36;line-height:1.4;padding:0 4px;box-sizing:border-box"><div style="width:100%;min-width:0;white-space:pre-line;overflow-wrap:break-word;word-break:normal">建檔完成</div></div></foreignObject></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="140" height="222" viewBox="-18 -18 140 222" style="background:#fff"><rect x="12" y="12" width="80" height="92" rx="8" fill="#f5f9fe" fill-opacity="0.38" stroke="#3f6fb0" stroke-width="2"></rect><foreignObject x="12" y="17" width="84" height="33"><div xmlns="http://www.w3.org/1999/xhtml" class="lbl" style="text-align:center;font-weight:bold;font-size:15px;color:#3f6fb0;line-height:1.3;white-space:pre-line;overflow-wrap:break-word;word-break:normal">處理群組</div></foreignObject><path d="M 52 104 L 52 138" fill="none" stroke="#44505a" stroke-width="2"></path><path d="M 52 138 L 56 129 L 48 129 Z" fill="#44505a"></path><rect x="26" y="54" width="52" height="36" rx="7" fill="#eef4fb" stroke="#3f6fb0" stroke-width="1.6"></rect><foreignObject x="26" y="54" width="52" height="36"><div xmlns="http://www.w3.org/1999/xhtml" class="lbl" style="width:100%;height:100%;display:flex;align-items:center;justify-content:center;text-align:center;font-size:14px;color:#1c2b36;line-height:1.4;padding:0 4px;box-sizing:border-box"><div style="width:100%;min-width:0;white-space:pre-line;overflow-wrap:break-word;word-break:normal">成員</div></div></foreignObject><rect x="12" y="138" width="80" height="36" rx="7" fill="#eaf4ef" stroke="#348a5c" stroke-width="1.6"></rect><foreignObject x="12" y="138" width="80" height="36"><div xmlns="http://www.w3.org/1999/xhtml" class="lbl" style="width:100%;height:100%;display:flex;align-items:center;justify-content:center;text-align:center;font-size:14px;color:#1c2b36;line-height:1.4;padding:0 4px;box-sizing:border-box"><div style="width:100%;min-width:0;white-space:pre-line;overflow-wrap:break-word;word-break:normal">外部節點</div></div></foreignObject></svg>
Binary file
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="240" height="166" viewBox="-18 -18 240 166" style="background:#fff"><path d="M 78 30 L 102 30 L 102 100 L 126 100" fill="none" stroke="#44505a" stroke-width="2"></path><path d="M 126 100 L 117 96 L 117 104 Z" fill="#44505a"></path><rect x="12" y="12" width="66" height="36" rx="7" fill="#eef4fb" stroke="#3f6fb0" stroke-width="1.6"></rect><foreignObject x="12" y="12" width="66" height="36"><div xmlns="http://www.w3.org/1999/xhtml" class="lbl" style="width:100%;height:100%;display:flex;align-items:center;justify-content:center;text-align:center;font-size:14px;color:#1c2b36;line-height:1.4;padding:0 4px;box-sizing:border-box"><div style="width:100%;min-width:0;white-space:pre-line;overflow-wrap:break-word;word-break:normal">節點甲</div></div></foreignObject><rect x="126" y="82" width="66" height="36" rx="7" fill="#eaf4ef" stroke="#348a5c" stroke-width="1.6"></rect><foreignObject x="126" y="82" width="66" height="36"><div xmlns="http://www.w3.org/1999/xhtml" class="lbl" style="width:100%;height:100%;display:flex;align-items:center;justify-content:center;text-align:center;font-size:14px;color:#1c2b36;line-height:1.4;padding:0 4px;box-sizing:border-box"><div style="width:100%;min-width:0;white-space:pre-line;overflow-wrap:break-word;word-break:normal">節點乙</div></div></foreignObject></svg>