effect 3.21.2 → 3.21.4
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.
- package/dist/cjs/Data.js.map +1 -1
- package/dist/cjs/Graph.js +62 -13
- package/dist/cjs/Graph.js.map +1 -1
- package/dist/cjs/JSONSchema.js +2 -1
- package/dist/cjs/JSONSchema.js.map +1 -1
- package/dist/cjs/internal/version.js +1 -1
- package/dist/dts/Data.d.ts +7 -7
- package/dist/dts/Data.d.ts.map +1 -1
- package/dist/dts/Graph.d.ts.map +1 -1
- package/dist/esm/Data.js.map +1 -1
- package/dist/esm/Graph.js +62 -13
- package/dist/esm/Graph.js.map +1 -1
- package/dist/esm/JSONSchema.js +2 -1
- package/dist/esm/JSONSchema.js.map +1 -1
- package/dist/esm/internal/version.js +1 -1
- package/package.json +1 -1
- package/src/Data.ts +8 -11
- package/src/Graph.ts +74 -13
- package/src/JSONSchema.ts +4 -1
- package/src/internal/version.ts +1 -1
package/dist/esm/Graph.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Graph.js","names":["Data","Equal","dual","Hash","format","NodeInspectSymbol","Option","pipeArguments","TypeId","Edge","Class","ProtoGraph","Symbol","iterator","nodes","toJSON","symbol","that","isGraph","size","edges","type","nodeIndex","nodeData","has","otherNodeData","get","equals","edgeIndex","edgeData","otherEdge","hash","string","number","_id","nodeCount","edgeCount","toString","pipe","arguments","GraphError","TaggedError","missingNode","node","message","u","directed","mutate","graph","Object","create","Map","adjacency","reverseAdjacency","nextNodeIndex","nextEdgeIndex","isAcyclic","some","mutable","beginMutation","endMutation","undirected","set","f","addNode","data","getNode","none","hasNode","findNode","predicate","index","findNodes","results","push","findEdge","source","target","findEdges","updateNode","currentData","newData","updateEdge","currentEdge","mapNodes","mapEdges","reverse","clear","sourceEdges","targetEdges","filterMapNodes","nodesToRemove","result","isSome","value","removeNode","filterMapEdges","edgesToRemove","removeEdge","filterNodes","filterEdges","invalidateCycleFlagOnRemoval","invalidateCycleFlagOnAddition","addEdge","sourceAdjacency","undefined","targetReverseAdjacency","targetAdjacency","sourceReverseAdjacency","outgoingEdges","edge","incomingEdges","removeEdgeInternal","delete","wasRemoved","indexOf","splice","getEdge","hasEdge","adjacencyList","neighbors","getUndirectedNeighbors","neighborsDirected","direction","adjacencyMap","neighborNode","toGraphViz","options","edgeLabel","String","graphName","nodeLabel","isDirected","graphType","edgeOperator","lines","label","replace","join","escapeMermaidLabel","formatMermaidNode","nodeId","shape","toMermaid","diagramType","nodeShape","finalDiagramType","formattedNode","sourceId","targetId","visited","Set","recursionStack","startNode","keys","stack","length","neighborIndex","isFirstVisit","pop","add","nodeNeighbors","Array","from","neighbor","isBipartite","coloring","discovered","isBipartiteGraph","queue","current","shift","currentColor","neighborColor","otherNode","connectedComponents","components","component","stronglyConnectedComponents","finishOrder","nodeNeighborsList","sccs","i","scc","predecessor","dijkstra","config","cost","path","distance","costs","distances","previous","Infinity","priorityQueue","minIndex","currentNode","currentDistance","weight","Error","newDistance","neighborDistance","targetDistance","unshift","prev","floydWarshall","allNodes","dist","next","edgeMatrix","j","currentWeight","k","distIK","distKJ","distIJ","paths","resultCosts","weights","nextNode","astar","heuristic","targetNodeData","gScore","fScore","sourceNodeData","h","openSet","currentGScore","tentativeGScore","neighborGScore","neighborNodeData","targetGScore","bellmanFord","hasUpdate","sourceDistance","affectedNodes","Walker","visit","constructor","indices","walker","_","values","entries","dfs","start","nextMapped","nodeDataOption","done","bfs","topo","initials","inDegree","remaining","currentInDegree","degree","newInDegree","dfsPostOrder","finished","visitedChildren","nodeToEmit","nodeMap","edgeMap","externals","nodeIterator"],"sources":["../../src/Graph.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Graph.js","names":["Data","Equal","dual","Hash","format","NodeInspectSymbol","Option","pipeArguments","TypeId","Edge","Class","ProtoGraph","Symbol","iterator","nodes","toJSON","symbol","that","isGraph","size","edges","type","nodeIndex","nodeData","has","otherNodeData","get","equals","edgeIndex","edgeData","otherEdge","hash","string","number","_id","nodeCount","edgeCount","toString","pipe","arguments","GraphError","TaggedError","missingNode","node","message","u","directed","mutate","graph","Object","create","Map","adjacency","reverseAdjacency","nextNodeIndex","nextEdgeIndex","isAcyclic","some","mutable","beginMutation","endMutation","undirected","set","f","addNode","data","getNode","none","hasNode","findNode","predicate","index","findNodes","results","push","findEdge","source","target","findEdges","updateNode","currentData","newData","updateEdge","currentEdge","mapNodes","mapEdges","reverse","clear","sourceEdges","targetEdges","filterMapNodes","nodesToRemove","result","isSome","value","removeNode","filterMapEdges","edgesToRemove","removeEdge","filterNodes","filterEdges","invalidateCycleFlagOnRemoval","invalidateCycleFlagOnAddition","addEdge","sourceAdjacency","undefined","targetReverseAdjacency","targetAdjacency","sourceReverseAdjacency","outgoingEdges","edge","incomingEdges","removeEdgeInternal","delete","wasRemoved","indexOf","splice","getEdge","hasEdge","adjacencyList","neighbors","getUndirectedNeighbors","neighborsDirected","direction","adjacencyMap","neighborNode","toGraphViz","options","edgeLabel","String","graphName","nodeLabel","isDirected","graphType","edgeOperator","lines","label","replace","join","escapeMermaidLabel","formatMermaidNode","nodeId","shape","toMermaid","diagramType","nodeShape","finalDiagramType","formattedNode","sourceId","targetId","visited","Set","startNode","keys","add","stack","parent","length","pop","nodeNeighbors","neighbor","recursionStack","neighborIndex","isFirstVisit","Array","from","isBipartite","coloring","discovered","isBipartiteGraph","queue","current","shift","currentColor","neighborColor","otherNode","getTraversalNeighbors","getTraversableNeighbor","connectedComponents","components","component","stronglyConnectedComponents","finishOrder","nodeNeighborsList","sccs","i","scc","predecessor","dijkstra","config","cost","path","distance","costs","distances","previous","Infinity","priorityQueue","minIndex","currentNode","currentDistance","weight","Error","newDistance","neighborDistance","targetDistance","unshift","prev","floydWarshall","allNodes","dist","next","edgeMatrix","j","currentWeight","reverseWeight","k","distIK","distKJ","distIJ","paths","resultCosts","weights","nextNode","astar","heuristic","targetNodeData","gScore","fScore","sourceNodeData","h","openSet","currentGScore","tentativeGScore","neighborGScore","neighborNodeData","targetGScore","bellmanFord","hasUpdate","sourceDistance","affectedNodes","Walker","visit","constructor","indices","walker","_","values","entries","dfs","start","nextMapped","nodeDataOption","done","bfs","topo","initials","inDegree","remaining","currentInDegree","degree","newInDegree","dfsPostOrder","finished","visitedChildren","nodeToEmit","nodeMap","edgeMap","externals","nodeIterator"],"sources":["../../src/Graph.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;AAKA,OAAO,KAAKA,IAAI,MAAM,WAAW;AACjC,OAAO,KAAKC,KAAK,MAAM,YAAY;AACnC,SAASC,IAAI,QAAQ,eAAe;AACpC,OAAO,KAAKC,IAAI,MAAM,WAAW;AAEjC,SAASC,MAAM,EAAEC,iBAAiB,QAAQ,kBAAkB;AAC5D,OAAO,KAAKC,MAAM,MAAM,aAAa;AAErC,SAASC,aAAa,QAAQ,eAAe;AAG7C;;;;;;AAMA,OAAO,MAAMC,MAAM,GAAoB,eAAwB;AA0B/D;;;;;;AAMA,OAAM,MAAOC,IAAQ,SAAQT,IAAI,CAACU,KAIhC;AAiFF;AACA;AACA;AAEA;AACA,MAAMC,UAAU,GAAG;EACjB,CAACH,MAAM,GAAGA,MAAM;EAChB,CAACI,MAAM,CAACC,QAAQ,IAAC;IACf,OAAO,IAAI,CAACC,KAAK,CAACF,MAAM,CAACC,QAAQ,CAAC,EAAE;EACtC,CAAC;EACD,CAACR,iBAAiB,IAAC;IACjB,OAAO,IAAI,CAACU,MAAM,EAAE;EACtB,CAAC;EACD,CAACd,KAAK,CAACe,MAAM,EAAyBC,IAAiB;IACrD,IAAIC,OAAO,CAACD,IAAI,CAAC,EAAE;MACjB,IACE,IAAI,CAACH,KAAK,CAACK,IAAI,KAAKF,IAAI,CAACH,KAAK,CAACK,IAAI,IACnC,IAAI,CAACC,KAAK,CAACD,IAAI,KAAKF,IAAI,CAACG,KAAK,CAACD,IAAI,IACnC,IAAI,CAACE,IAAI,KAAKJ,IAAI,CAACI,IAAI,EACvB;QACA,OAAO,KAAK;MACd;MACA;MACA,KAAK,MAAM,CAACC,SAAS,EAAEC,QAAQ,CAAC,IAAI,IAAI,CAACT,KAAK,EAAE;QAC9C,IAAI,CAACG,IAAI,CAACH,KAAK,CAACU,GAAG,CAACF,SAAS,CAAC,EAAE;UAC9B,OAAO,KAAK;QACd;QACA,MAAMG,aAAa,GAAGR,IAAI,CAACH,KAAK,CAACY,GAAG,CAACJ,SAAS,CAAE;QAChD,IAAI,CAACrB,KAAK,CAAC0B,MAAM,CAACJ,QAAQ,EAAEE,aAAa,CAAC,EAAE;UAC1C,OAAO,KAAK;QACd;MACF;MACA;MACA,KAAK,MAAM,CAACG,SAAS,EAAEC,QAAQ,CAAC,IAAI,IAAI,CAACT,KAAK,EAAE;QAC9C,IAAI,CAACH,IAAI,CAACG,KAAK,CAACI,GAAG,CAACI,SAAS,CAAC,EAAE;UAC9B,OAAO,KAAK;QACd;QACA,MAAME,SAAS,GAAGb,IAAI,CAACG,KAAK,CAACM,GAAG,CAACE,SAAS,CAAE;QAC5C,IAAI,CAAC3B,KAAK,CAAC0B,MAAM,CAACE,QAAQ,EAAEC,SAAS,CAAC,EAAE;UACtC,OAAO,KAAK;QACd;MACF;MACA,OAAO,IAAI;IACb;IACA,OAAO,KAAK;EACd,CAAC;EACD,CAAC3B,IAAI,CAACa,MAAM,IAAC;IACX,IAAIe,IAAI,GAAG5B,IAAI,CAAC6B,MAAM,CAAC,OAAO,CAAC;IAC/BD,IAAI,GAAGA,IAAI,GAAG5B,IAAI,CAAC6B,MAAM,CAAC,IAAI,CAACX,IAAI,CAAC;IACpCU,IAAI,GAAGA,IAAI,GAAG5B,IAAI,CAAC8B,MAAM,CAAC,IAAI,CAACnB,KAAK,CAACK,IAAI,CAAC;IAC1CY,IAAI,GAAGA,IAAI,GAAG5B,IAAI,CAAC8B,MAAM,CAAC,IAAI,CAACb,KAAK,CAACD,IAAI,CAAC;IAC1C,KAAK,MAAM,CAACG,SAAS,EAAEC,QAAQ,CAAC,IAAI,IAAI,CAACT,KAAK,EAAE;MAC9CiB,IAAI,GAAGA,IAAI,GAAI5B,IAAI,CAAC4B,IAAI,CAACT,SAAS,CAAC,GAAGnB,IAAI,CAAC4B,IAAI,CAACR,QAAQ,CAAE;IAC5D;IACA,KAAK,MAAM,CAACK,SAAS,EAAEC,QAAQ,CAAC,IAAI,IAAI,CAACT,KAAK,EAAE;MAC9CW,IAAI,GAAGA,IAAI,GAAI5B,IAAI,CAAC4B,IAAI,CAACH,SAAS,CAAC,GAAGzB,IAAI,CAAC4B,IAAI,CAACF,QAAQ,CAAE;IAC5D;IACA,OAAOE,IAAI;EACb,CAAC;EACDhB,MAAMA,CAAA;IACJ,OAAO;MACLmB,GAAG,EAAE,OAAO;MACZC,SAAS,EAAE,IAAI,CAACrB,KAAK,CAACK,IAAI;MAC1BiB,SAAS,EAAE,IAAI,CAAChB,KAAK,CAACD,IAAI;MAC1BE,IAAI,EAAE,IAAI,CAACA;KACZ;EACH,CAAC;EACDgB,QAAQA,CAAA;IACN,OAAOjC,MAAM,CAAC,IAAI,CAAC;EACrB,CAAC;EACDkC,IAAIA,CAAA;IACF,OAAO/B,aAAa,CAAC,IAAI,EAAEgC,SAAS,CAAC;EACvC;CACD;AAED;AACA;AACA;AAEA;;;;;;AAMA,OAAM,MAAOC,UAAW,sBAAQxC,IAAI,CAACyC,WAAW,CAAC,YAAY,CAE3D;AAEF;AACA,MAAMC,WAAW,GAAIC,IAAY,IAAK,IAAIH,UAAU,CAAC;EAAEI,OAAO,EAAE,QAAQD,IAAI;AAAiB,CAAE,CAAC;AAEhG;AACA;AACA;AAEA;AACA,OAAO,MAAMzB,OAAO,GAAI2B,CAAU,IAAmC,OAAOA,CAAC,KAAK,QAAQ,IAAIA,CAAC,KAAK,IAAI,IAAIrC,MAAM,IAAIqC,CAAC;AAEvH;;;;;;;;;;;;;;;;;;;;AAoBA,OAAO,MAAMC,QAAQ,GAAUC,MAAsD,IAAyB;EAC5G,MAAMC,KAAK,GAAiCC,MAAM,CAACC,MAAM,CAACvC,UAAU,CAAC;EACrEqC,KAAK,CAAC3B,IAAI,GAAG,UAAU;EACvB2B,KAAK,CAAClC,KAAK,GAAG,IAAIqC,GAAG,EAAE;EACvBH,KAAK,CAAC5B,KAAK,GAAG,IAAI+B,GAAG,EAAE;EACvBH,KAAK,CAACI,SAAS,GAAG,IAAID,GAAG,EAAE;EAC3BH,KAAK,CAACK,gBAAgB,GAAG,IAAIF,GAAG,EAAE;EAClCH,KAAK,CAACM,aAAa,GAAG,CAAC;EACvBN,KAAK,CAACO,aAAa,GAAG,CAAC;EACvBP,KAAK,CAACQ,SAAS,GAAGlD,MAAM,CAACmD,IAAI,CAAC,IAAI,CAAC;EACnCT,KAAK,CAACU,OAAO,GAAG,KAAK;EAErB,IAAIX,MAAM,EAAE;IACV,MAAMW,OAAO,GAAGC,aAAa,CAACX,KAA4B,CAAC;IAC3DD,MAAM,CAACW,OAAqC,CAAC;IAC7C,OAAOE,WAAW,CAACF,OAAO,CAAC;EAC7B;EAEA,OAAOV,KAAK;AACd,CAAC;AAED;;;;;;;;;;;;;;;;;;;;AAoBA,OAAO,MAAMa,UAAU,GAAUd,MAAwD,IAA2B;EAClH,MAAMC,KAAK,GAAmCC,MAAM,CAACC,MAAM,CAACvC,UAAU,CAAC;EACvEqC,KAAK,CAAC3B,IAAI,GAAG,YAAY;EACzB2B,KAAK,CAAClC,KAAK,GAAG,IAAIqC,GAAG,EAAE;EACvBH,KAAK,CAAC5B,KAAK,GAAG,IAAI+B,GAAG,EAAE;EACvBH,KAAK,CAACI,SAAS,GAAG,IAAID,GAAG,EAAE;EAC3BH,KAAK,CAACK,gBAAgB,GAAG,IAAIF,GAAG,EAAE;EAClCH,KAAK,CAACM,aAAa,GAAG,CAAC;EACvBN,KAAK,CAACO,aAAa,GAAG,CAAC;EACvBP,KAAK,CAACQ,SAAS,GAAGlD,MAAM,CAACmD,IAAI,CAAC,IAAI,CAAC;EACnCT,KAAK,CAACU,OAAO,GAAG,KAAK;EAErB,IAAIX,MAAM,EAAE;IACV,MAAMW,OAAO,GAAGC,aAAa,CAACX,KAAK,CAAC;IACpCD,MAAM,CAACW,OAAuC,CAAC;IAC/C,OAAOE,WAAW,CAACF,OAAO,CAAC;EAC7B;EAEA,OAAOV,KAAK;AACd,CAAC;AAED;AACA;AACA;AAEA;;;;;;;;;;;;;;;AAeA,OAAO,MAAMW,aAAa,GACxBX,KAAqB,IACI;EACzB;EACA,MAAMI,SAAS,GAAG,IAAID,GAAG,EAA+B;EACxD,MAAME,gBAAgB,GAAG,IAAIF,GAAG,EAA+B;EAE/D,KAAK,MAAM,CAAC7B,SAAS,EAAEF,KAAK,CAAC,IAAI4B,KAAK,CAACI,SAAS,EAAE;IAChDA,SAAS,CAACU,GAAG,CAACxC,SAAS,EAAE,CAAC,GAAGF,KAAK,CAAC,CAAC;EACtC;EAEA,KAAK,MAAM,CAACE,SAAS,EAAEF,KAAK,CAAC,IAAI4B,KAAK,CAACK,gBAAgB,EAAE;IACvDA,gBAAgB,CAACS,GAAG,CAACxC,SAAS,EAAE,CAAC,GAAGF,KAAK,CAAC,CAAC;EAC7C;EAEA,MAAMsC,OAAO,GAAmCT,MAAM,CAACC,MAAM,CAACvC,UAAU,CAAC;EACzE+C,OAAO,CAACrC,IAAI,GAAG2B,KAAK,CAAC3B,IAAI;EACzBqC,OAAO,CAAC5C,KAAK,GAAG,IAAIqC,GAAG,CAACH,KAAK,CAAClC,KAAK,CAAC;EACpC4C,OAAO,CAACtC,KAAK,GAAG,IAAI+B,GAAG,CAACH,KAAK,CAAC5B,KAAK,CAAC;EACpCsC,OAAO,CAACN,SAAS,GAAGA,SAAS;EAC7BM,OAAO,CAACL,gBAAgB,GAAGA,gBAAgB;EAC3CK,OAAO,CAACJ,aAAa,GAAGN,KAAK,CAACM,aAAa;EAC3CI,OAAO,CAACH,aAAa,GAAGP,KAAK,CAACO,aAAa;EAC3CG,OAAO,CAACF,SAAS,GAAGR,KAAK,CAACQ,SAAS;EACnCE,OAAO,CAACA,OAAO,GAAG,IAAI;EAEtB,OAAOA,OAAO;AAChB,CAAC;AAED;;;;;;;;;;;;;;;;AAgBA,OAAO,MAAME,WAAW,GACtBF,OAA8B,IACZ;EAClB,MAAMV,KAAK,GAA4BC,MAAM,CAACC,MAAM,CAACvC,UAAU,CAAC;EAChEqC,KAAK,CAAC3B,IAAI,GAAGqC,OAAO,CAACrC,IAAI;EACzB2B,KAAK,CAAClC,KAAK,GAAG,IAAIqC,GAAG,CAACO,OAAO,CAAC5C,KAAK,CAAC;EACpCkC,KAAK,CAAC5B,KAAK,GAAG,IAAI+B,GAAG,CAACO,OAAO,CAACtC,KAAK,CAAC;EACpC4B,KAAK,CAACI,SAAS,GAAGM,OAAO,CAACN,SAAS;EACnCJ,KAAK,CAACK,gBAAgB,GAAGK,OAAO,CAACL,gBAAgB;EACjDL,KAAK,CAACM,aAAa,GAAGI,OAAO,CAACJ,aAAa;EAC3CN,KAAK,CAACO,aAAa,GAAGG,OAAO,CAACH,aAAa;EAC3CP,KAAK,CAACQ,SAAS,GAAGE,OAAO,CAACF,SAAS;EACnCR,KAAK,CAACU,OAAO,GAAG,KAAK;EAErB,OAAOV,KAAK;AACd,CAAC;AAED;;;;;;;;;;;;;;;;;AAiBA,OAAO,MAAMD,MAAM,gBAqCf7C,IAAI,CAAC,CAAC,EAAE,CACV8C,KAAqB,EACrBe,CAA2C,KACzB;EAClB,MAAML,OAAO,GAAGC,aAAa,CAACX,KAAK,CAAC;EACpCe,CAAC,CAACL,OAAO,CAAC;EACV,OAAOE,WAAW,CAACF,OAAO,CAAC;AAC7B,CAAC,CAAC;AAEF;AACA;AACA;AAEA;;;;;;;;;;;;;;;;;;AAkBA,OAAO,MAAMM,OAAO,GAAGA,CACrBN,OAA8B,EAC9BO,IAAO,KACM;EACb,MAAM3C,SAAS,GAAGoC,OAAO,CAACJ,aAAa;EAEvC;EACAI,OAAO,CAAC5C,KAAK,CAACgD,GAAG,CAACxC,SAAS,EAAE2C,IAAI,CAAC;EAElC;EACAP,OAAO,CAACN,SAAS,CAACU,GAAG,CAACxC,SAAS,EAAE,EAAE,CAAC;EACpCoC,OAAO,CAACL,gBAAgB,CAACS,GAAG,CAACxC,SAAS,EAAE,EAAE,CAAC;EAE3C;EACAoC,OAAO,CAACJ,aAAa,GAAGI,OAAO,CAACJ,aAAa,GAAG,CAAC;EAEjD,OAAOhC,SAAS;AAClB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;AAsBA,OAAO,MAAM4C,OAAO,GAAGA,CACrBlB,KAA6C,EAC7C1B,SAAoB,KACC0B,KAAK,CAAClC,KAAK,CAACU,GAAG,CAACF,SAAS,CAAC,GAAGhB,MAAM,CAACmD,IAAI,CAACT,KAAK,CAAClC,KAAK,CAACY,GAAG,CAACJ,SAAS,CAAE,CAAC,GAAGhB,MAAM,CAAC6D,IAAI,EAAE;AAE5G;;;;;;;;;;;;;;;;;;;;;;;AAuBA,OAAO,MAAMC,OAAO,GAAGA,CACrBpB,KAA6C,EAC7C1B,SAAoB,KACR0B,KAAK,CAAClC,KAAK,CAACU,GAAG,CAACF,SAAS,CAAC;AAExC;;;;;;;;;;;;;;;;;;;;;;AAsBA,OAAO,MAAMa,SAAS,GACpBa,KAA6C,IAClCA,KAAK,CAAClC,KAAK,CAACK,IAAI;AAE7B;;;;;;;;;;;;;;;;;;;;;;;AAuBA,OAAO,MAAMkD,QAAQ,GAAGA,CACtBrB,KAA6C,EAC7CsB,SAA+B,KACH;EAC5B,KAAK,MAAM,CAACC,KAAK,EAAEN,IAAI,CAAC,IAAIjB,KAAK,CAAClC,KAAK,EAAE;IACvC,IAAIwD,SAAS,CAACL,IAAI,CAAC,EAAE;MACnB,OAAO3D,MAAM,CAACmD,IAAI,CAACc,KAAK,CAAC;IAC3B;EACF;EACA,OAAOjE,MAAM,CAAC6D,IAAI,EAAE;AACtB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;AAuBA,OAAO,MAAMK,SAAS,GAAGA,CACvBxB,KAA6C,EAC7CsB,SAA+B,KACX;EACpB,MAAMG,OAAO,GAAqB,EAAE;EACpC,KAAK,MAAM,CAACF,KAAK,EAAEN,IAAI,CAAC,IAAIjB,KAAK,CAAClC,KAAK,EAAE;IACvC,IAAIwD,SAAS,CAACL,IAAI,CAAC,EAAE;MACnBQ,OAAO,CAACC,IAAI,CAACH,KAAK,CAAC;IACrB;EACF;EACA,OAAOE,OAAO;AAChB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;AAyBA,OAAO,MAAME,QAAQ,GAAGA,CACtB3B,KAA6C,EAC7CsB,SAAqE,KACzC;EAC5B,KAAK,MAAM,CAAC1C,SAAS,EAAEC,QAAQ,CAAC,IAAImB,KAAK,CAAC5B,KAAK,EAAE;IAC/C,IAAIkD,SAAS,CAACzC,QAAQ,CAACoC,IAAI,EAAEpC,QAAQ,CAAC+C,MAAM,EAAE/C,QAAQ,CAACgD,MAAM,CAAC,EAAE;MAC9D,OAAOvE,MAAM,CAACmD,IAAI,CAAC7B,SAAS,CAAC;IAC/B;EACF;EACA,OAAOtB,MAAM,CAAC6D,IAAI,EAAE;AACtB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BA,OAAO,MAAMW,SAAS,GAAGA,CACvB9B,KAA6C,EAC7CsB,SAAqE,KACjD;EACpB,MAAMG,OAAO,GAAqB,EAAE;EACpC,KAAK,MAAM,CAAC7C,SAAS,EAAEC,QAAQ,CAAC,IAAImB,KAAK,CAAC5B,KAAK,EAAE;IAC/C,IAAIkD,SAAS,CAACzC,QAAQ,CAACoC,IAAI,EAAEpC,QAAQ,CAAC+C,MAAM,EAAE/C,QAAQ,CAACgD,MAAM,CAAC,EAAE;MAC9DJ,OAAO,CAACC,IAAI,CAAC9C,SAAS,CAAC;IACzB;EACF;EACA,OAAO6C,OAAO;AAChB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;AAoBA,OAAO,MAAMM,UAAU,GAAGA,CACxBrB,OAA8B,EAC9Ba,KAAgB,EAChBR,CAAiB,KACT;EACR,IAAI,CAACL,OAAO,CAAC5C,KAAK,CAACU,GAAG,CAAC+C,KAAK,CAAC,EAAE;IAC7B;EACF;EAEA,MAAMS,WAAW,GAAGtB,OAAO,CAAC5C,KAAK,CAACY,GAAG,CAAC6C,KAAK,CAAE;EAC7C,MAAMU,OAAO,GAAGlB,CAAC,CAACiB,WAAW,CAAC;EAC9BtB,OAAO,CAAC5C,KAAK,CAACgD,GAAG,CAACS,KAAK,EAAEU,OAAO,CAAC;AACnC,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;AAqBA,OAAO,MAAMC,UAAU,GAAGA,CACxBxB,OAA8B,EAC9B9B,SAAoB,EACpBmC,CAAiB,KACT;EACR,IAAI,CAACL,OAAO,CAACtC,KAAK,CAACI,GAAG,CAACI,SAAS,CAAC,EAAE;IACjC;EACF;EAEA,MAAMuD,WAAW,GAAGzB,OAAO,CAACtC,KAAK,CAACM,GAAG,CAACE,SAAS,CAAE;EACjD,MAAMqD,OAAO,GAAGlB,CAAC,CAACoB,WAAW,CAAClB,IAAI,CAAC;EACnCP,OAAO,CAACtC,KAAK,CAAC0C,GAAG,CAAClC,SAAS,EAAE;IAC3B,GAAGuD,WAAW;IACdlB,IAAI,EAAEgB;GACP,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;AAqBA,OAAO,MAAMG,QAAQ,GAAGA,CACtB1B,OAA8B,EAC9BK,CAAiB,KACT;EACR;EACA,KAAK,MAAM,CAACQ,KAAK,EAAEN,IAAI,CAAC,IAAIP,OAAO,CAAC5C,KAAK,EAAE;IACzC,MAAMmE,OAAO,GAAGlB,CAAC,CAACE,IAAI,CAAC;IACvBP,OAAO,CAAC5C,KAAK,CAACgD,GAAG,CAACS,KAAK,EAAEU,OAAO,CAAC;EACnC;AACF,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;AAuBA,OAAO,MAAMI,QAAQ,GAAGA,CACtB3B,OAA8B,EAC9BK,CAAiB,KACT;EACR;EACA,KAAK,MAAM,CAACQ,KAAK,EAAE1C,QAAQ,CAAC,IAAI6B,OAAO,CAACtC,KAAK,EAAE;IAC7C,MAAM6D,OAAO,GAAGlB,CAAC,CAAClC,QAAQ,CAACoC,IAAI,CAAC;IAChCP,OAAO,CAACtC,KAAK,CAAC0C,GAAG,CAACS,KAAK,EAAE;MACvB,GAAG1C,QAAQ;MACXoC,IAAI,EAAEgB;KACP,CAAC;EACJ;AACF,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;AAuBA,OAAO,MAAMK,OAAO,GAClB5B,OAA8B,IACtB;EACR;EACA,KAAK,MAAM,CAACa,KAAK,EAAE1C,QAAQ,CAAC,IAAI6B,OAAO,CAACtC,KAAK,EAAE;IAC7CsC,OAAO,CAACtC,KAAK,CAAC0C,GAAG,CAACS,KAAK,EAAE;MACvBK,MAAM,EAAE/C,QAAQ,CAACgD,MAAM;MACvBA,MAAM,EAAEhD,QAAQ,CAAC+C,MAAM;MACvBX,IAAI,EAAEpC,QAAQ,CAACoC;KAChB,CAAC;EACJ;EAEA;EACAP,OAAO,CAACN,SAAS,CAACmC,KAAK,EAAE;EACzB7B,OAAO,CAACL,gBAAgB,CAACkC,KAAK,EAAE;EAEhC;EACA,KAAK,MAAM,CAAC3D,SAAS,EAAEC,QAAQ,CAAC,IAAI6B,OAAO,CAACtC,KAAK,EAAE;IACjD;IACA,MAAMoE,WAAW,GAAG9B,OAAO,CAACN,SAAS,CAAC1B,GAAG,CAACG,QAAQ,CAAC+C,MAAM,CAAC,IAAI,EAAE;IAChEY,WAAW,CAACd,IAAI,CAAC9C,SAAS,CAAC;IAC3B8B,OAAO,CAACN,SAAS,CAACU,GAAG,CAACjC,QAAQ,CAAC+C,MAAM,EAAEY,WAAW,CAAC;IAEnD;IACA,MAAMC,WAAW,GAAG/B,OAAO,CAACL,gBAAgB,CAAC3B,GAAG,CAACG,QAAQ,CAACgD,MAAM,CAAC,IAAI,EAAE;IACvEY,WAAW,CAACf,IAAI,CAAC9C,SAAS,CAAC;IAC3B8B,OAAO,CAACL,gBAAgB,CAACS,GAAG,CAACjC,QAAQ,CAACgD,MAAM,EAAEY,WAAW,CAAC;EAC5D;EAEA;EACA/B,OAAO,CAACF,SAAS,GAAGlD,MAAM,CAAC6D,IAAI,EAAE;AACnC,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BA,OAAO,MAAMuB,cAAc,GAAGA,CAC5BhC,OAA8B,EAC9BK,CAAgC,KACxB;EACR,MAAM4B,aAAa,GAAqB,EAAE;EAE1C;EACA,KAAK,MAAM,CAACpB,KAAK,EAAEN,IAAI,CAAC,IAAIP,OAAO,CAAC5C,KAAK,EAAE;IACzC,MAAM8E,MAAM,GAAG7B,CAAC,CAACE,IAAI,CAAC;IACtB,IAAI3D,MAAM,CAACuF,MAAM,CAACD,MAAM,CAAC,EAAE;MACzB;MACAlC,OAAO,CAAC5C,KAAK,CAACgD,GAAG,CAACS,KAAK,EAAEqB,MAAM,CAACE,KAAK,CAAC;IACxC,CAAC,MAAM;MACL;MACAH,aAAa,CAACjB,IAAI,CAACH,KAAK,CAAC;IAC3B;EACF;EAEA;EACA,KAAK,MAAMjD,SAAS,IAAIqE,aAAa,EAAE;IACrCI,UAAU,CAACrC,OAAO,EAAEpC,SAAS,CAAC;EAChC;AACF,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BA,OAAO,MAAM0E,cAAc,GAAGA,CAC5BtC,OAA8B,EAC9BK,CAAgC,KACxB;EACR,MAAMkC,aAAa,GAAqB,EAAE;EAE1C;EACA,KAAK,MAAM,CAAC1B,KAAK,EAAE1C,QAAQ,CAAC,IAAI6B,OAAO,CAACtC,KAAK,EAAE;IAC7C,MAAMwE,MAAM,GAAG7B,CAAC,CAAClC,QAAQ,CAACoC,IAAI,CAAC;IAC/B,IAAI3D,MAAM,CAACuF,MAAM,CAACD,MAAM,CAAC,EAAE;MACzB;MACAlC,OAAO,CAACtC,KAAK,CAAC0C,GAAG,CAACS,KAAK,EAAE;QACvB,GAAG1C,QAAQ;QACXoC,IAAI,EAAE2B,MAAM,CAACE;OACd,CAAC;IACJ,CAAC,MAAM;MACL;MACAG,aAAa,CAACvB,IAAI,CAACH,KAAK,CAAC;IAC3B;EACF;EAEA;EACA,KAAK,MAAM3C,SAAS,IAAIqE,aAAa,EAAE;IACrCC,UAAU,CAACxC,OAAO,EAAE9B,SAAS,CAAC;EAChC;AACF,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;AAwBA,OAAO,MAAMuE,WAAW,GAAGA,CACzBzC,OAA8B,EAC9BY,SAA+B,KACvB;EACR,MAAMqB,aAAa,GAAqB,EAAE;EAE1C;EACA,KAAK,MAAM,CAACpB,KAAK,EAAEN,IAAI,CAAC,IAAIP,OAAO,CAAC5C,KAAK,EAAE;IACzC,IAAI,CAACwD,SAAS,CAACL,IAAI,CAAC,EAAE;MACpB0B,aAAa,CAACjB,IAAI,CAACH,KAAK,CAAC;IAC3B;EACF;EAEA;EACA,KAAK,MAAMjD,SAAS,IAAIqE,aAAa,EAAE;IACrCI,UAAU,CAACrC,OAAO,EAAEpC,SAAS,CAAC;EAChC;AACF,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BA,OAAO,MAAM8E,WAAW,GAAGA,CACzB1C,OAA8B,EAC9BY,SAA+B,KACvB;EACR,MAAM2B,aAAa,GAAqB,EAAE;EAE1C;EACA,KAAK,MAAM,CAAC1B,KAAK,EAAE1C,QAAQ,CAAC,IAAI6B,OAAO,CAACtC,KAAK,EAAE;IAC7C,IAAI,CAACkD,SAAS,CAACzC,QAAQ,CAACoC,IAAI,CAAC,EAAE;MAC7BgC,aAAa,CAACvB,IAAI,CAACH,KAAK,CAAC;IAC3B;EACF;EAEA;EACA,KAAK,MAAM3C,SAAS,IAAIqE,aAAa,EAAE;IACrCC,UAAU,CAACxC,OAAO,EAAE9B,SAAS,CAAC;EAChC;AACF,CAAC;AAED;AACA;AACA;AAEA;AACA,MAAMyE,4BAA4B,GAChC3C,OAA8B,IACtB;EACR;EACA;EACA,IAAIpD,MAAM,CAACuF,MAAM,CAACnC,OAAO,CAACF,SAAS,CAAC,IAAIE,OAAO,CAACF,SAAS,CAACsC,KAAK,KAAK,KAAK,EAAE;IACzEpC,OAAO,CAACF,SAAS,GAAGlD,MAAM,CAAC6D,IAAI,EAAE;EACnC;AACF,CAAC;AAED;AACA,MAAMmC,6BAA6B,GACjC5C,OAA8B,IACtB;EACR;EACA;EACA,IAAIpD,MAAM,CAACuF,MAAM,CAACnC,OAAO,CAACF,SAAS,CAAC,IAAIE,OAAO,CAACF,SAAS,CAACsC,KAAK,KAAK,IAAI,EAAE;IACxEpC,OAAO,CAACF,SAAS,GAAGlD,MAAM,CAAC6D,IAAI,EAAE;EACnC;AACF,CAAC;AAED;AACA;AACA;AAEA;;;;;;;;;;;;;;;;;;AAkBA,OAAO,MAAMoC,OAAO,GAAGA,CACrB7C,OAA8B,EAC9BkB,MAAiB,EACjBC,MAAiB,EACjBZ,IAAO,KACM;EACb;EACA,IAAI,CAACP,OAAO,CAAC5C,KAAK,CAACU,GAAG,CAACoD,MAAM,CAAC,EAAE;IAC9B,MAAMlC,WAAW,CAACkC,MAAM,CAAC;EAC3B;EACA,IAAI,CAAClB,OAAO,CAAC5C,KAAK,CAACU,GAAG,CAACqD,MAAM,CAAC,EAAE;IAC9B,MAAMnC,WAAW,CAACmC,MAAM,CAAC;EAC3B;EAEA,MAAMjD,SAAS,GAAG8B,OAAO,CAACH,aAAa;EAEvC;EACA,MAAM1B,QAAQ,GAAG,IAAIpB,IAAI,CAAC;IAAEmE,MAAM;IAAEC,MAAM;IAAEZ;EAAI,CAAE,CAAC;EACnDP,OAAO,CAACtC,KAAK,CAAC0C,GAAG,CAAClC,SAAS,EAAEC,QAAQ,CAAC;EAEtC;EACA,MAAM2E,eAAe,GAAG9C,OAAO,CAACN,SAAS,CAAC1B,GAAG,CAACkD,MAAM,CAAC;EACrD,IAAI4B,eAAe,KAAKC,SAAS,EAAE;IACjCD,eAAe,CAAC9B,IAAI,CAAC9C,SAAS,CAAC;EACjC;EAEA,MAAM8E,sBAAsB,GAAGhD,OAAO,CAACL,gBAAgB,CAAC3B,GAAG,CAACmD,MAAM,CAAC;EACnE,IAAI6B,sBAAsB,KAAKD,SAAS,EAAE;IACxCC,sBAAsB,CAAChC,IAAI,CAAC9C,SAAS,CAAC;EACxC;EAEA;EACA,IAAI8B,OAAO,CAACrC,IAAI,KAAK,YAAY,EAAE;IACjC,MAAMsF,eAAe,GAAGjD,OAAO,CAACN,SAAS,CAAC1B,GAAG,CAACmD,MAAM,CAAC;IACrD,IAAI8B,eAAe,KAAKF,SAAS,EAAE;MACjCE,eAAe,CAACjC,IAAI,CAAC9C,SAAS,CAAC;IACjC;IAEA,MAAMgF,sBAAsB,GAAGlD,OAAO,CAACL,gBAAgB,CAAC3B,GAAG,CAACkD,MAAM,CAAC;IACnE,IAAIgC,sBAAsB,KAAKH,SAAS,EAAE;MACxCG,sBAAsB,CAAClC,IAAI,CAAC9C,SAAS,CAAC;IACxC;EACF;EAEA;EACA8B,OAAO,CAACH,aAAa,GAAGG,OAAO,CAACH,aAAa,GAAG,CAAC;EAEjD;EACA;EACA+C,6BAA6B,CAAC5C,OAAO,CAAC;EAEtC,OAAO9B,SAAS;AAClB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;AAoBA,OAAO,MAAMmE,UAAU,GAAGA,CACxBrC,OAA8B,EAC9BpC,SAAoB,KACZ;EACR;EACA,IAAI,CAACoC,OAAO,CAAC5C,KAAK,CAACU,GAAG,CAACF,SAAS,CAAC,EAAE;IACjC,OAAM,CAAC;EACT;EAEA;EACA,MAAM2E,aAAa,GAAqB,EAAE;EAE1C;EACA,MAAMY,aAAa,GAAGnD,OAAO,CAACN,SAAS,CAAC1B,GAAG,CAACJ,SAAS,CAAC;EACtD,IAAIuF,aAAa,KAAKJ,SAAS,EAAE;IAC/B,KAAK,MAAMK,IAAI,IAAID,aAAa,EAAE;MAChCZ,aAAa,CAACvB,IAAI,CAACoC,IAAI,CAAC;IAC1B;EACF;EAEA;EACA,MAAMC,aAAa,GAAGrD,OAAO,CAACL,gBAAgB,CAAC3B,GAAG,CAACJ,SAAS,CAAC;EAC7D,IAAIyF,aAAa,KAAKN,SAAS,EAAE;IAC/B,KAAK,MAAMK,IAAI,IAAIC,aAAa,EAAE;MAChCd,aAAa,CAACvB,IAAI,CAACoC,IAAI,CAAC;IAC1B;EACF;EAEA;EACA,KAAK,MAAMlF,SAAS,IAAIqE,aAAa,EAAE;IACrCe,kBAAkB,CAACtD,OAAO,EAAE9B,SAAS,CAAC;EACxC;EAEA;EACA8B,OAAO,CAAC5C,KAAK,CAACmG,MAAM,CAAC3F,SAAS,CAAC;EAC/BoC,OAAO,CAACN,SAAS,CAAC6D,MAAM,CAAC3F,SAAS,CAAC;EACnCoC,OAAO,CAACL,gBAAgB,CAAC4D,MAAM,CAAC3F,SAAS,CAAC;EAE1C;EACA;EACA+E,4BAA4B,CAAC3C,OAAO,CAAC;AACvC,CAAC;AAED;;;;;;;;;;;;;;;;;;;;AAoBA,OAAO,MAAMwC,UAAU,GAAGA,CACxBxC,OAA8B,EAC9B9B,SAAoB,KACZ;EACR,MAAMsF,UAAU,GAAGF,kBAAkB,CAACtD,OAAO,EAAE9B,SAAS,CAAC;EAEzD;EACA;EACA,IAAIsF,UAAU,EAAE;IACdb,4BAA4B,CAAC3C,OAAO,CAAC;EACvC;AACF,CAAC;AAED;AACA,MAAMsD,kBAAkB,GAAGA,CACzBtD,OAA8B,EAC9B9B,SAAoB,KACT;EACX;EACA,MAAMkF,IAAI,GAAGpD,OAAO,CAACtC,KAAK,CAACM,GAAG,CAACE,SAAS,CAAC;EACzC,IAAIkF,IAAI,KAAKL,SAAS,EAAE;IACtB,OAAO,KAAK,EAAC;EACf;EAEA,MAAM;IAAE7B,MAAM;IAAEC;EAAM,CAAE,GAAGiC,IAAI;EAE/B;EACA,MAAMN,eAAe,GAAG9C,OAAO,CAACN,SAAS,CAAC1B,GAAG,CAACkD,MAAM,CAAC;EACrD,IAAI4B,eAAe,KAAKC,SAAS,EAAE;IACjC,MAAMlC,KAAK,GAAGiC,eAAe,CAACW,OAAO,CAACvF,SAAS,CAAC;IAChD,IAAI2C,KAAK,KAAK,CAAC,CAAC,EAAE;MAChBiC,eAAe,CAACY,MAAM,CAAC7C,KAAK,EAAE,CAAC,CAAC;IAClC;EACF;EAEA,MAAMmC,sBAAsB,GAAGhD,OAAO,CAACL,gBAAgB,CAAC3B,GAAG,CAACmD,MAAM,CAAC;EACnE,IAAI6B,sBAAsB,KAAKD,SAAS,EAAE;IACxC,MAAMlC,KAAK,GAAGmC,sBAAsB,CAACS,OAAO,CAACvF,SAAS,CAAC;IACvD,IAAI2C,KAAK,KAAK,CAAC,CAAC,EAAE;MAChBmC,sBAAsB,CAACU,MAAM,CAAC7C,KAAK,EAAE,CAAC,CAAC;IACzC;EACF;EAEA;EACA,IAAIb,OAAO,CAACrC,IAAI,KAAK,YAAY,EAAE;IACjC,MAAMsF,eAAe,GAAGjD,OAAO,CAACN,SAAS,CAAC1B,GAAG,CAACmD,MAAM,CAAC;IACrD,IAAI8B,eAAe,KAAKF,SAAS,EAAE;MACjC,MAAMlC,KAAK,GAAGoC,eAAe,CAACQ,OAAO,CAACvF,SAAS,CAAC;MAChD,IAAI2C,KAAK,KAAK,CAAC,CAAC,EAAE;QAChBoC,eAAe,CAACS,MAAM,CAAC7C,KAAK,EAAE,CAAC,CAAC;MAClC;IACF;IAEA,MAAMqC,sBAAsB,GAAGlD,OAAO,CAACL,gBAAgB,CAAC3B,GAAG,CAACkD,MAAM,CAAC;IACnE,IAAIgC,sBAAsB,KAAKH,SAAS,EAAE;MACxC,MAAMlC,KAAK,GAAGqC,sBAAsB,CAACO,OAAO,CAACvF,SAAS,CAAC;MACvD,IAAI2C,KAAK,KAAK,CAAC,CAAC,EAAE;QAChBqC,sBAAsB,CAACQ,MAAM,CAAC7C,KAAK,EAAE,CAAC,CAAC;MACzC;IACF;EACF;EAEA;EACAb,OAAO,CAACtC,KAAK,CAAC6F,MAAM,CAACrF,SAAS,CAAC;EAE/B,OAAO,IAAI,EAAC;AACd,CAAC;AAED;AACA;AACA;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BA,OAAO,MAAMyF,OAAO,GAAGA,CACrBrE,KAA6C,EAC7CpB,SAAoB,KACOoB,KAAK,CAAC5B,KAAK,CAACI,GAAG,CAACI,SAAS,CAAC,GAAGtB,MAAM,CAACmD,IAAI,CAACT,KAAK,CAAC5B,KAAK,CAACM,GAAG,CAACE,SAAS,CAAE,CAAC,GAAGtB,MAAM,CAAC6D,IAAI,EAAE;AAElH;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BA,OAAO,MAAMmD,OAAO,GAAGA,CACrBtE,KAA6C,EAC7C4B,MAAiB,EACjBC,MAAiB,KACN;EACX,MAAM0C,aAAa,GAAGvE,KAAK,CAACI,SAAS,CAAC1B,GAAG,CAACkD,MAAM,CAAC;EACjD,IAAI2C,aAAa,KAAKd,SAAS,EAAE;IAC/B,OAAO,KAAK;EACd;EAEA;EACA,KAAK,MAAM7E,SAAS,IAAI2F,aAAa,EAAE;IACrC,MAAMT,IAAI,GAAG9D,KAAK,CAAC5B,KAAK,CAACM,GAAG,CAACE,SAAS,CAAC;IACvC,IAAIkF,IAAI,KAAKL,SAAS,IAAIK,IAAI,CAACjC,MAAM,KAAKA,MAAM,EAAE;MAChD,OAAO,IAAI;IACb;EACF;EAEA,OAAO,KAAK;AACd,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;AAyBA,OAAO,MAAMzC,SAAS,GACpBY,KAA6C,IAClCA,KAAK,CAAC5B,KAAK,CAACD,IAAI;AAE7B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6BA,OAAO,MAAMqG,SAAS,GAAGA,CACvBxE,KAA6C,EAC7C1B,SAAoB,KACA;EACpB;EACA,IAAI0B,KAAK,CAAC3B,IAAI,KAAK,YAAY,EAAE;IAC/B,OAAOoG,sBAAsB,CAACzE,KAAY,EAAE1B,SAAS,CAAC;EACxD;EAEA,MAAMiG,aAAa,GAAGvE,KAAK,CAACI,SAAS,CAAC1B,GAAG,CAACJ,SAAS,CAAC;EACpD,IAAIiG,aAAa,KAAKd,SAAS,EAAE;IAC/B,OAAO,EAAE;EACX;EAEA,MAAMb,MAAM,GAAqB,EAAE;EACnC,KAAK,MAAMhE,SAAS,IAAI2F,aAAa,EAAE;IACrC,MAAMT,IAAI,GAAG9D,KAAK,CAAC5B,KAAK,CAACM,GAAG,CAACE,SAAS,CAAC;IACvC,IAAIkF,IAAI,KAAKL,SAAS,EAAE;MACtBb,MAAM,CAAClB,IAAI,CAACoC,IAAI,CAACjC,MAAM,CAAC;IAC1B;EACF;EAEA,OAAOe,MAAM;AACf,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BA,OAAO,MAAM8B,iBAAiB,GAAGA,CAC/B1E,KAA6C,EAC7C1B,SAAoB,EACpBqG,SAAoB,KACA;EACpB,MAAMC,YAAY,GAAGD,SAAS,KAAK,UAAU,GACzC3E,KAAK,CAACK,gBAAgB,GACtBL,KAAK,CAACI,SAAS;EAEnB,MAAMmE,aAAa,GAAGK,YAAY,CAAClG,GAAG,CAACJ,SAAS,CAAC;EACjD,IAAIiG,aAAa,KAAKd,SAAS,EAAE;IAC/B,OAAO,EAAE;EACX;EAEA,MAAMb,MAAM,GAAqB,EAAE;EACnC,KAAK,MAAMhE,SAAS,IAAI2F,aAAa,EAAE;IACrC,MAAMT,IAAI,GAAG9D,KAAK,CAAC5B,KAAK,CAACM,GAAG,CAACE,SAAS,CAAC;IACvC,IAAIkF,IAAI,KAAKL,SAAS,EAAE;MACtB;MACA,MAAMoB,YAAY,GAAGF,SAAS,KAAK,UAAU,GACzCb,IAAI,CAAClC,MAAM,GACXkC,IAAI,CAACjC,MAAM;MACfe,MAAM,CAAClB,IAAI,CAACmD,YAAY,CAAC;IAC3B;EACF;EAEA,OAAOjC,MAAM;AACf,CAAC;AAkBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+BA,OAAO,MAAMkC,UAAU,GAAGA,CACxB9E,KAA6C,EAC7C+E,OAA+B,KACrB;EACV,MAAM;IACJC,SAAS,GAAI/D,IAAO,IAAKgE,MAAM,CAAChE,IAAI,CAAC;IACrCiE,SAAS,GAAG,GAAG;IACfC,SAAS,GAAIlE,IAAO,IAAKgE,MAAM,CAAChE,IAAI;EAAC,CACtC,GAAG8D,OAAO,IAAI,EAAE;EAEjB,MAAMK,UAAU,GAAGpF,KAAK,CAAC3B,IAAI,KAAK,UAAU;EAC5C,MAAMgH,SAAS,GAAGD,UAAU,GAAG,SAAS,GAAG,OAAO;EAClD,MAAME,YAAY,GAAGF,UAAU,GAAG,IAAI,GAAG,IAAI;EAE7C,MAAMG,KAAK,GAAkB,EAAE;EAC/BA,KAAK,CAAC7D,IAAI,CAAC,GAAG2D,SAAS,IAAIH,SAAS,IAAI,CAAC;EAEzC;EACA,KAAK,MAAM,CAAC5G,SAAS,EAAEC,QAAQ,CAAC,IAAIyB,KAAK,CAAClC,KAAK,EAAE;IAC/C,MAAM0H,KAAK,GAAGL,SAAS,CAAC5G,QAAQ,CAAC,CAACkH,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;IACvDF,KAAK,CAAC7D,IAAI,CAAC,MAAMpD,SAAS,aAAakH,KAAK,KAAK,CAAC;EACpD;EAEA;EACA,KAAK,MAAM,GAAG3G,QAAQ,CAAC,IAAImB,KAAK,CAAC5B,KAAK,EAAE;IACtC,MAAMoH,KAAK,GAAGR,SAAS,CAACnG,QAAQ,CAACoC,IAAI,CAAC,CAACwE,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;IAC5DF,KAAK,CAAC7D,IAAI,CAAC,MAAM7C,QAAQ,CAAC+C,MAAM,KAAK0D,YAAY,KAAKzG,QAAQ,CAACgD,MAAM,aAAa2D,KAAK,KAAK,CAAC;EAC/F;EAEAD,KAAK,CAAC7D,IAAI,CAAC,GAAG,CAAC;EACf,OAAO6D,KAAK,CAACG,IAAI,CAAC,IAAI,CAAC;AACzB,CAAC;AAoDD;AACA,MAAMC,kBAAkB,GAAIH,KAAa,IAAY;EACnD;EACA;EACA,OAAOA,KAAK,CACTC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CACrBA,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CACvBA,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CACrBA,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CACrBA,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CACtBA,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CACtBA,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CACtBA,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CACvBA,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CACvBA,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CACtBA,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CACtBA,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CACvBA,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CACtBA,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC;AAC5B,CAAC;AAED;AACA,MAAMG,iBAAiB,GAAGA,CAACC,MAAc,EAAEL,KAAa,EAAEM,KAAuB,KAAY;EAC3F,QAAQA,KAAK;IACX,KAAK,WAAW;MACd,OAAO,GAAGD,MAAM,KAAKL,KAAK,IAAI;IAChC,KAAK,SAAS;MACZ,OAAO,GAAGK,MAAM,KAAKL,KAAK,IAAI;IAChC,KAAK,QAAQ;MACX,OAAO,GAAGK,MAAM,MAAML,KAAK,KAAK;IAClC,KAAK,SAAS;MACZ,OAAO,GAAGK,MAAM,KAAKL,KAAK,IAAI;IAChC,KAAK,SAAS;MACZ,OAAO,GAAGK,MAAM,MAAML,KAAK,KAAK;IAClC,KAAK,SAAS;MACZ,OAAO,GAAGK,MAAM,MAAML,KAAK,KAAK;IAClC,KAAK,YAAY;MACf,OAAO,GAAGK,MAAM,MAAML,KAAK,KAAK;IAClC,KAAK,aAAa;MAChB,OAAO,GAAGK,MAAM,MAAML,KAAK,KAAK;EACpC;AACF,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BA,OAAO,MAAMO,SAAS,GAAGA,CACvB/F,KAA6C,EAC7C+E,OAA8B,KACpB;EACV;EACA,MAAM;IACJiB,WAAW;IACXrB,SAAS,GAAG,IAAI;IAChBK,SAAS,GAAI/D,IAAO,IAAKgE,MAAM,CAAChE,IAAI,CAAC;IACrCkE,SAAS,GAAIlE,IAAO,IAAKgE,MAAM,CAAChE,IAAI,CAAC;IACrCgF,SAAS,GAAGA,CAAA,KAAM;EAAoB,CACvC,GAAGlB,OAAO,IAAI,EAAE;EAEjB;EACA,MAAMmB,gBAAgB,GAAGF,WAAW,KACjChG,KAAK,CAAC3B,IAAI,KAAK,UAAU,GAAG,WAAW,GAAG,OAAO,CAAC;EAErD;EACA,MAAMkH,KAAK,GAAkB,EAAE;EAC/BA,KAAK,CAAC7D,IAAI,CAAC,GAAGwE,gBAAgB,IAAIvB,SAAS,EAAE,CAAC;EAE9C;EACA,KAAK,MAAM,CAACrG,SAAS,EAAEC,QAAQ,CAAC,IAAIyB,KAAK,CAAClC,KAAK,EAAE;IAC/C,MAAM+H,MAAM,GAAGZ,MAAM,CAAC3G,SAAS,CAAC;IAChC,MAAMkH,KAAK,GAAGG,kBAAkB,CAACR,SAAS,CAAC5G,QAAQ,CAAC,CAAC;IACrD,MAAMuH,KAAK,GAAGG,SAAS,CAAC1H,QAAQ,CAAC;IACjC,MAAM4H,aAAa,GAAGP,iBAAiB,CAACC,MAAM,EAAEL,KAAK,EAAEM,KAAK,CAAC;IAC7DP,KAAK,CAAC7D,IAAI,CAAC,KAAKyE,aAAa,EAAE,CAAC;EAClC;EAEA;EACA,MAAMb,YAAY,GAAGY,gBAAgB,KAAK,WAAW,GAAG,KAAK,GAAG,KAAK;EACrE,KAAK,MAAM,GAAGrH,QAAQ,CAAC,IAAImB,KAAK,CAAC5B,KAAK,EAAE;IACtC,MAAMgI,QAAQ,GAAGnB,MAAM,CAACpG,QAAQ,CAAC+C,MAAM,CAAC;IACxC,MAAMyE,QAAQ,GAAGpB,MAAM,CAACpG,QAAQ,CAACgD,MAAM,CAAC;IACxC,MAAM2D,KAAK,GAAGG,kBAAkB,CAACX,SAAS,CAACnG,QAAQ,CAACoC,IAAI,CAAC,CAAC;IAE1D,IAAIuE,KAAK,EAAE;MACTD,KAAK,CAAC7D,IAAI,CAAC,KAAK0E,QAAQ,IAAId,YAAY,KAAKE,KAAK,MAAMa,QAAQ,EAAE,CAAC;IACrE,CAAC,MAAM;MACLd,KAAK,CAAC7D,IAAI,CAAC,KAAK0E,QAAQ,IAAId,YAAY,IAAIe,QAAQ,EAAE,CAAC;IACzD;EACF;EAEA,OAAOd,KAAK,CAACG,IAAI,CAAC,IAAI,CAAC;AACzB,CAAC;AA+BD;AAEA;AACA;AACA;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkCA,OAAO,MAAMlF,SAAS,GACpBR,KAA6C,IAClC;EACX;EACA,IAAI1C,MAAM,CAACuF,MAAM,CAAC7C,KAAK,CAACQ,SAAS,CAAC,EAAE;IAClC,OAAOR,KAAK,CAACQ,SAAS,CAACsC,KAAK;EAC9B;EAEA,IAAI9C,KAAK,CAAC3B,IAAI,KAAK,YAAY,EAAE;IAC/B,MAAMiI,OAAO,GAAG,IAAIC,GAAG,EAAa;IAEpC,KAAK,MAAMC,SAAS,IAAIxG,KAAK,CAAClC,KAAK,CAAC2I,IAAI,EAAE,EAAE;MAC1C,IAAIH,OAAO,CAAC9H,GAAG,CAACgI,SAAS,CAAC,EAAE;QAC1B;MACF;MAEAF,OAAO,CAACI,GAAG,CAACF,SAAS,CAAC;MACtB,MAAMG,KAAK,GAAyD,CAAC;QAAEhH,IAAI,EAAE6G,SAAS;QAAEI,MAAM,EAAE;MAAI,CAAE,CAAC;MAEvG,OAAOD,KAAK,CAACE,MAAM,GAAG,CAAC,EAAE;QACvB,MAAM;UAAElH,IAAI;UAAEiH;QAAM,CAAE,GAAGD,KAAK,CAACG,GAAG,EAAG;QACrC,MAAMC,aAAa,GAAGtC,sBAAsB,CAACzE,KAAY,EAAEL,IAAI,CAAC;QAEhE,KAAK,MAAMqH,QAAQ,IAAID,aAAa,EAAE;UACpC,IAAI,CAACT,OAAO,CAAC9H,GAAG,CAACwI,QAAQ,CAAC,EAAE;YAC1BV,OAAO,CAACI,GAAG,CAACM,QAAQ,CAAC;YACrBL,KAAK,CAACjF,IAAI,CAAC;cAAE/B,IAAI,EAAEqH,QAAQ;cAAEJ,MAAM,EAAEjH;YAAI,CAAE,CAAC;UAC9C,CAAC,MAAM,IAAIqH,QAAQ,KAAKJ,MAAM,EAAE;YAC9B5G,KAAK,CAACQ,SAAS,GAAGlD,MAAM,CAACmD,IAAI,CAAC,KAAK,CAAC;YACpC,OAAO,KAAK;UACd;QACF;MACF;IACF;IAEAT,KAAK,CAACQ,SAAS,GAAGlD,MAAM,CAACmD,IAAI,CAAC,IAAI,CAAC;IACnC,OAAO,IAAI;EACb;EAEA;EACA,MAAM6F,OAAO,GAAG,IAAIC,GAAG,EAAa;EACpC,MAAMU,cAAc,GAAG,IAAIV,GAAG,EAAa;EAK3C;EACA,KAAK,MAAMC,SAAS,IAAIxG,KAAK,CAAClC,KAAK,CAAC2I,IAAI,EAAE,EAAE;IAC1C,IAAIH,OAAO,CAAC9H,GAAG,CAACgI,SAAS,CAAC,EAAE;MAC1B,SAAQ,CAAC;IACX;IAEA;IACA,MAAMG,KAAK,GAAyB,CAAC,CAACH,SAAS,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;IAE9D,OAAOG,KAAK,CAACE,MAAM,GAAG,CAAC,EAAE;MACvB,MAAM,CAAClH,IAAI,EAAE6E,SAAS,EAAE0C,aAAa,EAAEC,YAAY,CAAC,GAAGR,KAAK,CAACA,KAAK,CAACE,MAAM,GAAG,CAAC,CAAC;MAE9E;MACA,IAAIM,YAAY,EAAE;QAChB,IAAIF,cAAc,CAACzI,GAAG,CAACmB,IAAI,CAAC,EAAE;UAC5B;UACAK,KAAK,CAACQ,SAAS,GAAGlD,MAAM,CAACmD,IAAI,CAAC,KAAK,CAAC;UACpC,OAAO,KAAK;QACd;QAEA,IAAI6F,OAAO,CAAC9H,GAAG,CAACmB,IAAI,CAAC,EAAE;UACrBgH,KAAK,CAACG,GAAG,EAAE;UACX;QACF;QAEAR,OAAO,CAACI,GAAG,CAAC/G,IAAI,CAAC;QACjBsH,cAAc,CAACP,GAAG,CAAC/G,IAAI,CAAC;QAExB;QACA,MAAMoH,aAAa,GAAGK,KAAK,CAACC,IAAI,CAAC3C,iBAAiB,CAAC1E,KAAK,EAAEL,IAAI,EAAE,UAAU,CAAC,CAAC;QAC5EgH,KAAK,CAACA,KAAK,CAACE,MAAM,GAAG,CAAC,CAAC,GAAG,CAAClH,IAAI,EAAEoH,aAAa,EAAE,CAAC,EAAE,KAAK,CAAC;QACzD;MACF;MAEA;MACA,IAAIG,aAAa,GAAG1C,SAAS,CAACqC,MAAM,EAAE;QACpC,MAAMG,QAAQ,GAAGxC,SAAS,CAAC0C,aAAa,CAAC;QACzCP,KAAK,CAACA,KAAK,CAACE,MAAM,GAAG,CAAC,CAAC,GAAG,CAAClH,IAAI,EAAE6E,SAAS,EAAE0C,aAAa,GAAG,CAAC,EAAE,KAAK,CAAC;QAErE,IAAID,cAAc,CAACzI,GAAG,CAACwI,QAAQ,CAAC,EAAE;UAChC;UACAhH,KAAK,CAACQ,SAAS,GAAGlD,MAAM,CAACmD,IAAI,CAAC,KAAK,CAAC;UACpC,OAAO,KAAK;QACd;QAEA,IAAI,CAAC6F,OAAO,CAAC9H,GAAG,CAACwI,QAAQ,CAAC,EAAE;UAC1BL,KAAK,CAACjF,IAAI,CAAC,CAACsF,QAAQ,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;QACrC;MACF,CAAC,MAAM;QACL;QACAC,cAAc,CAAChD,MAAM,CAACtE,IAAI,CAAC;QAC3BgH,KAAK,CAACG,GAAG,EAAE;MACb;IACF;EACF;EAEA;EACA9G,KAAK,CAACQ,SAAS,GAAGlD,MAAM,CAACmD,IAAI,CAAC,IAAI,CAAC;EACnC,OAAO,IAAI;AACb,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsCA,OAAO,MAAM6G,WAAW,GACtBtH,KAAmE,IACxD;EACX,MAAMuH,QAAQ,GAAG,IAAIpH,GAAG,EAAoB;EAC5C,MAAMqH,UAAU,GAAG,IAAIjB,GAAG,EAAa;EACvC,IAAIkB,gBAAgB,GAAG,IAAI;EAE3B;EACA,KAAK,MAAMjB,SAAS,IAAIxG,KAAK,CAAClC,KAAK,CAAC2I,IAAI,EAAE,EAAE;IAC1C,IAAI,CAACe,UAAU,CAAChJ,GAAG,CAACgI,SAAS,CAAC,EAAE;MAC9B;MACA,MAAMkB,KAAK,GAAqB,CAAClB,SAAS,CAAC;MAC3Ce,QAAQ,CAACzG,GAAG,CAAC0F,SAAS,EAAE,CAAC,CAAC,EAAC;MAC3BgB,UAAU,CAACd,GAAG,CAACF,SAAS,CAAC;MAEzB,OAAOkB,KAAK,CAACb,MAAM,GAAG,CAAC,IAAIY,gBAAgB,EAAE;QAC3C,MAAME,OAAO,GAAGD,KAAK,CAACE,KAAK,EAAG;QAC9B,MAAMC,YAAY,GAAGN,QAAQ,CAAC7I,GAAG,CAACiJ,OAAO,CAAE;QAC3C,MAAMG,aAAa,GAAUD,YAAY,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;QAEvD;QACA,MAAMd,aAAa,GAAGtC,sBAAsB,CAACzE,KAAK,EAAE2H,OAAO,CAAC;QAC5D,KAAK,MAAMX,QAAQ,IAAID,aAAa,EAAE;UACpC,IAAI,CAACS,UAAU,CAAChJ,GAAG,CAACwI,QAAQ,CAAC,EAAE;YAC7B;YACAO,QAAQ,CAACzG,GAAG,CAACkG,QAAQ,EAAEc,aAAa,CAAC;YACrCN,UAAU,CAACd,GAAG,CAACM,QAAQ,CAAC;YACxBU,KAAK,CAAChG,IAAI,CAACsF,QAAQ,CAAC;UACtB,CAAC,MAAM;YACL;YACA,IAAIO,QAAQ,CAAC7I,GAAG,CAACsI,QAAQ,CAAC,KAAKa,YAAY,EAAE;cAC3CJ,gBAAgB,GAAG,KAAK;cACxB;YACF;UACF;QACF;MACF;MAEA;MACA,IAAI,CAACA,gBAAgB,EAAE;QACrB;MACF;IACF;EACF;EAEA,OAAOA,gBAAgB;AACzB,CAAC;AAED;;;;AAIA,MAAMhD,sBAAsB,GAAGA,CAC7BzE,KAAmE,EACnE1B,SAAoB,KACA;EACpB,MAAMkG,SAAS,GAAG,IAAI+B,GAAG,EAAa;EAEtC;EACA,MAAMhC,aAAa,GAAGvE,KAAK,CAACI,SAAS,CAAC1B,GAAG,CAACJ,SAAS,CAAC;EACpD,IAAIiG,aAAa,KAAKd,SAAS,EAAE;IAC/B,KAAK,MAAM7E,SAAS,IAAI2F,aAAa,EAAE;MACrC,MAAMT,IAAI,GAAG9D,KAAK,CAAC5B,KAAK,CAACM,GAAG,CAACE,SAAS,CAAC;MACvC,IAAIkF,IAAI,KAAKL,SAAS,EAAE;QACtB;QACA,MAAMsE,SAAS,GAAGjE,IAAI,CAAClC,MAAM,KAAKtD,SAAS,GAAGwF,IAAI,CAACjC,MAAM,GAAGiC,IAAI,CAAClC,MAAM;QACvE4C,SAAS,CAACkC,GAAG,CAACqB,SAAS,CAAC;MAC1B;IACF;EACF;EAEA,OAAOX,KAAK,CAACC,IAAI,CAAC7C,SAAS,CAAC;AAC9B,CAAC;AAED,MAAMwD,qBAAqB,GAAGA,CAC5BhI,KAA6C,EAC7C1B,SAAoB,EACpBqG,SAAoB,KAEpB3E,KAAK,CAAC3B,IAAI,KAAK,YAAY,GACvBoG,sBAAsB,CAACzE,KAAY,EAAE1B,SAAS,CAAC,GAC/CoG,iBAAiB,CAAC1E,KAAK,EAAE1B,SAAS,EAAEqG,SAAS,CAAC;AAEpD,MAAMsD,sBAAsB,GAAGA,CAC7BjI,KAA6C,EAC7C2H,OAAkB,EAClB7D,IAAa,KACC9D,KAAK,CAAC3B,IAAI,KAAK,YAAY,IAAIyF,IAAI,CAACjC,MAAM,KAAK8F,OAAO,GAAG7D,IAAI,CAAClC,MAAM,GAAGkC,IAAI,CAACjC,MAAM;AAElG;;;;;;;;;;;;;;;;;;;;;;;;AAwBA,OAAO,MAAMqG,mBAAmB,GAC9BlI,KAAmE,IACxC;EAC3B,MAAMsG,OAAO,GAAG,IAAIC,GAAG,EAAa;EACpC,MAAM4B,UAAU,GAA4B,EAAE;EAC9C,KAAK,MAAM3B,SAAS,IAAIxG,KAAK,CAAClC,KAAK,CAAC2I,IAAI,EAAE,EAAE;IAC1C,IAAI,CAACH,OAAO,CAAC9H,GAAG,CAACgI,SAAS,CAAC,EAAE;MAC3B;MACA,MAAM4B,SAAS,GAAqB,EAAE;MACtC,MAAMzB,KAAK,GAAqB,CAACH,SAAS,CAAC;MAE3C,OAAOG,KAAK,CAACE,MAAM,GAAG,CAAC,EAAE;QACvB,MAAMc,OAAO,GAAGhB,KAAK,CAACG,GAAG,EAAG;QAC5B,IAAI,CAACR,OAAO,CAAC9H,GAAG,CAACmJ,OAAO,CAAC,EAAE;UACzBrB,OAAO,CAACI,GAAG,CAACiB,OAAO,CAAC;UACpBS,SAAS,CAAC1G,IAAI,CAACiG,OAAO,CAAC;UAEvB;UACA,MAAMZ,aAAa,GAAGtC,sBAAsB,CAACzE,KAAK,EAAE2H,OAAO,CAAC;UAC5D,KAAK,MAAMX,QAAQ,IAAID,aAAa,EAAE;YACpC,IAAI,CAACT,OAAO,CAAC9H,GAAG,CAACwI,QAAQ,CAAC,EAAE;cAC1BL,KAAK,CAACjF,IAAI,CAACsF,QAAQ,CAAC;YACtB;UACF;QACF;MACF;MAEAmB,UAAU,CAACzG,IAAI,CAAC0G,SAAS,CAAC;IAC5B;EACF;EAEA,OAAOD,UAAU;AACnB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;AAwBA,OAAO,MAAME,2BAA2B,GACtCrI,KAA6C,IAClB;EAC3B,MAAMsG,OAAO,GAAG,IAAIC,GAAG,EAAa;EACpC,MAAM+B,WAAW,GAAqB,EAAE;EAOxC,KAAK,MAAM9B,SAAS,IAAIxG,KAAK,CAAClC,KAAK,CAAC2I,IAAI,EAAE,EAAE;IAC1C,IAAIH,OAAO,CAAC9H,GAAG,CAACgI,SAAS,CAAC,EAAE;MAC1B;IACF;IAEA,MAAMG,KAAK,GAAyB,CAAC,CAACH,SAAS,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;IAE9D,OAAOG,KAAK,CAACE,MAAM,GAAG,CAAC,EAAE;MACvB,MAAM,CAAClH,IAAI,EAAEoH,aAAa,EAAEG,aAAa,EAAEC,YAAY,CAAC,GAAGR,KAAK,CAACA,KAAK,CAACE,MAAM,GAAG,CAAC,CAAC;MAElF,IAAIM,YAAY,EAAE;QAChB,IAAIb,OAAO,CAAC9H,GAAG,CAACmB,IAAI,CAAC,EAAE;UACrBgH,KAAK,CAACG,GAAG,EAAE;UACX;QACF;QAEAR,OAAO,CAACI,GAAG,CAAC/G,IAAI,CAAC;QACjB,MAAM4I,iBAAiB,GAAG/D,SAAS,CAACxE,KAAK,EAAEL,IAAI,CAAC;QAChDgH,KAAK,CAACA,KAAK,CAACE,MAAM,GAAG,CAAC,CAAC,GAAG,CAAClH,IAAI,EAAE4I,iBAAiB,EAAE,CAAC,EAAE,KAAK,CAAC;QAC7D;MACF;MAEA;MACA,IAAIrB,aAAa,GAAGH,aAAa,CAACF,MAAM,EAAE;QACxC,MAAMG,QAAQ,GAAGD,aAAa,CAACG,aAAa,CAAC;QAC7CP,KAAK,CAACA,KAAK,CAACE,MAAM,GAAG,CAAC,CAAC,GAAG,CAAClH,IAAI,EAAEoH,aAAa,EAAEG,aAAa,GAAG,CAAC,EAAE,KAAK,CAAC;QAEzE,IAAI,CAACZ,OAAO,CAAC9H,GAAG,CAACwI,QAAQ,CAAC,EAAE;UAC1BL,KAAK,CAACjF,IAAI,CAAC,CAACsF,QAAQ,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;QACrC;MACF,CAAC,MAAM;QACL;QACAsB,WAAW,CAAC5G,IAAI,CAAC/B,IAAI,CAAC;QACtBgH,KAAK,CAACG,GAAG,EAAE;MACb;IACF;EACF;EAEA;EACAR,OAAO,CAAC/D,KAAK,EAAE;EACf,MAAMiG,IAAI,GAA4B,EAAE;EAExC,KAAK,IAAIC,CAAC,GAAGH,WAAW,CAACzB,MAAM,GAAG,CAAC,EAAE4B,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;IAChD,MAAMjC,SAAS,GAAG8B,WAAW,CAACG,CAAC,CAAC;IAChC,IAAInC,OAAO,CAAC9H,GAAG,CAACgI,SAAS,CAAC,EAAE;MAC1B;IACF;IAEA,MAAMkC,GAAG,GAAqB,EAAE;IAChC,MAAM/B,KAAK,GAAqB,CAACH,SAAS,CAAC;IAE3C,OAAOG,KAAK,CAACE,MAAM,GAAG,CAAC,EAAE;MACvB,MAAMlH,IAAI,GAAGgH,KAAK,CAACG,GAAG,EAAG;MAEzB,IAAIR,OAAO,CAAC9H,GAAG,CAACmB,IAAI,CAAC,EAAE;QACrB;MACF;MAEA2G,OAAO,CAACI,GAAG,CAAC/G,IAAI,CAAC;MACjB+I,GAAG,CAAChH,IAAI,CAAC/B,IAAI,CAAC;MAEd;MACA,MAAMU,gBAAgB,GAAGL,KAAK,CAACK,gBAAgB,CAAC3B,GAAG,CAACiB,IAAI,CAAC;MACzD,IAAIU,gBAAgB,KAAKoD,SAAS,EAAE;QAClC,KAAK,MAAM7E,SAAS,IAAIyB,gBAAgB,EAAE;UACxC,MAAMyD,IAAI,GAAG9D,KAAK,CAAC5B,KAAK,CAACM,GAAG,CAACE,SAAS,CAAC;UACvC,IAAIkF,IAAI,KAAKL,SAAS,EAAE;YACtB,MAAMkF,WAAW,GAAG7E,IAAI,CAAClC,MAAM;YAC/B,IAAI,CAAC0E,OAAO,CAAC9H,GAAG,CAACmK,WAAW,CAAC,EAAE;cAC7BhC,KAAK,CAACjF,IAAI,CAACiH,WAAW,CAAC;YACzB;UACF;QACF;MACF;IACF;IAEAH,IAAI,CAAC9G,IAAI,CAACgH,GAAG,CAAC;EAChB;EAEA,OAAOF,IAAI;AACb,CAAC;AAuDD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6BA,OAAO,MAAMI,QAAQ,GAAGA,CACtB5I,KAA6C,EAC7C6I,MAAyB,KACO;EAChC,MAAM;IAAEC,IAAI;IAAElH,MAAM;IAAEC;EAAM,CAAE,GAAGgH,MAAM;EACvC;EACA,IAAI,CAAC7I,KAAK,CAAClC,KAAK,CAACU,GAAG,CAACoD,MAAM,CAAC,EAAE;IAC5B,MAAMlC,WAAW,CAACkC,MAAM,CAAC;EAC3B;EACA,IAAI,CAAC5B,KAAK,CAAClC,KAAK,CAACU,GAAG,CAACqD,MAAM,CAAC,EAAE;IAC5B,MAAMnC,WAAW,CAACmC,MAAM,CAAC;EAC3B;EAEA;EACA,IAAID,MAAM,KAAKC,MAAM,EAAE;IACrB,OAAOvE,MAAM,CAACmD,IAAI,CAAC;MACjBsI,IAAI,EAAE,CAACnH,MAAM,CAAC;MACdoH,QAAQ,EAAE,CAAC;MACXC,KAAK,EAAE;KACR,CAAC;EACJ;EAEA;EACA,MAAMC,SAAS,GAAG,IAAI/I,GAAG,EAAqB;EAC9C,MAAMgJ,QAAQ,GAAG,IAAIhJ,GAAG,EAAsD;EAC9E,MAAMmG,OAAO,GAAG,IAAIC,GAAG,EAAa;EAEpC;EACA;EACA,KAAK,MAAM5G,IAAI,IAAIK,KAAK,CAAClC,KAAK,CAAC2I,IAAI,EAAE,EAAE;IACrCyC,SAAS,CAACpI,GAAG,CAACnB,IAAI,EAAEA,IAAI,KAAKiC,MAAM,GAAG,CAAC,GAAGwH,QAAQ,CAAC;IACnDD,QAAQ,CAACrI,GAAG,CAACnB,IAAI,EAAE,IAAI,CAAC;EAC1B;EAEA;EACA,MAAM0J,aAAa,GAAiD,CAClE;IAAE1J,IAAI,EAAEiC,MAAM;IAAEoH,QAAQ,EAAE;EAAC,CAAE,CAC9B;EAED,OAAOK,aAAa,CAACxC,MAAM,GAAG,CAAC,EAAE;IAC/B;IACA,IAAIyC,QAAQ,GAAG,CAAC;IAChB,KAAK,IAAIb,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGY,aAAa,CAACxC,MAAM,EAAE4B,CAAC,EAAE,EAAE;MAC7C,IAAIY,aAAa,CAACZ,CAAC,CAAC,CAACO,QAAQ,GAAGK,aAAa,CAACC,QAAQ,CAAC,CAACN,QAAQ,EAAE;QAChEM,QAAQ,GAAGb,CAAC;MACd;IACF;IAEA,MAAMd,OAAO,GAAG0B,aAAa,CAACjF,MAAM,CAACkF,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,MAAMC,WAAW,GAAG5B,OAAO,CAAChI,IAAI;IAEhC;IACA,IAAI2G,OAAO,CAAC9H,GAAG,CAAC+K,WAAW,CAAC,EAAE;MAC5B;IACF;IAEAjD,OAAO,CAACI,GAAG,CAAC6C,WAAW,CAAC;IAExB;IACA,IAAIA,WAAW,KAAK1H,MAAM,EAAE;MAC1B;IACF;IAEA;IACA,MAAM2H,eAAe,GAAGN,SAAS,CAACxK,GAAG,CAAC6K,WAAW,CAAE;IAEnD;IACA,MAAMhF,aAAa,GAAGvE,KAAK,CAACI,SAAS,CAAC1B,GAAG,CAAC6K,WAAW,CAAC;IACtD,IAAIhF,aAAa,KAAKd,SAAS,EAAE;MAC/B,KAAK,MAAM7E,SAAS,IAAI2F,aAAa,EAAE;QACrC,MAAMT,IAAI,GAAG9D,KAAK,CAAC5B,KAAK,CAACM,GAAG,CAACE,SAAS,CAAC;QACvC,IAAIkF,IAAI,KAAKL,SAAS,EAAE;UACtB,MAAMuD,QAAQ,GAAGiB,sBAAsB,CAACjI,KAAK,EAAEuJ,WAAW,EAAEzF,IAAI,CAAC;UACjE,MAAM2F,MAAM,GAAGX,IAAI,CAAChF,IAAI,CAAC7C,IAAI,CAAC;UAE9B;UACA,IAAIwI,MAAM,GAAG,CAAC,EAAE;YACd,MAAM,IAAIC,KAAK,CAAC,kEAAkED,MAAM,EAAE,CAAC;UAC7F;UAEA,MAAME,WAAW,GAAGH,eAAe,GAAGC,MAAM;UAC5C,MAAMG,gBAAgB,GAAGV,SAAS,CAACxK,GAAG,CAACsI,QAAQ,CAAE;UAEjD;UACA,IAAI2C,WAAW,GAAGC,gBAAgB,EAAE;YAClCV,SAAS,CAACpI,GAAG,CAACkG,QAAQ,EAAE2C,WAAW,CAAC;YACpCR,QAAQ,CAACrI,GAAG,CAACkG,QAAQ,EAAE;cAAErH,IAAI,EAAE4J,WAAW;cAAE1K,QAAQ,EAAEiF,IAAI,CAAC7C;YAAI,CAAE,CAAC;YAElE;YACA,IAAI,CAACqF,OAAO,CAAC9H,GAAG,CAACwI,QAAQ,CAAC,EAAE;cAC1BqC,aAAa,CAAC3H,IAAI,CAAC;gBAAE/B,IAAI,EAAEqH,QAAQ;gBAAEgC,QAAQ,EAAEW;cAAW,CAAE,CAAC;YAC/D;UACF;QACF;MACF;IACF;EACF;EAEA;EACA,MAAME,cAAc,GAAGX,SAAS,CAACxK,GAAG,CAACmD,MAAM,CAAE;EAC7C,IAAIgI,cAAc,KAAKT,QAAQ,EAAE;IAC/B,OAAO9L,MAAM,CAAC6D,IAAI,EAAE,EAAC;EACvB;EAEA;EACA,MAAM4H,IAAI,GAAqB,EAAE;EACjC,MAAME,KAAK,GAAa,EAAE;EAC1B,IAAIM,WAAW,GAAqB1H,MAAM;EAE1C,OAAO0H,WAAW,KAAK,IAAI,EAAE;IAC3BR,IAAI,CAACe,OAAO,CAACP,WAAW,CAAC;IACzB,MAAMQ,IAAI,GAA4CZ,QAAQ,CAACzK,GAAG,CAAC6K,WAAW,CAAE;IAChF,IAAIQ,IAAI,KAAK,IAAI,EAAE;MACjBd,KAAK,CAACa,OAAO,CAACC,IAAI,CAAClL,QAAQ,CAAC;MAC5B0K,WAAW,GAAGQ,IAAI,CAACpK,IAAI;IACzB,CAAC,MAAM;MACL4J,WAAW,GAAG,IAAI;IACpB;EACF;EAEA,OAAOjM,MAAM,CAACmD,IAAI,CAAC;IACjBsI,IAAI;IACJC,QAAQ,EAAEa,cAAc;IACxBZ;GACD,CAAC;AACJ,CAAC;AAcD;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BA,OAAO,MAAMe,aAAa,GAAGA,CAC3BhK,KAA6C,EAC7C8I,IAA6B,KACR;EACrB;EACA,MAAMmB,QAAQ,GAAG7C,KAAK,CAACC,IAAI,CAACrH,KAAK,CAAClC,KAAK,CAAC2I,IAAI,EAAE,CAAC;EAE/C;EACA,MAAMyD,IAAI,GAAG,IAAI/J,GAAG,EAAqC;EACzD,MAAMgK,IAAI,GAAG,IAAIhK,GAAG,EAA+C;EACnE,MAAMiK,UAAU,GAAG,IAAIjK,GAAG,EAAuC;EAEjE;EACA,KAAK,MAAMsI,CAAC,IAAIwB,QAAQ,EAAE;IACxBC,IAAI,CAACpJ,GAAG,CAAC2H,CAAC,EAAE,IAAItI,GAAG,EAAE,CAAC;IACtBgK,IAAI,CAACrJ,GAAG,CAAC2H,CAAC,EAAE,IAAItI,GAAG,EAAE,CAAC;IACtBiK,UAAU,CAACtJ,GAAG,CAAC2H,CAAC,EAAE,IAAItI,GAAG,EAAE,CAAC;IAE5B,KAAK,MAAMkK,CAAC,IAAIJ,QAAQ,EAAE;MACxBC,IAAI,CAACxL,GAAG,CAAC+J,CAAC,CAAE,CAAC3H,GAAG,CAACuJ,CAAC,EAAE5B,CAAC,KAAK4B,CAAC,GAAG,CAAC,GAAGjB,QAAQ,CAAC;MAC3Ce,IAAI,CAACzL,GAAG,CAAC+J,CAAC,CAAE,CAAC3H,GAAG,CAACuJ,CAAC,EAAE,IAAI,CAAC;MACzBD,UAAU,CAAC1L,GAAG,CAAC+J,CAAC,CAAE,CAAC3H,GAAG,CAACuJ,CAAC,EAAE,IAAI,CAAC;IACjC;EACF;EAEA;EACA,KAAK,MAAM,GAAGxL,QAAQ,CAAC,IAAImB,KAAK,CAAC5B,KAAK,EAAE;IACtC,MAAMqL,MAAM,GAAGX,IAAI,CAACjK,QAAQ,CAACoC,IAAI,CAAC;IAClC,MAAMwH,CAAC,GAAG5J,QAAQ,CAAC+C,MAAM;IACzB,MAAMyI,CAAC,GAAGxL,QAAQ,CAACgD,MAAM;IAEzB;IACA,MAAMyI,aAAa,GAAGJ,IAAI,CAACxL,GAAG,CAAC+J,CAAC,CAAE,CAAC/J,GAAG,CAAC2L,CAAC,CAAE;IAC1C,IAAIZ,MAAM,GAAGa,aAAa,EAAE;MAC1BJ,IAAI,CAACxL,GAAG,CAAC+J,CAAC,CAAE,CAAC3H,GAAG,CAACuJ,CAAC,EAAEZ,MAAM,CAAC;MAC3BU,IAAI,CAACzL,GAAG,CAAC+J,CAAC,CAAE,CAAC3H,GAAG,CAACuJ,CAAC,EAAEA,CAAC,CAAC;MACtBD,UAAU,CAAC1L,GAAG,CAAC+J,CAAC,CAAE,CAAC3H,GAAG,CAACuJ,CAAC,EAAExL,QAAQ,CAACoC,IAAI,CAAC;IAC1C;IAEA,IAAIjB,KAAK,CAAC3B,IAAI,KAAK,YAAY,EAAE;MAC/B,MAAMkM,aAAa,GAAGL,IAAI,CAACxL,GAAG,CAAC2L,CAAC,CAAE,CAAC3L,GAAG,CAAC+J,CAAC,CAAE;MAC1C,IAAIgB,MAAM,GAAGc,aAAa,EAAE;QAC1BL,IAAI,CAACxL,GAAG,CAAC2L,CAAC,CAAE,CAACvJ,GAAG,CAAC2H,CAAC,EAAEgB,MAAM,CAAC;QAC3BU,IAAI,CAACzL,GAAG,CAAC2L,CAAC,CAAE,CAACvJ,GAAG,CAAC2H,CAAC,EAAEA,CAAC,CAAC;QACtB2B,UAAU,CAAC1L,GAAG,CAAC2L,CAAC,CAAE,CAACvJ,GAAG,CAAC2H,CAAC,EAAE5J,QAAQ,CAACoC,IAAI,CAAC;MAC1C;IACF;EACF;EAEA;EACA,KAAK,MAAMuJ,CAAC,IAAIP,QAAQ,EAAE;IACxB,KAAK,MAAMxB,CAAC,IAAIwB,QAAQ,EAAE;MACxB,KAAK,MAAMI,CAAC,IAAIJ,QAAQ,EAAE;QACxB,MAAMQ,MAAM,GAAGP,IAAI,CAACxL,GAAG,CAAC+J,CAAC,CAAE,CAAC/J,GAAG,CAAC8L,CAAC,CAAE;QACnC,MAAME,MAAM,GAAGR,IAAI,CAACxL,GAAG,CAAC8L,CAAC,CAAE,CAAC9L,GAAG,CAAC2L,CAAC,CAAE;QACnC,MAAMM,MAAM,GAAGT,IAAI,CAACxL,GAAG,CAAC+J,CAAC,CAAE,CAAC/J,GAAG,CAAC2L,CAAC,CAAE;QAEnC,IAAII,MAAM,KAAKrB,QAAQ,IAAIsB,MAAM,KAAKtB,QAAQ,IAAIqB,MAAM,GAAGC,MAAM,GAAGC,MAAM,EAAE;UAC1ET,IAAI,CAACxL,GAAG,CAAC+J,CAAC,CAAE,CAAC3H,GAAG,CAACuJ,CAAC,EAAEI,MAAM,GAAGC,MAAM,CAAC;UACpCP,IAAI,CAACzL,GAAG,CAAC+J,CAAC,CAAE,CAAC3H,GAAG,CAACuJ,CAAC,EAAEF,IAAI,CAACzL,GAAG,CAAC+J,CAAC,CAAE,CAAC/J,GAAG,CAAC8L,CAAC,CAAE,CAAC;QAC3C;MACF;IACF;EACF;EAEA;EACA,KAAK,MAAM/B,CAAC,IAAIwB,QAAQ,EAAE;IACxB,IAAIC,IAAI,CAACxL,GAAG,CAAC+J,CAAC,CAAE,CAAC/J,GAAG,CAAC+J,CAAC,CAAE,GAAG,CAAC,EAAE;MAC5B,MAAM,IAAIiB,KAAK,CAAC,0CAA0CjB,CAAC,EAAE,CAAC;IAChE;EACF;EAEA;EACA,MAAMmC,KAAK,GAAG,IAAIzK,GAAG,EAAsD;EAC3E,MAAM0K,WAAW,GAAG,IAAI1K,GAAG,EAAuC;EAElE,KAAK,MAAMsI,CAAC,IAAIwB,QAAQ,EAAE;IACxBW,KAAK,CAAC9J,GAAG,CAAC2H,CAAC,EAAE,IAAItI,GAAG,EAAE,CAAC;IACvB0K,WAAW,CAAC/J,GAAG,CAAC2H,CAAC,EAAE,IAAItI,GAAG,EAAE,CAAC;IAE7B,KAAK,MAAMkK,CAAC,IAAIJ,QAAQ,EAAE;MACxB,IAAIxB,CAAC,KAAK4B,CAAC,EAAE;QACXO,KAAK,CAAClM,GAAG,CAAC+J,CAAC,CAAE,CAAC3H,GAAG,CAACuJ,CAAC,EAAE,CAAC5B,CAAC,CAAC,CAAC;QACzBoC,WAAW,CAACnM,GAAG,CAAC+J,CAAC,CAAE,CAAC3H,GAAG,CAACuJ,CAAC,EAAE,EAAE,CAAC;MAChC,CAAC,MAAM,IAAIH,IAAI,CAACxL,GAAG,CAAC+J,CAAC,CAAE,CAAC/J,GAAG,CAAC2L,CAAC,CAAE,KAAKjB,QAAQ,EAAE;QAC5CwB,KAAK,CAAClM,GAAG,CAAC+J,CAAC,CAAE,CAAC3H,GAAG,CAACuJ,CAAC,EAAE,IAAI,CAAC;QAC1BQ,WAAW,CAACnM,GAAG,CAAC+J,CAAC,CAAE,CAAC3H,GAAG,CAACuJ,CAAC,EAAE,EAAE,CAAC;MAChC,CAAC,MAAM;QACL;QACA,MAAMtB,IAAI,GAAqB,EAAE;QACjC,MAAM+B,OAAO,GAAa,EAAE;QAC5B,IAAInD,OAAO,GAAGc,CAAC;QAEfM,IAAI,CAACrH,IAAI,CAACiG,OAAO,CAAC;QAClB,OAAOA,OAAO,KAAK0C,CAAC,EAAE;UACpB,MAAMU,QAAQ,GAAGZ,IAAI,CAACzL,GAAG,CAACiJ,OAAO,CAAE,CAACjJ,GAAG,CAAC2L,CAAC,CAAE;UAC3C,IAAIU,QAAQ,KAAK,IAAI,EAAE;UAEvB,MAAMlM,QAAQ,GAAGuL,UAAU,CAAC1L,GAAG,CAACiJ,OAAO,CAAE,CAACjJ,GAAG,CAACqM,QAAQ,CAAE;UACxD,IAAIlM,QAAQ,KAAK,IAAI,EAAE;YACrBiM,OAAO,CAACpJ,IAAI,CAAC7C,QAAQ,CAAC;UACxB;UAEA8I,OAAO,GAAGoD,QAAQ;UAClBhC,IAAI,CAACrH,IAAI,CAACiG,OAAO,CAAC;QACpB;QAEAiD,KAAK,CAAClM,GAAG,CAAC+J,CAAC,CAAE,CAAC3H,GAAG,CAACuJ,CAAC,EAAEtB,IAAI,CAAC;QAC1B8B,WAAW,CAACnM,GAAG,CAAC+J,CAAC,CAAE,CAAC3H,GAAG,CAACuJ,CAAC,EAAES,OAAO,CAAC;MACrC;IACF;EACF;EAEA,OAAO;IACL5B,SAAS,EAAEgB,IAAI;IACfU,KAAK;IACL3B,KAAK,EAAE4B;GACR;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiCA,OAAO,MAAMG,KAAK,GAAGA,CACnBhL,KAA6C,EAC7C6I,MAAyB,KACO;EAChC,MAAM;IAAEC,IAAI;IAAEmC,SAAS;IAAErJ,MAAM;IAAEC;EAAM,CAAE,GAAGgH,MAAM;EAClD;EACA,IAAI,CAAC7I,KAAK,CAAClC,KAAK,CAACU,GAAG,CAACoD,MAAM,CAAC,EAAE;IAC5B,MAAMlC,WAAW,CAACkC,MAAM,CAAC;EAC3B;EACA,IAAI,CAAC5B,KAAK,CAAClC,KAAK,CAACU,GAAG,CAACqD,MAAM,CAAC,EAAE;IAC5B,MAAMnC,WAAW,CAACmC,MAAM,CAAC;EAC3B;EAEA;EACA,IAAID,MAAM,KAAKC,MAAM,EAAE;IACrB,OAAOvE,MAAM,CAACmD,IAAI,CAAC;MACjBsI,IAAI,EAAE,CAACnH,MAAM,CAAC;MACdoH,QAAQ,EAAE,CAAC;MACXC,KAAK,EAAE;KACR,CAAC;EACJ;EAEA;EACA,MAAMiC,cAAc,GAAGlL,KAAK,CAAClC,KAAK,CAACY,GAAG,CAACmD,MAAM,CAAC;EAC9C,IAAIqJ,cAAc,KAAKzH,SAAS,EAAE;IAChC,MAAM,IAAIiG,KAAK,CAAC,eAAe7H,MAAM,iBAAiB,CAAC;EACzD;EAEA;EACA,MAAMsJ,MAAM,GAAG,IAAIhL,GAAG,EAAqB;EAC3C,MAAMiL,MAAM,GAAG,IAAIjL,GAAG,EAAqB;EAC3C,MAAMgJ,QAAQ,GAAG,IAAIhJ,GAAG,EAAsD;EAC9E,MAAMmG,OAAO,GAAG,IAAIC,GAAG,EAAa;EAEpC;EACA;EACA,KAAK,MAAM5G,IAAI,IAAIK,KAAK,CAAClC,KAAK,CAAC2I,IAAI,EAAE,EAAE;IACrC0E,MAAM,CAACrK,GAAG,CAACnB,IAAI,EAAEA,IAAI,KAAKiC,MAAM,GAAG,CAAC,GAAGwH,QAAQ,CAAC;IAChDgC,MAAM,CAACtK,GAAG,CAACnB,IAAI,EAAEyJ,QAAQ,CAAC;IAC1BD,QAAQ,CAACrI,GAAG,CAACnB,IAAI,EAAE,IAAI,CAAC;EAC1B;EAEA;EACA,MAAM0L,cAAc,GAAGrL,KAAK,CAAClC,KAAK,CAACY,GAAG,CAACkD,MAAM,CAAC;EAC9C,IAAIyJ,cAAc,KAAK5H,SAAS,EAAE;IAChC,MAAM6H,CAAC,GAAGL,SAAS,CAACI,cAAc,EAAEH,cAAc,CAAC;IACnDE,MAAM,CAACtK,GAAG,CAACc,MAAM,EAAE0J,CAAC,CAAC;EACvB;EAEA;EACA,MAAMC,OAAO,GAA+C,CAC1D;IAAE5L,IAAI,EAAEiC,MAAM;IAAEwJ,MAAM,EAAEA,MAAM,CAAC1M,GAAG,CAACkD,MAAM;EAAE,CAAE,CAC9C;EAED,OAAO2J,OAAO,CAAC1E,MAAM,GAAG,CAAC,EAAE;IACzB;IACA,IAAIyC,QAAQ,GAAG,CAAC;IAChB,KAAK,IAAIb,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG8C,OAAO,CAAC1E,MAAM,EAAE4B,CAAC,EAAE,EAAE;MACvC,IAAI8C,OAAO,CAAC9C,CAAC,CAAC,CAAC2C,MAAM,GAAGG,OAAO,CAACjC,QAAQ,CAAC,CAAC8B,MAAM,EAAE;QAChD9B,QAAQ,GAAGb,CAAC;MACd;IACF;IAEA,MAAMd,OAAO,GAAG4D,OAAO,CAACnH,MAAM,CAACkF,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,MAAMC,WAAW,GAAG5B,OAAO,CAAChI,IAAI;IAEhC;IACA,IAAI2G,OAAO,CAAC9H,GAAG,CAAC+K,WAAW,CAAC,EAAE;MAC5B;IACF;IAEAjD,OAAO,CAACI,GAAG,CAAC6C,WAAW,CAAC;IAExB;IACA,IAAIA,WAAW,KAAK1H,MAAM,EAAE;MAC1B;IACF;IAEA;IACA,MAAM2J,aAAa,GAAGL,MAAM,CAACzM,GAAG,CAAC6K,WAAW,CAAE;IAE9C;IACA,MAAMhF,aAAa,GAAGvE,KAAK,CAACI,SAAS,CAAC1B,GAAG,CAAC6K,WAAW,CAAC;IACtD,IAAIhF,aAAa,KAAKd,SAAS,EAAE;MAC/B,KAAK,MAAM7E,SAAS,IAAI2F,aAAa,EAAE;QACrC,MAAMT,IAAI,GAAG9D,KAAK,CAAC5B,KAAK,CAACM,GAAG,CAACE,SAAS,CAAC;QACvC,IAAIkF,IAAI,KAAKL,SAAS,EAAE;UACtB,MAAMuD,QAAQ,GAAGiB,sBAAsB,CAACjI,KAAK,EAAEuJ,WAAW,EAAEzF,IAAI,CAAC;UACjE,MAAM2F,MAAM,GAAGX,IAAI,CAAChF,IAAI,CAAC7C,IAAI,CAAC;UAE9B;UACA,IAAIwI,MAAM,GAAG,CAAC,EAAE;YACd,MAAM,IAAIC,KAAK,CAAC,0DAA0DD,MAAM,EAAE,CAAC;UACrF;UAEA,MAAMgC,eAAe,GAAGD,aAAa,GAAG/B,MAAM;UAC9C,MAAMiC,cAAc,GAAGP,MAAM,CAACzM,GAAG,CAACsI,QAAQ,CAAE;UAE5C;UACA,IAAIyE,eAAe,GAAGC,cAAc,EAAE;YACpC;YACAP,MAAM,CAACrK,GAAG,CAACkG,QAAQ,EAAEyE,eAAe,CAAC;YACrCtC,QAAQ,CAACrI,GAAG,CAACkG,QAAQ,EAAE;cAAErH,IAAI,EAAE4J,WAAW;cAAE1K,QAAQ,EAAEiF,IAAI,CAAC7C;YAAI,CAAE,CAAC;YAElE;YACA,MAAM0K,gBAAgB,GAAG3L,KAAK,CAAClC,KAAK,CAACY,GAAG,CAACsI,QAAQ,CAAC;YAClD,IAAI2E,gBAAgB,KAAKlI,SAAS,EAAE;cAClC,MAAM6H,CAAC,GAAGL,SAAS,CAACU,gBAAgB,EAAET,cAAc,CAAC;cACrD,MAAMnK,CAAC,GAAG0K,eAAe,GAAGH,CAAC;cAC7BF,MAAM,CAACtK,GAAG,CAACkG,QAAQ,EAAEjG,CAAC,CAAC;cAEvB;cACA,IAAI,CAACuF,OAAO,CAAC9H,GAAG,CAACwI,QAAQ,CAAC,EAAE;gBAC1BuE,OAAO,CAAC7J,IAAI,CAAC;kBAAE/B,IAAI,EAAEqH,QAAQ;kBAAEoE,MAAM,EAAErK;gBAAC,CAAE,CAAC;cAC7C;YACF;UACF;QACF;MACF;IACF;EACF;EAEA;EACA,MAAM6K,YAAY,GAAGT,MAAM,CAACzM,GAAG,CAACmD,MAAM,CAAE;EACxC,IAAI+J,YAAY,KAAKxC,QAAQ,EAAE;IAC7B,OAAO9L,MAAM,CAAC6D,IAAI,EAAE,EAAC;EACvB;EAEA;EACA,MAAM4H,IAAI,GAAqB,EAAE;EACjC,MAAME,KAAK,GAAa,EAAE;EAC1B,IAAIM,WAAW,GAAqB1H,MAAM;EAE1C,OAAO0H,WAAW,KAAK,IAAI,EAAE;IAC3BR,IAAI,CAACe,OAAO,CAACP,WAAW,CAAC;IACzB,MAAMQ,IAAI,GAA4CZ,QAAQ,CAACzK,GAAG,CAAC6K,WAAW,CAAE;IAChF,IAAIQ,IAAI,KAAK,IAAI,EAAE;MACjBd,KAAK,CAACa,OAAO,CAACC,IAAI,CAAClL,QAAQ,CAAC;MAC5B0K,WAAW,GAAGQ,IAAI,CAACpK,IAAI;IACzB,CAAC,MAAM;MACL4J,WAAW,GAAG,IAAI;IACpB;EACF;EAEA,OAAOjM,MAAM,CAACmD,IAAI,CAAC;IACjBsI,IAAI;IACJC,QAAQ,EAAE4C,YAAY;IACtB3C;GACD,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8BA,OAAO,MAAM4C,WAAW,GAAGA,CACzB7L,KAA6C,EAC7C6I,MAA4B,KACI;EAChC,MAAM;IAAEC,IAAI;IAAElH,MAAM;IAAEC;EAAM,CAAE,GAAGgH,MAAM;EACvC;EACA,IAAI,CAAC7I,KAAK,CAAClC,KAAK,CAACU,GAAG,CAACoD,MAAM,CAAC,EAAE;IAC5B,MAAMlC,WAAW,CAACkC,MAAM,CAAC;EAC3B;EACA,IAAI,CAAC5B,KAAK,CAAClC,KAAK,CAACU,GAAG,CAACqD,MAAM,CAAC,EAAE;IAC5B,MAAMnC,WAAW,CAACmC,MAAM,CAAC;EAC3B;EAEA;EACA,IAAID,MAAM,KAAKC,MAAM,EAAE;IACrB,OAAOvE,MAAM,CAACmD,IAAI,CAAC;MACjBsI,IAAI,EAAE,CAACnH,MAAM,CAAC;MACdoH,QAAQ,EAAE,CAAC;MACXC,KAAK,EAAE;KACR,CAAC;EACJ;EAEA;EACA,MAAMC,SAAS,GAAG,IAAI/I,GAAG,EAAqB;EAC9C,MAAMgJ,QAAQ,GAAG,IAAIhJ,GAAG,EAAsD;EAC9E;EAEA,KAAK,MAAMR,IAAI,IAAIK,KAAK,CAAClC,KAAK,CAAC2I,IAAI,EAAE,EAAE;IACrCyC,SAAS,CAACpI,GAAG,CAACnB,IAAI,EAAEA,IAAI,KAAKiC,MAAM,GAAG,CAAC,GAAGwH,QAAQ,CAAC;IACnDD,QAAQ,CAACrI,GAAG,CAACnB,IAAI,EAAE,IAAI,CAAC;EAC1B;EAEA;EACA,MAAMvB,KAAK,GAAiF,EAAE;EAC9F,KAAK,MAAM,GAAGS,QAAQ,CAAC,IAAImB,KAAK,CAAC5B,KAAK,EAAE;IACtC,MAAMqL,MAAM,GAAGX,IAAI,CAACjK,QAAQ,CAACoC,IAAI,CAAC;IAClC7C,KAAK,CAACsD,IAAI,CAAC;MACTE,MAAM,EAAE/C,QAAQ,CAAC+C,MAAM;MACvBC,MAAM,EAAEhD,QAAQ,CAACgD,MAAM;MACvB4H,MAAM;MACN5K,QAAQ,EAAEA,QAAQ,CAACoC;KACpB,CAAC;IACF,IAAIjB,KAAK,CAAC3B,IAAI,KAAK,YAAY,IAAIQ,QAAQ,CAAC+C,MAAM,KAAK/C,QAAQ,CAACgD,MAAM,EAAE;MACtEzD,KAAK,CAACsD,IAAI,CAAC;QACTE,MAAM,EAAE/C,QAAQ,CAACgD,MAAM;QACvBA,MAAM,EAAEhD,QAAQ,CAAC+C,MAAM;QACvB6H,MAAM;QACN5K,QAAQ,EAAEA,QAAQ,CAACoC;OACpB,CAAC;IACJ;EACF;EAEA;EACA,MAAM9B,SAAS,GAAGa,KAAK,CAAClC,KAAK,CAACK,IAAI;EAClC,KAAK,IAAIsK,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGtJ,SAAS,GAAG,CAAC,EAAEsJ,CAAC,EAAE,EAAE;IACtC,IAAIqD,SAAS,GAAG,KAAK;IAErB,KAAK,MAAMhI,IAAI,IAAI1F,KAAK,EAAE;MACxB,MAAM2N,cAAc,GAAG7C,SAAS,CAACxK,GAAG,CAACoF,IAAI,CAAClC,MAAM,CAAE;MAClD,MAAMiI,cAAc,GAAGX,SAAS,CAACxK,GAAG,CAACoF,IAAI,CAACjC,MAAM,CAAE;MAElD;MACA,IAAIkK,cAAc,KAAK3C,QAAQ,IAAI2C,cAAc,GAAGjI,IAAI,CAAC2F,MAAM,GAAGI,cAAc,EAAE;QAChFX,SAAS,CAACpI,GAAG,CAACgD,IAAI,CAACjC,MAAM,EAAEkK,cAAc,GAAGjI,IAAI,CAAC2F,MAAM,CAAC;QACxDN,QAAQ,CAACrI,GAAG,CAACgD,IAAI,CAACjC,MAAM,EAAE;UAAElC,IAAI,EAAEmE,IAAI,CAAClC,MAAM;UAAE/C,QAAQ,EAAEiF,IAAI,CAACjF;QAAQ,CAAE,CAAC;QACzEiN,SAAS,GAAG,IAAI;MAClB;IACF;IAEA;IACA,IAAI,CAACA,SAAS,EAAE;MACd;IACF;EACF;EAEA;EACA,KAAK,MAAMhI,IAAI,IAAI1F,KAAK,EAAE;IACxB,MAAM2N,cAAc,GAAG7C,SAAS,CAACxK,GAAG,CAACoF,IAAI,CAAClC,MAAM,CAAE;IAClD,MAAMiI,cAAc,GAAGX,SAAS,CAACxK,GAAG,CAACoF,IAAI,CAACjC,MAAM,CAAE;IAElD,IAAIkK,cAAc,KAAK3C,QAAQ,IAAI2C,cAAc,GAAGjI,IAAI,CAAC2F,MAAM,GAAGI,cAAc,EAAE;MAChF;MACA,MAAMmC,aAAa,GAAG,IAAIzF,GAAG,EAAa;MAC1C,MAAMmB,KAAK,GAAG,CAAC5D,IAAI,CAACjC,MAAM,CAAC;MAE3B,OAAO6F,KAAK,CAACb,MAAM,GAAG,CAAC,EAAE;QACvB,MAAMlH,IAAI,GAAG+H,KAAK,CAACE,KAAK,EAAG;QAC3B,IAAIoE,aAAa,CAACxN,GAAG,CAACmB,IAAI,CAAC,EAAE;QAC7BqM,aAAa,CAACtF,GAAG,CAAC/G,IAAI,CAAC;QAEvB;QACA,KAAK,MAAMqH,QAAQ,IAAIgB,qBAAqB,CAAChI,KAAK,EAAEL,IAAI,EAAE,UAAU,CAAC,EAAE;UACrE+H,KAAK,CAAChG,IAAI,CAACsF,QAAQ,CAAC;QACtB;MACF;MAEA;MACA,IAAIgF,aAAa,CAACxN,GAAG,CAACqD,MAAM,CAAC,EAAE;QAC7B,OAAOvE,MAAM,CAAC6D,IAAI,EAAE;MACtB;IACF;EACF;EAEA;EACA,MAAM0I,cAAc,GAAGX,SAAS,CAACxK,GAAG,CAACmD,MAAM,CAAE;EAC7C,IAAIgI,cAAc,KAAKT,QAAQ,EAAE;IAC/B,OAAO9L,MAAM,CAAC6D,IAAI,EAAE,EAAC;EACvB;EAEA;EACA,MAAM4H,IAAI,GAAqB,EAAE;EACjC,MAAME,KAAK,GAAa,EAAE;EAC1B,IAAIM,WAAW,GAAqB1H,MAAM;EAE1C,OAAO0H,WAAW,KAAK,IAAI,EAAE;IAC3BR,IAAI,CAACe,OAAO,CAACP,WAAW,CAAC;IACzB,MAAMQ,IAAI,GAA4CZ,QAAQ,CAACzK,GAAG,CAAC6K,WAAW,CAAE;IAChF,IAAIQ,IAAI,KAAK,IAAI,EAAE;MACjBd,KAAK,CAACa,OAAO,CAACC,IAAI,CAAClL,QAAQ,CAAC;MAC5B0K,WAAW,GAAGQ,IAAI,CAACpK,IAAI;IACzB,CAAC,MAAM;MACL4J,WAAW,GAAG,IAAI;IACpB;EACF;EAEA,OAAOjM,MAAM,CAACmD,IAAI,CAAC;IACjBsI,IAAI;IACJC,QAAQ,EAAEa,cAAc;IACxBZ;GACD,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkCA,OAAM,MAAOgD,MAAM;EACjB;;;EAGA;EACS,CAACrO,MAAM,CAACC,QAAQ;EAEzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+BSqO,KAAK;EAEdC;EACE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+BAD,KAAsD;IAEtD,IAAI,CAACA,KAAK,GAAGA,KAAK;IAClB,IAAI,CAACtO,MAAM,CAACC,QAAQ,CAAC,GAAGqO,KAAK,CAAC,CAAC3K,KAAK,EAAEN,IAAI,KAAK,CAACM,KAAK,EAAEN,IAAI,CAAW,CAAC,CAACrD,MAAM,CAACC,QAAQ,CAAC;EAC1F;;AAqBF;;;;;;;;;;;;;;;;;;;;;AAqBA,OAAO,MAAMuO,OAAO,GAAUC,MAAoB,IAAkBA,MAAM,CAACH,KAAK,CAAC,CAAC3K,KAAK,EAAE+K,CAAC,KAAK/K,KAAK,CAAC;AAErG;;;;;;;;;;;;;;;;;;;;;AAqBA,OAAO,MAAMgL,MAAM,GAAUF,MAAoB,IAAkBA,MAAM,CAACH,KAAK,CAAC,CAACI,CAAC,EAAErL,IAAI,KAAKA,IAAI,CAAC;AAElG;;;;;;;;;;;;;;;;;;;;;AAqBA,OAAO,MAAMuL,OAAO,GAAUH,MAAoB,IAChDA,MAAM,CAACH,KAAK,CAAC,CAAC3K,KAAK,EAAEN,IAAI,KAAK,CAACM,KAAK,EAAEN,IAAI,CAAW,CAAC;AAaxD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCA,OAAO,MAAMwL,GAAG,GAAGA,CACjBzM,KAA6C,EAC7C6I,MAAA,GAAuB,EAAE,KACR;EACjB,MAAM6D,KAAK,GAAG7D,MAAM,CAAC6D,KAAK,IAAI,EAAE;EAChC,MAAM/H,SAAS,GAAGkE,MAAM,CAAClE,SAAS,IAAI,UAAU;EAEhD;EACA,KAAK,MAAMrG,SAAS,IAAIoO,KAAK,EAAE;IAC7B,IAAI,CAACtL,OAAO,CAACpB,KAAK,EAAE1B,SAAS,CAAC,EAAE;MAC9B,MAAMoB,WAAW,CAACpB,SAAS,CAAC;IAC9B;EACF;EAEA,OAAO,IAAI2N,MAAM,CAAElL,CAAC,KAAM;IACxB,CAACnD,MAAM,CAACC,QAAQ,GAAG,MAAK;MACtB,MAAM8I,KAAK,GAAG,CAAC,GAAG+F,KAAK,CAAC;MACxB,MAAMlF,UAAU,GAAG,IAAIjB,GAAG,EAAa;MAEvC,MAAMoG,UAAU,GAAGA,CAAA,KAAK;QACtB,OAAOhG,KAAK,CAACE,MAAM,GAAG,CAAC,EAAE;UACvB,MAAMc,OAAO,GAAGhB,KAAK,CAACG,GAAG,EAAG;UAE5B,IAAIU,UAAU,CAAChJ,GAAG,CAACmJ,OAAO,CAAC,EAAE;YAC3B;UACF;UAEAH,UAAU,CAACd,GAAG,CAACiB,OAAO,CAAC;UAEvB,MAAMiF,cAAc,GAAG5M,KAAK,CAAClC,KAAK,CAACY,GAAG,CAACiJ,OAAO,CAAC;UAC/C,IAAIiF,cAAc,KAAKnJ,SAAS,EAAE;YAChC;UACF;UAEA,MAAMe,SAAS,GAAGwD,qBAAqB,CAAChI,KAAK,EAAE2H,OAAO,EAAEhD,SAAS,CAAC;UAClE,KAAK,IAAI8D,CAAC,GAAGjE,SAAS,CAACqC,MAAM,GAAG,CAAC,EAAE4B,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;YAC9C,MAAMzB,QAAQ,GAAGxC,SAAS,CAACiE,CAAC,CAAC;YAC7B,IAAI,CAACjB,UAAU,CAAChJ,GAAG,CAACwI,QAAQ,CAAC,EAAE;cAC7BL,KAAK,CAACjF,IAAI,CAACsF,QAAQ,CAAC;YACtB;UACF;UAEA,OAAO;YAAE6F,IAAI,EAAE,KAAK;YAAE/J,KAAK,EAAE/B,CAAC,CAAC4G,OAAO,EAAEiF,cAAc;UAAC,CAAE;QAC3D;QAEA,OAAO;UAAEC,IAAI,EAAE,IAAI;UAAE/J,KAAK,EAAEW;QAAS,CAAW;MAClD,CAAC;MAED,OAAO;QAAE0G,IAAI,EAAEwC;MAAU,CAAE;IAC7B;GACD,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCA,OAAO,MAAMG,GAAG,GAAGA,CACjB9M,KAA6C,EAC7C6I,MAAA,GAAuB,EAAE,KACR;EACjB,MAAM6D,KAAK,GAAG7D,MAAM,CAAC6D,KAAK,IAAI,EAAE;EAChC,MAAM/H,SAAS,GAAGkE,MAAM,CAAClE,SAAS,IAAI,UAAU;EAEhD;EACA,KAAK,MAAMrG,SAAS,IAAIoO,KAAK,EAAE;IAC7B,IAAI,CAACtL,OAAO,CAACpB,KAAK,EAAE1B,SAAS,CAAC,EAAE;MAC9B,MAAMoB,WAAW,CAACpB,SAAS,CAAC;IAC9B;EACF;EAEA,OAAO,IAAI2N,MAAM,CAAElL,CAAC,KAAM;IACxB,CAACnD,MAAM,CAACC,QAAQ,GAAG,MAAK;MACtB,MAAM6J,KAAK,GAAG,CAAC,GAAGgF,KAAK,CAAC;MACxB,MAAMlF,UAAU,GAAG,IAAIjB,GAAG,EAAa;MAEvC,MAAMoG,UAAU,GAAGA,CAAA,KAAK;QACtB,OAAOjF,KAAK,CAACb,MAAM,GAAG,CAAC,EAAE;UACvB,MAAMc,OAAO,GAAGD,KAAK,CAACE,KAAK,EAAG;UAE9B,IAAI,CAACJ,UAAU,CAAChJ,GAAG,CAACmJ,OAAO,CAAC,EAAE;YAC5BH,UAAU,CAACd,GAAG,CAACiB,OAAO,CAAC;YAEvB,MAAMnD,SAAS,GAAGwD,qBAAqB,CAAChI,KAAK,EAAE2H,OAAO,EAAEhD,SAAS,CAAC;YAClE,KAAK,MAAMqC,QAAQ,IAAIxC,SAAS,EAAE;cAChC,IAAI,CAACgD,UAAU,CAAChJ,GAAG,CAACwI,QAAQ,CAAC,EAAE;gBAC7BU,KAAK,CAAChG,IAAI,CAACsF,QAAQ,CAAC;cACtB;YACF;YAEA,MAAMzI,QAAQ,GAAG2C,OAAO,CAAClB,KAAK,EAAE2H,OAAO,CAAC;YACxC,IAAIrK,MAAM,CAACuF,MAAM,CAACtE,QAAQ,CAAC,EAAE;cAC3B,OAAO;gBAAEsO,IAAI,EAAE,KAAK;gBAAE/J,KAAK,EAAE/B,CAAC,CAAC4G,OAAO,EAAEpJ,QAAQ,CAACuE,KAAK;cAAC,CAAE;YAC3D;YACA,OAAO6J,UAAU,EAAE;UACrB;QACF;QAEA,OAAO;UAAEE,IAAI,EAAE,IAAI;UAAE/J,KAAK,EAAEW;QAAS,CAAW;MAClD,CAAC;MAED,OAAO;QAAE0G,IAAI,EAAEwC;MAAU,CAAE;IAC7B;GACD,CAAC,CAAC;AACL,CAAC;AAYD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6CA,OAAO,MAAMI,IAAI,GAAGA,CAClB/M,KAA6C,EAC7C6I,MAAA,GAAqB,EAAE,KACN;EACjB,IAAI7I,KAAK,CAAC3B,IAAI,KAAK,YAAY,EAAE;IAC/B,MAAM,IAAIqL,KAAK,CAAC,qDAAqD,CAAC;EACxE;EAEA;EACA,IAAI,CAAClJ,SAAS,CAACR,KAAK,CAAC,EAAE;IACrB,MAAM,IAAI0J,KAAK,CAAC,iDAAiD,CAAC;EACpE;EAEA,MAAMsD,QAAQ,GAAGnE,MAAM,CAACmE,QAAQ,IAAI,EAAE;EAEtC;EACA,KAAK,MAAM1O,SAAS,IAAI0O,QAAQ,EAAE;IAChC,IAAI,CAAC5L,OAAO,CAACpB,KAAK,EAAE1B,SAAS,CAAC,EAAE;MAC9B,MAAMoB,WAAW,CAACpB,SAAS,CAAC;IAC9B;EACF;EAEA,OAAO,IAAI2N,MAAM,CAAElL,CAAC,KAAM;IACxB,CAACnD,MAAM,CAACC,QAAQ,GAAG,MAAK;MACtB,MAAMoP,QAAQ,GAAG,IAAI9M,GAAG,EAAqB;MAC7C,MAAM+M,SAAS,GAAG,IAAI3G,GAAG,EAAa;MACtC,MAAMmB,KAAK,GAAG,CAAC,GAAGsF,QAAQ,CAAC;MAE3B;MACA,KAAK,MAAM,CAAC1O,SAAS,CAAC,IAAI0B,KAAK,CAAClC,KAAK,EAAE;QACrCmP,QAAQ,CAACnM,GAAG,CAACxC,SAAS,EAAE,CAAC,CAAC;QAC1B4O,SAAS,CAACxG,GAAG,CAACpI,SAAS,CAAC;MAC1B;MAEA;MACA,KAAK,MAAM,GAAGO,QAAQ,CAAC,IAAImB,KAAK,CAAC5B,KAAK,EAAE;QACtC,MAAM+O,eAAe,GAAGF,QAAQ,CAACvO,GAAG,CAACG,QAAQ,CAACgD,MAAM,CAAC,IAAI,CAAC;QAC1DoL,QAAQ,CAACnM,GAAG,CAACjC,QAAQ,CAACgD,MAAM,EAAEsL,eAAe,GAAG,CAAC,CAAC;MACpD;MAEA;MACA,IAAIH,QAAQ,CAACnG,MAAM,KAAK,CAAC,EAAE;QACzB,KAAK,MAAM,CAACvI,SAAS,EAAE8O,MAAM,CAAC,IAAIH,QAAQ,EAAE;UAC1C,IAAIG,MAAM,KAAK,CAAC,EAAE;YAChB1F,KAAK,CAAChG,IAAI,CAACpD,SAAS,CAAC;UACvB;QACF;MACF;MAEA,MAAMqO,UAAU,GAAGA,CAAA,KAAK;QACtB,OAAOjF,KAAK,CAACb,MAAM,GAAG,CAAC,EAAE;UACvB,MAAMc,OAAO,GAAGD,KAAK,CAACE,KAAK,EAAG;UAE9B,IAAIsF,SAAS,CAAC1O,GAAG,CAACmJ,OAAO,CAAC,EAAE;YAC1BuF,SAAS,CAACjJ,MAAM,CAAC0D,OAAO,CAAC;YAEzB;YACA,MAAMnD,SAAS,GAAGE,iBAAiB,CAAC1E,KAAK,EAAE2H,OAAO,EAAE,UAAU,CAAC;YAC/D,KAAK,MAAMX,QAAQ,IAAIxC,SAAS,EAAE;cAChC,IAAI0I,SAAS,CAAC1O,GAAG,CAACwI,QAAQ,CAAC,EAAE;gBAC3B,MAAMmG,eAAe,GAAGF,QAAQ,CAACvO,GAAG,CAACsI,QAAQ,CAAC,IAAI,CAAC;gBACnD,MAAMqG,WAAW,GAAGF,eAAe,GAAG,CAAC;gBACvCF,QAAQ,CAACnM,GAAG,CAACkG,QAAQ,EAAEqG,WAAW,CAAC;gBAEnC;gBACA,IAAIA,WAAW,KAAK,CAAC,EAAE;kBACrB3F,KAAK,CAAChG,IAAI,CAACsF,QAAQ,CAAC;gBACtB;cACF;YACF;YAEA,MAAMzI,QAAQ,GAAG2C,OAAO,CAAClB,KAAK,EAAE2H,OAAO,CAAC;YACxC,IAAIrK,MAAM,CAACuF,MAAM,CAACtE,QAAQ,CAAC,EAAE;cAC3B,OAAO;gBAAEsO,IAAI,EAAE,KAAK;gBAAE/J,KAAK,EAAE/B,CAAC,CAAC4G,OAAO,EAAEpJ,QAAQ,CAACuE,KAAK;cAAC,CAAE;YAC3D;YACA,OAAO6J,UAAU,EAAE;UACrB;QACF;QAEA,OAAO;UAAEE,IAAI,EAAE,IAAI;UAAE/J,KAAK,EAAEW;QAAS,CAAW;MAClD,CAAC;MAED,OAAO;QAAE0G,IAAI,EAAEwC;MAAU,CAAE;IAC7B;GACD,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6BA,OAAO,MAAMW,YAAY,GAAGA,CAC1BtN,KAA6C,EAC7C6I,MAAA,GAAuB,EAAE,KACR;EACjB,MAAM6D,KAAK,GAAG7D,MAAM,CAAC6D,KAAK,IAAI,EAAE;EAChC,MAAM/H,SAAS,GAAGkE,MAAM,CAAClE,SAAS,IAAI,UAAU;EAEhD;EACA,KAAK,MAAMrG,SAAS,IAAIoO,KAAK,EAAE;IAC7B,IAAI,CAACtL,OAAO,CAACpB,KAAK,EAAE1B,SAAS,CAAC,EAAE;MAC9B,MAAMoB,WAAW,CAACpB,SAAS,CAAC;IAC9B;EACF;EAEA,OAAO,IAAI2N,MAAM,CAAElL,CAAC,KAAM;IACxB,CAACnD,MAAM,CAACC,QAAQ,GAAG,MAAK;MACtB,MAAM8I,KAAK,GAAyD,EAAE;MACtE,MAAMa,UAAU,GAAG,IAAIjB,GAAG,EAAa;MACvC,MAAMgH,QAAQ,GAAG,IAAIhH,GAAG,EAAa;MAErC;MACA,KAAK,IAAIkC,CAAC,GAAGiE,KAAK,CAAC7F,MAAM,GAAG,CAAC,EAAE4B,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;QAC1C9B,KAAK,CAACjF,IAAI,CAAC;UAAE/B,IAAI,EAAE+M,KAAK,CAACjE,CAAC,CAAC;UAAE+E,eAAe,EAAE;QAAK,CAAE,CAAC;MACxD;MAEA,MAAMb,UAAU,GAAGA,CAAA,KAAK;QACtB,OAAOhG,KAAK,CAACE,MAAM,GAAG,CAAC,EAAE;UACvB,MAAMc,OAAO,GAAGhB,KAAK,CAACA,KAAK,CAACE,MAAM,GAAG,CAAC,CAAC;UAEvC,IAAI,CAACW,UAAU,CAAChJ,GAAG,CAACmJ,OAAO,CAAChI,IAAI,CAAC,EAAE;YACjC6H,UAAU,CAACd,GAAG,CAACiB,OAAO,CAAChI,IAAI,CAAC;YAC5BgI,OAAO,CAAC6F,eAAe,GAAG,KAAK;UACjC;UAEA,IAAI,CAAC7F,OAAO,CAAC6F,eAAe,EAAE;YAC5B7F,OAAO,CAAC6F,eAAe,GAAG,IAAI;YAC9B,MAAMhJ,SAAS,GAAGwD,qBAAqB,CAAChI,KAAK,EAAE2H,OAAO,CAAChI,IAAI,EAAEgF,SAAS,CAAC;YAEvE,KAAK,IAAI8D,CAAC,GAAGjE,SAAS,CAACqC,MAAM,GAAG,CAAC,EAAE4B,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;cAC9C,MAAMzB,QAAQ,GAAGxC,SAAS,CAACiE,CAAC,CAAC;cAC7B,IAAI,CAACjB,UAAU,CAAChJ,GAAG,CAACwI,QAAQ,CAAC,IAAI,CAACuG,QAAQ,CAAC/O,GAAG,CAACwI,QAAQ,CAAC,EAAE;gBACxDL,KAAK,CAACjF,IAAI,CAAC;kBAAE/B,IAAI,EAAEqH,QAAQ;kBAAEwG,eAAe,EAAE;gBAAK,CAAE,CAAC;cACxD;YACF;UACF,CAAC,MAAM;YACL,MAAMC,UAAU,GAAG9G,KAAK,CAACG,GAAG,EAAG,CAACnH,IAAI;YAEpC,IAAI,CAAC4N,QAAQ,CAAC/O,GAAG,CAACiP,UAAU,CAAC,EAAE;cAC7BF,QAAQ,CAAC7G,GAAG,CAAC+G,UAAU,CAAC;cAExB,MAAMlP,QAAQ,GAAG2C,OAAO,CAAClB,KAAK,EAAEyN,UAAU,CAAC;cAC3C,IAAInQ,MAAM,CAACuF,MAAM,CAACtE,QAAQ,CAAC,EAAE;gBAC3B,OAAO;kBAAEsO,IAAI,EAAE,KAAK;kBAAE/J,KAAK,EAAE/B,CAAC,CAAC0M,UAAU,EAAElP,QAAQ,CAACuE,KAAK;gBAAC,CAAE;cAC9D;cACA,OAAO6J,UAAU,EAAE;YACrB;UACF;QACF;QAEA,OAAO;UAAEE,IAAI,EAAE,IAAI;UAAE/J,KAAK,EAAEW;QAAS,CAAW;MAClD,CAAC;MAED,OAAO;QAAE0G,IAAI,EAAEwC;MAAU,CAAE;IAC7B;GACD,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;AAwBA,OAAO,MAAM7O,KAAK,GAChBkC,KAA6C,IAE7C,IAAIiM,MAAM,CAAElL,CAAC,KAAM;EACjB,CAACnD,MAAM,CAACC,QAAQ,IAAC;IACf,MAAM6P,OAAO,GAAG1N,KAAK,CAAClC,KAAK;IAC3B,MAAMD,QAAQ,GAAG6P,OAAO,CAAClB,OAAO,EAAE;IAElC,OAAO;MACLrC,IAAIA,CAAA;QACF,MAAMvH,MAAM,GAAG/E,QAAQ,CAACsM,IAAI,EAAE;QAC9B,IAAIvH,MAAM,CAACiK,IAAI,EAAE;UACf,OAAO;YAAEA,IAAI,EAAE,IAAI;YAAE/J,KAAK,EAAEW;UAAS,CAAE;QACzC;QACA,MAAM,CAACnF,SAAS,EAAEC,QAAQ,CAAC,GAAGqE,MAAM,CAACE,KAAK;QAC1C,OAAO;UAAE+J,IAAI,EAAE,KAAK;UAAE/J,KAAK,EAAE/B,CAAC,CAACzC,SAAS,EAAEC,QAAQ;QAAC,CAAE;MACvD;KACD;EACH;CACD,CAAC,CAAC;AAEL;;;;;;;;;;;;;;;;;;;;;;;;;AAyBA,OAAO,MAAMH,KAAK,GAChB4B,KAA6C,IAE7C,IAAIiM,MAAM,CAAElL,CAAC,KAAM;EACjB,CAACnD,MAAM,CAACC,QAAQ,IAAC;IACf,MAAM8P,OAAO,GAAG3N,KAAK,CAAC5B,KAAK;IAC3B,MAAMP,QAAQ,GAAG8P,OAAO,CAACnB,OAAO,EAAE;IAElC,OAAO;MACLrC,IAAIA,CAAA;QACF,MAAMvH,MAAM,GAAG/E,QAAQ,CAACsM,IAAI,EAAE;QAC9B,IAAIvH,MAAM,CAACiK,IAAI,EAAE;UACf,OAAO;YAAEA,IAAI,EAAE,IAAI;YAAE/J,KAAK,EAAEW;UAAS,CAAE;QACzC;QACA,MAAM,CAAC7E,SAAS,EAAEC,QAAQ,CAAC,GAAG+D,MAAM,CAACE,KAAK;QAC1C,OAAO;UAAE+J,IAAI,EAAE,KAAK;UAAE/J,KAAK,EAAE/B,CAAC,CAACnC,SAAS,EAAEC,QAAQ;QAAC,CAAE;MACvD;KACD;EACH;CACD,CAAC,CAAC;AAYL;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiCA,OAAO,MAAM+O,SAAS,GAAGA,CACvB5N,KAA6C,EAC7C6I,MAAA,GAA0B,EAAE,KACX;EACjB,MAAMlE,SAAS,GAAGkE,MAAM,CAAClE,SAAS,IAAI,UAAU;EAEhD,OAAO,IAAIsH,MAAM,CAAElL,CAAC,KAAM;IACxB,CAACnD,MAAM,CAACC,QAAQ,GAAG,MAAK;MACtB,MAAM6P,OAAO,GAAG1N,KAAK,CAAClC,KAAK;MAC3B,MAAM8G,YAAY,GAAGD,SAAS,KAAK,UAAU,GACzC3E,KAAK,CAACK,gBAAgB,GACtBL,KAAK,CAACI,SAAS;MAEnB,MAAMyN,YAAY,GAAGH,OAAO,CAAClB,OAAO,EAAE;MAEtC,MAAMG,UAAU,GAAGA,CAAA,KAAK;QACtB,IAAIhF,OAAO,GAAGkG,YAAY,CAAC1D,IAAI,EAAE;QACjC,OAAO,CAACxC,OAAO,CAACkF,IAAI,EAAE;UACpB,MAAM,CAACvO,SAAS,EAAEC,QAAQ,CAAC,GAAGoJ,OAAO,CAAC7E,KAAK;UAC3C,MAAMyB,aAAa,GAAGK,YAAY,CAAClG,GAAG,CAACJ,SAAS,CAAC;UAEjD;UACA,IAAIiG,aAAa,KAAKd,SAAS,IAAIc,aAAa,CAACsC,MAAM,KAAK,CAAC,EAAE;YAC7D,OAAO;cAAEgG,IAAI,EAAE,KAAK;cAAE/J,KAAK,EAAE/B,CAAC,CAACzC,SAAS,EAAEC,QAAQ;YAAC,CAAE;UACvD;UACAoJ,OAAO,GAAGkG,YAAY,CAAC1D,IAAI,EAAE;QAC/B;QAEA,OAAO;UAAE0C,IAAI,EAAE,IAAI;UAAE/J,KAAK,EAAEW;QAAS,CAAW;MAClD,CAAC;MAED,OAAO;QAAE0G,IAAI,EAAEwC;MAAU,CAAE;IAC7B;GACD,CAAC,CAAC;AACL,CAAC","ignoreList":[]}
|
package/dist/esm/JSONSchema.js
CHANGED
|
@@ -544,7 +544,8 @@ function go(ast, $defs, identifier, path, options, annotation, errors) {
|
|
|
544
544
|
switch (parameter._tag) {
|
|
545
545
|
case "StringKeyword":
|
|
546
546
|
{
|
|
547
|
-
|
|
547
|
+
const additionalProperties = go(pruned, $defs, "handle-identifier", path, options, "handle-annotation", errors);
|
|
548
|
+
output.additionalProperties = isNeverWithoutCustomAnnotations(additionalProperties) ? false : additionalProperties;
|
|
548
549
|
break;
|
|
549
550
|
}
|
|
550
551
|
case "TemplateLiteral":
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"JSONSchema.js","names":["Arr","errors_","schemaId_","Option","ParseResult","Predicate","Record","AST","make","schema","options","definitions","target","ast","isTransformation","isParseJsonTransformation","from","to","jsonSchema","fromAST","out","$schema","getMetaSchemaUri","$defs","isEmptyRecord","definitionPath","getRef","id","topLevelReferenceStrategy","additionalPropertiesStrategy","go","constNever","$id","not","constAny","constUnknown","constVoid","constObject","constEmptyStruct","getRawDescription","annotated","undefined","getOrUndefined","getDescriptionAnnotation","getRawTitle","getTitleAnnotation","getRawDefault","getDefaultAnnotation","none","encodeDefault","def","getOption","getRawExamples","getExamplesAnnotation","encodeExamples","examples","filterMap","e","pipe","filter","isJsonValue","length","filterBuiltIn","annotation","key","_tag","stringKeyword","annotations","numberKeyword","booleanKeyword","value","visited","Set","Array","isArray","has","add","every","item","proto","Object","getPrototypeOf","prototype","getOwnPropertySymbols","values","v","delete","pruneJsonSchemaAnnotations","description","title","isSome","o","default","encodedExamples","keys","getContextJsonSchemaAnnotations","getJsonSchemaAnnotations","DescriptionAnnotationId","TitleAnnotationId","mergeJsonSchemaAnnotations","jsonSchemaAnnotations","allOf","pruneUndefined","isNone","getJSONSchemaAnnotation","SchemaIdAnnotationId","ParseJsonSchemaId","isOverrideAnnotation","isRefinement","schemaId","IntSchemaId","type","mergeRefinements","handle","name","unshift","i","minLength","maxLength","pattern","minItems","maxItems","minimum","maximum","exclusiveMinimum","exclusiveMaximum","multipleOf","isContentSchemaSupported","getAdditionalProperties","addASTAnnotations","addAnnotations","getIdentifierAnnotation","identifier","getJSONIdentifier","isSuspend","f","isTypeLiteral","isDeclaration","surrogate","getSurrogateAnnotation","path","errors","escapedId","replace","$ref","hook","handler","t","getTransformationFrom","Error","getJSONSchemaMissingAnnotationErrorMessage","getJSONSchemaMissingIdentifierAnnotationErrorMessage","literal","isString","enum","isNumber","isBoolean","anyOf","enums","map","$comment","elements","concat","rest","output","len","element","isOptional","items","prefixItems","restLength","head","isHomogeneous","additionalItems","getJSONSchemaUnsupportedPostRestElementsErrorMessage","propertySignatures","indexSignatures","required","properties","additionalProperties","patternProperties","propertyNames","is","pruned","parameter","getTemplateLiteralRegExp","source","indexSignaturePath","ps","push","getJSONSchemaUnsupportedKeyErrorMessage","members","types","compactUnion","regex","String","transformation","isJsonSchema7Object","propertySignatureTransformations","toKey","fromKey","toProperty","isRecord","fromProperty","hasOwn","isNeverWithoutCustomAnnotations","hasProperty","neverKeyword","isAny","isUnknown","isVoid","isCompactableLiteral","m","last"],"sources":["../../src/JSONSchema.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"JSONSchema.js","names":["Arr","errors_","schemaId_","Option","ParseResult","Predicate","Record","AST","make","schema","options","definitions","target","ast","isTransformation","isParseJsonTransformation","from","to","jsonSchema","fromAST","out","$schema","getMetaSchemaUri","$defs","isEmptyRecord","definitionPath","getRef","id","topLevelReferenceStrategy","additionalPropertiesStrategy","go","constNever","$id","not","constAny","constUnknown","constVoid","constObject","constEmptyStruct","getRawDescription","annotated","undefined","getOrUndefined","getDescriptionAnnotation","getRawTitle","getTitleAnnotation","getRawDefault","getDefaultAnnotation","none","encodeDefault","def","getOption","getRawExamples","getExamplesAnnotation","encodeExamples","examples","filterMap","e","pipe","filter","isJsonValue","length","filterBuiltIn","annotation","key","_tag","stringKeyword","annotations","numberKeyword","booleanKeyword","value","visited","Set","Array","isArray","has","add","every","item","proto","Object","getPrototypeOf","prototype","getOwnPropertySymbols","values","v","delete","pruneJsonSchemaAnnotations","description","title","isSome","o","default","encodedExamples","keys","getContextJsonSchemaAnnotations","getJsonSchemaAnnotations","DescriptionAnnotationId","TitleAnnotationId","mergeJsonSchemaAnnotations","jsonSchemaAnnotations","allOf","pruneUndefined","isNone","getJSONSchemaAnnotation","SchemaIdAnnotationId","ParseJsonSchemaId","isOverrideAnnotation","isRefinement","schemaId","IntSchemaId","type","mergeRefinements","handle","name","unshift","i","minLength","maxLength","pattern","minItems","maxItems","minimum","maximum","exclusiveMinimum","exclusiveMaximum","multipleOf","isContentSchemaSupported","getAdditionalProperties","addASTAnnotations","addAnnotations","getIdentifierAnnotation","identifier","getJSONIdentifier","isSuspend","f","isTypeLiteral","isDeclaration","surrogate","getSurrogateAnnotation","path","errors","escapedId","replace","$ref","hook","handler","t","getTransformationFrom","Error","getJSONSchemaMissingAnnotationErrorMessage","getJSONSchemaMissingIdentifierAnnotationErrorMessage","literal","isString","enum","isNumber","isBoolean","anyOf","enums","map","$comment","elements","concat","rest","output","len","element","isOptional","items","prefixItems","restLength","head","isHomogeneous","additionalItems","getJSONSchemaUnsupportedPostRestElementsErrorMessage","propertySignatures","indexSignatures","required","properties","additionalProperties","patternProperties","propertyNames","is","pruned","parameter","isNeverWithoutCustomAnnotations","getTemplateLiteralRegExp","source","indexSignaturePath","ps","push","getJSONSchemaUnsupportedKeyErrorMessage","members","types","compactUnion","regex","String","transformation","isJsonSchema7Object","propertySignatureTransformations","toKey","fromKey","toProperty","isRecord","fromProperty","hasOwn","hasProperty","neverKeyword","isAny","isUnknown","isVoid","isCompactableLiteral","m","last"],"sources":["../../src/JSONSchema.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
package/src/Data.ts
CHANGED
|
@@ -389,18 +389,16 @@ export declare namespace TaggedEnum {
|
|
|
389
389
|
}
|
|
390
390
|
readonly $match: {
|
|
391
391
|
<
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
Cases extends {
|
|
397
|
-
readonly [Tag in Z["taggedEnum"]["_tag"]]: (
|
|
398
|
-
args: Extract<TaggedEnum.Kind<Z, A, B, C, D>, { readonly _tag: Tag }>
|
|
392
|
+
const Self extends TaggedEnum.Kind<Z, any, any, any, any>,
|
|
393
|
+
const Cases extends {
|
|
394
|
+
readonly [Tag in Self["_tag"]]: (
|
|
395
|
+
args: Extract<Self, { readonly _tag: Tag }>
|
|
399
396
|
) => any
|
|
400
397
|
}
|
|
401
398
|
>(
|
|
402
|
-
|
|
403
|
-
|
|
399
|
+
self: Self,
|
|
400
|
+
cases: Cases & { [K in Exclude<keyof Cases, Self["_tag"]>]: never }
|
|
401
|
+
): Unify<ReturnType<Cases[Self["_tag"]]>>
|
|
404
402
|
<
|
|
405
403
|
A,
|
|
406
404
|
B,
|
|
@@ -412,9 +410,8 @@ export declare namespace TaggedEnum {
|
|
|
412
410
|
) => any
|
|
413
411
|
}
|
|
414
412
|
>(
|
|
415
|
-
self: TaggedEnum.Kind<Z, A, B, C, D>,
|
|
416
413
|
cases: Cases & { [K in Exclude<keyof Cases, Z["taggedEnum"]["_tag"]>]: never }
|
|
417
|
-
): Unify<ReturnType<Cases[Z["taggedEnum"]["_tag"]]>>
|
|
414
|
+
): (self: TaggedEnum.Kind<Z, A, B, C, D>) => Unify<ReturnType<Cases[Z["taggedEnum"]["_tag"]]>>
|
|
418
415
|
}
|
|
419
416
|
}
|
|
420
417
|
}
|