@webqit/oohtml 5.0.6 → 5.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.
- package/dist/bindings-api.js +1719 -1
- package/dist/bindings-api.js.map +1 -1
- package/dist/context-api.js +1602 -1
- package/dist/context-api.js.map +1 -1
- package/dist/data-binding.js +1634 -22
- package/dist/data-binding.js.map +2 -2
- package/dist/html-imports.js +2172 -1
- package/dist/html-imports.js.map +1 -1
- package/dist/main.js +12649 -45
- package/dist/main.js.map +2 -2
- package/dist/main.lite.js +5829 -37
- package/dist/main.lite.js.map +2 -2
- package/dist/namespaced-html.js +1977 -1
- package/dist/namespaced-html.js.map +1 -1
- package/dist/scoped-css.js +1816 -5
- package/dist/scoped-css.js.map +1 -1
- package/dist/scoped-js.js +1516 -1
- package/dist/scoped-js.js.map +1 -1
- package/package.json +4 -3
- package/src/data-binding/index.js +13 -5
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../node_modules/@webqit/util/js/isObject.js", "../node_modules/@webqit/util/js/isArray.js", "../node_modules/@webqit/util/js/isTypeFunction.js", "../node_modules/@webqit/util/js/isNull.js", "../node_modules/@webqit/util/js/isUndefined.js", "../node_modules/@webqit/util/js/isTypeObject.js", "../node_modules/@webqit/util/js/isEmpty.js", "../node_modules/@webqit/util/js/isFunction.js", "../node_modules/@webqit/util/js/isNumber.js", "../node_modules/@webqit/util/js/isNumeric.js", "../node_modules/@webqit/util/js/isString.js", "../node_modules/@webqit/util/js/isTypeArray.js", "../node_modules/@webqit/util/arr/pushUnique.js", "../node_modules/@webqit/util/obj/getPrototypeChain.js", "../node_modules/@webqit/util/obj/getAllPropertyNames.js", "../node_modules/@webqit/util/obj/mergeCallback.js", "../node_modules/@webqit/util/obj/merge.js", "../node_modules/@webqit/util/js/wq.js", "../node_modules/@webqit/util/arr/from.js", "../node_modules/@webqit/util/obj/get.js", "../node_modules/@webqit/util/obj/set.js", "../node_modules/@webqit/realdom/src/Scheduler.js", "../node_modules/@webqit/realdom/src/realtime/Util.js", "../node_modules/@webqit/realdom/src/realtime/DOMSpec.js", "../node_modules/@webqit/realdom/src/realtime/Realtime.js", "../node_modules/@webqit/realdom/src/realtime/AttrRealtime.js", "../node_modules/@webqit/realdom/src/realtime/DOMRealtime.js", "../node_modules/@webqit/realdom/src/polyfills.js", "../node_modules/@webqit/realdom/src/index.js", "../node_modules/@webqit/util/str/toTitle.js", "../src/util.js", "../src/context-api/_DOMContextRequestEvent.js", "../src/context-api/DOMContextResponse.js", "../src/context-api/DuplicateContextError.js", "../src/context-api/DOMContexts.js", "../src/context-api/DOMContext.js", "../src/namespaced-html/DOMNamingContext.js", "../src/namespaced-html/index.js", "../src/namespaced-html/targets.browser.js"],
|
|
4
4
|
"sourcesContent": ["\n/**\n * Tells if val is pure object.\n *\n * @param object\t \tval\n *\n * @return bool\n */\nexport default function(val) {\n\treturn !Array.isArray(val) && typeof val === 'object' && val;\n};\n", "\n/**\n * Tells if val is of type \"array\".\n *\n * @param object\t \tval\n *\n * @return bool\n */\nexport default function(val) {\n\treturn Array.isArray(val);\n};\n", "\n/**\n * Tells if val is of type \"function\".\n * This holds true for both regular functions and classes.\n *\n * @param object\t \tval\n *\n * @return bool\n */\nexport default function(val) {\n\treturn typeof val === 'function';\n};\n", "\n/**\n * Tells if val is undefined or is null.\n *\n * @param string \tval\n *\n * @return bool\n */\nexport default function(val) {\n\treturn val === null || val === '';\n};\n", "\n/**\n * Tells if val is undefined or is of type \"undefined\".\n *\n * @param string \tval\n *\n * @return bool\n */\nexport default function(val) {\n\treturn arguments.length && (val === undefined || typeof val === 'undefined');\n};\n", "\n/**\n * @imports\n */\nimport _isTypeFunction from './isTypeFunction.js';\n\n/**\n * Tells if val is of type \"object\".\n * This holds true for anything object, including built-ins.\n *\n * @param object\t \tval\n *\n * @return bool\n */\nexport default function(val) {\n\treturn Array.isArray(val) || (typeof val === 'object' && val) || _isTypeFunction(val);\n};\n", "\n/**\n * @imports\n */\nimport _isNull from './isNull.js';\nimport _isUndefined from './isUndefined.js';\nimport _isTypeObject from './isTypeObject.js';\n\n/**\n * Tells if val is empty in its own type.\n * This holds true for NULLs, UNDEFINED, FALSE, 0,\n * objects without keys, empty arrays.\n *\n * @param string \tval\n *\n * @return bool\n */\nexport default function(val) {\n\treturn _isNull(val) || _isUndefined(val) || val === false || val === 0 \n\t\t|| (_isTypeObject(val) && !Object.keys(val).length);\n};\n", "\n/**\n * @imports\n */\nimport _isTypeFunction from './isTypeFunction.js';\n\n/**\n * Tells if val is of type \"function\".\n *\n * @param object \t\tval\n *\n * @return bool\n */\nexport default function(val) {\n\treturn _isTypeFunction(val) || (val && {}.toString.call(val) === '[object function]');\n};\n", "\n/**\n * Tells if val is of type \"number\".\n *\n * @param string \tval\n *\n * @return bool\n */\nexport default function(val) {\n\treturn val instanceof Number || (typeof val === 'number');\n};\n", "\n/**\n * @imports\n */\nimport _isNumber from './isNumber.js';\n/**\n * Tells if val is of type \"string\" or a numeric string.\n * This holds true for both numbers and numeric strings.\n *\n * @param string \tval\n *\n * @return bool\n */\nexport default function(val) {\n\treturn _isNumber(val) || (val !== true && val !== false && val !== null && val !== '' && !isNaN(val * 1));\n};\n", "\n/**\n * Tells if val is of type \"string\".\n *\n * @param string \tval\n *\n * @return bool\n */\nexport default function(val) {\n\treturn val instanceof String || (typeof val === 'string' && val !== null);\n};\n", "\n/**\n * @imports\n */\nimport _isString from './isString.js';\nimport _isUndefined from './isUndefined.js';\n\n/**\n * Tells if val is \"array-like\".\n * This holds true for anything that has a length property.\n *\n * @param object\t \tval\n *\n * @return bool\n */\nexport default function(val) {\n\treturn !_isString(val) && !_isUndefined(val.length);\n};\n", "\n/**\n * Adds an item if not already exist.\n *\n * @param array \tarr\n * @param array\t \t...itms\n *\n * @return array\n */\nexport default function(arr, ...items) {\n\titems.forEach(itm => {\n\t\tif (arr.indexOf(itm) < 0) {\n\t\t\tarr.push(itm);\n\t\t}\n\t});\n\treturn arr;\n};\n", "\n/**\n * @imports\n */\nimport _isArray from '../js/isArray.js';\n\n/**\n * Returns the prototype chain.\n *\n * @param object \t\tobj\n * @param object\t \tuntil\n *\n * @return bool\n */\nexport default function(obj, until) {\n\tuntil = until || Object.prototype;\n\tuntil = until && !_isArray(until) ? [until] : until;\n\t// We get the chain of inheritance\n\tvar prototypalChain = [];\n\tvar obj = obj;\n\twhile((obj && (!until || until.indexOf(obj) < 0) && obj.name !== 'default')) {\n\t\tprototypalChain.push(obj);\n\t\tobj = obj ? Object.getPrototypeOf(obj) : null;\n\t}\n\treturn prototypalChain;\n};\n", "\n/**\n * @imports\n */\nimport _pushUnique from '../arr/pushUnique.js';\nimport _getPrototypeChain from './getPrototypeChain.js';\n\n/**\n * Eagerly retrieves object members all down the prototype chain.\n *\n * @param object\t \tobj\n * @param object\t \tuntil\n *\n * @return array\n */\nexport default function(obj, until) {\n\tvar keysAll = [];\n\t_getPrototypeChain(obj, until).forEach(obj => {\n\t\t_pushUnique(keysAll, ...Object.getOwnPropertyNames(obj));\n\t});\n\treturn keysAll;\n};\n", "\n/**\n * @imports\n */\nimport _isArray from '../js/isArray.js';\nimport _isFunction from '../js/isFunction.js';\nimport _isObject from '../js/isObject.js';\nimport _isTypeObject from '../js/isTypeObject.js';\nimport _isNumeric from '../js/isNumeric.js';\nimport _getAllPropertyNames from './getAllPropertyNames.js';\n\n/**\n * Merges values from subsequent arrays/objects first array/object;\n * optionally recursive\n *\n * @param array ...objs\n *\n * @return void\n */\nexport default function mergeCallback(objs, callback, deepProps = false, isReplace = false, withSymbols = false) {\n\tvar depth = 0;\n\tvar obj1 = objs.shift();\n\tif (_isNumeric(obj1) || obj1 === true || obj1 === false) {\n\t\tdepth = obj1;\n\t\tobj1 = objs.shift();\n\t}\n\tif (!objs.length) {\n\t\tthrow new Error('_merge() requires two or more array/objects.');\n\t}\n\tobjs.forEach((obj2, i) => {\n\t\tif (!_isTypeObject(obj2) && !_isFunction(obj2)) {\n\t\t\treturn;\n\t\t}\n\t\t(deepProps ? _getAllPropertyNames(obj2) : Object.keys(obj2)).forEach(key => {\n\t\t\tif (!callback(key, obj1, obj2, i)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tvar valAtObj1 = obj1[key];\n\t\t\tvar valAtObj2 = obj2[key];\n\t\t\tif (((_isArray(valAtObj1) && _isArray(valAtObj2)) || (_isObject(valAtObj1) && _isObject(valAtObj2))) \n\t\t\t&& (depth === true || depth > 0)) {\n\t\t\t\t// RECURSE...\n\t\t\t\tobj1[key] = _isArray(valAtObj1) && _isArray(valAtObj2) ? [] : {};\n\t\t\t\tmergeCallback([_isNumeric(depth) ? depth - 1 : depth, obj1[key], valAtObj1, valAtObj2], callback, deepProps, isReplace, withSymbols);\n\t\t\t} else {\n\t\t\t\tif (_isArray(obj1) && _isArray(obj2)) {\n\t\t\t\t\tif (isReplace) {\n\t\t\t\t\t\tobj1[key] = valAtObj2;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tobj1.push(valAtObj2);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t// In case we're setting a read-only property\n\t\t\t\t\ttry {\n\t\t\t\t\t\tif (withSymbols) {\n\t\t\t\t\t\t\tObject.defineProperty(obj1, key, Object.getOwnPropertyDescriptor(obj2, key));\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tobj1[key] = obj2[key];\n\t\t\t\t\t\t}\n\t\t\t\t\t} catch(e) {}\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t});\n\treturn obj1;\n};\n", "\n/**\n * @imports\n */\nimport _mergeCallback from './mergeCallback.js';\n\n/**\n * Merges values from subsequent arrays/objects first array/object;\n * optionally recursive\n *\n * @param array ...objs\n *\n * @return void\n */\nexport default function(...objs) {\n\treturn _mergeCallback(objs, (k, obj1, obj2) => {\n\t\treturn true;\n\t}, false/*deepProps*/, false/*isReplace*/, false/*withSymbols*/);\n};\n", "export default function wq(obj, ...namespaces) {\n if (!obj || !['object', 'function'].includes(typeof obj)) {\n throw new Error(`Argument #1 must be of type object`);\n }\n let wq = obj[Symbol.for('wq')];\n if (!wq) {\n wq = new WQInternals;\n Object.defineProperty(obj, Symbol.for('wq'), {\n value: wq,\n // Defaults, but to be explicit...\n enumerable: false,\n configurable: false,\n writable: false\n });\n }\n if (!namespaces.length) {\n return wq;\n }\n let _ns, _wq;\n while ((_ns = namespaces.shift())) {\n if ((_wq = wq) && !(wq = wq.get(_ns))) {\n wq = new WQInternals;\n _wq.set(_ns, wq);\n }\n }\n return wq;\n}\n\nclass WQInternals extends Map {}", "\n/**\n * @imports\n */\nimport _isArray from '../js/isArray.js';\nimport _isTypeArray from '../js/isTypeArray.js';\nimport _isEmpty from '../js/isEmpty.js';\nimport _isObject from '../js/isObject.js';\n\n/**\n * Casts an array-like object to an array.\n *\n * @param mixed \tval\n * @param bool\t \tcastObject\n *\n * @return array\n */\nexport default function(val, castObject = true) {\n\tif (_isArray(val)) {\n\t\treturn val;\n\t};\n\tif (!castObject && _isObject(val)) {\n\t\treturn [val];\n\t};\n\tif (val !== false && val !== 0 && _isEmpty(val)) {\n\t\treturn [];\n\t};\n\tif (_isTypeArray(val)) {\n\t\treturn Array.prototype.slice.call(val);\n\t};\n\tif (_isObject(val)) {\n\t\treturn Object.values(val);\n\t};\n\treturn [val];\n};\n", "\n/**\n * @imports\n */\nimport _isTypeObject from '../js/isTypeObject.js';\nimport _isUndefined from '../js/isUndefined.js';\nimport _isNull from '../js/isNull.js';\nimport _arrFrom from '../arr/from.js';\n\n/**\n * Retrieves the value at the given path.\n *\n * A return value of undefined is ambiguous, and can mean either that the\n * path does not exist, or that the path actually exists but with a value of undefined. If it is required to\n * know whether the path actually exists, pass an object as a third argument.\n * This object will have an \"exists\" key set to true/false.\n *\n * @param object \t\t\t\tctxt\n * @param array \t\t\t\tpath\n * @param object \t\t\t\ttrap\n * @param object \t\t\t\treciever\n *\n * @return mixed\n */\nexport default function(ctxt, path, trap = {}, reciever = {}) {\n\tpath = _arrFrom(path).slice();\n\tvar _ctxt = ctxt;\n\twhile(!_isUndefined(_ctxt) && !_isNull(_ctxt) && path.length) {\n\t\tvar _key = path.shift();\n\t\tif (!(trap.get ? trap.get(_ctxt, _key) : (_isTypeObject(_ctxt) ? _key in _ctxt : _ctxt[_key]))) {\n\t\t\treciever.exists = false;\n\t\t\treturn;\n\t\t}\n\t\t_ctxt = trap.get ? trap.get(_ctxt, _key) : _ctxt[_key];\n\t}\n\treciever.exists = true;\n\treturn _ctxt;\n};\n", "\n/**\n * @imports\n */\nimport _isTypeObject from '../js/isTypeObject.js';\nimport _isFunction from '../js/isFunction.js';\nimport _isNumeric from '../js/isNumeric.js';\nimport _isArray from '../js/isArray.js';\nimport _arrFrom from '../arr/from.js';\nimport _get from './get.js';\n\n/**\n * Sets a value to the given path.\n *\n * @param object \t\t\t\tobj\n * @param array \t\t\t\tpath\n * @param mixed \t\t\t\tval\n * @param object|function \t\tbuildTree\n * @param object \t\t\t\ttrap\n *\n * @return bool\n */\nexport default function(obj, path, val, buildTree = {}, trap = {}) {\n\tconst _set = (target, key, val) => {\n\t\tif (trap.set) {\n\t\t\treturn trap.set(target, key, val);\n\t\t} else {\n\t\t\tif (_isNumeric(path[i]) && _isArray(target)) {\n\t\t\t\ttarget.push(val);\n\t\t\t} else {\n\t\t\t\ttarget[key] = val;\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t};\n\tpath = _arrFrom(path);\n\tvar target = obj;\n\tfor(var i = 0; i < path.length; i ++) {\n\t\tif (i < path.length - 1) {\n\t\t\tif (!target || (!_isTypeObject(target) && !_isFunction(target))) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tvar branch = _get(target, path[i], trap);\n\t\t\tif (!_isTypeObject(branch)) {\n\t\t\t\tif (trap.buildTree === false) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tbranch = _isFunction(trap.buildTree) ? trap.buildTree(i) : (_isNumeric(path[i + 1]) ? [] : {});\n\t\t\t\tvar branchSuccess = _set(target, path[i], branch);\n\t\t\t\tif (!branchSuccess) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t\ttarget = branch;\n\t\t} else {\n\t\t\treturn _set(target, path[i], val);\n\t\t}\n\t}\n};\n", "\n/**\n * ---------------------------\n * Binds callbacks to requestAnimationFrame()\n * to create a central \"read/write\" phases for Ctxt access.\n * ---------------------------\n */\n\t\t\t\nexport default class Scheduler {\n\n\t/**\n\t * Starts the loop.\n\t *\n\t * @return this\n\t */\n\tconstructor( window, synthesis = false ) {\n\t\tObject.defineProperty( this, 'window', { value: window } );\n\t\tObject.defineProperty( this, 'readCallbacks', { value: new Set } );\n\t\tObject.defineProperty( this, 'writeCallbacks', { value: new Set } );\n\t\tObject.defineProperty( this, '_synthesis', { value: 0, writable: true } );\n\t\tif ( !synthesis && this.window.requestAnimationFrame ) {\n\t\t\tthis._loop();\n\t\t} else { this._synthesis ++; }\n\t}\n\n\tget synthesis() { return this._synthesis; }\n\n\tasync synthesizeWhile( callback ) {\n\t\tthis._synthesis ++;\n\t\tthis._fulfill();\n\t\tconst returnValue = await callback();\n\t\tthis._synthesis --;\n\t\treturn returnValue;\n\t}\n\n\t_fulfill() {\n\t\tfor ( const callback of this.readCallbacks ) {\n\t\t\tcallback();\n\t\t\tthis.readCallbacks.delete( callback );\n\t\t}\n\t\tfor ( const callback of this.writeCallbacks ) {\n\t\t\tcallback();\n\t\t\tthis.writeCallbacks.delete( callback );\n\t\t}\n\t}\n\n\t_loop() {\n\t\tthis.window.requestAnimationFrame( () => {\n\t\t\tthis._fulfill();\n\t\t\tthis._loop();\n\t\t} );\n\t}\n\t\n\t/**\n\t * Binds a callback to the \"read\" phase.\n\t *\n\t * @param function \tcallback\n\t * @param bool\t\twithPromise\n\t *\n\t * @return void\n\t */\n\tonread( callback, withPromise = false ) {\n\t\tif ( withPromise ) {\n\t\t\treturn new Promise( resolve => {\n\t\t\t\tif ( this.synthesis ) {\n\t\t\t\t\tresolve( callback() );\n\t\t\t\t} else {\n\t\t\t\t\tthis.readCallbacks.add( () => {\n\t\t\t\t\t\tresolve( callback() );\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\t\tif ( this.synthesis ) {\n\t\t\tPromise.resolve().then( callback );\n\t\t} else {\n\t\t\tthis.readCallbacks.add( callback );\n\t\t}\n\t}\n\t\n\t/**\n\t * Binds a callback to the \"write\" phase.\n\t *\n\t * @param function \tcallback\n\t * @param bool\t\twithPromise\n\t *\n\t * @return void\n\t */\n\tonwrite( callback, withPromise = false ) {\n\t\tif ( withPromise ) {\n\t\t\treturn new Promise( resolve => {\n\t\t\t\tif ( this.synthesis ) {\n\t\t\t\t\tresolve( callback() );\n\t\t\t\t} else {\n\t\t\t\t\tthis.writeCallbacks.add( () => {\n\t\t\t\t\t\tresolve( callback() );\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\t\tif ( this.synthesis ) {\n\t\t\tPromise.resolve().then( callback );\n\t\t} else {\n\t\t\tthis.writeCallbacks.add( callback );\n\t\t}\n\t}\n\t\n\t/**\n\t * A special construct for Ctxt manipulations that span\n\t * one or more read/write cycles.\n\t *\n\t * @param function \tread\n\t * @param function \twrite\n\t * @param mixed\t\tprevTransaction\n\t *\n\t * @return void|mixed\n\t */\n\tcycle( onread, onwrite, prevTransaction ) {\n\t\tthis.onread( () => {\n\t\t\t// Record initial values\n\t\t\tconst readReturn = onread( prevTransaction );\n\t\t\t// Call erite, the transation\n\t\t\tconst callWrite = ( readReturn ) => {\n\t\t\t\tif ( readReturn === undefined ) return;\n\t\t\t\tthis.onwrite( () => {\n\t\t\t\t\tconst writeReturn = onwrite( readReturn, prevTransaction );\n\t\t\t\t\t// Repeat transaction\n\t\t\t\t\tconst repeatTransaction = ( writeReturn ) => {\n\t\t\t\t\t\tif ( writeReturn === undefined ) return;\n\t\t\t\t\t\tthis.cycle( onread, onwrite, writeReturn );\n\t\t\t\t\t};\n\t\t\t\t\t// ---------------------------------------\n\t\t\t\t\t// If \"write\" returns a promise, we wait until it is resolved\n\t\t\t\t\t// ---------------------------------------\n\t\t\t\t\tif ( writeReturn instanceof Promise ) {\n\t\t\t\t\t\twriteReturn.then( repeatTransaction );\n\t\t\t\t\t} else {\n\t\t\t\t\t\trepeatTransaction( writeReturn );\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t};\n\t\t\t// ---------------------------------------\n\t\t\t// If \"read\" returns a promise, we wait until it is resolved\n\t\t\t// ---------------------------------------\n\t\t\tif ( readReturn instanceof Promise ) {\n\t\t\t\treadReturn.then( callWrite );\n\t\t\t} else {\n\t\t\t\tcallWrite( readReturn );\n\t\t\t}\n\t\t} );\n\t}\n\n}", "\n\nexport function isXpath( expr ) { return ( expr = expr.trim() ) && expr.startsWith( '(' ) && expr.endsWith( ')' ) }\n\nexport function xpathQuery( window, context, expr, subtree = true ) {\n expr = ( Array.isArray( expr ) ? expr : [ expr ] ).map( x => ( x + '' ).replace( '(', subtree ? '(.//' : '(./' ) ).join( '|' );\n let nodes = [], node;\n try {\n // Throws in firefox and safari where context is a text node\n const result = window.document.evaluate( expr, context, null, window.XPathResult.ANY_TYPE );\n while ( node = result.iterateNext() ) nodes.push( node );\n } catch( e ) {}\n return nodes;\n}\n\nexport function xpathMatch( window, node, expr ) {\n expr = ( Array.isArray( expr ) ? expr : [ expr ] ).map( x => ( x + '' ).replace( '(', '(self::' ) ).join( '|' );\n try {\n // Throws in firefox and safari where context is a text node and query isn't\n return window.document.evaluate( `${ expr }`, node, null, window.XPathResult.BOOLEAN_TYPE ).booleanValue;\n } catch( e ) {}\n}\n\nexport function containsNode( window, a, b, crossRoots = false, testCache = null ) {\n const prevTest = testCache?.get( a )?.get( b );\n if ( typeof prevTest !== 'undefined' ) return prevTest;\n const response = val => {\n if ( !testCache?.has( a ) ) testCache?.set( a, new WeakMap );\n testCache?.get( a )?.set( b, val );\n return val;\n };\n const rootNodeA = a.getRootNode();\n const rootNodeB = b.getRootNode();\n if ( rootNodeA === rootNodeB ) return response( a.contains( b ) );\n if ( crossRoots && rootNodeB instanceof window.ShadowRoot ) return response( containsNode( window, a, rootNodeB.host, crossRoots, testCache ) );\n return response( false );\n}\n\nexport function splitOuter( str, delim = '|' ) {\n return [ ...str ].reduce( ( [ quote, depth, splits, skip ], x ) => {\n if ( !quote && depth === 0 && ( Array.isArray( delim ) ? delim : [ delim ] ).includes( x ) ) {\n return [ quote, depth, [ '' ].concat( splits ) ];\n }\n if ( !quote && [ '(', '[', '{' ].includes( x ) && !splits[ 0 ].endsWith( '\\\\' ) ) depth++;\n if ( !quote && [ ')', ']', '}' ].includes( x ) && !splits[ 0 ].endsWith( '\\\\' ) ) depth--;\n if ( [ '\"', \"'\", '`' ].includes( x ) && !splits[ 0 ].endsWith( '\\\\' ) ) {\n quote = quote === x ? null : ( quote || x );\n }\n splits[ 0 ] += x;\n return [ quote, depth, splits ]\n }, [ null, 0, [ '' ] ] )[ 2 ].reverse();\n}", "\n/**\n * @imports\n */\nimport * as Util from './Util.js';\n\nexport default class DOMSpec {\n constructor( content ) {\n this.content = content;\n this.type = typeof content === 'string' ? 'selector' : 'instance';\n this.kind = this.type === 'instance' ? null : Util.isXpath( content ) ? 'xpath' : 'css';\n if ( this.kind === 'xpath' ) {\n this.isXpathAttr = Util.splitOuter( content.trim().slice( 1, -1 ), '@' ).length > 1;\n }\n }\n toString() { return this.content; }\n}", "\n/**\n * @imports\n */\nimport { _isFunction, _isObject, _wq } from '@webqit/util/js/index.js';\nimport { _from as _arrFrom } from '@webqit/util/arr/index.js';\nimport DOMSpec from './DOMSpec.js';\nimport * as Util from './Util.js';\n\n/**\n *\n * @class Realtime\n */\nexport default class Realtime {\n\n\t/**\n\t * @constructor\n\t *\n\t * @param document|Element\tcontext\n\t */\n\tconstructor( context, namespace, window ) {\n\t\tthis.context = context;\n\t\tthis.namespace = namespace;\n\t\tthis.window = context.defaultView || context.ownerDocument?.defaultView || window;\n\t\tthis.document = this.window.document;\n\t\tthis.webqit = this.window.webqit;\n\t\tObject.defineProperty( this, '#', { value: {} } );\n\t}\n\t\n\t/**\n\t * Resolves arguments\n\t * \n\t * @param Array \t\t\targs \n\t * \n\t * @returns Array\n\t */\n\tresolveArgs( args ) {\n\t\tif ( _isFunction( args[ 0 ] ) ) { args = [ [], ...args ]; }\n\t\telse if ( _isObject( args[ 0 ] ) && !( args[ 0 ] instanceof DOMSpec ) && args.length === 1 ) {\n\t\t\targs = [ [], undefined, args[ 0 ] ];\n\t\t} else if ( _isObject( args[ 1 ] ) && args.length === 2 ) {\n\t\t\targs = [ _arrFrom( args[ 0 ], false/*castObject*/ ), undefined, args[ 1 ] ];\n\t\t} else { args[ 0 ] = _arrFrom( args[ 0 ], false/*castObject*/ ); }\n\t\tif ( args[ 0 ].filter( x => typeof x !== 'string' && !( x instanceof DOMSpec ) && !( x instanceof this.window.Node ) ).length ) {\n\t\t\tthrow new Error( `Argument #2 must be either a string or a Node object, or a list of those.` );\n\t\t}\n\t\targs[ 0 ] = args[ 0 ].map( s => s instanceof DOMSpec ? s : new DOMSpec( s ) );\n\t\treturn args;\n\t}\n\n\t/**\n\t * @registry\n\t *\n\t * @param Array\t\t\t\t...args\n\t * \n\t * @returns Map\n\t */\n\tregistry( ...args ) {\n\t\treturn _wq( this.window, 'realdom', this.namespace, ...args );\n\t}\n\t\t\n\t/**\n\t * @createSignalGenerator\n\t * \n\t * @param Object \t\t\tmo \n\t * \n\t * @returns Object\n\t */\n\tcreateSignalGenerator() {\n\t\treturn {\n\t\t\tgenerate() {\n\t\t\t\t// Abort previous\n\t\t\t\tthis.lastController?.abort();\n\t\t\t\tthis.lastController = new AbortController;\n\t\t\t\tconst flags = { signal: this.lastController.signal };\n\t\t\t\treturn flags;\n\t\t\t},\n\t\t\tdisconnect() { this.lastController?.abort(); }\n\t\t}\n\t}\n\t\t\n\t/**\n\t * Loops through registration objects whose contexts match the event context.\n\t * \n\t * @param String \t\tinterceptionTiming\n\t * @param Object|Array \trecord_s\n\t * @param Function \t\tcallback \n\t * \n\t * @returns void\n\t */\n\tforEachMatchingContext( interceptionTiming, record_s, callback ) {\n\t\tconst { window } = this, deferreds = new Set, testCache = new WeakMap;\n\t\tfor ( const [ registration, deferred ] of this.registry( interceptionTiming ) ) {\n\t\t\tlet $records = [].concat( record_s ).filter( record => Util.containsNode( window, registration.context, record.target, registration.params.subtree === 'cross-roots', testCache ) );\n\t\t\tif ( !$records.length ) continue;\n\t\t\tconst args = [ registration, Array.isArray( record_s ) ? $records : $records[ 0 ] ];\n\t\t\tif ( deferred ) deferreds.add( args ); else callback.call( window, ...args );\n\t\t}\n\t\tfor ( const args of deferreds ) callback.call( window, ...args );\n\t\tdeferreds.clear();\n\t}\n\n\t/**\n\t * @disconnectables\n\t * \n\t * @param AbortSignal \t\tsignal\n\t * @param Array \t\t\t...objects \n\t * \n\t * @returns Object\n\t */\n\tdisconnectables( signal, ...objects ) {\n\t\tconst disconnectable = { disconnect() {\n\t\t\tobjects.forEach( d => (\n\t\t\t\td && _isFunction( d.disconnect ) && d.disconnect() \n\t\t\t\t|| _isFunction( d ) && d() \n\t\t\t\t|| _isObject( d ) && ( d.disconnected = true )\n\t\t\t) );\n\t\t} };\n\t\tif ( signal ) signal.addEventListener( 'abort', () => disconnectable.disconnect() );\n\t\treturn disconnectable;\n\t}\n}\n", "\n/**\n * @imports\n */\nimport { _wq } from '@webqit/util/js/index.js';\nimport Realtime from './Realtime.js';\nimport DOMSpec from './DOMSpec.js';\n\n/**\n *\n * @class AttrRealtime\n */\nexport default class AttrRealtime extends Realtime {\n\n\ttype = 'attr';\n\n\t/**\n\t * @constructor\n\t */\n\tconstructor( context, ...args ) {\n\t\tsuper( context, 'attr', ...args );\n\t}\n\t\n\t/**\n\t * Runs a query.\n\t *\n\t * @param array|string\t\t\t\tspec\n\t * @param function\t\t\t\t\tcallback\n\t * @param object\t\t\t\t\tparams\n\t *\n\t * @return Disconnectable|Void\n\t */\n\tget( spec, callback = undefined, params = {} ) {\n\t\tconst originalFilterIsString = typeof spec === 'string' || spec instanceof DOMSpec;\n\t\t[ spec = [], callback = undefined, params = {} ] = this.resolveArgs( arguments );\n\t\tconst { context } = this;\n\t\t// -------------\n\t\tconst records = attrIntersection( context, spec );\n\t\tif ( !callback ) return records;\n\t\tconst signalGenerator = params.lifecycleSignals && this.createSignalGenerator();\n\t\tif ( !originalFilterIsString ) {\n\t\t\tconst flags = signalGenerator?.generate() || {};\n\t\t\tcallback( records, flags, context );\n\t\t} else {\n\t\t\tfor ( const record of records ) {\n\t\t\t\tconst flags = signalGenerator ? signalGenerator.generate() : {};\n\t\t\t\tcallback( record, flags, context );\n\t\t\t}\n\t\t}\n\t\t// -------------\n\t\tif ( params.live ) {\n\t\t\tif ( signalGenerator ) { params = { ...params, signalGenerator }; }\n\t\t\tconst disconnectable_live = this.observe( originalFilterIsString ? spec[ 0 ] : spec, callback, { newValue: true, ...params } );\n\t\t\treturn this.disconnectables( params.signal, disconnectable_live );\n\t\t}\n\t}\n\n\t/**\n\t * Mutation Observer\n\t * \n\t * @param array|string\t\t\t\tspec\n\t * @param function\t\t\t\t\tcallback\n\t * @param object\t\t\t\t\tparams\n\t * \n\t * @returns Disconnectable\n\t */\n\tobserve( spec, callback, params = {} ) {\n\t\tconst originalFilterIsString = typeof spec === 'string' || spec instanceof DOMSpec;\n\t\t[ spec = [], callback, params = {} ] = this.resolveArgs( arguments );\n\t\t// ------------------------\n\t\tif ( [ 'sync', 'intercept' ].includes( params.timing ) ) return this.observeSync( originalFilterIsString ? spec[ 0 ] : spec, callback, params );\n\t\tif ( params.timing && params.timing !== 'async' ) throw new Error( `Timing option \"${ params.timing }\" invalid.` );\n\t\t// ------------------------\n\t\tconst { context, window, webqit } = this;\n\t\t// ------------------\n\t\tif ( params.eventDetails && !webqit.realdom.attrInterceptionHooks?.intercepting ) {\n\t\t\tattrInterception.call( window, 'intercept', () => {} );\n\t\t}\n\t\t// -------------\n\t\tconst disconnectable = new window.MutationObserver( records => {\n\t\t\trecords = dedupAndIgnoreInternals( records ).map( rcd => withAttrEventDetails.call( window, rcd ) );\n\t\t\tdispatch.call( window, registration, records, context );\n\t\t} );\n\t\t// ------------------\n\t\tconst $params = { attributes: true, attributeOldValue: params.oldValue, subtree: params.subtree && true };\n\t\tif ( spec.length ) { $params.attributeFilter = spec.map( a => a + '' ); }\n\t\tdisconnectable.observe( context, $params );\n\t\t// -------------\n\t\tconst signalGenerator = params.signalGenerator || params.lifecycleSignals && this.createSignalGenerator();\n\t\tconst registration = { context, spec, callback, params, atomics: new Map, originalFilterIsString, signalGenerator, disconnectable };\n\t\t// -------------\n\t\treturn this.disconnectables( params.signal, disconnectable, signalGenerator );\n\t}\n\t\n\t/**\n\t * Mutation Interceptor\n\t * \n\t * @param array|string\t\t\t\tspec\n\t * @param function\t\t\t\t\tcallback\n\t * @param object\t\t\t\t\tparams\n\t * \n\t * @returns Disconnectable\n\t */\n\tobserveSync( spec, callback, params = {} ) {\n\t\tconst originalFilterIsString = typeof spec === 'string' || spec instanceof DOMSpec;\n\t\t[ spec, callback, params = {} ] = this.resolveArgs( arguments );\n\t\tconst { context, window } = this;\n\t\t// -------------\n\t\tif ( params.timing && ![ 'sync', 'intercept' ].includes( params.timing ) ) throw new Error( `Timing option \"${ params.timing }\" invalid.` );\n\t\tconst interceptionTiming = params.timing === 'intercept' ? 'intercept' : 'sync';\n\t\tif ( !this.registry( interceptionTiming ).size ) {\n\t\t\t// One handler per intercept/sync registry\n\t\t\tattrInterception.call( window, interceptionTiming, records => {\n\t\t\t\tthis.forEachMatchingContext( interceptionTiming, records, dispatch );\n\t\t\t} );\n\t\t}\n\t\t// -------------\n\t\tconst disconnectable = { disconnect() { registry.delete( registration ); } };\n\t\tconst signalGenerator = params.signalGenerator || params.lifecycleSignals && this.createSignalGenerator();\n\t\tconst registration = { context, spec, callback, params, atomics: new Map, originalFilterIsString, signalGenerator, disconnectable };\n\t\tconst registry = this.registry( interceptionTiming );\n\t\tregistry.set( registration, !!registration.params.deferred );\n\t\t// -------------\n\t\treturn this.disconnectables( params.signal, disconnectable, signalGenerator );\n\t}\n}\n\n/**\n * Deduplicates records.\n * \n * @param Array \t\t\trecords\n * \n * @returns Array\n */\nfunction dedupAndIgnoreInternals( records ) {\n\treturn records.reduce( ( rcds, rcd, i ) => {\n\t\tif ( rcds[ i - 1 ]?.attributeName === rcd.attributeName ) return rcds;\n\t\tif ( _wq( rcd.target, 'realdom', 'internalAttrInteractions' ).get( rcd.attributeName ) ) return rcds;\n\t\treturn rcds.concat( rcd );\n\t}, [] );\n}\n\n/**\n * Dispatches a mutation record if it matches the observed.\n * \n * @param Object \t\t\tregistration\n * @param Array \t\t\trecords\n * \n * @returns Void\n */\nfunction dispatch( registration, records ) {\n\tconst { context, spec, callback, params, atomics, originalFilterIsString, signalGenerator } = registration;\n\tif (!params.subtree) {\n\t\trecords = records.filter((r) => {\n\t\t\treturn r.target === context;\n\t\t}); \n\t}\n\tif ( !records.length ) return;\n\tconst $spec = spec.map( a => a + '' );\n\tif ( params.atomic && !atomics.size ) {\n\t\trecords = attrIntersection( context, spec, records );\n\t} else if ( params.timing !== 'async' && spec.length ) {\n\t\trecords = records.filter( r => $spec.includes( r.name ) );\n\t}\n\tif ( !records.length ) return;\n\t// Should we care about old / new values being present?\n\tif ( !( params.newValue === null && params.oldValue === null && params.eventDetails ) ) {\n\t\trecords = records.map( rcd => {\n\t\t\tlet exclusion;\n\t\t\tif ( !params.eventDetails ) {\n\t\t\t\t( { event: exclusion, ...rcd } = rcd );\n\t\t\t}\n\t\t\tif ( !params.oldValue && ( 'oldValue' in rcd ) ) {\n\t\t\t\t( { oldValue: exclusion, ...rcd } = rcd );\n\t\t\t}\n\t\t\tif ( !params.newValue && ( 'value' in rcd ) ) {\n\t\t\t\t( { value: exclusion, ...rcd } = rcd );\n\t\t\t} else if ( params.newValue && typeof rcd.value === 'undefined' ) {\n\t\t\t\trcd = { ...rcd, value: internalAttrInteraction( rcd.target, rcd.name, () => rcd.target.getAttribute( rcd.name ) ) };\n\t\t\t}\n\t\t\treturn rcd;\n\t\t} );\n\t}\n\tif ( params.atomic ) {\n\t\trecords.forEach( record => atomics.set( record.name, record ) );\n\t\trecords = Array.from( atomics.entries() ).map( ( [ , value ] ) => value );\n\t}\n\tconst record_s = originalFilterIsString ? records[ 0 ] : records;\n\tconst flags = signalGenerator ? signalGenerator.generate() : {};\n\tcallback( record_s, flags, context );\n}\n\n/**\n */\nfunction internalAttrInteraction( node, attrName, callback ) {\n\tconst savedAttrLocking = _wq( node, 'realdom', 'internalAttrInteractions' ).get( attrName );\n\t_wq( node, 'realdom', 'internalAttrInteractions' ).set( attrName, true );\n\tconst value = callback();\n\t_wq( node, 'realdom', 'internalAttrInteractions' ).set( attrName, savedAttrLocking );\n\treturn value;\n}\n\n/**\n * Helper to determining which records to deliver.\n * \n * @param Object \t\t\tcontext\n * @param Array \t\t\tspec\n * @param Array \t\t\trecords\n * \n * @returns Array\n */\nfunction attrIntersection( context, spec, records = [] ) {\n\tconst _type = { event: null, type: 'attribute' };\n\tif ( spec.length ) {\n\t\treturn spec.map( attrName => {\n\t\t\tattrName = attrName + '';\n\t\t\treturn records.find( r => r.name === attrName ) || { target: context, name: attrName, value: internalAttrInteraction( context, attrName, () => context.getAttribute( attrName ) ), ..._type };\n\t\t} );\n\t}\n\tconst attrs = Array.from( context.attributes );\n\treturn attrs.map( attr => {\n\t\treturn records.find( r => r.name === attr.nodeName ) || { target: context, name: attr.nodeName, value: internalAttrInteraction( context, attr.nodeName, () => attr.nodeValue ), ..._type };\n\t} );\n}\n\n/**\n * Determines the event for an attr mutation record.\n * \n * @param MutationRecord \t{ target, attributeName }\n * \n * @returns Object\n */\nfunction withAttrEventDetails( { target, attributeName, value, oldValue } ) {\n\tconst window = this, registry = window.webqit.realdom.attrInterceptionRecords?.get( target ) || {};\n\tconst event = registry[ attributeName ]?.[ 0 ] || 'mutation';\n\tconst record = { target, name: attributeName, value, oldValue, type: 'observation', event };\n\treturn record;\n}\n\n/**\n * Attributes intersection engine.\n * \n * @param String \t\t\ttiming \n * @param Function \t\t\tcallback \n * \n * @returns \n */\nfunction attrInterception( timing, callback ) {\n\tconst window = this;\n\tconst { webqit, document, Element } = window;\n\tif ( !webqit.realdom.attrInterceptionHooks ) { Object.defineProperty( webqit.realdom, 'attrInterceptionHooks', { value: new Map } ); }\n\tif ( !webqit.realdom.attrInterceptionHooks.has( timing ) ) { webqit.realdom.attrInterceptionHooks.set( timing, new Set ); }\n\twebqit.realdom.attrInterceptionHooks.get( timing ).add( callback );\n\tconst rm = () => webqit.realdom.attrInterceptionHooks.get( timing ).delete( callback );\n\tif ( webqit.realdom.attrInterceptionHooks?.intercepting ) return rm;\n\tconsole.warn( `Attr mutation APIs are now being intercepted.` );\n\twebqit.realdom.attrInterceptionHooks.intercepting = true;\n\tObject.defineProperty( webqit.realdom, 'attrInterceptionRecords', { value: new Map } );\n\n\t// Interception hooks\n\tconst attrIntercept = ( record, defaultAction ) => {\n\t\tif ( !webqit.realdom.attrInterceptionRecords.has( record.target ) ) { webqit.realdom.attrInterceptionRecords.set( record.target, {} ); }\n\t\tconst registry = webqit.realdom.attrInterceptionRecords.get( record.target );\n\t\t// ------------------\n\t\tregistry[ record.name ] = registry[ record.name ] || [];\n\t\tregistry[ record.name ].unshift( record.event );\n\t\tif ( _wq( record.target, 'realdom', 'internalAttrInteractions' ).get( record.name ) ) return defaultAction();\n\t\t// ------------------\n\t\twebqit.realdom.attrInterceptionHooks.get( 'intercept' )?.forEach( callback => callback( [ record ] ) );\n\t\tconst returnValue = defaultAction();\n\t\twebqit.realdom.attrInterceptionHooks.get( 'sync' )?.forEach( callback => callback( [ record ] ) );\n\t\treturn returnValue;\n\t};\n\n\t// Interception observer WILL need to know non-API-based mutations\n\tconst mo = new window.MutationObserver( records => {\n\t\trecords = records.filter( rcd => {\n\t\t\tconst registry = window.webqit.realdom.attrInterceptionRecords?.get( rcd.target ) || {};\n\t\t\treturn !registry[ rcd.attributeName ]?.shift();\n\t\t} );\n\t\trecords = dedupAndIgnoreInternals( records ).map( rcd => withAttrEventDetails.call( window, rcd ) );\n\t\tif ( !records.length ) return;\n\t\twebqit.realdom.attrInterceptionHooks.get( 'intercept' )?.forEach( callback => callback( records ) );\n\t\twebqit.realdom.attrInterceptionHooks.get( 'sync' )?.forEach( callback => callback( records ) );\n\t} );\n\tmo.observe( document, { attributes: true, subtree: true, attributeOldValue: true } );\n\n\t// Intercept DOM attr mutation methods\n\tconst originalApis = Object.create( null );\n\t[ 'setAttribute', 'removeAttribute', 'toggleAttribute', ].forEach( apiName => {\n\t\toriginalApis[ apiName ] = Element.prototype[ apiName ];\n\t\tElement.prototype[ apiName ] = function( ...args ) {\n\t\t\tlet value, oldValue = internalAttrInteraction( this, args[ 0 ], () => this.getAttribute( args[ 0 ] ) );\n\t\t\tif ( [ 'setAttribute', 'toggleAttribute' ].includes( apiName ) ) { value = args[ 1 ]; }\n\t\t\tif ( apiName === 'toggleAttribute' && value === undefined ) {\n\t\t\t\tvalue = oldValue === null ? true : false;\n\t\t\t}\n\t\t\tconst record = { target: this, name: args[ 0 ], value, oldValue, type: 'interception', event: [ this, apiName ] };\n\t\t\tconst exec = () => originalApis[ apiName ].call( this, ...args );\n\t\t\treturn attrIntercept( record, exec );\n\t\t}\n\t} );\n\n\treturn rm;\n}\n", "\n/**\n * @imports\n */\nimport { _isObject } from '@webqit/util/js/index.js';\nimport { _from as _arrFrom } from '@webqit/util/arr/index.js';\nimport AttrRealtime from './AttrRealtime.js';\nimport Realtime from './Realtime.js';\nimport * as Util from './Util.js';\n\n/**\n *\n * @class DOMRealtime\n */\nexport default class DOMRealtime extends Realtime {\n\n\t/**\n\t * @constructor\n\t */\n\tconstructor( context, ...args ) {\n\t\tsuper( context, 'tree', ...args );\n\t}\n\n\t/**\n\t * Alias for ( new AttrRealtime() ).all( ... )\n\t */\n\tattr( filter, callback = undefined, params = {} ) {\n\t\tconst { context, window } = this;\n\t\treturn ( new AttrRealtime( context, window ) ).get( ...arguments );\n\t}\n\n\t/**\n\t * Runs a query.\n\t *\n\t * @param array|Element|string\t\tspec\n\t * @param function\t\t\t\t\tcallback\n\t * @param object\t\t\t\t\tparams\n\t *\n\t * @return Disconnectable|Void\n\t */\n\tquery( spec, callback = undefined, params = {} ) {\n\t\t[ spec, callback = undefined, params = {} ] = this.resolveArgs( arguments );\n\t\tconst { context } = this;\n\t\t// ------------------\n\t\tconst records = new Map, getRecord = target => {\n\t\t\tif ( !records.has( target ) ) { records.set( target, { target, entrants: [], exits: [], type: 'query', event: null } ); }\n\t\t\treturn records.get( target );\n\t\t};\n\t\t// ------------------\n\t\tif ( !params.generation || params.generation === 'entrants' ) {\n\t\t\tif ( !spec.length ) {\n\t\t\t\t//if ( params.subtree ) throw new Error( `The subtree option requires a selector to work.` );\n\t\t\t\t[ ...context.children ].forEach( node => getRecord( context ).entrants.push( node ) );\n\t\t\t} else if ( spec.every( s => s.type === 'selector' ) ) {\n\t\t\t\tconst [ cssSelectors, xpathQueries ] = spec.reduce( ( [ css, xpath ], s ) => {\n\t\t\t\t\treturn s.kind === 'xpath' ? [ css, xpath.concat( s ) ] : [ css.concat( s ), xpath ];\n\t\t\t\t}, [ [], [] ] );\n\t\t\t\tconst matches = [];\n\t\t\t\tif ( params.subtree ) {\n\t\t\t\t\tif ( cssSelectors.length ) { matches.push( ...context.querySelectorAll( cssSelectors.join( ',' ) ) ); }\n\t\t\t\t\tif ( xpathQueries.length ) { matches.push( ...Util.xpathQuery( this.window, context, xpathQueries ) ); }\n\t\t\t\t} else {\n\t\t\t\t\tif ( cssSelectors.length ) { matches.push( ...[ ...context.children ].filter( node => node.matches( cssSelectors ) ) ); }\n\t\t\t\t\tif ( xpathQueries.length ) { matches.push( ...Util.xpathQuery( this.window, context, xpathQueries, false ) ); }\n\t\t\t\t}\n\t\t\t\tmatches.forEach( node => getRecord( node.parentNode || context ).entrants.push( node ) );\n\t\t\t}\n\t\t}\n\t\t// ------------------\n\t\tif ( !callback ) return records;\n\t\tconst disconnectable = { disconnected: false };\n\t\tconst signalGenerator = callback && params.lifecycleSignals && this.createSignalGenerator();\n\t\tfor ( const [ , record ] of records ) {\n\t\t\tif ( disconnectable.disconnected ) break;\n\t\t\tconst flags = signalGenerator?.generate() || {};\n\t\t\tcallback( record, flags, context );\n\t\t}\n\t\t// ------------------\n\t\tif ( params.live ) {\n\t\t\tif ( signalGenerator ) { params = { ...params, signalGenerator }; }\n\t\t\tconst disconnectable_live = this.observe( spec, callback, params );\n\t\t\treturn this.disconnectables( params.signal, disconnectable, disconnectable_live );\n\t\t}\n\t\treturn this.disconnectables( params.signal, disconnectable, signalGenerator );\n\t}\n\n\t/**\n\t * Alias for query( ..., { subtree: false } )\n\t */\n\tchildren( spec, callback = undefined, params = {} ) {\n\t\t[ spec, callback = undefined, params = {} ] = this.resolveArgs( arguments );\n\t\treturn this.query( spec, callback, { ...params, subtree: false } );\n\t}\n\n\t/**\n\t * Alias for query( ..., { subtree: true } )\n\t */\n\tsubtree( spec, callback = undefined, params = {} ) {\n\t\t[ spec, callback = undefined, params = {} ] = this.resolveArgs( arguments );\n\t\treturn this.query( spec, callback, { ...params, subtree: true } );\n\t}\n\n\t/**\n\t * Mutation Observer\n\t * \n\t * @param array|Element|string\t\tspec\n\t * @param function\t\t\t\t\tcallback\n\t * @param object\t\t\t\t\tparams\n\t * \n\t * @returns Disconnectable\n\t */\n\tobserve( spec, callback, params = {} ) {\n\t\t[ spec, callback, params = {} ] = this.resolveArgs( arguments );\n\t\t// ------------------------\n\t\tif ( [ 'sync', 'intercept' ].includes( params.timing ) ) return this.observeSync( spec, callback, params );\n\t\tif ( params.timing && params.timing !== 'async' ) throw new Error( `Timing option \"${ params.timing }\" invalid.` );\n\t\t// ------------------------\n\t\tconst { context, window, webqit, document } = this;\n\t\t// ------------------\n\t\tif ( params.eventDetails ) { webqit.realdom.domInterceptionRecordsAlwaysOn = true; }\n\t\tif ( ( document.readyState === 'loading' || webqit.realdom.domInterceptionRecordsAlwaysOn ) && !webqit.realdom.domInterceptionHooks?.intercepting ) {\n\t\t\tdomInterception.call( window, 'sync', () => {} );\n\t\t}\n\t\t// -------------\n\t\tconst disconnectable = new window.MutationObserver( records => records.forEach( record => {\n\t\t\tdispatch.call( window, registration, withEventDetails.call( window, record ), context );\n\t\t} ) );\n\t\tdisconnectable.observe( context, { childList: true, subtree: params.subtree && true, } );\n\t\tconst signalGenerator = params.signalGenerator || params.lifecycleSignals && this.createSignalGenerator();\n\t\tconst registration = { context, spec, callback, params, signalGenerator, disconnectable };\n\t\t// -------------\n\t\tif ( params.staticSensitivity ) {\n\t\t\tconst disconnectable_attr = staticSensitivity.call( window, registration );\n\t\t\treturn this.disconnectables( params.signal, disconnectable, signalGenerator, disconnectable_attr );\n\t\t}\n\t\treturn this.disconnectables( params.signal, disconnectable, signalGenerator );\n\t}\n\t\n\t/**\n\t * Mutation Interceptor\n\t * \n\t * @param array|Element|string\t\tspec\n\t * @param function\t\t\t\t\tcallback\n\t * @param object\t\t\t\t\tparams\n\t * \n\t * @returns Disconnectable\n\t */\n\tobserveSync( spec, callback, params = {} ) {\n\t\t[ spec, callback, params = {} ] = this.resolveArgs( arguments );\n\t\tconst { context, window } = this;\t\t\n\t\t// -------------\n\t\tif ( params.timing && ![ 'sync', 'intercept' ].includes( params.timing ) ) throw new Error( `Timing option \"${ params.timing }\" invalid.` );\n\t\tconst interceptionTiming = params.timing === 'intercept' ? 'intercept' : 'sync';\n\t\tif ( !this.registry( interceptionTiming ).size ) {\n\t\t\t// One handler per intercept/sync registry\n\t\t\tdomInterception.call( window, interceptionTiming, record => {\n\t\t\t\tthis.forEachMatchingContext( interceptionTiming, record, dispatch );\n\t\t\t} );\n\t\t}\n\t\tconst mo = new window.MutationObserver( records => records.forEach( record => {\n\t\t\tif ( Array.isArray( ( record = withEventDetails.call( window, record ) ).event ) ) return;\n\t\t\tdispatch.call( window, registration, record, context );\n\t\t} ) );\n\t\tmo.observe( context, { childList: true, subtree: params.subtree && true } );\n\t\t// -------------\n\t\tconst disconnectable = { disconnect() {\n\t\t\tregistry.delete( registration );\n\t\t\tmo.disconnect();\n\t\t} };\n\t\tconst signalGenerator = params.signalGenerator || params.lifecycleSignals && this.createSignalGenerator();\n\t\tconst registration = { context, spec, callback, params, signalGenerator, disconnectable };\n\t\tconst registry = this.registry( interceptionTiming );\n\t\tregistry.set( registration, !!registration.params.deferred );\n\t\t// -------------\n\t\tif ( params.staticSensitivity ) {\n\t\t\tconst disconnectable_attr = staticSensitivity.call( window, registration );\n\t\t\treturn this.disconnectables( params.signal, disconnectable, signalGenerator, disconnectable_attr );\n\t\t}\n\t\treturn this.disconnectables( params.signal, disconnectable, signalGenerator );\n\t}\n\n\t/**\n\t * Tracks the connectedness of element references.\n\t *\n\t * @param array|Element\t\t\t\telements\n\t * @param function\t\t\t\t\tcallback\n\t * @param object\t\t\t\t\tparams\n\t *\n\t * @return Disconnectable\n\t */\n\ttrack( elements, callback, params = {} ) {\n\t\tparams = { subtree: true, ...params };\n\t\treturn this.observe( elements, record => {\n\t\t\tif ( record.entrants.length ) callback( true, Array.isArray( elements ) ? record.entrants : record.entrants[ 0 ] );\n\t\t\tif ( record.exits.length ) callback( false, Array.isArray( elements ) ? record.exits : record.exits[ 0 ] );\n\t\t}, params );\n\t}\n}\n\n/**\n * Sensitivty for attribute changes for attribute spec.\n * \n * @param object registration\n * \n * @returns Disconnectable\n */\nfunction staticSensitivity( registration ) {\n\tconst window = this;\n\tconst { context, spec, callback, params, signalGenerator } = registration;\n\tconst cssSelectors = spec.filter( s => s.kind === 'css' );\n\tconst parseDot = selector => selector.match( /\\.([\\w-]+)/g )?.length ? [ 'class' ] : [];\n\tconst parseHash = selector => selector.match( /#([\\w-]+)/g )?.length ? [ 'id' ] : [];\n\tconst parse = selector => [ ...selector.matchAll( /\\[([^\\=\\]]+)(\\=[^\\]]+)?\\]/g ) ].map( x => x[ 1 ] ).concat( parseDot( selector ) ).concat( parseHash( selector ) );\n\tif ( !( registration.$attrs = Array.from( new Set( cssSelectors.filter( s => ( s + '' ).includes( '[' ) ).reduce( ( attrs, selector ) => attrs.concat( parse( selector + '' ) ), [] ) ) ) ).length ) return;\n\t// ---------\n\tconst entrants = new Set, exits = new Set;\n\tentrants.push = val => ( exits.delete( val ), entrants.add( val ) );\n\texits.push = val => ( entrants.delete( val ), exits.add( val ) );\n\tregistration.$deliveryCache = { entrants, exits };\n\t// ---------\n\treturn ( new AttrRealtime( context, window ) ).observe( registration.$attrs, _records => {\n\t\tconst records = new Map, getRecord = target => {\n\t\t\tif ( !records.has( target ) ) { records.set( target, { target, entrants: [], exits: [], type: 'static', event: null } ); }\n\t\t\treturn records.get( target );\n\t\t};\n\t\t// ---------\n\t\tconst matchesCache = new WeakMap;\n\t\tconst matches = node => {\n\t\t\tif ( !matchesCache.has( node ) ) { matchesCache.set( node, cssSelectors.some( s => node.matches( s + '' ) ) ); }\n\t\t\treturn matchesCache.get( node );\n\t\t};\n\t\t// ---------\n\t\tfor ( const _record of _records ) {\n\t\t\t[ 'entrants', 'exits' ].forEach( generation => {\n\t\t\t\tif ( params.generation && generation !== params.generation ) return;\n\t\t\t\tif ( registration.$deliveryCache[ generation ].has( _record.target ) || ( generation === 'entrants' ? !matches( _record.target ) : matches( _record.target ) ) ) return;\n\t\t\t\tregistration.$deliveryCache[ generation ].push( _record.target );\n\t\t\t\tgetRecord( _record.target )[ generation ].push( _record.target );\n\t\t\t\tgetRecord( _record.target ).event = _record.event;\n\t\t\t} );\n\t\t}\n\t\t// ---------\n\t\tfor ( const [ , record ] of records ) {\n\t\t\tconst flags = signalGenerator?.generate() || {};\n\t\t\tcallback( record, flags, context );\n\t\t}\n\t}, { subtree: params.subtree, timing: params.timing, eventDetails: params.eventDetails } );\n}\n\n/**\n * Dispatches a mutation record if it matches the observed.\n * \n * @param Object \t\t\tregistration \n * @param Object \t\t\trecord \n * \n * @returns Void\n */\nfunction dispatch( registration, _record ) {\n\tconst { context, spec, callback, params, signalGenerator, $deliveryCache } = registration;\n\t// ---------\n\tconst record = { ..._record, entrants: [], exits: [] };\n\tif ( !params.eventDetails ) { delete record.event; }\n\t[ 'entrants', 'exits' ].forEach( generation => {\n\t\tif ( params.generation && generation !== params.generation ) return;\n\t\tif ( spec.length ) {\n\t\t\trecord[ generation ] = nodesIntersection.call( this, spec, params.subtree === 'cross-roots', _record[ generation ], _record.event !== 'parse' );\n\t\t} else {\n\t\t\trecord[ generation ] = [ ..._record[ generation ] ];\n\t\t}\n\t\tif ( !$deliveryCache ) return;\n\t\tfor ( const node of record[ generation ] ) {\n\t\t\t$deliveryCache[ generation ].push( node );\n\t\t}\n\t} );\n\t// ---------\n\tif ( !record.entrants.length && !record.exits.length ) return;\n\tconst flags = signalGenerator?.generate() || {};\n\tcallback( record, flags, context );\n}\n\n/**\n * Aggregates instances of els in sources\n * \n * @param Array \t\t\tspec \n * @param Bool \t\t\t\tcrossRoots \n * @param Array \t\t\tsources \n * @param Bool \t\t\t\tdeepIntersect \n * \n * @returns \n */\nfunction nodesIntersection( spec, crossRoots, sources, deepIntersect ) {\n\tsources = Array.isArray( sources ) ? sources : [ ...sources ];\n\tconst match = ( sources, s ) => {\n\t\t// Filter out text nodes\n\t\tif ( s.type === 'selector' ) {\n\t\t\t// Is directly mutated...\n\t\t\tlet matches = s.isXpathAttr ? [] : sources.filter( source => s.kind === 'xpath' ? Util.xpathMatch( this, source, s + '' ) : source.matches && source.matches( s + '' ) );\n\t\t\t// Is contextly mutated...\n\t\t\tif ( deepIntersect || s.isXpathAttr ) {\n\t\t\t\tmatches = sources.reduce( ( collection, source ) => {\n\t\t\t\t\tif ( s.kind === 'xpath' ) { return [ ...collection, ...Util.xpathQuery( this, source, s, deepIntersect ) ]; }\n\t\t\t\t\treturn source.querySelectorAll ? [ ...collection, ...source.querySelectorAll( s + '' ) ] : collection;\n\t\t\t\t}, matches );\n\t\t\t}\n\t\t\tif ( matches.length ) return matches;\n\t\t} else {\n\t\t\t// Is directly mutated...\n\t\t\tif ( sources.includes( s.content ) || (\n\t\t\t\tdeepIntersect && sources.some( source => Util.containsNode( this/* window */, source, s.content, crossRoots ) )\n\t\t\t) ) { return [ s.content ]; }\n\t\t}\n\t};\n\t// Search can be expensive...\n\t// Multiple listeners searching the same thing in the same list?\n\tif ( !sources.$$searchCache ) { sources.$$searchCache = new Map; }\n\treturn spec.reduce( ( matches, s ) => {\n\t\tlet _matches;\n\t\tif ( sources.$$searchCache.has( s.content ) ) {\n\t\t\t_matches = sources.$$searchCache.get( s.content );\n\t\t} else {\n\t\t\t_matches = match( sources, s ) || [];\n\t\t\tif ( s.type === 'instance' ) {\n\t\t\t\tsources.$$searchCache.set( s.content, _matches );\n\t\t\t}\n\t\t}\n\t\treturn matches.concat( _matches );\n\t}, [] );\n}\n\n/**\n * Determines the event for a mutation record\n * \n * @param MutationRecord \t{ target, entrants, exits }\n * \n * @returns Object\n */\nfunction withEventDetails( { target, addedNodes, removedNodes } ) {\n\tlet window = this, event;\n\tevent = _arrFrom( addedNodes ).reduce( ( prev, node ) => prev || window.webqit.realdom.domInterceptionRecords?.get( node ), null );\n\tevent = _arrFrom( removedNodes ).reduce( ( prev, node ) => prev || window.webqit.realdom.domInterceptionRecords?.get( node ), event );\n\tevent = event || window.document.readyState === 'loading' && 'parse' || 'mutation';\n\treturn { target, entrants: addedNodes, exits: removedNodes, type: 'observation', event };\n}\n\n/**\n * DOM intersection engine.\n * \n * @param String \t\t\ttiming \n * @param Function \t\t\tcallback \n * \n * @returns \n */\nfunction domInterception( timing, callback ) {\n\tconst window = this;\n\tconst { webqit, document, Node, CharacterData, Element, HTMLElement, HTMLTemplateElement, DocumentFragment } = window;\n\tif ( !webqit.realdom.domInterceptionHooks ) { Object.defineProperty( webqit.realdom, 'domInterceptionHooks', { value: new Map } ); }\n\tif ( !webqit.realdom.domInterceptionNoRecurse ) { Object.defineProperty( webqit.realdom, 'domInterceptionNoRecurse', { value: new Map } ); }\n\tif ( !webqit.realdom.domInterceptionHooks.has( timing ) ) { webqit.realdom.domInterceptionHooks.set( timing, new Set ); }\n\twebqit.realdom.domInterceptionHooks.get( timing ).add( callback );\n\tconst rm = () => webqit.realdom.domInterceptionHooks.get( timing ).delete( callback );\n\tif ( webqit.realdom.domInterceptionHooks?.intercepting ) return rm;\n\tconsole.warn( `DOM mutation APIs are now being intercepted.` );\n\twebqit.realdom.domInterceptionHooks.intercepting = true;\n\tObject.defineProperty( webqit.realdom, 'domInterceptionRecords', { value: new Map } );\n\n\t// No recursion helper\n\tconst noRecurse = ( node, method, callback ) => {\n\t\twebqit.realdom.domInterceptionNoRecurse.set( node, method );\n\t\tconst returnValue = callback();\n\t\twebqit.realdom.domInterceptionNoRecurse.delete( node );\n\t\treturn returnValue;\n\t};\n\n\t// Interception hooks\n\tconst intercept = ( record, defaultAction ) => {\n\t\trecord.entrants.concat( record.exits ).forEach( node => {\n\t\t\tclearTimeout( webqit.realdom.domInterceptionRecords.get( node )?.timeout ); // Clear any previous that's still active\n\t\t\twebqit.realdom.domInterceptionRecords.set( node, record.event ); // Main: set event details... and next to timeout details\n\t\t\tconst timeout = setTimeout( () => { webqit.realdom.domInterceptionRecords.delete( node ); }, 0 );\n\t\t\tObject.defineProperty( record.event, 'timeout', { value: timeout, configurable: true } );\n\t\t} );\n\t\twebqit.realdom.domInterceptionHooks.get( 'intercept' )?.forEach( callback => callback( record ) );\n\t\tconst returnValue = defaultAction();\n\t\twebqit.realdom.domInterceptionHooks.get( 'sync' )?.forEach( callback => callback( record ) );\n\t\treturn returnValue;\n\t};\n\n\t// Intercept DOM mutation methods\n\tconst _apiNames = {\n\t\t// Note the order\n\t\tShadowRoot: [ 'innerHTML', 'setHTMLUnsafe' ],\n\t\tDocumentFragment: [ 'replaceChildren', 'append', 'prepend' ],\n\t\tDocument: [ 'replaceChildren', 'append', 'prepend' ],\n\t\tHTMLElement: [ 'outerText', 'innerText' ],\n\t\tElement: [ 'append', 'prepend', 'before', 'after', 'insertAdjacentElement', 'insertAdjacentHTML', 'remove', 'replaceChildren', 'replaceWith', 'setHTMLUnsafe', 'innerHTML', 'outerHTML' ],\n\t\tCharacterData: [ 'before', 'after', 'remove', 'replaceWith' ],\n\t\tNode: [ 'insertBefore', 'replaceChild', 'removeChild', 'appendChild', 'textContent', 'nodeValue' ],\n\t};\n\tconst _apiOriginals = {\n\t\t// Note the order\n\t\tShadowRoot: Object.create( null ), // extends DocumentFragment\n\t\tDocumentFragment: Object.create( null ), // extends Node\n\t\tDocument: Object.create( null ), // extends Node\n\t\tHTMLElement: Object.create( null ), // extends Element,\n\t\tElement: Object.create( null ), // extends Node\n\t\tCharacterData: Object.create( null ), // extends Node\n\t\tNode: Object.create( null ),\n\t};\n\n\tconst _apiNamesUnique = new Set( Object.values( _apiNames ).reduce( ( all, apis ) => all.concat( apis ), [] ) );\n\t_apiNamesUnique.forEach( apiName => {\n\t\t\n\t\tObject.keys( _apiNames ).forEach( DOMClassName => {\n\t\t\tif ( !_apiNames[ DOMClassName ].includes( apiName ) ) return;\n\t\t\tconst _apiOriginal = Object.getOwnPropertyDescriptor( window[ DOMClassName ].prototype, apiName );\n\t\t\tif ( !_apiOriginal ) return; // Typically: Element:setHTMLUnsafe\n\t\t\tObject.defineProperty( window[ DOMClassName ].prototype, apiName, 'value' in _apiOriginal ? { ..._apiOriginal, value: method } : { ..._apiOriginal, set: setter } );\n\t\t\t_apiOriginals[ DOMClassName ][ apiName ] = _apiOriginal;\n\t\t} );\n\n\t\tfunction method( ...args ) {\n\t\t\tconst DOMClassName = Object.keys( _apiOriginals ).find( name => this instanceof window[ name ] && ( apiName in _apiOriginals[ name ] ) );\n\t\t\tconst $apiOriginals = _apiOriginals[ DOMClassName ];\n\t\t\t// Instance of Node interface? Abort!\n\t\t\tlet exec = () => $apiOriginals[ apiName ].value.call( this, ...args );\n\t\t\tif ( webqit.realdom.domInterceptionNoRecurse.get( this ) === apiName ) return exec();\n\t\t\t// --------------\n\t\t\t// Obtain exits and entrants\n\t\t\tlet exits = [], entrants = [], target = this;\n\t\t\tif ( [ 'insertBefore' ].includes( apiName ) ) {\n\t\t\t\tentrants = [ args[ 0 ] ];\n\t\t\t} else if ( [ 'insertAdjacentElement', 'insertAdjacentHTML' ].includes( apiName ) ) {\n\t\t\t\tentrants = [ args[ 1 ] ];\n\t\t\t\tif ( [ 'beforebegin', 'afterend' ].includes( args[ 0 ] ) ) {\n\t\t\t\t\ttarget = this.parentNode;\n\t\t\t\t}\n\t\t\t} else if ( [ 'setHTMLUnsafe', 'replaceChildren' ].includes( apiName ) ) {\n\t\t\t\texits = [ ...this.childNodes ];\n\t\t\t\tentrants = apiName === 'replaceChildren' ? [ ...args ] : [ args[ 0 ] ];\n\t\t\t} else if ( [ 'replaceWith', 'remove' ].includes( apiName ) ) {\n\t\t\t\texits = [ this ];\n\t\t\t\tentrants = apiName === 'replaceWith' ? [ ...args ] : [];\n\t\t\t\ttarget = this.parentNode;\n\t\t\t} else if ( [ 'replaceChild' ].includes( apiName ) ) {\n\t\t\t\texits = [ args[ 1 ] ];\n\t\t\t\tentrants = [ args[ 0 ] ];\n\t\t\t} else if ( [ 'removeChild' ].includes( apiName ) ) {\n\t\t\t\texits = [ ...args ];\n\t\t\t} else {\n\t\t\t\t// 'before', 'after', 'append', 'prepend', 'appendChild'\n\t\t\t\tentrants = [ ...args ];\n\t\t\t\tif ( [ 'before', 'after' ].includes( apiName ) ) {\n\t\t\t\t\ttarget = this.parentNode;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// --------------\n\t\t\t// Parse HTML to entrants\n\t\t\tlet apiNameFinal = apiName;\n\t\t\tif ( [ 'insertAdjacentHTML', 'setHTMLUnsafe' ].includes( apiName ) ) {\n\t\t\t\tlet tempNodeName = this.nodeName;\n\t\t\t\tif ( apiName === 'insertAdjacentHTML' && [ 'beforebegin', 'afterend' ].includes( args[ 0 ] ) ) {\n\t\t\t\t\t// We can't handle this... and this is going to throw afterall\n\t\t\t\t\tif ( !this.parentNode ) return $apiOriginals[ apiName ].value.call( this, ...args );\n\t\t\t\t\ttempNodeName = this.parentNode.nodeName;\n\t\t\t\t}\n\t\t\t\tconst temp = document.createElement( tempNodeName.includes( '-' )/* custom-element | #document-fragment */ ? 'div' : tempNodeName );\n\t\t\t\t$apiOriginals.setHTMLUnsafe.value.call( temp, entrants[ 0 ], apiName === 'setHTMLUnsafe' ? args[ 1 ] : {} );\n\t\t\t\tentrants = [ ...temp.childNodes ];\n\t\t\t\t// -------------- \n\t\t\t\tif ( apiName === 'insertAdjacentHTML' ) {\n\t\t\t\t\tapiNameFinal = 'insertAdjacentElement';\n\t\t\t\t\targs[ 1 ] = new DocumentFragment;\n\t\t\t\t\tnoRecurse( args[ 1 ], 'append', () => args[ 1 ].append( ...temp.childNodes ) );\n\t\t\t\t} else {\n\t\t\t\t\tapiNameFinal = 'replaceChildren';\n\t\t\t\t\targs = [ ...temp.childNodes ];\n\t\t\t\t}\n\t\t\t}\n\t\t\t// --------------\n\t\t\tif ( !target ) return exec();\n\t\t\tconst record = { target, entrants, exits, type: 'interception', event: [ this, apiName ] };\n\t\t\treturn intercept( record, () => {\n\t\t\t\treturn $apiOriginals[ apiNameFinal ].value.call( this, ...args );\n\t\t\t} );\n\t\t}\n\n\t\tfunction setter( value ) {\n\t\t\tconst DOMClassName = Object.keys( _apiOriginals ).find( name => this instanceof window[ name ] && ( apiName in _apiOriginals[ name ] ) );\n\t\t\tconst $apiOriginals = _apiOriginals[ DOMClassName ];\n\t\t\t// Instance of Node interface? Abort!\n\t\t\tlet exec = () => $apiOriginals[ apiName ].set.call( this, value );\n\t\t\tif ( this instanceof HTMLScriptElement || webqit.realdom.domInterceptionNoRecurse.get( this ) === apiName ) return exec();\n\t\t\t// --------------\n\t\t\t// Obtain exits and entrants\n\t\t\tlet exits = [], entrants = [], target = this;\n\t\t\tif ( [ 'outerHTML', 'outerText' ].includes( apiName ) ) {\n\t\t\t\texits = [ this ];\n\t\t\t\ttarget = this.parentNode;\n\t\t\t} else {\n\t\t\t\t// 'innerHTML', 'innerText', 'textContent', 'nodeValue'\n\t\t\t\tif ( this instanceof HTMLTemplateElement ) {\n\t\t\t\t\ttarget = this.content;\n\t\t\t\t\texits = [ ...this.content.childNodes ];\n\t\t\t\t} else {\n\t\t\t\t\texits = [ ...this.childNodes ];\n\t\t\t\t}\n\t\t\t}\n\t\t\t// --------------\n\t\t\t// Parse HTML to nodes\n\t\t\tif ( [ 'outerHTML', 'innerHTML' ].includes( apiName ) ) {\n\t\t\t\tlet tempNodeName = this.nodeName;\n\t\t\t\tif ( apiName === 'outerHTML' ) {\n\t\t\t\t\t// We can't handle this... and this is going to throw afterall\n\t\t\t\t\tif ( !this.parentNode ) return exec();\n\t\t\t\t\ttempNodeName = this.parentNode.nodeName;\n\t\t\t\t}\n\t\t\t\tconst temp = document.createElement( tempNodeName.includes( '-' )/* custom-element | #document-fragment */ ? 'div' : tempNodeName );\n\t\t\t\tnoRecurse( temp, apiName, () => temp[ apiName ] = value );\n\t\t\t\tentrants = this instanceof HTMLTemplateElement ? [ ...temp.content.childNodes ] : [ ...temp.childNodes ];\n\t\t\t\tif ( ( this instanceof HTMLTemplateElement && this.hasAttribute( 'src' ) ) || this instanceof ShadowRoot ) {\n\t\t\t\t\tconst getScripts = nodes => nodes.reduce( ( scripts, el ) => {\n\t\t\t\t\t\tif ( el instanceof HTMLScriptElement ) return scripts.concat( el );\n\t\t\t\t\t\tif ( el instanceof HTMLTemplateElement ) return scripts.concat( getScripts( [ el.content ] ) );\n\t\t\t\t\t\tscripts = scripts.concat( getScripts( [ ...( el.querySelectorAll?.( 'template' ) || [] ) ].map( t => t.content ) ) );\n\t\t\t\t\t\treturn scripts.concat( ...( el.querySelectorAll?.( 'script' ) || [] ) );\n\t\t\t\t\t}, [] );\n\t\t\t\t\tfor ( const script of getScripts( entrants ) ) {\n\t\t\t\t\t\tif (this instanceof ShadowRoot) {\n\t\t\t\t\t\t\tscript.setAttribute('data-handling', 'manual');\n\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst $script = document.createElement( 'script' );\n\t\t\t\t\t\t[ ...script.attributes ].forEach( attr => $script.setAttribute( attr.name, attr.value ) );\n\t\t\t\t\t\t$script.textContent = script.textContent;\n\t\t\t\t\t\tnoRecurse( script, 'replaceWith', () => script.replaceWith( $script ) );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// -------------- \n\t\t\t\tif ( apiName === 'outerHTML' ) {\n\t\t\t\t\tvalue = new DocumentFragment;\n\t\t\t\t\tnoRecurse( value, 'append', () => value.append( ...entrants ) );\n\t\t\t\t\texec = () => noRecurse( this, 'replaceWith', () => Element.prototype.replaceWith.call( this, value ) );\n\t\t\t\t} else {\n\t\t\t\t\tif ( this instanceof HTMLTemplateElement ) {\n\t\t\t\t\t\texec = () => noRecurse( this.content, 'replaceChildren', () => this.content.replaceChildren( ...entrants ) );\n\t\t\t\t\t} else {\n\t\t\t\t\t\texec = () => noRecurse( this, 'replaceChildren', () => Element.prototype.replaceChildren.call( this, ...entrants ) );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t// --------------\n\t\t\tconst record = { target, entrants, exits, type: 'interception', event: [ this, apiName ] };\n\t\t\treturn intercept( record, exec );\n\t\t}\n\t} );\n\n\treturn rm;\n}\n", "\r\n/**\r\n * Applies all supported polyfills\r\n */\r\nexport default function() {\r\n CSS_escape.call( this );\r\n Node_isConnected.call( this );\r\n Element_matches.call( this );\r\n}\r\n\r\n/**\r\n * Polyfills the window.CSS object.\r\n * \r\n * @return void\r\n */\r\nexport function CSS_escape() {\r\n const window = this;\r\n if ( !window.CSS ) { window.CSS = {} }\r\n if ( !window.CSS.escape ) {\r\n /**\r\n * Polyfills the window.CSS.escape() function.\r\n * \r\n * @param string str \r\n * \r\n * @return string\r\n */\r\n window.CSS.escape = str => str.replace( /([\\:@\\~\\$\\&])/g, '\\\\$1' );\r\n }\r\n}\r\n\r\n/**\r\n * Polyfills the Node.prototype.isConnected property\r\n * \r\n * @see MDN\r\n * \r\n * @return bool\r\n*/\r\nexport function Node_isConnected() {\r\n const window = this;\r\n if ( !( 'isConnected' in window.Node.prototype ) ) {\r\n Object.defineProperty( window.Node.prototype, 'isConnected', { get: function() {\r\n return !this.ownerDocument || !(\r\n this.ownerDocument.compareDocumentPosition( this )\r\n & this.DOCUMENT_POSITION_DISCONNECTED);\r\n } } );\r\n }\r\n}\r\n\r\n/**\r\n * Polyfills the Element.prototype.matches() method\r\n * \r\n * @see MDN\r\n * \r\n * @return void\r\n*/\r\nexport function Element_matches() {\r\n const window = this;\r\n if ( !window.Element.prototype.matches ) {\r\n window.Element.prototype.matches = \r\n window.Element.prototype.matchesSelector || \r\n window.Element.prototype.mozMatchesSelector ||\r\n window.Element.prototype.msMatchesSelector || \r\n window.Element.prototype.oMatchesSelector || \r\n window.Element.prototype.webkitMatchesSelector ||\r\n function( s ) {\r\n var matches = ( this.document || this.ownerDocument ).querySelectorAll( s ),\r\n i = matches.length;\r\n while ( --i >= 0 && matches.item( i ) !== this ) {}\r\n return i > -1; \r\n }\r\n }\r\n}", "\r\n/**\r\n * @imports\r\n */\r\nimport { _isNumeric, _isString, _isFunction } from '@webqit/util/js/index.js';\r\nimport { _set } from '@webqit/util/obj/index.js';\r\nimport Scheduler from './Scheduler.js';\r\nimport DOMRealtime from './realtime/DOMRealtime.js';\r\nimport AttrRealtime from './realtime/AttrRealtime.js';\r\nimport polyfill from './polyfills.js';\r\n\r\nexport default function() {\r\n const window = this;\r\n if ( !window.webqit ) window.webqit = {};\r\n if ( window.webqit.realdom ) return window.webqit.realdom;\r\n window.webqit.realdom = {};\r\n polyfill.call( window );\r\n // ------\r\n window.webqit.realdom.meta = ( ...args ) => meta.call( window, ...args );\r\n window.webqit.realdom.ready = ( ...args ) => ready.call( window, ...args );\r\n // ------\r\n window.webqit.realdom.realtime = ( context, namespace = 'dom' ) => {\r\n if ( namespace === 'dom' ) return new DOMRealtime( context, window );\r\n if ( namespace === 'attr' ) return new AttrRealtime( context, window );\r\n };\r\n // ------\r\n const scheduler = new Scheduler( window );\r\n window.webqit.realdom.schedule = ( type, ...args ) => {\r\n return scheduler[ `on${ type }` ]( ...args );\r\n };\r\n window.webqit.realdom.synthesizeWhile = ( ...args ) => {\r\n return scheduler.synthesizeWhile( ...args );\r\n };\r\n // ------\r\n return window.webqit.realdom;\r\n}\r\n\r\n\r\n/**\r\n * DOM-ready listeners.\r\n * \r\n * @param Function\t \t\tcallback\r\n * \r\n * @return void\r\n */\r\nfunction ready( ...args ) {\r\n let timing = 'interactive', callback;\r\n if ( _isString( args[ 0 ] ) ) {\r\n timing = args[ 0 ];\r\n if ( _isFunction( args[ 1 ] ) ) { callback = args[ 1 ]; }\r\n } else if ( _isFunction( args[ 0 ] ) ) { callback = args[ 0 ]; }\r\n // --------------\r\n const timings = { interactive: [ 'interactive', 'complete' ], complete: [ 'complete' ], };\r\n if ( !timings[ timing ] ) throw new Error( `Invalid ready-state timing: ${ timing }.` );\r\n\tconst window = this;\r\n // --------------\r\n if ( !callback ) {\r\n if ( !window.webqit.realdom.readyStatePromises ) {\r\n window.webqit.realdom.readyStatePromises = {\r\n interactive: new Promise( res => ready.call( this, 'interactive', res ) ),\r\n complete: new Promise( res => ready.call( this, 'complete', res ) ),\r\n };\r\n }\r\n return window.webqit.realdom.readyStatePromises[ timing ];\r\n }\r\n // --------------\r\n\tif ( timings[ timing ].includes( window.document.readyState ) ) return callback( window );\r\n if ( !window.webqit.realdom.readyStateCallbacks ) {\r\n window.webqit.realdom.readyStateCallbacks = { interactive: [], complete: [] };\r\n window.document.addEventListener( 'readystatechange', () => {\r\n const state = window.document.readyState;\r\n for ( const callback of window.webqit.realdom.readyStateCallbacks[ state ].splice( 0 ) ) {\r\n callback( window );\r\n }\r\n }, false );\r\n }\r\n window.webqit.realdom.readyStateCallbacks[ timing ].push( callback );\r\n}\r\n\r\n/**\r\n * A webqit's meta tag props reader.\r\n * \r\n * @param String name\r\n * \r\n * @return Object\r\n */\r\nfunction meta( name ) {\r\n const window = this;\r\n let _content = {}, _el;\r\n if ( _el = window.document.querySelector( `meta[name=\"${ name }\"]` ) ) {\r\n _content = ( _el.content || '' ).split( ';' ).filter( v => v ).reduce( ( _metaVars, directive ) => {\r\n const directiveSplit = directive.split( '=' ).map( d => d.trim() );\r\n _set( _metaVars, directiveSplit[ 0 ].split( '.' ), directiveSplit[ 1 ] === 'true' ? true : (directiveSplit[ 1 ] === 'false' ? false : (\r\n _isNumeric( directiveSplit[ 1 ] ) ? parseInt( directiveSplit[ 1 ] ) : directiveSplit[ 1 ]\r\n ) )\r\n );\r\n return _metaVars;\r\n }, {} );\r\n }\r\n return { get name() { return name; }, get content() { return _el.content; }, json() {\r\n\t\treturn JSON.parse( JSON.stringify( _content ) );\r\n } };\r\n}", "\n/**\n * Converts a string to title case.\n *\n * @param string \tstr\n * @param bool \t\tstrict\n *\n * @return string\n */\nexport default function(str, strict) {\n\tif (typeof str !== 'string') {\n\t\treturn str;\n\t}\n\treturn str.replace(/\\w\\S*/g, function(txt) { return txt.charAt(0).toUpperCase() + ((typeof strict !== undefined && strict) ? txt.substr(1).toLowerCase() : txt.substr(1)); })\n};\n", "\n/**\n * @imports\n */\nimport realdomInit from '@webqit/realdom';\nimport { _wq as __wq } from '@webqit/util/js/index.js';\nimport { _merge } from '@webqit/util/obj/index.js';\nimport { _toTitle } from '@webqit/util/str/index.js';\n\nexport const _wq = ( target, ...args ) => __wq( target, 'oohtml', ...args );\n\nexport const env = {};\n\nexport function _init( name, $config, $defaults ) {\n const window = this, realdom = realdomInit.call( window );\n env.window = window;\n if ( !window.webqitConfig ) {\n window.webqitConfig = realdom.meta( 'webqit' ).json();\n }\n window.webqit || ( window.webqit = {} );\n window.webqit.oohtml || ( window.webqit.oohtml = {} );\n window.webqit.oohtml.configs || ( window.webqit.oohtml.configs = {} );\n // ---------------------\n const configKey = name.toUpperCase().replace( '-', '_' );\n if ( !window.webqit.oohtml.configs[ configKey ] ) {\n window.webqit.oohtml.configs[ configKey ] = {};\n const config = window.webqit.oohtml.configs[ configKey ];\n _merge( 2, config, $defaults, $config, realdom.meta( name ).json() );\n if ( window.webqitConfig.prefix ) {\n Object.keys( config ).forEach( main => {\n Object.keys( config[ main ] ).forEach( key => {\n if ( main === 'api' && typeof config[ main ][ key ] === 'string' ) {\n config[ main ][ key ] = `${ window.webqitConfig.prefix }${ _toTitle( config[ main ][ key ] ) }`\n } else if ( [ 'attr', 'elements' ].includes( main ) && config[ main ][ key ]?.startsWith( 'data-' ) === false ) {\n config[ main ][ key ] = `${ window.webqitConfig.prefix }-${ config[ main ][ key ] }`\n }\n } );\n } );\n }\n }\n // ---------------------\n return { config: window.webqit.oohtml.configs[ configKey ], realdom, window };\n}\n\nexport function getInternalAttrInteraction( node, attrName ) {\n\treturn __wq( node, 'realdom', 'internalAttrInteractions' ).get( attrName );\n}\nexport function internalAttrInteraction( node, attrName, callback ) {\n\tconst savedAttrLocking = __wq( node, 'realdom', 'internalAttrInteractions' ).get( attrName );\n\t__wq( node, 'realdom', 'internalAttrInteractions' ).set( attrName, true );\n\tconst value = callback();\n\t__wq( node, 'realdom', 'internalAttrInteractions' ).set( attrName, savedAttrLocking );\n\treturn value;\n}\n\nexport function _compare( a, b, depth = 1, objectSizing = false ) {\n if ( depth && typeof a === 'object' && a && typeof b === 'object' && b && ( !objectSizing || Object.keys( a ).length === Object.keys( b ).length ) ) {\n for ( let key in a ) {\n if ( !_compare( a[ key ], b[ key ], depth - 1, objectSizing ) ) return false;\n }\n return true;\n }\n if ( Array.isArray( a ) && Array.isArray( b ) && a.length === b.length ) {\n return ( b = b.slice( 0 ).sort() ) && a.slice( 0 ).sort().every( ( valueA, i ) => valueA === b[ i ] );\n }\n return a === b;\n}\n\nexport function _splitOuter( str, delim ) {\n return [ ...str ].reduce( ( [ quote, depth, splits ], x ) => {\n if ( !quote && depth === 0 && ( Array.isArray( delim ) ? delim : [ delim ] ).includes( x ) ) {\n return [ quote, depth, [ '' ].concat( splits ) ];\n }\n if ( !quote && [ '(', '[', '{' ].includes( x ) && !splits[ 0 ].endsWith( '\\\\' ) ) depth++;\n if ( !quote && [ ')', ']', '}' ].includes( x ) && !splits[ 0 ].endsWith( '\\\\' ) ) depth--;\n if ( [ '\"', \"'\", '`' ].includes( x ) && !splits[ 0 ].endsWith( '\\\\' ) ) {\n quote = quote === x ? null : ( quote || x );\n }\n splits[ 0 ] += x;\n return [ quote, depth, splits ]\n }, [ null, 0, [ '' ] ] )[ 2 ].reverse();\n}\n\n// Unique ID generator\nexport const _uniqId = () => ( 0 | Math.random() * 9e6 ).toString( 36 );\n\n// Hash of anything generator\nconst hashTable = new Map;\nexport function _toHash( val ) {\n let hash;\n if ( !( hash = hashTable.get( val ) ) ) {\n hash = _uniqId();\n hashTable.set( val, hash );\n }\n return hash;\n}\n\n// Value of any hash\nexport function _fromHash( hash ) {\n let val;\n hashTable.forEach( ( _hash, _val ) => {\n if ( _hash === hash ) val = _val;\n } );\n return val;\n}", "\n/**\n * @imports\n */\nimport { env } from '../util.js';\n\nexport default function() {\n const { window } = env, { webqit } = window;\n if ( webqit.DOMContextRequestEvent ) return webqit.DOMContextRequestEvent;\n class DOMContextRequestEvent extends window.Event {\n /**\n * @constructor\n */\n constructor( ...args ) {\n const callback = args.pop();\n if ( typeof callback !== 'function' ) throw new Error( `Callback must be provided.` );\n const options = args.pop();\n if ( !options?.kind ) throw new Error( `\"options.kind\" must be specified.` );\n const eventNames = [ 'contextrequest', 'contextclaim' ];\n const type = args.pop() || eventNames[ 0 ];\n if ( !eventNames.includes( type ) ) throw new Error( `Invalid event type. Must be one of: ${ eventNames.join( ',' ) }` );\n // -------------\n const { kind, detail, targetContext, live, signal, diff, ...otherOpts } = options;\n super( type, { ...otherOpts, bubbles: otherOpts.bubbles !== false } );\n // -------------\n Object.defineProperty( this, 'callback', { get: () => callback } );\n Object.defineProperty( this, 'kind', { get: () => kind } );\n Object.defineProperty( this, 'targetContext', { get: () => targetContext } );\n Object.defineProperty( this, 'detail', { get: () => detail } );\n Object.defineProperty( this, 'live', { get: () => live } );\n Object.defineProperty( this, 'signal', { get: () => signal } );\n Object.defineProperty( this, 'diff', { get: () => diff } );\n Object.defineProperty( this, 'options', { get: () => otherOpts } );\n Object.defineProperty( this, 'meta', { value: {} } );\n }\n\n get target() { return super.target || this.meta.target; }\n get answered() { return this.meta.answered || false; }\n\n /**\n * @respondWith\n */\n respondWith( response ) {\n this.meta.answered = true;\n if ( this.diff ) {\n if ( '_prevValue' in this && this._prevValue === response ) return;\n Object.defineProperty( this, '_prevValue', { value: response, configurable: true } );\n }\n return this.callback( response );\n }\n }\n webqit.DOMContextRequestEvent = DOMContextRequestEvent;\n return DOMContextRequestEvent;\n}", "\n/**\n * @imports\n */\nimport { env } from '../util.js';\n\nexport default class DOMContextResponse extends AbortController {\n constructor( callback ) {\n super();\n callback( response => {\n const { window: { webqit: { Observer } } } = env;\n Observer.defineProperty( this, 'value', { value: response, configurable: true, enumerable: true } );\n }, this );\n }\n}", "\nexport default class DuplicateContextError extends Error {}", "\n/**\n * @imports\n */\nimport _DOMContextRequestEvent from './_DOMContextRequestEvent.js';\nimport DOMContextResponse from './DOMContextResponse.js';\nimport DOMContext from './DOMContext.js';\nimport DuplicateContextError from './DuplicateContextError.js';\nimport { _wq } from '../util.js';\n\nconst waitListMappings = new Map;\nexport default class DOMContexts {\n\n /**\n * @instance\n */\n static instance( host ) {\n return _wq( host ).get( 'contexts::instance' ) || new this( host );;\n }\n\n /**\n * @constructor\n */\n constructor( host ) {\n _wq( host ).get( `contexts::instance` )?.dispose();\n _wq( host ).set( `contexts::instance`, this );\n const priv = { host, contexts: new Set };\n Object.defineProperty( this, '#', { get: () => priv } );\n }\n\n /**\n * @Symbol.iterator\n */\n [ Symbol.iterator ] () { return this[ '#' ].contexts[ Symbol.iterator ](); }\n\n /**\n * @length\n */\n get length() { return this[ '#' ].contexts.size; }\n\n /**\n * @find()\n */\n find( ...args ) {\n return [ ...this[ '#' ].contexts ].find( ctx => {\n if ( typeof args[ 0 ] === 'function' ) return args[ 0 ]( ctx );\n return ctx.constructor.kind === args[ 0 ] && ( !args[ 1 ] || ctx.detail === args[ 1 ] );\n } );\n }\n\n /**\n * @attach()\n */\n attach( ctx ) {\n if ( !( ctx instanceof DOMContext) ) throw new TypeError( `Context is not a valid DOMContext instance.` );\n if ( this.find( ctx.constructor.kind, ctx.detail ) ) {\n throw new DuplicateContextError( `Context of same kind \"${ ctx.constructor.kind }\"${ ctx.detail ? ` and detail \"${ ctx.detail }\"` : '' } already exists.` );\n }\n this[ '#' ].contexts.add( ctx );\n ctx.initialize( this[ '#' ].host );\n }\n\n /**\n * @detach()\n */\n detach( ctx ) {\n ctx.dispose( this[ '#' ].host );\n this[ '#' ].contexts.delete( ctx );\n }\n\n /**\n * @request()\n */\n request( ...args ) {\n return new DOMContextResponse( ( emitter, responseInstance ) => {\n if ( typeof args[ args.length - 1 ] !== 'function' ) {\n if ( !args[ args.length - 1 ] ) { args[ args.length - 1 ] = emitter; }\n else { args.push( emitter ); }\n }\n\n let options;\n if ( ( options = args.find( arg => typeof arg === 'object' && arg ) ) && options.live ) {\n if ( options.signal ) options.signal.addEventListener( 'abort', () => responseInstance.abort() );\n args[ args.indexOf( options ) ] = { ...options, signal: responseInstance.signal };\n }\n const event = new ( _DOMContextRequestEvent() )( ...args );\n this[ '#' ].host.dispatchEvent( event );\n } );\n }\n\n}", "\n/**\n * @imports\n */\nimport DOMContexts from './DOMContexts.js';\nimport { env } from '../util.js';\n\nexport default class DOMContext {\n\n /**\n * To be implemented by subclasses\n */\n static kind;\n\n /**\n * @createRequest\n */\n static createRequest() { return { kind: this.kind }; }\n \n /**\n * @constructor\n */\n constructor( detail = null ) {\n Object.defineProperty( this, 'detail', { get: () => detail } );\n Object.defineProperty( this, 'subscriptions', { value: new Set } );\n }\n\n /**\n * @configs\n */\n get configs() {\n const { window: { webqit: { oohtml: { configs } } } } = env;\n return configs;\n }\n\n /**\n * @name\n */\n get name() { return [ env.window.Document, env.window.ShadowRoot ].some( x => this.host instanceof x ) ? Infinity : this.host.getAttribute( this.configs.CONTEXT_API.attr.contextname ); }\n\n /**\n * @subscribed()\n */\n subscribed( event ) {}\n\n /**\n * @handle()\n */\n handle( event ) {}\n\n /**\n * @unsubscribed()\n */\n unsubscribed( event ) {}\n\n /**\n * @matchEvent\n */\n matchEvent( event ) {\n return event.kind === this.constructor.kind\n && ( !event.targetContext || event.targetContext === this.name );\n }\n\n /**\n * @handleEvent()\n */\n handleEvent( event ) {\n if ( this.disposed || typeof event.respondWith !== 'function' ) return;\n if ( event.type === 'contextclaim' ) {\n if ( !( event.detail instanceof DOMContext ) || event.target === this.host ) return;\n const claims = new Set;\n this.subscriptions.forEach( subscriptionEvent => {\n if ( !event.target.contains( subscriptionEvent.target ) || !event.detail.matchEvent( subscriptionEvent ) ) return;\n this.subscriptions.delete( subscriptionEvent );\n this.unsubscribed( subscriptionEvent );\n claims.add( subscriptionEvent );\n } );\n if ( claims.size ) { return event.respondWith( claims ); }\n }\n if ( event.type === 'contextrequest' ) {\n if ( !this.matchEvent( event ) ) return;\n if ( event.live ) {\n this.subscriptions.add( event );\n this.subscribed( event );\n event.signal?.addEventListener( 'abort', () => {\n this.subscriptions.delete( event );\n this.unsubscribed( event );\n } );\n }\n event.stopPropagation();\n return this.handle( event );\n }\n }\n\n /**\n * @initialize()\n */\n initialize( host ) {\n this.host = host;\n this.disposed = false;\n host.addEventListener( 'contextrequest', this );\n host.addEventListener( 'contextclaim', this );\n const { value: claims } = DOMContexts.instance( host ).request( 'contextclaim', { kind: this.constructor.kind, detail: this } );\n claims?.forEach( subscriptionEvent => {\n this.subscriptions.add( subscriptionEvent );\n this.subscribed( subscriptionEvent );\n this.handle( subscriptionEvent );\n } );\n return this;\n }\n \n /**\n * @dispose()\n */\n dispose( host ) {\n this.disposed = true;\n host.removeEventListener( 'contextrequest', this );\n host.removeEventListener( 'contextclaim', this );\n this.subscriptions.forEach( subscriptionEvent => {\n this.subscriptions.delete( subscriptionEvent );\n this.unsubscribed( subscriptionEvent );\n const { target } = subscriptionEvent;\n subscriptionEvent.meta.answered = false;\n target.dispatchEvent( subscriptionEvent );\n } );\n return this;\n }\n\n}", "\n/**\n * @imports\n */\nimport DOMContext from '../context-api/DOMContext.js';\nimport { env } from '../util.js';\n\nexport default class DOMNamingContext extends DOMContext {\n\n static kind = 'namespace';\n\n /**\n * @createRequest\n */\n static createRequest( detail = null ) {\n const request = super.createRequest();\n if ( detail?.startsWith( '@' ) ) {\n const [ targetContext, ...detail ] = detail.slice( 1 ).split( '/' ).map( s => s.trim() );\n request.targetContext = targetContext;\n request.detail = detail.join( '/' );\n } else { request.detail = detail; }\n return request;\n }\n\n /**\n * @namespaceObj\n */\n get namespaceObj() { return this.host[ this.configs.NAMESPACED_HTML.api.namespace ]; }\n\n /**\n * @handle()\n */\n handle( event ) {\n const { window: { webqit: { Observer } } } = env;\n // Any existing event.meta.controller? Abort!\n event.meta.controller?.abort();\n\n // Parse and translate detail\n if ( !( event.detail || '' ).trim() ) return event.respondWith( Observer.unproxy( this.namespaceObj ) );\n let path = ( event.detail || '' ).split( '/' ).map( x => x.trim() ).filter( x => x );\n if ( !path.length ) return event.respondWith();\n path = path.join( `/${ this.configs.NAMESPACED_HTML.api.namespace }/` )?.split( '/' ) || [];\n\n event.meta.controller = Observer.reduce( this.namespaceObj, path, Observer.get, descriptor => {\n if ( this.disposed ) return; // If already scheduled but aborted as in provider unmounting\n event.respondWith( descriptor.value );\n }, { live: event.live, signal: event.signal, descripted: true } );\n }\n\n /**\n * @unsubscribed()\n */\n unsubscribed( event ) { event.meta.controller?.abort(); }\n}\n", "\n/**\n * @imports\n */\nimport DOMNamingContext from './DOMNamingContext.js';\nimport { _wq, _init, _splitOuter, _fromHash, _toHash, getInternalAttrInteraction, internalAttrInteraction } from '../util.js';\n\n/**\n * @init\n * \n * @param Object $config\n */\nexport default function init($config = {}) {\n\tconst { config, window } = _init.call(this, 'namespaced-html', $config, {\n\t\tattr: { namespace: 'namespace', lid: 'id', },\n\t\tapi: { namespace: 'namespace', },\n\t\ttokens: { lidrefPrefix: '~', lidrefSeparator: ':' },\n\t\ttarget: { className: ':target', eventName: ':target', scrolling: true },\n\t});\n\tconfig.lidSelector = `[${window.CSS.escape(config.attr.lid)}]`;\n\tconfig.namespaceSelector = `[${window.CSS.escape(config.attr.namespace)}]`;\n\twindow.webqit.DOMNamingContext = DOMNamingContext;\n\texposeAPIs.call(window, config);\n\trealtime.call(window, config);\n}\n\n/**\n * @init\n * \n * @param Object config\n * \n * @return String\n */\nfunction lidUtil(config) {\n\tconst { lidrefPrefix, lidrefSeparator, } = config.tokens;\n\treturn {\n\t\tescape(str, mode = 1) { return [...str].map(x => !/\\w/.test(x) ? (mode === 2 ? `\\\\\\\\${x}` : `\\\\${x}`) : x).join(''); },\n\t\tlidrefPrefix(escapeMode = 0) { return escapeMode ? this.escape(lidrefPrefix, escapeMode) : lidrefPrefix; },\n\t\tlidrefSeparator(escapeMode = 0) { return escapeMode ? this.escape(lidrefSeparator, escapeMode) : lidrefSeparator; },\n\t\tisUuid(str, escapeMode = 0) { return str.startsWith(this.lidrefPrefix(escapeMode)) && str.includes(this.lidrefSeparator(escapeMode)); },\n\t\t//isLidref( str, escapeMode = 0 ) { return str.startsWith( this.lidrefPrefix( escapeMode ) ) && !str.includes( this.lidrefSeparator( escapeMode ) ); },\n\t\ttoUuid(hash, lid, escapeMode = 0) { return hash.endsWith('-root') ? lid : `${this.lidrefPrefix(escapeMode)}${hash}${this.lidrefSeparator(escapeMode)}${lid}`; },\n\t\tuuidToId(str, escapeMode = 0) { return this.isUuid(str) ? str.split(this.lidrefSeparator(escapeMode))[1] : str; },\n\t\tuuidToLidref(str, escapeMode = 0) { return this.isUuid(str) ? `${this.lidrefPrefix(escapeMode)}${str.split(this.lidrefSeparator(escapeMode))[1]}` : str; },\n\t}\n}\n\n/**\n * @rewriteSelector\n * \n * @param String selectorText\n * @param String namespaceUUID\n * @param String scopeSelector\n * @param Bool escapeMode\n * \n * @return String\n */\nexport function rewriteSelector(selectorText, namespaceUUID, scopeSelector = null, escapeMode = 0) {\n\tconst window = this, { webqit: { oohtml: { configs: { NAMESPACED_HTML: config } } } } = window;\n\tconst $lidUtil = lidUtil(config);\n\t// Match :scope and relative ID selector\n\tconst regex = new RegExp(`${scopeSelector ? `:scope|` : ''}#(${$lidUtil.lidrefPrefix(escapeMode + 1)})?([\\\\w]+${$lidUtil.lidrefSeparator(escapeMode + 1)})?((?:[\\\\w-]|\\\\\\\\.)+)`, 'g');\n\t// Parse potentially combined selectors individually and categorise into categories per whether they have :scope or not\n\tconst [cat1, cat2] = _splitOuter(selectorText, ',').reduce(([cat1, cat2], selector) => {\n\t\t// The deal: match and replace\n\t\tlet quotesMatch, hadScopeSelector;\n\t\tselector = selector.replace(regex, (match, lidrefPrefixMatch, lidrefSeparatorMatch, id, index) => {\n\t\t\tif (!quotesMatch) { // Lazy: stuff\n\t\t\t\t// Match strings between quotes (single or double) and use that qualify matches above\n\t\t\t\t// The string: String.raw`She said, \"Hello, John. I\\\"m your friend.\" or \"you're he're\" 'f\\'\"j\\'\"f'jfjf`;\n\t\t\t\t// Should yield: `\"Hello, John. I\\\\\"m your friend.\"`, `\"you're he're\"`, `'f\\\\'\"j\\\\'\"f'`\n\t\t\t\tquotesMatch = [...selector.matchAll(/([\"'])(?:(?=(\\\\?))\\2.)*?\\1/g)];\n\t\t\t}\n\t\t\t// Qualify match\n\t\t\tif (quotesMatch.some(q => index > q.index && index + match.length < q.index + q[0].length)) return match;\n\t\t\t// Replace :scope\n\t\t\tif (match === ':scope') {\n\t\t\t\thadScopeSelector = true;\n\t\t\t\treturn scopeSelector;\n\t\t\t}\n\t\t\tconst isLidref = lidrefPrefixMatch && !lidrefSeparatorMatch;\n\t\t\tconst isUuid = lidrefPrefixMatch && lidrefSeparatorMatch;\n\t\t\tif (isUuid) {\n\t\t\t\treturn `#${$lidUtil.escape(match.replace('#', ''), 1)}`;\n\t\t\t}\n\t\t\t// Rewrite relative ID selector\n\t\t\tif (isLidref) {\n\t\t\t\tif (config.attr.lid === 'id' && namespaceUUID && !namespaceUUID.endsWith('-root')) {\n\t\t\t\t\treturn `#${$lidUtil.toUuid(namespaceUUID, id, 1)}`;\n\t\t\t\t}\n\t\t\t\t// Fallback to attr-based\n\t\t\t}\n\t\t\t// Rewrite absolute ID selector\n\t\t\tlet rewrite;\n\t\t\tif (config.attr.lid === 'id') {\n\t\t\t\trewrite = `:is(#${id},[id^=\"${$lidUtil.lidrefPrefix(escapeMode)}\"][id$=\"${$lidUtil.lidrefSeparator(escapeMode)}${id}\"])`;\n\t\t\t} else {\n\t\t\t\trewrite = `:is(#${id},[${window.CSS.escape(config.attr.lid)}=\"${id}\"])`;\n\t\t\t}\n\t\t\treturn isLidref ? `:is(${rewrite}):not(${scopeSelector ? scopeSelector + ' ' : ''}${config.namespaceSelector} *)` : rewrite;\n\t\t});\n\t\t// Category 2 has :scope and category 1 does not\n\t\treturn hadScopeSelector ? [cat1, cat2.concat(selector)] : [cat1.concat(selector), cat2];\n\t}, [[], []]);\n\t// Do the upgrade\n\tlet newSelectorText;\n\tif (scopeSelector && cat1.length) {\n\t\tnewSelectorText = [cat1.length > 1 ? `${scopeSelector} :is(${cat1.join(', ')})` : `${scopeSelector} ${cat1[0]}`, cat2.join(', ')].filter(x => x).join(', ');\n\t} else {\n\t\tnewSelectorText = [...cat1, ...cat2].join(', ');\n\t}\n\treturn newSelectorText;\n}\n\n/**\n * @param Element node\n *\n * @return Object\n */\nexport function getOwnNamespaceObject(node) {\n\tconst window = this;\n\tif (!_wq(node).has('namespace')) {\n\t\tconst namespaceObj = Object.create(null);\n\t\t_wq(node).set('namespace', namespaceObj);\n\t\tconst isDocumentRoot = [window.Document, window.ShadowRoot].some(x => node instanceof x);\n\t\tObject.defineProperty(namespaceObj, Symbol.toStringTag, {\n\t\t\tget() {\n\t\t\t\treturn isDocumentRoot ? 'RootNamespaceRegistry' : 'NamespaceRegistry';\n\t\t\t}\n\t\t});\n\t}\n\treturn _wq(node).get('namespace');\n}\n\n/**\n * @param Element node\n * @param Bool forID\n *\n * @return Object\n */\nexport function getOwnerNamespaceObject(node, forID = false) {\n\tconst window = this, { webqit: { oohtml: { configs: { NAMESPACED_HTML: config } } } } = window;\n\tconst isDocumentRoot = [window.Document, window.ShadowRoot].some(x => node instanceof x);\n\treturn getOwnNamespaceObject.call(window, isDocumentRoot ? node : ((forID ? node.parentNode : node)?.closest/*can be documentFragment when Shadow DOM*/?.(config.namespaceSelector) || node.getRootNode()));\n}\n\n/**\n * @param Object namespaceObj\n *\n * @return String\n */\nexport function getNamespaceUUID(namespaceObj) {\n\tconst isDocumentRoot = Object.prototype.toString.call(namespaceObj) === '[object RootNamespaceRegistry]';\n\treturn (_fromHash(namespaceObj) || _toHash(namespaceObj)) + (isDocumentRoot ? '-root' : '');\n}\n\n/**\n * Exposes Namespaced HTML with native APIs.\n *\n * @param Object config\n *\n * @return Void\n */\nfunction exposeAPIs(config) {\n\tconst window = this, { webqit: { Observer } } = window;\n\t// The Namespace API\n\t[window.Document.prototype, window.Element.prototype, window.ShadowRoot.prototype].forEach(prototype => {\n\t\t// No-conflict assertions\n\t\tconst type = prototype === window.Document.prototype ? 'Document' : (prototype === window.ShadowRoot.prototype ? 'ShadowRoot' : 'Element');\n\t\tif (config.api.namespace in prototype) { throw new Error(`The ${type} prototype already has a \"${config.api.namespace}\" API!`); }\n\t\t// Definitions\n\t\tObject.defineProperty(prototype, config.api.namespace, {\n\t\t\tget: function () {\n\t\t\t\treturn Observer.proxy(getOwnNamespaceObject.call(window, this));\n\t\t\t}\n\t\t});\n\t});\n}\n\n/**\n * Performs realtime capture of elements and builds their relationships.\n *\n * @param Object config\n *\n * @return Void\n */\nfunction realtime(config) {\n\tconst window = this, { webqit: { Observer, realdom, oohtml: { configs }, DOMNamingContext } } = window;\n\n\t// ------------\n\t// APIS\n\t// ------------\n\t// See https://wicg.github.io/aom/aria-reflection-explainer.html & https://github.com/whatwg/html/issues/3515 for the ARIA refelction properties idea\n\t// See https://www.w3.org/TR/wai-aria-1.1/#attrs_relationships for the relational ARIA attributes\n\tconst idRefsAttrs = ['aria-owns', 'aria-controls', 'aria-labelledby', 'aria-describedby', 'aria-flowto',];\n\tconst idRefAttrs = ['for', 'list', 'form', 'aria-activedescendant', 'aria-details', 'aria-errormessage', 'popovertarget'];\n\tconst attrList = [config.attr.lid, ...idRefsAttrs, ...idRefAttrs];\n\tconst relMap = { id: 'id'/* just in case it's in attrList */, for: 'htmlFor', 'aria-owns': 'ariaOwns', 'aria-controls': 'ariaControls', 'aria-labelledby': 'ariaLabelledBy', 'aria-describedby': 'ariaDescribedBy', 'aria-flowto': 'ariaFlowto', 'aria-activedescendant': 'ariaActiveDescendant', 'aria-details': 'ariaDetails', 'aria-errormessage': 'ariaErrorMessage', 'popovertarget': 'popoverTargetElement' };\n\tconst $lidUtil = lidUtil(config);\n\tconst uuidsToLidrefs = (node, attrName, getter) => {\n\t\tif (!getInternalAttrInteraction(node, attrName) && _wq(node, 'attrOriginals').has(attrName)) {\n\t\t\treturn _wq(node, 'attrOriginals').get(attrName);\n\t\t}\n\t\tconst value = getter();\n\t\tif (getInternalAttrInteraction(node, attrName)) return value;\n\t\treturn value && value.split(' ').map(x => (x = x.trim()) && (attrName === config.attr.lid ? $lidUtil.uuidToId : $lidUtil.uuidToLidref).call($lidUtil, x)).join(' ');\n\t};\n\n\t// Intercept getElementById()\n\tconst getElementByIdDescr = Object.getOwnPropertyDescriptor(window.Document.prototype, 'getElementById');\n\tObject.defineProperty(window.Document.prototype, 'getElementById', {\n\t\t...getElementByIdDescr, value(id) {\n\t\t\treturn this.querySelector(`#${id}`); // To be rewritten at querySelector()\n\t\t}\n\t});\n\t// Intercept querySelector() and querySelectorAll()\n\tfor (const queryApi of ['querySelector', 'querySelectorAll']) {\n\t\tfor (const nodeApi of [window.Document, window.Element]) {\n\t\t\tconst querySelectorDescr = Object.getOwnPropertyDescriptor(nodeApi.prototype, queryApi);\n\t\t\tObject.defineProperty(nodeApi.prototype, queryApi, {\n\t\t\t\t...querySelectorDescr, value(selector) {\n\t\t\t\t\treturn querySelectorDescr.value.call(this, rewriteSelector.call(window, selector, getNamespaceUUID(getOwnNamespaceObject.call(window, this))));\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\t// Intercept getAttribute()\n\tconst getAttributeDescr = Object.getOwnPropertyDescriptor(window.Element.prototype, 'getAttribute');\n\tObject.defineProperty(window.Element.prototype, 'getAttribute', {\n\t\t...getAttributeDescr, value(attrName) {\n\t\t\tconst getter = () => getAttributeDescr.value.call(this, attrName);\n\t\t\treturn attrList.includes(attrName) && !_wq(this, 'lock').get(attrName) ? uuidsToLidrefs(this, attrName, getter) : getter();\n\t\t}\n\t});\n\t// Hide implementation details on the Attr node too.\n\tconst propertyDescr = Object.getOwnPropertyDescriptor(window.Attr.prototype, 'value');\n\tObject.defineProperty(window.Attr.prototype, 'value', {\n\t\t...propertyDescr, get() {\n\t\t\tconst getter = () => propertyDescr.get.call(this);\n\t\t\treturn attrList.includes(this.name) ? uuidsToLidrefs(this.ownerElement, this.name, getter) : getter();\n\t\t}\n\t});\n\tconst propertyDescr2 = Object.getOwnPropertyDescriptor(window.Node.prototype, 'nodeValue');\n\tObject.defineProperty(window.Node.prototype, 'nodeValue', {\n\t\t...propertyDescr2, get() {\n\t\t\tconst getter = () => propertyDescr2.get.call(this);\n\t\t\treturn this instanceof window.Attr && attrList.includes(this.name) ? uuidsToLidrefs(this.ownerElement, this.name, getter) : getter();\n\t\t}\n\t});\n\t// These APIs should return LIDREFS minus the hash part\n\tfor (const attrName of attrList) {\n\t\tif (!(attrName in relMap)) continue;\n\t\tconst domApis = attrName === 'for' ? [window.HTMLLabelElement, window.HTMLOutputElement]\n\t\t\t: (attrName === 'popovertarget' ? [window.HTMLButtonElement, window.HTMLInputElement] : [window.Element]);\n\t\tfor (const domApi of domApis) {\n\t\t\tconst propertyDescr = Object.getOwnPropertyDescriptor(domApi.prototype, relMap[attrName]);\n\t\t\tif (!propertyDescr) continue;\n\t\t\tObject.defineProperty(domApi.prototype, relMap[attrName], {\n\t\t\t\t...propertyDescr, get() {\n\t\t\t\t\tconst getter = () => propertyDescr.get.call(this, attrName);\n\t\t\t\t\treturn uuidsToLidrefs(this, attrName, getter);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\tif (config.attr.lid !== 'id') {\n\t\t// Reflect the custom [config.attr.lid] attribute\n\t\tObject.defineProperty(window.Element.prototype, config.attr.lid, {\n\t\t\tconfigurable: true, enumerable: true, get() {\n\t\t\t\treturn this.getAttribute(config.attr.lid);\n\t\t\t}, set(value) {\n\t\t\t\treturn this.setAttribute(config.attr.lid, value);\n\t\t\t}\n\t\t});\n\t}\n\n\t// ------------\n\t// LOCAL IDS & IDREFS\n\t// ------------\n\tconst attrChange = (entry, attrName, value, callback) => {\n\t\treturn internalAttrInteraction(entry, attrName, () => {\n\t\t\tif (typeof value === 'function') value = value();\n\t\t\treturn callback(value);\n\t\t});\n\t};\n\tconst setupBinding = (entry, attrName, value, newNamespaceObj = null) => {\n\t\tattrChange(entry, attrName, value, value => {\n\t\t\tconst isLidAttr = attrName === config.attr.lid;\n\t\t\tconst namespaceObj = newNamespaceObj || getOwnerNamespaceObject.call(window, entry, isLidAttr);\n\t\t\tconst namespaceUUID = getNamespaceUUID(namespaceObj);\n\t\t\tif (isLidAttr) {\n\t\t\t\tconst id = $lidUtil.uuidToId(value);\n\t\t\t\tif (Observer.get(namespaceObj, id) !== entry) {\n\t\t\t\t\tconst uuid = $lidUtil.toUuid(namespaceUUID, id);\n\t\t\t\t\tif (uuid !== value) { entry.setAttribute('id', uuid); }\n\t\t\t\t\tObserver.set(namespaceObj, id, entry);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t_wq(entry, 'attrOriginals').set(attrName, value); // Save original before rewrite\n\t\t\t\tconst newAttrValue = value.split(' ').map(idref => (idref = idref.trim()) && $lidUtil.isUuid(idref) ? idref : $lidUtil.toUuid(namespaceUUID, idref)).join(' ');\n\t\t\t\tentry.setAttribute(attrName, newAttrValue);\n\t\t\t\t_wq(namespaceObj).set('idrefs', _wq(namespaceObj).get('idrefs') || new Set);\n\t\t\t\t_wq(namespaceObj).get('idrefs').add(entry);\n\t\t\t}\n\t\t});\n\t};\n\tconst cleanupBinding = (entry, attrName, oldValue, prevNamespaceObj = null) => {\n\t\tattrChange(entry, attrName, oldValue, oldValue => {\n\t\t\tconst isLidAttr = attrName === config.attr.lid;\n\t\t\tconst namespaceObj = prevNamespaceObj || getOwnerNamespaceObject.call(window, entry, isLidAttr);\n\t\t\tif (isLidAttr) {\n\t\t\t\tconst id = $lidUtil.uuidToId(oldValue);\n\t\t\t\tif (Observer.get(namespaceObj, id) === entry) {\n\t\t\t\t\tObserver.deleteProperty(namespaceObj, id);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconst newAttrValue = _wq(entry, 'attrOriginals').get(attrName);// oldValue.split( ' ' ).map( lid => ( lid = lid.trim() ) && $lidUtil.uuidToLidref( lid ) ).join( ' ' );\n\t\t\t\tif (entry.hasAttribute(attrName)) entry.setAttribute(attrName, newAttrValue);\n\t\t\t\t_wq(namespaceObj).get('idrefs')?.delete(entry);\n\t\t\t}\n\t\t});\n\t};\n\n\t// ------------\n\t// NAMESPACE\n\t// ------------\n\trealdom.realtime(window.document).query(config.namespaceSelector, record => {\n\t\tconst reAssociate = (entry, attrName, oldNamespaceObj, newNamespaceObj) => {\n\t\t\tif (!entry.hasAttribute(attrName)) return;\n\t\t\tconst attrValue = () => entry.getAttribute(attrName);\n\t\t\tcleanupBinding(entry, attrName, attrValue/* Current resolved value as-is */, oldNamespaceObj);\n\t\t\tif (entry.isConnected) { setupBinding(entry, attrName, _wq(entry, 'attrOriginals').get(attrName)/* Saved original value */ || attrValue/* Lest it's ID */, newNamespaceObj); }\n\t\t};\n\t\trecord.exits.forEach(entry => {\n\t\t\tif (entry.isConnected) {\n\t\t\t\tconst namespaceObj = getOwnNamespaceObject.call(window, entry);\n\t\t\t\t// Detach ID and IDREF associations\n\t\t\t\tfor (const node of new Set([...Object.values(namespaceObj), ...(_wq(namespaceObj).get('idrefs') || [])])) {\n\t\t\t\t\tfor (const attrName of attrList) { reAssociate(node, attrName, namespaceObj); }\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Detach ID associations\n\t\t\tconst contextsApi = entry[configs.CONTEXT_API.api.contexts];\n\t\t\tconst ctx = contextsApi.find(DOMNamingContext.kind);\n\t\t\t// Detach namespace instance\n\t\t\tif (ctx) { contextsApi.detach(ctx); }\n\t\t});\n\t\trecord.entrants.forEach(entry => {\n\t\t\t// Claim ID and IDREF associations\n\t\t\tlet newSuperNamespaceObj;\n\t\t\tconst superNamespaceObj = getOwnerNamespaceObject.call(window, entry, true);\n\t\t\tfor (const node of new Set([...Object.values(superNamespaceObj), ...(_wq(superNamespaceObj).get('idrefs') || [])])) {\n\t\t\t\tif ((newSuperNamespaceObj = getOwnerNamespaceObject.call(window, node, true)) === superNamespaceObj) continue;\n\t\t\t\tfor (const attrName of attrList) { reAssociate(node, attrName, superNamespaceObj, newSuperNamespaceObj); }\n\t\t\t}\n\t\t\t// Attach namespace instance\n\t\t\tconst contextsApi = entry[configs.CONTEXT_API.api.contexts];\n\t\t\tif (!contextsApi.find(DOMNamingContext.kind)) { contextsApi.attach(new DOMNamingContext); }\n\t\t});\n\t}, { id: 'namespace-html:namespace', live: true, subtree: 'cross-roots', timing: 'sync', staticSensitivity: true, eventDetails: true });\n\n\t// DOM realtime\n\trealdom.realtime(window.document).query(`[${attrList.map(attrName => window.CSS.escape(attrName)).join('],[')}]`, record => {\n\t\t// We do some caching to prevent redundanct lookups\n\t\tconst namespaceNodesToTest = { forID: new Map, forOther: new Map, };\n\t\tfor (const attrName of attrList) {\n\t\t\t// Point to the right cache\n\t\t\tconst _namespaceNodesToTest = attrName === config.attr.lid ? namespaceNodesToTest.forID : namespaceNodesToTest.forOther;\n\t\t\trecord.exits.forEach(entry => {\n\t\t\t\tif (!entry.hasAttribute(attrName)) return;\n\t\t\t\t// Point to the right namespace node\n\t\t\t\tlet namespaceNodeToTest = _namespaceNodesToTest.get(entry);\n\t\t\t\tif (typeof namespaceNodeToTest === 'undefined') {\n\t\t\t\t\tnamespaceNodeToTest = (attrName === config.attr.lid ? entry.parentNode : entry)?.closest/*can be documentFragment when Shadow DOM*/?.(config.namespaceSelector) || entry.getRootNode().host;\n\t\t\t\t\t_namespaceNodesToTest.set(entry, namespaceNodeToTest);\n\t\t\t\t}\n\t\t\t\tif (namespaceNodeToTest && !namespaceNodeToTest.isConnected) return;\n\t\t\t\tcleanupBinding(entry, attrName, () => entry.getAttribute(attrName)/* Current resolved value as-is */);\n\t\t\t});\n\t\t\trecord.entrants.forEach(entry => {\n\t\t\t\tif (!entry.hasAttribute(attrName)) return;\n\t\t\t\tsetupBinding(entry, attrName, () => entry.getAttribute(attrName)/* Raw value (as-is) that will be saved as original */);\n\t\t\t});\n\t\t}\n\t\tnamespaceNodesToTest.forID.clear();\n\t\tnamespaceNodesToTest.forOther.clear();\n\t}, { id: 'namespace-html:attrs', live: true, subtree: 'cross-roots', timing: 'sync' });\n\t// Attr realtime\n\trealdom.realtime(window.document, 'attr').observe(attrList, records => {\n\t\tfor (const record of records) {\n\t\t\tif (record.oldValue && record.value !== record.oldValue) {\n\t\t\t\tcleanupBinding(record.target, record.name, record.oldValue/* Current resolved value as-is */);\n\t\t\t}\n\t\t\tif (record.value && record.value !== record.oldValue) {\n\t\t\t\tsetupBinding(record.target, record.name, record.value/* Raw value (as-is) that will be saved as original */);\n\t\t\t}\n\t\t}\n\t}, { id: 'namespace-html:attr(attrs)', subtree: 'cross-roots', timing: 'sync', newValue: true, oldValue: true });\n\n\t// ------------\n\t// TARGETS\n\t// ------------\n\tlet prevTarget;\n\tconst activateTarget = () => {\n\t\tif (!window.location.hash?.startsWith(`#${$lidUtil.lidrefPrefix()}`)) return;\n\t\tconst path = window.location.hash?.substring(`#${$lidUtil.lidrefPrefix()}`.length).split('/').map(s => s.trim()).filter(s => s) || [];\n\t\tconst currTarget = path.reduce((prev, segment) => prev && prev[config.api.namespace][segment], window.document);\n\t\tif (prevTarget && config.target.className) { prevTarget.classList.toggle(config.target.className, false); }\n\t\tif (currTarget && currTarget !== window.document) {\n\t\t\tif (config.target.className) { currTarget.classList.toggle(config.target.className, true); }\n\t\t\tif (config.target.eventName) { currTarget.dispatchEvent(new window.CustomEvent(config.target.eventName)); }\n\t\t\tif (config.target.scrolling && path.length > 1) { currTarget.scrollIntoView(); }\n\t\t\tprevTarget = currTarget;\n\t\t}\n\t};\n\t// \"hash\" realtime\n\twindow.addEventListener('hashchange', activateTarget);\n\trealdom.ready(activateTarget);\n\t// ----------------\n}\n", "\n/**\n * @imports\n */\nimport init from './index.js';\n\n/**\n * @init\n */\ninit.call( window );\n"],
|
|
5
|
-
"mappings": "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",
|
|
5
|
+
"mappings": ";;;;;;;;AAQe,0BAAS,KAAK;AAC5B,SAAO,CAAC,MAAM,QAAQ,GAAG,KAAK,OAAO,QAAQ,YAAY;AAC1D;;;ACFe,yBAAS,KAAK;AAC5B,SAAO,MAAM,QAAQ,GAAG;AACzB;;;ACDe,gCAAS,KAAK;AAC5B,SAAO,OAAO,QAAQ;AACvB;;;ACHe,wBAAS,KAAK;AAC5B,SAAO,QAAQ,QAAQ,QAAQ;AAChC;;;ACFe,6BAAS,KAAK;AAC5B,SAAO,UAAU,UAAW,SAAQ,UAAa,OAAO,QAAQ;AACjE;;;ACIe,8BAAS,KAAK;AAC5B,SAAO,MAAM,QAAQ,GAAG,KAAM,OAAO,QAAQ,YAAY,OAAQ,uBAAgB,GAAG;AACrF;;;ACCe,yBAAS,KAAK;AAC5B,SAAO,eAAQ,GAAG,KAAK,oBAAa,GAAG,KAAK,QAAQ,SAAS,QAAQ,KAChE,qBAAc,GAAG,KAAK,CAAC,OAAO,KAAK,GAAG,EAAE;AAC9C;;;ACPe,4BAAS,KAAK;AAC5B,SAAO,uBAAgB,GAAG,KAAM,OAAO,CAAC,EAAE,SAAS,KAAK,GAAG,MAAM;AAClE;;;ACPe,0BAAS,KAAK;AAC5B,SAAO,eAAe,UAAW,OAAO,QAAQ;AACjD;;;ACGe,2BAAS,KAAK;AAC5B,SAAO,iBAAU,GAAG,KAAM,QAAQ,QAAQ,QAAQ,SAAS,QAAQ,QAAQ,QAAQ,MAAM,CAAC,MAAM,MAAM,CAAC;AACxG;;;ACPe,0BAAS,KAAK;AAC5B,SAAO,eAAe,UAAW,OAAO,QAAQ,YAAY,QAAQ;AACrE;;;ACKe,6BAAS,KAAK;AAC5B,SAAO,CAAC,iBAAU,GAAG,KAAK,CAAC,oBAAa,IAAI,MAAM;AACnD;;;ACRe,4BAAS,QAAQ,OAAO;AACtC,QAAM,QAAQ,SAAO;AACpB,QAAI,IAAI,QAAQ,GAAG,IAAI,GAAG;AACzB,UAAI,KAAK,GAAG;AAAA,IACb;AAAA,EACD,CAAC;AACD,SAAO;AACR;;;ACFe,mCAAS,KAAK,OAAO;AACnC,UAAQ,SAAS,OAAO;AACxB,UAAQ,SAAS,CAAC,gBAAS,KAAK,IAAI,CAAC,KAAK,IAAI;AAE9C,MAAI,kBAAkB,CAAC;AACvB,MAAI,MAAM;AACV,SAAO,OAAQ,EAAC,SAAS,MAAM,QAAQ,GAAG,IAAI,MAAM,IAAI,SAAS,WAAY;AAC5E,oBAAgB,KAAK,GAAG;AACxB,UAAM,MAAM,OAAO,eAAe,GAAG,IAAI;AAAA,EAC1C;AACA,SAAO;AACR;;;ACVe,qCAAS,KAAK,OAAO;AACnC,MAAI,UAAU,CAAC;AACf,4BAAmB,KAAK,KAAK,EAAE,QAAQ,UAAO;AAC7C,uBAAY,SAAS,GAAG,OAAO,oBAAoB,IAAG,CAAC;AAAA,EACxD,CAAC;AACD,SAAO;AACR;;;ACFe,uBAAuB,MAAM,UAAU,YAAY,OAAO,YAAY,OAAO,cAAc,OAAO;AAChH,MAAI,QAAQ;AACZ,MAAI,OAAO,KAAK,MAAM;AACtB,MAAI,kBAAW,IAAI,KAAK,SAAS,QAAQ,SAAS,OAAO;AACxD,YAAQ;AACR,WAAO,KAAK,MAAM;AAAA,EACnB;AACA,MAAI,CAAC,KAAK,QAAQ;AACjB,UAAM,IAAI,MAAM,8CAA8C;AAAA,EAC/D;AACA,OAAK,QAAQ,CAAC,MAAM,MAAM;AACzB,QAAI,CAAC,qBAAc,IAAI,KAAK,CAAC,mBAAY,IAAI,GAAG;AAC/C;AAAA,IACD;AACA,IAAC,aAAY,4BAAqB,IAAI,IAAI,OAAO,KAAK,IAAI,GAAG,QAAQ,SAAO;AAC3E,UAAI,CAAC,SAAS,KAAK,MAAM,MAAM,CAAC,GAAG;AAClC;AAAA,MACD;AACA,UAAI,YAAY,KAAK;AACrB,UAAI,YAAY,KAAK;AACrB,UAAM,iBAAS,SAAS,KAAK,gBAAS,SAAS,KAAO,iBAAU,SAAS,KAAK,iBAAU,SAAS,MAC7F,WAAU,QAAQ,QAAQ,IAAI;AAEjC,aAAK,OAAO,gBAAS,SAAS,KAAK,gBAAS,SAAS,IAAI,CAAC,IAAI,CAAC;AAC/D,sBAAc,CAAC,kBAAW,KAAK,IAAI,QAAQ,IAAI,OAAO,KAAK,MAAM,WAAW,SAAS,GAAG,UAAU,WAAW,WAAW,WAAW;AAAA,MACpI,OAAO;AACN,YAAI,gBAAS,IAAI,KAAK,gBAAS,IAAI,GAAG;AACrC,cAAI,WAAW;AACd,iBAAK,OAAO;AAAA,UACb,OAAO;AACN,iBAAK,KAAK,SAAS;AAAA,UACpB;AAAA,QACD,OAAO;AAEN,cAAI;AACH,gBAAI,aAAa;AAChB,qBAAO,eAAe,MAAM,KAAK,OAAO,yBAAyB,MAAM,GAAG,CAAC;AAAA,YAC5E,OAAO;AACN,mBAAK,OAAO,KAAK;AAAA,YAClB;AAAA,UACD,SAAQ,GAAN;AAAA,UAAU;AAAA,QACb;AAAA,MACD;AAAA,IACD,CAAC;AAAA,EACF,CAAC;AACD,SAAO;AACR;;;ACnDe,0BAAY,MAAM;AAChC,SAAO,cAAe,MAAM,CAAC,GAAG,MAAM,SAAS;AAC9C,WAAO;AAAA,EACR,GAAG,OAAoB,OAAoB,KAAoB;AAChE;;;AClBe,YAAY,QAAQ,YAAY;AAC3C,MAAI,CAAC,OAAO,CAAC,CAAC,UAAU,UAAU,EAAE,SAAS,OAAO,GAAG,GAAG;AACtD,UAAM,IAAI,MAAM,oCAAoC;AAAA,EACxD;AACA,MAAI,MAAK,IAAI,OAAO,IAAI,IAAI;AAC5B,MAAI,CAAC,KAAI;AACL,UAAK,IAAI;AACT,WAAO,eAAe,KAAK,OAAO,IAAI,IAAI,GAAG;AAAA,MACzC,OAAO;AAAA,MAEP,YAAY;AAAA,MACZ,cAAc;AAAA,MACd,UAAU;AAAA,IACd,CAAC;AAAA,EACL;AACA,MAAI,CAAC,WAAW,QAAQ;AACpB,WAAO;AAAA,EACX;AACA,MAAI,KAAK;AACT,SAAQ,MAAM,WAAW,MAAM,GAAI;AAC/B,QAAK,QAAM,QAAO,CAAE,OAAK,IAAG,IAAI,GAAG,IAAI;AACnC,YAAK,IAAI;AACT,WAAI,IAAI,KAAK,GAAE;AAAA,IACnB;AAAA,EACJ;AACA,SAAO;AACX;AAEA,IAAM,cAAN,cAA0B,IAAI;AAAC;;;ACXhB,sBAAS,KAAK,aAAa,MAAM;AAC/C,MAAI,gBAAS,GAAG,GAAG;AAClB,WAAO;AAAA,EACR;AAAC;AACD,MAAI,CAAC,cAAc,iBAAU,GAAG,GAAG;AAClC,WAAO,CAAC,GAAG;AAAA,EACZ;AAAC;AACD,MAAI,QAAQ,SAAS,QAAQ,KAAK,gBAAS,GAAG,GAAG;AAChD,WAAO,CAAC;AAAA,EACT;AAAC;AACD,MAAI,oBAAa,GAAG,GAAG;AACtB,WAAO,MAAM,UAAU,MAAM,KAAK,GAAG;AAAA,EACtC;AAAC;AACD,MAAI,iBAAU,GAAG,GAAG;AACnB,WAAO,OAAO,OAAO,GAAG;AAAA,EACzB;AAAC;AACD,SAAO,CAAC,GAAG;AACZ;;;ACVe,qBAAS,MAAM,MAAM,OAAO,CAAC,GAAG,WAAW,CAAC,GAAG;AAC7D,SAAO,aAAS,IAAI,EAAE,MAAM;AAC5B,MAAI,QAAQ;AACZ,SAAM,CAAC,oBAAa,KAAK,KAAK,CAAC,eAAQ,KAAK,KAAK,KAAK,QAAQ;AAC7D,QAAI,OAAO,KAAK,MAAM;AACtB,QAAI,CAAE,MAAK,MAAM,KAAK,IAAI,OAAO,IAAI,IAAK,qBAAc,KAAK,IAAI,QAAQ,QAAQ,MAAM,QAAS;AAC/F,eAAS,SAAS;AAClB;AAAA,IACD;AACA,YAAQ,KAAK,MAAM,KAAK,IAAI,OAAO,IAAI,IAAI,MAAM;AAAA,EAClD;AACA,WAAS,SAAS;AAClB,SAAO;AACR;;;ACfe,qBAAS,KAAK,MAAM,KAAK,YAAY,CAAC,GAAG,OAAO,CAAC,GAAG;AAClE,QAAM,OAAO,CAAC,SAAQ,KAAK,SAAQ;AAClC,QAAI,KAAK,KAAK;AACb,aAAO,KAAK,IAAI,SAAQ,KAAK,IAAG;AAAA,IACjC,OAAO;AACN,UAAI,kBAAW,KAAK,EAAE,KAAK,gBAAS,OAAM,GAAG;AAC5C,gBAAO,KAAK,IAAG;AAAA,MAChB,OAAO;AACN,gBAAO,OAAO;AAAA,MACf;AACA,aAAO;AAAA,IACR;AAAA,EACD;AACA,SAAO,aAAS,IAAI;AACpB,MAAI,SAAS;AACb,WAAQ,IAAI,GAAG,IAAI,KAAK,QAAQ,KAAM;AACrC,QAAI,IAAI,KAAK,SAAS,GAAG;AACxB,UAAI,CAAC,UAAW,CAAC,qBAAc,MAAM,KAAK,CAAC,mBAAY,MAAM,GAAI;AAChE,eAAO;AAAA,MACR;AACA,UAAI,SAAS,YAAK,QAAQ,KAAK,IAAI,IAAI;AACvC,UAAI,CAAC,qBAAc,MAAM,GAAG;AAC3B,YAAI,KAAK,cAAc,OAAO;AAC7B,iBAAO;AAAA,QACR;AACA,iBAAS,mBAAY,KAAK,SAAS,IAAI,KAAK,UAAU,CAAC,IAAK,kBAAW,KAAK,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;AAC5F,YAAI,gBAAgB,KAAK,QAAQ,KAAK,IAAI,MAAM;AAChD,YAAI,CAAC,eAAe;AACnB,iBAAO;AAAA,QACR;AAAA,MACD;AACA,eAAS;AAAA,IACV,OAAO;AACN,aAAO,KAAK,QAAQ,KAAK,IAAI,GAAG;AAAA,IACjC;AAAA,EACD;AACD;;;AClDA,IAAqB,YAArB,MAA+B;AAAA,EAO9B,YAAa,SAAQ,YAAY,OAAQ;AACxC,WAAO,eAAgB,MAAM,UAAU,EAAE,OAAO,QAAO,CAAE;AACzD,WAAO,eAAgB,MAAM,iBAAiB,EAAE,OAAO,oBAAI,MAAI,CAAE;AACjE,WAAO,eAAgB,MAAM,kBAAkB,EAAE,OAAO,oBAAI,MAAI,CAAE;AAClE,WAAO,eAAgB,MAAM,cAAc,EAAE,OAAO,GAAG,UAAU,KAAK,CAAE;AACxE,QAAK,CAAC,aAAa,KAAK,OAAO,uBAAwB;AACtD,WAAK,MAAM;AAAA,IACZ,OAAO;AAAE,WAAK;AAAA,IAAe;AAAA,EAC9B;AAAA,EAEA,IAAI,YAAY;AAAE,WAAO,KAAK;AAAA,EAAY;AAAA,EAE1C,MAAM,gBAAiB,UAAW;AACjC,SAAK;AACL,SAAK,SAAS;AACd,UAAM,cAAc,MAAM,SAAS;AACnC,SAAK;AACL,WAAO;AAAA,EACR;AAAA,EAEA,WAAW;AACV,eAAY,YAAY,KAAK,eAAgB;AAC5C,eAAS;AACT,WAAK,cAAc,OAAQ,QAAS;AAAA,IACrC;AACA,eAAY,YAAY,KAAK,gBAAiB;AAC7C,eAAS;AACT,WAAK,eAAe,OAAQ,QAAS;AAAA,IACtC;AAAA,EACD;AAAA,EAEA,QAAQ;AACP,SAAK,OAAO,sBAAuB,MAAM;AACxC,WAAK,SAAS;AACd,WAAK,MAAM;AAAA,IACZ,CAAE;AAAA,EACH;AAAA,EAUA,OAAQ,UAAU,cAAc,OAAQ;AACvC,QAAK,aAAc;AAClB,aAAO,IAAI,QAAS,aAAW;AAC9B,YAAK,KAAK,WAAY;AACrB,kBAAS,SAAS,CAAE;AAAA,QACrB,OAAO;AACN,eAAK,cAAc,IAAK,MAAM;AAC7B,oBAAS,SAAS,CAAE;AAAA,UACrB,CAAE;AAAA,QACH;AAAA,MACD,CAAE;AAAA,IACH;AACA,QAAK,KAAK,WAAY;AACrB,cAAQ,QAAQ,EAAE,KAAM,QAAS;AAAA,IAClC,OAAO;AACN,WAAK,cAAc,IAAK,QAAS;AAAA,IAClC;AAAA,EACD;AAAA,EAUA,QAAS,UAAU,cAAc,OAAQ;AACxC,QAAK,aAAc;AAClB,aAAO,IAAI,QAAS,aAAW;AAC9B,YAAK,KAAK,WAAY;AACrB,kBAAS,SAAS,CAAE;AAAA,QACrB,OAAO;AACN,eAAK,eAAe,IAAK,MAAM;AAC9B,oBAAS,SAAS,CAAE;AAAA,UACrB,CAAE;AAAA,QACH;AAAA,MACD,CAAE;AAAA,IACH;AACA,QAAK,KAAK,WAAY;AACrB,cAAQ,QAAQ,EAAE,KAAM,QAAS;AAAA,IAClC,OAAO;AACN,WAAK,eAAe,IAAK,QAAS;AAAA,IACnC;AAAA,EACD;AAAA,EAYA,MAAO,QAAQ,SAAS,iBAAkB;AACzC,SAAK,OAAQ,MAAM;AAElB,YAAM,aAAa,OAAQ,eAAgB;AAE3C,YAAM,YAAY,CAAE,gBAAgB;AACnC,YAAK,gBAAe;AAAY;AAChC,aAAK,QAAS,MAAM;AACnB,gBAAM,cAAc,QAAS,aAAY,eAAgB;AAEzD,gBAAM,oBAAoB,CAAE,iBAAiB;AAC5C,gBAAK,iBAAgB;AAAY;AACjC,iBAAK,MAAO,QAAQ,SAAS,YAAY;AAAA,UAC1C;AAIA,cAAK,uBAAuB,SAAU;AACrC,wBAAY,KAAM,iBAAkB;AAAA,UACrC,OAAO;AACN,8BAAmB,WAAY;AAAA,UAChC;AAAA,QACD,CAAE;AAAA,MACH;AAIA,UAAK,sBAAsB,SAAU;AACpC,mBAAW,KAAM,SAAU;AAAA,MAC5B,OAAO;AACN,kBAAW,UAAW;AAAA,MACvB;AAAA,IACD,CAAE;AAAA,EACH;AAED;;;ACtJO,iBAAkB,MAAO;AAAE,SAAS,QAAO,KAAK,KAAK,MAAO,KAAK,WAAY,GAAI,KAAK,KAAK,SAAU,GAAI;AAAE;AAE3G,oBAAqB,SAAQ,SAAS,MAAM,UAAU,MAAO;AAChE,SAAS,OAAM,QAAS,IAAK,IAAI,OAAO,CAAE,IAAK,GAAI,IAAK,OAAO,KAAI,IAAK,QAAS,KAAK,UAAU,SAAS,KAAM,CAAE,EAAE,KAAM,GAAI;AAC7H,MAAI,QAAQ,CAAC,GAAG;AAChB,MAAI;AAEA,UAAM,SAAS,QAAO,SAAS,SAAU,MAAM,SAAS,MAAM,QAAO,YAAY,QAAS;AAC1F,WAAQ,OAAO,OAAO,YAAY;AAAI,YAAM,KAAM,IAAK;AAAA,EAC3D,SAAS,GAAP;AAAA,EAAY;AACd,SAAO;AACX;AAEO,oBAAqB,SAAQ,MAAM,MAAO;AAC7C,SAAS,OAAM,QAAS,IAAK,IAAI,OAAO,CAAE,IAAK,GAAI,IAAK,OAAO,KAAI,IAAK,QAAS,KAAK,SAAU,CAAE,EAAE,KAAM,GAAI;AAC9G,MAAI;AAEA,WAAO,QAAO,SAAS,SAAU,GAAI,QAAS,MAAM,MAAM,QAAO,YAAY,YAAa,EAAE;AAAA,EAChG,SAAS,GAAP;AAAA,EAAY;AAClB;AAEO,sBAAuB,SAAQ,GAAG,GAAG,aAAa,OAAO,YAAY,MAAO;AAC/E,QAAM,WAAW,WAAW,IAAK,CAAE,GAAG,IAAK,CAAE;AAC7C,MAAK,OAAO,aAAa;AAAc,WAAO;AAC9C,QAAM,WAAW,SAAO;AACpB,QAAK,CAAC,WAAW,IAAK,CAAE;AAAI,iBAAW,IAAK,GAAG,oBAAI,SAAQ;AAC3D,eAAW,IAAK,CAAE,GAAG,IAAK,GAAG,GAAI;AACjC,WAAO;AAAA,EACX;AACA,QAAM,YAAY,EAAE,YAAY;AAChC,QAAM,YAAY,EAAE,YAAY;AAChC,MAAK,cAAc;AAAY,WAAO,SAAU,EAAE,SAAU,CAAE,CAAE;AAChE,MAAK,cAAc,qBAAqB,QAAO;AAAa,WAAO,SAAU,aAAc,SAAQ,GAAG,UAAU,MAAM,YAAY,SAAU,CAAE;AAC9I,SAAO,SAAU,KAAM;AAC3B;AAEO,oBAAqB,KAAK,QAAQ,KAAM;AAC3C,SAAO,CAAE,GAAG,GAAI,EAAE,OAAQ,CAAE,CAAE,OAAO,OAAO,QAAQ,OAAQ,MAAO;AAC/D,QAAK,CAAC,SAAS,UAAU,KAAO,OAAM,QAAS,KAAM,IAAI,QAAQ,CAAE,KAAM,GAAI,SAAU,CAAE,GAAI;AACzF,aAAO,CAAE,OAAO,OAAO,CAAE,EAAG,EAAE,OAAQ,MAAO,CAAE;AAAA,IACnD;AACA,QAAK,CAAC,SAAS,CAAE,KAAK,KAAK,GAAI,EAAE,SAAU,CAAE,KAAK,CAAC,OAAQ,GAAI,SAAU,IAAK;AAAI;AAClF,QAAK,CAAC,SAAS,CAAE,KAAK,KAAK,GAAI,EAAE,SAAU,CAAE,KAAK,CAAC,OAAQ,GAAI,SAAU,IAAK;AAAI;AAClF,QAAK,CAAE,KAAK,KAAK,GAAI,EAAE,SAAU,CAAE,KAAK,CAAC,OAAQ,GAAI,SAAU,IAAK,GAAI;AACpE,cAAQ,UAAU,IAAI,OAAS,SAAS;AAAA,IAC5C;AACA,WAAQ,MAAO;AACf,WAAO,CAAE,OAAO,OAAO,MAAO;AAAA,EAClC,GAAG,CAAE,MAAM,GAAG,CAAE,EAAG,CAAE,CAAE,EAAG,GAAI,QAAQ;AAC1C;;;AC7CA,IAAqB,UAArB,MAA6B;AAAA,EACzB,YAAa,SAAU;AACnB,SAAK,UAAU;AACf,SAAK,OAAO,OAAO,YAAY,WAAW,aAAa;AACvD,SAAK,OAAO,KAAK,SAAS,aAAa,OAAO,AAAK,QAAS,OAAQ,IAAI,UAAU;AAClF,QAAK,KAAK,SAAS,SAAU;AACzB,WAAK,cAAc,AAAK,WAAY,QAAQ,KAAK,EAAE,MAAO,GAAG,EAAG,GAAG,GAAI,EAAE,SAAS;AAAA,IACtF;AAAA,EACJ;AAAA,EACA,WAAW;AAAE,WAAO,KAAK;AAAA,EAAS;AACtC;;;ACHA,IAAqB,WAArB,MAA8B;AAAA,EAO7B,YAAa,SAAS,WAAW,SAAS;AACzC,SAAK,UAAU;AACf,SAAK,YAAY;AACjB,SAAK,SAAS,QAAQ,eAAe,QAAQ,eAAe,eAAe;AAC3E,SAAK,WAAW,KAAK,OAAO;AAC5B,SAAK,SAAS,KAAK,OAAO;AAC1B,WAAO,eAAgB,MAAM,KAAK,EAAE,OAAO,CAAC,EAAE,CAAE;AAAA,EACjD;AAAA,EASA,YAAa,MAAO;AACnB,QAAK,mBAAa,KAAM,EAAI,GAAI;AAAE,aAAO,CAAE,CAAC,GAAG,GAAG,IAAK;AAAA,IAAG,WAChD,iBAAW,KAAM,EAAI,KAAK,CAAG,MAAM,cAAe,YAAa,KAAK,WAAW,GAAI;AAC5F,aAAO,CAAE,CAAC,GAAG,QAAW,KAAM,EAAI;AAAA,IACnC,WAAY,iBAAW,KAAM,EAAI,KAAK,KAAK,WAAW,GAAI;AACzD,aAAO,CAAE,aAAU,KAAM,IAAK,KAAoB,GAAG,QAAW,KAAM,EAAI;AAAA,IAC3E,OAAO;AAAE,WAAM,KAAM,aAAU,KAAM,IAAK,KAAoB;AAAA,IAAG;AACjE,QAAK,KAAM,GAAI,OAAQ,OAAK,OAAO,MAAM,YAAY,CAAG,cAAa,YAAa,CAAG,cAAa,KAAK,OAAO,KAAO,EAAE,QAAS;AAC/H,YAAM,IAAI,MAAO,2EAA4E;AAAA,IAC9F;AACA,SAAM,KAAM,KAAM,GAAI,IAAK,OAAK,aAAa,UAAU,IAAI,IAAI,QAAS,CAAE,CAAE;AAC5E,WAAO;AAAA,EACR;AAAA,EASA,YAAa,MAAO;AACnB,WAAO,GAAK,KAAK,QAAQ,WAAW,KAAK,WAAW,GAAG,IAAK;AAAA,EAC7D;AAAA,EASA,wBAAwB;AACvB,WAAO;AAAA,MACN,WAAW;AAEV,aAAK,gBAAgB,MAAM;AAC3B,aAAK,iBAAiB,IAAI;AAC1B,cAAM,QAAQ,EAAE,QAAQ,KAAK,eAAe,OAAO;AACnD,eAAO;AAAA,MACR;AAAA,MACA,aAAa;AAAE,aAAK,gBAAgB,MAAM;AAAA,MAAG;AAAA,IAC9C;AAAA,EACD;AAAA,EAWA,uBAAwB,oBAAoB,UAAU,UAAW;AAChE,UAAM,EAAE,oBAAW,MAAM,YAAY,oBAAI,OAAK,YAAY,oBAAI;AAC9D,eAAY,CAAE,cAAc,aAAc,KAAK,SAAU,kBAAmB,GAAI;AAC/E,UAAI,WAAW,CAAC,EAAE,OAAQ,QAAS,EAAE,OAAQ,YAAU,AAAK,aAAc,SAAQ,aAAa,SAAS,OAAO,QAAQ,aAAa,OAAO,YAAY,eAAe,SAAU,CAAE;AAClL,UAAK,CAAC,SAAS;AAAS;AACxB,YAAM,OAAO,CAAE,cAAc,MAAM,QAAS,QAAS,IAAI,WAAW,SAAU,EAAI;AAClF,UAAK;AAAW,kBAAU,IAAK,IAAK;AAAA;AAAQ,iBAAS,KAAM,SAAQ,GAAG,IAAK;AAAA,IAC5E;AACA,eAAY,QAAQ;AAAY,eAAS,KAAM,SAAQ,GAAG,IAAK;AAC/D,cAAU,MAAM;AAAA,EACjB;AAAA,EAUA,gBAAiB,WAAW,SAAU;AACrC,UAAM,iBAAiB,EAAE,aAAa;AACrC,cAAQ,QAAS,OAChB,KAAK,mBAAa,EAAE,UAAW,KAAK,EAAE,WAAW,KAC9C,mBAAa,CAAE,KAAK,EAAE,KACtB,iBAAW,CAAE,KAAO,GAAE,eAAe,KACvC;AAAA,IACH,EAAE;AACF,QAAK;AAAS,aAAO,iBAAkB,SAAS,MAAM,eAAe,WAAW,CAAE;AAClF,WAAO;AAAA,EACR;AACD;;;AC7GA,IAAqB,eAArB,cAA0C,SAAS;AAAA,EAElD,OAAO;AAAA,EAKP,YAAa,YAAY,MAAO;AAC/B,UAAO,SAAS,QAAQ,GAAG,IAAK;AAAA,EACjC;AAAA,EAWA,IAAK,MAAM,WAAW,QAAW,SAAS,CAAC,GAAI;AAC9C,UAAM,yBAAyB,OAAO,SAAS,YAAY,gBAAgB;AAC3E,KAAE,OAAO,CAAC,GAAG,WAAW,QAAW,SAAS,CAAC,CAAE,IAAI,KAAK,YAAa,SAAU;AAC/E,UAAM,EAAE,YAAY;AAEpB,UAAM,UAAU,iBAAkB,SAAS,IAAK;AAChD,QAAK,CAAC;AAAW,aAAO;AACxB,UAAM,kBAAkB,OAAO,oBAAoB,KAAK,sBAAsB;AAC9E,QAAK,CAAC,wBAAyB;AAC9B,YAAM,QAAQ,iBAAiB,SAAS,KAAK,CAAC;AAC9C,eAAU,SAAS,OAAO,OAAQ;AAAA,IACnC,OAAO;AACN,iBAAY,UAAU,SAAU;AAC/B,cAAM,QAAQ,kBAAkB,gBAAgB,SAAS,IAAI,CAAC;AAC9D,iBAAU,QAAQ,OAAO,OAAQ;AAAA,MAClC;AAAA,IACD;AAEA,QAAK,OAAO,MAAO;AAClB,UAAK,iBAAkB;AAAE,iBAAS,EAAE,GAAG,QAAQ,gBAAgB;AAAA,MAAG;AAClE,YAAM,sBAAsB,KAAK,QAAS,yBAAyB,KAAM,KAAM,MAAM,UAAU,EAAE,UAAU,MAAM,GAAG,OAAO,CAAE;AAC7H,aAAO,KAAK,gBAAiB,OAAO,QAAQ,mBAAoB;AAAA,IACjE;AAAA,EACD;AAAA,EAWA,QAAS,MAAM,UAAU,SAAS,CAAC,GAAI;AACtC,UAAM,yBAAyB,OAAO,SAAS,YAAY,gBAAgB;AAC3E,KAAE,OAAO,CAAC,GAAG,UAAU,SAAS,CAAC,CAAE,IAAI,KAAK,YAAa,SAAU;AAEnE,QAAK,CAAE,QAAQ,WAAY,EAAE,SAAU,OAAO,MAAO;AAAI,aAAO,KAAK,YAAa,yBAAyB,KAAM,KAAM,MAAM,UAAU,MAAO;AAC9I,QAAK,OAAO,UAAU,OAAO,WAAW;AAAU,YAAM,IAAI,MAAO,kBAAmB,OAAO,kBAAoB;AAEjH,UAAM,EAAE,SAAS,iBAAQ,WAAW;AAEpC,QAAK,OAAO,gBAAgB,CAAC,OAAO,QAAQ,uBAAuB,cAAe;AACjF,uBAAiB,KAAM,SAAQ,aAAa,MAAM;AAAA,MAAC,CAAE;AAAA,IACtD;AAEA,UAAM,iBAAiB,IAAI,QAAO,iBAAkB,aAAW;AAC9D,gBAAU,wBAAyB,OAAQ,EAAE,IAAK,SAAO,qBAAqB,KAAM,SAAQ,GAAI,CAAE;AAClG,eAAS,KAAM,SAAQ,cAAc,SAAS,OAAQ;AAAA,IACvD,CAAE;AAEF,UAAM,UAAU,EAAE,YAAY,MAAM,mBAAmB,OAAO,UAAU,SAAS,OAAO,WAAW,KAAK;AACxG,QAAK,KAAK,QAAS;AAAE,cAAQ,kBAAkB,KAAK,IAAK,OAAK,IAAI,EAAG;AAAA,IAAG;AACxE,mBAAe,QAAS,SAAS,OAAQ;AAEzC,UAAM,kBAAkB,OAAO,mBAAmB,OAAO,oBAAoB,KAAK,sBAAsB;AACxG,UAAM,eAAe,EAAE,SAAS,MAAM,UAAU,QAAQ,SAAS,oBAAI,OAAK,wBAAwB,iBAAiB,eAAe;AAElI,WAAO,KAAK,gBAAiB,OAAO,QAAQ,gBAAgB,eAAgB;AAAA,EAC7E;AAAA,EAWA,YAAa,MAAM,UAAU,SAAS,CAAC,GAAI;AAC1C,UAAM,yBAAyB,OAAO,SAAS,YAAY,gBAAgB;AAC3E,KAAE,MAAM,UAAU,SAAS,CAAC,CAAE,IAAI,KAAK,YAAa,SAAU;AAC9D,UAAM,EAAE,SAAS,oBAAW;AAE5B,QAAK,OAAO,UAAU,CAAC,CAAE,QAAQ,WAAY,EAAE,SAAU,OAAO,MAAO;AAAI,YAAM,IAAI,MAAO,kBAAmB,OAAO,kBAAoB;AAC1I,UAAM,qBAAqB,OAAO,WAAW,cAAc,cAAc;AACzE,QAAK,CAAC,KAAK,SAAU,kBAAmB,EAAE,MAAO;AAEhD,uBAAiB,KAAM,SAAQ,oBAAoB,aAAW;AAC7D,aAAK,uBAAwB,oBAAoB,SAAS,QAAS;AAAA,MACpE,CAAE;AAAA,IACH;AAEA,UAAM,iBAAiB,EAAE,aAAa;AAAE,eAAS,OAAQ,YAAa;AAAA,IAAG,EAAE;AAC3E,UAAM,kBAAkB,OAAO,mBAAmB,OAAO,oBAAoB,KAAK,sBAAsB;AACxG,UAAM,eAAe,EAAE,SAAS,MAAM,UAAU,QAAQ,SAAS,oBAAI,OAAK,wBAAwB,iBAAiB,eAAe;AAClI,UAAM,WAAW,KAAK,SAAU,kBAAmB;AACnD,aAAS,IAAK,cAAc,CAAC,CAAC,aAAa,OAAO,QAAS;AAE3D,WAAO,KAAK,gBAAiB,OAAO,QAAQ,gBAAgB,eAAgB;AAAA,EAC7E;AACD;AASA,iCAAkC,SAAU;AAC3C,SAAO,QAAQ,OAAQ,CAAE,MAAM,KAAK,MAAO;AAC1C,QAAK,KAAM,IAAI,IAAK,kBAAkB,IAAI;AAAgB,aAAO;AACjE,QAAK,GAAK,IAAI,QAAQ,WAAW,0BAA2B,EAAE,IAAK,IAAI,aAAc;AAAI,aAAO;AAChG,WAAO,KAAK,OAAQ,GAAI;AAAA,EACzB,GAAG,CAAC,CAAE;AACP;AAUA,kBAAmB,cAAc,SAAU;AAC1C,QAAM,EAAE,SAAS,MAAM,UAAU,QAAQ,SAAS,wBAAwB,oBAAoB;AAC9F,MAAI,CAAC,OAAO,SAAS;AACpB,cAAU,QAAQ,OAAO,CAAC,MAAM;AAC/B,aAAO,EAAE,WAAW;AAAA,IACrB,CAAC;AAAA,EACF;AACA,MAAK,CAAC,QAAQ;AAAS;AACvB,QAAM,QAAQ,KAAK,IAAK,OAAK,IAAI,EAAG;AACpC,MAAK,OAAO,UAAU,CAAC,QAAQ,MAAO;AACrC,cAAU,iBAAkB,SAAS,MAAM,OAAQ;AAAA,EACpD,WAAY,OAAO,WAAW,WAAW,KAAK,QAAS;AACtD,cAAU,QAAQ,OAAQ,OAAK,MAAM,SAAU,EAAE,IAAK,CAAE;AAAA,EACzD;AACA,MAAK,CAAC,QAAQ;AAAS;AAEvB,MAAK,CAAG,QAAO,aAAa,QAAQ,OAAO,aAAa,QAAQ,OAAO,eAAiB;AACvF,cAAU,QAAQ,IAAK,SAAO;AAC7B,UAAI;AACJ,UAAK,CAAC,OAAO,cAAe;AAC3B,QAAE,GAAE,OAAO,WAAW,GAAG,IAAI,IAAI;AAAA,MAClC;AACA,UAAK,CAAC,OAAO,YAAc,cAAc,KAAQ;AAChD,QAAE,GAAE,UAAU,WAAW,GAAG,IAAI,IAAI;AAAA,MACrC;AACA,UAAK,CAAC,OAAO,YAAc,WAAW,KAAQ;AAC7C,QAAE,GAAE,OAAO,WAAW,GAAG,IAAI,IAAI;AAAA,MAClC,WAAY,OAAO,YAAY,OAAO,IAAI,UAAU,aAAc;AACjE,cAAM,EAAG,GAAG,KAAK,OAAO,wBAAyB,IAAI,QAAQ,IAAI,MAAM,MAAM,IAAI,OAAO,aAAc,IAAI,IAAK,CAAE,EAAE;AAAA,MACpH;AACA,aAAO;AAAA,IACR,CAAE;AAAA,EACH;AACA,MAAK,OAAO,QAAS;AACpB,YAAQ,QAAS,YAAU,QAAQ,IAAK,OAAO,MAAM,MAAO,CAAE;AAC9D,cAAU,MAAM,KAAM,QAAQ,QAAQ,CAAE,EAAE,IAAK,CAAE,CAAE,EAAE,WAAa,KAAM;AAAA,EACzE;AACA,QAAM,WAAW,yBAAyB,QAAS,KAAM;AACzD,QAAM,QAAQ,kBAAkB,gBAAgB,SAAS,IAAI,CAAC;AAC9D,WAAU,UAAU,OAAO,OAAQ;AACpC;AAIA,iCAAkC,MAAM,UAAU,UAAW;AAC5D,QAAM,mBAAmB,GAAK,MAAM,WAAW,0BAA2B,EAAE,IAAK,QAAS;AAC1F,KAAK,MAAM,WAAW,0BAA2B,EAAE,IAAK,UAAU,IAAK;AACvE,QAAM,QAAQ,SAAS;AACvB,KAAK,MAAM,WAAW,0BAA2B,EAAE,IAAK,UAAU,gBAAiB;AACnF,SAAO;AACR;AAWA,0BAA2B,SAAS,MAAM,UAAU,CAAC,GAAI;AACxD,QAAM,QAAQ,EAAE,OAAO,MAAM,MAAM,YAAY;AAC/C,MAAK,KAAK,QAAS;AAClB,WAAO,KAAK,IAAK,cAAY;AAC5B,iBAAW,WAAW;AACtB,aAAO,QAAQ,KAAM,OAAK,EAAE,SAAS,QAAS,KAAK,EAAE,QAAQ,SAAS,MAAM,UAAU,OAAO,wBAAyB,SAAS,UAAU,MAAM,QAAQ,aAAc,QAAS,CAAE,GAAG,GAAG,MAAM;AAAA,IAC7L,CAAE;AAAA,EACH;AACA,QAAM,QAAQ,MAAM,KAAM,QAAQ,UAAW;AAC7C,SAAO,MAAM,IAAK,UAAQ;AACzB,WAAO,QAAQ,KAAM,OAAK,EAAE,SAAS,KAAK,QAAS,KAAK,EAAE,QAAQ,SAAS,MAAM,KAAK,UAAU,OAAO,wBAAyB,SAAS,KAAK,UAAU,MAAM,KAAK,SAAU,GAAG,GAAG,MAAM;AAAA,EAC1L,CAAE;AACH;AASA,8BAA+B,EAAE,QAAQ,eAAe,OAAO,YAAa;AAC3E,QAAM,UAAS,MAAM,WAAW,QAAO,OAAO,QAAQ,yBAAyB,IAAK,MAAO,KAAK,CAAC;AACjG,QAAM,QAAQ,SAAU,iBAAmB,MAAO;AAClD,QAAM,SAAS,EAAE,QAAQ,MAAM,eAAe,OAAO,UAAU,MAAM,eAAe,MAAM;AAC1F,SAAO;AACR;AAUA,0BAA2B,QAAQ,UAAW;AAC7C,QAAM,UAAS;AACf,QAAM,EAAE,QAAQ,UAAU,YAAY;AACtC,MAAK,CAAC,OAAO,QAAQ,uBAAwB;AAAE,WAAO,eAAgB,OAAO,SAAS,yBAAyB,EAAE,OAAO,oBAAI,MAAI,CAAE;AAAA,EAAG;AACrI,MAAK,CAAC,OAAO,QAAQ,sBAAsB,IAAK,MAAO,GAAI;AAAE,WAAO,QAAQ,sBAAsB,IAAK,QAAQ,oBAAI,KAAI;AAAA,EAAG;AAC1H,SAAO,QAAQ,sBAAsB,IAAK,MAAO,EAAE,IAAK,QAAS;AACjE,QAAM,KAAK,MAAM,OAAO,QAAQ,sBAAsB,IAAK,MAAO,EAAE,OAAQ,QAAS;AACrF,MAAK,OAAO,QAAQ,uBAAuB;AAAe,WAAO;AACjE,UAAQ,KAAM,+CAAgD;AAC9D,SAAO,QAAQ,sBAAsB,eAAe;AACpD,SAAO,eAAgB,OAAO,SAAS,2BAA2B,EAAE,OAAO,oBAAI,MAAI,CAAE;AAGrF,QAAM,gBAAgB,CAAE,QAAQ,kBAAmB;AAClD,QAAK,CAAC,OAAO,QAAQ,wBAAwB,IAAK,OAAO,MAAO,GAAI;AAAE,aAAO,QAAQ,wBAAwB,IAAK,OAAO,QAAQ,CAAC,CAAE;AAAA,IAAG;AACvI,UAAM,WAAW,OAAO,QAAQ,wBAAwB,IAAK,OAAO,MAAO;AAE3E,aAAU,OAAO,QAAS,SAAU,OAAO,SAAU,CAAC;AACtD,aAAU,OAAO,MAAO,QAAS,OAAO,KAAM;AAC9C,QAAK,GAAK,OAAO,QAAQ,WAAW,0BAA2B,EAAE,IAAK,OAAO,IAAK;AAAI,aAAO,cAAc;AAE3G,WAAO,QAAQ,sBAAsB,IAAK,WAAY,GAAG,QAAS,eAAY,UAAU,CAAE,MAAO,CAAE,CAAE;AACrG,UAAM,cAAc,cAAc;AAClC,WAAO,QAAQ,sBAAsB,IAAK,MAAO,GAAG,QAAS,eAAY,UAAU,CAAE,MAAO,CAAE,CAAE;AAChG,WAAO;AAAA,EACR;AAGA,QAAM,KAAK,IAAI,QAAO,iBAAkB,aAAW;AAClD,cAAU,QAAQ,OAAQ,SAAO;AAChC,YAAM,WAAW,QAAO,OAAO,QAAQ,yBAAyB,IAAK,IAAI,MAAO,KAAK,CAAC;AACtF,aAAO,CAAC,SAAU,IAAI,gBAAiB,MAAM;AAAA,IAC9C,CAAE;AACF,cAAU,wBAAyB,OAAQ,EAAE,IAAK,SAAO,qBAAqB,KAAM,SAAQ,GAAI,CAAE;AAClG,QAAK,CAAC,QAAQ;AAAS;AACvB,WAAO,QAAQ,sBAAsB,IAAK,WAAY,GAAG,QAAS,eAAY,UAAU,OAAQ,CAAE;AAClG,WAAO,QAAQ,sBAAsB,IAAK,MAAO,GAAG,QAAS,eAAY,UAAU,OAAQ,CAAE;AAAA,EAC9F,CAAE;AACF,KAAG,QAAS,UAAU,EAAE,YAAY,MAAM,SAAS,MAAM,mBAAmB,KAAK,CAAE;AAGnF,QAAM,eAAe,uBAAO,OAAQ,IAAK;AACzC,GAAE,gBAAgB,mBAAmB,iBAAmB,EAAE,QAAS,aAAW;AAC7E,iBAAc,WAAY,QAAQ,UAAW;AAC7C,YAAQ,UAAW,WAAY,YAAa,MAAO;AAClD,UAAI,OAAO,WAAW,wBAAyB,MAAM,KAAM,IAAK,MAAM,KAAK,aAAc,KAAM,EAAI,CAAE;AACrG,UAAK,CAAE,gBAAgB,iBAAkB,EAAE,SAAU,OAAQ,GAAI;AAAE,gBAAQ,KAAM;AAAA,MAAK;AACtF,UAAK,YAAY,qBAAqB,UAAU,QAAY;AAC3D,gBAAQ,aAAa,OAAO,OAAO;AAAA,MACpC;AACA,YAAM,SAAS,EAAE,QAAQ,MAAM,MAAM,KAAM,IAAK,OAAO,UAAU,MAAM,gBAAgB,OAAO,CAAE,MAAM,OAAQ,EAAE;AAChH,YAAM,OAAO,MAAM,aAAc,SAAU,KAAM,MAAM,GAAG,IAAK;AAC/D,aAAO,cAAe,QAAQ,IAAK;AAAA,IACpC;AAAA,EACD,CAAE;AAEF,SAAO;AACR;;;AClSA,IAAqB,cAArB,cAAyC,SAAS;AAAA,EAKjD,YAAa,YAAY,MAAO;AAC/B,UAAO,SAAS,QAAQ,GAAG,IAAK;AAAA,EACjC;AAAA,EAKA,KAAM,QAAQ,WAAW,QAAW,SAAS,CAAC,GAAI;AACjD,UAAM,EAAE,SAAS,oBAAW;AAC5B,WAAS,IAAI,aAAc,SAAS,OAAO,EAAI,IAAK,GAAG,SAAU;AAAA,EAClE;AAAA,EAWA,MAAO,MAAM,WAAW,QAAW,SAAS,CAAC,GAAI;AAChD,KAAE,MAAM,WAAW,QAAW,SAAS,CAAC,CAAE,IAAI,KAAK,YAAa,SAAU;AAC1E,UAAM,EAAE,YAAY;AAEpB,UAAM,UAAU,oBAAI,OAAK,YAAY,YAAU;AAC9C,UAAK,CAAC,QAAQ,IAAK,MAAO,GAAI;AAAE,gBAAQ,IAAK,QAAQ,EAAE,QAAQ,UAAU,CAAC,GAAG,OAAO,CAAC,GAAG,MAAM,SAAS,OAAO,KAAK,CAAE;AAAA,MAAG;AACxH,aAAO,QAAQ,IAAK,MAAO;AAAA,IAC5B;AAEA,QAAK,CAAC,OAAO,cAAc,OAAO,eAAe,YAAa;AAC7D,UAAK,CAAC,KAAK,QAAS;AAEnB,SAAE,GAAG,QAAQ,QAAS,EAAE,QAAS,UAAQ,UAAW,OAAQ,EAAE,SAAS,KAAM,IAAK,CAAE;AAAA,MACrF,WAAY,KAAK,MAAO,OAAK,EAAE,SAAS,UAAW,GAAI;AACtD,cAAM,CAAE,cAAc,gBAAiB,KAAK,OAAQ,CAAE,CAAE,KAAK,QAAS,MAAO;AAC5E,iBAAO,EAAE,SAAS,UAAU,CAAE,KAAK,MAAM,OAAQ,CAAE,CAAE,IAAI,CAAE,IAAI,OAAQ,CAAE,GAAG,KAAM;AAAA,QACnF,GAAG,CAAE,CAAC,GAAG,CAAC,CAAE,CAAE;AACd,cAAM,UAAU,CAAC;AACjB,YAAK,OAAO,SAAU;AACrB,cAAK,aAAa,QAAS;AAAE,oBAAQ,KAAM,GAAG,QAAQ,iBAAkB,aAAa,KAAM,GAAI,CAAE,CAAE;AAAA,UAAG;AACtG,cAAK,aAAa,QAAS;AAAE,oBAAQ,KAAM,GAAG,AAAK,WAAY,KAAK,QAAQ,SAAS,YAAa,CAAE;AAAA,UAAG;AAAA,QACxG,OAAO;AACN,cAAK,aAAa,QAAS;AAAE,oBAAQ,KAAM,GAAG,CAAE,GAAG,QAAQ,QAAS,EAAE,OAAQ,UAAQ,KAAK,QAAS,YAAa,CAAE,CAAE;AAAA,UAAG;AACxH,cAAK,aAAa,QAAS;AAAE,oBAAQ,KAAM,GAAG,AAAK,WAAY,KAAK,QAAQ,SAAS,cAAc,KAAM,CAAE;AAAA,UAAG;AAAA,QAC/G;AACA,gBAAQ,QAAS,UAAQ,UAAW,KAAK,cAAc,OAAQ,EAAE,SAAS,KAAM,IAAK,CAAE;AAAA,MACxF;AAAA,IACD;AAEA,QAAK,CAAC;AAAW,aAAO;AACxB,UAAM,iBAAiB,EAAE,cAAc,MAAM;AAC7C,UAAM,kBAAkB,YAAY,OAAO,oBAAoB,KAAK,sBAAsB;AAC1F,eAAY,CAAE,EAAE,WAAY,SAAU;AACrC,UAAK,eAAe;AAAe;AACnC,YAAM,QAAQ,iBAAiB,SAAS,KAAK,CAAC;AAC9C,eAAU,QAAQ,OAAO,OAAQ;AAAA,IAClC;AAEA,QAAK,OAAO,MAAO;AAClB,UAAK,iBAAkB;AAAE,iBAAS,EAAE,GAAG,QAAQ,gBAAgB;AAAA,MAAG;AAClE,YAAM,sBAAsB,KAAK,QAAS,MAAM,UAAU,MAAO;AACjE,aAAO,KAAK,gBAAiB,OAAO,QAAQ,gBAAgB,mBAAoB;AAAA,IACjF;AACA,WAAO,KAAK,gBAAiB,OAAO,QAAQ,gBAAgB,eAAgB;AAAA,EAC7E;AAAA,EAKA,SAAU,MAAM,WAAW,QAAW,SAAS,CAAC,GAAI;AACnD,KAAE,MAAM,WAAW,QAAW,SAAS,CAAC,CAAE,IAAI,KAAK,YAAa,SAAU;AAC1E,WAAO,KAAK,MAAO,MAAM,UAAU,EAAE,GAAG,QAAQ,SAAS,MAAM,CAAE;AAAA,EAClE;AAAA,EAKA,QAAS,MAAM,WAAW,QAAW,SAAS,CAAC,GAAI;AAClD,KAAE,MAAM,WAAW,QAAW,SAAS,CAAC,CAAE,IAAI,KAAK,YAAa,SAAU;AAC1E,WAAO,KAAK,MAAO,MAAM,UAAU,EAAE,GAAG,QAAQ,SAAS,KAAK,CAAE;AAAA,EACjE;AAAA,EAWA,QAAS,MAAM,UAAU,SAAS,CAAC,GAAI;AACtC,KAAE,MAAM,UAAU,SAAS,CAAC,CAAE,IAAI,KAAK,YAAa,SAAU;AAE9D,QAAK,CAAE,QAAQ,WAAY,EAAE,SAAU,OAAO,MAAO;AAAI,aAAO,KAAK,YAAa,MAAM,UAAU,MAAO;AACzG,QAAK,OAAO,UAAU,OAAO,WAAW;AAAU,YAAM,IAAI,MAAO,kBAAmB,OAAO,kBAAoB;AAEjH,UAAM,EAAE,SAAS,iBAAQ,QAAQ,aAAa;AAE9C,QAAK,OAAO,cAAe;AAAE,aAAO,QAAQ,iCAAiC;AAAA,IAAM;AACnF,QAAO,UAAS,eAAe,aAAa,OAAO,QAAQ,mCAAoC,CAAC,OAAO,QAAQ,sBAAsB,cAAe;AACnJ,sBAAgB,KAAM,SAAQ,QAAQ,MAAM;AAAA,MAAC,CAAE;AAAA,IAChD;AAEA,UAAM,iBAAiB,IAAI,QAAO,iBAAkB,aAAW,QAAQ,QAAS,YAAU;AACzF,gBAAS,KAAM,SAAQ,cAAc,iBAAiB,KAAM,SAAQ,MAAO,GAAG,OAAQ;AAAA,IACvF,CAAE,CAAE;AACJ,mBAAe,QAAS,SAAS,EAAE,WAAW,MAAM,SAAS,OAAO,WAAW,KAAM,CAAE;AACvF,UAAM,kBAAkB,OAAO,mBAAmB,OAAO,oBAAoB,KAAK,sBAAsB;AACxG,UAAM,eAAe,EAAE,SAAS,MAAM,UAAU,QAAQ,iBAAiB,eAAe;AAExF,QAAK,OAAO,mBAAoB;AAC/B,YAAM,sBAAsB,kBAAkB,KAAM,SAAQ,YAAa;AACzE,aAAO,KAAK,gBAAiB,OAAO,QAAQ,gBAAgB,iBAAiB,mBAAoB;AAAA,IAClG;AACA,WAAO,KAAK,gBAAiB,OAAO,QAAQ,gBAAgB,eAAgB;AAAA,EAC7E;AAAA,EAWA,YAAa,MAAM,UAAU,SAAS,CAAC,GAAI;AAC1C,KAAE,MAAM,UAAU,SAAS,CAAC,CAAE,IAAI,KAAK,YAAa,SAAU;AAC9D,UAAM,EAAE,SAAS,oBAAW;AAE5B,QAAK,OAAO,UAAU,CAAC,CAAE,QAAQ,WAAY,EAAE,SAAU,OAAO,MAAO;AAAI,YAAM,IAAI,MAAO,kBAAmB,OAAO,kBAAoB;AAC1I,UAAM,qBAAqB,OAAO,WAAW,cAAc,cAAc;AACzE,QAAK,CAAC,KAAK,SAAU,kBAAmB,EAAE,MAAO;AAEhD,sBAAgB,KAAM,SAAQ,oBAAoB,YAAU;AAC3D,aAAK,uBAAwB,oBAAoB,QAAQ,SAAS;AAAA,MACnE,CAAE;AAAA,IACH;AACA,UAAM,KAAK,IAAI,QAAO,iBAAkB,aAAW,QAAQ,QAAS,YAAU;AAC7E,UAAK,MAAM,QAAW,UAAS,iBAAiB,KAAM,SAAQ,MAAO,GAAI,KAAM;AAAI;AACnF,gBAAS,KAAM,SAAQ,cAAc,QAAQ,OAAQ;AAAA,IACtD,CAAE,CAAE;AACJ,OAAG,QAAS,SAAS,EAAE,WAAW,MAAM,SAAS,OAAO,WAAW,KAAK,CAAE;AAE1E,UAAM,iBAAiB,EAAE,aAAa;AACrC,eAAS,OAAQ,YAAa;AAC9B,SAAG,WAAW;AAAA,IACf,EAAE;AACF,UAAM,kBAAkB,OAAO,mBAAmB,OAAO,oBAAoB,KAAK,sBAAsB;AACxG,UAAM,eAAe,EAAE,SAAS,MAAM,UAAU,QAAQ,iBAAiB,eAAe;AACxF,UAAM,WAAW,KAAK,SAAU,kBAAmB;AACnD,aAAS,IAAK,cAAc,CAAC,CAAC,aAAa,OAAO,QAAS;AAE3D,QAAK,OAAO,mBAAoB;AAC/B,YAAM,sBAAsB,kBAAkB,KAAM,SAAQ,YAAa;AACzE,aAAO,KAAK,gBAAiB,OAAO,QAAQ,gBAAgB,iBAAiB,mBAAoB;AAAA,IAClG;AACA,WAAO,KAAK,gBAAiB,OAAO,QAAQ,gBAAgB,eAAgB;AAAA,EAC7E;AAAA,EAWA,MAAO,UAAU,UAAU,SAAS,CAAC,GAAI;AACxC,aAAS,EAAE,SAAS,MAAM,GAAG,OAAO;AACpC,WAAO,KAAK,QAAS,UAAU,YAAU;AACxC,UAAK,OAAO,SAAS;AAAS,iBAAU,MAAM,MAAM,QAAS,QAAS,IAAI,OAAO,WAAW,OAAO,SAAU,EAAI;AACjH,UAAK,OAAO,MAAM;AAAS,iBAAU,OAAO,MAAM,QAAS,QAAS,IAAI,OAAO,QAAQ,OAAO,MAAO,EAAI;AAAA,IAC1G,GAAG,MAAO;AAAA,EACX;AACD;AASA,2BAA4B,cAAe;AAC1C,QAAM,UAAS;AACf,QAAM,EAAE,SAAS,MAAM,UAAU,QAAQ,oBAAoB;AAC7D,QAAM,eAAe,KAAK,OAAQ,OAAK,EAAE,SAAS,KAAM;AACxD,QAAM,WAAW,cAAY,SAAS,MAAO,aAAc,GAAG,SAAS,CAAE,OAAQ,IAAI,CAAC;AACtF,QAAM,YAAY,cAAY,SAAS,MAAO,YAAa,GAAG,SAAS,CAAE,IAAK,IAAI,CAAC;AACnF,QAAM,QAAQ,cAAY,CAAE,GAAG,SAAS,SAAU,4BAA6B,CAAE,EAAE,IAAK,OAAK,EAAG,EAAI,EAAE,OAAQ,SAAU,QAAS,CAAE,EAAE,OAAQ,UAAW,QAAS,CAAE;AACnK,MAAK,CAAG,cAAa,SAAS,MAAM,KAAM,IAAI,IAAK,aAAa,OAAQ,OAAO,KAAI,IAAK,SAAU,GAAI,CAAE,EAAE,OAAQ,CAAE,OAAO,aAAc,MAAM,OAAQ,MAAO,WAAW,EAAG,CAAE,GAAG,CAAC,CAAE,CAAE,CAAE,GAAI;AAAS;AAErM,QAAM,WAAW,oBAAI,OAAK,QAAQ,oBAAI;AACtC,WAAS,OAAO,SAAS,OAAM,OAAQ,GAAI,GAAG,SAAS,IAAK,GAAI;AAChE,QAAM,OAAO,SAAS,UAAS,OAAQ,GAAI,GAAG,MAAM,IAAK,GAAI;AAC7D,eAAa,iBAAiB,EAAE,UAAU,MAAM;AAEhD,SAAS,IAAI,aAAc,SAAS,OAAO,EAAI,QAAS,aAAa,QAAQ,cAAY;AACxF,UAAM,UAAU,oBAAI,OAAK,YAAY,YAAU;AAC9C,UAAK,CAAC,QAAQ,IAAK,MAAO,GAAI;AAAE,gBAAQ,IAAK,QAAQ,EAAE,QAAQ,UAAU,CAAC,GAAG,OAAO,CAAC,GAAG,MAAM,UAAU,OAAO,KAAK,CAAE;AAAA,MAAG;AACzH,aAAO,QAAQ,IAAK,MAAO;AAAA,IAC5B;AAEA,UAAM,eAAe,oBAAI;AACzB,UAAM,UAAU,UAAQ;AACvB,UAAK,CAAC,aAAa,IAAK,IAAK,GAAI;AAAE,qBAAa,IAAK,MAAM,aAAa,KAAM,OAAK,KAAK,QAAS,IAAI,EAAG,CAAE,CAAE;AAAA,MAAG;AAC/G,aAAO,aAAa,IAAK,IAAK;AAAA,IAC/B;AAEA,eAAY,WAAW,UAAW;AACjC,OAAE,YAAY,OAAQ,EAAE,QAAS,gBAAc;AAC9C,YAAK,OAAO,cAAc,eAAe,OAAO;AAAa;AAC7D,YAAK,aAAa,eAAgB,YAAa,IAAK,QAAQ,MAAO,KAAO,gBAAe,aAAa,CAAC,QAAS,QAAQ,MAAO,IAAI,QAAS,QAAQ,MAAO;AAAM;AACjK,qBAAa,eAAgB,YAAa,KAAM,QAAQ,MAAO;AAC/D,kBAAW,QAAQ,MAAO,EAAG,YAAa,KAAM,QAAQ,MAAO;AAC/D,kBAAW,QAAQ,MAAO,EAAE,QAAQ,QAAQ;AAAA,MAC7C,CAAE;AAAA,IACH;AAEA,eAAY,CAAE,EAAE,WAAY,SAAU;AACrC,YAAM,QAAQ,iBAAiB,SAAS,KAAK,CAAC;AAC9C,eAAU,QAAQ,OAAO,OAAQ;AAAA,IAClC;AAAA,EACD,GAAG,EAAE,SAAS,OAAO,SAAS,QAAQ,OAAO,QAAQ,cAAc,OAAO,aAAa,CAAE;AAC1F;AAUA,mBAAmB,cAAc,SAAU;AAC1C,QAAM,EAAE,SAAS,MAAM,UAAU,QAAQ,iBAAiB,mBAAmB;AAE7E,QAAM,SAAS,EAAE,GAAG,SAAS,UAAU,CAAC,GAAG,OAAO,CAAC,EAAE;AACrD,MAAK,CAAC,OAAO,cAAe;AAAE,WAAO,OAAO;AAAA,EAAO;AACnD,GAAE,YAAY,OAAQ,EAAE,QAAS,gBAAc;AAC9C,QAAK,OAAO,cAAc,eAAe,OAAO;AAAa;AAC7D,QAAK,KAAK,QAAS;AAClB,aAAQ,cAAe,kBAAkB,KAAM,MAAM,MAAM,OAAO,YAAY,eAAe,QAAS,aAAc,QAAQ,UAAU,OAAQ;AAAA,IAC/I,OAAO;AACN,aAAQ,cAAe,CAAE,GAAG,QAAS,WAAa;AAAA,IACnD;AACA,QAAK,CAAC;AAAiB;AACvB,eAAY,QAAQ,OAAQ,aAAe;AAC1C,qBAAgB,YAAa,KAAM,IAAK;AAAA,IACzC;AAAA,EACD,CAAE;AAEF,MAAK,CAAC,OAAO,SAAS,UAAU,CAAC,OAAO,MAAM;AAAS;AACvD,QAAM,QAAQ,iBAAiB,SAAS,KAAK,CAAC;AAC9C,WAAU,QAAQ,OAAO,OAAQ;AAClC;AAYA,2BAA4B,MAAM,YAAY,SAAS,eAAgB;AACtE,YAAU,MAAM,QAAS,OAAQ,IAAI,UAAU,CAAE,GAAG,OAAQ;AAC5D,QAAM,QAAQ,CAAE,UAAS,MAAO;AAE/B,QAAK,EAAE,SAAS,YAAa;AAE5B,UAAI,UAAU,EAAE,cAAc,CAAC,IAAI,SAAQ,OAAQ,YAAU,EAAE,SAAS,UAAU,AAAK,WAAY,MAAM,QAAQ,IAAI,EAAG,IAAI,OAAO,WAAW,OAAO,QAAS,IAAI,EAAG,CAAE;AAEvK,UAAK,iBAAiB,EAAE,aAAc;AACrC,kBAAU,SAAQ,OAAQ,CAAE,YAAY,WAAY;AACnD,cAAK,EAAE,SAAS,SAAU;AAAE,mBAAO,CAAE,GAAG,YAAY,GAAG,AAAK,WAAY,MAAM,QAAQ,GAAG,aAAc,CAAE;AAAA,UAAG;AAC5G,iBAAO,OAAO,mBAAmB,CAAE,GAAG,YAAY,GAAG,OAAO,iBAAkB,IAAI,EAAG,CAAE,IAAI;AAAA,QAC5F,GAAG,OAAQ;AAAA,MACZ;AACA,UAAK,QAAQ;AAAS,eAAO;AAAA,IAC9B,OAAO;AAEN,UAAK,SAAQ,SAAU,EAAE,OAAQ,KAChC,iBAAiB,SAAQ,KAAM,YAAU,AAAK,aAAc,MAAkB,QAAQ,EAAE,SAAS,UAAW,CAAE,GAC3G;AAAE,eAAO,CAAE,EAAE,OAAQ;AAAA,MAAG;AAAA,IAC7B;AAAA,EACD;AAGA,MAAK,CAAC,QAAQ,eAAgB;AAAE,YAAQ,gBAAgB,oBAAI;AAAA,EAAK;AACjE,SAAO,KAAK,OAAQ,CAAE,SAAS,MAAO;AACrC,QAAI;AACJ,QAAK,QAAQ,cAAc,IAAK,EAAE,OAAQ,GAAI;AAC7C,iBAAW,QAAQ,cAAc,IAAK,EAAE,OAAQ;AAAA,IACjD,OAAO;AACN,iBAAW,MAAO,SAAS,CAAE,KAAK,CAAC;AACnC,UAAK,EAAE,SAAS,YAAa;AAC5B,gBAAQ,cAAc,IAAK,EAAE,SAAS,QAAS;AAAA,MAChD;AAAA,IACD;AACA,WAAO,QAAQ,OAAQ,QAAS;AAAA,EACjC,GAAG,CAAC,CAAE;AACP;AASA,0BAA2B,EAAE,QAAQ,YAAY,gBAAiB;AACjE,MAAI,UAAS,MAAM;AACnB,UAAQ,aAAU,UAAW,EAAE,OAAQ,CAAE,MAAM,SAAU,QAAQ,QAAO,OAAO,QAAQ,wBAAwB,IAAK,IAAK,GAAG,IAAK;AACjI,UAAQ,aAAU,YAAa,EAAE,OAAQ,CAAE,MAAM,SAAU,QAAQ,QAAO,OAAO,QAAQ,wBAAwB,IAAK,IAAK,GAAG,KAAM;AACpI,UAAQ,SAAS,QAAO,SAAS,eAAe,aAAa,WAAW;AACxE,SAAO,EAAE,QAAQ,UAAU,YAAY,OAAO,cAAc,MAAM,eAAe,MAAM;AACxF;AAUA,yBAA0B,QAAQ,UAAW;AAC5C,QAAM,UAAS;AACf,QAAM,EAAE,QAAQ,UAAU,MAAM,eAAe,SAAS,aAAa,qBAAqB,qBAAqB;AAC/G,MAAK,CAAC,OAAO,QAAQ,sBAAuB;AAAE,WAAO,eAAgB,OAAO,SAAS,wBAAwB,EAAE,OAAO,oBAAI,MAAI,CAAE;AAAA,EAAG;AACnI,MAAK,CAAC,OAAO,QAAQ,0BAA2B;AAAE,WAAO,eAAgB,OAAO,SAAS,4BAA4B,EAAE,OAAO,oBAAI,MAAI,CAAE;AAAA,EAAG;AAC3I,MAAK,CAAC,OAAO,QAAQ,qBAAqB,IAAK,MAAO,GAAI;AAAE,WAAO,QAAQ,qBAAqB,IAAK,QAAQ,oBAAI,KAAI;AAAA,EAAG;AACxH,SAAO,QAAQ,qBAAqB,IAAK,MAAO,EAAE,IAAK,QAAS;AAChE,QAAM,KAAK,MAAM,OAAO,QAAQ,qBAAqB,IAAK,MAAO,EAAE,OAAQ,QAAS;AACpF,MAAK,OAAO,QAAQ,sBAAsB;AAAe,WAAO;AAChE,UAAQ,KAAM,8CAA+C;AAC7D,SAAO,QAAQ,qBAAqB,eAAe;AACnD,SAAO,eAAgB,OAAO,SAAS,0BAA0B,EAAE,OAAO,oBAAI,MAAI,CAAE;AAGpF,QAAM,YAAY,CAAE,MAAM,QAAQ,cAAc;AAC/C,WAAO,QAAQ,yBAAyB,IAAK,MAAM,MAAO;AAC1D,UAAM,cAAc,UAAS;AAC7B,WAAO,QAAQ,yBAAyB,OAAQ,IAAK;AACrD,WAAO;AAAA,EACR;AAGA,QAAM,YAAY,CAAE,QAAQ,kBAAmB;AAC9C,WAAO,SAAS,OAAQ,OAAO,KAAM,EAAE,QAAS,UAAQ;AACvD,mBAAc,OAAO,QAAQ,uBAAuB,IAAK,IAAK,GAAG,OAAQ;AACzE,aAAO,QAAQ,uBAAuB,IAAK,MAAM,OAAO,KAAM;AAC9D,YAAM,UAAU,WAAY,MAAM;AAAE,eAAO,QAAQ,uBAAuB,OAAQ,IAAK;AAAA,MAAG,GAAG,CAAE;AAC/F,aAAO,eAAgB,OAAO,OAAO,WAAW,EAAE,OAAO,SAAS,cAAc,KAAK,CAAE;AAAA,IACxF,CAAE;AACF,WAAO,QAAQ,qBAAqB,IAAK,WAAY,GAAG,QAAS,eAAY,UAAU,MAAO,CAAE;AAChG,UAAM,cAAc,cAAc;AAClC,WAAO,QAAQ,qBAAqB,IAAK,MAAO,GAAG,QAAS,eAAY,UAAU,MAAO,CAAE;AAC3F,WAAO;AAAA,EACR;AAGA,QAAM,YAAY;AAAA,IAEjB,YAAY,CAAE,aAAa,eAAgB;AAAA,IAC3C,kBAAkB,CAAE,mBAAmB,UAAU,SAAU;AAAA,IAC3D,UAAU,CAAE,mBAAmB,UAAU,SAAU;AAAA,IACnD,aAAa,CAAE,aAAa,WAAY;AAAA,IACxC,SAAS,CAAE,UAAU,WAAW,UAAU,SAAS,yBAAyB,sBAAsB,UAAU,mBAAmB,eAAe,iBAAiB,aAAa,WAAY;AAAA,IACxL,eAAe,CAAE,UAAU,SAAS,UAAU,aAAc;AAAA,IAC5D,MAAM,CAAE,gBAAgB,gBAAgB,eAAe,eAAe,eAAe,WAAY;AAAA,EAClG;AACA,QAAM,gBAAgB;AAAA,IAErB,YAAY,uBAAO,OAAQ,IAAK;AAAA,IAChC,kBAAkB,uBAAO,OAAQ,IAAK;AAAA,IACtC,UAAU,uBAAO,OAAQ,IAAK;AAAA,IAC9B,aAAa,uBAAO,OAAQ,IAAK;AAAA,IACjC,SAAS,uBAAO,OAAQ,IAAK;AAAA,IAC7B,eAAe,uBAAO,OAAQ,IAAK;AAAA,IACnC,MAAM,uBAAO,OAAQ,IAAK;AAAA,EAC3B;AAEA,QAAM,kBAAkB,IAAI,IAAK,OAAO,OAAQ,SAAU,EAAE,OAAQ,CAAE,KAAK,SAAU,IAAI,OAAQ,IAAK,GAAG,CAAC,CAAE,CAAE;AAC9G,kBAAgB,QAAS,aAAW;AAEnC,WAAO,KAAM,SAAU,EAAE,QAAS,kBAAgB;AACjD,UAAK,CAAC,UAAW,cAAe,SAAU,OAAQ;AAAI;AACtD,YAAM,eAAe,OAAO,yBAA0B,QAAQ,cAAe,WAAW,OAAQ;AAChG,UAAK,CAAC;AAAe;AACrB,aAAO,eAAgB,QAAQ,cAAe,WAAW,SAAS,WAAW,eAAe,EAAE,GAAG,cAAc,OAAO,OAAO,IAAI,EAAE,GAAG,cAAc,KAAK,OAAO,CAAE;AAClK,oBAAe,cAAgB,WAAY;AAAA,IAC5C,CAAE;AAEF,uBAAoB,MAAO;AAC1B,YAAM,eAAe,OAAO,KAAM,aAAc,EAAE,KAAM,UAAQ,gBAAgB,QAAQ,SAAY,WAAW,cAAe,KAAS;AACvI,YAAM,gBAAgB,cAAe;AAErC,UAAI,OAAO,MAAM,cAAe,SAAU,MAAM,KAAM,MAAM,GAAG,IAAK;AACpE,UAAK,OAAO,QAAQ,yBAAyB,IAAK,IAAK,MAAM;AAAU,eAAO,KAAK;AAGnF,UAAI,QAAQ,CAAC,GAAG,WAAW,CAAC,GAAG,SAAS;AACxC,UAAK,CAAE,cAAe,EAAE,SAAU,OAAQ,GAAI;AAC7C,mBAAW,CAAE,KAAM,EAAI;AAAA,MACxB,WAAY,CAAE,yBAAyB,oBAAqB,EAAE,SAAU,OAAQ,GAAI;AACnF,mBAAW,CAAE,KAAM,EAAI;AACvB,YAAK,CAAE,eAAe,UAAW,EAAE,SAAU,KAAM,EAAI,GAAI;AAC1D,mBAAS,KAAK;AAAA,QACf;AAAA,MACD,WAAY,CAAE,iBAAiB,iBAAkB,EAAE,SAAU,OAAQ,GAAI;AACxE,gBAAQ,CAAE,GAAG,KAAK,UAAW;AAC7B,mBAAW,YAAY,oBAAoB,CAAE,GAAG,IAAK,IAAI,CAAE,KAAM,EAAI;AAAA,MACtE,WAAY,CAAE,eAAe,QAAS,EAAE,SAAU,OAAQ,GAAI;AAC7D,gBAAQ,CAAE,IAAK;AACf,mBAAW,YAAY,gBAAgB,CAAE,GAAG,IAAK,IAAI,CAAC;AACtD,iBAAS,KAAK;AAAA,MACf,WAAY,CAAE,cAAe,EAAE,SAAU,OAAQ,GAAI;AACpD,gBAAQ,CAAE,KAAM,EAAI;AACpB,mBAAW,CAAE,KAAM,EAAI;AAAA,MACxB,WAAY,CAAE,aAAc,EAAE,SAAU,OAAQ,GAAI;AACnD,gBAAQ,CAAE,GAAG,IAAK;AAAA,MACnB,OAAO;AAEN,mBAAW,CAAE,GAAG,IAAK;AACrB,YAAK,CAAE,UAAU,OAAQ,EAAE,SAAU,OAAQ,GAAI;AAChD,mBAAS,KAAK;AAAA,QACf;AAAA,MACD;AAGA,UAAI,eAAe;AACnB,UAAK,CAAE,sBAAsB,eAAgB,EAAE,SAAU,OAAQ,GAAI;AACpE,YAAI,eAAe,KAAK;AACxB,YAAK,YAAY,wBAAwB,CAAE,eAAe,UAAW,EAAE,SAAU,KAAM,EAAI,GAAI;AAE9F,cAAK,CAAC,KAAK;AAAa,mBAAO,cAAe,SAAU,MAAM,KAAM,MAAM,GAAG,IAAK;AAClF,yBAAe,KAAK,WAAW;AAAA,QAChC;AACA,cAAM,OAAO,SAAS,cAAe,aAAa,SAAU,GAAI,IAA6C,QAAQ,YAAa;AAClI,sBAAc,cAAc,MAAM,KAAM,MAAM,SAAU,IAAK,YAAY,kBAAkB,KAAM,KAAM,CAAC,CAAE;AAC1G,mBAAW,CAAE,GAAG,KAAK,UAAW;AAEhC,YAAK,YAAY,sBAAuB;AACvC,yBAAe;AACf,eAAM,KAAM,IAAI;AAChB,oBAAW,KAAM,IAAK,UAAU,MAAM,KAAM,GAAI,OAAQ,GAAG,KAAK,UAAW,CAAE;AAAA,QAC9E,OAAO;AACN,yBAAe;AACf,iBAAO,CAAE,GAAG,KAAK,UAAW;AAAA,QAC7B;AAAA,MACD;AAEA,UAAK,CAAC;AAAS,eAAO,KAAK;AAC3B,YAAM,SAAS,EAAE,QAAQ,UAAU,OAAO,MAAM,gBAAgB,OAAO,CAAE,MAAM,OAAQ,EAAE;AACzF,aAAO,UAAW,QAAQ,MAAM;AAC/B,eAAO,cAAe,cAAe,MAAM,KAAM,MAAM,GAAG,IAAK;AAAA,MAChE,CAAE;AAAA,IACH;AAEA,oBAAiB,OAAQ;AACxB,YAAM,eAAe,OAAO,KAAM,aAAc,EAAE,KAAM,UAAQ,gBAAgB,QAAQ,SAAY,WAAW,cAAe,KAAS;AACvI,YAAM,gBAAgB,cAAe;AAErC,UAAI,OAAO,MAAM,cAAe,SAAU,IAAI,KAAM,MAAM,KAAM;AAChE,UAAK,gBAAgB,qBAAqB,OAAO,QAAQ,yBAAyB,IAAK,IAAK,MAAM;AAAU,eAAO,KAAK;AAGxH,UAAI,QAAQ,CAAC,GAAG,WAAW,CAAC,GAAG,SAAS;AACxC,UAAK,CAAE,aAAa,WAAY,EAAE,SAAU,OAAQ,GAAI;AACvD,gBAAQ,CAAE,IAAK;AACf,iBAAS,KAAK;AAAA,MACf,OAAO;AAEN,YAAK,gBAAgB,qBAAsB;AAC1C,mBAAS,KAAK;AACd,kBAAQ,CAAE,GAAG,KAAK,QAAQ,UAAW;AAAA,QACtC,OAAO;AACN,kBAAQ,CAAE,GAAG,KAAK,UAAW;AAAA,QAC9B;AAAA,MACD;AAGA,UAAK,CAAE,aAAa,WAAY,EAAE,SAAU,OAAQ,GAAI;AACvD,YAAI,eAAe,KAAK;AACxB,YAAK,YAAY,aAAc;AAE9B,cAAK,CAAC,KAAK;AAAa,mBAAO,KAAK;AACpC,yBAAe,KAAK,WAAW;AAAA,QAChC;AACA,cAAM,OAAO,SAAS,cAAe,aAAa,SAAU,GAAI,IAA6C,QAAQ,YAAa;AAClI,kBAAW,MAAM,SAAS,MAAM,KAAM,WAAY,KAAM;AACxD,mBAAW,gBAAgB,sBAAsB,CAAE,GAAG,KAAK,QAAQ,UAAW,IAAI,CAAE,GAAG,KAAK,UAAW;AACvG,YAAO,gBAAgB,uBAAuB,KAAK,aAAc,KAAM,KAAO,gBAAgB,YAAa;AAC1G,gBAAM,aAAa,WAAS,MAAM,OAAQ,CAAE,SAAS,OAAQ;AAC5D,gBAAK,cAAc;AAAoB,qBAAO,QAAQ,OAAQ,EAAG;AACjE,gBAAK,cAAc;AAAsB,qBAAO,QAAQ,OAAQ,WAAY,CAAE,GAAG,OAAQ,CAAE,CAAE;AAC7F,sBAAU,QAAQ,OAAQ,WAAY,CAAE,GAAK,GAAG,mBAAoB,UAAW,KAAK,CAAC,CAAI,EAAE,IAAK,OAAK,EAAE,OAAQ,CAAE,CAAE;AACnH,mBAAO,QAAQ,OAAQ,GAAK,GAAG,mBAAoB,QAAS,KAAK,CAAC,CAAI;AAAA,UACvE,GAAG,CAAC,CAAE;AACN,qBAAY,UAAU,WAAY,QAAS,GAAI;AAC9C,gBAAI,gBAAgB,YAAY;AAC/B,qBAAO,aAAa,iBAAiB,QAAQ;AAC7C;AAAA,YACD;AACA,kBAAM,UAAU,SAAS,cAAe,QAAS;AACjD,aAAE,GAAG,OAAO,UAAW,EAAE,QAAS,UAAQ,QAAQ,aAAc,KAAK,MAAM,KAAK,KAAM,CAAE;AACxF,oBAAQ,cAAc,OAAO;AAC7B,sBAAW,QAAQ,eAAe,MAAM,OAAO,YAAa,OAAQ,CAAE;AAAA,UACvE;AAAA,QACD;AAEA,YAAK,YAAY,aAAc;AAC9B,kBAAQ,IAAI;AACZ,oBAAW,OAAO,UAAU,MAAM,MAAM,OAAQ,GAAG,QAAS,CAAE;AAC9D,iBAAO,MAAM,UAAW,MAAM,eAAe,MAAM,QAAQ,UAAU,YAAY,KAAM,MAAM,KAAM,CAAE;AAAA,QACtG,OAAO;AACN,cAAK,gBAAgB,qBAAsB;AAC1C,mBAAO,MAAM,UAAW,KAAK,SAAS,mBAAmB,MAAM,KAAK,QAAQ,gBAAiB,GAAG,QAAS,CAAE;AAAA,UAC5G,OAAO;AACN,mBAAO,MAAM,UAAW,MAAM,mBAAmB,MAAM,QAAQ,UAAU,gBAAgB,KAAM,MAAM,GAAG,QAAS,CAAE;AAAA,UACpH;AAAA,QACD;AAAA,MACD;AAEA,YAAM,SAAS,EAAE,QAAQ,UAAU,OAAO,MAAM,gBAAgB,OAAO,CAAE,MAAM,OAAQ,EAAE;AACzF,aAAO,UAAW,QAAQ,IAAK;AAAA,IAChC;AAAA,EACD,CAAE;AAEF,SAAO;AACR;;;ACziBe,6BAAW;AACtB,aAAW,KAAM,IAAK;AACtB,mBAAiB,KAAM,IAAK;AAC5B,kBAAgB,KAAM,IAAK;AAC/B;AAOO,sBAAsB;AACzB,QAAM,UAAS;AACf,MAAK,CAAC,QAAO,KAAM;AAAE,YAAO,MAAM,CAAC;AAAA,EAAE;AACrC,MAAK,CAAC,QAAO,IAAI,QAAS;AAQtB,YAAO,IAAI,SAAS,SAAO,IAAI,QAAS,kBAAkB,MAAO;AAAA,EACrE;AACJ;AASO,4BAA4B;AAC/B,QAAM,UAAS;AACf,MAAK,CAAG,kBAAiB,QAAO,KAAK,YAAc;AAC/C,WAAO,eAAgB,QAAO,KAAK,WAAW,eAAe,EAAE,KAAK,WAAW;AAC3E,aAAO,CAAC,KAAK,iBAAiB,CAC1B,MAAK,cAAc,wBAAyB,IAAK,IAC/C,KAAK;AAAA,IACf,EAAE,CAAE;AAAA,EACR;AACJ;AASO,2BAA2B;AAC9B,QAAM,UAAS;AACf,MAAK,CAAC,QAAO,QAAQ,UAAU,SAAU;AACrC,YAAO,QAAQ,UAAU,UACzB,QAAO,QAAQ,UAAU,mBACzB,QAAO,QAAQ,UAAU,sBACzB,QAAO,QAAQ,UAAU,qBACzB,QAAO,QAAQ,UAAU,oBACzB,QAAO,QAAQ,UAAU,yBACzB,SAAU,GAAI;AACV,UAAI,UAAY,MAAK,YAAY,KAAK,eAAgB,iBAAkB,CAAE,GACtE,IAAI,QAAQ;AAChB,aAAQ,EAAE,KAAK,KAAK,QAAQ,KAAM,CAAE,MAAM,MAAO;AAAA,MAAC;AAClD,aAAO,IAAI;AAAA,IACf;AAAA,EACJ;AACJ;;;AC5De,uBAAW;AACtB,QAAM,UAAS;AACf,MAAK,CAAC,QAAO;AAAS,YAAO,SAAS,CAAC;AACvC,MAAK,QAAO,OAAO;AAAU,WAAO,QAAO,OAAO;AAClD,UAAO,OAAO,UAAU,CAAC;AACzB,oBAAS,KAAM,OAAO;AAEtB,UAAO,OAAO,QAAQ,OAAO,IAAK,SAAU,KAAK,KAAM,SAAQ,GAAG,IAAK;AACvE,UAAO,OAAO,QAAQ,QAAQ,IAAK,SAAU,MAAM,KAAM,SAAQ,GAAG,IAAK;AAEzE,UAAO,OAAO,QAAQ,WAAW,CAAE,SAAS,YAAY,UAAW;AAC/D,QAAK,cAAc;AAAQ,aAAO,IAAI,YAAa,SAAS,OAAO;AACnE,QAAK,cAAc;AAAS,aAAO,IAAI,aAAc,SAAS,OAAO;AAAA,EACzE;AAEA,QAAM,YAAY,IAAI,UAAW,OAAO;AACxC,UAAO,OAAO,QAAQ,WAAW,CAAE,SAAS,SAAU;AAClD,WAAO,UAAW,KAAM,QAAW,GAAG,IAAK;AAAA,EAC/C;AACA,UAAO,OAAO,QAAQ,kBAAkB,IAAK,SAAU;AACnD,WAAO,UAAU,gBAAiB,GAAG,IAAK;AAAA,EAC9C;AAEA,SAAO,QAAO,OAAO;AACzB;AAUA,kBAAmB,MAAO;AACtB,MAAI,SAAS,eAAe;AAC5B,MAAK,iBAAW,KAAM,EAAI,GAAI;AAC1B,aAAS,KAAM;AACf,QAAK,mBAAa,KAAM,EAAI,GAAI;AAAE,iBAAW,KAAM;AAAA,IAAK;AAAA,EAC5D,WAAY,mBAAa,KAAM,EAAI,GAAI;AAAE,eAAW,KAAM;AAAA,EAAK;AAE/D,QAAM,UAAU,EAAE,aAAa,CAAE,eAAe,UAAW,GAAG,UAAU,CAAE,UAAW,EAAG;AACxF,MAAK,CAAC,QAAS;AAAW,UAAM,IAAI,MAAO,+BAAgC,SAAW;AACzF,QAAM,UAAS;AAEZ,MAAK,CAAC,UAAW;AACb,QAAK,CAAC,QAAO,OAAO,QAAQ,oBAAqB;AAC7C,cAAO,OAAO,QAAQ,qBAAqB;AAAA,QACvC,aAAa,IAAI,QAAS,SAAO,MAAM,KAAM,MAAM,eAAe,GAAI,CAAE;AAAA,QACxE,UAAU,IAAI,QAAS,SAAO,MAAM,KAAM,MAAM,YAAY,GAAI,CAAE;AAAA,MACtE;AAAA,IACJ;AACA,WAAO,QAAO,OAAO,QAAQ,mBAAoB;AAAA,EACrD;AAEH,MAAK,QAAS,QAAS,SAAU,QAAO,SAAS,UAAW;AAAI,WAAO,SAAU,OAAO;AACrF,MAAK,CAAC,QAAO,OAAO,QAAQ,qBAAsB;AAC9C,YAAO,OAAO,QAAQ,sBAAsB,EAAE,aAAa,CAAC,GAAG,UAAU,CAAC,EAAE;AAC5E,YAAO,SAAS,iBAAkB,oBAAoB,MAAM;AACxD,YAAM,QAAQ,QAAO,SAAS;AAC9B,iBAAY,aAAY,QAAO,OAAO,QAAQ,oBAAqB,OAAQ,OAAQ,CAAE,GAAI;AACrF,kBAAU,OAAO;AAAA,MACrB;AAAA,IACJ,GAAG,KAAM;AAAA,EACb;AACA,UAAO,OAAO,QAAQ,oBAAqB,QAAS,KAAM,QAAS;AACvE;AASA,cAAe,MAAO;AAClB,QAAM,UAAS;AACf,MAAI,WAAW,CAAC,GAAG;AACnB,MAAK,MAAM,QAAO,SAAS,cAAe,cAAe,QAAU,GAAI;AACnE,eAAa,KAAI,WAAW,IAAK,MAAO,GAAI,EAAE,OAAQ,OAAK,CAAE,EAAE,OAAQ,CAAE,WAAW,cAAe;AAC/F,YAAM,iBAAiB,UAAU,MAAO,GAAI,EAAE,IAAK,OAAK,EAAE,KAAK,CAAE;AACjE,kBAAM,WAAW,eAAgB,GAAI,MAAO,GAAI,GAAG,eAAgB,OAAQ,SAAS,OAAQ,eAAgB,OAAQ,UAAU,QACtH,kBAAY,eAAgB,EAAI,IAAI,SAAU,eAAgB,EAAI,IAAI,eAAgB,EAE9F;AACA,aAAO;AAAA,IACX,GAAG,CAAC,CAAE;AAAA,EACV;AACA,SAAO,EAAE,IAAI,OAAO;AAAE,WAAO;AAAA,EAAM,GAAG,IAAI,UAAU;AAAE,WAAO,IAAI;AAAA,EAAS,GAAG,OAAO;AACtF,WAAO,KAAK,MAAO,KAAK,UAAW,QAAS,CAAE;AAAA,EAC5C,EAAE;AACN;;;AC7Fe,yBAAS,KAAK,QAAQ;AACpC,MAAI,OAAO,QAAQ,UAAU;AAC5B,WAAO;AAAA,EACR;AACA,SAAO,IAAI,QAAQ,UAAW,SAAS,KAAK;AAAE,WAAO,IAAI,OAAO,CAAC,EAAE,YAAY,IAAM,QAAO,WAAW,UAAa,SAAU,IAAI,OAAO,CAAC,EAAE,YAAY,IAAI,IAAI,OAAO,CAAC;AAAA,EAAI,CAAC;AAC9K;;;ACLO,IAAM,MAAM,CAAE,WAAW,SAAU,GAAM,QAAQ,UAAU,GAAG,IAAK;AAEnE,IAAM,MAAM,CAAC;AAEb,eAAgB,MAAM,SAAS,WAAY;AAC9C,QAAM,UAAS,MAAM,UAAU,YAAY,KAAM,OAAO;AACxD,MAAI,SAAS;AACb,MAAK,CAAC,QAAO,cAAe;AACxB,YAAO,eAAe,QAAQ,KAAM,QAAS,EAAE,KAAK;AAAA,EACxD;AACA,UAAO,UAAY,SAAO,SAAS,CAAC;AACpC,UAAO,OAAO,UAAY,SAAO,OAAO,SAAS,CAAC;AAClD,UAAO,OAAO,OAAO,WAAa,SAAO,OAAO,OAAO,UAAU,CAAC;AAElE,QAAM,YAAY,KAAK,YAAY,EAAE,QAAS,KAAK,GAAI;AACvD,MAAK,CAAC,QAAO,OAAO,OAAO,QAAS,YAAc;AAC9C,YAAO,OAAO,OAAO,QAAS,aAAe,CAAC;AAC9C,UAAM,SAAS,QAAO,OAAO,OAAO,QAAS;AAC7C,kBAAQ,GAAG,QAAQ,WAAW,SAAS,QAAQ,KAAM,IAAK,EAAE,KAAK,CAAE;AACnE,QAAK,QAAO,aAAa,QAAS;AAC9B,aAAO,KAAM,MAAO,EAAE,QAAS,UAAQ;AACnC,eAAO,KAAM,OAAQ,KAAO,EAAE,QAAS,SAAO;AAC1C,cAAK,SAAS,SAAS,OAAO,OAAQ,MAAQ,SAAU,UAAW;AAC/D,mBAAQ,MAAQ,OAAQ,GAAI,QAAO,aAAa,SAAW,gBAAU,OAAQ,MAAQ,IAAM;AAAA,UAC/F,WAAY,CAAE,QAAQ,UAAW,EAAE,SAAU,IAAK,KAAK,OAAQ,MAAQ,MAAO,WAAY,OAAQ,MAAM,OAAQ;AAC5G,mBAAQ,MAAQ,OAAQ,GAAI,QAAO,aAAa,UAAY,OAAQ,MAAQ;AAAA,UAChF;AAAA,QACJ,CAAE;AAAA,MACN,CAAE;AAAA,IACN;AAAA,EACJ;AAEA,SAAO,EAAE,QAAQ,QAAO,OAAO,OAAO,QAAS,YAAa,SAAS,gBAAO;AAChF;AAEO,oCAAqC,MAAM,UAAW;AAC5D,SAAO,GAAM,MAAM,WAAW,0BAA2B,EAAE,IAAK,QAAS;AAC1E;AACO,kCAAkC,MAAM,UAAU,UAAW;AACnE,QAAM,mBAAmB,GAAM,MAAM,WAAW,0BAA2B,EAAE,IAAK,QAAS;AAC3F,KAAM,MAAM,WAAW,0BAA2B,EAAE,IAAK,UAAU,IAAK;AACxE,QAAM,QAAQ,SAAS;AACvB,KAAM,MAAM,WAAW,0BAA2B,EAAE,IAAK,UAAU,gBAAiB;AACpF,SAAO;AACR;AAeO,qBAAsB,KAAK,OAAQ;AACtC,SAAO,CAAE,GAAG,GAAI,EAAE,OAAQ,CAAE,CAAE,OAAO,OAAO,SAAU,MAAO;AACzD,QAAK,CAAC,SAAS,UAAU,KAAO,OAAM,QAAS,KAAM,IAAI,QAAQ,CAAE,KAAM,GAAI,SAAU,CAAE,GAAI;AACzF,aAAO,CAAE,OAAO,OAAO,CAAE,EAAG,EAAE,OAAQ,MAAO,CAAE;AAAA,IACnD;AACA,QAAK,CAAC,SAAS,CAAE,KAAK,KAAK,GAAI,EAAE,SAAU,CAAE,KAAK,CAAC,OAAQ,GAAI,SAAU,IAAK;AAAI;AAClF,QAAK,CAAC,SAAS,CAAE,KAAK,KAAK,GAAI,EAAE,SAAU,CAAE,KAAK,CAAC,OAAQ,GAAI,SAAU,IAAK;AAAI;AAClF,QAAK,CAAE,KAAK,KAAK,GAAI,EAAE,SAAU,CAAE,KAAK,CAAC,OAAQ,GAAI,SAAU,IAAK,GAAI;AACpE,cAAQ,UAAU,IAAI,OAAS,SAAS;AAAA,IAC5C;AACA,WAAQ,MAAO;AACf,WAAO,CAAE,OAAO,OAAO,MAAO;AAAA,EAClC,GAAG,CAAE,MAAM,GAAG,CAAE,EAAG,CAAE,CAAE,EAAG,GAAI,QAAQ;AAC1C;AAGO,IAAM,UAAU,MAAQ,KAAI,KAAK,OAAO,IAAI,KAAM,SAAU,EAAG;AAGtE,IAAM,YAAY,oBAAI;AACf,iBAAkB,KAAM;AAC3B,MAAI;AACJ,MAAK,CAAG,QAAO,UAAU,IAAK,GAAI,IAAM;AACpC,WAAO,QAAQ;AACf,cAAU,IAAK,KAAK,IAAK;AAAA,EAC7B;AACA,SAAO;AACX;AAGO,mBAAoB,MAAO;AAC9B,MAAI;AACJ,YAAU,QAAS,CAAE,OAAO,SAAU;AAClC,QAAK,UAAU;AAAO,YAAM;AAAA,EAChC,CAAE;AACF,SAAO;AACX;;;AClGe,0CAAW;AACtB,QAAM,EAAE,oBAAW,KAAK,EAAE,WAAW;AACrC,MAAK,OAAO;AAAyB,WAAO,OAAO;AACnD,QAAM,+BAA+B,QAAO,MAAM;AAAA,IAI9C,eAAgB,MAAO;AACnB,YAAM,WAAW,KAAK,IAAI;AAC1B,UAAK,OAAO,aAAa;AAAa,cAAM,IAAI,MAAO,4BAA6B;AACpF,YAAM,UAAU,KAAK,IAAI;AACzB,UAAK,CAAC,SAAS;AAAO,cAAM,IAAI,MAAO,mCAAoC;AAC3E,YAAM,aAAa,CAAE,kBAAkB,cAAe;AACtD,YAAM,OAAO,KAAK,IAAI,KAAK,WAAY;AACvC,UAAK,CAAC,WAAW,SAAU,IAAK;AAAI,cAAM,IAAI,MAAO,uCAAwC,WAAW,KAAM,GAAI,GAAK;AAEvH,YAAM,EAAE,MAAM,QAAQ,eAAe,MAAM,QAAQ,SAAS,cAAc;AAC1E,YAAO,MAAM,EAAE,GAAG,WAAW,SAAS,UAAU,YAAY,MAAO,CAAE;AAErE,aAAO,eAAgB,MAAM,YAAY,EAAE,KAAK,MAAM,SAAS,CAAE;AACjE,aAAO,eAAgB,MAAM,QAAQ,EAAE,KAAK,MAAM,KAAK,CAAE;AACzD,aAAO,eAAgB,MAAM,iBAAiB,EAAE,KAAK,MAAM,cAAc,CAAE;AAC3E,aAAO,eAAgB,MAAM,UAAU,EAAE,KAAK,MAAM,OAAO,CAAE;AAC7D,aAAO,eAAgB,MAAM,QAAQ,EAAE,KAAK,MAAM,KAAK,CAAE;AACzD,aAAO,eAAgB,MAAM,UAAU,EAAE,KAAK,MAAM,OAAO,CAAE;AAC7D,aAAO,eAAgB,MAAM,QAAQ,EAAE,KAAK,MAAM,KAAK,CAAE;AACzD,aAAO,eAAgB,MAAM,WAAW,EAAE,KAAK,MAAM,UAAU,CAAE;AACjE,aAAO,eAAgB,MAAM,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAE;AAAA,IACvD;AAAA,IAEA,IAAI,SAAS;AAAE,aAAO,MAAM,UAAU,KAAK,KAAK;AAAA,IAAQ;AAAA,IACxD,IAAI,WAAW;AAAE,aAAO,KAAK,KAAK,YAAY;AAAA,IAAO;AAAA,IAKrD,YAAa,UAAW;AACpB,WAAK,KAAK,WAAW;AACrB,UAAK,KAAK,MAAO;AACb,YAAK,gBAAgB,QAAQ,KAAK,eAAe;AAAW;AAC5D,eAAO,eAAgB,MAAM,cAAc,EAAE,OAAO,UAAU,cAAc,KAAK,CAAE;AAAA,MACvF;AACA,aAAO,KAAK,SAAU,QAAS;AAAA,IACnC;AAAA,EACJ;AACA,SAAO,yBAAyB;AAChC,SAAO;AACX;;;AC/CA,IAAqB,qBAArB,cAAgD,gBAAgB;AAAA,EAC5D,YAAa,UAAW;AACpB,UAAM;AACN,aAAU,cAAY;AAClB,YAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB;AAC7C,eAAS,eAAgB,MAAM,SAAS,EAAE,OAAO,UAAU,cAAc,MAAM,YAAY,KAAK,CAAE;AAAA,IACtG,GAAG,IAAK;AAAA,EACZ;AACJ;;;ACbA,IAAqB,wBAArB,cAAmD,MAAM;AAAC;;;ACU1D,IAAqB,cAArB,MAAiC;AAAA,EAK7B,OAAO,SAAU,MAAO;AACpB,WAAO,IAAK,IAAK,EAAE,IAAK,oBAAqB,KAAK,IAAI,KAAM,IAAK;AAAE;AAAA,EACvE;AAAA,EAKA,YAAa,MAAO;AAChB,QAAK,IAAK,EAAE,IAAK,oBAAqB,GAAG,QAAQ;AACjD,QAAK,IAAK,EAAE,IAAK,sBAAsB,IAAK;AAC5C,UAAM,OAAO,EAAE,MAAM,UAAU,oBAAI,MAAI;AACvC,WAAO,eAAgB,MAAM,KAAK,EAAE,KAAK,MAAM,KAAK,CAAE;AAAA,EAC1D;AAAA,EAKA,CAAE,OAAO,YAAc;AAAE,WAAO,KAAM,KAAM,SAAU,OAAO,UAAW;AAAA,EAAG;AAAA,EAK3E,IAAI,SAAS;AAAE,WAAO,KAAM,KAAM,SAAS;AAAA,EAAM;AAAA,EAKjD,QAAS,MAAO;AACZ,WAAO,CAAE,GAAG,KAAM,KAAM,QAAS,EAAE,KAAM,SAAO;AAC5C,UAAK,OAAO,KAAM,OAAQ;AAAa,eAAO,KAAM,GAAK,GAAI;AAC7D,aAAO,IAAI,YAAY,SAAS,KAAM,MAAS,EAAC,KAAM,MAAO,IAAI,WAAW,KAAM;AAAA,IACtF,CAAE;AAAA,EACN;AAAA,EAKA,OAAQ,KAAM;AACV,QAAK,CAAG,gBAAe;AAAc,YAAM,IAAI,UAAW,6CAA8C;AACxG,QAAK,KAAK,KAAM,IAAI,YAAY,MAAM,IAAI,MAAO,GAAI;AACjD,YAAM,IAAI,sBAAuB,yBAA0B,IAAI,YAAY,QAAU,IAAI,SAAS,gBAAiB,IAAI,YAAa,oBAAsB;AAAA,IAC9J;AACA,SAAM,KAAM,SAAS,IAAK,GAAI;AAC9B,QAAI,WAAY,KAAM,KAAM,IAAK;AAAA,EACrC;AAAA,EAKA,OAAQ,KAAM;AACV,QAAI,QAAS,KAAM,KAAM,IAAK;AAC9B,SAAM,KAAM,SAAS,OAAQ,GAAI;AAAA,EACrC;AAAA,EAKA,WAAY,MAAO;AACf,WAAO,IAAI,mBAAoB,CAAE,SAAS,qBAAsB;AAC5D,UAAK,OAAO,KAAM,KAAK,SAAS,OAAQ,YAAa;AACjD,YAAK,CAAC,KAAM,KAAK,SAAS,IAAM;AAAE,eAAM,KAAK,SAAS,KAAM;AAAA,QAAS,OAChE;AAAE,eAAK,KAAM,OAAQ;AAAA,QAAG;AAAA,MACjC;AAEA,UAAI;AACJ,UAAO,WAAU,KAAK,KAAM,SAAO,OAAO,QAAQ,YAAY,GAAI,MAAO,QAAQ,MAAO;AACpF,YAAK,QAAQ;AAAS,kBAAQ,OAAO,iBAAkB,SAAS,MAAM,iBAAiB,MAAM,CAAE;AAC/F,aAAM,KAAK,QAAS,OAAQ,KAAM,EAAE,GAAG,SAAS,QAAQ,iBAAiB,OAAO;AAAA,MACpF;AACA,YAAM,QAAQ,IAAM,gCAAwB,GAAK,GAAG,IAAK;AACzD,WAAM,KAAM,KAAK,cAAe,KAAM;AAAA,IAC1C,CAAE;AAAA,EACN;AAEJ;;;ACnFA,IAAqB,cAArB,MAAgC;AAAA,EAU5B,OAAO,gBAAgB;AAAE,WAAO,EAAE,MAAM,KAAK,KAAK;AAAA,EAAG;AAAA,EAKrD,YAAa,SAAS,MAAO;AACzB,WAAO,eAAgB,MAAM,UAAU,EAAE,KAAK,MAAM,OAAO,CAAE;AAC7D,WAAO,eAAgB,MAAM,iBAAiB,EAAE,OAAO,oBAAI,MAAI,CAAE;AAAA,EACrE;AAAA,EAKA,IAAI,UAAU;AACV,UAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,kBAAkB;AACxD,WAAO;AAAA,EACX;AAAA,EAKA,IAAI,OAAO;AAAE,WAAO,CAAE,IAAI,OAAO,UAAU,IAAI,OAAO,UAAW,EAAE,KAAM,OAAK,KAAK,gBAAgB,CAAE,IAAI,WAAW,KAAK,KAAK,aAAc,KAAK,QAAQ,YAAY,KAAK,WAAY;AAAA,EAAG;AAAA,EAKzL,WAAY,OAAQ;AAAA,EAAC;AAAA,EAKrB,OAAQ,OAAQ;AAAA,EAAC;AAAA,EAKjB,aAAc,OAAQ;AAAA,EAAC;AAAA,EAKvB,WAAY,OAAQ;AAChB,WAAO,MAAM,SAAS,KAAK,YAAY,QAClC,EAAC,MAAM,iBAAiB,MAAM,kBAAkB,KAAK;AAAA,EAC9D;AAAA,EAKA,YAAa,OAAQ;AACjB,QAAK,KAAK,YAAY,OAAO,MAAM,gBAAgB;AAAc;AACjE,QAAK,MAAM,SAAS,gBAAiB;AACjC,UAAK,CAAG,OAAM,kBAAkB,gBAAgB,MAAM,WAAW,KAAK;AAAO;AAC7E,YAAM,SAAS,oBAAI;AACnB,WAAK,cAAc,QAAS,uBAAqB;AAC7C,YAAK,CAAC,MAAM,OAAO,SAAU,kBAAkB,MAAO,KAAK,CAAC,MAAM,OAAO,WAAY,iBAAkB;AAAI;AAC3G,aAAK,cAAc,OAAQ,iBAAkB;AAC7C,aAAK,aAAc,iBAAkB;AACrC,eAAO,IAAK,iBAAkB;AAAA,MAClC,CAAE;AACF,UAAK,OAAO,MAAO;AAAE,eAAO,MAAM,YAAa,MAAO;AAAA,MAAG;AAAA,IAC7D;AACA,QAAK,MAAM,SAAS,kBAAmB;AACnC,UAAK,CAAC,KAAK,WAAY,KAAM;AAAI;AACjC,UAAK,MAAM,MAAO;AACd,aAAK,cAAc,IAAK,KAAM;AAC9B,aAAK,WAAY,KAAM;AACvB,cAAM,QAAQ,iBAAkB,SAAS,MAAM;AAC3C,eAAK,cAAc,OAAQ,KAAM;AACjC,eAAK,aAAc,KAAM;AAAA,QAC7B,CAAE;AAAA,MACN;AACA,YAAM,gBAAgB;AACtB,aAAO,KAAK,OAAQ,KAAM;AAAA,IAC9B;AAAA,EACJ;AAAA,EAKA,WAAY,MAAO;AACf,SAAK,OAAO;AACZ,SAAK,WAAW;AAChB,SAAK,iBAAkB,kBAAkB,IAAK;AAC9C,SAAK,iBAAkB,gBAAgB,IAAK;AAC5C,UAAM,EAAE,OAAO,WAAW,YAAY,SAAU,IAAK,EAAE,QAAS,gBAAgB,EAAE,MAAM,KAAK,YAAY,MAAM,QAAQ,KAAK,CAAE;AAC9H,YAAQ,QAAS,uBAAqB;AAClC,WAAK,cAAc,IAAK,iBAAkB;AAC1C,WAAK,WAAY,iBAAkB;AACnC,WAAK,OAAQ,iBAAkB;AAAA,IACnC,CAAE;AACF,WAAO;AAAA,EACX;AAAA,EAKA,QAAS,MAAO;AACZ,SAAK,WAAW;AAChB,SAAK,oBAAqB,kBAAkB,IAAK;AACjD,SAAK,oBAAqB,gBAAgB,IAAK;AAC/C,SAAK,cAAc,QAAS,uBAAqB;AAC7C,WAAK,cAAc,OAAQ,iBAAkB;AAC7C,WAAK,aAAc,iBAAkB;AACrC,YAAM,EAAE,WAAW;AACnB,wBAAkB,KAAK,WAAW;AAClC,aAAO,cAAe,iBAAkB;AAAA,IAC5C,CAAE;AACF,WAAO;AAAA,EACX;AAEJ;AAzHA,IAAqB,aAArB;AAKI,cALiB,YAKV;;;ACLX,IAAqB,mBAArB,cAA8C,WAAW;AAAA,EAOrD,OAAO,cAAe,SAAS,MAAO;AAClC,UAAM,UAAU,MAAM,cAAc;AACpC,QAAK,QAAQ,WAAY,GAAI,GAAI;AAC7B,YAAM,CAAE,kBAAkB,WAAW,QAAO,MAAO,CAAE,EAAE,MAAO,GAAI,EAAE,IAAK,OAAK,EAAE,KAAK,CAAE;AACvF,cAAQ,gBAAgB;AACxB,cAAQ,SAAS,QAAO,KAAM,GAAI;AAAA,IACtC,OAAO;AAAE,cAAQ,SAAS;AAAA,IAAQ;AAClC,WAAO;AAAA,EACX;AAAA,EAKA,IAAI,eAAe;AAAE,WAAO,KAAK,KAAM,KAAK,QAAQ,gBAAgB,IAAI;AAAA,EAAa;AAAA,EAKrF,OAAQ,OAAQ;AACZ,UAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB;AAE7C,UAAM,KAAK,YAAY,MAAM;AAG7B,QAAK,CAAG,OAAM,UAAU,IAAK,KAAK;AAAI,aAAO,MAAM,YAAa,SAAS,QAAS,KAAK,YAAa,CAAE;AACtG,QAAI,OAAS,OAAM,UAAU,IAAK,MAAO,GAAI,EAAE,IAAK,OAAK,EAAE,KAAK,CAAE,EAAE,OAAQ,OAAK,CAAE;AACnF,QAAK,CAAC,KAAK;AAAS,aAAO,MAAM,YAAY;AAC7C,WAAO,KAAK,KAAM,IAAK,KAAK,QAAQ,gBAAgB,IAAI,YAAc,GAAG,MAAO,GAAI,KAAK,CAAC;AAE1F,UAAM,KAAK,aAAa,SAAS,OAAQ,KAAK,cAAc,MAAM,SAAS,KAAK,gBAAc;AAC1F,UAAK,KAAK;AAAW;AACrB,YAAM,YAAa,WAAW,KAAM;AAAA,IACxC,GAAG,EAAE,MAAM,MAAM,MAAM,QAAQ,MAAM,QAAQ,YAAY,KAAK,CAAE;AAAA,EACpE;AAAA,EAKA,aAAc,OAAQ;AAAE,UAAM,KAAK,YAAY,MAAM;AAAA,EAAG;AAC5D;AA5CI,cAFiB,kBAEV,QAAO;;;ACGH,cAAc,UAAU,CAAC,GAAG;AAC1C,QAAM,EAAE,QAAQ,oBAAW,MAAM,KAAK,MAAM,mBAAmB,SAAS;AAAA,IACvE,MAAM,EAAE,WAAW,aAAa,KAAK,KAAM;AAAA,IAC3C,KAAK,EAAE,WAAW,YAAa;AAAA,IAC/B,QAAQ,EAAE,cAAc,KAAK,iBAAiB,IAAI;AAAA,IAClD,QAAQ,EAAE,WAAW,WAAW,WAAW,WAAW,WAAW,KAAK;AAAA,EACvE,CAAC;AACD,SAAO,cAAc,IAAI,QAAO,IAAI,OAAO,OAAO,KAAK,GAAG;AAC1D,SAAO,oBAAoB,IAAI,QAAO,IAAI,OAAO,OAAO,KAAK,SAAS;AACtE,UAAO,OAAO,mBAAmB;AACjC,aAAW,KAAK,SAAQ,MAAM;AAC9B,WAAS,KAAK,SAAQ,MAAM;AAC7B;AASA,iBAAiB,QAAQ;AACxB,QAAM,EAAE,cAAc,oBAAqB,OAAO;AAClD,SAAO;AAAA,IACN,OAAO,KAAK,OAAO,GAAG;AAAE,aAAO,CAAC,GAAG,GAAG,EAAE,IAAI,OAAK,CAAC,KAAK,KAAK,CAAC,IAAK,SAAS,IAAI,OAAO,MAAM,KAAK,MAAO,CAAC,EAAE,KAAK,EAAE;AAAA,IAAG;AAAA,IACrH,aAAa,aAAa,GAAG;AAAE,aAAO,aAAa,KAAK,OAAO,cAAc,UAAU,IAAI;AAAA,IAAc;AAAA,IACzG,gBAAgB,aAAa,GAAG;AAAE,aAAO,aAAa,KAAK,OAAO,iBAAiB,UAAU,IAAI;AAAA,IAAiB;AAAA,IAClH,OAAO,KAAK,aAAa,GAAG;AAAE,aAAO,IAAI,WAAW,KAAK,aAAa,UAAU,CAAC,KAAK,IAAI,SAAS,KAAK,gBAAgB,UAAU,CAAC;AAAA,IAAG;AAAA,IAEtI,OAAO,MAAM,KAAK,aAAa,GAAG;AAAE,aAAO,KAAK,SAAS,OAAO,IAAI,MAAM,GAAG,KAAK,aAAa,UAAU,IAAI,OAAO,KAAK,gBAAgB,UAAU,IAAI;AAAA,IAAO;AAAA,IAC9J,SAAS,KAAK,aAAa,GAAG;AAAE,aAAO,KAAK,OAAO,GAAG,IAAI,IAAI,MAAM,KAAK,gBAAgB,UAAU,CAAC,EAAE,KAAK;AAAA,IAAK;AAAA,IAChH,aAAa,KAAK,aAAa,GAAG;AAAE,aAAO,KAAK,OAAO,GAAG,IAAI,GAAG,KAAK,aAAa,UAAU,IAAI,IAAI,MAAM,KAAK,gBAAgB,UAAU,CAAC,EAAE,OAAO;AAAA,IAAK;AAAA,EAC1J;AACD;AAYO,yBAAyB,cAAc,eAAe,gBAAgB,MAAM,aAAa,GAAG;AAClG,QAAM,UAAS,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,iBAAiB,iBAAiB;AACxF,QAAM,WAAW,QAAQ,MAAM;AAE/B,QAAM,QAAQ,IAAI,OAAO,GAAG,gBAAgB,YAAY,OAAO,SAAS,aAAa,aAAa,CAAC,aAAa,SAAS,gBAAgB,aAAa,CAAC,0BAA0B,GAAG;AAEpL,QAAM,CAAC,MAAM,QAAQ,YAAY,cAAc,GAAG,EAAE,OAAO,CAAC,CAAC,OAAM,QAAO,aAAa;AAEtF,QAAI,aAAa;AACjB,eAAW,SAAS,QAAQ,OAAO,CAAC,OAAO,mBAAmB,sBAAsB,IAAI,UAAU;AACjG,UAAI,CAAC,aAAa;AAIjB,sBAAc,CAAC,GAAG,SAAS,SAAS,6BAA6B,CAAC;AAAA,MACnE;AAEA,UAAI,YAAY,KAAK,OAAK,QAAQ,EAAE,SAAS,QAAQ,MAAM,SAAS,EAAE,QAAQ,EAAE,GAAG,MAAM;AAAG,eAAO;AAEnG,UAAI,UAAU,UAAU;AACvB,2BAAmB;AACnB,eAAO;AAAA,MACR;AACA,YAAM,WAAW,qBAAqB,CAAC;AACvC,YAAM,SAAS,qBAAqB;AACpC,UAAI,QAAQ;AACX,eAAO,IAAI,SAAS,OAAO,MAAM,QAAQ,KAAK,EAAE,GAAG,CAAC;AAAA,MACrD;AAEA,UAAI,UAAU;AACb,YAAI,OAAO,KAAK,QAAQ,QAAQ,iBAAiB,CAAC,cAAc,SAAS,OAAO,GAAG;AAClF,iBAAO,IAAI,SAAS,OAAO,eAAe,IAAI,CAAC;AAAA,QAChD;AAAA,MAED;AAEA,UAAI;AACJ,UAAI,OAAO,KAAK,QAAQ,MAAM;AAC7B,kBAAU,QAAQ,YAAY,SAAS,aAAa,UAAU,YAAY,SAAS,gBAAgB,UAAU,IAAI;AAAA,MAClH,OAAO;AACN,kBAAU,QAAQ,OAAO,QAAO,IAAI,OAAO,OAAO,KAAK,GAAG,MAAM;AAAA,MACjE;AACA,aAAO,WAAW,OAAO,gBAAgB,gBAAgB,gBAAgB,MAAM,KAAK,OAAO,yBAAyB;AAAA,IACrH,CAAC;AAED,WAAO,mBAAmB,CAAC,OAAM,MAAK,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAK,OAAO,QAAQ,GAAG,KAAI;AAAA,EACvF,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AAEX,MAAI;AACJ,MAAI,iBAAiB,KAAK,QAAQ;AACjC,sBAAkB,CAAC,KAAK,SAAS,IAAI,GAAG,qBAAqB,KAAK,KAAK,IAAI,OAAO,GAAG,iBAAiB,KAAK,MAAM,KAAK,KAAK,IAAI,CAAC,EAAE,OAAO,OAAK,CAAC,EAAE,KAAK,IAAI;AAAA,EAC3J,OAAO;AACN,sBAAkB,CAAC,GAAG,MAAM,GAAG,IAAI,EAAE,KAAK,IAAI;AAAA,EAC/C;AACA,SAAO;AACR;AAOO,+BAA+B,MAAM;AAC3C,QAAM,UAAS;AACf,MAAI,CAAC,IAAI,IAAI,EAAE,IAAI,WAAW,GAAG;AAChC,UAAM,eAAe,uBAAO,OAAO,IAAI;AACvC,QAAI,IAAI,EAAE,IAAI,aAAa,YAAY;AACvC,UAAM,iBAAiB,CAAC,QAAO,UAAU,QAAO,UAAU,EAAE,KAAK,OAAK,gBAAgB,CAAC;AACvF,WAAO,eAAe,cAAc,OAAO,aAAa;AAAA,MACvD,MAAM;AACL,eAAO,iBAAiB,0BAA0B;AAAA,MACnD;AAAA,IACD,CAAC;AAAA,EACF;AACA,SAAO,IAAI,IAAI,EAAE,IAAI,WAAW;AACjC;AAQO,iCAAiC,MAAM,QAAQ,OAAO;AAC5D,QAAM,UAAS,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,iBAAiB,iBAAiB;AACxF,QAAM,iBAAiB,CAAC,QAAO,UAAU,QAAO,UAAU,EAAE,KAAK,OAAK,gBAAgB,CAAC;AACvF,SAAO,sBAAsB,KAAK,SAAQ,iBAAiB,OAAS,SAAQ,KAAK,aAAa,OAAO,UAAqD,OAAO,iBAAiB,KAAK,KAAK,YAAY,CAAE;AAC3M;AAOO,0BAA0B,cAAc;AAC9C,QAAM,iBAAiB,OAAO,UAAU,SAAS,KAAK,YAAY,MAAM;AACxE,SAAQ,WAAU,YAAY,KAAK,QAAQ,YAAY,KAAM,kBAAiB,UAAU;AACzF;AASA,oBAAoB,QAAQ;AAC3B,QAAM,UAAS,MAAM,EAAE,QAAQ,EAAE,eAAe;AAEhD,GAAC,QAAO,SAAS,WAAW,QAAO,QAAQ,WAAW,QAAO,WAAW,SAAS,EAAE,QAAQ,eAAa;AAEvG,UAAM,OAAO,cAAc,QAAO,SAAS,YAAY,aAAc,cAAc,QAAO,WAAW,YAAY,eAAe;AAChI,QAAI,OAAO,IAAI,aAAa,WAAW;AAAE,YAAM,IAAI,MAAM,OAAO,iCAAiC,OAAO,IAAI,iBAAiB;AAAA,IAAG;AAEhI,WAAO,eAAe,WAAW,OAAO,IAAI,WAAW;AAAA,MACtD,KAAK,WAAY;AAChB,eAAO,SAAS,MAAM,sBAAsB,KAAK,SAAQ,IAAI,CAAC;AAAA,MAC/D;AAAA,IACD,CAAC;AAAA,EACF,CAAC;AACF;AASA,kBAAkB,QAAQ;AACzB,QAAM,UAAS,MAAM,EAAE,QAAQ,EAAE,UAAU,SAAS,QAAQ,EAAE,WAAW,0CAAuB;AAOhG,QAAM,cAAc,CAAC,aAAa,iBAAiB,mBAAmB,oBAAoB,aAAc;AACxG,QAAM,aAAa,CAAC,OAAO,QAAQ,QAAQ,yBAAyB,gBAAgB,qBAAqB,eAAe;AACxH,QAAM,WAAW,CAAC,OAAO,KAAK,KAAK,GAAG,aAAa,GAAG,UAAU;AAChE,QAAM,SAAS,EAAE,IAAI,MAAyC,KAAK,WAAW,aAAa,YAAY,iBAAiB,gBAAgB,mBAAmB,kBAAkB,oBAAoB,mBAAmB,eAAe,cAAc,yBAAyB,wBAAwB,gBAAgB,eAAe,qBAAqB,oBAAoB,iBAAiB,uBAAuB;AAClZ,QAAM,WAAW,QAAQ,MAAM;AAC/B,QAAM,iBAAiB,CAAC,MAAM,UAAU,WAAW;AAClD,QAAI,CAAC,2BAA2B,MAAM,QAAQ,KAAK,IAAI,MAAM,eAAe,EAAE,IAAI,QAAQ,GAAG;AAC5F,aAAO,IAAI,MAAM,eAAe,EAAE,IAAI,QAAQ;AAAA,IAC/C;AACA,UAAM,QAAQ,OAAO;AACrB,QAAI,2BAA2B,MAAM,QAAQ;AAAG,aAAO;AACvD,WAAO,SAAS,MAAM,MAAM,GAAG,EAAE,IAAI,OAAM,KAAI,EAAE,KAAK,MAAO,cAAa,OAAO,KAAK,MAAM,SAAS,WAAW,SAAS,cAAc,KAAK,UAAU,CAAC,CAAC,EAAE,KAAK,GAAG;AAAA,EACnK;AAGA,QAAM,sBAAsB,OAAO,yBAAyB,QAAO,SAAS,WAAW,gBAAgB;AACvG,SAAO,eAAe,QAAO,SAAS,WAAW,kBAAkB;AAAA,IAClE,GAAG;AAAA,IAAqB,MAAM,IAAI;AACjC,aAAO,KAAK,cAAc,IAAI,IAAI;AAAA,IACnC;AAAA,EACD,CAAC;AAED,aAAW,YAAY,CAAC,iBAAiB,kBAAkB,GAAG;AAC7D,eAAW,WAAW,CAAC,QAAO,UAAU,QAAO,OAAO,GAAG;AACxD,YAAM,qBAAqB,OAAO,yBAAyB,QAAQ,WAAW,QAAQ;AACtF,aAAO,eAAe,QAAQ,WAAW,UAAU;AAAA,QAClD,GAAG;AAAA,QAAoB,MAAM,UAAU;AACtC,iBAAO,mBAAmB,MAAM,KAAK,MAAM,gBAAgB,KAAK,SAAQ,UAAU,iBAAiB,sBAAsB,KAAK,SAAQ,IAAI,CAAC,CAAC,CAAC;AAAA,QAC9I;AAAA,MACD,CAAC;AAAA,IACF;AAAA,EACD;AAEA,QAAM,oBAAoB,OAAO,yBAAyB,QAAO,QAAQ,WAAW,cAAc;AAClG,SAAO,eAAe,QAAO,QAAQ,WAAW,gBAAgB;AAAA,IAC/D,GAAG;AAAA,IAAmB,MAAM,UAAU;AACrC,YAAM,SAAS,MAAM,kBAAkB,MAAM,KAAK,MAAM,QAAQ;AAChE,aAAO,SAAS,SAAS,QAAQ,KAAK,CAAC,IAAI,MAAM,MAAM,EAAE,IAAI,QAAQ,IAAI,eAAe,MAAM,UAAU,MAAM,IAAI,OAAO;AAAA,IAC1H;AAAA,EACD,CAAC;AAED,QAAM,gBAAgB,OAAO,yBAAyB,QAAO,KAAK,WAAW,OAAO;AACpF,SAAO,eAAe,QAAO,KAAK,WAAW,SAAS;AAAA,IACrD,GAAG;AAAA,IAAe,MAAM;AACvB,YAAM,SAAS,MAAM,cAAc,IAAI,KAAK,IAAI;AAChD,aAAO,SAAS,SAAS,KAAK,IAAI,IAAI,eAAe,KAAK,cAAc,KAAK,MAAM,MAAM,IAAI,OAAO;AAAA,IACrG;AAAA,EACD,CAAC;AACD,QAAM,iBAAiB,OAAO,yBAAyB,QAAO,KAAK,WAAW,WAAW;AACzF,SAAO,eAAe,QAAO,KAAK,WAAW,aAAa;AAAA,IACzD,GAAG;AAAA,IAAgB,MAAM;AACxB,YAAM,SAAS,MAAM,eAAe,IAAI,KAAK,IAAI;AACjD,aAAO,gBAAgB,QAAO,QAAQ,SAAS,SAAS,KAAK,IAAI,IAAI,eAAe,KAAK,cAAc,KAAK,MAAM,MAAM,IAAI,OAAO;AAAA,IACpI;AAAA,EACD,CAAC;AAED,aAAW,YAAY,UAAU;AAChC,QAAI,CAAE,aAAY;AAAS;AAC3B,UAAM,UAAU,aAAa,QAAQ,CAAC,QAAO,kBAAkB,QAAO,iBAAiB,IACnF,aAAa,kBAAkB,CAAC,QAAO,mBAAmB,QAAO,gBAAgB,IAAI,CAAC,QAAO,OAAO;AACxG,eAAW,UAAU,SAAS;AAC7B,YAAM,iBAAgB,OAAO,yBAAyB,OAAO,WAAW,OAAO,SAAS;AACxF,UAAI,CAAC;AAAe;AACpB,aAAO,eAAe,OAAO,WAAW,OAAO,WAAW;AAAA,QACzD,GAAG;AAAA,QAAe,MAAM;AACvB,gBAAM,SAAS,MAAM,eAAc,IAAI,KAAK,MAAM,QAAQ;AAC1D,iBAAO,eAAe,MAAM,UAAU,MAAM;AAAA,QAC7C;AAAA,MACD,CAAC;AAAA,IACF;AAAA,EACD;AACA,MAAI,OAAO,KAAK,QAAQ,MAAM;AAE7B,WAAO,eAAe,QAAO,QAAQ,WAAW,OAAO,KAAK,KAAK;AAAA,MAChE,cAAc;AAAA,MAAM,YAAY;AAAA,MAAM,MAAM;AAC3C,eAAO,KAAK,aAAa,OAAO,KAAK,GAAG;AAAA,MACzC;AAAA,MAAG,IAAI,OAAO;AACb,eAAO,KAAK,aAAa,OAAO,KAAK,KAAK,KAAK;AAAA,MAChD;AAAA,IACD,CAAC;AAAA,EACF;AAKA,QAAM,aAAa,CAAC,OAAO,UAAU,OAAO,aAAa;AACxD,WAAO,yBAAwB,OAAO,UAAU,MAAM;AACrD,UAAI,OAAO,UAAU;AAAY,gBAAQ,MAAM;AAC/C,aAAO,SAAS,KAAK;AAAA,IACtB,CAAC;AAAA,EACF;AACA,QAAM,eAAe,CAAC,OAAO,UAAU,OAAO,kBAAkB,SAAS;AACxE,eAAW,OAAO,UAAU,OAAO,YAAS;AAC3C,YAAM,YAAY,aAAa,OAAO,KAAK;AAC3C,YAAM,eAAe,mBAAmB,wBAAwB,KAAK,SAAQ,OAAO,SAAS;AAC7F,YAAM,gBAAgB,iBAAiB,YAAY;AACnD,UAAI,WAAW;AACd,cAAM,KAAK,SAAS,SAAS,MAAK;AAClC,YAAI,SAAS,IAAI,cAAc,EAAE,MAAM,OAAO;AAC7C,gBAAM,OAAO,SAAS,OAAO,eAAe,EAAE;AAC9C,cAAI,SAAS,QAAO;AAAE,kBAAM,aAAa,MAAM,IAAI;AAAA,UAAG;AACtD,mBAAS,IAAI,cAAc,IAAI,KAAK;AAAA,QACrC;AAAA,MACD,OAAO;AACN,YAAI,OAAO,eAAe,EAAE,IAAI,UAAU,MAAK;AAC/C,cAAM,eAAe,OAAM,MAAM,GAAG,EAAE,IAAI,WAAU,SAAQ,MAAM,KAAK,MAAM,SAAS,OAAO,KAAK,IAAI,QAAQ,SAAS,OAAO,eAAe,KAAK,CAAC,EAAE,KAAK,GAAG;AAC7J,cAAM,aAAa,UAAU,YAAY;AACzC,YAAI,YAAY,EAAE,IAAI,UAAU,IAAI,YAAY,EAAE,IAAI,QAAQ,KAAK,oBAAI,KAAG;AAC1E,YAAI,YAAY,EAAE,IAAI,QAAQ,EAAE,IAAI,KAAK;AAAA,MAC1C;AAAA,IACD,CAAC;AAAA,EACF;AACA,QAAM,iBAAiB,CAAC,OAAO,UAAU,UAAU,mBAAmB,SAAS;AAC9E,eAAW,OAAO,UAAU,UAAU,eAAY;AACjD,YAAM,YAAY,aAAa,OAAO,KAAK;AAC3C,YAAM,eAAe,oBAAoB,wBAAwB,KAAK,SAAQ,OAAO,SAAS;AAC9F,UAAI,WAAW;AACd,cAAM,KAAK,SAAS,SAAS,SAAQ;AACrC,YAAI,SAAS,IAAI,cAAc,EAAE,MAAM,OAAO;AAC7C,mBAAS,eAAe,cAAc,EAAE;AAAA,QACzC;AAAA,MACD,OAAO;AACN,cAAM,eAAe,IAAI,OAAO,eAAe,EAAE,IAAI,QAAQ;AAC7D,YAAI,MAAM,aAAa,QAAQ;AAAG,gBAAM,aAAa,UAAU,YAAY;AAC3E,YAAI,YAAY,EAAE,IAAI,QAAQ,GAAG,OAAO,KAAK;AAAA,MAC9C;AAAA,IACD,CAAC;AAAA,EACF;AAKA,UAAQ,SAAS,QAAO,QAAQ,EAAE,MAAM,OAAO,mBAAmB,YAAU;AAC3E,UAAM,cAAc,CAAC,OAAO,UAAU,iBAAiB,oBAAoB;AAC1E,UAAI,CAAC,MAAM,aAAa,QAAQ;AAAG;AACnC,YAAM,YAAY,MAAM,MAAM,aAAa,QAAQ;AACnD,qBAAe,OAAO,UAAU,WAA6C,eAAe;AAC5F,UAAI,MAAM,aAAa;AAAE,qBAAa,OAAO,UAAU,IAAI,OAAO,eAAe,EAAE,IAAI,QAAQ,KAA+B,WAA6B,eAAe;AAAA,MAAG;AAAA,IAC9K;AACA,WAAO,MAAM,QAAQ,WAAS;AAC7B,UAAI,MAAM,aAAa;AACtB,cAAM,eAAe,sBAAsB,KAAK,SAAQ,KAAK;AAE7D,mBAAW,QAAQ,oBAAI,IAAI,CAAC,GAAG,OAAO,OAAO,YAAY,GAAG,GAAI,IAAI,YAAY,EAAE,IAAI,QAAQ,KAAK,CAAC,CAAE,CAAC,GAAG;AACzG,qBAAW,YAAY,UAAU;AAAE,wBAAY,MAAM,UAAU,YAAY;AAAA,UAAG;AAAA,QAC/E;AAAA,MACD;AAEA,YAAM,cAAc,MAAM,QAAQ,YAAY,IAAI;AAClD,YAAM,MAAM,YAAY,KAAK,kBAAiB,IAAI;AAElD,UAAI,KAAK;AAAE,oBAAY,OAAO,GAAG;AAAA,MAAG;AAAA,IACrC,CAAC;AACD,WAAO,SAAS,QAAQ,WAAS;AAEhC,UAAI;AACJ,YAAM,oBAAoB,wBAAwB,KAAK,SAAQ,OAAO,IAAI;AAC1E,iBAAW,QAAQ,oBAAI,IAAI,CAAC,GAAG,OAAO,OAAO,iBAAiB,GAAG,GAAI,IAAI,iBAAiB,EAAE,IAAI,QAAQ,KAAK,CAAC,CAAE,CAAC,GAAG;AACnH,YAAK,wBAAuB,wBAAwB,KAAK,SAAQ,MAAM,IAAI,OAAO;AAAmB;AACrG,mBAAW,YAAY,UAAU;AAAE,sBAAY,MAAM,UAAU,mBAAmB,oBAAoB;AAAA,QAAG;AAAA,MAC1G;AAEA,YAAM,cAAc,MAAM,QAAQ,YAAY,IAAI;AAClD,UAAI,CAAC,YAAY,KAAK,kBAAiB,IAAI,GAAG;AAAE,oBAAY,OAAO,IAAI,mBAAgB;AAAA,MAAG;AAAA,IAC3F,CAAC;AAAA,EACF,GAAG,EAAE,IAAI,4BAA4B,MAAM,MAAM,SAAS,eAAe,QAAQ,QAAQ,mBAAmB,MAAM,cAAc,KAAK,CAAC;AAGtI,UAAQ,SAAS,QAAO,QAAQ,EAAE,MAAM,IAAI,SAAS,IAAI,cAAY,QAAO,IAAI,OAAO,QAAQ,CAAC,EAAE,KAAK,KAAK,MAAM,YAAU;AAE3H,UAAM,uBAAuB,EAAE,OAAO,oBAAI,OAAK,UAAU,oBAAI,MAAK;AAClE,eAAW,YAAY,UAAU;AAEhC,YAAM,wBAAwB,aAAa,OAAO,KAAK,MAAM,qBAAqB,QAAQ,qBAAqB;AAC/G,aAAO,MAAM,QAAQ,WAAS;AAC7B,YAAI,CAAC,MAAM,aAAa,QAAQ;AAAG;AAEnC,YAAI,sBAAsB,sBAAsB,IAAI,KAAK;AACzD,YAAI,OAAO,wBAAwB,aAAa;AAC/C,gCAAuB,cAAa,OAAO,KAAK,MAAM,MAAM,aAAa,QAAQ,UAAqD,OAAO,iBAAiB,KAAK,MAAM,YAAY,EAAE;AACvL,gCAAsB,IAAI,OAAO,mBAAmB;AAAA,QACrD;AACA,YAAI,uBAAuB,CAAC,oBAAoB;AAAa;AAC7D,uBAAe,OAAO,UAAU,MAAM,MAAM,aAAa,QAAQ,CAAmC;AAAA,MACrG,CAAC;AACD,aAAO,SAAS,QAAQ,WAAS;AAChC,YAAI,CAAC,MAAM,aAAa,QAAQ;AAAG;AACnC,qBAAa,OAAO,UAAU,MAAM,MAAM,aAAa,QAAQ,CAAuD;AAAA,MACvH,CAAC;AAAA,IACF;AACA,yBAAqB,MAAM,MAAM;AACjC,yBAAqB,SAAS,MAAM;AAAA,EACrC,GAAG,EAAE,IAAI,wBAAwB,MAAM,MAAM,SAAS,eAAe,QAAQ,OAAO,CAAC;AAErF,UAAQ,SAAS,QAAO,UAAU,MAAM,EAAE,QAAQ,UAAU,aAAW;AACtE,eAAW,UAAU,SAAS;AAC7B,UAAI,OAAO,YAAY,OAAO,UAAU,OAAO,UAAU;AACxD,uBAAe,OAAO,QAAQ,OAAO,MAAM,OAAO,QAA0C;AAAA,MAC7F;AACA,UAAI,OAAO,SAAS,OAAO,UAAU,OAAO,UAAU;AACrD,qBAAa,OAAO,QAAQ,OAAO,MAAM,OAAO,KAA2D;AAAA,MAC5G;AAAA,IACD;AAAA,EACD,GAAG,EAAE,IAAI,8BAA8B,SAAS,eAAe,QAAQ,QAAQ,UAAU,MAAM,UAAU,KAAK,CAAC;AAK/G,MAAI;AACJ,QAAM,iBAAiB,MAAM;AAC5B,QAAI,CAAC,QAAO,SAAS,MAAM,WAAW,IAAI,SAAS,aAAa,GAAG;AAAG;AACtE,UAAM,OAAO,QAAO,SAAS,MAAM,UAAU,IAAI,SAAS,aAAa,IAAI,MAAM,EAAE,MAAM,GAAG,EAAE,IAAI,OAAK,EAAE,KAAK,CAAC,EAAE,OAAO,OAAK,CAAC,KAAK,CAAC;AACpI,UAAM,aAAa,KAAK,OAAO,CAAC,MAAM,YAAY,QAAQ,KAAK,OAAO,IAAI,WAAW,UAAU,QAAO,QAAQ;AAC9G,QAAI,cAAc,OAAO,OAAO,WAAW;AAAE,iBAAW,UAAU,OAAO,OAAO,OAAO,WAAW,KAAK;AAAA,IAAG;AAC1G,QAAI,cAAc,eAAe,QAAO,UAAU;AACjD,UAAI,OAAO,OAAO,WAAW;AAAE,mBAAW,UAAU,OAAO,OAAO,OAAO,WAAW,IAAI;AAAA,MAAG;AAC3F,UAAI,OAAO,OAAO,WAAW;AAAE,mBAAW,cAAc,IAAI,QAAO,YAAY,OAAO,OAAO,SAAS,CAAC;AAAA,MAAG;AAC1G,UAAI,OAAO,OAAO,aAAa,KAAK,SAAS,GAAG;AAAE,mBAAW,eAAe;AAAA,MAAG;AAC/E,mBAAa;AAAA,IACd;AAAA,EACD;AAEA,UAAO,iBAAiB,cAAc,cAAc;AACpD,UAAQ,MAAM,cAAc;AAE7B;;;AC1ZA,KAAK,KAAM,MAAO;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|