{"version":3,"sources":["../../../mam.jam.js","-","../../../mam.ts","../../../mol/decor/mol/decor/decor.ts","../../../mol/style/unit/mol/style/unit/unit.ts","../../../mol/style/func/mol/style/func/func.ts","../../../mol/ambient/mol/ambient/ambient.ts","../../../mol/delegate/mol/delegate/delegate.ts","../../../mol/owning/mol/owning/owning.ts","../../../mol/fail/mol/fail/fail.ts","../../../mol/fail/hidden/mol/fail/hidden/hidden.ts","../../../mol/type/writable/writable.ts","../../../mol/object2/mol/object2/object2.ts","../../../mol/after/tick/mol/after/tick/tick.ts","../../../mol/dom/context/mol/dom/context/context.ts","../../../mol/dom/context/mol/dom/context/context.web.ts","../../../mol/style/attach/mol/style/attach/attach.ts","../../../mol/theme/-css/mol/theme/-css/theme.css.ts","../../../mol/theme/mol/theme/theme.ts","../../../mol/gap/-css/mol/gap/-css/gap.css.ts","../../../mol/gap/mol/gap/gap.ts","../../../mol/object/mol/object/object.ts","../../../mol/wire/cursor/mol/wire/cursor/cursor.ts","../../../mol/wire/pub/mol/wire/pub/pub.ts","../../../mol/wire/sub/sub.ts","../../../mol/wire/mol/wire/wire.ts","../../../mol/dev/format/mol/dev/format/format.ts","../../../mol/wire/pub/sub/mol/wire/pub/sub/sub.ts","../../../mol/after/frame/mol/after/frame/frame.web.ts","../../../mol/wire/fiber/mol/wire/fiber/fiber.ts","../../../mol/func/name/mol/func/name/name.ts","../../../mol/guid/mol/guid/guid.ts","../../../mol/key/mol/key/key.ts","../../../mol/compare/deep/mol/compare/deep/deep.ts","../../../mol/wire/task/mol/wire/task/task.ts","../../../mol/wire/method/mol/wire/method/method.ts","../../../mol/type/tail/tail.ts","../../../mol/type/foot/foot.ts","../../../mol/fail/catch/mol/fail/catch/catch.ts","../../../mol/fail/log/mol/fail/log/log.ts","../../../mol/wire/atom/mol/wire/atom/atom.ts","../../../mol/wire/solo/mol/wire/solo/solo.ts","../../../mol/wire/plex/mol/wire/plex/plex.ts","../../../mol/mem/mol/mem/mem.ts","../../../mol/window/mol/window/window.web.ts","../../../mol/view/selection/mol/view/selection/selection.ts","../../../mol/maybe/mol/maybe/maybe.ts","../../../mol/view/selection/mol/view/selection/selection.web.ts","../../../mol/wrapper/mol/wrapper/wrapper.ts","../../../mol/memo/mol/memo/memo.ts","../../../mol/dom/qname/mol/dom/qname/qname.ts","../../../mol/wire/probe/mol/wire/probe/probe.ts","../../../mol/wire/watch/mol/wire/watch/watch.ts","../../../mol/wire/solid/mol/wire/solid/solid.ts","../../../mol/const/mol/const/const.ts","../../../mol/dom/render/attributes/mol/dom/render/attributes/attributes.ts","../../../mol/wire/async/mol/wire/async/async.ts","../../../mol/dom/render/events/mol/dom/render/events/events.ts","../../../mol/dom/render/styles/mol/dom/render/styles/styles.ts","../../../mol/dom/render/children/mol/dom/render/children/children.ts","../../../mol/dom/render/fields/mol/dom/render/fields/fields.ts","../../../mol/type/keys/extract/extract.ts","../../../mol/type/pick/pick.ts","../../../mol/view/view/mol/view/view/view.ts","../../../mol/view/view/-css/mol/view/view/-css/view.css.ts","../../../mol/view/view/mol/view/view/view.web.ts","../../../mol/type/result/result.ts","../../../mol/type/error/error.ts","../../../mol/type/override/override.ts","../../../mol/style/properties/properties.ts","../../../mol/style/pseudo/class.ts","../../../mol/style/pseudo/element.ts","../../../mol/style/guard/guard.ts","../../../mol/style/sheet/mol/style/sheet/sheet.ts","../../../mol/plugin/mol/plugin/plugin.ts","../../../mol/style/define/mol/style/define/define.ts","../../../mol/scroll/-view.tree/mol/scroll/-view.tree/scroll.view.tree.ts","../../../mol/dom/listener/mol/dom/listener/listener.ts","../../../mol/print/mol/print/print.ts","../../../mol/scroll/mol/scroll/scroll.view.css.ts","../../../mol/scroll/mol/scroll/scroll.view.ts","../../../mol/page/-view.tree/mol/page/-view.tree/page.view.tree.ts","../../../mol/page/mol/page/page.view.css.ts","../../../mol/link/-view.tree/mol/link/-view.tree/link.view.tree.ts","../../../mol/action/mol/action/action.ts","../../../mol/state/arg/mol/state/arg/arg.web.ts","../../../mol/link/mol/link/link.view.css.ts","../../../mol/link/mol/link/link.view.ts","../../../mol/image/-view.tree/mol/image/-view.tree/image.view.tree.ts","../../../mol/image/-css/mol/image/-css/image.view.css.ts","../../../mol/link/iconed/-view.tree/mol/link/iconed/-view.tree/iconed.view.tree.ts","../../../mol/link/iconed/-css/mol/link/iconed/-css/iconed.view.css.ts","../../../mol/link/iconed/mol/link/iconed/iconed.view.ts","../../../mol/theme/auto/-view.tree/mol/theme/auto/-view.tree/auto.view.tree.ts","../../../mol/state/local/mol/state/local/local.ts","../../../mol/state/local/mol/state/local/local.web.ts","../../../mol/lights/mol/lights/lights.ts","../../../mol/theme/auto/mol/theme/auto/auto.view.ts","../../../mol/pop/-view.tree/mol/pop/-view.tree/pop.view.tree.ts","../../../mol/layer/-css/mol/layer/-css/layer.css.ts","../../../mol/layer/mol/layer/layer.ts","../../../mol/pop/-css/mol/pop/-css/pop.view.css.ts","../../../mol/pop/mol/pop/pop.view.ts","../../../mol/speck/-view.tree/mol/speck/-view.tree/speck.view.tree.ts","../../../mol/speck/-css/mol/speck/-css/speck.view.css.ts","../../../mol/button/-view.tree/mol/button/-view.tree/button.view.tree.ts","../../../mol/keyboard/code/mol/keyboard/code/code.ts","../../../mol/button/-css/mol/button/-css/button.view.css.ts","../../../mol/button/mol/button/button.view.ts","../../../mol/button/typed/-view.tree/mol/button/typed/-view.tree/typed.view.tree.ts","../../../mol/button/typed/-css/mol/button/typed/-css/typed.view.css.ts","../../../mol/button/minor/-view.tree/mol/button/minor/-view.tree/minor.view.tree.ts","../../../mol/button/minor/-css/mol/button/minor/-css/minor.view.css.ts","../../../mol/hotkey/-view.tree/mol/hotkey/-view.tree/hotkey.view.tree.ts","../../../mol/hotkey/mol/hotkey/hotkey.view.ts","../../../mol/nav/-view.tree/mol/nav/-view.tree/nav.view.tree.ts","../../../mol/nav/mol/nav/nav.view.ts","../../../mol/charset/encoding/encoding.ts","../../../mol/charset/decode/mol/charset/decode/decode.ts","../../../node/node.ts","../../../node/node/node.web.ts","../../../mol/charset/encode/mol/charset/encode/encode.ts","../../../mol/file/mol/file/file.ts","../../../mol/wire/sync/mol/wire/sync/sync.ts","../../../mol/dom/parse/mol/dom/parse/parse.ts","../../../mol/fetch/mol/fetch/fetch.ts","../../../mol/file/mol/file/file.web.ts","../../../mol/locale/mol/locale/locale.ts","../../../mol/string/-view.tree/mol/string/-view.tree/string.view.tree.ts","../../../mol/string/-css/mol/string/-css/string.view.css.ts","../../../mol/string/mol/string/string.view.ts","../../../mol/svg/-view.tree/mol/svg/-view.tree/svg.view.tree.ts","../../../mol/after/timeout/mol/after/timeout/timeout.ts","../../../mol/state/time/mol/state/time/time.ts","../../../mol/svg/mol/svg/svg.view.ts","../../../mol/svg/root/-view.tree/mol/svg/root/-view.tree/root.view.tree.ts","../../../mol/svg/root/-css/mol/svg/root/-css/root.view.css.ts","../../../mol/svg/path/-view.tree/mol/svg/path/-view.tree/path.view.tree.ts","../../../mol/icon/-view.tree/mol/icon/-view.tree/icon.view.tree.ts","../../../mol/icon/-css/mol/icon/-css/icon.view.css.ts","../../../mol/icon/cross/-view.tree/mol/icon/cross/-view.tree/cross.view.tree.ts","../../../mol/list/-view.tree/mol/list/-view.tree/list.view.tree.ts","../../../mol/support/css/mol/support/css/css.ts","../../../mol/mem/cached/mol/mem/cached/cached.ts","../../../mol/list/-css/mol/list/-css/list.view.css.ts","../../../mol/list/mol/list/list.view.ts","../../../mol/paragraph/-view.tree/mol/paragraph/-view.tree/paragraph.view.tree.ts","../../../mol/paragraph/-css/mol/paragraph/-css/paragraph.view.css.ts","../../../mol/paragraph/mol/paragraph/paragraph.view.ts","../../../mol/dimmer/-view.tree/mol/dimmer/-view.tree/dimmer.view.tree.ts","../../../mol/type/equals/equals.ts","../../../mol/type/merge/merge.ts","../../../mol/type/intersect/intersect.ts","../../../mol/unicode/unicode.ts","../../../mol/regexp/mol/regexp/regexp.ts","../../../mol/dimmer/-css/mol/dimmer/-css/dimmer.view.css.ts","../../../mol/dimmer/mol/dimmer/dimmer.view.ts","../../../mol/search/-view.tree/mol/search/-view.tree/search.view.tree.ts","../../../mol/fiber/mol/fiber/fiber.ts","../../../mol/search/-css/mol/search/-css/search.view.css.ts","../../../mol/search/mol/search/search.view.ts","../../../mol/check/-view.tree/mol/check/-view.tree/check.view.tree.ts","../../../mol/check/-css/mol/check/-css/check.css.ts","../../../mol/check/mol/check/check.view.ts","../../../mol/check/icon/-view.tree/mol/check/icon/-view.tree/icon.view.tree.ts","../../../mol/check/icon/-css/mol/check/icon/-css/icon.view.css.ts","../../../mol/icon/brightness/6/-view.tree/mol/icon/brightness/6/-view.tree/6.view.tree.ts","../../../mol/lights/toggle/-view.tree/mol/lights/toggle/-view.tree/toggle.view.tree.ts","../../../mol/lights/toggle/mol/lights/toggle/toggle.view.ts","../-view.tree/koplenov/rss/-view.tree/rss.view.tree.ts","../koplenov/rss/rss.view.ts"],"names":[],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACZA;AACA;AACA;AACA;;ACHA,KAAK,CAAC,eAAe,GAAG,EAAE,CAAC;AAK3B,IAAU,CAAC,CAMV;AAND,WAAU,CAAC;AAMX,CAAC,EANS,CAAC,KAAD,CAAC,QAMV;AAED,MAAM,CAAC,OAAO,GAAG,CAAC,CAAA;;;ADblB;AACA;AACA;;AEFA,IAAU,CAAC,CAkBV;AAlBD,WAAU,CAAC;IAEV,MAAa,UAAU;QAGZ;QADV,YACU,KAAa;YAAb,UAAK,GAAL,KAAK,CAAQ;QACpB,CAAC;QAEJ,MAAM,KAAK,OAAO,EAAE,CAAA,CAAC,CAAC;QACtB,OAAO,KAAK,OAAO,IAAI,CAAC,KAAK,CAAA,CAAC,CAAC;QAC/B,OAAO,KAAK,OAAO,EAAE,CAAA,CAAC,CAAC;QAEvB,QAAQ;YACP,OAAO,GAAI,IAAI,CAAC,MAAM,EAAG,GAAI,IAAI,CAAC,OAAO,EAAG,GAAI,IAAI,CAAC,OAAO,EAAG,EAAE,CAAA;QAClE,CAAC;KAED;IAdY,YAAU,aActB,CAAA;AAEF,CAAC,EAlBS,CAAC,KAAD,CAAC,QAkBV;;;;AClBD,IAAU,CAAC,CA8DV;AA9DD,WAAU,CAAC;IAcV,MAAa,eAEX,SAAQ,UAAoB;QAInB;QAFV,YACC,KAAc,EACL,OAAiB;YAE1B,KAAK,CAAE,KAAK,CAAE,CAAA;YAFL,YAAO,GAAP,OAAO,CAAU;QAG3B,CAAC;QAED,OAAO;YACN,OAAO,IAAI,CAAC,OAAO,CAAA;QACpB,CAAC;QAED,MAAM,CAAC,GAAG,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,GAAG,CAAE,CAAA,CAAC,CAAC;QAC1E,MAAM,CAAC,EAAE,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,IAAI,CAAE,CAAA,CAAC,CAAC;QAC1E,MAAM,CAAC,EAAE,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,IAAI,CAAE,CAAA,CAAC,CAAC;QAC1E,MAAM,CAAC,EAAE,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,IAAI,CAAE,CAAA,CAAC,CAAC;QAC1E,MAAM,CAAC,CAAC,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,GAAG,CAAE,CAAA,CAAC,CAAC;QACxE,MAAM,CAAC,EAAE,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,IAAI,CAAE,CAAA,CAAC,CAAC;QAC1E,MAAM,CAAC,EAAE,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,IAAI,CAAE,CAAA,CAAC,CAAC;QAC1E,MAAM,CAAC,EAAE,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,IAAI,CAAE,CAAA,CAAC,CAAC;QAC1E,MAAM,CAAC,GAAG,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,KAAK,CAAE,CAAA,CAAC,CAAC;QAC5E,MAAM,CAAC,EAAE,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,IAAI,CAAE,CAAA,CAAC,CAAC;QAC1E,MAAM,CAAC,EAAE,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,IAAI,CAAE,CAAA,CAAC,CAAC;QAC1E,MAAM,CAAC,GAAG,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,KAAK,CAAE,CAAA,CAAC,CAAC;QAC5E,MAAM,CAAC,EAAE,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,IAAI,CAAE,CAAA,CAAC,CAAC;QAC1E,MAAM,CAAC,EAAE,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,IAAI,CAAE,CAAA,CAAC,CAAC;QAC1E,MAAM,CAAC,EAAE,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,IAAI,CAAE,CAAA,CAAC,CAAC;QAC1E,MAAM,CAAC,GAAG,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,KAAK,CAAE,CAAA,CAAC,CAAC;QAC5E,MAAM,CAAC,EAAE,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,IAAI,CAAE,CAAA,CAAC,CAAC;QAC1E,MAAM,CAAC,EAAE,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,IAAI,CAAE,CAAA,CAAC,CAAC;QAC1E,MAAM,CAAC,EAAE,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,IAAI,CAAE,CAAA,CAAC,CAAC;QAC1E,MAAM,CAAC,EAAE,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,IAAI,CAAE,CAAA,CAAC,CAAC;QAC1E,MAAM,CAAC,IAAI,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,MAAM,CAAE,CAAA,CAAC,CAAC;QAC9E,MAAM,CAAC,IAAI,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,MAAM,CAAE,CAAA,CAAC,CAAC;QAE9E,MAAM,CAAC,GAAG,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,KAAK,CAAE,CAAA,CAAC,CAAC;QAC5E,MAAM,CAAC,GAAG,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,KAAK,CAAE,CAAA,CAAC,CAAC;QAC5E,MAAM,CAAC,IAAI,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,MAAM,CAAE,CAAA,CAAC,CAAC;QAC9E,MAAM,CAAC,IAAI,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,MAAM,CAAE,CAAA,CAAC,CAAC;QAE9E,MAAM,CAAC,CAAC,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,GAAG,CAAE,CAAA,CAAC,CAAC;QACxE,MAAM,CAAC,EAAE,CAAE,KAAc,IAAK,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,IAAI,CAAE,CAAA,CAAC,CAAC;KAE1E;IA9CY,iBAAe,kBA8C3B,CAAA;AAEF,CAAC,EA9DS,CAAC,KAAD,CAAC,QA8DV;;;;AC9DD,IAAU,CAAC,CAmFV;AAnFD,WAAU,CAAC;IAWV,MAAM,EAAE,GAAG,EAAE,GAAG,eAAe,CAAA;IAE/B,MAAa,eAGX,SAAQ,UAAmB;QAGlB;QADV,YACU,IAAW,EACpB,KAAa;YAEb,KAAK,CAAE,KAAK,CAAE,CAAA;YAHL,SAAI,GAAJ,IAAI,CAAO;QAIrB,CAAC;QAED,MAAM,KAAK,OAAO,IAAI,CAAC,IAAI,GAAG,GAAG,CAAA,CAAC,CAAC;QACnC,OAAO,KAAK,OAAO,GAAG,CAAA,CAAC,CAAC;QAExB,MAAM,CAAC,IAAI,CAAW,KAAa;YAClC,OAAO,IAAI,eAAe,CAAE,MAAM,EAAG,KAAK,CAAE,CAAA;QAC7C,CAAC;QAED,MAAM,CAAC,IAAI,CAAyB,IAAW;YAC9C,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,IAAI,CAAE,CAAA;QAC3C,CAAC;QAED,MAAM,CAAC,GAAG,CAAyB,IAAW;YAC7C,OAAO,IAAI,eAAe,CAAE,KAAK,EAAG,IAAI,CAAC,SAAS,CAAE,IAAI,CAAE,CAAE,CAAA;QAC7D,CAAC;QAED,MAAM,CAAC,IAAI,CACV,GAAW,EACX,UAAkB,EAClB,SAAiB,EACjB,KAAa;YAEb,OAAO,IAAI,eAAe,CACzB,MAAM,EACN,CAAE,GAAG,EAAG,GAAG,CAAE,UAAU,CAAE,EAAG,GAAG,CAAE,SAAS,CAAE,EAAG,KAAK,CAAE,CACtD,CAAA;QACF,CAAC;QAED,MAAM,CAAC,KAAK,CACX,GAA2B,EAC3B,GAA2B,EAC3B,GAA2B;YAE3B,OAAO,IAAI,eAAe,CACzB,OAAO,EACP,CAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAE,CACjB,CAAA;QACF,CAAC;QAED,MAAM,CAAC,IAAI,CACV,GAAW,EACX,KAAa,EACb,IAAY,EACZ,KAAa;YAEb,OAAO,IAAI,eAAe,CACzB,MAAM,EACN,CAAE,GAAG,EAAG,KAAK,EAAG,IAAI,EAAG,KAAK,CAAE,CAC9B,CAAA;QACF,CAAC;QAED,MAAM,CAAC,KAAK,CACX,IAAY;YAEZ,OAAO,IAAI,eAAe,CAAE,OAAO,EAAE,CAAE,IAAI,CAAE,CAAE,CAAA;QAChD,CAAC;KAED;IApEY,iBAAe,kBAoE3B,CAAA;AAEF,CAAC,EAnFS,CAAC,KAAD,CAAC,QAmFV;;;;ACnFD,IAAU,CAAC,CAWV;AAXD,WAAU,CAAC;IAEG,kBAAgB,GAAmB,MAAM,CAAE,kBAAkB,CAAE,CAAA;IAK5E,SAAgB,YAAY,CAAoB,SAAwB;QACvE,OAAO,MAAM,CAAC,cAAc,CAAE,SAAS,EAAG,IAAI,IAAI,CAAC,CAAE,CAAA;IACtD,CAAC;IAFe,cAAY,eAE3B,CAAA;AAEF,CAAC,EAXS,CAAC,KAAD,CAAC,QAWV;;;;ACXD,IAAU,CAAC,CA0DV;AA1DD,WAAU,CAAC;IAEV,MAAM,SAAS,GAAG,IAAI,OAAO,EAAS,CAAA;IAOnC,SAAgB,aAAa,CAC/B,KAAa,EACb,MAAmB;QAGnB,MAAM,KAAK,GAAG,IAAI,KAAK,CAAE,KAAK,EAAG;YAEhC,GAAG,EAAE,CAAE,CAAC,EAAG,KAAK,EAAE,EAAE;gBACnB,MAAM,GAAG,GAAG,MAAM,EAAE,CAAA;gBACpB,IAAI,GAAG,GAAG,OAAO,CAAC,GAAG,CAAE,GAAG,EAAG,KAAK,CAAE,CAAA;gBACpC,IAAI,OAAO,GAAG,KAAK,UAAU,EAAG;oBAC/B,GAAG,GAAG,GAAG,CAAC,IAAI,CAAE,GAAG,CAAE,CAAA;iBACrB;gBACD,OAAO,GAAG,CAAA;YACX,CAAC;YACD,GAAG,EAAE,CAAE,CAAC,EAAG,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAE,MAAM,EAAE,EAAE,KAAK,CAAE;YACnD,GAAG,EAAE,CAAE,CAAC,EAAG,KAAK,EAAG,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAE,MAAM,EAAE,EAAG,KAAK,EAAG,KAAK,CAAE;YAEpE,wBAAwB,EAAE,CAAE,CAAC,EAAG,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,wBAAwB,CAAE,MAAM,EAAE,EAAG,KAAK,CAAE;YAC9F,OAAO,EAAE,GAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAE,MAAM,EAAE,CAAE;YAEzC,cAAc,EAAE,GAAE,EAAE,CAAC,OAAO,CAAC,cAAc,CAAE,MAAM,EAAE,CAAE;YACvD,cAAc,EAAE,CAAE,CAAC,EAAG,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,cAAc,CAAE,MAAM,EAAE,EAAG,KAAK,CAAE;YAE1E,YAAY,EAAE,GAAE,EAAE,CAAC,OAAO,CAAC,YAAY,CAAE,MAAM,EAAE,CAAE;YACnD,iBAAiB,EAAE,GAAE,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAE,MAAM,EAAE,CAAE;YAE7D,KAAK,EAAE,CAAE,CAAC,EAAG,IAAI,EAAG,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAE,MAAM,EAAc,EAAG,IAAI,EAAG,IAAI,CAAE;YAChF,SAAS,EAAE,CAAE,CAAC,EAAG,IAAI,EAAG,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,CAAE,MAAM,EAAc,EAAG,IAAI,EAAG,QAAQ,CAAE;YAEhG,cAAc,EAAE,CAAE,CAAC,EAAG,KAAK,EAAG,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,cAAc,CAAE,MAAM,EAAE,EAAG,KAAK,EAAG,KAAK,CAAE;YAC1F,cAAc,EAAE,CAAE,CAAC,EAAG,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,cAAc,CAAE,MAAM,EAAE,EAAG,KAAK,CAAE;SAE1E,CAAE,CAAA;QAEH,SAAS,CAAC,GAAG,CAAE,KAAK,CAAE,CAAA;QAEtB,OAAO,KAAK,CAAA;IAEb,CAAC;IAvCkB,eAAa,gBAuC/B,CAAA;IAED,OAAO,CAAC,cAAc,CACrB,aAAa,EACb,MAAM,CAAC,WAAW,EAClB;QACC,KAAK,EAAG,CAAE,GAAY,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAE,GAAG,CAAE;KAC/C,CACD,CAAA;AAEF,CAAC,EA1DS,CAAC,KAAD,CAAC,QA0DV;;;;AC1DD,IAAU,CAAC,CAyDV;AAzDD,WAAU,CAAC;IAEG,iBAAe,GAAG,IAAI,OAAO,EAAe,CAAA;IAEzD,SAAgB,iBAAiB,CAChC,MAAe;QAIf,IAAI;YACH,IAAI,CAAC,MAAM;gBAAG,OAAO,KAAK,CAAA;YAC1B,IAAI,OAAO,MAAM,KAAK,QAAQ;gBAAG,OAAO,KAAK,CAAA;YAC7C,IAAI,MAAM,YAAY,aAAa;gBAAG,OAAO,KAAK,CAAA;YAClD,IAAI,OAAO,MAAM,CAAC,YAAY,CAAC,KAAK,UAAU;gBAAG,OAAO,KAAK,CAAA;YAC7D,OAAO,IAAI,CAAA;SACX;QAAC,MAAM;YACP,OAAO,KAAK,CAAA;SACZ;IACF,CAAC;IAde,mBAAiB,oBAchC,CAAA;IAED,SAAgB,eAAe,CAAmC,MAAe,EAAG,KAA0B;QAE7G,IAAI,CAAC,iBAAiB,CAAE,MAAM,CAAE;YAAG,OAAO,IAAI,CAAA;QAE9C,OAAO,IAAI,EAAG;YAEb,MAAM,KAAK,GAAG,EAAA,eAAe,CAAC,GAAG,CAAE,MAAM,CAAE,CAAA;YAC3C,IAAI,CAAC,KAAK;gBAAG,OAAO,KAAK,CAAA;YACzB,IAAI,CAAC,KAAK;gBAAG,OAAO,KAAK,CAAA;YAEzB,IAAI,KAAK,YAAY,KAAK;gBAAG,OAAO,KAAK,CAAA;YAEzC,MAAM,GAAG,KAAK,CAAA;SACd;IAEF,CAAC;IAfe,iBAAe,kBAe9B,CAAA;IAED,SAAgB,iBAAiB,CAChC,KAAa,EACb,MAAe;QAEf,IAAI,CAAC,iBAAiB,CAAE,MAAM,CAAE;YAAG,OAAO,KAAK,CAAA;QAC/C,IAAI,EAAA,eAAe,CAAC,GAAG,CAAE,MAAM,CAAE,KAAK,KAAK;YAAG,OAAO,KAAK,CAAA;QAC1D,OAAO,IAAI,CAAA;IACZ,CAAC;IAPe,mBAAiB,oBAOhC,CAAA;IAED,SAAgB,iBAAiB,CAChC,KAAa,EACb,MAAe;QAEf,IAAI,CAAC,iBAAiB,CAAE,MAAM,CAAE;YAAG,OAAO,KAAK,CAAA;QAC/C,IAAI,EAAA,eAAe,CAAC,GAAG,CAAE,MAAM,CAAE;YAAG,OAAO,KAAK,CAAA;QAEhD,EAAA,eAAe,CAAC,GAAG,CAAE,MAAM,EAAG,KAAK,CAAE,CAAA;QACrC,OAAO,IAAI,CAAA;IACZ,CAAC;IATe,mBAAiB,oBAShC,CAAA;AAEF,CAAC,EAzDS,CAAC,KAAD,CAAC,QAyDV;;;;ACzDD,IAAU,CAAC,CAMV;AAND,WAAU,CAAC;IAEV,SAAgB,SAAS,CAAE,KAAW;QACrC,MAAM,KAAK,CAAA;IACZ,CAAC;IAFe,WAAS,YAExB,CAAA;AAEF,CAAC,EANS,CAAC,KAAD,CAAC,QAMV;;;;ACND,IAAU,CAAC,CAMV;AAND,WAAU,CAAC;IAEV,SAAgB,gBAAgB,CAAE,KAAW;QAC5C,MAAM,KAAK,CAAA;IACZ,CAAC;IAFe,kBAAgB,mBAE/B,CAAA;AAEF,CAAC,EANS,CAAC,KAAD,CAAC,QAMV;;;ACND;AACA;AACA;;ACFA,IAAU,CAAC,CAkDV;AAlDD,WAAU,CAAC;IAEV,MAAa,YAAY;QAExB,MAAM,CAAC,CAAC,GAAG,CAAM,CAAA;QAEjB,CAAE,gBAAgB,CAAE,GAAG,IAAgB,CAAA;QACvC,IAAI,CAAC;YACJ,IAAI,IAAI,CAAE,gBAAgB,CAAE;gBAAG,OAAO,IAAI,CAAE,gBAAgB,CAAE,CAAA;YAC9D,MAAM,KAAK,GAAG,eAAe,CAAE,IAAI,CAAS,CAAA;YAC5C,OAAO,IAAI,CAAE,gBAAgB,CAAE,GAAG,KAAK,EAAE,CAAC,IAAI,YAAY,CAAC,CAAM,CAAA;QAClE,CAAC;QACD,IAAI,CAAC,CAAE,IAAQ;YACd,IAAI,IAAI,CAAE,gBAAgB,CAAE;gBAAG,gBAAgB,CAAE,IAAI,KAAK,CAAE,yBAAyB,CAAE,CAAE,CAAA;YACzF,IAAI,CAAE,gBAAgB,CAAE,GAAG,IAAI,CAAA;QAChC,CAAC;QAEM,MAAM,CAAC,MAAM,CAEnB,IAA0D;YAE1D,MAAM,GAAG,GAAG,IAAI,IAAI,CAAA;YACpB,IAAI,IAAI;gBAAG,IAAI,CAAE,GAAG,CAAE,CAAA;YACtB,OAAO,GAAG,CAAA;QACX,CAAC;QAED,MAAM,CAAC,CAAE,MAAM,CAAC,WAAW,CAAE;YAC5B,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAA;QACvB,CAAC;QAED,MAAM,CAAC,QAAQ;YACd,IAAI,MAAM,CAAC,WAAW,IAAI,IAAI;gBAAG,OAAO,IAAI,CAAE,MAAM,CAAC,WAAW,CAAY,CAAA;YAC5E,OAAO,IAAI,CAAC,IAAI,CAAA;QACjB,CAAC;QAED,UAAU,KAAK,CAAC;QAMhB,QAAQ;YACP,OAAO,IAAI,CAAE,MAAM,CAAC,WAAW,CAAE,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,IAAI,CAAA;QAClE,CAAC;QAED,MAAM;YACL,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAA;QACvB,CAAC;;IA7CW,cAAY,eA+CxB,CAAA;AACF,CAAC,EAlDS,CAAC,KAAD,CAAC,QAkDV;;;;AClDD,IAAU,CAAC,CAuBV;AAvBD,WAAU,CAAC;IAEV,MAAa,eAAgB,SAAQ,YAAY;QAMxC;QAJR,OAAO,CAAM;QACb,SAAS,GAAG,KAAK,CAAA;QAEjB,YACQ,IAAgB;YAEvB,KAAK,EAAE,CAAA;YAFA,SAAI,GAAJ,IAAI,CAAY;YAGvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAE,GAAE,EAAE;gBAC1C,IAAI,IAAI,CAAC,SAAS;oBAAG,OAAM;gBAC3B,IAAI,EAAE,CAAA;YACP,CAAC,CAAE,CAAA;QACJ,CAAC;QAED,UAAU;YACT,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;QACtB,CAAC;KAED;IAnBY,iBAAe,kBAmB3B,CAAA;AAEF,CAAC,EAvBS,CAAC,KAAD,CAAC,QAuBV;;;;ACvBD,IAAU,CAAC,CAIV;AAJD,WAAU,CAAC;AAIX,CAAC,EAJS,CAAC,KAAD,CAAC,QAIV;;;;ACJD,IAAU,CAAC,CAIV;AAJD,WAAU,CAAC;IAEV,CAAC,CAAC,gBAAgB,GAAG,IAAW,CAAA;AAEjC,CAAC,EAJS,CAAC,KAAD,CAAC,QAIV;;;;ACJD,IAAU,CAAC,CAiCV;AAjCD,WAAU,CAAC;IAEV,IAAI,GAAG,GAAG,EAAc,CAAA;IACxB,IAAI,EAAE,GAA6B,IAAI,CAAA;IACvC,IAAI,KAAK,GAA4B,IAAI,CAAA;IAEzC,SAAgB,iBAAiB,CAChC,EAAW,EACX,IAAa;QAGb,GAAG,CAAC,IAAI,CAAE,MAAO,EAAG,UAAW,IAAK,EAAE,CAAC,CAAA;QAEvC,IAAI,KAAK;YAAG,OAAO,EAAG,CAAA;QAEtB,MAAM,GAAG,GAAG,gBAAgB,CAAC,QAAQ,CAAA;QACrC,IAAI,CAAC,GAAG;YAAG,OAAO,IAAI,CAAA;QAEtB,EAAE,GAAG,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;QAC/B,EAAE,CAAC,EAAE,GAAG,mBAAmB,CAAA;QAC3B,GAAG,CAAC,IAAI,CAAC,WAAW,CAAE,EAAE,CAAE,CAAA;QAE1B,KAAK,GAAG,IAAI,eAAe,CAAE,GAAE,EAAE;YAChC,EAAG,CAAC,SAAS,GAAG,IAAI,GAAG,GAAG,CAAC,IAAI,CAAE,MAAM,CAAE,CAAA;YACzC,GAAG,GAAG,EAAE,CAAA;YACR,EAAE,GAAG,IAAI,CAAA;YACT,KAAK,GAAG,IAAI,CAAA;QACb,CAAC,CAAE,CAAA;QAEH,OAAO,EAAE,CAAA;IAEV,CAAC;IAzBe,mBAAiB,oBAyBhC,CAAA;AAEF,CAAC,EAjCS,CAAC,KAAD,CAAC,QAiCV;;;;ACjCD,IAAU,CAAC,CAER;AAFH,WAAU,CAAC;IAAG,iBAAiB,CAAE,qBAAqB,EACrD,k+EAAk+E,CACl+E,CAAA;AAAC,CAAC,EAFO,CAAC,KAAD,CAAC,QAER;;;;ACFH,IAAU,CAAC,CAmBV;AAnBD,WAAU,CAAC;IAEV,MAAM,EAAE,IAAI,EAAE,GAAG,eAAe,CAAA;IAEnB,YAAU,GAAG;QACzB,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC;QAC9B,KAAK,EAAE,IAAI,CAAC,mBAAmB,CAAC;QAChC,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC;QAC9B,OAAO,EAAE,IAAI,CAAC,qBAAqB,CAAC;QACpC,OAAO,EAAE,IAAI,CAAC,qBAAqB,CAAC;QACpC,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC;QAC9B,OAAO,EAAE,IAAI,CAAC,qBAAqB,CAAC;QACpC,KAAK,EAAE,IAAI,CAAC,mBAAmB,CAAC;QAChC,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC;QAC9B,KAAK,EAAE,IAAI,CAAC,mBAAmB,CAAC;QAChC,KAAK,EAAE,IAAI,CAAC,mBAAmB,CAAC;QAChC,KAAK,EAAE,IAAI,CAAC,mBAAmB,CAAC;KAChC,CAAA;AAEF,CAAC,EAnBS,CAAC,KAAD,CAAC,QAmBV;;;;ACnBD,IAAU,CAAC,CAER;AAFH,WAAU,CAAC;IAAG,iBAAiB,CAAE,iBAAiB,EACjD,6JAA6J,CAC7J,CAAA;AAAC,CAAC,EAFO,CAAC,KAAD,CAAC,QAER;;;;ACFH,IAAU,CAAC,CASV;AATD,WAAU,CAAC;IACV,MAAM,EAAE,IAAI,EAAE,GAAG,eAAe,CAAA;IACrB,UAAQ,GAAG;QACrB,KAAK,EAAE,IAAI,CAAE,iBAAiB,CAAE;QAChC,IAAI,EAAE,IAAI,CAAE,gBAAgB,CAAE;QAC9B,KAAK,EAAE,IAAI,CAAE,iBAAiB,CAAE;QAChC,KAAK,EAAE,IAAI,CAAE,iBAAiB,CAAE;QAChC,IAAI,EAAE,IAAI,CAAE,gBAAgB,CAAE;KACrB,CAAA;AACX,CAAC,EATS,CAAC,KAAD,CAAC,QASV;;;;ACTD,IAAU,CAAC,CAgBV;AAhBD,WAAU,GAAC;IAEV,IAAiB,EAAE,CAAU;IAA7B,WAAiB,EAAE;QAAG,IAAI,CAAC,CAAA;IAAC,CAAC,EAAZ,EAAE,GAAF,MAAE,KAAF,MAAE,QAAU;IAEhB,qBAAiB,GAAG,MAAM,CAAE,mBAAmB,CAAE,CAAA;IAE9D,MAAa,WAAY,SAAQ,YAAY;QAErC,MAAM,CAAC,IAAI,CAA4C,MAA4B;YACzF,OAAO,KAAK,CAAC,MAAM,CAAE,GAAG,CAAC,EAAE;gBAC1B,KAAK,IAAI,GAAG,IAAI,MAAM;oBAAK,GAAY,CAAE,GAAG,CAAE,GAAG,MAAM,CAAE,GAAG,CAAG,CAAA;YAChE,CAAC,CAAS,CAAA;QACX,CAAC;KAED;IARY,eAAW,cAQvB,CAAA;AAEF,CAAC,EAhBS,CAAC,KAAD,CAAC,QAgBV;;;;AChBD,IAAU,CAAC,CAmBV;AAnBD,WAAU,CAAC;IAGV,IAAY,gBAcX;IAdD,WAAY,gBAAgB;QAG3B,0DAAU,CAAA;QAGV,0DAAU,CAAA;QAGV,0DAAU,CAAA;QAGV,0DAAU,CAAA;IAEX,CAAC,EAdW,gBAAgB,GAAhB,kBAAgB,KAAhB,kBAAgB,QAc3B;AAEF,CAAC,EAnBS,CAAC,KAAD,CAAC,QAmBV;;;;ACnBD,IAAU,CAAC,CAyHV;AAzHD,WAAU,CAAC;IAKV,MAAa,aAAc,SAAQ,MAAM;QAExC,IAAI,GAAG,EAAe,CAAA;QAGtB,MAAM,KAAK,CAAE,MAAM,CAAC,OAAO,CAAE;YAC5B,OAAO,KAAK,CAAA;QACb,CAAC;QAKS,QAAQ,GAAG,CAAC,CAAA;QAKtB,IAAI,QAAQ;YACX,MAAM,GAAG,GAAG,EAAqB,CAAA;YACjC,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAG;gBAC1D,GAAG,CAAC,IAAI,CAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAkB,CAAE,CAAA;aACzC;YACD,OAAO,GAA+B,CAAA;QACvC,CAAC;QAKD,IAAI,SAAS;YACZ,OAAO,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,CAAA;QAC1C,CAAC;QAKD,MAAM,CAAE,GAAkB,EAAE,OAAe;YAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAA;YAC5B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAE,GAAG,EAAE,OAAO,CAAE,CAAA;YAC9B,OAAO,GAAG,CAAA;QACX,CAAC;QAKD,OAAO,CAAE,OAAe;YAEvB,IAAG,CAAC,CAAE,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAE,EAAE;gBACnC,SAAS,CAAE,IAAI,KAAK,CAAE,aAAc,OAAQ,EAAE,CAAE,CAAE,CAAA;aAClD;YAED,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAA;YAChC,IAAI,OAAO,KAAK,GAAG,EAAG;gBACrB,IAAI,CAAC,SAAS,CAAE,GAAG,EAAE,OAAO,CAAE,CAAA;aAC9B;YAED,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;YACf,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;YAEf,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,QAAQ;gBAAG,IAAI,CAAC,IAAI,EAAE,CAAA;QAErD,CAAC;QAKD,IAAI,KAAK,CAAC;QAKV,OAAO;YACN,cAAc,EAAE,EAAE,UAAU,CAAE,IAAI,CAAE,CAAA;QACrC,CAAC;QAKD,KAAK,KAAI,CAAC;QAKV,QAAQ,KAAI,CAAC;QAKb,IAAI,CAAE,KAAK,GAAG,gBAAgB,CAAC,KAAK;YACnC,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAG;gBAC1D,CAAC;gBAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAoB,CAAC,MAAM,CAAE,KAAK,CAAE,CAAA;aAClD;QACF,CAAC;QAKD,SAAS,CAAE,QAAgB,EAAE,MAAc;YAE1C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAE,QAAQ,CAAmB,CAAA;YACnD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAE,QAAQ,GAAG,CAAC,CAAY,CAAA;YAEpD,IAAI,CAAC,IAAI,CAAE,MAAM,CAAE,GAAG,IAAI,CAAA;YAC1B,IAAI,CAAC,IAAI,CAAE,MAAM,GAAG,CAAC,CAAE,GAAG,QAAQ,CAAA;YAElC,IAAI,CAAC,UAAU,CAAE,QAAQ,EAAE,MAAM,CAAE,CAAA;QACpC,CAAC;QAKD,UAAU,CAAE,QAAgB,EAAE,QAAgB;YAC7C,IAAI,CAAC,IAAI,CAAE,QAAQ,GAAG,CAAC,CAAE,GAAG,QAAQ,CAAA;QACrC,CAAC;KAED;IAlHY,eAAa,gBAkHzB,CAAA;AAEF,CAAC,EAzHS,CAAC,KAAD,CAAC,QAyHV;;;ACzHD;AACA;AACA;;ACFA,IAAU,CAAC,CAgBV;AAhBD,WAAU,CAAC;IAEV,IAAI,IAAI,GAAyB,IAAI,CAAA;IAKrC,SAAgB,cAAc,CAAE,IAAI,GAAG,IAAI;QAC1C,OAAO,IAAI,GAAG,IAAI,CAAA;IACnB,CAAC;IAFe,gBAAc,iBAE7B,CAAA;IAKY,oBAAkB,GAAG,EAAkC,CAAA;AAErE,CAAC,EAhBS,CAAC,KAAD,CAAC,QAgBV;;;;AChBD,IAAU,CAAC,CAoIV;AApID,WAAU,CAAC;IAGV,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,oBAAoB,CAAC,IAAI,EAAE,CAAA;IAEvD,SAAgB,wBAAwB,CAAE,MAOzC;QACA,CAAC,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAE,MAAM,CAAE,CAAA;IACvC,CAAC;IATe,0BAAwB,2BASvC,CAAA;IAEU,sBAAoB,GAAG,MAAM,CAAE,sBAAsB,CAAE,CAAA;IACvD,sBAAoB,GAAG,MAAM,CAAE,sBAAsB,CAAE,CAAA;IAElE,wBAAwB,CAAC;QAExB,MAAM,EAAG,CAAE,GAAS,EAAG,MAAM,GAAG,KAAK,EAAG,EAAE;YAEzC,IAAI,MAAM;gBAAG,OAAO,IAAI,CAAA;YAExB,IAAI,CAAC,GAAG;gBAAG,OAAO,IAAI,CAAA;YAEtB,IAAI,EAAA,oBAAoB,IAAI,GAAG,EAAG;gBACjC,OAAO,GAAG,CAAE,EAAA,oBAAoB,CAAE,EAAE,CAAA;aACpC;YAED,IAAI,OAAO,GAAG,KAAK,UAAU,EAAG;gBAC/B,OAAO,sBAAsB,CAAE,GAAG,CAAE,CAAA;aACpC;YAED,OAAO,IAAI,CAAA;QAEZ,CAAC;QAED,OAAO,EAAG,GAAG,CAAC,EAAE,CAAC,GAAG,CAAE,EAAA,oBAAoB,CAAE;QAE5C,IAAI,EAAG,GAAG,CAAC,EAAE,CAAC,GAAG,CAAE,EAAA,oBAAoB,CAAE,EAAE;KAE3C,CAAC,CAAA;IAEF,SAAgB,sBAAsB,CAAE,GAAS;QAEhD,IAAI,OAAO,GAAG,KAAK,WAAW;YAAG,OAAO,EAAA,qBAAqB,CAAE,WAAW,CAAE,CAAA;QAC5E,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,GAAG,KAAK,UAAU;YAAG,OAAO,GAAG,CAAA;QAErE,OAAO;YACN,QAAQ;YACR;gBACC,MAAM,EAAG,GAAG;gBACZ,MAAM,EAAG,IAAI;aACb;SACD,CAAA;IAEF,CAAC;IAbe,wBAAsB,yBAarC,CAAA;IAED,SAAgB,oBAAoB,CAAE,GAAS;QAE9C,IAAI,GAAG,IAAI,IAAI;YAAG,OAAO,EAAA,qBAAqB,CAAE,MAAM,CAAE,GAAG,CAAE,CAAE,CAAA;QAE/D,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,EAAA,oBAAoB,IAAI,GAAG,EAAG;YAC5D,OAAO,GAAG,CAAE,EAAA,oBAAoB,CAAE,EAAE,CAAA;SACpC;QAED,OAAO;YACN,QAAQ;YACR;gBACC,MAAM,EAAG,GAAG;gBACZ,MAAM,EAAG,KAAK;aACd;SACD,CAAA;IAEF,CAAC;IAhBe,sBAAoB,uBAgBnC,CAAA;IAED,SAAgB,uBAAuB,CAAE,OAAgB,EAAG,KAAc,EAAG,GAAG,OAAe;QAE9F,MAAM,MAAM,GAAG,EAAc,CAAA;QAE7B,KAAK,IAAI,GAAG,IAAI,KAAK;YAAG,MAAM,CAAC,IAAI,CAAE,GAAI,GAAI,MAAO,KAAK,CAAC,GAAG,CAAE,EAAE,CAAE,CAAA;QAEnE,OAAO;YACN,OAAO;YACP;gBACC,KAAK,EAAG,MAAM,CAAC,IAAI,CAAE,KAAK,CAAE;aAC5B;YACD,GAAI,OAAO;SACX,CAAA;IAEF,CAAC;IAde,yBAAuB,0BActC,CAAA;IAED,SAAgB,oBAAoB,CAAE,KAAc,EAAG,GAAG,OAAe;QACxE,OAAO,uBAAuB,CAC7B,MAAM,EACN;YACC,gBAAgB,EAAG,IAAI;YACvB,GAAI,KAAK;SACT,EACD,GAAI,OAAO,CACX,CAAA;IACF,CAAC;IATe,sBAAoB,uBASnC,CAAA;IAEU,qBAAmB,GAAG,uBAAuB,CAAC,IAAI,CAAE,IAAI,EAAG,KAAK,CAAE,CAAA;IAClE,oBAAkB,GAAG,uBAAuB,CAAC,IAAI,CAAE,IAAI,EAAG,IAAI,CAAE,CAAA;IAChE,oBAAkB,GAAG,uBAAuB,CAAC,IAAI,CAAE,IAAI,EAAG,IAAI,CAAE,CAAA;IAChE,uBAAqB,GAAG,uBAAuB,CAAC,IAAI,CAAE,IAAI,EAAG,OAAO,CAAE,CAAA;IACtE,oBAAkB,GAAG,uBAAuB,CAAC,IAAI,CAAE,IAAI,EAAG,IAAI,CAAE,CAAA;IAChE,oBAAkB,GAAG,uBAAuB,CAAC,IAAI,CAAE,IAAI,EAAG,IAAI,CAAE,CAAA;IAEhE,wBAAsB,GAAG,oBAAoB,CAAC,IAAI,CAAE,IAAI,EAAG;QACrE,OAAO,EAAG,SAAS;KACnB,CAAE,CAAA;IAEQ,wBAAsB,GAAG,oBAAoB,CAAC,IAAI,CAAE,IAAI,EAAG;QACrE,aAAa,EAAG,MAAM;KACtB,CAAE,CAAA;IAEQ,wBAAsB,GAAG,oBAAoB,CAAC,IAAI,CAAE,IAAI,EAAG;QACrE,OAAO,EAAG,OAAO;KACjB,CAAE,CAAA;IAEQ,uBAAqB,GAAG,oBAAoB,CAAC,IAAI,CAAE,IAAI,EAAG;QACpE,OAAO,EAAG,MAAM;KAChB,CAAE,CAAA;IAEQ,wBAAsB,GAAG,EAAA,mBAAmB,CAAC,IAAI,CAAE,IAAI,EAAG;QACpE,aAAa,EAAE,MAAM;KACrB,CAAE,CAAA;AAEJ,CAAC,EApIS,CAAC,KAAD,CAAC,QAoIV;;;;ACpID,IAAU,CAAC,CA8MV;AA9MD,WAAU,CAAC;IASV,MAAa,iBAAkB,SAAQ,aAAa;QAEzC,QAAQ,GAAG,CAAC,CAAA;QACZ,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAA;QAEzC,IAAI,QAAQ;YACX,MAAM,GAAG,GAAG,EAAqB,CAAA;YACjC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,IAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAA;YACzD,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,EAAG;gBAC7C,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;oBAAG,GAAG,CAAC,IAAI,CAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAkB,CAAE,CAAA;aAC5D;YACD,OAAO,GAAG,CAAA;QACX,CAAC;QAED,QAAQ;YACP,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAA;YAC3B,MAAM,GAAG,GAAG,cAAc,EAAE,CAAA;YAC5B,cAAc,CAAE,IAAI,CAAE,CAAA;YACtB,OAAO,GAAG,CAAA;QACX,CAAC;QAED,OAAO;YAEN,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAG;gBAClC,SAAS,CAAE,IAAI,KAAK,CAAE,uBAAuB,CAAE,CAAE,CAAA;aACjD;YAED,KAAK,CAAC,OAAO,EAAE,CAAA;QAChB,CAAC;QAED,UAAU,CAAE,GAAmB;YAE9B,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;gBAAG,SAAS,CAAE,IAAI,KAAK,CAAE,wBAAwB,CAAE,CAAE,CAAA;YAExE,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAG;gBAEhC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAE,IAAI,CAAC,MAAM,CAA+B,CAAA;gBACnE,IAAI,GAAG,KAAK,SAAS;oBAAG,OAAO,IAAI,IAAI,IAAI,CAAA;gBAE3C,IAAI,IAAI,KAAK,GAAG,EAAG;oBAClB,IAAI,CAAC,MAAM,IAAI,CAAC,CAAA;oBAChB,OAAO,IAAI,CAAA;iBACX;gBAED,IAAI,IAAI,EAAG;oBAEV,IAAI,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAG;wBACtC,IAAI,CAAC,SAAS,CAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAE,CAAA;qBACjD;oBAED,IAAI,CAAC,SAAS,CAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAE,CAAA;oBAC5C,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAA;iBAElB;aAED;iBAAM;gBAEN,IAAI,GAAG,KAAK,SAAS;oBAAG,OAAO,IAAI,CAAA;gBAEnC,IAAI,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAG;oBACtC,IAAI,CAAC,SAAS,CAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAE,CAAA;iBACjD;gBAED,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAA;aAElB;YAED,IAAI,CAAC,IAAI,CAAE,IAAI,CAAC,MAAM,CAAE,GAAG,GAAG,CAAA;YAC9B,IAAI,CAAC,IAAI,CAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAE,GAAG,GAAG,CAAC,MAAM,CAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAE,CAAA;YAE9D,IAAI,CAAC,MAAM,IAAI,CAAC,CAAA;YAEhB,OAAO,GAAG,CAAA;QACX,CAAC;QAED,SAAS,CAAE,GAAyB;YAEnC,cAAc,CAAE,GAAG,CAAE,CAAA;YAErB,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAG;gBACrB,SAAS,CAAE,IAAI,KAAK,CAAE,sBAAsB,CAAE,CAAE,CAAA;aAChD;YAED,KACC,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,EAC1B,MAAM,GAAG,IAAI,CAAC,MAAM,EACpB,MAAM,IAAI,CAAC,EACV;gBACD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAE,MAAM,CAAmB,CAAA;gBAChD,GAAG,CAAC,KAAK,EAAE,CAAA;aACX;YAED,IAAI,CAAC,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAA;QAErC,CAAC;QAED,OAAO,CAAE,OAAe;YACvB,IAAI,CAAC,IAAI,CAAE,OAAO,CAAE,GAAG,SAAgB,CAAA;YACvC,IAAI,CAAC,IAAI,CAAE,OAAO,GAAG,CAAC,CAAE,GAAG,SAAgB,CAAA;QAC5C,CAAC;QAED,UAAU;YAET,KACC,IAAI,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EACjC,MAAM,IAAI,IAAI,CAAC,QAAQ,EACvB,MAAM,IAAI,CAAC,EACV;gBACD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAE,MAAM,CAAmB,CAAA;gBAChD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAE,MAAM,GAAG,CAAC,CAAY,CAAA;gBAC7C,GAAG,CAAC,OAAO,CAAE,GAAG,CAAE,CAAA;gBAClB,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;gBACf,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;aACf;YAED,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAA;YAC3B,IAAI,CAAC,SAAS,EAAE,CAAA;YAChB,IAAI,CAAC,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAA;QAErC,CAAC;QAED,SAAS;YAER,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAG;gBACjC,SAAS,CAAE,IAAI,KAAK,CAAE,sBAAsB,CAAE,CAAE,CAAA;aAChD;YAED,IAAI,IAAI,GAAG,CAAC,CAAA;YAEZ,KACC,IAAI,MAAM,GAAG,IAAI,CAAC,MAAM,EACxB,MAAM,GAAG,IAAI,CAAC,QAAQ,EACtB,MAAM,IAAI,CAAC,EACV;gBAED,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAE,MAAM,CAA+B,CAAA;gBAC5D,GAAG,EAAE,OAAO,CAAE,IAAI,CAAC,IAAI,CAAE,MAAM,GAAG,CAAC,CAAY,CAAE,CAAA;gBAEjD,IAAI,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAG;oBACtC,IAAI,CAAC,SAAS,CAAE,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,MAAM,CAAE,CAAA;oBAC9C,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;oBACf,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;iBACf;qBAAM;oBACN,EAAG,IAAI,CAAA;iBACP;aAED;YAED,OAAM,IAAI,EAAE,EAAG,IAAI,EAAG;gBACrB,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;gBACf,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;aACf;YAED,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAA;QAE5B,CAAC;QAED,QAAQ,KAAK,CAAC;QAEd,aAAa;YAEZ,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAA;YAE3D,KACC,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,EAC1B,MAAM,GAAG,KAAK,EACd,MAAM,IAAI,CAAC,EACV;gBACD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAE,MAAM,CAAmB,CAAA;gBAChD,GAAG,EAAE,QAAQ,EAAE,CAAA;aACf;QAEF,CAAC;QAED,MAAM,CAAE,KAAK,GAAG,gBAAgB,CAAC,KAAK;YAErC,IAAI,IAAI,CAAC,MAAM,KAAK,gBAAgB,CAAC,KAAK;gBAAG,OAAM;YACnD,IAAI,IAAI,CAAC,MAAM,IAAI,KAAK;gBAAG,OAAM;YAEjC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;YACnB,IAAI,CAAC,IAAI,CAAE,gBAAgB,CAAC,KAAK,CAAE,CAAA;QAEpC,CAAC;QAED,CAAE,oBAAoB,CAAE;YACvB,OAAO,sBAAsB,CAAE,IAAI,CAAE,CAAA;QACtC,CAAC;QAKD,IAAI,SAAS;YACZ,OAAO,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ,CAAA;QACvC,CAAC;KAED;IAnMY,mBAAiB,oBAmM7B,CAAA;AAEF,CAAC,EA9MS,CAAC,KAAD,CAAC,QA8MV;;;;AC9MD,IAAU,CAAC,CAgDV;AAhDD,WAAU,CAAC;IAEV,MAAa,gBAAiB,SAAQ,YAAY;QA6BzC;QA3BR,MAAM,CAAC,QAAQ,GAAG,IAA4B,CAAA;QAE9C,MAAM,KAAK,OAAO;YAEjB,IAAI,IAAI,CAAC,QAAQ;gBAAG,OAAO,IAAI,CAAC,QAAQ,CAAA;YAExC,OAAO,IAAI,CAAC,QAAQ,GAAG,IAAI,OAAO,CAAE,IAAI,CAAC,EAAE;gBAE1C,MAAM,QAAQ,GAAG,GAAE,EAAE;oBACpB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;oBACpB,IAAI,EAAE,CAAA;gBACP,CAAC,CAAA;gBAED,IAAI,OAAO,qBAAqB,KAAK,UAAU,EAAG;oBACjD,qBAAqB,CAAE,QAAQ,CAAE,CAAA;iBACjC;qBAAM;oBACN,UAAU,CAAE,QAAQ,EAAE,EAAE,CAAE,CAAA;iBAC1B;YAEF,CAAC,CAAE,CAAA;QAEJ,CAAC;QAED,SAAS,GAAG,KAAK,CAAA;QACjB,OAAO,CAAgB;QAEvB,YACQ,IAAgB;YAEvB,KAAK,EAAE,CAAA;YAFA,SAAI,GAAJ,IAAI,CAAY;YAIvB,IAAI,CAAC,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAE,GAAE,EAAE;gBACjD,IAAI,IAAI,CAAC,SAAS;oBAAG,OAAM;gBAC3B,IAAI,EAAE,CAAA;YACP,CAAC,CAAE,CAAA;QAEJ,CAAC;QAED,UAAU;YACT,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;QACtB,CAAC;;IA1CW,kBAAgB,mBA4C5B,CAAA;AAEF,CAAC,EAhDS,CAAC,KAAD,CAAC,QAgDV;;;;AChDD,IAAU,CAAC,CAkRV;AAlRD,WAAU,CAAC;IAEV,MAAM,OAAO,GAAG,IAAI,OAAO,EAAwB,CAAA;IASnD,MAAsB,eAIpB,SAAQ,iBAAiB;QAqEhB;QACA;QApEV,MAAM,CAAC,IAAI,GAAG,IAAI,CAAA;QAElB,MAAM,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAsC,CAAA;QAC/D,MAAM,CAAC,OAAO,GAAG,IAAI,GAAG,EAAsC,CAAA;QAE9D,MAAM,CAAC,SAAS,GAA4B,IAAI,CAAA;QAChD,MAAM,CAAC,IAAI;YAEV,IAAI,IAAI,CAAC,SAAS;gBAAG,OAAM;YAE3B,IAAI,CAAC,SAAS,GAAG,IAAI,gBAAgB,CAAE,GAAE,EAAE;gBAE1C,IAAI;oBACH,IAAI,CAAC,IAAI,EAAE,CAAA;iBACX;wBAAS;oBACT,eAAe,CAAC,SAAS,GAAG,IAAI,CAAA;iBAChC;YAEF,CAAC,CAAE,CAAA;QAEJ,CAAC;QAED,MAAM,CAAC,IAAI;YAGV,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAG;gBAC3B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAG;oBACnC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAE,KAAK,CAAE,CAAA;oBAC7B,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC;wBAAG,SAAQ;oBAChC,IAAI,KAAK,CAAC,MAAM,KAAK,gBAAgB,CAAC,KAAK;wBAAG,SAAQ;oBACtD,KAAK,CAAC,KAAK,EAAE,CAAA;iBACb;aACD;YAGD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAG;gBAE1B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAA;gBAC3B,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,CAAA;gBAEtB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAG;oBAC5B,IAAI,CAAC,KAAK,CAAC,SAAS;wBAAG,SAAQ;oBAC/B,KAAK,CAAC,UAAU,EAAE,CAAA;iBAClB;aAED;QAEF,CAAC;QAEM,KAAK,GAA+C,SAAgB,CAAA;QAE3E,IAAI,IAAI;YACP,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAE,CAAC,EAAG,IAAI,CAAC,QAAQ,CAAiB,CAAA;QAC3D,CAAC;QAED,MAAM;YACL,IAAI,IAAI,CAAC,KAAK,YAAY,OAAO;gBAAG,OAAM;YAC1C,IAAI,IAAI,CAAC,KAAK,YAAY,KAAK;gBAAG,OAAM;YACxC,OAAO,IAAI,CAAC,KAAK,CAAA;QAClB,CAAC;QAED,KAAK;YACJ,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAC7B,CAAC;QAED,YACC,EAAU,EACD,IAAgD,EAChD,IAAW,EACpB,IAAW;YAGX,KAAK,EAAE,CAAA;YALE,SAAI,GAAJ,IAAI,CAA4C;YAChD,SAAI,GAAJ,IAAI,CAAO;YAKpB,IAAI,IAAI;gBAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAE,GAAI,IAAI,CAAE,CAAA;YACrC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,EAAE,MAAM,IAAI,CAAC,CAAA;YACjD,IAAI,CAAE,MAAM,CAAC,WAAW,CAAE,GAAG,EAAE,CAAA;QAEhC,CAAC;QAED,IAAI;YACH,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAE,IAAI,CAAE,CAAA;YACpC,eAAe,CAAC,IAAI,EAAE,CAAA;QACvB,CAAC;QAED,IAAI;YACH,eAAe,CAAC,OAAO,CAAC,GAAG,CAAE,IAAI,CAAE,CAAA;YACnC,eAAe,CAAC,IAAI,EAAE,CAAA;QACvB,CAAC;QAED,QAAQ;YACP,OAAO,IAAI,CAAE,MAAM,CAAC,WAAW,CAAE,CAAA;QAClC,CAAC;QAED,MAAM;YACL,OAAO,IAAI,CAAE,MAAM,CAAC,WAAW,CAAE,CAAA;QAClC,CAAC;QAED,CAAE,oBAAoB,CAAE;YAEvB,MAAM,MAAM,GAAG;gBACd,CAAE,gBAAgB,CAAC,KAAK,CAAE,EAAE,IAAI;gBAChC,CAAE,gBAAgB,CAAC,KAAK,CAAE,EAAE,IAAI;gBAChC,CAAE,gBAAgB,CAAC,KAAK,CAAE,EAAE,IAAI;gBAChC,CAAE,gBAAgB,CAAC,KAAK,CAAE,EAAE,IAAI;aAChC,CAAE,IAAI,CAAC,MAAM,CAAE,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAA;YAE1C,OAAO,mBAAmB,CAAE,EAAE,EAC7B,sBAAsB,CAAE,IAAI,CAAE,EAC9B,qBAAqB,CAAE,MAAM,GAAG,GAAG,CAAE,EACrC,oBAAoB,CAAE,IAAI,CAAC,KAAK,CAAE,CAClC,CAAA;QAEF,CAAC;QAED,IAAI,CAAC;YACJ,OAAO,CAAE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAE,CAAC,GAAG,CAAC,CAAA;QACvC,CAAC;QAED,IAAI,CAAE,KAAK,GAAG,gBAAgB,CAAC,KAAK;YACnC,IAAI,IAAI,CAAC,SAAS;gBAAG,IAAI,CAAC,IAAI,EAAE,CAAA;;gBAC3B,KAAK,CAAC,IAAI,CAAE,KAAK,CAAE,CAAA;QACzB,CAAC;QAED,KAAK;YAIJ,IAAI,IAAI,CAAC,MAAM,KAAK,gBAAgB,CAAC,KAAK;gBAAG,OAAM;YACnD,IAAI,IAAI,CAAC,MAAM,KAAK,gBAAgB,CAAC,KAAK;gBAAG,OAAM;YAEnD,KAAK,EAAE,IAAI,IAAI,CAAC,MAAM,KAAK,gBAAgB,CAAC,KAAK,EAAG;gBAEnD,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,EAAG;oBACxD,CAAC;oBAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAoB,EAAE,KAAK,EAAE,CAAA;oBAC3C,IAAI,IAAI,CAAC,MAAM,KAAK,gBAAgB,CAAC,KAAK;wBAAG,MAAM,KAAK,CAAA;iBACxD;gBAED,IAAI,CAAC,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAA;gBACpC,OAAM;aAEN;YAED,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAA;YAC1B,IAAI,MAAyB,CAAA;YAE7B,IAAI;gBAEH,QAAQ,IAAI,CAAC,QAAQ,EAAG;oBACvB,KAAK,CAAC;wBAAE,MAAM,GAAI,IAAI,CAAC,IAAY,CAAC,IAAI,CAAE,IAAI,CAAC,IAAK,CAAE,CAAC;wBAAC,MAAK;oBAC7D,KAAK,CAAC;wBAAE,MAAM,GAAI,IAAI,CAAC,IAAY,CAAC,IAAI,CAAE,IAAI,CAAC,IAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAE,CAAC;wBAAC,MAAK;oBAC3E;wBAAS,MAAM,GAAI,IAAI,CAAC,IAAY,CAAC,IAAI,CAAE,IAAI,CAAC,IAAK,EAAE,GAAI,IAAI,CAAC,IAAI,CAAE,CAAC;wBAAC,MAAK;iBAC7E;gBAED,IAAI,MAAM,YAAY,OAAO,EAAG;oBAE/B,MAAM,GAAG,GAAG,CAAE,GAAW,EAAE,EAAE;wBAC5B,IAAI,IAAI,CAAC,KAAK,KAAK,MAAM;4BAAG,IAAI,CAAC,GAAG,CAAE,GAAG,CAAE,CAAA;wBAC3C,OAAO,GAAG,CAAA;oBACX,CAAC,CAAA;oBAED,MAAM,GAAG,MAAM,CAAC,MAAM,CAAE,MAAM,CAAC,IAAI,CAAE,GAAG,EAAE,GAAG,CAAE,EAAE;wBAChD,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,GAAE,EAAE,GAAE,CAAC,CAAC;qBAC7C,CAAE,CAAA;oBAEH,OAAO,CAAC,GAAG,CAAE,MAAM,CAAE,CAAA;iBACrB;aAED;YAAC,OAAO,KAAU,EAAG;gBAErB,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,YAAY,OAAO,EAAG;oBACxD,MAAM,GAAG,KAAK,CAAA;iBACd;qBAAM;oBACN,MAAM,GAAG,IAAI,KAAK,CAAE,MAAM,CAAE,KAAK,CAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAE,CAAA;iBACvD;gBAED,IAAI,MAAM,YAAY,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAE,MAAM,CAAE,EAAG;oBAEzD,MAAM,GAAG,MAAM,CAAC,MAAM,CAAE,MAAM,CAAC,OAAO,CAAE,GAAE,EAAE;wBAC3C,IAAI,IAAI,CAAC,KAAK,KAAK,MAAM;4BAAG,IAAI,CAAC,MAAM,EAAE,CAAA;oBAC1C,CAAC,CAAE,EAAE;wBACJ,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,GAAE,EAAE,GAAE,CAAC,CAAC;qBAC7C,CAAE,CAAA;oBAEH,OAAO,CAAC,GAAG,CAAE,MAAM,CAAE,CAAA;iBACrB;aAED;YAED,IAAG,CAAC,CAAE,MAAM,YAAY,OAAO,CAAE,EAAE;gBAClC,IAAI,CAAC,SAAS,EAAE,CAAA;aAChB;YAED,IAAI,CAAC,SAAS,CAAE,EAAE,CAAE,CAAA;YACpB,IAAI,CAAC,GAAG,CAAE,MAAM,CAAE,CAAA;QAEnB,CAAC;QAED,OAAO;YACN,IAAI,CAAC,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAA;YACpC,IAAI,CAAC,KAAK,EAAE,CAAA;QACb,CAAC;QAQD,IAAI;YAEH,IAAI,CAAC,eAAe,CAAC,IAAI,EAAG;gBAC3B,OAAO,IAAI,CAAC,MAAM,EAAuB,CAAA;aACzC;YAED,IAAI,CAAC,OAAO,EAAE,CAAA;YACd,IAAI,CAAC,KAAK,EAAE,CAAA;YAEZ,IAAI,IAAI,CAAC,KAAK,YAAY,KAAK,EAAG;gBACjC,OAAO,gBAAgB,CAAE,IAAI,CAAC,KAAK,CAAE,CAAA;aACrC;YAED,IAAI,IAAI,CAAC,KAAK,YAAY,OAAO,EAAG;gBACnC,OAAO,gBAAgB,CAAE,IAAI,CAAC,KAAK,CAAE,CAAA;aACrC;YAED,OAAO,IAAI,CAAC,KAA0B,CAAA;QACvC,CAAC;QAMD,KAAK,CAAC,KAAK;YAEV,OAAO,IAAI,EAAG;gBAEb,IAAI,CAAC,KAAK,EAAE,CAAA;gBAEZ,IAAI,IAAI,CAAC,KAAK,YAAY,KAAK,EAAG;oBACjC,gBAAgB,CAAE,IAAI,CAAC,KAAK,CAAE,CAAA;iBAC9B;gBAED,IAAG,CAAC,CAAE,IAAI,CAAC,KAAK,YAAY,OAAO,CAAE;oBAAE,OAAO,IAAI,CAAC,KAAK,CAAA;gBAExD,MAAM,IAAI,CAAC,KAAK,CAAA;gBAEhB,IAAI,IAAI,CAAC,MAAM,KAAK,gBAAgB,CAAC,KAAK,EAAG;oBAE5C,MAAM,IAAI,OAAO,CAAE,GAAE,EAAE,GAAE,CAAC,CAAE,CAAA;iBAC5B;aAED;QAEF,CAAC;;IAnQoB,iBAAe,kBAqQpC,CAAA;AAEF,CAAC,EAlRS,CAAC,KAAD,CAAC,QAkRV;;;;AClRD,IAAU,CAAC,CAwBV;AAxBD,WAAU,CAAC;IAEV,SAAgB,cAAc,CAAa,IAAe;QAEzD,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QACpB,IAAI,IAAI,EAAE,MAAM,GAAG,CAAC;YAAG,OAAO,IAAI,CAAA;QAElC,KAAK,IAAI,GAAG,IAAI,IAAI,EAAG;YACtB,IAAI;gBACH,IAAI,IAAI,CAAE,GAAG,CAAE,KAAK,IAAI;oBAAG,SAAQ;gBACnC,IAAI,GAAG,GAAG,CAAA;gBACV,MAAM,CAAC,cAAc,CAAE,IAAI,EAAG,MAAM,EAAG,EAAE,KAAK,EAAG,IAAI,EAAE,CAAE,CAAA;gBACzD,MAAK;aACL;YAAC,MAAM,GAAE;SACV;QAED,OAAO,IAAI,CAAA;IACZ,CAAC;IAfe,gBAAc,iBAe7B,CAAA;IAED,SAAgB,mBAAmB,CAA6B,MAAe,EAAG,MAAiB;QAClG,MAAM,CAAC,cAAc,CAAE,MAAM,EAAG,MAAM,EAAG,EAAE,KAAK,EAAG,MAAM,CAAC,IAAI,EAAE,CAAE,CAAA;QAClE,OAAO,MAAM,CAAA;IACd,CAAC;IAHe,qBAAmB,sBAGlC,CAAA;AAEF,CAAC,EAxBS,CAAC,KAAD,CAAC,QAwBV;;;;ACxBD,IAAU,CAAC,CAkBV;AAlBD,WAAU,CAAC;IAGV,SAAgB,SAAS,CACxB,MAAM,GAAG,CAAC,EACV,SAAmC,GAAE,EAAE,CAAC,KAAK;QAG7C,SAAQ;YAEP,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAE,EAAE,CAAE,CAAC,SAAS,CAAE,CAAC,EAAE,MAAM,GAAG,CAAC,CAAE,CAAC,WAAW,EAAE,CAAA;YAC9E,IAAI,MAAM,CAAE,EAAE,CAAE;gBAAG,SAAQ;YAE3B,OAAO,EAAE,CAAA;SACT;IAEF,CAAC;IAbe,WAAS,YAaxB,CAAA;AAEF,CAAC,EAlBS,CAAC,KAAD,CAAC,QAkBV;;;;AClBD,IAAU,CAAC,CAiCV;AAjCD,WAAU,CAAC;IAEG,gBAAc,GAAG,IAAI,OAAO,EAAoB,CAAA;IAE7D,SAAgB,QAAQ,CAAW,KAAa;QAE/C,IAAI,CAAC,KAAK;YAAG,OAAO,IAAI,CAAC,SAAS,CAAE,KAAK,CAAE,CAAA;QAC3C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,UAAU;YAAG,OAAO,IAAI,CAAC,SAAS,CAAE,KAAK,CAAE,CAAA;QAE7F,OAAO,IAAI,CAAC,SAAS,CAAE,KAAK,EAAE,CAAE,KAAK,EAAE,KAAK,EAAE,EAAE;YAE/C,IAAI,CAAC,KAAK;gBAAG,OAAO,KAAK,CAAA;YACzB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,UAAU;gBAAG,OAAO,KAAK,CAAA;YAC3E,IAAI,KAAK,CAAC,OAAO,CAAE,KAAK,CAAE;gBAAG,OAAO,KAAK,CAAA;YAEzC,MAAM,KAAK,GAAG,OAAO,CAAC,cAAc,CAAE,KAAK,CAAE,CAAA;YAC7C,IAAI,CAAC,KAAK;gBAAG,OAAO,KAAK,CAAA;YACzB,IAAI,OAAO,CAAC,cAAc,CAAE,KAAK,CAAE,KAAK,IAAI;gBAAG,OAAO,KAAK,CAAA;YAE3D,IAAI,QAAQ,IAAI,KAAK;gBAAG,OAAO,KAAK,CAAA;YACpC,IAAI,KAAK,YAAY,MAAM;gBAAG,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAA;YAErD,IAAI,GAAG,GAAG,EAAA,cAAc,CAAC,GAAG,CAAE,KAAK,CAAE,CAAA;YACrC,IAAI,GAAG;gBAAG,OAAO,GAAG,CAAA;YAEpB,GAAG,GAAG,SAAS,EAAE,CAAA;YACjB,EAAA,cAAc,CAAC,GAAG,CAAE,KAAK,EAAE,GAAG,CAAE,CAAA;YAEhC,OAAO,GAAG,CAAA;QACX,CAAC,CAAE,CAAA;IAEJ,CAAC;IA3Be,UAAQ,WA2BvB,CAAA;AAEF,CAAC,EAjCS,CAAC,KAAD,CAAC,QAiCV;;;;ACjCD,IAAU,CAAC,CA2IV;AA3ID,WAAU,CAAC;IAEC,yBAAuB,GAAG,IAAI,OAAO,EAAoC,CAAA;IAMpF,SAAgB,iBAAiB,CAAW,IAAW,EAAE,KAAY;QAEpE,IAAI,MAAM,CAAC,EAAE,CAAE,IAAI,EAAG,KAAK,CAAE;YAAG,OAAO,IAAI,CAAA;QAE3C,IAAI,IAAI,KAAK,IAAI;YAAG,OAAO,KAAK,CAAA;QAChC,IAAI,KAAK,KAAK,IAAI;YAAG,OAAO,KAAK,CAAA;QAEjC,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAG,OAAO,KAAK,CAAA;QAC3C,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAG,OAAO,KAAK,CAAA;QAE5C,MAAM,UAAU,GAAG,OAAO,CAAC,cAAc,CAAE,IAAW,CAAE,CAAA;QACxD,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc,CAAE,KAAY,CAAE,CAAA;QAE1D,IAAI,UAAU,KAAK,WAAW;YAAG,OAAO,KAAK,CAAA;QAE7C,IAAI,IAAI,YAAY,OAAO;YAAG,OAAO,MAAM,CAAC,EAAE,CAAE,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,CAAE,CAAA;QACpF,IAAI,IAAI,YAAY,MAAM;YAAG,OAAO,MAAM,CAAC,EAAE,CAAE,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,CAAE,CAAA;QACnF,IAAI,IAAI,YAAY,MAAM;YAAG,OAAO,MAAM,CAAC,EAAE,CAAE,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,CAAE,CAAA;QACnF,IAAI,IAAI,YAAY,IAAI;YAAG,OAAO,MAAM,CAAC,EAAE,CAAE,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,CAAE,CAAA;QACjF,IAAI,IAAI,YAAY,MAAM;YAAG,OAAO,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,OAAO,CAAC,CAAA;QACpG,IAAI,IAAI,YAAY,KAAK;YAAG,OAAO,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,OAAO,CAAC,CAAA;QAErG,IAAI,UAAU,GAAG,EAAA,uBAAuB,CAAC,GAAG,CAAE,IAAI,CAAE,CAAA;QACpD,IAAI,UAAU,EAAG;YAEhB,MAAM,WAAW,GAAG,UAAU,CAAC,GAAG,CAAE,KAAK,CAAE,CAAA;YAC3C,IAAI,OAAO,WAAW,KAAK,SAAS;gBAAG,OAAO,WAAW,CAAA;SAEzD;aAAM;YAEN,UAAU,GAAG,IAAI,OAAO,CAAkB,CAAC,CAAE,KAAK,EAAE,IAAI,CAAE,CAAC,CAAC,CAAA;YAC5D,EAAA,uBAAuB,CAAC,GAAG,CAAE,IAAI,EAAG,UAAU,CAAE,CAAA;SAEhD;QAED,IAAI,MAAgB,CAAA;QAEpB,IAAI;YAEH,IAAI,UAAU,IAAI,CAAC,OAAO,CAAC,cAAc,CAAE,UAAU,CAAE;gBAAG,MAAM,GAAG,YAAY,CAAE,IAAI,EAAE,KAAY,CAAE,CAAA;iBAChG,IAAI,KAAK,CAAC,OAAO,CAAE,IAAI,CAAE;gBAAG,MAAM,GAAG,aAAa,CAAE,IAAI,EAAE,KAAY,CAAE,CAAA;iBACxE,IAAI,IAAI,YAAY,GAAG;gBAAG,MAAM,GAAG,WAAW,CAAE,IAAI,EAAE,KAAY,CAAE,CAAA;iBACpE,IAAI,IAAI,YAAY,GAAG;gBAAG,MAAM,GAAG,WAAW,CAAE,IAAI,EAAE,KAAY,CAAE,CAAA;iBACpE,IAAI,WAAW,CAAC,MAAM,CAAE,IAAI,CAAE;gBAAG,MAAM,GAAG,cAAc,CAAE,IAAI,EAAE,KAAY,CAAE,CAAA;iBAC9E,IAAI,MAAM,CAAC,WAAW,IAAI,IAAI;gBAAG,MAAM,GAAG,iBAAiB,CAAE,IAAI,EAAE,KAAK,CAAE,CAAA;;gBAC1E,MAAM,GAAG,KAAK,CAAA;SAEnB;gBAAS;YACT,UAAU,CAAC,GAAG,CAAE,KAAK,EAAG,MAAM,CAAE,CAAA;SAChC;QAED,OAAO,MAAM,CAAA;IACd,CAAC;IApDe,mBAAiB,oBAoDhC,CAAA;IAED,SAAS,aAAa,CAAyB,IAAW,EAAE,KAAY;QAEvE,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAA;QACvB,IAAI,GAAG,KAAK,KAAK,CAAC,MAAM;YAAG,OAAO,KAAK,CAAA;QAEvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,EAAE,CAAC,EAAG;YAC9B,IAAI,CAAC,iBAAiB,CAAE,IAAI,CAAC,CAAC,CAAC,EAAG,KAAK,CAAC,CAAC,CAAC,CAAE;gBAAG,OAAO,KAAK,CAAA;SAC3D;QAED,OAAO,IAAI,CAAA;IACZ,CAAC;IAED,SAAS,cAAc,CAAE,IAAqB,EAAE,KAAsB;QAErE,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAA;QAC3B,IAAI,GAAG,KAAK,KAAK,CAAC,UAAU;YAAG,OAAO,KAAK,CAAA;QAE3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,EAAE,CAAC,EAAG;YAC9B,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC;gBAAG,OAAO,KAAK,CAAA;SACvC;QAED,OAAO,IAAI,CAAA;IACZ,CAAC;IAED,SAAS,gBAAgB,CACxB,IAAW,EACX,KAAY;QAGZ,OAAO,IAAI,EAAG;YAEb,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;YAC7B,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;YAE/B,IAAI,SAAS,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI;gBAAG,OAAO,KAAK,CAAA;YACrD,IAAI,SAAS,CAAC,IAAI;gBAAG,MAAK;YAE1B,IAAI,CAAC,iBAAiB,CAAE,SAAS,CAAC,KAAK,EAAG,UAAU,CAAC,KAAK,CAAE;gBAAG,OAAO,KAAK,CAAA;SAE3E;QAED,OAAO,IAAI,CAAA;IAEZ,CAAC;IAED,SAAS,WAAW,CAA4B,IAAW,EAAE,KAAY;QACxE,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI;YAAG,OAAO,KAAK,CAAA;QAC3C,OAAO,gBAAgB,CAAE,IAAI,CAAC,MAAM,EAAE,EAAE,KAAK,CAAC,MAAM,EAAE,CAAE,CAAA;IACzD,CAAC;IAED,SAAS,WAAW,CAAgB,IAAuB,EAAG,KAAwB;QACrF,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI;YAAG,OAAO,KAAK,CAAA;QAC3C,OAAO,gBAAgB,CAAE,IAAI,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,CAAE;eAChD,gBAAgB,CAAE,IAAI,CAAC,MAAM,EAAE,EAAE,KAAK,CAAC,MAAM,EAAE,CAAE,CAAA;IACtD,CAAC;IAED,SAAS,YAAY,CAAE,IAAQ,EAAE,KAAS;QAEzC,MAAM,SAAS,GAAG,MAAM,CAAC,mBAAmB,CAAE,IAAI,CAAE,CAAA;QACpD,MAAM,UAAU,GAAG,MAAM,CAAC,mBAAmB,CAAE,KAAK,CAAE,CAAA;QAEtD,IAAI,SAAS,CAAC,MAAM,KAAK,UAAU,CAAC,MAAM;YAAG,OAAO,KAAK,CAAA;QAEzD,KAAK,IAAI,GAAG,IAAI,SAAS,EAAG;YAC3B,IAAI,CAAC,iBAAiB,CAAE,IAAI,CAAE,GAAG,CAAE,EAAE,OAAO,CAAC,GAAG,CAAE,KAAK,EAAE,GAAG,CAAE,CAAE;gBAAG,OAAO,KAAK,CAAA;SAC/E;QAED,OAAO,IAAI,CAAA;IACZ,CAAC;IAED,SAAS,iBAAiB,CAAE,IAAQ,EAAE,KAAS;QAC9C,OAAO,MAAM,CAAC,EAAE,CACf,IAAI,CAAE,MAAM,CAAC,WAAW,CAAE,CAAE,SAAS,CAAE,EACvC,KAAK,CAAE,MAAM,CAAC,WAAW,CAAE,CAAE,SAAS,CAAE,CACxC,CAAA;IACF,CAAC;AAEF,CAAC,EA3IS,CAAC,KAAD,CAAC,QA2IV;;;;AC3ID,IAAU,CAAC,CAsEV;AAtED,WAAU,CAAC;IAEV,MAAa,cAIX,SAAQ,eAAqC;QAE9C,MAAM,CAAC,MAAM,CAKZ,IAAgD;YAGhD,OAAO,SAAS,kBAAkB,CAAE,IAAU,EAAE,IAAU;gBAEzD,MAAM,GAAG,GAAG,cAAc,EAAE,CAAA;gBAC5B,MAAM,OAAO,GAAG,GAAG,EAAE,UAAU,EAAE,CAAA;gBAEjC,KAAK,EAAE,IAAI,OAAO,EAAG;oBAEpB,IAAG,CAAC,CAAE,OAAO,YAAY,cAAc,CAAE;wBAAE,MAAM,KAAK,CAAA;oBAEtD,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI;wBAAG,MAAM,KAAK,CAAA;oBACvC,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI;wBAAG,MAAM,KAAK,CAAA;oBACvC,IAAI,CAAC,iBAAiB,CAAE,OAAO,CAAC,IAAI,EAAE,IAAI,CAAE;wBAAG,MAAM,KAAK,CAAA;oBAE1D,OAAO,OAAO,CAAA;iBACd;gBAOD,OAAO,IAAI,cAAc,CAAE,GAAI,IAAI,EAAE,CAAE,MAAM,CAAC,WAAW,CAAE,IAAI,IAAK,IAAK,IAAI,CAAC,IAAK,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAE,CAAA;YAC7G,CAAC,CAAA;QAEF,CAAC;QAED,QAAQ;YACP,IAAI,IAAI,CAAC,KAAK,YAAY,OAAO;gBAAG,OAAM;YAC1C,IAAI,CAAC,UAAU,EAAE,CAAA;QAClB,CAAC;QAED,GAAG,CAAE,IAAgD;YAEpD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAA;YACvB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA;YAEjB,IAAI,IAAI,YAAY,OAAO,EAAG;gBAE7B,IAAI,CAAC,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAA;gBACpC,IAAI,IAAI,KAAK,IAAI;oBAAG,IAAI,CAAC,IAAI,EAAE,CAAA;gBAE/B,OAAO,IAAI,CAAA;aACX;YAED,IAAI,CAAC,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAA;YAEpC,IAAI,IAAI,CAAC,SAAS;gBAAG,IAAI,CAAC,UAAU,EAAE,CAAA;iBACjC,IAAI,IAAI,KAAK,IAAI;gBAAG,IAAI,CAAC,IAAI,EAAE,CAAA;YAEpC,OAAO,IAAI,CAAA;QACZ,CAAC;KAED;IAlEY,gBAAc,iBAkE1B,CAAA;AAEF,CAAC,EAtES,CAAC,KAAD,CAAC,QAsEV;;;;ACtED,IAAU,CAAC,CAoCV;AApCD,WAAU,CAAC;IAEV,SAAgB,gBAAgB,CAK/B,IAAW,EACX,KAAmB,EACnB,KAA+D;QAG/D,IAAI,CAAC,KAAK;YAAG,KAAK,GAAG,OAAO,CAAC,wBAAwB,CAAE,IAAI,EAAG,KAAK,CAAS,CAAA;QAC5E,MAAM,IAAI,GAAG,KAAK,EAAE,KAAM,IAAI,IAAI,CAAE,KAAK,CAAE,CAAA;QAE3C,MAAM,GAAG,GAAG,OAAO,CAAC,cAAc,CAAE,IAAI,CAAG,CAAA;QAC3C,IAAI,OAAO,GAAG,CAAE,KAAY,CAAE,KAAK,UAAU,EAAG;YAC/C,MAAM,CAAC,cAAc,CAAE,IAAI,EAAG,MAAM,EAAG,EAAE,KAAK,EAAG,GAAG,CAAE,KAAY,CAAE,CAAC,IAAI,EAAE,CAAE,CAAA;SAC7E;QAED,MAAM,IAAI,GAAG,cAAc,CAAC,MAAM,CAAE,IAAI,CAAE,CAAA;QAC1C,MAAM,KAAK,GAAG,UAAsB,GAAI,IAAU;YACjD,MAAM,KAAK,GAAG,IAAI,CAAE,IAAI,IAAI,IAAW,EAAE,IAAI,CAAE,CAAA;YAC/C,OAAO,KAAK,CAAC,IAAI,EAAY,CAAA;QAC9B,CAAC,CAAA;QAED,MAAM,CAAC,cAAc,CAAE,KAAK,EAAG,MAAM,EAAG,EAAE,KAAK,EAAG,IAAI,CAAC,IAAI,GAAG,GAAG,EAAE,CAAE,CAAA;QAErE,MAAM,CAAC,MAAM,CAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAE,CAAA;QAChC,MAAM,MAAM,GAAG,EAAE,GAAI,KAAK,EAAE,KAAK,EAAE,CAAA;QACnC,OAAO,CAAC,cAAc,CAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAE,CAAA;QAE7C,OAAO,MAAM,CAAA;IAEd,CAAC;IAhCe,kBAAgB,mBAgC/B,CAAA;AAEF,CAAC,EApCS,CAAC,KAAD,CAAC,QAoCV;;;ACpCD;AACA;AACA;ACFA;AACA;AACA;;ACFA,IAAU,CAAC,CAeV;AAfD,WAAU,CAAC;IAEV,MAAM,OAAO,GAAG,IAAI,OAAO,EAAmB,CAAA;IAE9C,SAAgB,eAAe,CAAE,KAAc;QAE9C,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAG,OAAO,KAAK,CAAA;QAC5C,IAAI,KAAK,YAAY,OAAO;YAAG,gBAAgB,CAAE,KAAK,CAAE,CAAA;QACxD,IAAI,OAAO,CAAC,GAAG,CAAE,KAAK,CAAE;YAAG,OAAO,KAAK,CAAA;QAEvC,OAAO,CAAC,GAAG,CAAE,KAAK,EAAG,IAAI,CAAE,CAAA;QAC3B,OAAO,IAAI,CAAA;IAEZ,CAAC;IATe,iBAAe,kBAS9B,CAAA;AAEF,CAAC,EAfS,CAAC,KAAD,CAAC,QAeV;;;;ACfD,IAAU,CAAC,CAYV;AAZD,WAAU,CAAC;IAEV,SAAgB,aAAa,CAAE,KAAc;QAE5C,IAAI,KAAK,YAAY,OAAO;YAAG,OAAO,KAAK,CAAA;QAC3C,IAAI,CAAC,eAAe,CAAE,KAAK,CAAE;YAAG,OAAO,KAAK,CAAA;QAE5C,OAAO,CAAC,KAAK,CAAE,KAAK,CAAE,CAAA;QACtB,OAAO,IAAI,CAAA;IAEZ,CAAC;IARe,eAAa,gBAQ5B,CAAA;AAEF,CAAC,EAZS,CAAC,KAAD,CAAC,QAYV;;;;ACZD,IAAU,CAAC,CAyKV;AAzKD,WAAU,CAAC;IAEV,MAAa,cAIX,SAAQ,eAAqC;QAE9C,MAAM,CAAC,IAAI,CAKV,IAAU,EACV,IAA6C;YAG7C,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;YAE9B,MAAM,OAAO,GAAG,MAAM,CAAC,wBAAwB,CAAE,IAAI,IAAI,IAAI,EAAE,KAAK,CAAE,EAAE,KAAK,CAAA;YAC7E,IAAI,OAAO;gBAAG,OAAO,OAAO,CAAA;YAE5B,MAAM,MAAM,GAAG,IAAI,EAAE,CAAE,MAAM,CAAC,WAAW,CAAE,IAAI,CAAE,IAAI,YAAY,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,cAAc,CAAE,IAAI,CAAE,CAAC,CAAC,CAAC,IAAI,CAAE,CAAA;YAC9G,MAAM,GAAG,GAAG,GAAI,MAAO,IAAK,KAAM,EAAE,CAAA;YAEpC,MAAM,KAAK,GAAG,IAAI,cAAc,CAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,EAAiB,CAAE,CACrE;YAAA,CAAE,IAAI,IAAI,IAAI,CAAE,CAAE,KAAK,CAAE,GAAG,KAAK,CAAA;YAElC,OAAO,KAAK,CAAA;QACb,CAAC;QAED,MAAM,CAAC,IAAI,CAKV,IAAU,EACV,IAA8C,EAC9C,GAAY;YAGZ,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;YAC9B,IAAI,IAAI,GAAG,MAAM,CAAC,wBAAwB,CAAE,IAAI,IAAI,IAAI,EAAE,KAAK,CAAE,EAAE,KAAK,CAAA;YACxE,MAAM,MAAM,GAAG,IAAI,EAAE,CAAE,MAAM,CAAC,WAAW,CAAE,IAAI,CAAE,IAAI,YAAY,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,cAAc,CAAE,IAAI,CAAE,CAAC,CAAC,CAAC,IAAI,CAAE,CAAA;YAC9G,MAAM,EAAE,GAAG,GAAI,MAAO,IAAK,IAAI,CAAC,IAAK,IAAK,QAAQ,CAAE,GAAG,CAAG,GAAG,CAAA;YAE7D,IAAI,IAAI,EAAG;gBACV,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAE,EAAE,CAAE,CAAA;gBAC9B,IAAI,OAAO;oBAAG,OAAO,OAAO,CAAA;aAC5B;iBAAM;gBACN,IAAI,GAAG,CAAE,IAAI,IAAI,IAAI,CAAE,CAAE,KAAK,CAAE,GAAG,IAAI,GAAG,EAAW,CAAA;aACrD;YAED,MAAM,KAAK,GAAG,IAAI,cAAc,CAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAE,GAAG,CAAiB,CAAE,CAAA;YAC1E,IAAI,CAAC,GAAG,CAAE,EAAE,EAAE,KAAK,CAAE,CAAA;YAErB,OAAO,KAAK,CAAA;QACb,CAAC;QAED,MAAM,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAqC,CAAA;QAE9D,MAAM,CAAC,KAAK;YAEX,IAAI,gBAAgB,CAAE,cAAc,CAAC,KAAK,CAAE,CAAA;YAE5C,KAAK,MAAM,IAAI,IAAI,cAAc,CAAC,QAAQ,EAAG;gBAE5C,IAAI,IAAI,CAAC,MAAM,KAAK,gBAAgB,CAAC,KAAK,EAAG;oBAC5C,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAE,IAAI,CAAE,CAAA;iBACtC;qBAAM;oBACN,IAAI,CAAC,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAA;oBACpC,IAAI,CAAC,KAAK,EAAE,CAAA;iBACZ;aAED;QAEF,CAAC;QAED,KAAK;YACJ,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAE,IAAI,CAAE,CAAA;QACpC,CAAC;QAMD,MAAM,CAAE,IAAU;YACjB,OAAO,IAAI,CAAC,GAAG,CAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAE,IAAI,CAAC,IAAK,EAAE,GAAI,IAAI,CAAE,CAAE,CAAA;QAC1D,CAAC;QAGD,IAAI;YACH,OAAO,IAAI,CAAC,IAAI,EAAE,CAAA;QACnB,CAAC;QAED,OAAO;YACN,OAAO,MAAM,CAAC,MAAM,CAAE,CAAE,IAA6B,EAAE,EAAE;gBAExD,IAAI,IAAI,KAAK,SAAS;oBAAG,OAAO,IAAI,CAAC,MAAM,CAAE,CAAE,GAAI,IAAI,CAAC,IAAI,EAAE,IAAI,CAAS,CAAW,CAAA;gBACtF,IAAI,CAAC,eAAe,CAAC,IAAI;oBAAG,OAAO,IAAI,CAAC,MAAM,EAAW,CAAA;gBAEzD,IAAI,cAAc,EAAE,YAAY,cAAc,EAAG;oBAChD,OAAO,IAAI,CAAC,IAAI,EAAE,CAAA;iBAClB;qBAAM;oBACN,OAAO,IAAI,CAAC,IAAI,EAAE,CAAA;iBAClB;YAEF,CAAC,EAAE,EAAE,IAAI,EAAE,IAA4C,EAAE,CAAE,CAAA;QAC5D,CAAC;QAED,UAAU;YAET,KAAK,CAAC,UAAU,EAAE,CAAA;YAElB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAA;YACvB,IAAI,iBAAiB,CAAE,IAAI,EAAE,IAAI,CAAE,EAAG;gBACrC,IAAI,CAAC,UAAU,EAAE,CAAA;aACjB;YAED,IAAI,IAAI,CAAC,QAAQ,KAAK,CAAC,EAAG;gBACzB,CAAC;gBAAA,CAAE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAE,CAAE,IAAI,CAAC,KAAK,EAAE,CAAE,GAAG,IAAI,CAAA;aAClD;iBAAM;gBACN,CAAC;gBAAA,CAAE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAE,CAAE,IAAI,CAAC,KAAK,EAAE,CAAE,CAAC,MAAM,CAAE,IAAI,CAAE,MAAM,CAAC,WAAW,CAAE,CAAE,CAAA;aAChF;QAEF,CAAC;QAED,GAAG,CAAE,IAAgD;YAEpD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAA;YAEvB,MAAM,EAAE,IAAI,IAAI,KAAK,IAAI,EAAG;gBAE3B,IAAI;oBACH,IAAI,iBAAiB,CAAE,IAAI,EAAE,IAAI,CAAE;wBAAG,MAAM,MAAM,CAAA;iBAClD;gBAAC,OAAO,KAAU,EAAG;oBACrB,aAAa,CAAE,KAAK,CAAE,CAAA;iBACtB;gBAED,IAAI,iBAAiB,CAAE,IAAI,EAAE,IAAI,CAAE,EAAG;oBACrC,IAAI,CAAC,UAAU,EAAE,CAAA;iBACjB;gBAED,IAAI,iBAAiB,CAAE,IAAI,EAAE,IAAI,CAAE,EAAG;oBACrC,IAAI;wBACH,IAAI,CAAE,MAAM,CAAC,WAAW,CAAE,GAAG,IAAI,CAAE,MAAM,CAAC,WAAW,CAAE,CAAA;qBACvD;oBAAC,MAAM;wBACP,MAAM,CAAC,cAAc,CAAE,IAAI,EAAE,MAAM,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,IAAI,CAAE,MAAM,CAAC,WAAW,CAAE,EAAE,CAAE,CAAA;qBACxF;iBACD;gBAED,IAAI,CAAC,IAAI,CAAC,SAAS;oBAAG,IAAI,CAAC,IAAI,EAAE,CAAA;aAEjC;YAED,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA;YACjB,IAAI,CAAC,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAA;YAEpC,IAAI,IAAI,YAAY,OAAO;gBAAG,OAAO,IAAI,CAAA;YAEzC,IAAI,CAAC,aAAa,EAAE,CAAA;YAEpB,OAAO,IAAI,CAAA;QACZ,CAAC;;IA7ED;QADE,gBAAgB;gDAGjB;IAGD;QADE,gBAAgB;8CAGjB;IA3FW,gBAAc,iBAmK1B,CAAA;IAED,cAAc,CAAC,KAAK,EAAE,CAAA;AAEvB,CAAC,EAzKS,CAAC,KAAD,CAAC,QAyKV;;;;ACzKD,IAAU,CAAC,CAkDV;AAlDD,WAAU,CAAC;IAEV,SAAgB,cAAc,CAC7B,IAAY,EACZ,KAAa,EACb,KAA2D;QAG3D,IAAI,CAAC,KAAK;YAAG,KAAK,GAAG,OAAO,CAAC,wBAAwB,CAAE,IAAI,EAAG,KAAK,CAAE,CAAA;QACrE,MAAM,IAAI,GAAG,KAAK,EAAE,KAAM,IAAI,IAAI,CAAE,KAAK,CAAE,CAAA;QAE3C,MAAM,GAAG,GAAG,OAAO,CAAC,cAAc,CAAE,IAAI,CAAG,CAAA;QAC3C,IAAI,OAAO,GAAG,CAAE,KAAK,CAAE,KAAK,UAAU,EAAG;YACxC,MAAM,CAAC,cAAc,CAAE,IAAI,EAAG,MAAM,EAAG,EAAE,KAAK,EAAG,GAAG,CAAE,KAAK,CAAE,CAAC,IAAI,EAAE,CAAE,CAAA;SACtE;QAED,MAAM,MAAM,GAAG;YACd,GAAI,KAAK;YACT,KAAK,EAAE,UAA6B,GAAI,IAAU;gBAEjD,IAAI,IAAI,GAAG,cAAc,CAAC,IAAI,CAAE,IAAI,EAAE,IAAI,CAAE,CAAA;gBAE5C,IAAG,CAAE,IAAI,CAAC,MAAM,KAAK,CAAC,CAAE,IAAE,CAAE,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,CAAE,EAAE;oBAEpD,IAAI,CAAC,eAAe,CAAC,IAAI;wBAAG,OAAO,IAAI,CAAC,MAAM,EAAE,CAAA;oBAEhD,IAAI,cAAc,EAAE,YAAY,cAAc,EAAG;wBAChD,OAAO,IAAI,CAAC,IAAI,EAAE,CAAA;qBAClB;yBAAM;wBACN,OAAO,IAAI,CAAC,IAAI,EAAE,CAAA;qBAClB;iBAED;gBAED,OAAO,IAAI,CAAC,MAAM,CAAE,IAAI,CAAE,CAAA;YAC3B,CAAC;SACD,CAAA;QAED,OAAO,CAAC,cAAc,CAAE,MAAM,CAAC,KAAK,EAAG,MAAM,EAAG,EAAE,KAAK,EAAG,IAAI,CAAC,IAAI,GAAG,GAAG,EAAE,CAAE,CAAA;QAC7E,MAAM,CAAC,MAAM,CAAE,MAAM,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAE,CAAA;QAEvC,OAAO,CAAC,cAAc,CAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAE,CAAA;QAE7C,OAAO,MAAsF,CAAA;IAC9F,CAAC;IA1Ce,gBAAc,iBA0C7B,CAAA;AAMF,CAAC,EAlDS,CAAC,KAAD,CAAC,QAkDV;;;;AClDD,IAAU,CAAC,CA8CV;AA9CD,WAAU,CAAC;IAEV,SAAgB,cAAc,CAC7B,IAAY,EACZ,KAAa,EACb,KAA2D;QAG3D,IAAI,CAAC,KAAK;YAAG,KAAK,GAAG,OAAO,CAAC,wBAAwB,CAAE,IAAI,EAAG,KAAK,CAAE,CAAA;QACrE,MAAM,IAAI,GAAG,KAAK,EAAE,KAAM,IAAI,IAAI,CAAE,KAAK,CAAE,CAAA;QAE3C,MAAM,GAAG,GAAG,OAAO,CAAC,cAAc,CAAE,IAAI,CAAG,CAAA;QAC3C,IAAI,OAAO,GAAG,CAAE,KAAK,CAAE,KAAK,UAAU,EAAG;YACxC,MAAM,CAAC,cAAc,CAAE,IAAI,EAAG,MAAM,EAAG,EAAE,KAAK,EAAG,GAAG,CAAE,KAAK,CAAE,CAAC,IAAI,EAAE,CAAE,CAAA;SACtE;QAED,MAAM,MAAM,GAAG;YACd,GAAI,KAAK;YACT,KAAK,EAAE,UAA6B,GAAI,IAAU;gBAEjD,IAAI,IAAI,GAAG,cAAc,CAAC,IAAI,CAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAE,CAAA;gBAErD,IAAG,CAAE,IAAI,CAAC,MAAM,KAAK,CAAC,CAAE,IAAE,CAAE,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,CAAE,EAAE;oBAEpD,IAAI,CAAC,eAAe,CAAC,IAAI;wBAAG,OAAO,IAAI,CAAC,MAAM,EAAE,CAAA;oBAEhD,IAAI,cAAc,EAAE,YAAY,cAAc,EAAG;wBAChD,OAAO,IAAI,CAAC,IAAI,EAAE,CAAA;qBAClB;yBAAM;wBACN,OAAO,IAAI,CAAC,IAAI,EAAE,CAAA;qBAClB;iBAED;gBAED,OAAO,IAAI,CAAC,MAAM,CAAE,IAAI,CAAE,CAAA;YAC3B,CAAC;SACD,CAAA;QAED,OAAO,CAAC,cAAc,CAAE,MAAM,CAAC,KAAK,EAAG,MAAM,EAAG,EAAE,KAAK,EAAG,IAAI,CAAC,IAAI,GAAG,GAAG,EAAE,CAAE,CAAA;QAC7E,MAAM,CAAC,MAAM,CAAE,MAAM,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAE,CAAA;QAEvC,OAAO,CAAC,cAAc,CAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAE,CAAA;QAE7C,OAAO,MAAM,CAAA;IACd,CAAC;IA1Ce,gBAAc,iBA0C7B,CAAA;AAEF,CAAC,EA9CS,CAAC,KAAD,CAAC,QA8CV;;;;AC9CD,IAAU,CAAC,CAGV;AAHD,WAAU,CAAC;IACC,UAAQ,GAAG,cAAc,CAAA;IACzB,cAAY,GAAG,cAAc,CAAA;AACzC,CAAC,EAHS,CAAC,KAAD,CAAC,QAGV;;;;ACHD,IAAU,CAAC,CAoBV;AApBD,WAAU,CAAC;IAEV,MAAa,WAAY,SAAQ,WAAW;QAGpC,AAAP,MAAM,CAAC,IAAI;YACV,IAAI,CAAC,OAAO,EAAE,CAAA;YACd,OAAO;gBACN,KAAK,EAAE,IAAI,CAAC,UAAU;gBACtB,MAAM,EAAE,IAAI,CAAC,WAAW;aACxB,CAAA;QACF,CAAC;QAGM,AAAP,MAAM,CAAC,OAAO,CAAE,IAAY,IAAK,OAAO,IAAI,CAAA,CAAC,CAAC;KAE9C;IAXO;QADL,QAAQ;iCAOT;IAGM;QADL,QAAQ;oCACoC;IAZlC,aAAW,cAcvB,CAAA;IAED,IAAI,CAAC,gBAAgB,CAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAAC,OAAO,CAAE,KAAK,CAAE,CAAE,CAAA;AAEzE,CAAC,EApBS,CAAC,KAAD,CAAC,QAoBV;;;;ACpBD,IAAU,CAAC,CA+BV;AA/BD,WAAU,CAAC;IAEV,MAAa,mBAAoB,SAAQ,WAAW;QAG5C,AAAP,MAAM,CAAC,OAAO,CAAE,IAAiB,EAAE,MAAiB;YAEnD,MAAM,OAAO,GAAe,EAAE,CAAA;YAC9B,IAAI,OAAO,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,gBAAgB,CAAC,QAAQ,CAAC,aAAa,CAAA;YAElE,OAAO,OAAO,EAAG;gBAChB,OAAO,CAAC,IAAI,CAAE,OAAO,CAAE,CAAA;gBACvB,OAAO,GAAG,OAAO,CAAC,UAAyB,CAAA;aAC3C;YAED,IAAI,CAAC,IAAI,IAAI,MAAM;gBAAG,OAAO,OAAO,CAAA;YAEpC,IAAI,eAAe,CAAE,GAAE,EAAE;gBAExB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAG,CAAC,CAAC,CAAgB,CAAA;gBAEjD,IAAI,OAAO;oBAAG,OAAO,CAAC,KAAK,EAAE,CAAA;;oBACxB,gBAAgB,CAAC,IAAI,EAAE,CAAA;YAE7B,CAAC,CAAE,CAAA;YAEH,OAAO,OAAO,CAAA;QACf,CAAC;KAED;IAxBO;QADL,QAAQ;4CAuBT;IAzBW,qBAAmB,sBA2B/B,CAAA;AAEF,CAAC,EA/BS,CAAC,KAAD,CAAC,QA+BV;;;;AC/BD,IAAU,CAAC,CAMV;AAND,WAAU,CAAC;IAEV,SAAgB,UAAU,CAAW,KAAgC;QACpE,OAAO,CAAE,KAAK,IAAI,IAAI,CAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,KAAK,CAAE,CAAA;IAC1C,CAAC;IAFe,YAAU,aAEzB,CAAA;AAEF,CAAC,EANS,CAAC,KAAD,CAAC,QAMV;;;;ACND,IAAU,CAAC,CAsBV;AAtBD,WAAU,CAAC;IAEV,IAAI,gBAAgB,CAAC,QAAQ,EAAG;QAE/B,gBAAgB,CAAC,QAAQ,CAAC,eAAe,CAAC,gBAAgB,CACzD,OAAO,EACP,CAAE,KAAkB,EAAE,EAAE;YACvB,mBAAmB,CAAC,OAAO,CAAE,UAAU,CAAE,gBAAgB,CAAC,QAAQ,CAAC,aAAa,CAAE,EAAE,QAAQ,CAAE,CAAA;QAC/F,CAAC,EACD,IAAI,CACJ,CAAA;KAUD;AAEF,CAAC,EAtBS,CAAC,KAAD,CAAC,QAsBV;;;;ACtBD,IAAU,CAAC,CAwEV;AAxED,WAAU,CAAC;IAEV,MAAa,YAAa,SAAQ,YAAY;QAE7C,MAAM,CAAC,IAAI,CAAmE;QAE9E,MAAM,CAAC,GAAG,CAAY,IAAkB;YACvC,OAAO,IAAI,CAAC,IAAI,CAAE,IAAI,CAAE,EAAE,CAAA;QAC3B,CAAC;QAED,MAAM,CAAC,IAAI,CACV,IAAiD;YAEjD,OAAO,IAAI,CAAC,IAAI,CAAE,IAAI,CAAE,CAAA;QACzB,CAAC;QAED,MAAM,KAAK,KAAK;YAEf,OAAO,CACN,KAAa,EACZ,EAAE;gBAKH,MAAM,SAAS,GAAG,CAAE,MAAyC,EAAG,IAAW,EAAE,EAAE,CAAC,IAAI,KAAK,CAAE,GAAI,IAAI,CAAE,CAAA;gBAErG,MAAM,OAAO,GAAG;oBACf,SAAS,EAAG,IAAI,CAAC,IAAI,CAAE,SAAS,CAAE;iBAClC,CAAA;gBAED,OAAO,CAAE,MAAM,CAAC,WAAW,CAAE,GAAG,KAAK,CAAC,IAAI,GAAG,GAAG,CAAA;gBAEhD,OAAO,IAAI,KAAK,CAAE,KAAK,EAAG,OAAO,CAAE,CAAA;YAEpC,CAAC,CAAA;QAEF,CAAC;QAED,MAAM,KAAK,MAAM;YAEhB,OAAO,CACN,GAAY,EACZ,IAAkB,EAClB,KAA0B,EACzB,EAAE;gBACH,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAE,KAAK,CAAC,KAAM,CAAE,CAAA;gBACvC,OAAO,KAAK,CAAA;YACb,CAAC,CAAA;QAEF,CAAC;QAED,MAAM,KAAK,KAAK;YAEf,OAAO,CAMN,GAAU,EACV,IAAY,EACZ,KAAyC,EACxC,EAAE;gBACH,KAAK,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAE,KAAK,CAAC,GAAI,CAAE,CAAA;gBAC/C,OAAO,KAAK,CAAA;YACb,CAAC,CAAA;QAEF,CAAC;KAED;IApEY,cAAY,eAoExB,CAAA;AAEF,CAAC,EAxES,CAAC,KAAD,CAAC,QAwEV;;;;ACxED,IAAU,CAAC,CAwBV;AAxBD,WAAU,CAAC;IAEV,MAAa,SAAU,SAAQ,YAAY;QAE1C,MAAM,CAAC,IAAI,CAAiC,IAA8C;YAEzF,MAAM,KAAK,GAAG,IAAI,OAAO,EAAkB,CAAA;YAE3C,OAAO,UAAwB,IAAa;gBAE3C,IAAI,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,GAAG,CAAE,IAAI,CAAE;oBAAG,OAAO,KAAK,CAAC,GAAG,CAAE,IAAI,CAAE,CAAA;gBAEtE,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAE,IAAI,EAAG,IAAI,CAAE,IAAI,IAAI,CAAA;gBAE5C,KAAK,CAAC,GAAG,CAAE,IAAI,EAAG,GAAI,CAAE,CAAA;gBAExB,OAAO,GAAG,CAAA;YAEX,CAAC,CAAA;QAEF,CAAC;KAED;IApBY,WAAS,YAoBrB,CAAA;AAEF,CAAC,EAxBS,CAAC,KAAD,CAAC,QAwBV;;;;ACxBD,IAAU,CAAC,CAMV;AAND,WAAU,CAAC;IAEV,SAAgB,cAAc,CAAE,IAAa;QAC5C,OAAO,IAAI,CAAC,OAAO,CAAE,KAAK,EAAG,EAAE,CAAE,CAAC,OAAO,CAAE,UAAU,EAAG,GAAG,CAAE,CAAA;IAC9D,CAAC;IAFe,gBAAc,iBAE7B,CAAA;AAEF,CAAC,EANS,CAAC,KAAD,CAAC,QAMV;;;;ACND,IAAU,CAAC,CAiBV;AAjBD,WAAU,CAAC;IAEV,SAAgB,eAAe,CAC9B,IAAiB,EAAE,IAAY;QAG/B,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAA;QAEjC,IAAI;YACH,eAAe,CAAC,IAAI,GAAG,KAAK,CAAA;YAC5B,OAAO,IAAI,EAAE,CAAA;SACb;gBAAS;YACT,eAAe,CAAC,IAAI,GAAG,IAAI,CAAA;SAC3B;IAEF,CAAC;IAbe,iBAAe,kBAa9B,CAAA;AAEF,CAAC,EAjBS,CAAC,KAAD,CAAC,QAiBV;;;;ACjBD,IAAU,CAAC,CAeV;AAfD,WAAU,CAAC;IAMV,SAAgB,eAAe;QAC9B,MAAM,IAAI,GAAG,cAAc,EAAE,CAAA;QAC7B,IAAI,IAAI,YAAY,cAAc,EAAG;YACpC,IAAI,CAAC,KAAK,EAAE,CAAA;SACZ;aAAM;YACN,SAAS,CAAE,IAAI,KAAK,CAAE,+BAA+B,CAAE,CAAE,CAAA;SACzD;IACF,CAAC;IAPe,iBAAe,kBAO9B,CAAA;AAEF,CAAC,EAfS,CAAC,KAAD,CAAC,QAeV;;;;ACfD,IAAU,CAAC,CAgBV;AAhBD,WAAU,CAAC;IAKV,SAAgB,eAAe;QAC9B,MAAM,OAAO,GAAG,cAAc,EAAE,CAAA;QAChC,IAAI,OAAQ,CAAC,IAAI,KAAK,OAAO,EAAG;YAC/B,OAAO,EAAE,MAAM,CAAE,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAE,CAAA;SACvC;QACD,OAAQ,CAAC,IAAI,GAAG,OAAO,CAAA;IACxB,CAAC;IANe,iBAAe,kBAM9B,CAAA;IAED,MAAM,OAAO,GAAG,GAAE,EAAE,GAAE,CAAC,CAAA;IACvB,MAAM,GAAG,GAAG,IAAI,iBAAiB,CAAA;AAElC,CAAC,EAhBS,CAAC,KAAD,CAAC,QAgBV;;;;AChBD,IAAU,CAAC,CAOV;AAPD,WAAU,CAAC;IACV,SAAgB,UAAU,CAAW,KAAa;QACjD,IAAI,MAAM,GAAG,AAAD,CAAmC,GAAG,EAAE,CAAC,KAAK,CAAE,CAAA;QAC5D,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAA;QACpB,MAAM,CAAE,MAAM,CAAC,WAAW,CAAE,GAAG,KAAK,CAAA;QACpC,OAAO,MAAM,CAAA;IACd,CAAC;IALe,YAAU,aAKzB,CAAA;AACF,CAAC,EAPS,CAAC,KAAD,CAAC,QAOV;;;;ACPD,IAAU,CAAC,CA8BV;AA9BD,WAAU,CAAC;IAEV,SAAgB,0BAA0B,CACzC,EAAY,EACZ,KAAyD;QAGzD,KAAK,IAAI,IAAI,IAAI,KAAK,EAAG;YAExB,IAAI,GAAG,GAAG,KAAK,CAAE,IAAI,CAAS,CAAA;YAE9B,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,KAAK,EAAG;gBAEnC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAE,IAAI,CAAE;oBAAG,SAAQ;gBAEvC,EAAE,CAAC,eAAe,CAAE,IAAI,CAAE,CAAA;aAE1B;iBAAM;gBAEN,MAAO,GAAG,GAAG,MAAM,CAAE,GAAG,CAAE,CAAA;gBAC1B,IAAI,EAAE,CAAC,YAAY,CAAE,IAAI,CAAE,KAAK,GAAG;oBAAG,SAAQ;gBAE9C,EAAE,CAAC,YAAY,CAAE,IAAI,EAAG,GAAG,CAAE,CAAA;aAE7B;SAED;IAEF,CAAC;IA1Be,4BAA0B,6BA0BzC,CAAA;AAEF,CAAC,EA9BS,CAAC,KAAD,CAAC,QA8BV;;;;AC9BD,IAAU,CAAC,CA+CV;AA/CD,WAAU,CAAC;IAEV,SAAgB,eAAe,CAAyB,GAAS;QAEhE,IAAI,KAAuC,CAAA;QAC3C,MAAM,IAAI,GAAG,cAAc,CAAC,MAAM,CAAE,GAAgC,CAAE,CAAA;QAEtE,OAAO,IAAI,KAAK,CAAE,GAAG,EAAE;YAEtB,GAAG,CAAE,GAAG,EAAE,KAAK;gBAEd,MAAM,GAAG,GAAG,GAAG,CAAE,KAAK,CAAE,CAAA;gBACxB,IAAI,OAAO,GAAG,KAAK,UAAU;oBAAG,OAAO,GAAG,CAAA;gBAE1C,IAAI,KAAuC,CAAA;gBAC3C,MAAM,IAAI,GAAG,cAAc,CAAC,MAAM,CAAE,GAAG,CAAE,CAAA;gBAEzC,OAAO,SAAS,eAAe,CAAc,GAAI,IAAW;oBAC3D,KAAK,EAAE,UAAU,EAAE,CAAA;oBACnB,KAAK,GAAG,IAAI,CAAE,GAAG,EAAE,IAAI,CAAE,CAAA;oBACzB,OAAO,KAAK,CAAC,KAAK,EAAE,CAAA;gBACrB,CAAC,CAAA;YAEF,CAAC;YAED,KAAK,CAAE,GAAG,EAAE,IAAI,EAAE,IAAI;gBACrB,KAAK,EAAE,UAAU,EAAE,CAAA;gBACnB,KAAK,GAAG,IAAI,CAAE,IAAI,EAAE,IAAI,CAAE,CAAA;gBAC1B,OAAO,KAAK,CAAC,KAAK,EAAE,CAAA;YACrB,CAAC;SAED,CAYA,CAAA;IAEF,CAAC;IA3Ce,iBAAe,kBA2C9B,CAAA;AAEF,CAAC,EA/CS,CAAC,KAAD,CAAC,QA+CV;;;;AC/CD,IAAU,CAAC,CAYV;AAZD,WAAU,CAAC;IAEV,SAAgB,sBAAsB,CACrC,EAAY,EACZ,MAAuD,EACvD,OAAO,GAAG,KAAK;QAEf,KAAK,IAAI,IAAI,IAAI,MAAM,EAAG;YACzB,EAAE,CAAC,gBAAgB,CAAE,IAAI,EAAG,MAAM,CAAE,IAAI,CAAE,EAAG,EAAE,OAAO,EAAE,CAAE,CAAA;SAC1D;IACF,CAAC;IARe,wBAAsB,yBAQrC,CAAA;AAEF,CAAC,EAZS,CAAC,KAAD,CAAC,QAYV;;;;ACZD,IAAU,CAAC,CAoBV;AApBD,WAAU,CAAC;IAEV,SAAgB,sBAAsB,CACrC,EAAY,EACZ,MAA6C;QAE7C,KAAK,IAAI,IAAI,IAAI,MAAM,EAAG;YACzB,IAAI,GAAG,GAAG,MAAM,CAAE,IAAI,CAAE,CAAA;YAExB,MAAM,KAAK,GAAK,EAAmB,CAAC,KAAY,CAAA;YAEhD,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAG;gBAC7B,KAAK,CAAE,IAAI,CAAE,GAAG,GAAI,GAAI,IAAI,CAAA;aAC5B;iBAAM;gBACN,KAAK,CAAE,IAAI,CAAE,GAAG,GAAG,CAAA;aACnB;SAED;IACF,CAAC;IAhBe,wBAAsB,yBAgBrC,CAAA;AAEF,CAAC,EApBS,CAAC,KAAD,CAAC,QAoBV;;;;ACpBD,IAAU,CAAC,CAuDV;AAvDD,WAAU,CAAC;IAEV,SAAgB,wBAAwB,CACvC,EAA+B,EAC/B,UAAqD;QAErD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAA0B,UAAU,CAAE,CAAA;QAE9D,IAAI,QAAQ,GAAiB,EAAE,CAAC,UAAU,CAAA;QAC1C,KAAK,IAAI,IAAI,IAAI,UAAU,EAAG;YAE7B,IAAI,IAAI,IAAI,IAAI;gBAAG,SAAQ;YAE3B,IAAI,IAAI,YAAY,gBAAgB,CAAC,IAAI,EAAG;gBAE3C,OAAO,IAAI,EAAG;oBACb,IAAI,CAAC,QAAQ,EAAG;wBACf,EAAE,CAAC,WAAW,CAAE,IAAI,CAAE,CAAA;wBACtB,MAAK;qBACL;oBACD,IAAI,QAAQ,IAAI,IAAI,EAAG;wBACtB,QAAQ,GAAG,QAAQ,CAAC,WAAW,CAAA;wBAC/B,MAAK;qBACL;yBAAM;wBACN,IAAI,QAAQ,CAAC,GAAG,CAAE,QAAQ,CAAE,EAAG;4BAC9B,EAAE,CAAC,YAAY,CAAE,IAAI,EAAG,QAAQ,CAAE,CAAA;4BAClC,MAAK;yBACL;6BAAM;4BACN,MAAM,EAAE,GAAG,QAAQ,CAAC,WAAW,CAAA;4BAC/B,EAAE,CAAC,WAAW,CAAE,QAAQ,CAAE,CAAA;4BAC1B,QAAQ,GAAG,EAAE,CAAA;yBACb;qBACD;iBACD;aAED;iBAAM;gBACN,IAAI,QAAQ,IAAI,QAAQ,CAAC,QAAQ,KAAK,OAAO,EAAG;oBAC/C,MAAM,GAAG,GAAG,MAAM,CAAE,IAAI,CAAE,CAAA;oBAC1B,IAAI,QAAQ,CAAC,SAAS,KAAK,GAAG;wBAAG,QAAQ,CAAC,SAAS,GAAG,GAAG,CAAA;oBACzD,QAAQ,GAAG,QAAQ,CAAC,WAAW,CAAA;iBAC/B;qBAAM;oBACN,MAAM,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAC,cAAc,CAAE,MAAM,CAAE,IAAI,CAAE,CAAE,CAAA;oBAC3E,EAAE,CAAC,YAAY,CAAE,QAAQ,EAAG,QAAQ,CAAE,CAAA;iBACtC;aACD;SAED;QAED,OAAO,QAAQ,EAAG;YACjB,MAAM,QAAQ,GAAG,QAAQ,CAAA;YACzB,QAAQ,GAAG,QAAQ,CAAC,WAAW,CAAA;YAC/B,EAAE,CAAC,WAAW,CAAE,QAAQ,CAAE,CAAA;SAC1B;IACF,CAAC;IAnDe,0BAAwB,2BAmDvC,CAAA;AAEF,CAAC,EAvDS,CAAC,KAAD,CAAC,QAuDV;;;;ACvDD,IAAU,CAAC,CAiBV;AAjBD,WAAU,CAAC;IAEV,SAAgB,sBAAsB,CACrC,EAAY,EACZ,MAAmC;QAEnC,KAAK,IAAI,GAAG,IAAI,MAAM,EAAG;YAExB,MAAM,GAAG,GAAS,MAAM,CAAE,GAAG,CAAE,CAAA;YAE/B,IAAI,GAAG,KAAK,SAAS;gBAAG,SAAQ;YAGhC,EAAE,CAAE,GAAG,CAAE,GAAG,GAAG,CAAA;SACf;IACF,CAAC;IAbe,wBAAsB,yBAarC,CAAA;AAEF,CAAC,EAjBS,CAAC,KAAD,CAAC,QAiBV;;;ACjBD;AACA;AACA;ACFA;AACA;AACA;;ACFA,IAAU,CAAC,CAodV;AApdD,WAAU,CAAC;IAIV,SAAgB,uBAAuB;QACtC,OAAO,WAAW,CAAC,IAAI,EAAE,CAAC,KAAK,CAAA;IAChC,CAAC;IAFe,yBAAuB,0BAEtC,CAAA;IAED,SAAgB,wBAAwB;QACvC,OAAO,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,CAAA;IACjC,CAAC;IAFe,0BAAwB,2BAEvC,CAAA;IAED,SAAgB,mBAAmB,CAAE,MAAe;QACnD,OAAO,MAAM,CAAA;IACd,CAAC;IAFe,qBAAmB,sBAElC,CAAA;IAED,MAAM,YAAY,GAAG,IAAI,OAAO,EAAsB,CAAA;IAGtD,MAAa,SAAU,SAAQ,WAAW;QAGlC,AAAP,MAAM,CAAC,IAAI,CAAiD,EAAU;YACrE,OAAO,IAAI,IAA4B,CAAA;QACxC,CAAC;QAGD,OAAO;YACN,IAAI;gBACH,IAAI,CAAC,QAAQ,EAAE,CAAA;gBACf,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,CAAA;aAC7B;YAAC,OAAO,KAAK,EAAG;gBAChB,aAAa,CAAE,KAAK,CAAE,CAAA;aACtB;QACF,CAAC;QAGM,AAAP,MAAM,CAAC,QAAQ;YAEd,MAAM,KAAK,GAAG,gBAAgB,CAAC,QAAQ,CAAC,gBAAgB,CAAE,yCAAyC,CAAE,CAAA;YAErG,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAG,CAAC,IAAI,CAAC,EAAG,EAAE,CAAC,EAAG;gBAE9C,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAE,CAAC,CAAE,CAAC,YAAY,CAAE,eAAe,CAAG,CAAA;gBAE7D,MAAM,IAAI,GAAG,CAAC,CAAE,IAAI,CAAsB,CAAA;gBAC1C,IAAI,CAAC,IAAI,EAAG;oBACX,OAAO,CAAC,KAAK,CAAE,yCAA0C,IAAK,EAAE,CAAE,CAAA;oBAClE,SAAQ;iBACR;gBAED,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAE,CAAC,CAAE,CAAA;gBAC3B,IAAI,CAAC,QAAQ,CAAE,KAAK,CAAC,IAAI,CAAE,CAAC,CAAE,CAAE,CAAA;gBAChC,IAAI,CAAC,OAAO,EAAE,CAAA;aAEd;QAEF,CAAC;QAGD,KAAK;YACJ,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAE,WAAW,CAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAA;QACpE,CAAC;QAGD,OAAO,CAAE,IAAc;YACtB,IAAI,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAA;YAC1B,MAAM,KAAK,GAAG,mBAAmB,CAAC,OAAO,CAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,CAAC,CAAC,CAAE,IAAI,CAAE,CAAC,CAAC,CAAC,EAAE,CAAE,CAAE,CAAA;YACtG,OAAO,KAAK,CAAC,OAAO,CAAE,IAAI,CAAE,KAAK,CAAC,CAAC,CAAA;QACpC,CAAC;QAED,SAAS,CAAE,MAAM,GAAG,EAAE;YACrB,OAAO,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAE,MAAM,CAAE,CAAA;QAC5C,CAAC;QAID,QAAQ;YACP,OAAO,cAAc,CAAE,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAE,IAAI,KAAK,CAAA;QAC9D,CAAC;QAGD,cAAc,KAAK,OAAO,8BAA8B,CAAA,CAAC,CAAC;QAG1D,GAAG;YACF,OAAO,EAAuD,CAAA;QAC/D,CAAC;QAID,WAAW;YACV,OAAO,IAAI,CAAC,GAAG,EAAE,CAAA;QAClB,CAAC;QAID,aAAa;YAEZ,IAAI,GAAG,GAAG,CAAC,CAAA;YACX,IAAI;gBAEH,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;gBACtB,IAAI,CAAC,GAAG;oBAAG,OAAO,CAAC,CAAA;gBAEnB,GAAG,CAAC,OAAO,CAAE,IAAI,CAAC,EAAE;oBACnB,IAAI,IAAI,YAAY,SAAS,EAAG;wBAC/B,GAAG,GAAG,IAAI,CAAC,GAAG,CAAE,GAAG,EAAG,IAAI,CAAC,aAAa,EAAE,CAAE,CAAA;qBAC5C;gBACF,CAAC,CAAE,CAAA;aAEH;YAAC,OAAO,KAAU,EAAG;gBACrB,aAAa,CAAE,KAAK,CAAE,CAAA;gBACtB,OAAO,EAAE,CAAA;aACT;YAED,OAAO,GAAG,CAAA;QACX,CAAC;QAED,aAAa;YACZ,OAAO,IAAI,CAAC,aAAa,EAAE,CAAA;QAC5B,CAAC;QAID,cAAc;YAEb,IAAI,GAAG,GAAG,CAAC,CAAA;YACX,IAAI;gBAEH,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,EAAG;oBAErC,IAAI,IAAI,YAAY,SAAS,EAAG;wBAC/B,GAAG,GAAG,IAAI,CAAC,GAAG,CAAE,GAAG,EAAG,IAAI,CAAC,cAAc,EAAE,CAAE,CAAA;qBAC7C;iBAED;aAED;YAAC,OAAO,KAAU,EAAG;gBACrB,aAAa,CAAE,KAAK,CAAE,CAAA;gBACtB,OAAO,EAAE,CAAA;aACT;YAED,OAAO,GAAG,CAAA;QACX,CAAC;QAED,MAAM,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAe,CAAA;QAGxC,SAAS;YACR,IAAI,eAAe,CAAE,GAAE,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,CAAE,KAAK,SAAS,EAAG;gBAC5D,eAAe,EAAE,CAAA;gBACjB,OAAO,IAAI,CAAA;aACX;iBAAM;gBACN,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,qBAAqB,EAAE,CAAA;gBAC3F,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAA;aAClD;QACF,CAAC;QAED,MAAM;YACL,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAA;QACvB,CAAC;QAGD,QAAQ,CAAE,IAAe;YAExB,eAAe,EAAE,CAAA;YAEjB,MAAM,IAAI,GAAG,IAAI,IAAI,gBAAgB,CAAC,QAAQ,CAAC,eAAe,CAAE,IAAI,CAAC,cAAc,EAAE,EAAG,IAAI,CAAC,QAAQ,EAAE,CAAE,CAAA;YAEzG,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA;YACxB,IAAI,CAAC,YAAY,CAAE,IAAI,EAAG,EAAE,CAAE,CAAA;YAC9B,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAE,IAAI,GAAG,EAAE,GAAG,GAAG,CAAE,CAAA;YAE7C,0BAA0B,CAAE,IAAI,EAAG,IAAI,CAAC,WAAW,EAAE,CAAE,CAAA;YAEvD,MAAM,MAAM,GAAG,eAAe,CAAE,IAAI,CAAC,KAAK,EAAE,CAAE,CAAA;YAC9C,sBAAsB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;YAEpC,OAAO,IAAI,CAAA;QACZ,CAAC;QAGD,SAAS;YAER,IAAI,CAAC,MAAM,EAAE,CAAA;YAEb,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;YAC9B,IAAI,CAAC,GAAG;gBAAG,OAAM;YAEjB,KAAK,MAAM,EAAE,IAAI,GAAG,EAAG;gBACtB,IAAI,EAAE,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,WAAW,IAAI,EAAE,EAAG;oBACvD,EAAE,CAAC,WAAW,CAAC,EAAE,CAAA;iBACjB;aACD;YAED,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAA;QAEvB,CAAC;QAGD,QAAQ,CAAE,IAAe;YACxB,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAE,IAAI,CAAE,CAAA;YAElC,MAAM,EAAE,IAAI;gBAEX,0BAA0B,CAAE,IAAI,EAAG,EAAE,cAAc,EAAG,IAAI,EAAE,CAAE,CAAA;gBAE9D,IAAI;oBAEH,IAAI,CAAC,MAAM,EAAE,CAAA;iBAEb;wBAAS;oBAET,KAAK,IAAI,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,EAAG;wBACnC,IAAI,MAAM,YAAY,WAAW,EAAG;4BACnC,MAAM,CAAC,QAAQ,EAAE,CAAA;yBACjB;qBACD;iBAED;aAED;YAAC,OAAO,KAAU,EAAG;gBAErB,aAAa,CAAE,KAAK,CAAE,CAAA;gBAEtB,0BAA0B,CAAE,IAAI,EAAG,EAAE,cAAc,EAAG,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,CAAE,CAAA;gBAE9F,IAAI,KAAK,YAAY,OAAO;oBAAG,MAAM,MAAM,CAAA;gBAC3C,IAAI,CAAE,YAAY,CAAC,GAAG,CAAE,KAAK,CAAE,IAAI,IAAI,CAAE,KAAK,IAAI;oBAAG,MAAM,MAAM,CAAA;gBAEjE,IAAI;oBACH,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CACrC;oBAAE,IAAqB,CAAC,SAAS,GAAG,OAAO,CAAC,OAAO,CAAE,OAAO,EAAE,UAAU,CAAE,CAAA;iBAC3E;gBAAC,MAAM,GAAE;gBAEV,YAAY,CAAC,GAAG,CAAE,KAAK,EAAE,IAAI,CAAE,CAAA;aAE/B;YAED,IAAI;gBACH,IAAI,CAAC,IAAI,EAAE,CAAA;aACX;YAAC,OAAO,KAAK,EAAG;gBAChB,aAAa,CAAE,KAAK,CAAE,CAAA;aACtB;YAED,OAAO,IAAI,CAAA;QACZ,CAAC;QAGD,eAAe;YACd,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAA;YAE5B,sBAAsB,CAAE,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,CAAE,CAAA;YAEjD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;YACxB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,CAAA;YAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,EAAE,CAAA;YAE3B,0BAA0B,CAAE,IAAI,EAAG,IAAI,CAAE,CAAA;YACzC,sBAAsB,CAAE,IAAI,EAAG,KAAK,CAAE,CAAA;YAEtC,OAAO,IAAI,CAAA;QACZ,CAAC;QAED,IAAI;YACH,OAAO,IAAW,CAAA;QACnB,CAAC;QAGD,MAAM;YAEL,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,EAAE,CAAA;YAEnC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;YAC9B,IAAI,CAAC,GAAG;gBAAG,OAAM;YAEjB,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAE,KAAK,CAAC,EAAE;gBAC9B,IAAI,KAAK,IAAI,IAAI;oBAAG,OAAO,IAAI,CAAA;gBAC/B,OAAO,CAAE,KAAK,YAAY,SAAS,CAAE;oBACpC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE;oBAClB,CAAC,CAAC,KAAK,YAAY,gBAAgB,CAAC,IAAI;wBACxC,CAAC,CAAC,KAAK;wBACP,CAAC,CAAC,MAAM,CAAE,KAAK,CAAE,CAAA;YACnB,CAAC,CAAC,CAAA;YAEF,wBAAwB,CAAE,IAAI,EAAG,KAAK,CAAE,CAAA;YAExC,KAAK,MAAM,EAAE,IAAI,GAAG;gBAAG,IAAI,EAAE,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,UAAU,IAAI,EAAE;oBAAG,EAAE,CAAC,UAAU,CAAC,EAAE,CAAA;YAE9F,sBAAsB,CAAE,IAAI,EAAG,IAAI,CAAC,KAAK,EAAE,CAAE,CAAA;QAE9C,CAAC;QAGM,AAAP,MAAM,CAAC,YAAY;YAClB,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAA;YAE5B,IAAI,OAAO,GAAG,KAAK,CAAA;YACnB,MAAM,OAAO,GAAG,EAA4B,CAAA;YAE5C,OAAO,OAAO,EAAG;gBAChB,OAAO,CAAC,IAAI,CAAE,OAAO,CAAC,WAA+B,CAAE,CAAA;gBACvD,IAAG,CAAC,CAAE,OAAO,YAAY,SAAS,CAAE;oBAAE,MAAK;gBAC3C,OAAO,GAAG,MAAM,CAAC,cAAc,CAAE,OAAO,CAAE,CAAA;aAC1C;YAED,OAAO,OAAO,CAAA;QACf,CAAC;QAGD,gBAAgB;YACf,MAAM,KAAK,GAAG,EAAc,CAAA;YAC5B,IAAI,KAAK,GAAG,eAAe,CAAE,IAAI,CAAwC,CAAA;YAEzE,IAAI,KAAK,EAAE,IAAI,YAAY,SAAS,EAAG;gBAEtC,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;gBACrC,MAAM,OAAO,GAAG,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;gBAEnE,KAAK,IAAI,KAAK,IAAM,KAAK,CAAC,IAAI,CAAC,WAAiC,CAAC,YAAY,EAAE,EAAG;oBACjF,IAAI,MAAM,IAAI,KAAK,CAAC,SAAS;wBAAG,KAAK,CAAC,IAAI,CAAE,IAAI,CAAC,CAAC,CAAC,cAAc,CAAE,KAAK,CAAE,GAAG,OAAO,CAAE,CAAA;;wBACjF,MAAK;iBACV;gBAED,KAAK,IAAI,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAG;oBAClD,KAAK,CAAC,IAAI,CAAE,MAAM,GAAG,OAAO,CAAE,CAAA;iBAC9B;aAED;YAED,OAAO,KAAK,CAAA;QACb,CAAC;QAGD,UAAU;YACT,MAAM,KAAK,GAAG,EAAc,CAAA;YAE5B,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,gBAAgB,EAAE,EAAG;gBAC1C,IAAI,KAAK,CAAC,OAAO,CAAE,IAAI,CAAE,GAAG,CAAC;oBAAG,KAAK,CAAC,IAAI,CAAE,IAAI,CAAE,CAAA;aAClD;YAED,KAAK,IAAI,KAAK,IAAM,IAAI,CAAC,WAAiC,CAAC,YAAY,EAAE,EAAG;gBAC3E,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,cAAc,CAAE,KAAK,CAAE,CAAA;gBAC3C,IAAI,CAAC,IAAI;oBAAG,SAAQ;gBACpB,IAAI,KAAK,CAAC,OAAO,CAAE,IAAI,CAAE,GAAG,CAAC;oBAAG,KAAK,CAAC,IAAI,CAAE,IAAI,CAAE,CAAA;aAClD;YAED,OAAO,KAAK,CAAA;QACb,CAAC;QAED,WAAW;YACV,IAAI,KAAK,GAAS,EAAE,CAAA;YAEpB,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE;gBAAG,KAAK,CAAE,IAAI,CAAC,OAAO,CAAE,KAAK,EAAG,EAAE,CAAE,CAAC,OAAO,CAAE,SAAS,EAAG,GAAG,CAAE,CAAC,WAAW,EAAE,CAAE,GAAG,EAAE,CAAA;YAEtH,OAAO,KAAK,CAAA;QACb,CAAC;QAED,IAAI;YACH,OAAO,EAAE,CAAA;QACV,CAAC;QAED,UAAU;YACT,OAAO;gBACN,SAAS,EAAE,IAAI,CAAC,cAAc,EAAE;gBAChC,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE;aAG9B,CAAA;QACF,CAAC;QAED,KAAK;YACJ,OAAO,EAAE,CAAA;QACV,CAAC;QAED,KAAK;YACJ,OAAO,EAAE,CAAA;QACV,CAAC;QAED,KAAK;YACJ,OAAO,EAAE,CAAA;QACV,CAAC;QAED,OAAO;YACN,OAAO,EAA0B,CAAA;QAClC,CAAC;QAED,CAAE,oBAAoB,CAAE;YACvB,OAAO,oBAAoB,CAAE,EAAE,EAC9B,sBAAsB,CAAE,IAAI,CAAE,CAG9B,CAAA;QACF,CAAC;QAGD,CAAC,SAAS,CACT,KAAoD,EACpD,OAAO,EAAiB;YAGxB,IAAI,KAAK,CAAE,IAAI,CAAE;gBAAG,OAAO,MAAM,CAAE,GAAI,IAAI,EAAE,IAAI,CAAE,CAAA;YAEnD,IAAI;gBACH,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,GAAG,EAAE,EAAG;oBAC/B,IAAI,IAAI,YAAY,SAAS,EAAG;wBAC/B,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,CAAE,KAAK,EAAE,CAAE,GAAI,IAAI,EAAE,IAAI,CAAE,CAAE,CAAA;qBAClD;iBACD;aACD;YAAC,OAAO,KAAc,EAAG;gBACzB,IAAI,KAAK,YAAY,OAAO;oBAAG,gBAAgB,CAAE,KAAK,CAAE,CAAA;gBACxD,aAAa,CAAE,KAAK,CAAE,CAAA;aACtB;QAEF,CAAC;QAGD,YAAY,CACX,IAAuB;YAGvB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;YAEvB,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAE,IAAI,CAAC,EAAE;gBACpC,IAAI,IAAI,YAAY,SAAS,EAAG;oBAC/B,OAAO,IAAI,CAAC,GAAG,CAAE,IAAI,CAAE,CAAA;iBACvB;qBAAM;oBACN,OAAO,KAAK,CAAA;iBACZ;YACF,CAAC,CAAC,CAAA;YAEF,IAAI,KAAK,IAAI,CAAC,EAAG;gBACd,IAAI,CAAE,KAAK,CAAiB,CAAC,YAAY,CAAE,IAAI,CAAE,CAAA;aACnD;QAEF,CAAC;QAGD,cAAc,CAAE,IAAe,EAAE,QAA+B,OAAO;YAEtE,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAE,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,CAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAA;YAC3D,IAAI,CAAC,YAAY,CAAE,IAAI,GAAG,CAAE,IAAI,CAAE,CAAE,CAAA;YAEpC,IAAI,CAAC,SAAS,EAAE,CAAA;YAEhB,IAAI,CAAC,QAAQ,EAAE,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;QAEjD,CAAC;QAED,KAAK;YAEJ,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAA;YACnC,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE;gBAAG,OAAM;YAEhE,IAAI,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAE,GAAE,EAAE;gBAEhC,IAAI,CAAC,QAAQ,EAAE,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAA;gBACjE,IAAI,CAAC,OAAO,CAAE,IAAI,CAAE,CAAA;YAErB,CAAC,CAAE,CAAA;QAEJ,CAAC;;IAnbD;QADE,QAAQ;4CAQT;IA0BD;QADE,QAAQ;0CAGT;IAGD;QADE,QAAQ;4CAKT;IAQD;QADE,SAAS,CAAC,MAAM;6CAGjB;IAkBD;QADE,QAAQ;kDAqBT;IAQD;QADE,QAAQ;mDAoBT;IAKD;QADE,QAAQ;8CAST;IAOD;QADE,QAAQ;6CAiBT;IAGD;QADE,QAAQ;8CAgBT;IAGD;QADE,QAAQ;6CA+CT;IAGD;QADE,QAAQ;oDAcT;IAOD;QADE,QAAQ;2CAuBT;IAmBD;QADE,SAAS,CAAC,MAAM;qDAsBjB;IAGD;QADE,SAAS,CAAC,MAAM;+CAejB;IAvUM;QADL,YAAY;+BAGb;IAaM;QADL,QAAQ;mCAqBT;IA8OM;QADL,SAAS,CAAC,MAAM;uCAcjB;IAjSW,WAAS,YA6brB,CAAA;AAIF,CAAC,EApdS,CAAC,KAAD,CAAC,QAodV;;;;ACpdD,IAAU,CAAC,CAER;AAFH,WAAU,CAAC;IAAG,iBAAiB,CAAE,wBAAwB,EACxD,gtEAAgtE,CAChtE,CAAA;AAAC,CAAC,EAFO,CAAC,KAAD,CAAC,QAER;;;;ACEH,IAAU,CAAC,CAQV;AARD,WAAU,CAAC;IAEV,gBAAgB,CAAC,QAAQ,EAAE,gBAAgB,CAC1C,kBAAkB,EAClB,GAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,EACzB,EAAE,IAAI,EAAE,IAAI,EAAE,CACd,CAAA;AAEF,CAAC,EARS,CAAC,KAAD,CAAC,QAQV;;;ACZD;AACA;AACA;ACFA;AACA;AACA;ACFA;AACA;AACA;ACFA;AACA;AACA;ACFA;AACA;AACA;ACFA;AACA;AACA;ACFA;AACA;AACA;;ACFA,IAAU,CAAC,CA4HV;AA5HD,WAAU,CAAC;IAEV,SAAgB,gBAAgB,CAI/B,SAA6B,EAC7B,OAAgB;QAGhB,IAAI,KAAK,GAAG,EAAc,CAAA;QAE1B,MAAM,KAAK,GAAG,cAAc,CAAE,YAAY,CAAC,EAAE,CAAC,CAAC,cAAc,CAAE,SAAS,CAAE,CAAE,CAAA;QAC5E,MAAM,KAAK,GAAG,CAAE,IAAa,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAE,QAAQ,EAAG,MAAM,CAAC,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC,WAAW,EAAE,CAAE,CAAA;QAEjG,MAAM,UAAU,GAAG,CAAE,MAAe,EAAG,IAAe,EAAG,MAAuB,EAAE,EAAE;YAEnF,MAAM,KAAK,GAAG,EAAc,CAAA;YAE5B,MAAM,QAAQ,GAAG,CAAE,MAAe,EAAG,IAAe,EAAE,EAAE;gBACvD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;oBAAG,OAAO,MAAM,IAAI,IAAK,KAAM,GAAG,CAAA;gBACvD,IAAI,GAAG,GAAG,IAAK,KAAM,IAAK,IAAI,CAAC,IAAI,CAAC,GAAG,CAAE,GAAG,CAAA;gBAC5C,IAAI,MAAM;oBAAG,GAAG,GAAI,MAAM,GAAG,UAAU,GAAG,GAAG,GAAG,GAAG,CAAA;gBACnD,OAAO,GAAG,CAAA;YACX,CAAC,CAAA;YAED,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAE,MAAM,CAAE,CAAC,OAAO,EAAE,EAAG;gBAEnD,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAG;oBAExB,MAAM,OAAO,GAAG,CAAE,IAAe,EAAG,GAAS,EAAG,EAAE;wBAEjD,IAAI,KAAK,CAAC,OAAO,CAAE,GAAG,CAAE,EAAG;4BAE1B,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAE,KAAK,EAAG,MAAM,CAAE,CAAC,QAAQ,CAAE,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAE,EAAG;gCACjE,GAAG,GAAG,GAAG,CAAC,GAAG,CAAE,CAAC,CAAC,EAAE;oCAClB,OAAO,MAAM,CAAC,OAAO,CAAE,CAAC,CAAE,CAAC,GAAG,CAAE,CAAC,CAAE,CAAC,EAAG,CAAC,CAAE,EAAC,EAAE;wCAC5C,IAAI,CAAC,KAAK,IAAI;4CAAG,OAAO,KAAK,CAAE,CAAC,CAAE,CAAA;wCAClC,IAAI,CAAC,KAAK,KAAK;4CAAG,OAAO,IAAI,CAAA;wCAC7B,OAAO,MAAM,CAAE,CAAC,CAAE,CAAA;oCACnB,CAAC,CAAE,CAAC,MAAM,CAAE,OAAO,CAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;gCAChC,CAAC,CAAC,CAAC,IAAI,CAAE,GAAG,CAAE,CAAA;6BACd;iCAAM;gCACN,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;6BACnB;4BAED,KAAK,CAAC,IAAI,CAAC,KAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAE,KAAM,GAAI,KAAK,CAAC,CAAA;yBAEhD;6BAAM,IAAI,GAAG,CAAC,WAAW,KAAK,MAAM,EAAG;4BAEvC,KAAK,IAAI,MAAM,IAAI,GAAG,EAAG;gCACxB,OAAO,CAAE,CAAE,GAAI,IAAI,EAAI,KAAK,CAAE,MAAM,CAAE,CAAE,EAAG,GAAG,CAAE,MAAM,CAAE,CAAE,CAAA;6BAC1D;yBAED;6BAAM;4BAEN,KAAK,CAAC,IAAI,CAAC,KAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAE,KAAM,GAAI,KAAK,CAAC,CAAA;yBAEhD;oBAEF,CAAC,CAAA;oBAED,OAAO,CAAE,CAAE,KAAK,CAAC,GAAG,CAAC,CAAE,EAAG,MAAM,CAAC,GAAG,CAAC,CAAE,CAAA;iBAEvC;qBAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAG;oBAE/B,UAAU,CAAE,MAAM,EAAG,CAAE,GAAI,IAAI,EAAG,GAAG,CAAC,WAAW,EAAE,CAAE,EAAG,MAAM,CAAC,GAAG,CAAC,CAAE,CAAA;iBAErE;qBAAM,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,EAAG;oBAE3B,UAAU,CAAE,QAAQ,CAAE,MAAM,EAAG,IAAI,CAAE,GAAG,WAAW,GAAG,cAAc,CAAE,GAAG,CAAE,GAAG,IAAI,EAAG,EAAE,EAAG,MAAM,CAAC,GAAG,CAAC,CAAE,CAAA;iBAEvG;qBAAM,IAAI,GAAG,KAAK,GAAG,EAAG;oBAExB,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAQ,CAAA;oBAEhC,KAAK,IAAI,IAAI,IAAI,KAAK,EAAG;wBACxB,UAAU,CAAE,QAAQ,CAAE,MAAM,EAAG,IAAI,CAAE,GAAG,aAAa,GAAG,cAAc,CAAE,IAAI,CAAE,GAAG,IAAI,EAAG,EAAE,EAAG,KAAK,CAAC,IAAI,CAAC,CAAE,CAAA;qBAC1G;iBAED;qBAAM,IAAI,GAAG,KAAK,GAAG,EAAG;oBAExB,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAQ,CAAA;oBAEhC,KAAK,IAAI,IAAI,IAAI,KAAK,EAAG;wBACxB,KAAK,IAAI,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,EAAG;4BAC7B,UAAU,CAAE,QAAQ,CAAE,MAAM,EAAG,IAAI,CAAE,GAAG,UAAU,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,SAAS,CAAE,GAAG,CAAE,GAAG,IAAI,EAAG,EAAE,EAAG,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAE,CAAA;yBACxH;qBACD;iBAED;qBAAM,IAAI,GAAG,KAAK,QAAQ,EAAG;oBAE7B,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAQ,CAAA;oBAEhC,KAAK,IAAI,KAAK,IAAI,KAAK,EAAG;wBAEzB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;wBAEjB,UAAU,CAAE,MAAM,EAAG,IAAI,EAAG,KAAK,CAAC,KAAK,CAAC,CAAE,CAAA;wBAE1C,KAAK,CAAC,IAAI,CAAE,GAAI,GAAI,IAAK,KAAM,MAAM,CAAE,CAAA;qBAEvC;iBAED;qBAAM;oBAEN,UAAU,CAAE,QAAQ,CAAE,MAAM,EAAG,IAAI,CAAE,GAAG,GAAG,EAAG,EAAE,EAAG,MAAM,CAAC,GAAG,CAAC,CAAE,CAAA;iBAEhE;aAED;YAED,IAAI,KAAK,CAAC,MAAM,EAAG;gBAClB,KAAK,CAAC,IAAI,CAAE,GAAI,QAAQ,CAAE,MAAM,EAAG,IAAI,CAAG,OAAQ,KAAK,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,CAAE,KAAK,CAAE,CAAA;aAClF;QAEF,CAAC,CAAA;QAED,UAAU,CAAE,EAAE,EAAG,EAAE,EAAG,OAAO,CAAE,CAAA;QAE/B,OAAO,KAAK,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAEhC,CAAC;IAxHe,kBAAgB,mBAwH/B,CAAA;AAEF,CAAC,EA5HS,CAAC,KAAD,CAAC,QA4HV;;;;AC5HD,IAAU,CAAC,CAqCV;AArCD,WAAU,CAAC;IAEV,MAAa,WAAY,SAAQ,SAAS;QAGzC,QAAQ,CAAE,IAAe;YAExB,MAAM,IAAI,GAAG,IAAI,IAAQ,eAAe,CAAE,IAAI,CAAoC,CAAC,IAAoB,CAAC,QAAQ,EAAE,CAAA;YAElH,0BAA0B,CAAE,IAAI,EAAG,IAAI,CAAC,WAAW,EAAE,CAAE,CAAA;YAEvD,MAAM,MAAM,GAAG,eAAe,CAAE,IAAI,CAAC,KAAK,EAAE,CAAE,CAAA;YAC9C,KAAK,IAAI,UAAU,IAAI,MAAM,EAAG;gBAC/B,IAAI,CAAC,gBAAgB,CACpB,UAAU,EACV,MAAM,CAAE,UAAU,CAAE,EACpB,EAAE,OAAO,EAAG,KAAK,EAAS,CAC1B,CAAA;aACD;YAED,OAAO,IAAI,CAAA;QACZ,CAAC;QAED,WAAW;YACV,OAAO,EAAE,CAAA;QACV,CAAC;QAED,KAAK;YACJ,OAAO,EAAE,CAAA;QACV,CAAC;QAED,MAAM;YACL,IAAI,CAAC,eAAe,EAAE,CAAA;QACvB,CAAC;KAED;IA9BA;QADE,QAAQ;+CAiBT;IAnBW,aAAW,cAiCvB,CAAA;AAEF,CAAC,EArCS,CAAC,KAAD,CAAC,QAqCV;;;;ACrCD,IAAU,CAAC,CAiBV;AAjBD,WAAU,CAAC;IAEV,SAAgB,iBAAiB,CAIhC,SAA6B,EAC7B,MAAe;QAGf,OAAO,iBAAiB,CACvB,SAAS,CAAC,IAAI,EACd,gBAAgB,CAAE,SAAS,EAAG,MAAM,CAAE,CACtC,CAAA;IAEF,CAAC;IAbe,mBAAiB,oBAahC,CAAA;AAEF,CAAC,EAjBS,CAAC,KAAD,CAAC,QAiBV;;;;ACjBD,IAAU,CAAC,CA0EV;AA1ED,WAAU,CAAC;IACV,MAAa,WAAY,SAAQ,SAAS;QAQzC,UAAU,CAAC,GAAS;YACnB,IAAK,GAAG,KAAK,SAAS;gBAAG,OAAO,GAAY,CAAA;YAC5C,OAAO,CAAC,CAAA;QACT,CAAC;QAQD,WAAW,CAAC,GAAS;YACpB,IAAK,GAAG,KAAK,SAAS;gBAAG,OAAO,GAAY,CAAA;YAC5C,OAAO,CAAC,CAAA;QACT,CAAC;QASD,KAAK;YACJ,OAAO;gBACN,GAAG,KAAK,CAAC,KAAK,EAAE;gBAChB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;aACzB,CAAA;QACF,CAAC;QASD,KAAK;YACJ,OAAO;gBACN,GAAG,KAAK,CAAC,KAAK,EAAE;gBAChB,MAAM,EAAE,CAAC,KAAW,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;aACjD,CAAA;QACF,CAAC;QAOD,QAAQ;YACP,OAAO,CAAC,CAAC,CAAA;QACV,CAAC;QAQD,YAAY,CAAC,KAAW;YACvB,IAAK,KAAK,KAAK,SAAS;gBAAG,OAAO,KAAc,CAAA;YAChD,OAAO,IAAW,CAAA;QACnB,CAAC;KACD;IA/DA;QADE,QAAQ;iDAIT;IAQD;QADE,QAAQ;kDAIT;IA6CD;QADE,QAAQ;mDAIT;IAtEW,aAAW,cAuEvB,CAAA;AAEF,CAAC,EA1ES,CAAC,KAAD,CAAC,QA0EV;;;;AC1ED,IAAU,CAAC,CAqBV;AArBD,WAAU,CAAC;IAEV,MAAa,iBAAkB,SAAQ,WAAW;QAGzC;QACA;QACA;QACA;QAJR,YACQ,KAAW,EACX,MAAe,EACf,QAAgC,EAChC,UAA0C,EAAE,OAAO,EAAG,IAAI,EAAE;YAEnE,KAAK,EAAE,CAAA;YALA,UAAK,GAAL,KAAK,CAAM;YACX,WAAM,GAAN,MAAM,CAAS;YACf,aAAQ,GAAR,QAAQ,CAAwB;YAChC,YAAO,GAAP,OAAO,CAAqD;YAGnE,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAE,IAAI,CAAC,MAAM,EAAG,IAAI,CAAC,QAAQ,EAAG,IAAI,CAAC,OAAO,CAAE,CAAA;QAC1E,CAAC;QAED,UAAU;YACT,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAE,IAAI,CAAC,MAAM,EAAG,IAAI,CAAC,QAAQ,EAAG,IAAI,CAAC,OAAO,CAAE,CAAA;YAC5E,KAAK,CAAC,UAAU,EAAE,CAAA;QACnB,CAAC;KAED;IAjBY,mBAAiB,oBAiB7B,CAAA;AAEF,CAAC,EArBS,CAAC,KAAD,CAAC,QAqBV;;;;ACrBD,IAAU,CAAC,CA2BV;AA3BD,WAAU,CAAC;IAEV,MAAa,UAAW,SAAQ,WAAW;QAGnC,AAAP,MAAM,CAAC,MAAM;YACZ,OAAO,IAAI,iBAAiB,CAAE,IAAI,CAAC,CAAC,CAAC,gBAAgB,EAAG,aAAa,EAAG,GAAE,EAAE;gBAC3E,IAAI,CAAC,MAAM,CAAE,IAAI,CAAE,CAAA;YACpB,CAAC,CAAE,CAAA;QACJ,CAAC;QAGM,AAAP,MAAM,CAAC,KAAK;YACX,OAAO,IAAI,iBAAiB,CAAE,IAAI,CAAC,CAAC,CAAC,gBAAgB,EAAG,YAAY,EAAG,GAAE,EAAE;gBAC1E,IAAI,CAAC,MAAM,CAAE,KAAK,CAAE,CAAA;YACrB,CAAC,CAAE,CAAA;QACJ,CAAC;QAGM,AAAP,MAAM,CAAC,MAAM,CAAE,IAAe;YAC7B,IAAI,CAAC,MAAM,EAAE,CAAA;YACb,IAAI,CAAC,KAAK,EAAE,CAAA;YACZ,OAAO,IAAI,IAAI,KAAK,CAAA;QACrB,CAAC;KAED;IApBO;QADL,QAAQ;kCAKT;IAGM;QADL,QAAQ;iCAKT;IAGM;QADL,QAAQ;kCAKT;IArBW,YAAU,aAuBtB,CAAA;AAEF,CAAC,EA3BS,CAAC,KAAD,CAAC,QA2BV;;;;AC3BD,IAAU,CAAC,CA0DV;AA1DD,WAAU,CAAC;IAAC,IAAA,EAAE,CA0Db;IA1DW,WAAA,EAAE;QAEb,MAAM,EAAE,GAAG,EAAG,GAAG,EAAG,EAAE,EAAE,GAAG,eAAe,CAAA;QAE1C,iBAAiB,CAAE,WAAW,EAAG;YAChC,QAAQ,EAAE,MAAM;SAChB,CAAE,CAAA;QAEH,iBAAiB,CAAE,WAAW,EAAG;YAEhC,OAAO,EAAE,MAAM;YACf,QAAQ,EAAE,SAAS;YACnB,IAAI,EAAE;gBACL,SAAS,EAAE,QAAQ;gBACnB,IAAI,EAAE,CAAC;gBACP,MAAM,EAAE,CAAC;gBACT,KAAK,EAAE,CAAC;aACR;YACD,OAAO,EAAE,MAAM;YACf,SAAS,EAAE,SAAS;YACpB,SAAS,EAAE,YAAY;YACvB,UAAU,EAAE,iBAAiB;YAC7B,MAAM,EAAE;gBACP,OAAO,EAAE,CAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAE;aACxB;YACD,SAAS,EAAE,GAAG,CAAC,GAAG,CAAC;YACnB,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC;YAClB,uBAAuB,EAAE,OAAO;YAChC,OAAO,EAAE,SAAS;YAElB,GAAG,EAAE;gBACJ,SAAS,EAAE;oBACV,SAAS,EAAE,eAAe;iBAC1B;aACD;YAED,qBAAqB,EAAE;gBACtB,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC;gBACf,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC;aAChB;YAED,QAAQ,EAAE;gBACT,qBAAqB,EAAE;oBACtB,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;oBACd,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC;iBACf;aACD;YAED,QAAQ,EAAG;gBACV,OAAO,EAAG;oBACT,QAAQ,EAAE,SAAS;oBACnB,OAAO,EAAE,MAAM;oBACf,SAAS,EAAE,OAAO;iBAClB;aACD;SAED,CAAC,CAAA;IAEH,CAAC,EA1DW,EAAE,GAAF,IAAE,KAAF,IAAE,QA0Db;AAAD,CAAC,EA1DS,CAAC,KAAD,CAAC,QA0DV;;;;AC1DD,IAAU,CAAC,CAyCV;AAzCD,WAAU,CAAC;IAAC,IAAA,EAAE,CAyCb;IAzCW,WAAA,EAAE;QAEb,MAAa,WAAY,SAAQ,CAAC,CAAC,WAAW;YAG7C,UAAU,CAAE,IAAc,EAAE,KAAe;gBAE1C,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAA;gBAC1B,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,KAAK;oBAAG,EAAE,CAAC,SAAS,GAAG,IAAI,CAAA;gBAEtD,OAAO,EAAE,CAAC,SAAS,CAAA;YACpB,CAAC;YAGD,WAAW,CAAE,IAAc,EAAE,KAAe;gBAE3C,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAA;gBAC1B,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,KAAK;oBAAG,EAAE,CAAC,UAAU,GAAG,IAAI,CAAA;gBAEvD,OAAO,EAAE,CAAC,UAAU,CAAA;YACrB,CAAC;YAED,YAAY,CAAE,IAAa;gBAE1B,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAiB,CAAA;gBAEzC,IAAI,CAAC,WAAW,CAAE,EAAE,CAAC,UAAU,EAAE,OAAO,CAAE,CAAA;gBAC1C,IAAI,CAAC,UAAU,CAAE,EAAE,CAAC,SAAS,EAAE,OAAO,CAAE,CAAA;YAEzC,CAAC;YAED,cAAc;gBACb,OAAO,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAK,CAAC,CAAC,CAAC,CAAC,CAAA;YAC9C,CAAC;YAED,aAAa;gBACZ,OAAO,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAK,CAAC,CAAC,CAAC,CAAC,CAAA;YAC9C,CAAC;SAED;QAlCA;YADE,QAAQ;qDAOT;QAGD;YADE,QAAQ;sDAOT;QAlBW,cAAW,cAqCvB,CAAA;IAEF,CAAC,EAzCW,EAAE,GAAF,IAAE,KAAF,IAAE,QAyCb;AAAD,CAAC,EAzCS,CAAC,KAAD,CAAC,QAyCV;;;;ACzCD,IAAU,CAAC,CAmNV;AAnND,WAAU,CAAC;IACV,MAAa,SAAU,SAAQ,SAAS;QAOvC,QAAQ;YACP,OAAO,SAAS,CAAA;QACjB,CAAC;QASD,KAAK;YACJ,OAAO;gBACN,GAAG,KAAK,CAAC,KAAK,EAAE;gBAChB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;aACzB,CAAA;QACF,CAAC;QAUD,GAAG;YACF,OAAO;gBACN,IAAI,CAAC,IAAI,EAAE;gBACX,IAAI,CAAC,IAAI,EAAE;gBACX,IAAI,CAAC,IAAI,EAAE;aACO,CAAA;QACpB,CAAC;QAOD,QAAQ;YACP,OAAO,CAAC,CAAC,CAAA;QACV,CAAC;QAOD,IAAI;YACH,OAAO,IAAW,CAAA;QACnB,CAAC;QASD,aAAa;YACZ,OAAO;gBACN,IAAI,CAAC,IAAI,EAAE;gBACX,IAAI,CAAC,KAAK,EAAE;aACM,CAAA;QACpB,CAAC;QAUD,KAAK;YACJ,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;YAElC,GAAG,CAAC,QAAQ,GAAG,GAAG,EAAE,CAAC,IAAI,CAAA;YACzB,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,CAAA;YAEpC,OAAO,GAAG,CAAA;QACX,CAAC;QAOD,KAAK;YACJ,OAAO,EAC0B,CAAA;QAClC,CAAC;QAQD,KAAK;YACJ,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;YAElC,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;YAE5B,OAAO,GAAG,CAAA;QACX,CAAC;QASD,IAAI;YACH,OAAO;gBACN,IAAI,CAAC,KAAK,EAAE;gBACZ,IAAI,CAAC,KAAK,EAAE;aACM,CAAA;QACpB,CAAC;QAWD,IAAI;YACH,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;YAElC,GAAG,CAAC,cAAc,GAAG,GAAG,EAAE,CAAC,EAAE,CAAA;YAC7B,GAAG,CAAC,QAAQ,GAAG,GAAG,EAAE,CAAC,QAAQ,CAAA;YAC7B,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;YAE3B,OAAO,GAAG,CAAA;QACX,CAAC;QAOD,IAAI;YACH,OAAO,EAC0B,CAAA;QAClC,CAAC;QAOD,eAAe,CAAC,GAAS;YACxB,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;QACnC,CAAC;QAUD,IAAI;YACH,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;YAEpC,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;YAE3B,OAAO,GAAG,CAAA;QACX,CAAC;QAOD,IAAI;YACH,OAAO,EACkB,CAAA;QAC1B,CAAC;QAUD,IAAI;YACH,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;YAElC,GAAG,CAAC,QAAQ,GAAG,GAAG,EAAE,CAAC,QAAQ,CAAA;YAC7B,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;YAE3B,OAAO,GAAG,CAAA;QACX,CAAC;KACD;IA/HA;QADE,QAAQ;0CAQT;IAkBD;QADE,QAAQ;0CAOT;IAyBD;QADE,QAAQ;yCAST;IA6BD;QADE,QAAQ;yCAOT;IAoBD;QADE,QAAQ;yCAQT;IA/MW,WAAS,YAgNrB,CAAA;AAEF,CAAC,EAnNS,CAAC,KAAD,CAAC,QAmNV;;;;ACnND,IAAU,CAAC,CA8GV;AA9GD,WAAU,CAAC;IAAC,IAAA,EAAE,CA8Gb;IA9GW,WAAA,EAAE;QAEb,MAAM,EAAE,GAAG,EAAG,GAAG,EAAE,GAAG,eAAe,CAAA;QACrC,MAAM,EAAE,IAAI,EAAE,GAAG,eAAe,CAAA;QAEhC,iBAAiB,CAAE,SAAS,EAAG;YAE9B,OAAO,EAAE,MAAM;YACf,IAAI,EAAE;gBACL,KAAK,EAAE,MAAM;gBACb,SAAS,EAAE,QAAQ;aACnB;YACD,QAAQ,EAAE,UAAU;YACpB,SAAS,EAAE,SAAS;YACpB,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC;YAClB,SAAS,EAAE,GAAG,CAAC,GAAG,CAAC;YACnB,SAAS,EAAE,YAAY;YACvB,KAAK,EAAE,UAAU,CAAC,IAAI;YAGtB,QAAQ,EAAE;gBACT,OAAO,EAAE,MAAM;aACf;YAED,IAAI,EAAE;gBACL,OAAO,EAAE,MAAM;gBACf,QAAQ,EAAE,MAAM;gBAChB,cAAc,EAAE,UAAU;gBAC1B,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE,UAAU;gBACpB,MAAM,EAAE,CAAC;gBACT,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;gBACjB,OAAO,EAAE,QAAQ,CAAC,KAAK;gBACvB,UAAU,EAAE;oBACX,KAAK,EAAE,UAAU,CAAC,IAAI;iBACtB;gBACD,MAAM,EAAE;oBACP,MAAM,EAAE,QAAQ,CAAC,KAAK;iBACtB;gBACD,SAAS,EAAE,2CAA2C;gBACtD,MAAM,EAAE,CAAC;aACT;YAED,KAAK,EAAE;gBAEN,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;gBACjB,MAAM,EAAE,CAAC;gBACT,OAAO,EAAE,QAAQ,CAAC,IAAI;gBACtB,GAAG,EAAE,QAAQ,CAAC,IAAI;gBAClB,SAAS,EAAE,QAAQ;gBACnB,UAAU,EAAE,KAAK;gBAEjB,IAAI,EAAE;oBACL,IAAI,EAAE,SAAS;oBACf,MAAM,EAAE,QAAQ;iBAChB;gBAED,IAAI,EAAE;oBACL,IAAI,EAAE,CAAC;oBACP,MAAM,EAAE,CAAC;oBACT,KAAK,EAAE,MAAM;iBACb;aAED;YAED,KAAK,EAAE;gBAEN,IAAI,EAAE;oBACL,KAAK,EAAE,MAAM;oBACb,IAAI,EAAE,IAAI;oBACV,MAAM,EAAE,CAAC;iBACT;gBACD,OAAO,EAAE,MAAM;gBACf,cAAc,EAAE,UAAU;gBAC1B,UAAU,EAAE,YAAY;gBACxB,QAAQ,EAAE,MAAM;aAEhB;YAED,IAAI,EAAE;gBACL,IAAI,EAAE;oBACL,IAAI,EAAE,IAAI;oBACV,MAAM,EAAE,CAAC;oBACT,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC;iBACf;gBACD,OAAO,EAAE,QAAQ,CAAC,KAAK;aACvB;YAED,IAAI,EAAE;gBACL,OAAO,EAAE,MAAM;gBACf,cAAc,EAAE,eAAe;gBAC/B,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,CAAC;gBACT,QAAQ,EAAE,QAAQ;gBAClB,UAAU,EAAE;oBACX,KAAK,EAAE,UAAU,CAAC,IAAI;iBACtB;gBACD,MAAM,EAAE;oBACP,MAAM,EAAE,QAAQ,CAAC,KAAK;iBACtB;gBACD,SAAS,EAAE,4CAA4C;gBACvD,MAAM,EAAE,CAAC;gBACT,OAAO,EAAE,QAAQ,CAAC,KAAK;gBACvB,QAAQ,EAAE;oBACT,OAAO,EAAE,MAAM;iBACf;aACD;SAED,CAAE,CAAA;IAEJ,CAAC,EA9GW,EAAE,GAAF,IAAE,KAAF,IAAE,QA8Gb;AAAD,CAAC,EA9GS,CAAC,KAAD,CAAC,QA8GV;;;;AC9GD,IAAU,CAAC,CAyJV;AAzJD,WAAU,CAAC;IACV,MAAa,SAAU,SAAQ,SAAS;QAOvC,GAAG;YACF,OAAO,EAAE,CAAA;QACV,CAAC;QAOD,QAAQ;YACP,OAAO,GAAG,CAAA;QACX,CAAC;QAaD,IAAI;YACH,OAAO;gBACN,GAAG,KAAK,CAAC,IAAI,EAAE;gBACf,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE;gBACvB,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE;gBACvB,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;gBACrB,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE;gBAC1B,gBAAgB,EAAE,IAAI,CAAC,OAAO,EAAE;aAChC,CAAA;QACF,CAAC;QAOD,GAAG;YACF,OAAO;gBACN,IAAI,CAAC,KAAK,EAAE;aACoB,CAAA;QAClC,CAAC;QAOD,GAAG;YACF,OAAO,EACN,CAAA;QACF,CAAC;QASD,KAAK;YACJ,OAAO;gBACN,GAAG,KAAK,CAAC,KAAK,EAAE;gBAChB,KAAK,EAAE,CAAC,KAAW,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;aACzC,CAAA;QACF,CAAC;QAOD,UAAU;YACT,OAAO,EAAE,CAAA;QACV,CAAC;QAOD,IAAI;YACH,OAAO,EAAE,CAAA;QACV,CAAC;QAOD,SAAS;YACR,OAAO,IAAI,CAAC,IAAI,EAAE,CAAA;QACnB,CAAC;QAOD,MAAM;YACL,OAAO,OAAO,CAAA;QACf,CAAC;QAOD,SAAS;YACR,OAAO,EAAE,CAAA;QACV,CAAC;QAOD,OAAO;YACN,OAAO,KAAK,CAAA;QACb,CAAC;QAQD,WAAW,CAAC,KAAW;YACtB,IAAK,KAAK,KAAK,SAAS;gBAAG,OAAO,KAAc,CAAA;YAChD,OAAO,IAAW,CAAA;QACnB,CAAC;QAOD,KAAK,CAAC,KAAW;YAChB,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;QAC/B,CAAC;KACD;IAbA;QADE,QAAQ;gDAIT;IA5IW,WAAS,YAsJrB,CAAA;AAEF,CAAC,EAzJS,CAAC,KAAD,CAAC,QAyJV;;;;ACzJD,IAAU,CAAC,CAEV;AAFD,WAAU,CAAC;IACC,aAAW,GAAG,gBAAgB,CAAA;AAC1C,CAAC,EAFS,CAAC,KAAD,CAAC,QAEV;;;;ACFD,IAAU,CAAC,CA8IV;AA9ID,WAAU,CAAC;IAEV,MAAa,cAAe,SAAQ,WAAW;QA+G1B;QA5Gb,AAAP,MAAM,CAAC,IAAI,CAAE,IAAa;YAEzB,IAAI,IAAI,KAAK,SAAS,EAAG;gBAExB,IAAI,GAAG,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAA;aAErC;iBAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAE,IAAI,CAAE,EAAG;gBAE1C,IAAI,gBAAgB,CAAE,GAAE,EAAE;oBAEzB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;oBACxB,MAAM,IAAI,GAAG,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAA;oBAC3C,IAAI,IAAI,KAAK,IAAI;wBAAG,OAAM;oBAE1B,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAA;oBACxC,OAAO,CAAC,YAAY,CAAE,OAAO,CAAC,KAAK,EAAE,gBAAgB,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAE,CAAA;gBAE7E,CAAC,CAAE,CAAA;aAEH;YAED,IAAI,gBAAgB,CAAC,MAAM,KAAK,gBAAgB,CAAC,IAAI,EAAG;gBACvD,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAE,CAAE,YAAY,EAAE,IAAI,CAAE,EAAE,GAAG,CAAE,CAAA;aAClE;YAED,OAAO,IAAI,CAAA;QACZ,CAAC;QAGM,AAAP,MAAM,CAAC,WAAW;YACjB,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACrB,CAAC;QAGM,AAAP,MAAM,CAAC,aAAa;YACnB,OAAO,IAAI,GAAG,CAAE,IAAI,CAAC,IAAI,EAAE,EAAE,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAE,CAAC,QAAQ,EAAE,CAAA;QACzE,CAAC;QAGM,AAAP,MAAM,CAAC,IAAI,CAAE,IAA4C;YAExD,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,CAAE,IAAI,IAAI,IAAI,CAAC,SAAS,CAAE,IAAI,CAAE,CAAE,CAAC,KAAK,CAAE,KAAK,CAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;YAC9E,IAAI,MAAM,GAAG,IAAI,CAAC,KAAK,CAAE,IAAI,CAAC,SAAS,CAAE,CAAA;YAEzC,IAAI,MAAM,GAAmC,EAAE,CAAA;YAC/C,MAAM,CAAC,OAAO,CACb,KAAK,CAAC,EAAE;gBACP,IAAI,CAAC,KAAK;oBAAG,OAAM;gBACnB,IAAI,IAAI,GAAG,KAAK,CAAC,KAAK,CAAE,GAAG,CAAE,CAAC,GAAG,CAAE,kBAAkB,CAAE,CAAA;gBACvD,MAAM,CAAE,IAAI,CAAC,KAAK,EAAG,CAAE,GAAG,IAAI,CAAC,IAAI,CAAE,GAAG,CAAE,CAAA;YAC3C,CAAC,CACD,CAAA;YAED,OAAO,MAAM,CAAA;QACd,CAAC;QAGM,AAAP,MAAM,CAAC,QAAQ,CAAE,MAAiB;YAEjC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;YACxB,MAAM,GAAG,GAAmC,EAAE,CAAA;YAE9C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAG;gBACxB,IAAI,MAAM,CAAC,OAAO,CAAE,GAAG,CAAE,IAAI,CAAC;oBAAG,SAAQ;gBACzC,GAAG,CAAE,GAAG,CAAE,GAAG,IAAI,CAAE,GAAG,CAAE,CAAA;aACxB;YAED,OAAO,GAAG,CAAA;QACX,CAAC;QAGM,AAAP,MAAM,CAAC,KAAK,CAAE,GAAY,EAAG,IAAqB;YACjD,MAAM,QAAQ,GAAG,CAAE,IAAI,KAAK,KAAK,CAAC,CAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,GAAI,IAAI,CAAC,IAAI,EAAE,EAAG,CAAE,GAAG,CAAE,EAAG,IAAI,EAAE,CAAA;YACpF,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAE,QAAQ,CAAE,CAAE,GAAG,CAAE,CAAA;YAC1C,OAAO,CAAE,KAAK,IAAI,IAAI,CAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAA;QACxC,CAAC;QAED,MAAM,CAAC,IAAI,CAAE,IAAoC;YAChD,OAAO,IAAI,CAAC,SAAS,CAAC;gBACrB,GAAI,IAAI,CAAC,QAAQ,CAAE,MAAM,CAAC,IAAI,CAAE,IAAI,CAAE,CAAE;gBACxC,GAAI,IAAI;aACR,CAAC,CAAA;QACH,CAAC;QAED,MAAM,CAAC,MAAM,GAAG,GAAG,CAAA;QACnB,MAAM,CAAC,SAAS,GAAG,GAAG,CAAA;QAGf,AAAP,MAAM,CAAC,SAAS,CAAE,IAA2C;YAC5D,MAAM,MAAM,GAAc,EAAE,CAAA;YAC5B,KAAK,IAAI,GAAG,IAAI,IAAI,EAAG;gBACtB,IAAI,IAAI,IAAI,IAAI,CAAE,GAAG,CAAE;oBAAG,SAAQ;gBAClC,MAAM,GAAG,GAAG,IAAI,CAAE,GAAG,CAAE,CAAA;gBACvB,MAAM,CAAC,IAAI,CAAE,CAAE,GAAG,CAAE,CAAC,MAAM,CAAE,GAAG,CAAC,CAAC,CAAC,CAAE,GAAG,CAAE,CAAC,CAAC,CAAC,EAAE,CAAE,CAAC,GAAG,CAAE,IAAI,CAAC,MAAM,CAAE,CAAC,IAAI,CAAE,GAAG,CAAE,CAAE,CAAA;aAClF;YAED,OAAO,IAAI,GAAG,CAAE,GAAG,GAAG,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,IAAI,CAAE,IAAI,CAAC,SAAS,CAAE,EAAG,IAAI,CAAC,aAAa,EAAE,CAAE,CAAC,QAAQ,EAAE,CAAA;QACtG,CAAC;QAGM,AAAP,MAAM,CAAC,EAAE,CAAE,IAA2C;YACrD,gBAAgB,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAE,IAAI,CAAE,CAAA;QACxD,CAAC;QAED,MAAM,CAAC,MAAM,CAAE,GAAY;YAC1B,OAAO,kBAAkB,CAAE,GAAG,CAAE,CAAC,OAAO,CAAE,KAAK,EAAG,KAAK,CAAE,CAAC,OAAO,CAAE,KAAK,EAAG,KAAK,CAAE,CAAA;QACnF,CAAC;QAED,YAAoB,SAAS,EAAE;YAC9B,KAAK,EAAE,CAAA;YADY,WAAM,GAAN,MAAM,CAAK;QAE/B,CAAC;QAED,KAAK,CAAE,GAAY,EAAG,IAAc;YACnC,OAAS,IAAI,CAAC,WAAsC,CAAC,KAAK,CAAE,IAAI,CAAC,MAAM,GAAG,GAAG,EAAG,IAAI,CAAE,CAAA;QACvF,CAAC;QAED,GAAG,CAAE,OAAgB;YACpB,OAAO,IAAM,IAAI,CAAC,WAAsC,CAAE,IAAI,CAAC,MAAM,GAAG,OAAO,GAAG,GAAG,CAAE,CAAA;QACxF,CAAC;QAED,IAAI,CAAE,IAAoC;YACzC,IAAI,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;YACxB,IAAI,IAAI,GAAmC,EAAE,CAAA;YAC7C,KAAK,IAAI,GAAG,IAAI,IAAI,EAAG;gBACtB,IAAI,CAAE,MAAM,GAAG,GAAG,CAAE,GAAG,IAAI,CAAE,GAAG,CAAE,CAAA;aAClC;YACD,OAAS,IAAI,CAAC,WAAsC,CAAC,IAAI,CAAE,IAAI,CAAE,CAAA;QAClE,CAAC;;IA/HM;QADL,QAAQ;oCA2BT;IAGM;QADL,QAAQ;2CAGT;IAGM;QADL,QAAQ;6CAGT;IAGM;QADL,QAAQ;oCAgBT;IAGM;QADL,YAAY;wCAYb;IAGM;QADL,YAAY;qCAKb;IAaM;QADL,YAAY;yCAUb;IAGM;QADL,WAAW;kCAGZ;IAzGW,gBAAc,iBAoI1B,CAAA;IAED,MAAM,qBAAqB,GAAG,CAAE,KAAa,EAAE,EAAE;QAChD,cAAc,CAAC,IAAI,CAAE,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAE,CAAA;IACtD,CAAC,CAAA;IAED,IAAI,CAAC,gBAAgB,CAAE,YAAY,EAAG,qBAAqB,CAAE,CAAA;AAE9D,CAAC,EA9IS,CAAC,KAAD,CAAC,QA8IV;;;;AC9ID,IAAU,CAAC,CA6DV;AA7DD,WAAU,CAAC;IAEV,MAAM,EAAE,GAAG,EAAE,GAAG,eAAe,CAAA;IAC/B,MAAM,EAAE,KAAK,EAAE,GAAG,eAAe,CAAA;IAEjC,iBAAiB,CAAE,SAAS,EAAG;QAE9B,cAAc,EAAE,MAAM;QACtB,KAAK,EAAE,UAAU,CAAC,OAAO;QACzB,MAAM,EAAE,cAAc;QACtB,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,QAAQ,CAAC,IAAI;QACtB,SAAS,EAAE,YAAY;QACvB,QAAQ,EAAE,UAAU;QACpB,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC;QAClB,GAAG,EAAE,QAAQ,CAAC,KAAK;QAEnB,MAAM,EAAE;YACP,MAAM,EAAE,QAAQ,CAAC,KAAK;SACtB;QAED,QAAQ,EAAE;YAET,UAAU,EAAE;gBACX,KAAK,EAAE,UAAU,CAAC,KAAK;aACvB;SAED;QAED,QAAQ,EAAE;YAET,OAAO,EAAE,MAAM;YAEf,UAAU,EAAE;gBACX,KAAK,EAAE,UAAU,CAAC,KAAK;aACvB;SAED;QAED,eAAe,EAAE;YAChB,OAAO,EAAE,MAAM;YACf,UAAU,EAAE;gBACX,KAAK,EAAE,UAAU,CAAC,KAAK;aACvB;SACD;QAED,SAAS,EAAE;YACV,KAAK,EAAE,UAAU,CAAC,KAAK;SACvB;QAED,GAAG,EAAE;YACJ,gBAAgB,EAAE;gBACjB,MAAM,EAAE;oBACP,KAAK,EAAE,UAAU,CAAC,OAAO;oBACzB,UAAU,EAAE,KAAK;iBACjB;aACD;SACD;KAED,CAAE,CAAA;AAEJ,CAAC,EA7DS,CAAC,KAAD,CAAC,QA6DV;;;;AC7DD,IAAU,CAAC,CA2EV;AA3ED,WAAU,CAAC;IAAC,IAAA,EAAE,CA2Eb;IA3EW,WAAA,EAAE;QAEb,MAAa,SAAU,SAAQ,CAAC,CAAC,SAAS;YAGzC,UAAU;gBACT,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;YACpD,CAAC;YAGD,GAAG;gBACF,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,cAAc,CAAE,IAAI,CAAC,SAAS,EAAE,CAAE,CAAC,IAAI,CAAE,IAAI,CAAC,GAAG,EAAE,CAAE,CAAA;YACxE,CAAC;YAGD,OAAO;gBACN,MAAM,IAAI,GAAG,EAAE,CAAA;gBACf,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE;oBAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAA;gBAEzC,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,cAAc,CAAE,IAAI,CAAC,SAAS,EAAE,CAAE,CAAC,IAAI,CAAE,IAAI,CAAE,CAAA;YAClE,CAAC;YAGD,UAAU;gBACT,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,EAAE,CAAA;gBACzC,OAAO,IAAI,GAAG,CAAE,IAAI,CAAC,GAAG,EAAE,EAAG,IAAI,CAAE,CAAA;YACpC,CAAC;YAGD,OAAO;gBAEN,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,WAAW,EAAE,CAAA;gBAChD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,CAAA;gBAE3C,IAAI,IAAI,KAAK,MAAM;oBAAG,OAAO,IAAI,CAAA;gBAEjC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;gBAEvB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAE,IAAI,CAAE,CAAC,MAAM,CAAE,GAAG,CAAC,EAAE,CAAC,IAAI,CAAE,GAAG,CAAE,IAAI,IAAI,CAAE,CAAA;gBACrE,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;oBAAG,OAAO,KAAK,CAAA;gBAEpC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAG;oBACxB,IAAI,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAE,GAAG,CAAE,IAAI,IAAI,CAAE,GAAG,CAAE;wBAAG,OAAO,KAAK,CAAA;iBACpE;gBAED,OAAO,IAAI,CAAA;YACZ,CAAC;YAED,SAAS;gBACR,OAAO,IAAyB,CAAA;YACjC,CAAC;YAED,cAAc;gBACb,OAAO,IAAI,CAAC,GAAG,CAAE,KAAK,CAAC,cAAc,EAAE,EAAE,EAAE,CAAE,CAAA;YAC9C,CAAC;YAED,QAAQ;gBACP,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC,MAAM,KAAK,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAAA;YACrE,CAAC;YAED,MAAM;gBACL,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAA;YAC5C,CAAC;YAED,SAAS;gBACR,IAAI;oBACH,OAAO,IAAI,CAAC,IAAI,EAAE,CAAA;iBAClB;gBAAC,OAAO,KAAK,EAAG;oBAChB,aAAa,CAAE,KAAK,CAAE,CAAA;oBACtB,OAAO,EAAE,CAAA;iBACT;YACF,CAAC;SAED;QApEA;YADE,QAAQ;mDAGT;QAGD;YADE,QAAQ;4CAGT;QAGD;YADE,QAAQ;gDAMT;QAGD;YADE,QAAQ;mDAIT;QAGD;YADE,QAAQ;gDAkBT;QA5CW,YAAS,YAuErB,CAAA;IAEF,CAAC,EA3EW,EAAE,GAAF,IAAE,KAAF,IAAE,QA2Eb;AAAD,CAAC,EA3ES,CAAC,KAAD,CAAC,QA2EV;;;;AC3ED,IAAU,CAAC,CAyFV;AAzFD,WAAU,CAAC;IACV,MAAa,UAAW,SAAQ,SAAS;QAOxC,QAAQ;YACP,OAAO,KAAK,CAAA;QACb,CAAC;QAaD,KAAK;YACJ,OAAO;gBACN,GAAG,KAAK,CAAC,KAAK,EAAE;gBAChB,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE;gBACf,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE;gBACjB,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;gBACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;gBACzB,WAAW,EAAE,IAAI,CAAC,IAAI,EAAE;aACxB,CAAA;QACF,CAAC;QAOD,aAAa;YACZ,OAAO,EAAE,CAAA;QACV,CAAC;QAOD,cAAc;YACb,OAAO,EAAE,CAAA;QACV,CAAC;QAOD,GAAG;YACF,OAAO,EAAE,CAAA;QACV,CAAC;QAOD,OAAO;YACN,OAAO,OAAO,CAAA;QACf,CAAC;QAOD,QAAQ;YACP,OAAO,OAAO,CAAA;QACf,CAAC;QAOD,IAAI;YACH,OAAO,IAAW,CAAA;QACnB,CAAC;KACD;IAtFY,YAAU,aAsFtB,CAAA;AAEF,CAAC,EAzFS,CAAC,KAAD,CAAC,QAyFV;;;;ACzFD,IAAU,CAAC,CAER;AAFH,WAAU,CAAC;IAAG,iBAAiB,CAAE,0BAA0B,EAC1D,8IAA8I,CAC9I,CAAA;AAAC,CAAC,EAFO,CAAC,KAAD,CAAC,QAER;;;;ACFH,IAAU,CAAC,CAsEV;AAtED,WAAU,CAAC;IACV,MAAa,gBAAiB,SAAQ,SAAS;QAO9C,GAAG;YACF,OAAO;gBACN,IAAI,CAAC,IAAI,EAAE;aACO,CAAA;QACpB,CAAC;QAOD,OAAO;YACN,OAAO;gBACN,IAAI,CAAC,KAAK,EAAE;aACM,CAAA;QACpB,CAAC;QAOD,IAAI;YACH,OAAO,EAAE,CAAA;QACV,CAAC;QAOD,IAAI;YACH,OAAO,EAAE,CAAA;QACV,CAAC;QAUD,IAAI;YACH,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;YAEnC,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;YAC3B,GAAG,CAAC,KAAK,GAAG,GAAG,EAAE,CAAC,EAAE,CAAA;YAEpB,OAAO,GAAG,CAAA;QACX,CAAC;QAOD,KAAK;YACJ,OAAO,IAAI,CAAC,GAAG,EAAE,CAAA;QAClB,CAAC;KACD;IAjBA;QADE,QAAQ;gDAQT;IAzDW,kBAAgB,mBAmE5B,CAAA;AAEF,CAAC,EAtES,CAAC,KAAD,CAAC,QAsEV;;;;ACtED,IAAU,CAAC,CAER;AAFH,WAAU,CAAC;IAAG,iBAAiB,CAAE,iCAAiC,EACjE,ibAAib,CACjb,CAAA;AAAC,CAAC,EAFO,CAAC,KAAD,CAAC,QAER;;;;ACFH,IAAU,CAAC,CAmCV;AAnCD,WAAU,CAAC;IAAC,IAAA,EAAE,CAmCb;IAnCW,WAAA,EAAE;QAEb,MAAa,gBAAiB,SAAQ,CAAC,CAAC,gBAAgB;YAGvD,IAAI;gBACH,OAAO,sCAAuC,IAAI,CAAC,IAAI,EAAG,+BAA+B,CAAA;YAE1F,CAAC;YAGD,IAAI;gBACH,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,EAAE,CAAA;gBACzC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAE,IAAI,CAAC,GAAG,EAAE,EAAG,IAAI,CAAE,CAAA;gBACxC,OAAO,GAAG,CAAC,QAAQ,CAAA;YACpB,CAAC;YAGD,KAAK;gBACJ,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;gBACtB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;gBACxB,MAAM,MAAM,GAAG,CAAE,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAE,IAAI,CAAC,IAAI,EAAE,EAAG,CAAC,CAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAE,CAAC,OAAO,CAAE,YAAY,EAAE,EAAE,CAAE,CAAA;gBAC3F,OAAO,kBAAkB,CAAE,MAAM,IAAI,IAAI,CAAE,CAAC,OAAO,CAAE,KAAK,EAAE,GAAG,CAAE,CAAA;YAClE,CAAC;YAGD,GAAG;gBACF,OAAO;oBACN,GAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,IAAI,EAAE,CAAE,CAAC,CAAC,CAAC,EAAE;oBACtC,GAAI,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAE,GAAG,EAAE,GAAI,IAAI,CAAC,OAAO,EAAE,CAAE,CAAC,CAAC,CAAC,EAAE;iBACnC,CAAA;YACpB,CAAC;SAED;QA5BA;YADE,QAAQ;oDAIT;QAGD;YADE,QAAQ;oDAKT;QAGD;YADE,QAAQ;qDAMT;QAGD;YADE,QAAQ;mDAMT;QA7BW,mBAAgB,mBA+B5B,CAAA;IAEF,CAAC,EAnCW,EAAE,GAAF,IAAE,KAAF,IAAE,QAmCb;AAAD,CAAC,EAnCS,CAAC,KAAD,CAAC,QAmCV;;;;ACnCD,IAAU,CAAC,CAwBV;AAxBD,WAAU,CAAC;IACV,MAAa,eAAgB,SAAQ,WAAW;QAO/C,IAAI;YACH,OAAO;gBACN,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE;aACvB,CAAA;QACF,CAAC;QAOD,KAAK;YACJ,OAAO,EAAE,CAAA;QACV,CAAC;KACD;IArBY,iBAAe,kBAqB3B,CAAA;AAEF,CAAC,EAxBS,CAAC,KAAD,CAAC,QAwBV;;;;ACxBD,IAAU,CAAC,CA4DV;AA5DD,WAAU,CAAC;IAEV,MAAa,gBAA0B,SAAQ,WAAW;QAEzD,MAAM,CAAC,UAAU,CAAqD;QACtE,MAAM,CAAC,MAAM;YACZ,IAAI,IAAI,CAAC,UAAU,CAAC;gBAAG,OAAO,IAAI,CAAC,UAAU,CAAC,CAAA;YAE9C,KAAK,EAAG,IAAI;gBACX,MAAM,MAAM,GAAG,gBAAgB,CAAC,YAAY,CAAA;gBAC5C,IAAI,CAAC,MAAM;oBAAG,MAAM,KAAK,CAAA;gBAEzB,MAAM,CAAC,OAAO,CAAE,EAAE,EAAG,EAAE,CAAE,CAAA;gBACzB,MAAM,CAAC,UAAU,CAAE,EAAE,CAAE,CAAA;gBACvB,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,MAAM,CAAA;aAChC;YAAC,OAAO,KAAU,EAAG;gBACrB,OAAO,CAAC,IAAI,CAAE,KAAK,CAAE,CAAA;aACrB;YAED,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG;gBACzB,OAAO,CAAE,GAAY;oBACpB,OAAO,IAAI,CAAE,GAAG,GAAG,GAAG,CAAE,CAAA;gBACzB,CAAC;gBACD,OAAO,CAAE,GAAY,EAAG,KAAc;oBACrC,IAAI,CAAE,GAAG,GAAG,GAAG,CAAE,GAAG,KAAK,CAAA;gBAC1B,CAAC;gBACD,UAAU,CAAE,GAAY;oBACvB,IAAI,CAAE,GAAG,GAAG,GAAG,CAAE,GAAG,KAAK,CAAC,CAAA;gBAC3B,CAAC;aACD,CAAA;QAEF,CAAC;QAGM,AAAP,MAAM,CAAC,OAAO,CAAE,IAAmB,IAAK,OAAO,IAAI,CAAA,CAAC,CAAC;QAG9C,AAAP,MAAM,CAAC,KAAK,CACX,GAAY,EACZ,IAAoB;YAGpB,IAAI,CAAC,OAAO,EAAE,CAAA;YAEd,IAAI,IAAI,KAAK,KAAK,CAAC;gBAAG,OAAO,IAAI,CAAC,KAAK,CAAE,IAAI,CAAC,MAAM,EAAE,CAAC,OAAO,CAAE,GAAG,CAAE,IAAI,MAAM,CAAE,CAAA;YAEjF,IAAI,IAAI,KAAK,IAAI;gBAAG,IAAI,CAAC,MAAM,EAAE,CAAC,UAAU,CAAE,GAAG,CAAE,CAAA;;gBAC9C,IAAI,CAAC,MAAM,EAAE,CAAC,OAAO,CAAE,GAAG,EAAG,IAAI,CAAC,SAAS,CAAE,IAAI,CAAE,CAAE,CAAA;YAE1D,OAAO,IAAI,CAAA;QACZ,CAAC;QAED,MAAM,KAAK,OAAO,EAAE,CAAA,CAAC,CAAC;QAEtB,KAAK,CAAE,GAAY,EAAG,IAAa;YAClC,OAAO,gBAAgB,CAAC,KAAK,CAAE,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,GAAG,EAAG,IAAI,CAAE,CAAA;QAClE,CAAC;KAED;IAxBO;QADL,QAAQ;yCAC2C;IAG9C;QADL,YAAY;uCAcb;IAhDW,kBAAgB,mBAwD5B,CAAA;AAEF,CAAC,EA5DS,CAAC,KAAD,CAAC,QA4DV;;;;AC5DD,IAAU,CAAC,CAIV;AAJD,WAAU,CAAC;IAEV,IAAI,CAAC,gBAAgB,CAAE,SAAS,EAAG,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAE,KAAK,CAAE,CAAE,CAAA;AAElF,CAAC,EAJS,CAAC,KAAD,CAAC,QAIV;;;;ACJD,IAAU,CAAC,CA2BV;AA3BD,WAAU,CAAC;IAEV,SAAS,KAAK,CAAE,KAAoB;QACnC,IAAI,KAAK,KAAK,MAAM;YAAG,OAAO,IAAI,CAAA;QAClC,IAAI,KAAK,KAAK,OAAO;YAAG,OAAO,KAAK,CAAA;QACpC,OAAO,IAAI,CAAA;IACZ,CAAC;IAED,SAAgB,WAAW,CAAa,IAAe;QAEtD,MAAM,GAAG,GAAG,KAAK,CAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAE,YAAY,CAAE,CAAE,CAAA;QAE9D,MAAM,IAAI,GAAG,KAAK,CAAA;QAElB,IAAI,IAAI,KAAK,SAAS,EAAG;YACxB,OAAO,GAAG,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAa,aAAa,CAAE,IAAI,IAAI,CAAA;SAC7E;aAAM;YACN,IAAI,GAAG,KAAK,IAAI,EAAG;gBAClB,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAE,aAAa,EAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAE,CAAA;aAC1E;iBAAM;gBACN,IAAI,CAAC,cAAc,CAAC,KAAK,CAAE,YAAY,EAAG,MAAM,CAAE,IAAI,CAAE,CAAE,CAAA;aAC1D;YACD,OAAO,IAAI,CAAA;SACX;IAEF,CAAC;IAjBe,aAAW,cAiB1B,CAAA;AAEF,CAAC,EA3BS,CAAC,KAAD,CAAC,QA2BV;;;;AC3BD,IAAU,CAAC,CAQV;AARD,WAAU,CAAC;IAAC,IAAA,EAAE,CAQb;IARW,WAAA,EAAE;QACb,MAAa,eAAgB,SAAQ,CAAC,CAAC,eAAe;YAErD,KAAK;gBACJ,OAAO,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,iBAAiB,CAAA;YACrE,CAAC;SAED;QANY,kBAAe,kBAM3B,CAAA;IACF,CAAC,EARW,EAAE,GAAF,IAAE,KAAF,IAAE,QAQb;AAAD,CAAC,EARS,CAAC,KAAD,CAAC,QAQV;;;;ACRD,IAAU,CAAC,CAwLV;AAxLD,WAAU,CAAC;IACV,MAAa,QAAS,SAAQ,SAAS;QAQtC,MAAM,CAAC,GAAS;YACf,IAAK,GAAG,KAAK,SAAS;gBAAG,OAAO,GAAY,CAAA;YAC5C,OAAO,KAAK,CAAA;QACb,CAAC;QAOD,UAAU;YACT,OAAO,EAAE,CAAA;QACV,CAAC;QAOD,SAAS;YACR,OAAO,EAAE,CAAA;QACV,CAAC;QAOD,GAAG;YACF,OAAO;gBACN,IAAI,CAAC,MAAM,EAAE;aACK,CAAA;QACpB,CAAC;QASD,WAAW;YACV,OAAO;gBACN,IAAI,CAAC,MAAM,EAAE;gBACb,IAAI,CAAC,MAAM,EAAE;aACK,CAAA;QACpB,CAAC;QAOD,MAAM;YACL,OAAO,IAAW,CAAA;QACnB,CAAC;QAOD,KAAK;YACJ,OAAO,eAAe,CAAA;QACvB,CAAC;QAOD,cAAc;YACb,OAAO,EAC0B,CAAA;QAClC,CAAC;QAOD,UAAU;YACT,OAAO,IAAI,CAAA;QACZ,CAAC;QAWD,MAAM;YACL,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,eAAe,EAAE,CAAA;YAExC,GAAG,CAAC,KAAK,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;YAC9B,GAAG,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,CAAA;YACzC,GAAG,CAAC,UAAU,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,CAAA;YAExC,OAAO,GAAG,CAAA;QACX,CAAC;KACD;IAvGA;QADE,QAAQ;0CAIT;IA2FD;QADE,QAAQ;0CAST;IA9GW,UAAQ,WA+GpB,CAAA;IAED,MAAa,eAAgB,SAAQ,WAAW;QAO/C,GAAG;YACF,OAAO,IAAI,CAAC,OAAO,EAAE,CAAA;QACtB,CAAC;QASD,KAAK;YACJ,OAAO;gBACN,GAAG,KAAK,CAAC,KAAK,EAAE;gBAChB,SAAS,EAAE,IAAI,CAAC,UAAU,EAAE;aAC5B,CAAA;QACF,CAAC;QAUD,IAAI;YACH,OAAO;gBACN,GAAG,KAAK,CAAC,IAAI,EAAE;gBACf,aAAa,EAAE,IAAI,CAAC,KAAK,EAAE;gBAC3B,QAAQ,EAAE,CAAC;aACX,CAAA;QACF,CAAC;QAOD,OAAO;YACN,OAAO,EAC0B,CAAA;QAClC,CAAC;QAOD,UAAU;YACT,OAAO,IAAI,CAAA;QACZ,CAAC;QAOD,KAAK;YACJ,OAAO,EAAE,CAAA;QACV,CAAC;KACD;IApEY,iBAAe,kBAoE3B,CAAA;AAEF,CAAC,EAxLS,CAAC,KAAD,CAAC,QAwLV;;;;ACxLD,IAAU,CAAC,CAER;AAFH,WAAU,CAAC;IAAG,iBAAiB,CAAE,qBAAqB,EACrD,2IAA2I,CAC3I,CAAA;AAAC,CAAC,EAFO,CAAC,KAAD,CAAC,QAER;;;;ACFH,IAAU,CAAC,CASV;AATD,WAAU,CAAC;IACV,MAAM,EAAE,IAAI,EAAE,GAAG,eAAe,CAAA;IACrB,YAAU,GAAG;QACvB,KAAK,EAAE,IAAI,CAAE,mBAAmB,CAAE;QAClC,KAAK,EAAE,IAAI,CAAE,mBAAmB,CAAE;QAClC,KAAK,EAAE,IAAI,CAAE,mBAAmB,CAAE;QAClC,KAAK,EAAE,IAAI,CAAE,mBAAmB,CAAE;QAClC,KAAK,EAAE,IAAI,CAAE,mBAAmB,CAAE;KACzB,CAAA;AACX,CAAC,EATS,CAAC,KAAD,CAAC,QASV;;;;ACTD,IAAU,CAAC,CAER;AAFH,WAAU,CAAC;IAAG,iBAAiB,CAAE,sBAAsB,EACtD,0vDAA0vD,CAC1vD,CAAA;AAAC,CAAC,EAFO,CAAC,KAAD,CAAC,QAER;;;;ACFH,IAAU,CAAC,CA0EV;AA1ED,WAAU,CAAC;IAAC,IAAA,EAAE,CA0Eb;IA1EW,WAAA,EAAE;QACb,MAAa,QAAS,SAAQ,CAAC,CAAC,QAAQ;YAGvC,MAAM,CAAE,IAAI,GAAG,KAAK;gBACnB,IAAI,CAAC,OAAO,EAAE,CAAA;gBACd,OAAO,IAAI,CAAA;YACZ,CAAC;YAGD,WAAW;gBACV,OAAO;oBACN,IAAI,CAAC,MAAM,EAAE;oBACb,GAAI,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,MAAM,EAAE,CAAE,CAAC,CAAC,CAAC,EAAE;iBAC1C,CAAA;YACF,CAAC;YAGD,UAAU;gBAET,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,CAAA;gBAC1C,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,EAAG,CAAA;gBACrC,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,EAAE,CAAA;gBAE/B,IAAI,KAAK,KAAK,QAAQ;oBAAG,OAAO,CAAE,QAAQ,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,CAAE,GAAG,GAAG,CAAA;gBAC9E,IAAI,KAAK,KAAK,KAAK;oBAAG,OAAO,WAAW,CAAC,GAAG,GAAG,GAAG,CAAA;gBAElD,OAAO,CAAC,CAAA;YACT,CAAC;YAGD,KAAK;gBACJ,OAAO,GAAI,IAAI,CAAC,UAAU,EAAG,IAAK,IAAI,CAAC,SAAS,EAAG,EAAE,CAAA;YACtD,CAAC;YAGD,UAAU;gBACT,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAA;gBAEjC,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAA;gBACjC,IAAI,CAAC,QAAQ;oBAAG,OAAO,UAAU,CAAA;gBAEjC,OAAO,QAAQ,CAAC,GAAG,GAAG,CAAE,QAAQ,CAAC,GAAG,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAA;YAChF,CAAC;YAGD,SAAS;gBACR,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAA;gBAEjC,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAA;gBACjC,IAAI,CAAC,QAAQ;oBAAG,OAAO,UAAU,CAAA;gBAEjC,OAAO,QAAQ,CAAC,IAAI,GAAG,CAAE,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAA;YACjF,CAAC;YAGD,SAAS;gBACR,MAAM,IAAI,GAAG,IAAI,SAAS,CAAA;gBAC1B,IAAI,CAAC,QAAQ,GAAG,GAAE,EAAE;oBACnB,IAAI,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAiB,CAAA;oBACzC,OAAO,IAAI,GAAG,IAAI,CAAC,YAA4B,EAAG;wBACjD,IAAI,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,gBAAgB,CAAE,IAAI,CAAE,CAAC,QAAQ,KAAK,SAAS;4BAAG,OAAO,IAAI,CAAA;qBACzF;oBACD,OAAO,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,eAAe,CAAA;gBACxD,CAAC,CAAA;gBACD,OAAO,IAAI,CAAA;YACZ,CAAC;YAGD,SAAS;gBACR,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,GAAI,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAA;YAC1F,CAAC;SAED;QArEA;YADE,QAAQ;8CAIT;QAGD;YADE,QAAQ;mDAMT;QAGD;YADE,QAAQ;kDAWT;QAGD;YADE,QAAQ;6CAGT;QAGD;YADE,QAAQ;kDAQT;QAGD;YADE,QAAQ;iDAQT;QAGD;YADE,QAAQ;iDAWT;QAGD;YADE,QAAQ;iDAGT;QAtEW,WAAQ,WAwEpB,CAAA;IACF,CAAC,EA1EW,EAAE,GAAF,IAAE,KAAF,IAAE,QA0Eb;AAAD,CAAC,EA1ES,CAAC,KAAD,CAAC,QA0EV;;;;AC1ED,IAAU,CAAC,CAoDV;AApDD,WAAU,CAAC;IACV,MAAa,UAAW,SAAQ,SAAS;QASxC,IAAI;YACH,OAAO;gBACN,GAAG,KAAK,CAAC,IAAI,EAAE;gBACf,SAAS,EAAE,mBAAmB;aAC9B,CAAA;QACF,CAAC;QASD,KAAK;YACJ,OAAO;gBACN,GAAG,KAAK,CAAC,KAAK,EAAE;gBAChB,SAAS,EAAE,KAAK;aAChB,CAAA;QACF,CAAC;QAOD,GAAG;YACF,OAAO;gBACN,IAAI,CAAC,KAAK,EAAE;aACM,CAAA;QACpB,CAAC;QAOD,KAAK;YACJ,OAAO,IAAW,CAAA;QACnB,CAAC;KACD;IAjDY,YAAU,aAiDtB,CAAA;AAEF,CAAC,EApDS,CAAC,KAAD,CAAC,QAoDV;;;;ACpDD,IAAU,CAAC,CAER;AAFH,WAAU,CAAC;IAAG,iBAAiB,CAAE,0BAA0B,EAC1D,sYAAsY,CACtY,CAAA;AAAC,CAAC,EAFO,CAAC,KAAD,CAAC,QAER;;;;ACFH,IAAU,CAAC,CAgLV;AAhLD,WAAU,CAAC;IACV,MAAa,WAAY,SAAQ,SAAS;QAOzC,OAAO;YACN,OAAO,IAAI,CAAA;QACZ,CAAC;QAQD,KAAK,CAAC,KAAW;YAChB,IAAK,KAAK,KAAK,SAAS;gBAAG,OAAO,KAAc,CAAA;YAChD,OAAO,IAAW,CAAA;QACnB,CAAC;QAQD,WAAW,CAAC,KAAW;YACtB,IAAK,KAAK,KAAK,SAAS;gBAAG,OAAO,KAAc,CAAA;YAChD,OAAO,IAAW,CAAA;QACnB,CAAC;QAWD,KAAK;YACJ,OAAO;gBACN,GAAG,KAAK,CAAC,KAAK,EAAE;gBAChB,KAAK,EAAE,CAAC,KAAW,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;gBAClD,QAAQ,EAAE,CAAC,KAAW,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC7C,OAAO,EAAE,CAAC,KAAW,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;aACrD,CAAA;QACF,CAAC;QAYD,IAAI;YACH,OAAO;gBACN,GAAG,KAAK,CAAC,IAAI,EAAE;gBACf,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;gBACzB,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE;gBAC1B,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE;aACvB,CAAA;QACF,CAAC;QAOD,GAAG;YACF,OAAO;gBACN,IAAI,CAAC,KAAK,EAAE;aACoB,CAAA;QAClC,CAAC;QAQD,KAAK;YACJ,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;YAEnC,GAAG,CAAC,KAAK,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;YAE9B,OAAO,GAAG,CAAA;QACX,CAAC;QAQD,cAAc,CAAC,KAAW;YACzB,IAAK,KAAK,KAAK,SAAS;gBAAG,OAAO,KAAc,CAAA;YAChD,OAAO,IAAW,CAAA;QACnB,CAAC;QAQD,MAAM,CAAC,KAAW;YACjB,IAAK,KAAK,KAAK,SAAS;gBAAG,OAAO,KAAc,CAAA;YAChD,OAAO,IAAW,CAAA;QACnB,CAAC;QAQD,eAAe,CAAC,KAAW;YAC1B,IAAK,KAAK,KAAK,SAAS;gBAAG,OAAO,KAAc,CAAA;YAChD,OAAO,IAAW,CAAA;QACnB,CAAC;QAOD,QAAQ;YACP,OAAO,KAAK,CAAA;QACb,CAAC;QAOD,SAAS;YACR,OAAO,CAAC,CAAA;QACT,CAAC;QAOD,IAAI;YACH,OAAO,EAAE,CAAA;QACV,CAAC;QAOD,SAAS;YACR,OAAO,IAAI,CAAC,IAAI,EAAE,CAAA;QACnB,CAAC;QAOD,KAAK;YACJ,OAAO,EAAE,CAAA;QACV,CAAC;KACD;IA5JA;QADE,QAAQ;4CAIT;IAQD;QADE,QAAQ;kDAIT;IAyDD;QADE,QAAQ;4CAOT;IAQD;QADE,QAAQ;qDAIT;IAQD;QADE,QAAQ;6CAIT;IAQD;QADE,QAAQ;sDAIT;IA/HW,aAAW,cA6KvB,CAAA;AAEF,CAAC,EAhLS,CAAC,KAAD,CAAC,QAgLV;;;;AChLD,IAAU,CAAC,CAuGV;AAvGD,WAAU,CAAC;IACT,IAAY,kBAqGX;IArGD,WAAY,kBAAkB;QAC5B,qEAAa,CAAA;QACb,yDAAO,CAAA;QACP,8DAAU,CAAA;QACV,8DAAS,CAAA;QACT,4DAAS,CAAA;QACT,0DAAQ,CAAA;QACR,8DAAU,CAAA;QACV,oEAAa,CAAA;QACb,gEAAW,CAAA;QACX,8DAAU,CAAA;QACV,gEAAW,CAAA;QACX,oEAAa,CAAA;QACb,0DAAQ,CAAA;QACR,4DAAS,CAAA;QACT,4DAAS,CAAA;QACT,wDAAO,CAAA;QACP,8DAAU,CAAA;QACV,4DAAS,CAAA;QACT,gEAAW,CAAA;QACX,gEAAW,CAAA;QACX,4DAAS,CAAA;QACT,4DAAS,CAAA;QACT,4DAAS,CAAA;QACT,4DAAS,CAAA;QACT,4DAAS,CAAA;QACT,4DAAS,CAAA;QACT,4DAAS,CAAA;QACT,4DAAS,CAAA;QACT,4DAAS,CAAA;QACT,4DAAS,CAAA;QACT,sDAAM,CAAA;QACN,sDAAM,CAAA;QACN,sDAAM,CAAA;QACN,sDAAM,CAAA;QACN,sDAAM,CAAA;QACN,sDAAM,CAAA;QACN,sDAAM,CAAA;QACN,sDAAM,CAAA;QACN,sDAAM,CAAA;QACN,sDAAM,CAAA;QACN,sDAAM,CAAA;QACN,sDAAM,CAAA;QACN,sDAAM,CAAA;QACN,sDAAM,CAAA;QACN,sDAAM,CAAA;QACN,sDAAM,CAAA;QACN,sDAAM,CAAA;QACN,sDAAM,CAAA;QACN,sDAAM,CAAA;QACN,sDAAM,CAAA;QACN,sDAAM,CAAA;QACN,sDAAM,CAAA;QACN,sDAAM,CAAA;QACN,sDAAM,CAAA;QACN,sDAAM,CAAA;QACN,sDAAM,CAAA;QACN,oEAAa,CAAA;QACb,sEAAc,CAAA;QACd,gEAAW,CAAA;QACX,kEAAY,CAAA;QACZ,kEAAY,CAAA;QACZ,kEAAY,CAAA;QACZ,kEAAY,CAAA;QACZ,mEAAa,CAAA;QACb,mEAAa,CAAA;QACb,mEAAa,CAAA;QACb,mEAAa,CAAA;QACb,mEAAa,CAAA;QACb,mEAAa,CAAA;QACb,qEAAc,CAAA;QACd,2DAAS,CAAA;QACT,qEAAc,CAAA;QACd,mEAAa,CAAA;QACb,iEAAY,CAAA;QACZ,yDAAQ,CAAA;QACR,yDAAQ,CAAA;QACR,yDAAQ,CAAA;QACR,yDAAQ,CAAA;QACR,yDAAQ,CAAA;QACR,yDAAQ,CAAA;QACR,yDAAQ,CAAA;QACR,yDAAQ,CAAA;QACR,yDAAQ,CAAA;QACR,2DAAS,CAAA;QACT,2DAAS,CAAA;QACT,2DAAS,CAAA;QACT,mEAAa,CAAA;QACb,yEAAgB,CAAA;QAChB,uEAAe,CAAA;QACf,iEAAY,CAAA;QACZ,+DAAW,CAAA;QACX,6DAAU,CAAA;QACV,iEAAY,CAAA;QACZ,6EAAkB,CAAA;QAClB,2EAAiB,CAAA;QACjB,2EAAiB,CAAA;QACjB,uEAAe,CAAA;QACf,+EAAmB,CAAA;QACnB,6EAAkB,CAAA;QAClB,2EAAiB,CAAA;IACnB,CAAC,EArGW,kBAAkB,GAAlB,oBAAkB,KAAlB,oBAAkB,QAqG7B;AACH,CAAC,EAvGS,CAAC,KAAD,CAAC,QAuGV;;;;ACvGD,IAAU,CAAC,CAER;AAFH,WAAU,CAAC;IAAG,iBAAiB,CAAE,4BAA4B,EAC5D,udAAud,CACvd,CAAA;AAAC,CAAC,EAFO,CAAC,KAAD,CAAC,QAER;;;;ACFH,IAAU,CAAC,CAsEV;AAtED,WAAU,CAAC;IAAC,IAAA,EAAE,CAsEb;IAtEW,WAAA,EAAE;QACb,MAAa,WAAY,SAAQ,CAAC,CAAC,WAAW;YAG7C,MAAM,CAAE,OAAO,CAAE,IAAW,CAAE,IAAK,OAAO,IAAI,CAAA,CAAC,CAAC;YAEhD,QAAQ;gBACP,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAA;YACvB,CAAC;YAED,cAAc,CAAE,IAAY;gBAE3B,IAAI,CAAC,IAAI;oBAAG,OAAM;gBAClB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;oBAAG,OAAM;gBAE5B,IAAI;oBAEH,IAAI,CAAC,WAAW,CAAE,IAAI,CAAE,CAAA;oBACxB,IAAI,CAAC,KAAK,CAAE,IAAI,CAAE,CAAA;oBAClB,IAAI,CAAC,MAAM,CAAC,CAAE,IAAI,CAAE,CAAC,CAAA;iBAErB;gBAAC,OAAO,KAAU,EAAG;oBAErB,IAAI,CAAC,MAAM,CAAC,CAAE,KAAK,CAAE,CAAC,CAAA;oBACtB,gBAAgB,CAAE,KAAK,CAAE,CAAA;iBAEzB;YAEF,CAAC;YAED,eAAe,CAAG,KAAoB;gBACrC,IAAI,KAAK,CAAC,OAAO,KAAK,kBAAkB,CAAC,KAAK,EAAG;oBAChD,OAAO,IAAI,CAAC,cAAc,CAAE,KAAK,CAAE,CAAA;iBACnC;YACF,CAAC;YAED,SAAS;gBACR,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YAC/C,CAAC;YAED,KAAK;gBAEJ,MAAM,CAAE,KAAK,CAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA;gBAC/B,IAAI,CAAC,KAAK;oBAAG,OAAO,EAAE,CAAA;gBAEtB,IAAI,KAAK,YAAY,OAAO,EAAG;oBAC9B,OAAO,gBAAgB,CAAE,KAAK,CAAE,CAAA;iBAChC;gBAED,OAAO,MAAM,CAAE,KAAK,CAAC,OAAO,IAAI,KAAK,CAAE,CAAA;YAExC,CAAC;YAED,SAAS;gBACR,IAAI;oBACH,OAAO,IAAI,CAAC,IAAI,EAAE,CAAA;iBAClB;gBAAC,OAAO,KAAK,EAAG;oBAChB,aAAa,CAAE,KAAK,CAAE,CAAA;oBACtB,OAAO,EAAE,CAAA;iBACT;YACF,CAAC;YAED,WAAW;gBACV,OAAO;oBACN,GAAI,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,KAAK,EAAE,CAAE,CAAC,CAAC,CAAC,EAAE;oBACxC,GAAI,IAAI,CAAC,GAAG,EAAE;iBACd,CAAA;YACF,CAAC;SAED;QAjEA;YADE,QAAQ;iDACsC;QAHpC,cAAW,cAoEvB,CAAA;IACF,CAAC,EAtEW,EAAE,GAAF,IAAE,KAAF,IAAE,QAsEb;AAAD,CAAC,EAtES,CAAC,KAAD,CAAC,QAsEV;;;;ACtED,IAAU,CAAC,CAsBV;AAtBD,WAAU,CAAC;IACV,MAAa,iBAAkB,SAAQ,WAAW;QAOjD,cAAc;YACb,OAAO,EAAE,CAAA;QACV,CAAC;QAOD,aAAa;YACZ,OAAO,EAAE,CAAA;QACV,CAAC;KACD;IAnBY,mBAAiB,oBAmB7B,CAAA;AAEF,CAAC,EAtBS,CAAC,KAAD,CAAC,QAsBV;;;;ACtBD,IAAU,CAAC,CAER;AAFH,WAAU,CAAC;IAAG,iBAAiB,CAAE,iCAAiC,EACjE,4cAA4c,CAC5c,CAAA;AAAC,CAAC,EAFO,CAAC,KAAD,CAAC,QAER;;;;ACFH,IAAU,CAAC,CAIV;AAJD,WAAU,CAAC;IACV,MAAa,iBAAkB,SAAQ,iBAAiB;KACvD;IADY,mBAAiB,oBAC7B,CAAA;AAEF,CAAC,EAJS,CAAC,KAAD,CAAC,QAIV;;;;ACJD,IAAU,CAAC,CAER;AAFH,WAAU,CAAC;IAAG,iBAAiB,CAAE,iCAAiC,EACjE,sIAAsI,CACtI,CAAA;AAAC,CAAC,EAFO,CAAC,KAAD,CAAC,QAER;;;;ACFH,IAAU,CAAC,CAkEV;AAlED,WAAU,CAAC;IACV,MAAa,WAAY,SAAQ,WAAW;QAS3C,KAAK;YACJ,OAAO;gBACN,GAAG,KAAK,CAAC,KAAK,EAAE;gBAChB,OAAO,EAAE,CAAC,KAAW,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;aAC7C,CAAA;QACF,CAAC;QAOD,GAAG;YACF,OAAO,EACN,CAAA;QACF,CAAC;QAOD,QAAQ;YACP,OAAO,KAAK,CAAA;QACb,CAAC;QAOD,OAAO;YACN,OAAO,KAAK,CAAA;QACb,CAAC;QAOD,SAAS;YACR,OAAO,KAAK,CAAA;QACb,CAAC;QAQD,OAAO,CAAC,KAAW;YAClB,IAAK,KAAK,KAAK,SAAS;gBAAG,OAAO,KAAc,CAAA;YAChD,OAAO,IAAW,CAAA;QACnB,CAAC;KACD;IAJA;QADE,QAAQ;8CAIT;IA9DW,aAAW,cA+DvB,CAAA;AAEF,CAAC,EAlES,CAAC,KAAD,CAAC,QAkEV;;;;AClED,IAAU,CAAC,CA0BV;AA1BD,WAAU,CAAC;IAAC,IAAA,EAAE,CA0Bb;IA1BW,WAAA,EAAE;QACb,MAAa,WAAY,SAAQ,CAAC,CAAC,WAAW;YAE7C,GAAG;gBACF,OAAO,KAAK,CAAC,GAAG,EAEf,CAAA;YACF,CAAC;YAED,OAAO,CAAE,KAAsB;gBAE9B,IAAI,CAAC,KAAK;oBAAG,OAAM;gBACnB,IAAI,KAAK,CAAC,gBAAgB;oBAAG,OAAM;gBAEnC,IAAI,IAAI,GAAG,kBAAkB,CAAE,KAAK,CAAC,OAAO,CAAqC,CAAA;gBAEjF,IAAI,IAAI,CAAC,QAAQ,EAAE,KAAK,KAAK,CAAC,OAAO;oBAAG,OAAM;gBAC9C,IAAI,IAAI,CAAC,OAAO,EAAE,KAAK,KAAK,CAAC,MAAM;oBAAG,OAAM;gBAC5C,IAAI,IAAI,CAAC,SAAS,EAAE,KAAK,KAAK,CAAC,QAAQ;oBAAG,OAAM;gBAEhD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,CAAE,IAAI,CAAE,CAAA;gBACjC,IAAI,MAAM;oBAAG,MAAM,CAAE,KAAK,CAAE,CAAA;YAE7B,CAAC;SAED;QAxBY,cAAW,cAwBvB,CAAA;IACF,CAAC,EA1BW,EAAE,GAAF,IAAE,KAAF,IAAE,QA0Bb;AAAD,CAAC,EA1BS,CAAC,KAAD,CAAC,QA0BV;;;;AC1BD,IAAU,CAAC,CA6JV;AA7JD,WAAU,CAAC;IACV,MAAa,QAAS,SAAQ,WAAW;QAQxC,KAAK,CAAC,GAAS;YACd,IAAK,GAAG,KAAK,SAAS;gBAAG,OAAO,GAAY,CAAA;YAC5C,OAAO,KAAK,CAAA;QACb,CAAC;QAOD,QAAQ;YACP,OAAO,KAAK,CAAA;QACb,CAAC;QAOD,SAAS;YACR,OAAO,KAAK,CAAA;QACb,CAAC;QAOD,OAAO;YACN,OAAO,KAAK,CAAA;QACb,CAAC;QAQD,MAAM,CAAC,GAAS;YACf,IAAK,GAAG,KAAK,SAAS;gBAAG,OAAO,GAAY,CAAA;YAC5C,OAAO,EACY,CAAA;QACpB,CAAC;QAQD,MAAM,CAAC,GAAS;YACf,IAAK,GAAG,KAAK,SAAS;gBAAG,OAAO,GAAY,CAAA;YAC5C,OAAO,EACY,CAAA;QACpB,CAAC;QAQD,SAAS,CAAC,GAAS;YAClB,IAAK,GAAG,KAAK,SAAS;gBAAG,OAAO,GAAY,CAAA;YAC5C,OAAO,IAAW,CAAA;QACnB,CAAC;QAQD,SAAS,CAAC,GAAS;YAClB,IAAK,GAAG,KAAK,SAAS;gBAAG,OAAO,GAAY,CAAA;YAC5C,OAAO,IAAW,CAAA;QACnB,CAAC;QAQD,QAAQ,CAAC,KAAW;YACnB,IAAK,KAAK,KAAK,SAAS;gBAAG,OAAO,KAAc,CAAA;YAChD,OAAO,IAAW,CAAA;QACnB,CAAC;QAQD,UAAU,CAAC,KAAW;YACrB,IAAK,KAAK,KAAK,SAAS;gBAAG,OAAO,KAAc,CAAA;YAChD,OAAO,IAAW,CAAA;QACnB,CAAC;QAQD,UAAU,CAAC,KAAW;YACrB,IAAK,KAAK,KAAK,SAAS;gBAAG,OAAO,KAAc,CAAA;YAChD,OAAO,IAAW,CAAA;QACnB,CAAC;QAQD,WAAW,CAAC,KAAW;YACtB,IAAK,KAAK,KAAK,SAAS;gBAAG,OAAO,KAAc,CAAA;YAChD,OAAO,IAAW,CAAA;QACnB,CAAC;QASD,KAAK;YACJ,OAAO;gBACN,GAAG,KAAK,CAAC,KAAK,EAAE;gBAChB,OAAO,EAAE,CAAC,KAAW,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;aAC/C,CAAA;QACF,CAAC;QAQD,SAAS,CAAC,KAAW;YACpB,IAAK,KAAK,KAAK,SAAS;gBAAG,OAAO,KAAc,CAAA;YAChD,OAAO,IAAW,CAAA;QACnB,CAAC;KACD;IAlJA;QADE,QAAQ;yCAIT;IAmCD;QADE,QAAQ;0CAKT;IAQD;QADE,QAAQ;0CAKT;IAQD;QADE,QAAQ;6CAIT;IAQD;QADE,QAAQ;6CAIT;IAQD;QADE,QAAQ;4CAIT;IAQD;QADE,QAAQ;8CAIT;IAQD;QADE,QAAQ;8CAIT;IAQD;QADE,QAAQ;+CAIT;IAsBD;QADE,QAAQ;6CAIT;IAzJW,UAAQ,WA0JpB,CAAA;AAEF,CAAC,EA7JS,CAAC,KAAD,CAAC,QA6JV;;;;AC7JD,IAAU,CAAC,CA4GV;AA5GD,WAAU,CAAC;IAAC,IAAA,EAAE,CA4Gb;IA5GW,WAAA,EAAE;QACb,MAAa,QAAS,SAAQ,CAAC,CAAC,QAAQ;YAEvC,SAAS,CAAE,KAAsB;gBAChC,IAAI,CAAC,KAAK;oBAAG,OAAO,KAAK,CAAA;gBACzB,IAAI,KAAK,CAAC,gBAAgB;oBAAG,OAAM;gBAEnC,IAAI,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO;oBAAG,OAAM;gBAC9C,IAAI,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ;oBAAG,OAAM;gBAChD,IAAI,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM;oBAAG,OAAM;gBAE5C,QAAQ,KAAK,CAAC,OAAO,EAAG;oBACvB,KAAK,kBAAkB,CAAC,EAAG,CAAC,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAE,KAAK,CAAE,CAAA;oBAC1D,KAAK,kBAAkB,CAAC,IAAK,CAAC,CAAC,OAAO,IAAI,CAAC,UAAU,CAAE,KAAK,CAAE,CAAA;oBAC9D,KAAK,kBAAkB,CAAC,IAAK,CAAC,CAAC,OAAO,IAAI,CAAC,UAAU,CAAE,KAAK,CAAE,CAAA;oBAC9D,KAAK,kBAAkB,CAAC,KAAM,CAAC,CAAC,OAAO,IAAI,CAAC,WAAW,CAAE,KAAK,CAAE,CAAA;oBAChE,KAAK,kBAAkB,CAAC,MAAO,CAAC,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAE,KAAK,CAAE,CAAA;oBAC9D,KAAK,kBAAkB,CAAC,QAAS,CAAC,CAAC,OAAO,IAAI,CAAC,UAAU,CAAE,KAAK,CAAE,CAAA;iBAClE;YACF,CAAC;YAED,QAAQ,CAAE,KAAsB;gBAC/B,IAAI,CAAC,KAAK;oBAAG,OAAO,KAAK,CAAA;gBAEzB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA;gBAC1B,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;oBAAG,OAAM;gBAE5B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;gBAE/B,MAAM,SAAS,GAAG,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;gBAChD,MAAM,SAAS,GAAG,CAAE,SAAS,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAE,GAAG,IAAI,CAAC,MAAM,CAAA;gBAE/D,KAAK,CAAC,cAAc,EAAE,CAAA;gBAEtB,IAAI,SAAS,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;oBAAG,OAAM;gBAE7C,IAAI,CAAC,SAAS,CAAE,IAAI,CAAC,MAAM,EAAE,CAAE,SAAS,CAAE,CAAE,CAAA;YAC7C,CAAC;YAED,UAAU,CAAE,KAAsB;gBACjC,IAAI,CAAC,KAAK;oBAAG,OAAO,KAAK,CAAA;gBAEzB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA;gBAC1B,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;oBAAG,OAAM;gBAE5B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;gBAE/B,MAAM,SAAS,GAAG,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;gBAC/D,MAAM,SAAS,GAAG,CAAE,SAAS,GAAG,CAAC,CAAE,GAAG,IAAI,CAAC,MAAM,CAAA;gBAEjD,KAAK,CAAC,cAAc,EAAE,CAAA;gBAEtB,IAAI,SAAS,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;oBAAG,OAAM;gBAE7C,IAAI,CAAC,SAAS,CAAE,IAAI,CAAC,MAAM,EAAE,CAAE,SAAS,CAAE,CAAE,CAAA;YAC7C,CAAC;YAED,UAAU,CAAE,KAAsB;gBACjC,IAAI,CAAC,KAAK;oBAAG,OAAO,KAAK,CAAA;gBAEzB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA;gBAC1B,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;oBAAG,OAAM;gBAE5B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;gBAE/B,MAAM,SAAS,GAAG,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;gBAChD,MAAM,SAAS,GAAG,CAAE,SAAS,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAE,GAAG,IAAI,CAAC,MAAM,CAAA;gBAE/D,KAAK,CAAC,cAAc,EAAE,CAAA;gBAEtB,IAAI,SAAS,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;oBAAG,OAAM;gBAE7C,IAAI,CAAC,SAAS,CAAE,IAAI,CAAC,MAAM,EAAE,CAAE,SAAS,CAAE,CAAE,CAAA;YAC7C,CAAC;YAED,WAAW,CAAE,KAAsB;gBAClC,IAAI,CAAC,KAAK;oBAAG,OAAO,KAAK,CAAA;gBAEzB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA;gBAC1B,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;oBAAG,OAAM;gBAE5B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;gBAE/B,MAAM,SAAS,GAAG,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;gBAC9D,MAAM,SAAS,GAAG,CAAE,SAAS,GAAG,CAAC,CAAE,GAAG,IAAI,CAAC,MAAM,CAAA;gBAEjD,KAAK,CAAC,cAAc,EAAE,CAAA;gBAEtB,IAAI,SAAS,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;oBAAG,OAAM;gBAE7C,IAAI,CAAC,SAAS,CAAE,IAAI,CAAC,MAAM,EAAE,CAAE,SAAS,CAAE,CAAE,CAAA;YAC7C,CAAC;YAED,OAAO;gBACN,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,OAAO,CAAE,IAAI,CAAC,SAAS,EAAE,CAAE,CAAA;gBACrD,IAAI,KAAK,GAAG,CAAC;oBAAG,OAAO,IAAI,CAAA;gBAE3B,OAAO,KAAK,CAAA;YACb,CAAC;YAED,OAAO;gBACN,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,OAAO,CAAE,IAAI,CAAC,SAAS,EAAE,CAAE,CAAA;gBACrD,IAAI,KAAK,GAAG,CAAC;oBAAG,OAAO,IAAI,CAAA;gBAE3B,OAAO,KAAK,CAAA;YACb,CAAC;SAED;QA1GY,WAAQ,WA0GpB,CAAA;IACF,CAAC,EA5GW,EAAE,GAAF,IAAE,KAAF,IAAE,QA4Gb;AAAD,CAAC,EA5GS,CAAC,KAAD,CAAC,QA4GV;;;AC5GD;AACA;AACA;;ACFA,IAAU,CAAC,CAeV;AAfD,WAAU,CAAC;IAEV,MAAM,QAAQ,GAAG,EAAwD,CAAA;IAEzE,SAAgB,mBAAmB,CAClC,MAAoB,EACpB,WAAkC,MAAM;QAGxC,IAAI,OAAO,GAAG,QAAQ,CAAE,QAAQ,CAAE,CAAA;QAClC,IAAI,CAAC,OAAO;YAAG,OAAO,GAAG,QAAQ,CAAE,QAAQ,CAAE,GAAG,IAAI,WAAW,CAAE,QAAQ,CAAE,CAAA;QAE3E,OAAO,OAAO,CAAC,MAAM,CAAE,MAAM,CAAE,CAAA;IAChC,CAAC;IATe,qBAAmB,sBASlC,CAAA;AAEF,CAAC,EAfS,CAAC,KAAD,CAAC,QAeV;;;ACfD;AACA;AACA;;ACDA,IAAI,KAAK,GAAG,KAAK,IAAI,EAAE,CAAA;;;;ACDvB,IAAU,CAAC,CASV;AATD,WAAU,CAAC;IACV,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,IAAI,KAAK,CAAC,IAAI,CAAC,WAAW,CAAA;IAEpE,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAA;IAEjC,SAAgB,mBAAmB,CAAC,KAAa;QAChD,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAC7B,CAAC;IAFe,qBAAmB,sBAElC,CAAA;AAEF,CAAC,EATS,CAAC,KAAD,CAAC,QASV;;;;ACTD,IAAU,CAAC,CAuJV;AAvJD,WAAU,CAAC;IAYV,MAAa,mBAAoB,SAAQ,KAAK;KAAG;IAApC,qBAAmB,sBAAiB,CAAA;IAEjD,MAAsB,SAAU,SAAQ,WAAW;QAG3C,AAAP,MAAM,CAAC,QAAQ,CAAE,IAAa;YAC7B,MAAM,IAAI,KAAK,CAAE,qBAAqB,CAAE,CAAA;QACzC,CAAC;QAED,MAAM,CAAC,QAAQ,CAAE,IAAa;YAC7B,MAAM,IAAI,KAAK,CAAE,qBAAqB,CAAE,CAAA;QACzC,CAAC;QAED,MAAM,CAAC,IAAI,GAAG,EAAE,CAAA;QAEhB,IAAI;YACH,OAAO,GAAG,CAAA;QACX,CAAC;QAED,MAAM;YACL,OAAO,IAAI,CAAC,OAAO,CAAE,IAAI,CAAE,CAAA;QAC5B,CAAC;QAID,KAAK;YACJ,IAAI;gBACH,IAAI,CAAC,IAAI,CAAE,IAAI,CAAE,CAAA;aACjB;YAAC,OAAO,KAAU,EAAG;gBACrB,IAAI,KAAK,YAAY,mBAAmB;oBAAE,OAAM;gBAChD,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;aAC9B;QACF,CAAC;QAED,OAAO;YACN,OAAO,IAAI,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAE,EAAE,CAAE,CAAC,WAAW,EAAE,IAAI,EAAE,CAAA;QACvE,CAAC;QAID,OAAO;YACN,OAAO,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAA;YAEvD,OAAO;gBACN,UAAU,KAAI,CAAC;aACf,CAAA;QACF,CAAC;QAGD,MAAM,CAAE,IAAe;YAEtB,IAAI,MAAM,GAAG,OAAO,CAAE,IAAI,CAAC,IAAI,EAAE,CAAE,CAAA;YAEnC,IAAI,IAAI,KAAK,SAAS;gBAAG,OAAO,MAAM,CAAA;YACtC,IAAI,IAAI,KAAK,MAAM;gBAAG,OAAO,MAAM,CAAA;YAEnC,IAAI,IAAI;gBAAG,IAAI,CAAC,MAAM,EAAE,CAAC,MAAM,CAAE,IAAI,CAAE,CAAA;YACvC,IAAI,CAAC,MAAM,EAAE,CAAA;YACb,IAAI,CAAC,KAAK,EAAE,CAAA;YAEZ,OAAO,IAAI,CAAA;QACZ,CAAC;QAED,IAAI;YACH,OAAO,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,IAAI,EAAE,CAAA;QAC/B,CAAC;QAED,IAAI;YACH,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,CAAE,OAAO,EAAE,EAAE,CAAE,CAAA;QAC1C,CAAC;QAED,GAAG;YACF,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAE,IAAI,CAAC,IAAI,EAAE,CAAE,CAAA;YACjD,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAE,CAAC,CAAE,CAAC,SAAS,CAAE,CAAC,CAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QAC9C,CAAC;QAKD,IAAI,CAAC,IAAa,EAAE,IAAa;YAChC,IAAI,IAAI,EAAG;gBACV,MAAM,GAAG,GAAG,IAAI,IAAI,CAAA;gBACpB,IAAI,CAAC,IAAI,CAAE;oBACV,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,CAAC;oBACP,KAAK,EAAE,GAAG;oBACV,KAAK,EAAE,GAAG;oBACV,KAAK,EAAE,GAAG;iBACV,EAAE,MAAM,CAAE,CAAA;gBACX,OAAO,IAAK,CAAA;aACZ;YACD,IAAI,IAAI,KAAK,SAAS,EAAG;gBACxB,OAAO,mBAAmB,CAAE,IAAI,CAAC,MAAM,CAAE,SAAS,CAAE,CAAE,CAAA;aACtD;iBAAM;gBACN,MAAM,MAAM,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,mBAAmB,CAAE,IAAI,CAAE,CAAA;gBAC3E,IAAI,CAAC,MAAM,CAAE,MAAM,CAAE,CAAA;gBACrB,OAAO,IAAI,CAAA;aACX;QACF,CAAC;QAUD,IAAI,CACH,OAAiB,EACjB,OAAiB;YAEjB,MAAM,KAAK,GAAG,EAAiB,CAAA;YAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;YAEtB,KAAK,MAAM,KAAK,IAAI,GAAG,EAAE;gBACxB,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;gBAE/B,IAAI,OAAO,IAAI,UAAU,CAAC,KAAK,CAAE,OAAO,CAAE;oBAAG,SAAQ;gBAErD,IAAI,CAAC,OAAO,IAAI,UAAU,CAAC,KAAK,CAAE,OAAO,CAAE;oBAAG,KAAK,CAAC,IAAI,CAAE,KAAK,CAAE,CAAA;gBAEjE,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,KAAK,EAAG;oBAC5B,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAE,OAAO,EAAG,OAAO,CAAE,CAAA;oBACjD,KAAK,MAAM,KAAK,IAAI,SAAS;wBAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;iBAChD;aACD;YAED,OAAO,KAAK,CAAA;QACb,CAAC;QAED,IAAI;YACH,QAAQ,IAAI,CAAC,IAAI,EAAE,EAAG;gBACrB,KAAK,MAAM,CAAC,CAAC,OAAO,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,IAAI,CAAC,CAAA;gBAC1C,OAAO,CAAC,CAAC,OAAO,CAAC,CAAA;aACjB;QACF,CAAC;;IAvFD;QADE,QAAQ;2CAaT;IAkBD;QADE,QAAQ;yCAoBT;IA7FM;QADL,YAAY;mCAGb;IALoB,WAAS,YAwI9B,CAAA;AACF,CAAC,EAvJS,CAAC,KAAD,CAAC,QAuJV;;;;ACvJD,IAAU,CAAC,CAqCV;AArCD,WAAU,CAAC;IAEV,SAAgB,cAAc,CAAyB,GAAS;QAC/D,OAAO,IAAI,KAAK,CAAE,GAAG,EAAE;YAEtB,GAAG,CAAE,GAAG,EAAE,KAAK;gBAEd,MAAM,GAAG,GAAG,GAAG,CAAE,KAAK,CAAE,CAAA;gBACxB,IAAI,OAAO,GAAG,KAAK,UAAU;oBAAG,OAAO,GAAG,CAAA;gBAE1C,MAAM,IAAI,GAAG,cAAc,CAAC,MAAM,CAAE,GAAG,CAAE,CAAA;gBACzC,OAAO,SAAS,cAAc,CAAc,GAAI,IAAW;oBAC1D,MAAM,KAAK,GAAG,IAAI,CAAE,GAAG,EAAE,IAAI,CAAE,CAAA;oBAC/B,OAAO,KAAK,CAAC,IAAI,EAAE,CAAA;gBACpB,CAAC,CAAA;YAEF,CAAC;YAED,KAAK,CAAE,GAAG,EAAE,IAAI,EAAE,IAAI;gBACrB,MAAM,IAAI,GAAG,cAAc,CAAC,MAAM,CAAE,GAAgC,CAAE,CAAA;gBACtE,MAAM,KAAK,GAAG,IAAI,CAAE,IAAI,EAAE,IAAI,CAAE,CAAA;gBAChC,OAAO,KAAK,CAAC,IAAI,EAAE,CAAA;YACpB,CAAC;SAED,CAUA,CAAA;IACF,CAAC;IAjCe,gBAAc,iBAiC7B,CAAA;AAEF,CAAC,EArCS,CAAC,KAAD,CAAC,QAqCV;;;;ACrCD,IAAU,CAAC,CAgBV;AAhBD,WAAU,CAAC;IAEV,SAAgB,cAAc,CAC7B,IAAa,EACb,OAAgC,uBAAuB;QAGvD,MAAM,MAAM,GAAG,IAAI,gBAAgB,CAAC,SAAS,EAAE,CAAA;QAC/C,MAAM,GAAG,GAAG,MAAM,CAAC,eAAe,CAAE,IAAI,EAAG,IAAI,CAAE,CAAA;QAEjD,MAAM,KAAK,GAAG,GAAG,CAAC,oBAAoB,CAAE,aAAa,CAAE,CAAA;QACvD,IAAI,KAAK,CAAC,MAAM;YAAG,MAAM,IAAI,KAAK,CAAE,KAAK,CAAC,CAAC,CAAC,CAAC,WAAY,CAAE,CAAA;QAE3D,OAAO,GAAG,CAAA;IACX,CAAC;IAZe,gBAAc,iBAY7B,CAAA;AAEF,CAAC,EAhBS,CAAC,KAAD,CAAC,QAgBV;;;;AChBD,IAAU,CAAC,CAmIV;AAnID,WAAU,CAAC;IAEV,MAAa,mBAAoB,SAAQ,YAAY;QAE9B;QAAtB,YAAsB,MAAiB;YACtC,KAAK,EAAE,CAAA;YADc,WAAM,GAAN,MAAM,CAAW;QAEvC,CAAC;QAED,OAAO;YACN,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAA;QAC3B,CAAC;QAED,IAAI;YACH,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,CAAE,cAAc,CAAE,CAAA;QAC5C,CAAC;QAGD,MAAM;YACL,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAA;QACxB,CAAC;QAGD,IAAI;YAEH,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA;YAE5B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;YAC1B,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,cAAc,CAAE,IAAI,EAAE,CAAA;YACvD,MAAM,CAAC,EAAC,OAAO,CAAC,GAAG,cAAc,CAAC,IAAI,CAAE,IAAI,CAAE,IAAI,CAAC,EAAE,OAAO,CAAC,CAAA;YAE7D,MAAM,OAAO,GAAG,IAAI,WAAW,CAAE,OAAO,CAAE,CAAA;YAC1C,OAAO,OAAO,CAAC,MAAM,CAAE,MAAM,CAAE,CAAA;QAEhC,CAAC;QAED,IAAI;YACH,OAAO,cAAc,CAAE,IAAI,CAAC,MAAM,CAAE,CAAC,IAAI,EAAa,CAAA;QACvD,CAAC;QAGD,MAAM;YACL,OAAO,cAAc,CAAE,IAAI,CAAC,MAAM,CAAE,CAAC,WAAW,EAAE,CAAA;QACnD,CAAC;QAGD,GAAG;YACF,OAAO,cAAc,CAAE,IAAI,CAAC,IAAI,EAAE,EAAG,iBAAiB,CAAE,CAAA;QACzD,CAAC;QAGD,KAAK;YACJ,OAAO,cAAc,CAAE,IAAI,CAAC,IAAI,EAAE,EAAG,uBAAuB,CAAE,CAAA;QAC/D,CAAC;QAGD,IAAI;YACH,OAAO,cAAc,CAAE,IAAI,CAAC,IAAI,EAAE,EAAG,WAAW,CAAE,CAAA;QACnD,CAAC;KAED;IA1CA;QADE,WAAW;qDAGZ;IAGD;QADE,WAAW;mDAYZ;IAOD;QADE,WAAW;qDAGZ;IAGD;QADE,WAAW;kDAGZ;IAGD;QADE,WAAW;oDAGZ;IAGD;QADE,WAAW;mDAGZ;IAvDW,qBAAmB,sBAyD/B,CAAA;IAED,MAAa,UAAW,SAAQ,YAAY;QAE3C,MAAM,CAAC,OAAO,CAAE,KAAmB,EAAG,OAAqB,EAAE;YAC5D,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAA;YAExD,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAA;YACxC,IAAI,IAAI,GAAG,KAAK,CAAA;YAEhB,MAAM,OAAO,GAAG,MAAM,CAAE,KAAK,EAAG;gBAC/B,GAAI,IAAI;gBACR,MAAM,EAAE,UAAW,CAAC,MAAM;aAC1B,CAAE,CAAC,OAAO,CAAE,GAAE,EAAE;gBAChB,IAAI,GAAG,IAAI,CAAA;YACZ,CAAC,CAAE,CAAA;YAEH,OAAO,MAAM,CAAC,MAAM,CAAE,OAAO,EAAE;gBAC9B,UAAU,EAAE,GAAE,EAAE;oBAEf,IAAI,CAAC,IAAI;wBAAG,UAAU,CAAC,KAAK,EAAE,CAAA;gBAC/B,CAAC;aACD,CAAE,CAAA;QAEJ,CAAC;QAGM,AAAP,MAAM,CAAC,QAAQ,CAAE,KAAkB,EAAE,IAAkB;YAEtD,MAAM,QAAQ,GAAG,cAAc,CAAE,IAAI,CAAE,CAAC,OAAO,CAAE,KAAK,EAAG,IAAI,CAAE,CAAA;YAC/D,IAAI,IAAI,CAAC,KAAK,CAAE,QAAQ,CAAC,MAAM,GAAG,GAAG,CAAE,KAAK,CAAC;gBAAG,OAAO,IAAI,mBAAmB,CAAE,QAAQ,CAAE,CAAA;YAE1F,MAAM,IAAI,KAAK,CAAE,QAAQ,CAAC,UAAU,IAAI,cAAe,QAAQ,CAAC,MAAO,EAAE,CAAE,CAAA;QAC5E,CAAC;QAGM,AAAP,MAAM,CAAC,MAAM,CAAE,KAAkB,EAAE,IAAkB;YACpD,OAAO,IAAI,CAAC,QAAQ,CAAE,KAAK,EAAG,IAAI,CAAE,CAAC,MAAM,EAAE,CAAA;QAC9C,CAAC;QAGM,AAAP,MAAM,CAAC,IAAI,CAAE,KAAkB,EAAE,IAAkB;YAClD,OAAO,IAAI,CAAC,QAAQ,CAAE,KAAK,EAAG,IAAI,CAAE,CAAC,IAAI,EAAE,CAAA;QAC5C,CAAC;QAGM,AAAP,MAAM,CAAC,IAAI,CAAE,KAAkB,EAAE,IAAkB;YAClD,OAAO,IAAI,CAAC,QAAQ,CAAE,KAAK,EAAG,IAAI,CAAE,CAAC,IAAI,EAAE,CAAA;QAC5C,CAAC;QAGM,AAAP,MAAM,CAAC,MAAM,CAAE,KAAkB,EAAE,IAAkB;YACpD,OAAO,IAAI,CAAC,QAAQ,CAAE,KAAK,EAAG,IAAI,CAAE,CAAC,MAAM,EAAE,CAAA;QAC9C,CAAC;QAGM,AAAP,MAAM,CAAC,GAAG,CAAE,KAAkB,EAAE,IAAkB;YACjD,OAAO,IAAI,CAAC,QAAQ,CAAE,KAAK,EAAG,IAAI,CAAE,CAAC,GAAG,EAAE,CAAA;QAC3C,CAAC;QAGM,AAAP,MAAM,CAAC,KAAK,CAAE,KAAkB,EAAE,IAAkB;YACnD,OAAO,IAAI,CAAC,QAAQ,CAAE,KAAK,EAAG,IAAI,CAAE,CAAC,KAAK,EAAE,CAAA;QAC7C,CAAC;QAGM,AAAP,MAAM,CAAC,IAAI,CAAE,KAAkB,EAAE,IAAkB;YAClD,OAAO,IAAI,CAAC,QAAQ,CAAE,KAAK,EAAG,IAAI,CAAE,CAAC,IAAI,EAAE,CAAA;QAC5C,CAAC;KAED;IA3CO;QADL,WAAW;oCAOZ;IAGM;QADL,WAAW;kCAGZ;IAGM;QADL,WAAW;gCAGZ;IAGM;QADL,WAAW;gCAGZ;IAGM;QADL,WAAW;kCAGZ;IAGM;QADL,WAAW;+BAGZ;IAGM;QADL,WAAW;iCAGZ;IAGM;QADL,WAAW;gCAGZ;IAlEW,YAAU,aAoEtB,CAAA;AAEF,CAAC,EAnIS,CAAC,KAAD,CAAC,QAmIV;;;;ACnID,IAAU,CAAC,CAiFV;AAjFD,WAAU,CAAC;IAEV,MAAa,aAAc,SAAQ,SAAS;QAGpC,AAAP,MAAM,CAAC,QAAQ,CAAE,IAAa;YAC7B,OAAO,IAAI,CAAC,IAAI,CAAC;gBAChB,IAAI,EAAG,UAAU,CAAE,IAAI,CAAE;aACzB,CAAC,CAAA;QACH,CAAC;QAED,MAAM,CAAC,QAAQ,CAAE,IAAa;YAC7B,OAAO,IAAI,CAAC,QAAQ,CAAE,IAAI,GAAG,CAAE,IAAI,EAAG,IAAI,CAAC,IAAI,CAAE,CAAC,QAAQ,EAAE,CAAE,CAAA;QAC/D,CAAC;QAED,MAAM,CAAC,IAAI,GAAG,gBAAgB,CAAC,QAAQ;YACtC,CAAC,CAAC,IAAI,GAAG,CAAE,GAAG,EAAG,gBAAgB,CAAC,QAAQ,CAAC,aAAc,CAAC,KAAK,CAAC,CAAE,CAAC,QAAQ,EAAE;YAC7E,CAAC,CAAC,EAAE,CAAA;QAGL,MAAM,CAAE,IAAkB;YACzB,IAAI,IAAI,KAAK,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;YAErF,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;YACjD,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,KAAK,GAAG;gBAAE,MAAM,IAAI,mBAAmB,CAAC,mBAAmB,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;YAEnG,OAAO,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;QACzC,CAAC;QAGD,IAAI,CAAE,IAAsB,EAAE,IAAa;YAC1C,IAAI,IAAI,GAAG,IAAI,CAAA;YACf,IAAI,IAAI,KAAK,SAAS,EAAE;gBACvB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;gBAE3B,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAA;gBACxB,IAAI,GAAG;oBACN,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,OAAO,CAAC,MAAM;oBACpB,KAAK;oBACL,KAAK,EAAE,KAAK;oBACZ,KAAK,EAAE,KAAK;iBACZ,CAAA;aACD;YAED,IAAI,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,CAAA;YAEvB,OAAO,IAAK,CAAA;QACb,CAAC;QAED,OAAO,CAAE,IAAa;YACrB,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,GAAG,GAAG,IAAI,CAAA;YAElC,OAAO,IAAI,EAAG;gBACb,IAAI,IAAI,GAAG,GAAG,CAAA;gBACd,GAAG,GAAG,GAAG,CAAC,OAAO,CAAE,mBAAmB,EAAG,GAAG,CAAE,CAAA;gBAC9C,IAAI,IAAI,KAAK,GAAG;oBAAG,MAAK;aACxB;YAED,OAAS,IAAI,CAAC,WAAqC,CAAC,QAAQ,CAAE,GAAG,CAAE,CAAA;QACpE,CAAC;QAED,MAAM;YACL,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;QAC1D,CAAC;QAGD,GAAG;YACF,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;QACvD,CAAC;QAED,MAAM,CAAE,OAAS,IAAI,CAAC,WAAiC,CAAC,QAAQ,CAAE,GAAG,CAAE;YACtE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;QAC1D,CAAC;QAED,MAAM,CAAE,IAA0B;YACjC,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;QAC1D,CAAC;;IAzDD;QADE,QAAQ;+CAQT;IAGD;QADE,QAAQ;6CAmBT;IAmBD;QADE,QAAQ;4CAGT;IAhEM;QADL,YAAY;uCAKb;IAPW,eAAa,gBA4EzB,CAAA;IAED,CAAC,CAAC,SAAS,GAAG,aAAa,CAAA;AAC5B,CAAC,EAjFS,CAAC,KAAD,CAAC,QAiFV;;;;ACjFD,IAAU,CAAC,CA2DV;AA3DD,WAAU,CAAC;IAMV,MAAa,WAAY,SAAQ,WAAW;QAGpC,AAAP,MAAM,CAAC,YAAY;YAClB,OAAO,IAAI,CAAA;QACZ,CAAC;QAGM,AAAP,MAAM,CAAC,IAAI,CAAE,IAAc;YAC1B,OAAO,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAE,QAAQ,EAAG,IAAI,CAAE,IAAI,gBAAgB,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAE,KAAK,EAAG,EAAE,CAAE,IAAI,IAAI,CAAC,YAAY,EAAE,CAAA;QAC5I,CAAC;QAGM,AAAP,MAAM,CAAC,MAAM,CAAE,IAAa;YAC3B,OAAO,IAAI,CAAC,KAAK,CAAE,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAE,cAAe,IAAK,OAAO,CAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAE,CAAA;QAChG,CAAC;QAGM,AAAP,MAAM,CAAC,KAAK,CAAE,IAAa,EAAG,IAAwB;YACrD,IAAI,IAAI;gBAAG,OAAO,IAAI,CAAA;YAEtB,IAAI;gBACH,OAAO,IAAI,CAAC,MAAM,CAAE,IAAI,CAAE,CAAC,OAAO,EAAE,CAAA;aACpC;YAAC,OAAO,KAAU,EAAG;gBACrB,IAAI,KAAK,YAAY,OAAO;oBAAG,gBAAgB,CAAE,KAAK,CAAE,CAAA;gBACxD,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,EAAE,CAAA;gBAC/B,IAAI,IAAI,KAAK,GAAG;oBAAG,MAAM,KAAK,CAAA;gBAC9B,OAAO,IAAI,CAAC,MAAM,CAAE,GAAG,CAAE,CAAA;aACzB;QACF,CAAC;QAGM,AAAP,MAAM,CAAC,IAAI,CAAE,GAAY;YAExB,KAAK,IAAI,IAAI,IAAI,CAAE,IAAI,CAAC,IAAI,EAAE,EAAG,IAAI,CAAE,EAAG;gBAEzC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAE,IAAI,CAAE,CAAE,GAAG,CAAE,CAAA;gBACtC,IAAI,IAAI;oBAAG,OAAO,IAAI,CAAA;gBAEtB,IAAI,CAAC,IAAI,CAAE,GAAG,CAAE,CAAA;aAChB;YAED,OAAO,IAAK,GAAI,GAAG,CAAA;QACpB,CAAC;QAGM,AAAP,MAAM,CAAC,IAAI,CAAE,GAAY;YACxB,OAAO,CAAC,IAAI,CAAE,sBAAuB,IAAI,CAAC,IAAI,EAAG,MAAO,GAAI,EAAE,CAAE,CAAA;YAChE,OAAO,IAAI,CAAA;QACZ,CAAC;KAED;IAhDO;QADL,QAAQ;yCAGT;IAGM;QADL,QAAQ;iCAGT;IAGM;QADL,YAAY;mCAGb;IAGM;QADL,YAAY;kCAYb;IAGM;QADL,YAAY;iCAYb;IAGM;QADL,YAAY;iCAIb;IAjDW,aAAW,cAmDvB,CAAA;AAEF,CAAC,EA3DS,CAAC,KAAD,CAAC,QA2DV;;;;AC3DD,IAAU,CAAC,CAuSV;AAvSD,WAAU,CAAC;IACV,MAAa,WAAY,SAAQ,SAAS;QAOzC,QAAQ;YACP,OAAO,OAAO,CAAA;QACf,CAAC;QAOD,OAAO;YACN,OAAO,IAAI,CAAA;QACZ,CAAC;QAOD,cAAc;YACb,OAAO,EAAE,CAAA;QACV,CAAC;QAOD,YAAY;YACX,OAAO,KAAK,CAAA;QACb,CAAC;QAUD,SAAS,CAAC,GAAS;YAClB,IAAK,GAAG,KAAK,SAAS;gBAAG,OAAO,GAAY,CAAA;YAC5C,OAAO;gBACN,CAAC;gBACD,CAAC;aACoB,CAAA;QACvB,CAAC;QAOD,IAAI;YACH,OAAO;gBACN,IAAI,CAAC,iBAAiB,EAAE;aACN,CAAA;QACpB,CAAC;QAgBD,KAAK;YACJ,OAAO;gBACN,GAAG,KAAK,CAAC,KAAK,EAAE;gBAChB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;gBACzB,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE;gBAC3B,WAAW,EAAE,IAAI,CAAC,YAAY,EAAE;gBAChC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE;gBAC7B,YAAY,EAAE,IAAI,CAAC,mBAAmB,EAAE;gBACxC,YAAY,EAAE,IAAI,CAAC,aAAa,EAAE;gBAClC,cAAc,EAAE,IAAI,CAAC,eAAe,EAAE;gBACtC,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE;aAC1B,CAAA;QACF,CAAC;QAUD,IAAI;YACH,OAAO;gBACN,GAAG,KAAK,CAAC,IAAI,EAAE;gBACf,SAAS,EAAE,IAAI,CAAC,UAAU,EAAE;gBAC5B,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE;aACjB,CAAA;QACF,CAAC;QASD,KAAK;YACJ,OAAO;gBACN,GAAG,KAAK,CAAC,KAAK,EAAE;gBAChB,KAAK,EAAE,CAAC,KAAW,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;aAChD,CAAA;QACF,CAAC;QAOD,OAAO;YACN,OAAO;gBACN,IAAI,CAAC,MAAM,EAAE;aACK,CAAA;QACpB,CAAC;QAOD,iBAAiB;YAChB,OAAO,IAAW,CAAA;QACnB,CAAC;QAOD,QAAQ;YACP,OAAO,KAAK,CAAA;QACb,CAAC;QAQD,KAAK,CAAC,GAAS;YACd,IAAK,GAAG,KAAK,SAAS;gBAAG,OAAO,GAAY,CAAA;YAC5C,OAAO,EAAE,CAAA;QACV,CAAC;QAOD,aAAa,CAAC,GAAS;YACtB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACvB,CAAC;QAOD,IAAI;YACH,OAAO,EAAE,CAAA;QACV,CAAC;QAOD,YAAY;YACX,OAAO,IAAI,CAAC,IAAI,EAAE,CAAA;QACnB,CAAC;QAOD,UAAU;YACT,OAAO,IAAI,CAAA;QACZ,CAAC;QAOD,mBAAmB;YAClB,OAAO,EAAE,CAAA;QACV,CAAC;QAOD,aAAa;YACZ,OAAO,CAAC,CAAA;QACT,CAAC;QAOD,eAAe;YACd,OAAO,CAAC,CAAA;QACT,CAAC;QAOD,QAAQ;YACP,OAAO,MAAM,CAAA;QACd,CAAC;QAOD,UAAU;YACT,OAAO,CAAC,QAAQ,CAAA;QACjB,CAAC;QAQD,IAAI,CAAC,GAAS;YACb,IAAK,GAAG,KAAK,SAAS;gBAAG,OAAO,GAAY,CAAA;YAC5C,OAAO,MAAM,CAAA;QACd,CAAC;QAQD,YAAY,CAAC,KAAW;YACvB,IAAK,KAAK,KAAK,SAAS;gBAAG,OAAO,KAAc,CAAA;YAChD,OAAO,IAAW,CAAA;QACnB,CAAC;QAQD,MAAM,CAAC,KAAW;YACjB,IAAK,KAAK,KAAK,SAAS;gBAAG,OAAO,KAAc,CAAA;YAChD,OAAO,IAAW,CAAA;QACnB,CAAC;QAQD,MAAM;YACL,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;YAEpC,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC,CAAC;gBAChB,KAAK,EAAE,CAAC,KAAW,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;aAC1C,CAAC,CAAA;YAEF,OAAO,GAAG,CAAA;QACX,CAAC;KACD;IAtPA;QADE,QAAQ;gDAOT;IA0GD;QADE,QAAQ;4CAIT;IAyFD;QADE,QAAQ;2CAIT;IAQD;QADE,QAAQ;mDAIT;IAQD;QADE,QAAQ;6CAIT;IAQD;QADE,QAAQ;6CAST;IAnSW,aAAW,cAoSvB,CAAA;AAEF,CAAC,EAvSS,CAAC,KAAD,CAAC,QAuSV;;;;ACvSD,IAAU,CAAC,CAER;AAFH,WAAU,CAAC;IAAG,iBAAiB,CAAE,4BAA4B,EAC5D,yiCAAyiC,CACziC,CAAA;AAAC,CAAC,EAFO,CAAC,KAAD,CAAC,QAER;;;;ACFH,IAAU,CAAC,CA2DV;AA3DD,WAAU,CAAC;IAAC,IAAA,EAAE,CA2Db;IA3DW,WAAA,EAAE;QACb,MAAa,WAAY,SAAQ,CAAC,CAAC,WAAW;YAE7C,YAAY,CAAE,IAAa;gBAC1B,IAAI,CAAC,IAAI;oBAAG,OAAM;gBAClB,MAAM,EAAE,GAAG,IAAI,CAAC,MAA0B,CAAA;gBAC1C,MAAM,IAAI,GAAG,EAAE,CAAC,cAAc,CAAA;gBAC9B,MAAM,EAAE,GAAG,EAAE,CAAC,YAAY,CAAA;gBAC1B,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,CAAE,EAAE,CAAC,KAAK,CAAE,CAAA;gBACzC,EAAE,CAAC,YAAY,GAAG,EAAE,CAAA;gBACpB,EAAE,CAAC,cAAc,GAAG,IAAI,CAAA;gBACxB,IAAI,CAAC,gBAAgB,CAAE,IAAI,CAAE,CAAA;YAC9B,CAAC;YAED,YAAY;gBACX,OAAO,CAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAE,IAAI,GAAG,CAAA;YACpD,CAAC;YAED,QAAQ;gBACP,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAA;YACvB,CAAC;YAED,mBAAmB;gBAClB,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAA;YAC1C,CAAC;YAGD,iBAAiB;gBAChB,OAAO,IAAI,iBAAiB,CAC3B,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,QAAQ,EAChC,iBAAiB,EACjB,eAAe,CAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAE,KAAK,CAAE,CAAE,CAC1D,CAAA;YACF,CAAC;YAED,gBAAgB,CAAE,KAAY;gBAE7B,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAsB,CAAA;gBAC9C,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,aAAa;oBAAG,OAAM;gBAElE,MAAM,CAAE,IAAI,EAAE,EAAE,CAAE,GAAG,IAAI,CAAC,SAAS,CAAC;oBACnC,EAAE,CAAC,cAAe;oBAClB,EAAE,CAAC,YAAa;iBAChB,CAAC,CAAA;gBAEF,EAAE,CAAC,YAAY,GAAG,EAAE,CAAA;gBACpB,EAAE,CAAC,cAAc,GAAG,IAAI,CAAA;YAEzB,CAAC;YAED,eAAe;gBACd,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAA;YAC3B,CAAC;YAED,aAAa;gBACZ,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAA;YAC3B,CAAC;SAED;QA/BA;YADE,QAAQ;4DAOT;QAhCW,cAAW,cAyDvB,CAAA;IACF,CAAC,EA3DW,EAAE,GAAF,IAAE,KAAF,IAAE,QA2Db;AAAD,CAAC,EA3DS,CAAC,KAAD,CAAC,QA2DV;;;;AC3DD,IAAU,CAAC,CAkDV;AAlDD,WAAU,CAAC;IACV,MAAa,QAAS,SAAQ,SAAS;QAOtC,QAAQ;YACP,OAAO,KAAK,CAAA;QACb,CAAC;QAOD,cAAc;YACb,OAAO,4BAA4B,CAAA;QACpC,CAAC;QAOD,SAAS;YACR,OAAO,EAAE,CAAA;QACV,CAAC;QAOD,WAAW;YACV,OAAO,EAAE,CAAA;QACV,CAAC;QAOD,UAAU;YACT,OAAO,EACN,CAAA;QACF,CAAC;KACD;IA/CY,UAAQ,WA+CpB,CAAA;AAEF,CAAC,EAlDS,CAAC,KAAD,CAAC,QAkDV;;;;AClDD,IAAU,CAAC,CAoBV;AApBD,WAAU,CAAC;IAEV,MAAa,kBAAmB,SAAQ,YAAY;QAK3C;QACA;QAJR,EAAE,CAAM;QAER,YACQ,KAAc,EACd,IAAgB;YAEvB,KAAK,EAAE,CAAA;YAHA,UAAK,GAAL,KAAK,CAAS;YACd,SAAI,GAAJ,IAAI,CAAY;YAGvB,IAAI,CAAC,EAAE,GAAG,UAAU,CAAE,IAAI,EAAG,KAAK,CAAE,CAAA;QACrC,CAAC;QAED,UAAU;YACT,YAAY,CAAE,IAAI,CAAC,EAAE,CAAE,CAAA;QACxB,CAAC;KAED;IAhBY,oBAAkB,qBAgB9B,CAAA;AAEF,CAAC,EApBS,CAAC,KAAD,CAAC,QAoBV;;;;ACpBD,IAAU,CAAC,CAuBV;AAvBD,WAAU,CAAC;IAEV,MAAa,eAAgB,SAAQ,WAAW;QAGxC,AAAP,MAAM,CAAC,IAAI,CAAE,SAAiB,EAAE,KAAY;YAE3C,IAAI,SAAS,EAAG;gBACf,OAAO,IAAI,kBAAkB,CAAE,SAAS,EAAE,GAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAE,SAAS,EAAE,IAAI,CAAE,CAAE,CAAA;aAC7E;iBAAM;gBACN,OAAO,IAAI,gBAAgB,CAAE,GAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAE,SAAS,EAAE,IAAI,CAAE,CAAE,CAAA;aAChE;QAEF,CAAC;QAGM,AAAP,MAAM,CAAC,GAAG,CAAE,SAAiB;YAC5B,IAAI,CAAC,IAAI,CAAE,SAAS,CAAE,CAAA;YACtB,OAAO,IAAI,CAAC,GAAG,EAAE,CAAA;QAClB,CAAC;KAED;IAhBO;QADL,YAAY;qCASb;IAGM;QADL,YAAY;oCAIb;IAjBW,iBAAe,kBAmB3B,CAAA;AAEF,CAAC,EAvBS,CAAC,KAAD,CAAC,QAuBV;;;;ACvBD,IAAU,CAAC,CAuBV;AAvBD,WAAU,CAAC;IAAC,IAAA,EAAE,CAuBb;IAvBW,WAAA,EAAE;QACb,MAAa,QAAS,SAAQ,CAAC,CAAC,QAAQ;YAEvC,cAAc;gBACb,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAA;gBACnC,MAAM,KAAK,GAAG,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;gBAEnD,IAAG,CAAC,KAAK,CAAC,WAAW,CAAC;oBAAE,eAAe,CAAC,GAAG,CAAE,CAAC,CAAE,CAAA;gBAEhD,OAAO,KAAK,CAAA;YACb,CAAC;YAGD,SAAS;gBACR,OAAO,QAAQ,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAA;YAC1D,CAAC;YAGD,WAAW;gBACV,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC,aAAa,CAAC,CAAA;YAC5C,CAAC;SAED;QAnBA;YADC,QAAQ;sDAQR;QAGD;YADC,QAAQ;iDAGR;QAGD;YADC,QAAQ;mDAGR;QAnBW,WAAQ,WAqBpB,CAAA;IACF,CAAC,EAvBW,EAAE,GAAF,IAAE,KAAF,IAAE,QAuBb;AAAD,CAAC,EAvBS,CAAC,KAAD,CAAC,QAuBV;;;;ACvBD,IAAU,CAAC,CA+CV;AA/CD,WAAU,CAAC;IACV,MAAa,aAAc,SAAQ,QAAQ;QAO1C,QAAQ;YACP,OAAO,KAAK,CAAA;QACb,CAAC;QAUD,IAAI;YACH,OAAO;gBACN,GAAG,KAAK,CAAC,IAAI,EAAE;gBACf,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE;gBACxB,mBAAmB,EAAE,IAAI,CAAC,MAAM,EAAE;aAClC,CAAA;QACF,CAAC;QAOD,QAAQ;YACP,OAAO,aAAa,CAAA;QACrB,CAAC;QAOD,MAAM;YACL,OAAO,UAAU,CAAA;QAClB,CAAC;KACD;IA5CY,eAAa,gBA4CzB,CAAA;AAEF,CAAC,EA/CS,CAAC,KAAD,CAAC,QA+CV;;;;AC/CD,IAAU,CAAC,CAER;AAFH,WAAU,CAAC;IAAG,iBAAiB,CAAE,4BAA4B,EAC5D,4CAA4C,CAC5C,CAAA;AAAC,CAAC,EAFO,CAAC,KAAD,CAAC,QAER;;;;ACFH,IAAU,CAAC,CAoCV;AApCD,WAAU,CAAC;IACV,MAAa,aAAc,SAAQ,QAAQ;QAO1C,QAAQ;YACP,OAAO,MAAM,CAAA;QACd,CAAC;QASD,IAAI;YACH,OAAO;gBACN,GAAG,KAAK,CAAC,IAAI,EAAE;gBACf,CAAC,EAAE,IAAI,CAAC,QAAQ,EAAE;aAClB,CAAA;QACF,CAAC;QAOD,QAAQ;YACP,OAAO,EAAE,CAAA;QACV,CAAC;KACD;IAjCY,eAAa,gBAiCzB,CAAA;AAEF,CAAC,EApCS,CAAC,KAAD,CAAC,QAoCV;;;;ACpCD,IAAU,CAAC,CAiEV;AAjED,WAAU,CAAC;IACV,MAAa,SAAU,SAAQ,aAAa;QAO3C,QAAQ;YACP,OAAO,WAAW,CAAA;QACnB,CAAC;QAOD,aAAa;YACZ,OAAO,EAAE,CAAA;QACV,CAAC;QAOD,cAAc;YACb,OAAO,EAAE,CAAA;QACV,CAAC;QAOD,GAAG;YACF,OAAO;gBACN,IAAI,CAAC,IAAI,EAAE;aACO,CAAA;QACpB,CAAC;QAOD,IAAI;YACH,OAAO,EAAE,CAAA;QACV,CAAC;QAQD,IAAI;YACH,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,aAAa,EAAE,CAAA;YAEtC,GAAG,CAAC,QAAQ,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;YAEhC,OAAO,GAAG,CAAA;QACX,CAAC;KACD;IAPA;QADE,QAAQ;yCAOT;IA7DW,WAAS,YA8DrB,CAAA;AAEF,CAAC,EAjES,CAAC,KAAD,CAAC,QAiEV;;;;ACjED,IAAU,CAAC,CAER;AAFH,WAAU,CAAC;IAAG,iBAAiB,CAAE,wBAAwB,EACxD,mUAAmU,CACnU,CAAA;AAAC,CAAC,EAFO,CAAC,KAAD,CAAC,QAER;;;;ACFH,IAAU,CAAC,CAaV;AAbD,WAAU,CAAC;IACV,MAAa,eAAgB,SAAQ,SAAS;QAO7C,IAAI;YACH,OAAO,+GAA+G,CAAA;QACvH,CAAC;KACD;IAVY,iBAAe,kBAU3B,CAAA;AAEF,CAAC,EAbS,CAAC,KAAD,CAAC,QAaV;;;;ACbD,IAAU,CAAC,CAqHV;AArHD,WAAU,CAAC;IACV,MAAa,SAAU,SAAQ,SAAS;QAOvC,mBAAmB;YAClB,OAAO,IAAI,CAAA;QACZ,CAAC;QAOD,WAAW;YACV,OAAO,CAAC,CAAA;QACT,CAAC;QAOD,GAAG;YACF,OAAO,IAAI,CAAC,IAAI,EAAE,CAAA;QACnB,CAAC;QAQD,KAAK;YACJ,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;YAElC,OAAO,GAAG,CAAA;QACX,CAAC;QAQD,UAAU;YACT,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;YAElC,GAAG,CAAC,KAAK,GAAG,GAAG,EAAE,CAAC,CAAC;gBAClB,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE;aAC7B,CAAC,CAAA;YAEF,OAAO,GAAG,CAAA;QACX,CAAC;QAQD,SAAS;YACR,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;YAElC,GAAG,CAAC,KAAK,GAAG,GAAG,EAAE,CAAC,CAAC;gBAClB,UAAU,EAAE,IAAI,CAAC,SAAS,EAAE;aAC5B,CAAC,CAAA;YAEF,OAAO,GAAG,CAAA;QACX,CAAC;QASD,WAAW;YACV,OAAO;gBACN,CAAC;gBACD,CAAC;aACiB,CAAA;QACpB,CAAC;QAOD,IAAI;YACH,OAAO,EACkB,CAAA;QAC1B,CAAC;QAOD,UAAU;YACT,OAAO,CAAC,CAAA;QACT,CAAC;QAOD,SAAS;YACR,OAAO,CAAC,CAAA;QACT,CAAC;KACD;IA/EA;QADE,QAAQ;0CAKT;IAQD;QADE,QAAQ;+CAST;IAQD;QADE,QAAQ;8CAST;IAvEW,WAAS,YAkHrB,CAAA;AAEF,CAAC,EArHS,CAAC,KAAD,CAAC,QAqHV;;;;ACrHD,IAAU,CAAC,CAYV;AAZD,WAAU,CAAC;IAEV,IAAI,KAAK,GAAG,IAAsB,CAAA;IAClC,SAAgB,gCAAgC;QAC/C,OAAO,KAAK,IAAI,CACf,KAAK,GAAG,CACP,CAAC,SAAS,CAAC,IAAI,CAAE,SAAS,CAAC,SAAS,CAAE;eACnC,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,QAAQ,CAAE,sBAAsB,CAAE,CAChE,IAAI,KAAK,CACV,CAAA;IACF,CAAC;IAPe,kCAAgC,mCAO/C,CAAA;AAEF,CAAC,EAZS,CAAC,KAAD,CAAC,QAYV;;;;ACZD,IAAU,CAAC,CAEV;AAFD,WAAU,CAAC;IACC,iBAAe,GAAG,eAAe,CAAA;AAC7C,CAAC,EAFS,CAAC,KAAD,CAAC,QAEV;;;;ACFD,IAAU,CAAC,CAER;AAFH,WAAU,CAAC;IAAG,iBAAiB,CAAE,wBAAwB,EACxD,0YAA0Y,CAC1Y,CAAA;AAAC,CAAC,EAFO,CAAC,KAAD,CAAC,QAER;;;;ACFH,IAAU,CAAC,CA2JV;AA3JD,WAAU,CAAC;IAAC,IAAA,EAAE,CA2Jb;IA3JW,WAAA,EAAE;QAEb,MAAa,SAAU,SAAQ,CAAC,CAAC,SAAS;YAGzC,GAAG;gBACF,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;gBACxB,OAAO,CAAE,IAAI,CAAC,MAAM,KAAK,CAAC,CAAE,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,KAAK,EAAE,CAAE,CAAC,CAAC,CAAC,IAAI,CAAA;YACvD,CAAC;YAED,mBAAmB;gBAClB,OAAO,IAAI,CAAC,CAAC,CAAC,gCAAgC,EAAE,CAAA;YACjD,CAAC;YAGD,WAAW,CAAE,IAA0B;gBAEtC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;gBAEvB,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;oBAAG,OAAO,CAAE,CAAC,EAAG,IAAI,CAAC,MAAM,CAAE,CAAA;gBAChD,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE;oBAAG,OAAO,CAAE,CAAC,EAAG,IAAI,CAAC,MAAM,CAAE,CAAA;gBAE3D,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,CAAA;gBAC7B,IAAI,IAAI;oBAAG,OAAO,IAAI,CAAA;gBAEtB,IAAI,CAAE,GAAG,EAAG,GAAG,CAAE,GAAG,eAAe,CAAE,GAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAE,IAAI,CAAE,CAAC,EAAG,CAAC,CAAE,CAAA;gBAE3E,IAAI,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,CAAE,GAAG,EAAG,IAAI,CAAC,MAAM,CAAE,CAAA;gBAC9C,IAAI,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,CAAE,CAAC,EAAG,IAAI,CAAC,GAAG,CAAE,GAAG,EAAG,GAAG,GAAG,CAAC,CAAE,CAAE,CAAA;gBAE1D,MAAM,SAAS,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAA;gBAC5C,MAAM,aAAa,GAAG,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,EAAE,CAAA;gBAC3D,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAE,aAAa,GAAG,IAAI,CAAC,WAAW,EAAE,CAAE,CAAA;gBAC5D,MAAM,SAAS,GAAG,CAAC,IAAI,CAAA;gBACvB,MAAM,YAAY,GAAG,aAAa,GAAG,IAAI,CAAA;gBAEzC,MAAM,UAAU,GAAG,eAAe,CAAE,GAAE,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,CAAE,IAAI,CAAC,CAAA;gBACjE,MAAM,SAAS,GAAG,eAAe,CAAE,GAAE,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,CAAE,IAAI,CAAC,CAAA;gBAE/D,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI,CAAE,IAAI,EAAE,GAAG,IAAI,CAAC,CAAE,GAAG,UAAU,CAAA;gBAClD,IAAI,MAAM,GAAG,IAAI,CAAC,IAAI,CAAE,IAAI,EAAE,MAAM,IAAI,CAAC,CAAE,GAAG,SAAS,CAAA;gBAGvD,IAAI,GAAG,IAAI,SAAS,IAAI,MAAM,IAAI,YAAY,EAAG;oBAChD,OAAO,CAAE,IAAI,EAAG,IAAI,CAAE,CAAA;iBACtB;gBAGD,IAAI,SAAS,IAAI,CAAC,CAAE,MAAM,GAAG,SAAS,CAAE,IAAE,CAAE,GAAG,GAAG,YAAY,CAAE,CAAC,EAAG;oBAEnE,GAAG,GAAG,CAAC,CAAA;oBACP,GAAG,GAAG,IAAI,CAAC,IAAI,CAAE,IAAI,EAAE,GAAG,IAAI,CAAC,CAAE,CAAA;oBAEjC,OAAO,GAAG,GAAG,CAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAE,EAAG;wBAElC,MAAM,MAAM,GAAG,IAAI,CAAE,GAAG,CAAE,CAAC,cAAc,EAAE,CAAA;wBAC3C,IAAI,GAAG,GAAG,MAAM,IAAI,SAAS;4BAAG,MAAK;wBAErC,GAAG,IAAI,MAAM,CAAA;wBACb,EAAG,GAAG,CAAA;qBAEN;oBAED,IAAI,GAAG,GAAG,CAAA;oBACV,IAAI,GAAG,GAAG,GAAG,GAAG,CAAA;oBAChB,MAAM,GAAG,GAAG,CAAA;iBAEZ;gBAED,IAAI,IAAI,GAAG,GAAG,CAAA;gBACd,IAAI,OAAO,GAAG,MAAM,CAAA;gBAGpB,IAAI,SAAS,IAAI,CAAE,GAAG,IAAI,SAAS,CAAE,IAAI,CAAE,OAAO,GAAG,YAAY,CAAE,EAAG;oBACrE,IAAI,GAAG,IAAI,CAAC,GAAG,CAAE,CAAC,EAAE,GAAG,GAAG,CAAC,CAAE,CAAA;oBAC7B,IAAI,GAAG,MAAM,CAAA;iBACb;gBAGD,IAAI,CAAE,MAAM,IAAI,YAAY,CAAE,IAAI,CAAE,IAAI,IAAI,SAAS,CAAE,EAAG;oBACzD,IAAI,GAAG,IAAI,CAAC,GAAG,CAAE,GAAG,GAAG,CAAC,EAAE,IAAI,CAAC,MAAM,CAAE,CAAA;oBACvC,OAAO,GAAG,GAAG,CAAA;iBACb;gBAGD,OAAO,OAAO,GAAG,YAAY,IAAI,IAAI,GAAG,IAAI,CAAC,MAAM,EAAG;oBACrD,OAAO,IAAI,IAAI,CAAE,IAAI,CAAE,CAAC,cAAc,EAAE,CAAA;oBACxC,EAAG,IAAI,CAAA;iBACP;gBAGD,OAAO,SAAS,IAAI,CAAC,CAAE,IAAI,IAAI,SAAS,CAAE,IAAE,CAAE,IAAI,GAAG,CAAC,CAAE,CAAC,EAAG;oBAC3D,EAAG,IAAI,CAAA;oBACP,IAAI,IAAI,IAAI,CAAE,IAAI,CAAE,CAAC,cAAc,EAAE,CAAA;iBACrC;gBAED,OAAO,CAAE,IAAI,EAAG,IAAI,CAAE,CAAA;YACvB,CAAC;YAGD,UAAU;gBACT,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAE,CAAC,EAAG,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAE,CAAA;gBAC7D,OAAO,IAAI,CAAC,GAAG,CAAE,CAAC,EAAG,OAAO,CAAC,MAAM,CAAE,CAAE,GAAG,EAAG,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,cAAc,EAAE,EAAG,CAAC,CAAE,CAAE,CAAA;YAC1F,CAAC;YAGD,SAAS;gBACR,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAE,CAAA;gBACzD,OAAO,IAAI,CAAC,GAAG,CAAE,CAAC,EAAG,OAAO,CAAC,MAAM,CAAE,CAAE,GAAG,EAAG,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,cAAc,EAAE,EAAG,CAAC,CAAE,CAAE,CAAA;YAC1F,CAAC;YAGD,WAAW;gBACV,OAAO;oBACN,GAAI,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,UAAU,EAAE,CAAE,CAAC,CAAC,CAAC,EAAE;oBAClD,GAAI,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAE,GAAI,IAAI,CAAC,WAAW,EAAE,CAAE;oBAC9C,GAAI,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,SAAS,EAAE,CAAE,CAAC,CAAC,CAAC,EAAE;iBAChD,CAAA;YACF,CAAC;YAGD,cAAc;gBAEb,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAE,CAAE,GAAG,EAAG,IAAI,EAAE,EAAE;oBAEzC,IAAI;wBACH,OAAO,GAAG,GAAG,IAAI,CAAC,cAAc,EAAE,CAAA;qBAClC;oBAAC,OAAO,KAAU,EAAG;wBACrB,aAAa,CAAE,KAAK,CAAE,CAAA;wBACtB,OAAO,GAAG,CAAA;qBACV;gBAEF,CAAC,EAAG,CAAC,CAAE,CAAA;YAER,CAAC;YAED,YAAY,CACX,IAAuB;gBAGvB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;gBAExB,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAE,IAAI,CAAE,CAAE,CAAA;gBAExD,IAAI,KAAK,IAAI,CAAC,EAAG;oBAChB,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;oBAC9B,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC,EAAG;wBACvC,IAAI,CAAC,WAAW,CAAC,CAAE,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAE,CAAC,CAAA;qBACvE;oBACC,IAAI,CAAE,KAAK,CAAiB,CAAC,YAAY,CAAE,IAAI,CAAE,CAAA;iBACnD;YAEF,CAAC;SAED;QArJA;YADE,QAAQ;4CAIT;QAOD;YADE,QAAQ;oDAmFT;QAGD;YADE,QAAQ;mDAIT;QAGD;YADE,QAAQ;kDAIT;QAGD;YADE,QAAQ;oDAOT;QAGD;YADE,QAAQ;uDAcT;QApIW,YAAS,YAwJrB,CAAA;IACF,CAAC,EA3JW,EAAE,GAAF,IAAE,KAAF,IAAE,QA2Jb;AAAD,CAAC,EA3JS,CAAC,KAAD,CAAC,QA2JV;;;;AC3JD,IAAU,CAAC,CA0CV;AA1CD,WAAU,CAAC;IACV,MAAa,cAAe,SAAQ,SAAS;QAO5C,WAAW;YACV,OAAO,EAAE,CAAA;QACV,CAAC;QAOD,YAAY;YACX,OAAO,CAAC,CAAA;QACT,CAAC;QAOD,WAAW;YACV,OAAO,CAAC,QAAQ,CAAA;QACjB,CAAC;QAOD,GAAG;YACF,OAAO;gBACN,IAAI,CAAC,KAAK,EAAE;aACM,CAAA;QACpB,CAAC;KACD;IAvCY,gBAAc,iBAuC1B,CAAA;AAEF,CAAC,EA1CS,CAAC,KAAD,CAAC,QA0CV;;;;AC1CD,IAAU,CAAC,CAER;AAFH,WAAU,CAAC;IAAG,iBAAiB,CAAE,kCAAkC,EAClE,kEAAkE,CAClE,CAAA;AAAC,CAAC,EAFO,CAAC,KAAD,CAAC,QAER;;;;ACFH,IAAU,CAAC,CA8CV;AA9CD,WAAU,CAAC;IAAC,IAAA,EAAE,CA8Cb;IA9CW,WAAA,EAAE;QAEb,MAAa,cAAe,SAAQ,CAAC,CAAC,cAAc;YAGnD,aAAa;gBAEZ,IAAI,KAAK,GAAG,CAAC,CAAA;gBACb,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,CAAA;gBAElC,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,EAAG;oBAE9B,IAAI,CAAC,GAAG;wBAAG,SAAQ;oBAEnB,IAAI,GAAG,YAAY,SAAS,EAAG;wBAC9B,KAAK,IAAI,GAAG,CAAC,aAAa,EAAE,CAAA;qBAC5B;yBAAM,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAG;wBACpC,KAAK,IAAI,MAAM,CAAE,GAAG,CAAE,CAAC,MAAM,GAAG,MAAM,CAAA;qBACtC;iBAED;gBAED,OAAO,KAAK,CAAA;YAEb,CAAC;YAED,WAAW;gBACV,OAAO,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,KAAK,CAAA;YACvC,CAAC;YAED,aAAa;gBACZ,OAAO,IAAI,CAAC,YAAY,EAAE,CAAA;YAC3B,CAAC;YAGD,SAAS;gBACR,OAAO,IAAI,CAAC,GAAG,CAAE,IAAI,CAAC,GAAG,CAAE,IAAI,CAAC,WAAW,EAAE,EAAG,IAAI,CAAC,aAAa,EAAE,CAAE,EAAG,IAAI,CAAC,YAAY,EAAE,CAAE,CAAA;YAC/F,CAAC;YAGD,cAAc;gBACb,OAAO,IAAI,CAAC,GAAG,CAAE,CAAC,EAAG,IAAI,CAAC,IAAI,CAAE,IAAI,CAAC,aAAa,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,CAAE,CAAE,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;YACjG,CAAC;SAED;QAvCA;YADE,QAAQ;2DAoBT;QAWD;YADE,QAAQ;uDAGT;QAGD;YADE,QAAQ;4DAGT;QAxCW,iBAAc,iBA0C1B,CAAA;IAEF,CAAC,EA9CW,EAAE,GAAF,IAAE,KAAF,IAAE,QA8Cb;AAAD,CAAC,EA9CS,CAAC,KAAD,CAAC,QA8CV;;;;AC9CD,IAAU,CAAC,CAkFV;AAlFD,WAAU,CAAC;IACV,MAAa,WAAY,SAAQ,cAAc;QAO9C,QAAQ;YACP,OAAO,EAAE,CAAA;QACV,CAAC;QAOD,MAAM;YACL,OAAO,EAAE,CAAA;QACV,CAAC;QAOD,GAAG;YACF,OAAO,IAAI,CAAC,KAAK,EAAE,CAAA;QACpB,CAAC;QAQD,GAAG,CAAC,EAAO;YACV,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,cAAc,EAAE,CAAA;YAEvC,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC;gBACf,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;aACG,CAAA;YAEnB,OAAO,GAAG,CAAA;QACX,CAAC;QAQD,IAAI,CAAC,EAAO;YACX,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,cAAc,EAAE,CAAA;YAEvC,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC;gBACf,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;aACG,CAAA;YAEnB,OAAO,GAAG,CAAA;QACX,CAAC;QAOD,KAAK;YACJ,OAAO,EAC0B,CAAA;QAClC,CAAC;QAOD,MAAM,CAAC,EAAO;YACb,OAAO,EAAE,CAAA;QACV,CAAC;KACD;IA5CA;QADE,YAAY;0CASb;IAQD;QADE,YAAY;2CASb;IA3DW,aAAW,cA+EvB,CAAA;AAEF,CAAC,EAlFS,CAAC,KAAD,CAAC,QAkFV;;;AClFD;AACA;AACA;ACFA;AACA;AACA;ACFA;AACA;AACA;ACFA;AACA;AACA;;ACUA,IAAU,CAAC,CA6dV;AA7dD,WAAU,CAAC;IAqDV,MAAa,WAAwD,SAAQ,MAAM;QAGjB;QAAjE,YAAa,MAAe,EAAG,QAAiB,KAAK,EAAY,SAAkD,EAAE;YACpH,KAAK,CAAE,MAAM,EAAG,KAAK,CAAE,CAAA;YADyC,WAAM,GAAN,MAAM,CAA8C;QAErH,CAAC;QAED,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAE,GAAU;YAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAA;YAC5B,IAAI,CAAC,SAAS,GAAG,CAAC,CAAA;YAClB,IAAI;gBACH,OAAQ,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,MAAM,EAAG;oBACrC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;oBAC5B,IAAI,CAAC,KAAK;wBAAG,MAAK;oBAClB,MAAM,KAAK,CAAA;iBACX;aACD;oBAAS;gBACT,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;aACtB;QACF,CAAC;QAGD,CAAE,MAAM,CAAC,KAAK,CAAE,CAAE,GAAY;YAC7B,MAAM,GAAG,GAAG,CAAE,GAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAE,GAAG,CAAE,CAAE,CAAC,MAAM,CAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAE,CAAC,GAAG,CAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAA;YACzF,IAAI,CAAC,GAAG,CAAC,MAAM;gBAAG,OAAO,IAAI,CAAA;YAC7B,OAAO,GAAuB,CAAA;QAC/B,CAAC;QAGD,CAAE,MAAM,CAAC,KAAK,CAAE,CAAE,GAAY;YAE7B,MAAM,GAAG,GAAG,EAAc,CAAA;YAC1B,IAAI,UAAU,GAAG,IAAI,CAAA;YAErB,KAAK,IAAI,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAE,GAAG,CAAE,EAAG;gBAChD,IAAI,KAAK,CAAC,MAAM,IAAI,CAAE,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAE;oBAAG,GAAG,CAAC,IAAI,CAAE,EAAE,CAAE,CAAA;gBAC9E,GAAG,CAAC,IAAI,CAAE,KAAK,CAAC,CAAC,CAAC,CAAE,CAAA;gBACpB,UAAU,GAAG,KAAK,CAAA;aAClB;YAED,IAAI,CAAC,GAAG,CAAC,MAAM;gBAAG,GAAG,CAAC,IAAI,CAAE,EAAE,CAAE,CAAA;YAEhC,OAAO,GAAG,CAAA;QACX,CAAC;QAED,IAAI,CAAE,GAAY;YACjB,OAAO,OAAO,CAAE,GAAG,CAAC,KAAK,CAAE,IAAI,CAAC,CAAE,CAAA;QACnC,CAAC;QAED,IAAI,CAAE,GAAY;YAEjB,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAA;YAC3B,IAAI,IAAI,IAAI,GAAG,CAAC,MAAM;gBAAG,OAAO,IAAI,CAAA;YAEpC,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAE,GAAG,CAAE,CAAA;YAC7B,IAAI,GAAG,KAAK,IAAI,EAAG;gBAClB,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,MAAM,CAAA;gBAC3B,IAAI,CAAC,GAAG;oBAAG,OAAO,IAAI,CAAA;gBACtB,OAAO,MAAM,CAAC,MAAM,CAAE,CAAE,GAAG,CAAC,KAAK,CAAE,IAAI,CAAE,CAAE,EAAE;oBAC5C,KAAK,EAAE,IAAI;oBACX,KAAK,EAAE,GAAG;iBACV,CAAS,CAAA;aACV;YAED,IAAI,IAAI,KAAK,IAAI,CAAC,SAAS,EAAG;gBAC7B,SAAS,CAAE,IAAI,KAAK,CAAE,0BAA0B,CAAE,CAAE,CAAA;aACpD;YAGD,MAAM,MAAM,GAAG,EAAW,CAAA;YAE1B,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAE,IAAI,EAAG,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAE,CAAA;YAClE,IAAI,OAAO,EAAG;gBACb,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;gBAC/C,OAAO,MAAM,CAAC,MAAM,CAAE,CAAE,OAAO,CAAE,EAAE;oBAClC,KAAK,EAAE,IAAI;oBACX,KAAK,EAAE,GAAG,CAAC,KAAK;iBAChB,CAAS,CAAA;aACV;YAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAG,EAAE,CAAC,EAAG;gBAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAE,CAAC,CAAE,CAAA;gBAC9B,MAAM,CAAE,KAAK,CAAE,GAAG,MAAM,CAAE,KAAK,CAAE,IAAI,GAAG,CAAE,CAAC,GAAG,CAAC,CAAE,IAAI,EAAS,CAAA;aAC9D;YAED,OAAO,MAAM,CAAC,MAAM,CAAE,GAAG,EAAE,EAAE,MAAM,EAAE,CAAE,CAAA;QACxC,CAAC;QAED,QAAQ,CACP,MAAkC;YAElC,OAAO,IAAI,CAAA;QACZ,CAAC;QAED,IAAI,MAAM;YACT,OAAO,IAAI,MAAM,CAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAE,CAAA;QAC7C,CAAC;QAGD,MAAM,CAAC,MAAM,CAGZ,MAAe,EACf,GAAG,GAAG,CAAC,EACP,GAAG,GAAG,MAAM,CAAC,iBAAiB;YAG9B,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAE,MAAM,CAAE,CAAA;YACzC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAE,GAAG,CAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;YAE/C,MAAM,GAAG,GAAG,MAAO,MAAM,CAAC,MAAO,KAAM,GAAI,IAAK,KAAM,IAAI,CAAA;YAC1D,MAAM,OAAO,GAAI,IAAI,WAAW,CAAE,GAAG,EAAG,MAAM,CAAC,KAAK,EAAG,MAAM,CAAC,MAAM,CAAE,CAAA;YAEtE,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,EAAE;gBAC3B,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAE,MAAM,CAAE,CAAA;gBACrC,IAAI,GAAG;oBAAG,OAAO,GAAG,CAAA;gBACpB,IAAI,GAAG,GAAG,CAAC;oBAAG,OAAO,GAAG,CAAA;gBACxB,OAAO,EAAE,CAAA;YACV,CAAC,CAAA;YAED,OAAO,OAAO,CAAA;QAEf,CAAC;QAGD,MAAM,CAAC,aAAa,CAGnB,MAAe,EACf,GAAG,GAAG,CAAC,EACP,GAAG,GAAG,MAAM,CAAC,iBAAiB;YAG9B,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAE,MAAM,CAAE,CAAA;YACzC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAE,GAAG,CAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;YAE/C,MAAM,GAAG,GAAG,MAAO,MAAM,CAAC,MAAO,KAAM,GAAI,IAAK,KAAM,GAAG,CAAA;YACzD,MAAM,OAAO,GAAI,IAAI,WAAW,CAAE,GAAG,EAAG,MAAM,CAAC,KAAK,EAAG,MAAM,CAAC,MAAM,CAAE,CAAA;YAEtE,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,EAAE;gBAC3B,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAE,MAAM,CAAE,CAAA;gBACrC,IAAI,GAAG;oBAAG,OAAO,GAAG,CAAA;gBACpB,IAAI,GAAG,GAAG,CAAC;oBAAG,OAAO,GAAG,CAAA;gBACxB,OAAO,EAAE,CAAA;YACV,CAAC,CAAA;YAED,OAAO,OAAO,CAAA;QACf,CAAC;QAGD,MAAM,CAAC,IAAI,CAGV,OAAiB;YAGjB,MAAM,MAAM,GAAG,EAAc,CAAA;YAE7B,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAE,MAAM,CAAC,EAAE;gBAEpC,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAE,MAAM,CAAE,CAAA;gBACzC,MAAM,CAAC,IAAI,CAAE,GAAI,MAAM,CAAC,MAAM,CAAE,CAAA;gBAEhC,OAAO,MAAM,CAAC,MAAM,CAAA;YAErB,CAAC,CAAsE,CAAA;YAEvE,OAAO,IAAI,WAAW,CACrB,MAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAE,GAAG,EAC3B,EAAE,EACF,MAAe,CACf,CAAA;QAEF,CAAC;QAGD,MAAM,CAAC,QAAQ,CAEZ,MAAe;YACjB,OAAO,WAAW,CAAC,aAAa,CAAE,MAAM,EAAG,CAAC,EAAG,CAAC,CAAE,CAAA;QACnD,CAAC;QAGD,MAAM,CAAC,WAAW,CAAE,MAA2B;YAE9C,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAE,MAAM,CAAE,CAAA;YAEzC,OAAO,IAAI,WAAW,CACrB,MAAO,MAAM,CAAC,MAAO,GAAG,EACxB,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,MAAM,CACb,CAAA;QAEF,CAAC;QAGD,MAAM,CAAC,YAAY,CAAE,MAA2B;YAE/C,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAE,MAAM,CAAE,CAAA;YAEzC,OAAO,IAAI,WAAW,CACrB,MAAO,MAAM,CAAC,MAAO,GAAG,EACxB,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,MAAM,CACb,CAAA;QAEF,CAAC;QAGD,MAAM,CAAC,IAAI,CAGV,MAAe,EACf,EAAE,UAAU,EAAG,SAAS,KAA8D;YACrF,UAAU,EAAG,KAAK;YAClB,SAAS,EAAG,KAAK;SACjB;YAGD,IAAI,KAAK,GAAG,KAAK,CAAA;YACjB,IAAI,SAAS;gBAAG,KAAK,IAAI,GAAG,CAAA;YAC5B,IAAI,UAAU;gBAAG,KAAK,IAAI,GAAG,CAAA;YAE7B,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAG;gBAEhC,MAAM,GAAG,GAAG,OAAQ,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAE,GAAG,CAAA;gBAC3C,MAAM,MAAM,GAAG,IAAI,WAAW,CAAkC,GAAG,EAAG,KAAK,CAAE,CAAA;gBAC7E,MAAM,CAAC,QAAQ,GAAG,GAAE,EAAE,CAAC,GAAG,CAAA;gBAC1B,OAAO,MAAM,CAAA;aAEb;YAAC,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAG;gBAElC,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAE,qBAAqB,EAAG,MAAM,CAAE,CAAA;gBAC5D,MAAM,MAAM,GAAG,IAAI,WAAW,CAAkC,GAAG,EAAG,KAAK,CAAE,CAAA;gBAC7E,MAAM,CAAC,QAAQ,GAAG,GAAE,EAAE,CAAC,MAAM,CAAA;gBAC7B,OAAO,MAAM,CAAA;aAEb;iBAAM,IAAI,MAAM,YAAY,WAAW,EAAG;gBAE1C,MAAM,MAAM,GAAI,IAAI,WAAW,CAAO,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAE,CAAA;gBAC3E,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAE,MAAM,CAAE,CAAA;gBACrD,OAAO,MAAM,CAAA;aAEb;YAAC,IAAI,MAAM,YAAY,MAAM,EAAG;gBAGhC,MAAM,IAAI,GAAG,IAAI,MAAM,CAAE,GAAG,GAAG,MAAM,CAAC,MAAM,CAAE,CAAA;gBAC9C,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CACxB,EAAE,MAAM,EAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAE,CAAC,MAAM,GAAG,CAAC,EAAE,EACtC,CAAE,CAAC,EAAG,CAAC,EAAE,EAAE,CAAC,MAAM,CAAE,CAAC,GAAG,CAAC,CAAE,CAC3B,CAAA;gBAED,MAAM,MAAM,GAAG,IAAI,WAAW,CAC7B,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,KAAK,EACZ,MAAa,CACb,CAAA;gBAED,MAAM,CAAC,QAAQ,GAAG,GAAE,EAAE,CAAC,EAAE,CAAA;gBAEzB,OAAO,MAAM,CAAA;aAEb;YAAC,IAAI,KAAK,CAAC,OAAO,CAAE,MAAM,CAAE,EAAG;gBAE/B,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAE,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAE,GAAG,CAAE;oBACvD,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAE,GAAU,CAAE;oBACpC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAE,GAAG,CAAE,CACzB,CAAA;gBAED,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAE,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAE,CAAA;gBAExD,MAAM,MAAM,GAAG,EAAkE,CAAA;gBAEjF,IAAI,KAAK,GAAG,CAAC,CAAA;gBAEb,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAG;oBAEhC,KAAK,IAAI,KAAK,IAAI,OAAO,CAAC,MAAM,EAAG;wBAClC,IAAI,MAAM,CAAE,KAAK,CAAE,IAAI,CAAC,EAAG;4BAC1B,MAAM,CAAC,IAAI,CAAE,MAAM,CAAE,KAAK,EAAG,CAAS,CAAE,CAAA;yBACxC;6BAAM;4BACN,MAAM,CAAC,IAAI,CAAE,KAAK,CAAE,CAAA;yBACpB;qBACD;iBAED;gBAED,MAAM,MAAM,GAAG,IAAI,WAAW,CAAE,MAAM,CAAC,IAAI,CAAE,EAAE,CAAE,EAAG,KAAK,EAAG,MAAM,CAAE,CAAA;gBAEpE,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,EAAE;oBAC1B,IAAI,GAAG,GAAG,EAAE,CAAA;oBACZ,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAG;wBAChC,IAAI,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAE,MAAM,CAAE,CAAA;wBACpC,IAAI,GAAG,KAAK,IAAI;4BAAG,OAAO,EAAE,CAAA;wBAC5B,GAAG,IAAI,GAAG,CAAA;qBACV;oBACD,OAAO,GAAG,CAAA;gBACX,CAAC,CAAA;gBAED,OAAO,MAAM,CAAA;aAEb;iBAAM;gBAEN,MAAM,MAAM,GAAG,EAAc,CAAA;gBAE7B,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAE,MAAM,CAAE,CAAC,GAAG,CAAE,IAAI,CAAC,EAAE;oBAEhD,MAAM,CAAC,IAAI,CAAE,IAAI,CAAE,CAAA;oBAEnB,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAE,MAAM,CAAE,IAAI,CAAE,CAAE,CAAA;oBACjD,MAAM,CAAC,IAAI,CAAE,GAAI,MAAM,CAAC,MAAM,CAAE,CAAA;oBAEhC,OAAO,IAAI,MAAM,CAAC,MAAM,GAAG,CAAA;gBAE5B,CAAC,CAAsE,CAAA;gBAEvE,MAAM,MAAM,GAAG,IAAI,WAAW,CAC7B,MAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAE,GAAG,EAC3B,KAAK,EACL,MAAe,CACf,CAAA;gBAED,MAAM,SAAS,GAAG,IAAI,MAAM,CAAE,GAAG,GAAG,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE,KAAK,CAAE,CAAA;gBAChE,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,EAAE;oBAE1B,KAAK,IAAI,MAAM,IAAI,MAAM,EAAG;wBAE3B,IAAI,MAAM,IAAI,MAAM,EAAG;4BAEtB,IAAI,OAAO,MAAM,CAAE,MAAa,CAAE,KAAK,SAAS,EAAG;gCAElD,IAAI,CAAC,MAAM,CAAE,MAAa,CAAE;oCAAG,SAAQ;6BAEvC;iCAAM;gCAEN,MAAM,GAAG,GAAG,MAAM,CAAE,MAAM,CAAE,MAAa,CAAE,CAAE,CAAA;gCAC7C,IAAI,GAAG,CAAC,KAAK,CAAE,SAAS,CAAE;oCAAG,OAAO,GAAG,CAAA;gCAEvC,SAAS,CAAE,IAAI,KAAK,CAAE,gBAAgB,MAAM,IAAI,GAAG,EAAE,CAAE,CAAE,CAAA;6BACzD;yBAED;6BAAM;4BACN,IAAI,OAAO,MAAM,CAAE,MAAa,CAAE,KAAK,QAAQ;gCAAG,SAAQ;yBAC1D;wBAED,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,CAAE,MAAM,CAAE,MAAa,CAAE,CAAE,CAAC,QAAQ,CAAE,MAAM,CAAE,CAAA;wBAC1E,IAAI,GAAG;4BAAG,OAAO,GAAG,CAAA;qBAEpB;oBAED,OAAO,IAAI,CAAA;gBACZ,CAAC,CAAA;gBAED,OAAO,MAAM,CAAA;aAEb;QAEF,CAAC;QAGD,MAAM,CAAC,YAAY,CAAE,GAAI,QAA+B;YACvD,OAAO,IAAI,WAAW,CACrB,OAAQ,QAAQ,CAAC,IAAI,CAAE,GAAG,CAAG,GAAG,CAChC,CAAA;QACF,CAAC;QAGD,MAAM,CAAC,cAAc,CAAE,GAAI,QAA+B;YACzD,OAAO,IAAI,WAAW,CACrB,OAAQ,QAAQ,CAAC,IAAI,CAAE,GAAG,CAAG,GAAG,CAChC,CAAA;QACF,CAAC;QAED,MAAM,CAAC,UAAU,CAChB,IAAY,EACZ,EAAU;YAEV,OAAO,IAAI,WAAW,CACrB,GAAI,WAAW,CAAC,IAAI,CAAE,IAAI,CAAE,CAAC,MAAO,IAAK,WAAW,CAAC,IAAI,CAAE,EAAE,CAAE,CAAC,MAAO,EAAE,CACzE,CAAA;QACF,CAAC;QAED,MAAM,CAAC,SAAS,CACf,GAAI,OAAkE;YAEtE,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAE,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,CAAE,CAAC,CAAE,CAAC,MAAM,CAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACxE,OAAO,IAAI,WAAW,CAAE,IAAK,MAAO,GAAG,CAAE,CAAA;QAC1C,CAAC;QAED,MAAM,CAAC,WAAW,CACjB,GAAI,SAAoE;YAExE,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAE,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,CAAE,CAAC,CAAE,CAAC,MAAM,CAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAC1E,OAAO,IAAI,WAAW,CAAE,KAAM,MAAO,GAAG,CAAE,CAAA;QAC3C,CAAC;QAED,MAAM,CAAC,YAAY,GAAG,WAAW,CAAC,IAAI,CAAE,OAAO,CAAE,CAAA;QACjD,MAAM,CAAC,cAAc,GAAG,WAAW,CAAC,IAAI,CAAE,OAAO,CAAE,CAAA;QAEnD,MAAM,CAAC,UAAU,GAAG,WAAW,CAAC,IAAI,CAAE,OAAO,CAAE,CAAA;QAC/C,MAAM,CAAC,YAAY,GAAG,WAAW,CAAC,IAAI,CAAE,OAAO,CAAE,CAAA;QAEjD,MAAM,CAAC,UAAU,GAAG,WAAW,CAAC,IAAI,CAAE,OAAO,CAAE,CAAA;QAC/C,MAAM,CAAC,YAAY,GAAG,WAAW,CAAC,IAAI,CAAE,OAAO,CAAE,CAAA;QAEjD,MAAM,CAAC,eAAe,GAAG,WAAW,CAAC,IAAI,CAAE,OAAO,CAAE,CAAA;QACpD,MAAM,CAAC,iBAAiB,GAAG,WAAW,CAAC,IAAI,CAAE,OAAO,CAAE,CAAA;QAEtD,MAAM,CAAC,GAAG,GAAG,WAAW,CAAC,IAAI,CAAE,OAAO,CAAE,CAAA;QACxC,MAAM,CAAC,UAAU,GAAG,WAAW,CAAC,IAAI,CAAE,OAAO,CAAE,CAAA;QAC/C,MAAM,CAAC,GAAG,GAAG,WAAW,CAAC,IAAI,CAAE,OAAO,CAAE,CAAA;QAExC,MAAM,CAAC,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAE,MAAM,CAAE,CAAA;QAC5C,MAAM,CAAC,KAAK,GAAG,WAAW,CAAC,IAAI,CAAE,MAAM,CAAE,CAAA;QACzC,MAAM,CAAC,GAAG,GAAG,WAAW,CAAC,IAAI,CAAE,MAAM,CAAE,CAAA;QACvC,MAAM,CAAC,EAAE,GAAG,WAAW,CAAC,IAAI,CAAE,MAAM,CAAE,CAAA;QAEtC,MAAM,CAAC,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC;YAClC,OAAO,EAAE,CAAE,CAAE,IAAI,CAAE,EAAE,IAAI,CAAE;YAC3B,OAAO,EAAE,IAAI;SACb,CAAC,CAAA;;IApaU,aAAW,cAsavB,CAAA;AAEF,CAAC,EA7dS,CAAC,KAAD,CAAC,QA6dV;;;;ACzeD,IAAU,CAAC,CAER;AAFH,WAAU,CAAC;IAAG,iBAAiB,CAAE,4BAA4B,EAC5D,+NAA+N,CAC/N,CAAA;AAAC,CAAC,EAFO,CAAC,KAAD,CAAC,QAER;;;;ACFH,IAAU,CAAC,CA+CV;AA/CD,WAAU,CAAC;IAAC,IAAA,EAAE,CA+Cb;IA/CW,WAAA,EAAE;QACb,MAAa,WAAY,SAAQ,CAAC,CAAC,WAAW;YAE7C,KAAK;gBACJ,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA;gBAC5B,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;oBAAG,OAAO,CAAE,IAAI,CAAC,QAAQ,EAAE,CAAE,CAAA;gBAElD,IAAI,MAAM,GAAW,EAAE,CAAA;gBACvB,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,CAAA;gBAE5B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAG,KAAK,GAAG,OAAO,CAAC,MAAM,EAAG,KAAK,EAAE,EAAG;oBACvD,IAAI,OAAO,CAAE,KAAK,CAAE,KAAK,EAAE;wBAAG,SAAQ;oBAEtC,MAAM,CAAC,IAAI,CAAE,CAAE,KAAK,GAAG,CAAC,CAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAE,KAAK,CAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAE,KAAK,CAAE,CAAE,CAAA;iBACrE;gBAED,OAAO,MAAM,CAAA;YACd,CAAC;YAGD,OAAO;gBAEN,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,KAAK,CAAE,MAAM,CAAE,CAAC,MAAM,CAAE,OAAO,CAAE,CAAA;gBAC/D,IAAI,CAAC,OAAO,CAAC,MAAM;oBAAG,OAAO,CAAE,IAAI,CAAC,QAAQ,EAAE,CAAE,CAAA;gBAEhD,MAAM,QAAQ,GAAG,EAAE,GAAI,OAAO,EAA8B,CAAA;gBAC5D,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAG,EAAE,UAAU,EAAE,IAAI,EAAE,CAAE,CAAA;gBAE9E,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAE,MAAM,CAAE,CAAA;YACvC,CAAC;YAED,MAAM,CAAE,KAAa;gBACpB,OAAO,IAAI,CAAC,OAAO,EAAE,CAAE,KAAK,CAAE,CAAA;YAC/B,CAAC;YAED,CAAC,SAAS,CACT,KAAoD,EACpD,OAAO,EAAiB;gBAGxB,IAAI,KAAK,CAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAE,EAAG;oBACpC,MAAM,CAAE,GAAI,IAAI,EAAE,IAAI,CAAE,CAAA;iBACxB;YAEF,CAAC;SAED;QA1BA;YADE,QAAQ;kDAUT;QA5BW,cAAW,cA6CvB,CAAA;IACF,CAAC,EA/CW,EAAE,GAAF,IAAE,KAAF,IAAE,QA+Cb;AAAD,CAAC,EA/CS,CAAC,KAAD,CAAC,QA+CV;;;;AC/CD,IAAU,CAAC,CAoWV;AApWD,WAAU,CAAC;IACV,MAAa,WAAY,SAAQ,QAAQ;QAQxC,KAAK,CAAC,KAAW;YAChB,IAAK,KAAK,KAAK,SAAS;gBAAG,OAAO,KAAc,CAAA;YAChD,OAAO,IAAW,CAAA;QACnB,CAAC;QAQD,KAAK,CAAC,GAAS;YACd,IAAK,GAAG,KAAK,SAAS;gBAAG,OAAO,GAAY,CAAA;YAC5C,OAAO,EAAE,CAAA;QACV,CAAC;QAOD,QAAQ;YACP,OAAO,EACe,CAAA;QACvB,CAAC;QAUD,OAAO;YACN,OAAO;gBACN,GAAG,KAAK,CAAC,OAAO,EAAE;gBAClB,IAAI,CAAC,MAAM,EAAE;gBACb,IAAI,CAAC,GAAG,EAAE;aACgB,CAAA;QAC5B,CAAC;QAOD,MAAM,CAAC,GAAS;YACf,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAA;QACjC,CAAC;QAOD,SAAS;YACR,OAAO,OAAO,CAAA;QACf,CAAC;QAQD,MAAM;YACL,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;YAElC,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,CAAA;YAErC,OAAO,GAAG,CAAA;QACX,CAAC;QAOD,cAAc;YACb,OAAO;gBACN,IAAI,CAAC,IAAI,EAAE;aACqB,CAAA;QAClC,CAAC;QAUD,OAAO,CAAC,EAAO;YACd,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAA;YAE1C,GAAG,CAAC,KAAK,GAAG,CAAC,KAAW,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;YAC3D,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAA;YAExC,OAAO,GAAG,CAAA;QACX,CAAC;QAQD,MAAM;YACL,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;YAEpC,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC,CAAC;gBAChB,MAAM,EAAE,CAAC,GAAS,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;aACtC,CAAC,CAAA;YAEF,OAAO,GAAG,CAAA;QACX,CAAC;QAOD,cAAc;YACb,OAAO,EACkB,CAAA;QAC1B,CAAC;QAQD,WAAW,CAAC,SAAe;YAC1B,IAAK,SAAS,KAAK,SAAS;gBAAG,OAAO,SAAkB,CAAA;YACxD,OAAO,IAAW,CAAA;QACnB,CAAC;QAUD,GAAG;YACF,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;YAEjC,GAAG,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,CAAA;YACxC,GAAG,CAAC,SAAS,GAAG,CAAC,SAAe,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;YAEhE,OAAO,GAAG,CAAA;QACX,CAAC;QAQD,eAAe,CAAC,GAAS;YACxB,IAAK,GAAG,KAAK,SAAS;gBAAG,OAAO,GAAY,CAAA;YAC5C,OAAO,KAAK,CAAA;QACb,CAAC;QAOD,IAAI;YACH,OAAO,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAE,kBAAkB,CAAE,CAAA;QACrD,CAAC;QAQD,MAAM,CAAC,KAAW;YACjB,IAAK,KAAK,KAAK,SAAS;gBAAG,OAAO,KAAc,CAAA;YAChD,OAAO,IAAW,CAAA;QACnB,CAAC;QAOD,OAAO;YACN,OAAO,IAAI,CAAA;QACZ,CAAC;QAOD,KAAK;YACJ,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,CAAA;QAC5B,CAAC;QAaD,KAAK;YACJ,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;YAEpC,GAAG,CAAC,KAAK,GAAG,CAAC,GAAS,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAC1C,GAAG,CAAC,IAAI,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;YAC5B,GAAG,CAAC,MAAM,GAAG,CAAC,KAAW,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YAChD,GAAG,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAA;YAElC,OAAO,GAAG,CAAA;QACX,CAAC;QAQD,UAAU;YACT,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,eAAe,EAAE,CAAA;YAExC,OAAO,GAAG,CAAA;QACX,CAAC;QAWD,KAAK;YACJ,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAA;YAE1C,GAAG,CAAC,IAAI,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAE,wBAAwB,CAAE,CAAA;YACpE,GAAG,CAAC,KAAK,GAAG,CAAC,KAAW,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAC9C,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC;gBACf,IAAI,CAAC,UAAU,EAAE;aACC,CAAA;YAEnB,OAAO,GAAG,CAAA;QACX,CAAC;QASD,cAAc;YACb,OAAO;gBACN,IAAI,CAAC,KAAK,EAAE;gBACZ,IAAI,CAAC,KAAK,EAAE;aACM,CAAA;QACpB,CAAC;QAOD,UAAU;YACT,OAAO,EACkB,CAAA;QAC1B,CAAC;QAQD,IAAI;YACH,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;YAElC,GAAG,CAAC,IAAI,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,CAAA;YAElC,OAAO,GAAG,CAAA;QACX,CAAC;QAQD,cAAc,CAAC,EAAO,EAAE,KAAW;YAClC,IAAK,KAAK,KAAK,SAAS;gBAAG,OAAO,KAAc,CAAA;YAChD,OAAO,IAAW,CAAA;QACnB,CAAC;QAOD,aAAa,CAAC,EAAO;YACpB,OAAO,EAAE,CAAA;QACV,CAAC;QAUD,aAAa,CAAC,EAAO;YACpB,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;YAEpC,GAAG,CAAC,QAAQ,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAA;YAC3C,GAAG,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;YAE/B,OAAO,GAAG,CAAA;QACX,CAAC;QAOD,eAAe,CAAC,EAAO;YACtB,OAAO;gBACN,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;aACU,CAAA;QAClC,CAAC;KACD;IAzVA;QADE,QAAQ;4CAIT;IAQD;QADE,QAAQ;4CAIT;IAoDD;QADE,QAAQ;6CAOT;IAqBD;QADE,YAAY;8CAQb;IAQD;QADE,QAAQ;6CAST;IAkBD;QADE,QAAQ;kDAIT;IAUD;QADE,QAAQ;0CAQT;IAQD;QADE,QAAQ;sDAIT;IAiBD;QADE,QAAQ;6CAIT;IA+BD;QADE,QAAQ;4CAUT;IAQD;QADE,QAAQ;iDAKT;IAWD;QADE,QAAQ;4CAWT;IAgCD;QADE,QAAQ;2CAOT;IAQD;QADE,YAAY;qDAIb;IAmBD;QADE,YAAY;oDAQb;IArVW,aAAW,cAiWvB,CAAA;AAEF,CAAC,EApWS,CAAC,KAAD,CAAC,QAoWV;;;;ACpWD,IAAU,CAAC,CAqDV;AArDD,WAAU,CAAC;IAGV,SAAgB,gBAAgB,CAAkB,SAAsB;QACvE,MAAM,IAAI,GAAG,EAAE,CAAA;QACf,MAAM,KAAK,GAAG,IAAI,cAAc,CAAE,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,CAAE,CAAA;QACvE,KAAK,CAAC,IAAI,EAAE,CAAA;QACZ,OAAO,KAAK,CAAA;IACb,CAAC;IALe,kBAAgB,mBAK/B,CAAA;IAGD,SAAgB,eAAe,CAI5B,SAAqB;QAEvB,MAAM,OAAO,GAAG,UAAsB,GAAI,IAAY;YACrD,MAAM,KAAK,GAAG,IAAI,cAAc,CAAE,IAAI,GAAG,GAAG,GAAG,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,CAAE,CAAA;YACtF,OAAO,KAAK,CAAC,KAAK,EAAE,CAAA;QACrB,CAAqB,CAAA;QAErB,OAAO,CAAE,MAAM,CAAC,WAAW,CAAE,GAAG,SAAS,CAAC,IAAI,CAAA;QAE9C,OAAO,OAAO,CAAA;IACf,CAAC;IAde,iBAAe,kBAc9B,CAAA;IAGD,SAAgB,eAAe,CAC9B,OAAkE;QAElE,MAAM,IAAI,KAAK,CAAE,4BAA4B,CAAE,CAAA;IAChD,CAAC;IAJe,iBAAe,kBAI9B,CAAA;IAGM,KAAK,UAAU,eAAe;QACpC,eAAe,CAAC,IAAI,EAAE,CAAA;IACvB,CAAC;IAFqB,iBAAe,kBAEpC,CAAA;IAGD,MAAa,gBAAiB,SAAQ,YAAY;QAEjD,MAAM,CAAC,IAAI,CAAwC,IAAiD;YACnG,OAAO,IAAI,CAAA;QACZ,CAAC;KAED;IANY,kBAAgB,mBAM5B,CAAA;IAED,MAAa,UAAU;QAEtB,MAAM,CAAC,MAAM,GAAG,WAAW,CAAA;;IAFf,YAAU,aAGtB,CAAA;AAEF,CAAC,EArDS,CAAC,KAAD,CAAC,QAqDV;;;;ACrDD,IAAU,CAAC,CAER;AAFH,WAAU,CAAC;IAAG,iBAAiB,CAAE,4BAA4B,EAC5D,+WAA+W,CAC/W,CAAA;AAAC,CAAC,EAFO,CAAC,KAAD,CAAC,QAER;;;;ACFH,IAAU,CAAC,CAmFV;AAnFD,WAAU,CAAC;IAAC,IAAA,EAAE,CAmFb;IAnFW,WAAA,EAAE;QAEb,MAAa,WAAY,SAAQ,CAAC,CAAC,WAAW;YAG7C,cAAc;gBACb,OAAO;oBACN,IAAI,CAAC,KAAK,EAAE;oBACZ,GAAI,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,KAAK,EAAE,CAAE,CAAC,CAAC,CAAC,EAAE;iBACxC,CAAA;YACF,CAAC;YAGD,eAAe,CAAE,IAAI,GAAG,IAAI;gBAE3B,IAAI,CAAC,KAAK,EAAE,CAAA;gBAEZ,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;oBAAG,OAAO,KAAK,CAAA;gBAElC,OAAO,IAAI,CAAA;YACZ,CAAC;YAED,gBAAgB,CAAE,IAAc;gBAC/B,IAAI,IAAI,KAAK,SAAS;oBAAG,OAAM;gBAE/B,IAAI,CAAC,KAAK,CAAE,IAAI,CAAE,CAAA;gBAElB,gBAAgB,CAAE,GAAE,EAAE;oBACrB,IAAI,CAAC,KAAK,EAAE,CAAC,OAAO,CAAE,IAAI,CAAE,CAAA;gBAC7B,CAAC,CAAE,CAAA;YAEJ,CAAC;YAED,cAAc;gBACb,OAAO;oBACN,IAAI,CAAC,KAAK,EAAE;oBACZ,GAAI,IAAI,CAAC,UAAU,EAAE;iBACrB,CAAA;YACF,CAAC;YAGD,WAAW,CAAE,SAAsB;gBAElC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;oBAAG,OAAO,IAAI,CAAA;gBAEjC,IAAI,SAAS,IAAI,IAAI,EAAG;oBAEvB,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,cAAc,EAAE,EAAG;wBACxC,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE;4BAAG,OAAO,IAAI,CAAA;qBACxC;oBAED,OAAO,IAAI,CAAA;iBACX;gBAED,IAAI,IAAI,CAAC,eAAe,EAAE,EAAG;oBAC5B,IAAI,CAAC,cAAc,CAAE,SAAS,EAAE,QAAQ,CAAE,CAAA;oBAC1C,SAAS,CAAC,OAAO,CAAE,IAAI,CAAE,CAAA;iBACzB;gBAED,OAAO,SAAS,CAAA;YACjB,CAAC;YAED,aAAa,CAAE,GAAW;gBACzB,OAAO,GAAG,CAAA;YACX,CAAC;YAGD,UAAU;gBACT,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAE,CAAE,OAAgB,EAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAE,OAAO,CAAE,CAAE,CAAA;YAC9E,CAAC;YAED,cAAc,CAAE,EAAW,EAAG,KAAmB;gBAChD,IAAI,CAAC,KAAK,CAAE,EAAE,CAAE,CAAA;gBAChB,IAAI,CAAC,KAAK,EAAE,CAAC,SAAS,CAAC,CAAE,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAE,CAAC,CAAA;gBAChD,IAAI,CAAC,KAAK,EAAE,CAAC,OAAO,CAAE,IAAI,CAAE,CAAA;YAC7B,CAAC;YAED,KAAK,CAAE,KAAc;gBACpB,IAAI,CAAC,KAAK,CAAE,EAAE,CAAE,CAAA;YACjB,CAAC;SAED;QA5EA;YADE,QAAQ;yDAMT;QAGD;YADE,QAAQ;0DAQT;QAqBD;YADE,QAAQ;sDAoBT;QAOD;YADE,QAAQ;qDAGT;QAnEW,cAAW,cA+EvB,CAAA;IAEF,CAAC,EAnFW,EAAE,GAAF,IAAE,KAAF,IAAE,QAmFb;AAAD,CAAC,EAnFS,CAAC,KAAD,CAAC,QAmFV;;;;ACnFD,IAAU,CAAC,CA4FV;AA5FD,WAAU,CAAC;IACV,MAAa,UAAW,SAAQ,iBAAiB;QAWhD,IAAI;YACH,OAAO;gBACN,GAAG,KAAK,CAAC,IAAI,EAAE;gBACf,iBAAiB,EAAE,IAAI,CAAC,OAAO,EAAE;gBACjC,cAAc,EAAE,IAAI,CAAC,OAAO,EAAE;gBAC9B,IAAI,EAAE,UAAU;aAChB,CAAA;QACF,CAAC;QASD,GAAG;YACF,OAAO;gBACN,IAAI,CAAC,IAAI,EAAE;gBACX,IAAI,CAAC,KAAK,EAAE;aACoB,CAAA;QAClC,CAAC;QAQD,OAAO,CAAC,GAAS;YAChB,IAAK,GAAG,KAAK,SAAS;gBAAG,OAAO,GAAY,CAAA;YAC5C,OAAO,KAAK,CAAA;QACb,CAAC;QAOD,IAAI;YACH,OAAO,IAAW,CAAA;QACnB,CAAC;QAOD,KAAK;YACJ,OAAO,EAAE,CAAA;QACV,CAAC;QAQD,KAAK;YACJ,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;YAElC,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC;gBACf,IAAI,CAAC,KAAK,EAAE;aACM,CAAA;YAEnB,OAAO,GAAG,CAAA;QACX,CAAC;QAOD,KAAK;YACJ,OAAO;gBACN,IAAI,CAAC,KAAK,EAAE;aACM,CAAA;QACpB,CAAC;KACD;IAjDA;QADE,QAAQ;6CAIT;IA0BD;QADE,QAAQ;2CAST;IA7EW,YAAU,aAyFtB,CAAA;AAEF,CAAC,EA5FS,CAAC,KAAD,CAAC,QA4FV;;;;AC5FD,IAAU,CAAC,CAER;AAFH,WAAU,CAAC;IAAG,iBAAiB,CAAE,qBAAqB,EACrD,6WAA6W,CAC7W,CAAA;AAAC,CAAC,EAFO,CAAC,KAAD,CAAC,QAER;;;;ACFH,IAAU,CAAC,CAqBV;AArBD,WAAU,CAAC;IAAC,IAAA,EAAE,CAqBb;IArBW,WAAA,EAAE;QACb,MAAa,UAAW,SAAQ,CAAC,CAAC,UAAU;YAE3C,KAAK,CAAE,IAAa;gBACnB,IAAI,IAAI,EAAE,gBAAgB;oBAAG,OAAM;gBACnC,IAAI,CAAC,OAAO,CAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAE,CAAA;gBAC/B,IAAI,IAAI;oBAAG,IAAI,CAAC,cAAc,EAAE,CAAA;YACjC,CAAC;YAED,GAAG;gBACF,OAAO;oBACN,GAAI,UAAU,CAAE,IAAI,CAAC,IAAI,EAAE,CAAE;oBAC7B,GAAI,IAAI,CAAC,KAAK,EAAE;iBACgB,CAAA;YAClC,CAAC;YAED,KAAK;gBACJ,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;YACzC,CAAC;SAED;QAnBY,aAAU,aAmBtB,CAAA;IACF,CAAC,EArBW,EAAE,GAAF,IAAE,KAAF,IAAE,QAqBb;AAAD,CAAC,EArBS,CAAC,KAAD,CAAC,QAqBV;;;;ACrBD,IAAU,CAAC,CAIV;AAJD,WAAU,CAAC;IACV,MAAa,eAAgB,SAAQ,UAAU;KAC9C;IADY,iBAAe,kBAC3B,CAAA;AAEF,CAAC,EAJS,CAAC,KAAD,CAAC,QAIV;;;;ACJD,IAAU,CAAC,CAER;AAFH,WAAU,CAAC;IAAG,iBAAiB,CAAE,8BAA8B,EAC9D,EAAE,CACF,CAAA;AAAC,CAAC,EAFO,CAAC,KAAD,CAAC,QAER;;;;ACFH,IAAU,CAAC,CAaV;AAbD,WAAU,CAAC;IACV,MAAa,sBAAuB,SAAQ,SAAS;QAOpD,IAAI;YACH,OAAO,oKAAoK,CAAA;QAC5K,CAAC;KACD;IAVY,wBAAsB,yBAUlC,CAAA;AAEF,CAAC,EAbS,CAAC,KAAD,CAAC,QAaV;;;;ACbD,IAAU,CAAC,CAsDV;AAtDD,WAAU,CAAC;IACV,MAAa,kBAAmB,SAAQ,eAAe;QAOtD,IAAI;YACH,OAAO,IAAI,CAAC,WAAW,EAAE,CAAA;QAC1B,CAAC;QAOD,IAAI;YACH,OAAO,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAE,yBAAyB,CAAE,CAAA;QAC5D,CAAC;QAOD,OAAO,CAAC,GAAS;YAChB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QACxB,CAAC;QAQD,WAAW;YACV,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,sBAAsB,EAAE,CAAA;YAE/C,OAAO,GAAG,CAAA;QACX,CAAC;QAQD,MAAM,CAAC,GAAS;YACf,IAAK,GAAG,KAAK,SAAS;gBAAG,OAAO,GAAY,CAAA;YAC5C,OAAO,KAAK,CAAA;QACb,CAAC;KACD;IAhBA;QADE,QAAQ;yDAKT;IAQD;QADE,QAAQ;oDAIT;IAlDW,oBAAkB,qBAmD9B,CAAA;AAEF,CAAC,EAtDS,CAAC,KAAD,CAAC,QAsDV;;;;ACtDD,IAAU,CAAC,CAMV;AAND,WAAU,CAAC;IAAC,IAAA,EAAE,CAMb;IANW,WAAA,EAAE;QACb,MAAa,kBAAmB,SAAQ,CAAC,CAAC,kBAAkB;YAC3D,MAAM,CAAE,IAAe;gBACtB,OAAO,IAAI,CAAC,CAAC,CAAC,WAAW,CAAE,IAAI,CAAE,CAAA;YAClC,CAAC;SACD;QAJY,qBAAkB,qBAI9B,CAAA;IACF,CAAC,EANW,EAAE,GAAF,IAAE,KAAF,IAAE,QAMb;AAAD,CAAC,EANS,CAAC,KAAD,CAAC,QAMV;;;;ACND,IAAU,CAAC,CA4IV;AA5ID,WAAU,CAAC;IACV,MAAa,aAAc,SAAQ,SAAS;QAO3C,OAAO;YACN,OAAO;gBACN,IAAI,CAAC,KAAK,EAAE;aACM,CAAA;QACpB,CAAC;QASD,KAAK;YACJ,OAAO;gBACN,IAAI,CAAC,MAAM,EAAE;gBACb,IAAI,CAAC,OAAO,EAAE;aACI,CAAA;QACpB,CAAC;QAOD,KAAK;YACJ,OAAO,KAAK,CAAA;QACb,CAAC;QAOD,IAAI;YACH,OAAO,IAAI,CAAC,UAAU,EAAE,CAAA;QACzB,CAAC;QAUD,IAAI,CAAC,EAAO;YACX,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAA;YAEzC,GAAG,CAAC,KAAK,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;YACrC,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;YAElC,OAAO,GAAG,CAAA;QACX,CAAC;QAQD,KAAK;YACJ,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,eAAe,EAAE,CAAA;YAExC,OAAO,GAAG,CAAA;QACX,CAAC;QAQD,KAAK,CAAC,GAAS;YACd,IAAK,GAAG,KAAK,SAAS;gBAAG,OAAO,GAAY,CAAA;YAC5C,OAAO,EAAE,CAAA;QACV,CAAC;QAQD,MAAM;YACL,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;YAEpC,GAAG,CAAC,KAAK,GAAG,CAAC,GAAS,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAE1C,OAAO,GAAG,CAAA;QACX,CAAC;QAQD,OAAO;YACN,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAA;YAE3C,OAAO,GAAG,CAAA;QACX,CAAC;QAOD,UAAU;YACT,OAAO,IAAW,CAAA;QACnB,CAAC;QAOD,UAAU,CAAC,EAAO;YACjB,OAAO,OAAO,CAAA;QACf,CAAC;QAOD,SAAS,CAAC,EAAO;YAChB,OAAO,MAAM,CAAA;QACd,CAAC;KACD;IApFA;QADE,YAAY;6CAQb;IAQD;QADE,QAAQ;8CAKT;IAQD;QADE,QAAQ;8CAIT;IAQD;QADE,QAAQ;+CAOT;IAQD;QADE,QAAQ;gDAKT;IA7GW,eAAa,gBAyIzB,CAAA;AAEF,CAAC,EA5IS,CAAC,KAAD,CAAC,QA4IV;;;;AC5ID,IAAU,CAAC,CAiDV;AAjDD,WAAU,CAAC;IAAC,IAAA,EAAE,CAiDb;IAjDW,WAAA,EAAE;QAEb,MAAa,aAAc,SAAQ,CAAC,CAAC,aAAa;YAGjD,KAAK;gBACJ,OAAO,8BAA8B,CAAA;YACtC,CAAC;YAGD,aAAa,CAAE,GAAW;gBACzB,OAAO,UAAU,CAAC,IAAI,CAAE,IAAI,CAAC,KAAK,EAAE,GAAG,GAAG,CAAE,CAAA;YAC7C,CAAC;YAGD,KAAK,CAAE,IAAY;gBAClB,MAAM,IAAI,GAAG,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC,eAAe,CAAE,IAAI,CAAC,aAAa,CAAE,IAAI,CAAE,EAAE,UAAU,CAAE,CAAA;gBAC7F,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAE,MAAM,CAAE,CAAA;gBAC7C,MAAM,KAAK,GAA8D,EAAE,CAAA;gBAC3E,KAAK,CAAC,OAAO,CAAE,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAE;oBAClC,KAAK,EAAE,IAAI,CAAC,aAAa,CAAE,OAAO,CAAE,EAAE,SAAS;oBAC/C,IAAI,EAAE,IAAI,CAAC,aAAa,CAAE,MAAM,CAAE,EAAE,SAAS;iBAC7C,CAAE,CAAE,CAAA;gBACL,OAAO,KAAK,CAAA;YACb,CAAC;YAGD,SAAS;gBACR,MAAM,KAAK,GAAG;oBACb,GAAG,IAAI,CAAC,KAAK,CAAE,oCAAoC,CAAE;oBACrD,GAAG,IAAI,CAAC,KAAK,CAAE,2BAA2B,CAAE;iBAC5C,CAAA;gBAED,OAAO,KAAK,CAAC,MAAM,CAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAE,IAAI,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,CAAE,CAAE,CAAA;YAChG,CAAC;YAED,UAAU;gBACT,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,GAAG,CAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAE,IAAI,CAAE,CAAE,CAAA;YACzD,CAAC;YAED,UAAU,CAAE,EAAO;gBAClB,OAAO,EAAE,CAAC,KAAK,CAAA;YAChB,CAAC;YAED,SAAS,CAAE,EAAO;gBACjB,OAAO,EAAE,CAAC,IAAI,CAAA;YACf,CAAC;SACD;QA1CA;YADC,QAAQ;kDAGR;QAGD;YADC,YAAY;0DAGZ;QAGD;YADC,YAAY;kDAUZ;QAGD;YADC,QAAQ;sDAQR;QAhCW,gBAAa,gBA6CzB,CAAA;IAEF,CAAC,EAjDW,EAAE,GAAF,IAAE,KAAF,IAAE,QAiDb;AAAD,CAAC,EAjDS,CAAC,KAAD,CAAC,QAiDV;;","file":"web.js","sourcesContent":[null,null,"Error.stackTraceLimit = 50;\n\ndeclare let _$_: { new(): {} } & typeof globalThis\ndeclare class $ extends _$_ {}\n\nnamespace $ {\n\texport type $ = typeof $$\n\texport declare class $$ extends $ {}\n\tnamespace $$ {\n\t\texport type $$ = $\n\t}\n}\n\nmodule.exports = $\n","namespace $ {\n\n\texport class $mol_decor< Value > {\n\t\t\n\t\tconstructor(\n\t\t\treadonly value : Value\n\t\t) {}\n\n\t\tprefix() { return '' }\n\t\tvalueOf() { return this.value }\n\t\tpostfix() { return '' }\n\n\t\ttoString(){\n\t\t\treturn `${ this.prefix() }${ this.valueOf() }${ this.postfix() }`\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\t\n\texport type $mol_style_unit_length =\n\t| '%'\n\t| 'px' | 'cm' | 'mm' | 'Q' | 'in' | 'pc' | 'pt'\n\t| 'cap' | 'ch' | 'em' | 'rem' | 'ex' | 'ic' | 'lh' | 'rlh'\n\t| 'vh' | 'vw' | 'vi' | 'vb' | 'vmin' | 'vmax'\n\t\n\texport type $mol_style_unit_angle = 'deg' | 'rad' | 'grad' | 'turn'\n\t\n\texport type $mol_style_unit_time = 's' | 'ms'\n\n\texport type $mol_style_unit_any = $mol_style_unit_length | $mol_style_unit_angle | $mol_style_unit_time\n\t\n\texport class $mol_style_unit<\n\t\tLiteral extends $mol_style_unit_any\n\t> extends $mol_decor< number > {\n\n\t\tconstructor(\n\t\t\tvalue : number,\n\t\t\treadonly literal : Literal,\n\t\t) {\n\t\t\tsuper( value )\n\t\t}\n\n\t\tpostfix() {\n\t\t\treturn this.literal\n\t\t}\n\n\t\tstatic per( value : number ) { return new $mol_style_unit( value , '%' ) }\n\t\tstatic px( value : number ) { return new $mol_style_unit( value , 'px' ) }\n\t\tstatic mm( value : number ) { return new $mol_style_unit( value , 'mm' ) }\n\t\tstatic cm( value : number ) { return new $mol_style_unit( value , 'cm' ) }\n\t\tstatic Q( value : number ) { return new $mol_style_unit( value , 'Q' ) }\n\t\tstatic in( value : number ) { return new $mol_style_unit( value , 'in' ) }\n\t\tstatic pc( value : number ) { return new $mol_style_unit( value , 'pc' ) }\n\t\tstatic pt( value : number ) { return new $mol_style_unit( value , 'pt' ) }\n\t\tstatic cap( value : number ) { return new $mol_style_unit( value , 'cap' ) }\n\t\tstatic ch( value : number ) { return new $mol_style_unit( value , 'ch' ) }\n\t\tstatic em( value : number ) { return new $mol_style_unit( value , 'em' ) }\n\t\tstatic rem( value : number ) { return new $mol_style_unit( value , 'rem' ) }\n\t\tstatic ex( value : number ) { return new $mol_style_unit( value , 'ex' ) }\n\t\tstatic ic( value : number ) { return new $mol_style_unit( value , 'ic' ) }\n\t\tstatic lh( value : number ) { return new $mol_style_unit( value , 'lh' ) }\n\t\tstatic rlh( value : number ) { return new $mol_style_unit( value , 'rlh' ) }\n\t\tstatic vh( value : number ) { return new $mol_style_unit( value , 'vh' ) }\n\t\tstatic vw( value : number ) { return new $mol_style_unit( value , 'vw' ) }\n\t\tstatic vi( value : number ) { return new $mol_style_unit( value , 'vi' ) }\n\t\tstatic vb( value : number ) { return new $mol_style_unit( value , 'vb' ) }\n\t\tstatic vmin( value : number ) { return new $mol_style_unit( value , 'vmin' ) }\n\t\tstatic vmax( value : number ) { return new $mol_style_unit( value , 'vmax' ) }\n\t\t\n\t\tstatic deg( value : number ) { return new $mol_style_unit( value , 'deg' ) }\n\t\tstatic rad( value : number ) { return new $mol_style_unit( value , 'rad' ) }\n\t\tstatic grad( value : number ) { return new $mol_style_unit( value , 'grad' ) }\n\t\tstatic turn( value : number ) { return new $mol_style_unit( value , 'turn' ) }\n\n\t\tstatic s( value : number ) { return new $mol_style_unit( value , 's' ) }\n\t\tstatic ms( value : number ) { return new $mol_style_unit( value , 'ms' ) }\n\t\n\t}\n\n}\n","namespace $ {\n\n\texport type $mol_style_func_name =\n\t| 'calc'\n\t| 'hsla'\n\t| 'rgba'\n\t| 'var'\n\t| 'clamp'\n\t| 'url'\n\t| 'scale'\n\n\tconst { per } = $mol_style_unit\n\t\n\texport class $mol_style_func<\n\t\tName extends $mol_style_func_name ,\n\t\tValue = unknown,\n\t> extends $mol_decor< Value > {\n\n\t\tconstructor(\n\t\t\treadonly name : Name,\n\t\t\tvalue : Value,\n\t\t) {\n\t\t\tsuper( value )\n\t\t}\n\n\t\tprefix() { return this.name + '(' }\n\t\tpostfix() { return ')' }\n\n\t\tstatic calc< Value >( value : Value ) {\n\t\t\treturn new $mol_style_func( 'calc' , value )\n\t\t}\n\n\t\tstatic vary< Name extends string >( name : Name ) {\n\t\t\treturn new $mol_style_func( 'var' , name )\n\t\t}\n\n\t\tstatic url< Href extends string >( href : Href ) {\n\t\t\treturn new $mol_style_func( 'url' , JSON.stringify( href ) )\n\t\t}\n\n\t\tstatic hsla(\n\t\t\thue: number,\n\t\t\tsaturation: number,\n\t\t\tlightness: number,\n\t\t\talpha: number,\n\t\t) {\n\t\t\treturn new $mol_style_func(\n\t\t\t\t'hsla',\n\t\t\t\t[ hue , per( saturation ) , per( lightness ) , alpha ],\n\t\t\t)\n\t\t}\n\t\n\t\tstatic clamp(\n\t\t\tmin: $mol_style_unit< any >,\n\t\t\tmid: $mol_style_unit< any >,\n\t\t\tmax: $mol_style_unit< any >,\n\t\t) {\n\t\t\treturn new $mol_style_func(\n\t\t\t\t'clamp',\n\t\t\t\t[ min, mid, max ],\n\t\t\t)\n\t\t}\n\t\n\t\tstatic rgba(\n\t\t\tred: number,\n\t\t\tgreen: number,\n\t\t\tblue: number,\n\t\t\talpha: number,\n\t\t) {\n\t\t\treturn new $mol_style_func(\n\t\t\t\t'rgba',\n\t\t\t\t[ red , green , blue , alpha ],\n\t\t\t)\n\t\t}\n\t\n\t\tstatic scale(\n\t\t\tzoom: number,\n\t\t) {\n\t\t\treturn new $mol_style_func( 'scale', [ zoom ] )\n\t\t}\n\t\n\t}\n\n}\n","namespace $ {\n\n\texport const $mol_ambient_ref : unique symbol = Symbol( '$mol_ambient_ref' )\n\n\t/** @deprecated use $ instead */\n\texport type $mol_ambient_context = $\n\n\texport function $mol_ambient( this : $ | void , overrides : Partial< $ > ) : $ {\n\t\treturn Object.setPrototypeOf( overrides , this || $ )\n\t}\n\n}\n","namespace $ {\n\n\tconst instances = new WeakSet< any >()\n\n\t/**\n\t * Proxy that delegates all to lazy returned target.\n\t * \n\t * \t$mol_delegate( Array.prototype , ()=> fetch_array() )\n\t */\n export function $mol_delegate< Value extends object >(\n\t\tproto : Value ,\n\t\ttarget : ()=> Value ,\n\t) {\n\n\t\tconst proxy = new Proxy( proto , {\n\n\t\t\tget: ( _ , field )=> {\n\t\t\t\tconst obj = target()\n\t\t\t\tlet val = Reflect.get( obj , field )\n\t\t\t\tif( typeof val === 'function' ) {\n\t\t\t\t\tval = val.bind( obj )\n\t\t\t\t} \n\t\t\t\treturn val\n\t\t\t},\n\t\t\thas: ( _ , field )=> Reflect.has( target(), field ),\n\t\t\tset: ( _ , field , value )=> Reflect.set( target() , field , value ),\n\t\t\t\n\t\t\tgetOwnPropertyDescriptor: ( _ , field )=> Reflect.getOwnPropertyDescriptor( target() , field ),\n\t\t\townKeys: ()=> Reflect.ownKeys( target() ),\n\t\t\t\n\t\t\tgetPrototypeOf: ()=> Reflect.getPrototypeOf( target() ),\n\t\t\tsetPrototypeOf: ( _ , donor )=> Reflect.setPrototypeOf( target() , donor ),\n\t\t\t\n\t\t\tisExtensible: ()=> Reflect.isExtensible( target() ),\n\t\t\tpreventExtensions: ()=> Reflect.preventExtensions( target() ),\n\t\t\t\n\t\t\tapply: ( _ , self , args )=> Reflect.apply( target() as Function , self , args ),\n\t\t\tconstruct: ( _ , args , retarget )=> Reflect.construct( target() as Function , args , retarget ),\n\t\t\t\n\t\t\tdefineProperty: ( _ , field , descr )=> Reflect.defineProperty( target() , field , descr ),\n\t\t\tdeleteProperty: ( _ , field )=> Reflect.deleteProperty( target() , field ),\n\n\t\t} )\n\n\t\tinstances.add( proxy )\n\n\t\treturn proxy\n\n\t}\n\n\tReflect.defineProperty(\n\t\t$mol_delegate ,\n\t\tSymbol.hasInstance ,\n\t\t{\n\t\t\tvalue : ( obj : object )=> instances.has( obj ),\n\t\t},\n\t)\n\n}\n","namespace $ {\n\n\texport const $mol_owning_map = new WeakMap< any , any >()\n\n\texport function $mol_owning_allow< Having >(\n\t\thaving : Having ,\n\t) : having is Having & {\n\t\tdestructor() : void\n\t} {\n\t\ttry {\n\t\t\tif( !having ) return false\n\t\t\tif( typeof having !== 'object' ) return false\n\t\t\tif( having instanceof $mol_delegate ) return false\n\t\t\tif( typeof having['destructor'] !== 'function' ) return false\n\t\t\treturn true\n\t\t} catch {\n\t\t\treturn false\n\t\t}\n\t}\n\n\texport function $mol_owning_get< Having , Owner extends object >( having : Having , Owner? : { new() : Owner } ) : Owner | null {\n\t\n\t\tif( !$mol_owning_allow( having ) ) return null\n\n\t\twhile( true ) {\n\n\t\t\tconst owner = $mol_owning_map.get( having )\n\t\t\tif( !owner ) return owner\n\t\t\tif( !Owner ) return owner\n\t\t\t\n\t\t\tif( owner instanceof Owner ) return owner\n\n\t\t\thaving = owner\n\t\t}\n\n\t}\n\t\n\texport function $mol_owning_check< Owner , Having >(\n\t\towner : Owner ,\n\t\thaving : Having ,\n\t) : having is Having & { destructor() : void } {\n\t\tif( !$mol_owning_allow( having ) ) return false\n\t\tif( $mol_owning_map.get( having ) !== owner ) return false\n\t\treturn true\n\t}\n\t\n\texport function $mol_owning_catch< Owner , Having >(\n\t\towner : Owner ,\n\t\thaving : Having ,\n\t) {\n\t\tif( !$mol_owning_allow( having ) ) return false\n\t\tif( $mol_owning_map.get( having ) ) return false\n\n\t\t$mol_owning_map.set( having , owner )\n\t\treturn true\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_fail( error : any ) : never {\n\t\tthrow error\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_fail_hidden( error : any ) : never {\n\t\tthrow error /// Use 'Never Pause Here' breakpoint in DevTools or simply blackbox this script\n\t}\n\n}\n",null,"namespace $ {\n\n\texport class $mol_object2 {\n\t\t\n\t\tstatic $ = $ as $\n\t\t\n\t\t[ $mol_ambient_ref ] = null as any as $\n\t\tget $() {\n\t\t\tif( this[ $mol_ambient_ref ] ) return this[ $mol_ambient_ref ]\n\t\t\tconst owner = $mol_owning_get( this ) as any\n\t\t\treturn this[ $mol_ambient_ref ] = owner?.$ || $mol_object2.$ as $\n\t\t}\n\t\tset $( next : $ ) {\n\t\t\tif( this[ $mol_ambient_ref ] ) $mol_fail_hidden( new Error( 'Context already defined' ) )\n\t\t\tthis[ $mol_ambient_ref ] = next\n\t\t}\n\n\t\tpublic static create< Instance >(\n\t\t\tthis : new( init? : ( instance : any )=> void )=> Instance ,\n\t\t\tinit? : ( instance : $mol_type_writable )=> void\n\t\t) : Instance {\n\t\t\tconst obj = new this\n\t\t\tif( init ) init( obj )\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\tstatic [ Symbol.toPrimitive ]() {\n\t\t\treturn this.toString()\n\t\t}\n\t\t\n\t\tstatic toString() {\n\t\t\tif( Symbol.toStringTag in this ) return this[ Symbol.toStringTag ] as string\n\t\t\treturn this.name\n\t\t}\n\t\t\n\t\tdestructor() { }\n\t\t\n\t\t//[ Symbol.toPrimitive ]( hint: string ) {\n\t\t//\treturn hint === 'number' ? this.valueOf() : this.toString()\n\t\t//}\n\t\t\n\t\ttoString(): string {\n\t\t\treturn this[ Symbol.toStringTag ] || this.constructor.name + '()'\n\t\t}\n\t\t\n\t\ttoJSON(): any {\n\t\t\treturn this.toString()\n\t\t}\n\n\t}\n}\n","namespace $ {\n\n\texport class $mol_after_tick extends $mol_object2 {\n\n\t\tpromise : any\n\t\tcancelled = false\n\n\t\tconstructor(\n\t\t\tpublic task : ()=> void ,\n\t\t) {\n\t\t\tsuper()\n\t\t\tthis.promise = Promise.resolve().then( ()=> {\n\t\t\t\tif( this.cancelled ) return\n\t\t\t\ttask()\n\t\t\t} )\n\t\t}\n\n\t\tdestructor() {\n\t\t\tthis.cancelled = true\n\t\t}\n\n\t}\n\t\n}\n","namespace $ {\n\t\n\texport var $mol_dom_context : typeof globalThis\n\t\n}\n","namespace $ {\n\t\n\t$.$mol_dom_context = self as any\n\t\n}\n","namespace $ {\n\n\tlet all = [] as string[]\n\tlet el : HTMLStyleElement | null = null\n\tlet timer : $mol_after_tick | null = null\n\n\texport function $mol_style_attach(\n\t\tid : string ,\n\t\ttext : string ,\n\t) {\n\n\t\tall.push( `/* ${ id } */\\n\\n${ text }`)\n\n\t\tif( timer ) return el!\n\t\t\n\t\tconst doc = $mol_dom_context.document\n\t\tif( !doc ) return null\n\n\t\tel = doc.createElement('style')\n\t\tel.id = `$mol_style_attach`\n\t\tdoc.head.appendChild( el )\n\n\t\ttimer = new $mol_after_tick( ()=> {\n\t\t\tel!.innerHTML = '\\n' + all.join( '\\n\\n' )\n\t\t\tall = []\n\t\t\tel = null\n\t\t\ttimer = null\n\t\t} )\n\n\t\treturn el\n\n\t}\n\n}\n","namespace $ { $mol_style_attach( \"mol/theme/theme.css\",\n \":root {\\n\\t--mol_theme_hue: 210deg;\\n\\t--mol_theme_luma: -1;\\n\\t--mol_theme_image: none;\\n}\\n\\n[mol_theme] {\\n\\tcolor: var(--mol_theme_text);\\n\\tfill: var(--mol_theme_text);\\n}\\n:where([mol_theme]) {\\n\\tbackground-color: var(--mol_theme_back);\\n}\\n\\t\\n:root, [mol_theme] {\\n\\t--mol_theme_back: hsl( var(--mol_theme_hue), 20%, calc( 50% + 40% * var(--mol_theme_luma) ) );\\n\\t--mol_theme_text: hsl( var(--mol_theme_hue), 0%, calc( 40% - 40% * var(--mol_theme_luma) ) );\\n\\t--mol_theme_field: hsl( var(--mol_theme_hue), 50%, calc( 54% + 46% * var(--mol_theme_luma) ), .25 );\\n\\t\\n\\t--mol_theme_card: hsl( var(--mol_theme_hue), 50%, calc( 45% + 25% * var(--mol_theme_luma) ), .25 );\\n\\t--mol_theme_hover: hsl( var(--mol_theme_hue), 0%, 50%, .1 );\\n\\t--mol_theme_line: hsl( var(--mol_theme_hue), 0%, 50%, .2 );\\n\\t--mol_theme_shade: hsl( var(--mol_theme_hue), 0%, 50%, 1 );\\n\\t\\n\\t--mol_theme_control: hsl( var(--mol_theme_hue), 50%, calc( 50% - 15% * var(--mol_theme_luma) ) );\\n\\t--mol_theme_current: hsl( calc( var(--mol_theme_hue) - 90deg ), 50%, calc( 50% - 15% * var(--mol_theme_luma) ) );\\n\\t--mol_theme_special: hsl( calc( var(--mol_theme_hue) + 90deg ), 50%, calc( 50% - 15% * var(--mol_theme_luma) ) );\\n\\t--mol_theme_focus: hsl( calc( var(--mol_theme_hue) + 180deg ), 100%, calc( 55% - 15% * var(--mol_theme_luma) ) );\\n\\t\\n}\\n\\n[mol_theme=\\\"$mol_theme_light\\\"] {\\n\\t--mol_theme_luma: 1;\\n\\t--mol_theme_image: none;\\n}\\n\\n[mol_theme=\\\"$mol_theme_dark\\\"] {\\n\\t--mol_theme_luma: -1;\\n\\t--mol_theme_image: invert(1) hue-rotate( 180deg );\\n}\\n\\n[mol_theme=\\\"$mol_theme_base\\\"] {\\n\\t--mol_theme_luma: -2;\\n\\t--mol_theme_back: hsl( var(--mol_theme_hue), 50%, 40% );\\n\\t--mol_theme_hover: hsl( var(--mol_theme_hue), 60%, 30% );\\n\\t--mol_theme_current: hsl( var(--mol_theme_hue), 100%, 20% );\\n}\\n\\n[mol_theme=\\\"$mol_theme_current\\\"] {\\n\\tbackground-color: var(--mol_theme_back);\\n\\t--mol_theme_back: hsl( calc( var(--mol_theme_hue) - 90deg ), 50%, calc( 50% + 30% * var(--mol_theme_luma) ) );\\n}\\n\\n[mol_theme=\\\"$mol_theme_special\\\"] {\\n\\t--mol_theme_card: hsl( calc( var(--mol_theme_hue) + 90deg ), 50%, calc( 45% + 25% * var(--mol_theme_luma) ), .25 );\\n}\\n\\n[mol_theme=\\\"$mol_theme_accent\\\"] {\\n\\tbackground-color: var(--mol_theme_back);\\n\\t--mol_theme_luma: -2;\\n\\t--mol_theme_back: hsl( calc( var(--mol_theme_hue) + 180deg ), 90%, 50% );\\n\\t--mol_theme_hover: hsl( calc( var(--mol_theme_hue) + 180deg ), 80%, 35% );\\n}\\n\\n[mol_theme=\\\"$mol_theme_accent\\\"] [mol_theme=\\\"$mol_theme_accent\\\"] {\\n\\t--mol_theme_back: black;\\n}\\n\"\n) }","namespace $ {\n\n\tconst { vary } = $mol_style_func\n\n\texport const $mol_theme = {\n\t\tback: vary('--mol_theme_back'),\n\t\thover: vary('--mol_theme_hover'),\n\t\tcard: vary('--mol_theme_card'),\n\t\tcurrent: vary('--mol_theme_current'),\n\t\tspecial: vary('--mol_theme_special'),\n\t\ttext: vary('--mol_theme_text'),\n\t\tcontrol: vary('--mol_theme_control'),\n\t\tshade: vary('--mol_theme_shade'),\n\t\tline: vary('--mol_theme_line'),\n\t\tfocus: vary('--mol_theme_focus'),\n\t\tfield: vary('--mol_theme_field'),\n\t\timage: vary('--mol_theme_image'),\n\t}\n\n}\n","namespace $ { $mol_style_attach( \"mol/gap/gap.css\",\n \":root {\\n\\t--mol_gap_block: .75rem;\\n\\t--mol_gap_text: .5rem .75rem;\\n\\t--mol_gap_round: .25rem;\\n\\t--mol_gap_space: .25rem;\\n\\t--mol_gap_blur: .5rem;\\n}\\n\"\n) }","namespace $ {\n\tconst { vary } = $mol_style_func\n\texport let $mol_gap = {\n\t\tblock: vary( '--mol_gap_block' ) ,\n\t\ttext: vary( '--mol_gap_text' ),\n\t\tround: vary( '--mol_gap_round' ),\n\t\tspace: vary( '--mol_gap_space' ),\n\t\tblur: vary( '--mol_gap_blur' ),\n\t} as const\n}\n","namespace $ {\n\n\texport namespace $$ { let $ }\n\n\texport const $mol_object_field = Symbol( '$mol_object_field' )\n\t\n\texport class $mol_object extends $mol_object2 {\n\t\t\n\t\tpublic static make< Instance >( this : { new() : Instance } , config : Partial< Instance > ) : Instance {\n\t\t\treturn super.create( obj => {\n\t\t\t\tfor( let key in config ) ( obj as any )[ key ] = config[ key ]!\n\t\t\t} ) as any\n\t\t}\n\t\t\n\t}\n\n}\n","namespace $ {\n\t\n\t/** Special status statuses. */\n\texport enum $mol_wire_cursor {\n\t\t\n\t\t/** Update required. */\n\t\tstale = -1,\n\t\t\n\t\t/** Some of (transitive) pub update required. */\n\t\tdoubt = -2,\n\t\t\n\t\t/** Actual state but may be dropped. */\n\t\tfresh = -3,\n\t\t\n\t\t/** State will never be changed. */\n\t\tfinal = -4,\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\t\n\t/**\n\t * Collects subscribers in compact array. 28B\n\t */\n\texport class $mol_wire_pub extends Object {\n\t\t\n\t\tdata = [] as unknown[]\n\t\t\n\t\t// Derived objects should be Arrays.\n\t\tstatic get [ Symbol.species ]() {\n\t\t\treturn Array\n\t\t}\n\t\t\n\t\t/**\n\t\t * Index of first subscriber.\n\t\t */\n\t\tprotected sub_from = 0 // 4B\n\t\t\n\t\t/**\n\t\t * All current subscribers.\n\t\t */\n\t\tget sub_list() {\n\t\t\tconst res = [] as $mol_wire_sub[]\n\t\t\tfor( let i = this.sub_from; i < this.data.length; i += 2 ) {\n\t\t\t\tres.push( this.data[i] as $mol_wire_sub )\n\t\t\t}\n\t\t\treturn res as readonly $mol_wire_sub[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * Has any subscribers or not.\n\t\t */\n\t\tget sub_empty() {\n\t\t\treturn this.sub_from === this.data.length\n\t\t}\n\t\t\n\t\t/**\n\t\t * Subscribe subscriber to this publisher events and return position of subscriber that required to unsubscribe.\n\t\t */\n\t\tsub_on( sub: $mol_wire_pub, pub_pos: number ) {\n\t\t\tconst pos = this.data.length\n\t\t\tthis.data.push( sub, pub_pos )\n\t\t\treturn pos\n\t\t}\n\t\t\n\t\t/**\n\t\t * Unsubscribe subscriber from this publisher events by subscriber position provided by `on(pub)`.\n\t\t */\n\t\tsub_off( sub_pos: number ) {\n\t\t\t\n\t\t\tif(!( sub_pos < this.data.length )) {\n\t\t\t\t$mol_fail( new Error( `Wrong pos ${ sub_pos }` ) )\n\t\t\t}\n\t\t\t\n\t\t\tconst end = this.data.length - 2\n\t\t\tif( sub_pos !== end ) {\n\t\t\t\tthis.peer_move( end, sub_pos )\n\t\t\t}\n\t\t\t\n\t\t\tthis.data.pop()\n\t\t\tthis.data.pop()\n\t\t\t\n\t\t\tif( this.data.length === this.sub_from ) this.reap()\n\t\t\t\n\t\t}\n\t\t\n\t\t/**\n\t\t * Called when last sub was unsubscribed.\n\t\t **/\n\t\treap() { }\n\t\t\n\t\t/**\n\t\t * Autowire this publisher with current subscriber.\n\t\t **/\n\t\tpromote() {\n\t\t\t$mol_wire_auto()?.track_next( this )\n\t\t}\n\t\t\n\t\t/**\n\t\t * Enforce actualization. Should not throw errors.\n\t\t */\n\t\tfresh() {}\n\t\t\n\t\t/**\n\t\t * Allow to put data to caches in the subtree.\n\t\t */\n\t\tcomplete() {}\n\t\t\n\t\t/**\n\t\t * Notify subscribers about self changes.\n\t\t */\n\t\temit( quant = $mol_wire_cursor.stale ) {\n\t\t\tfor( let i = this.sub_from; i < this.data.length; i += 2 ) {\n\t\t\t\t;( this.data[i] as $mol_wire_sub ).absorb( quant )\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * Moves peer from one position to another. Doesn't clear data at old position!\n\t\t */\n\t\tpeer_move( from_pos: number, to_pos: number ) {\n\t\t\t\n\t\t\tconst peer = this.data[ from_pos ] as $mol_wire_pub\n\t\t\tconst self_pos = this.data[ from_pos + 1 ] as number\n\t\t\t\n\t\t\tthis.data[ to_pos ] = peer\n\t\t\tthis.data[ to_pos + 1 ] = self_pos\n\t\t\t\n\t\t\tpeer.peer_repos( self_pos, to_pos )\n\t\t}\n\t\t\n\t\t/**\n\t\t * Updates self position in the peer.\n\t\t */\n\t\tpeer_repos( peer_pos: number, self_pos: number ) {\n\t\t\tthis.data[ peer_pos + 1 ] = self_pos\n\t\t}\n\t\t\n\t}\n\t\n}\n",null,"namespace $ {\n\t\n\tlet auto: $mol_wire_sub | null = null\n\t\n\t/**\n\t * When fulfilled, all publishers are promoted to this subscriber on access to its.\n\t */\n\texport function $mol_wire_auto( next = auto ) {\n\t\treturn auto = next\n\t}\n\t\n\t/**\n\t * Affection queue. Used to prevent accidental stack overflow on emit.\n\t */\n\texport const $mol_wire_affected = [] as ( $mol_wire_sub | number )[]\n\t\n}\n","namespace $ {\n\n\t// https://docs.google.com/document/d/1FTascZXT9cxfetuPRT2eXPQKXui4nWFivUnS_335T3U/preview#\n\t$['devtoolsFormatters'] = $['devtoolsFormatters'] || []\n\n\texport function $mol_dev_format_register( config : {\n\t\theader : ( val : any , config : any )=> any\n\t\thasBody : ( val : any , config : any )=> false\n\t} | {\n\t\theader : ( val : any , config : any )=> any\n\t\thasBody : ( val : any , config : any )=> boolean\n\t\tbody : ( val : any , config : any )=> any\n\t} ) {\n\t\t$['devtoolsFormatters'].push( config )\n\t}\n\n\texport let $mol_dev_format_head = Symbol( '$mol_dev_format_head' )\n\texport let $mol_dev_format_body = Symbol( '$mol_dev_format_body' )\n\n\t$mol_dev_format_register({\n\n\t\theader : ( val : any , config = false ) => {\n\t\t\t\n\t\t\tif( config ) return null\n\n\t\t\tif( !val ) return null\n\t\t\t\n\t\t\tif( $mol_dev_format_head in val ) {\n\t\t\t\treturn val[ $mol_dev_format_head ]()\n\t\t\t}\n\t\t\t\n\t\t\tif( typeof val === 'function' ) {\n\t\t\t\treturn $mol_dev_format_native( val )\n\t\t\t}\n\n\t\t\treturn null\n\t\t\t\n\t\t} ,\n\t\t\n\t\thasBody : val => val[ $mol_dev_format_body ] ,\n\n\t\tbody : val => val[ $mol_dev_format_body ]() ,\n\n\t})\n\n\texport function $mol_dev_format_native( obj : any ) {\n\t\t\n\t\tif( typeof obj === 'undefined' ) return $mol_dev_format_shade( 'undefined' )\n\t\tif( typeof obj !== 'object' && typeof obj !== 'function' ) return obj\n\n\t\treturn [\n\t\t\t'object' ,\n\t\t\t{\n\t\t\t\tobject : obj ,\n\t\t\t\tconfig : true ,\n\t\t\t} ,\n\t\t]\n\n\t}\n\n\texport function $mol_dev_format_auto( obj : any ) {\n\t\t\n\t\tif( obj == null ) return $mol_dev_format_shade( String( obj ) )\n\n\t\tif( typeof obj === 'object' && $mol_dev_format_head in obj ) {\n\t\t\treturn obj[ $mol_dev_format_head ]()\n\t\t}\n\n\t\treturn [\n\t\t\t'object' ,\n\t\t\t{\n\t\t\t\tobject : obj ,\n\t\t\t\tconfig : false ,\n\t\t\t} ,\n\t\t]\n\n\t}\n\n\texport function $mol_dev_format_element( element : string , style : object , ...content : any[] ) {\n\t\t\t\n\t\tconst styles = [] as string[]\n\t\t\n\t\tfor( let key in style ) styles.push( `${ key } : ${ style[key] }` )\n\t\t\n\t\treturn [\n\t\t\telement ,\n\t\t\t{\n\t\t\t\tstyle : styles.join( ' ; ' ) ,\n\t\t\t} ,\n\t\t\t... content ,\n\t\t]\n\n\t}\n\n\texport function $mol_dev_format_span( style : object , ...content : any[] ) {\n\t\treturn $mol_dev_format_element(\n\t\t\t'span' ,\n\t\t\t{\n\t\t\t\t'vertical-align' : '8%',\n\t\t\t\t... style ,\n\t\t\t} ,\n\t\t\t... content ,\n\t\t)\n\t}\n\n\texport let $mol_dev_format_div = $mol_dev_format_element.bind( null , 'div' )\n\texport let $mol_dev_format_ol = $mol_dev_format_element.bind( null , 'ol' )\n\texport let $mol_dev_format_li = $mol_dev_format_element.bind( null , 'li' )\n\texport let $mol_dev_format_table = $mol_dev_format_element.bind( null , 'table' )\n\texport let $mol_dev_format_tr = $mol_dev_format_element.bind( null , 'tr' )\n\texport let $mol_dev_format_td = $mol_dev_format_element.bind( null , 'td' )\n\n\texport let $mol_dev_format_accent = $mol_dev_format_span.bind( null , {\n\t\t'color' : 'magenta' ,\n\t} )\n\n\texport let $mol_dev_format_strong = $mol_dev_format_span.bind( null , {\n\t\t'font-weight' : 'bold' ,\n\t} )\n\n\texport let $mol_dev_format_string = $mol_dev_format_span.bind( null , {\n\t\t'color' : 'green',\n\t} )\n\n\texport let $mol_dev_format_shade = $mol_dev_format_span.bind( null , {\n\t\t'color' : 'gray',\n\t} )\n\n\texport let $mol_dev_format_indent = $mol_dev_format_div.bind( null , {\n\t\t'margin-left': '13px'\n\t} )\n\n}\n","namespace $ {\n\t\n\t/**\n\t * Publisher that can auto collect other publishers. 32B\n\t * \n\t * \tP1 P2 P3 P4 S1 S2 S3\n\t * \t^ ^\n\t * \tpubs_from subs_from\n\t */\n\texport class $mol_wire_pub_sub extends $mol_wire_pub implements $mol_wire_sub {\n\t\t\n\t\tprotected pub_from = 0 // 4B\n\t\tprotected cursor = $mol_wire_cursor.stale // 4B\n\t\t\n\t\tget pub_list() {\n\t\t\tconst res = [] as $mol_wire_pub[]\n\t\t\tconst max = this.cursor >=0 ? this.cursor : this.sub_from\n\t\t\tfor( let i = this.pub_from; i < max; i += 2 ) {\n\t\t\t\tif( this.data[i] ) res.push( this.data[i] as $mol_wire_pub )\n\t\t\t}\n\t\t\treturn res\n\t\t}\n\t\t\n\t\ttrack_on() {\n\t\t\tthis.cursor = this.pub_from\n\t\t\tconst sub = $mol_wire_auto()\n\t\t\t$mol_wire_auto( this )\n\t\t\treturn sub\n\t\t}\n\t\t\n\t\tpromote() {\n\t\t\t\n\t\t\tif( this.cursor >= this.pub_from ) {\n\t\t\t\t$mol_fail( new Error( 'Circular subscription' ) )\n\t\t\t}\n\t\t\t\n\t\t\tsuper.promote()\n\t\t}\n\t\t\n\t\ttrack_next( pub?: $mol_wire_pub ): $mol_wire_pub | null {\n\t\t\t\n\t\t\tif( this.cursor < 0 ) $mol_fail( new Error( 'Promo to non begun sub' ) )\n\t\t\t\n\t\t\tif( this.cursor < this.sub_from ) {\n\t\t\t\n \t\t\t\tconst next = this.data[ this.cursor ] as $mol_wire_pub | undefined\n\t\t\t\tif( pub === undefined ) return next ?? null\n\t\t\t\t\n\t\t\t\tif( next === pub ) {\n\t\t\t\t\tthis.cursor += 2\n\t\t\t\t\treturn next\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( next ) {\n\t\t\t\t\t\n\t\t\t\t\tif( this.sub_from < this.data.length ) {\n\t\t\t\t\t\tthis.peer_move( this.sub_from, this.data.length )\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tthis.peer_move( this.cursor, this.sub_from )\n\t\t\t\t\tthis.sub_from += 2\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t\n\t\t\t} else {\n\t\t\t\t\n\t\t\t\tif( pub === undefined ) return null\n\t\t\t\t\n\t\t\t\tif( this.sub_from < this.data.length ) {\n\t\t\t\t\tthis.peer_move( this.sub_from, this.data.length )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tthis.sub_from += 2\n\t\t\t\t\n\t\t\t}\t\t\t\n\t\t\t\n\t\t\tthis.data[ this.cursor ] = pub\n\t\t\tthis.data[ this.cursor + 1 ] = pub.sub_on( this, this.cursor )\n\t\t\t\n\t\t\tthis.cursor += 2\n\t\t\t\n\t\t\treturn pub\n\t\t}\n\t\t\n\t\ttrack_off( sub: $mol_wire_sub | null ) {\n\t\t\t\n\t\t\t$mol_wire_auto( sub )\n\t\t\t\n\t\t\tif( this.cursor < 0 ) {\n\t\t\t\t$mol_fail( new Error( 'End of non begun sub' ) )\n\t\t\t}\n\t\t\t\n\t\t\tfor(\n\t\t\t\tlet cursor = this.pub_from;\n\t\t\t\tcursor < this.cursor;\n\t\t\t\tcursor += 2\n\t\t\t) {\n\t\t\t\tconst pub = this.data[ cursor ] as $mol_wire_pub\n\t\t\t\tpub.fresh()\n\t\t\t}\n\t\t\t\n\t\t\tthis.cursor = $mol_wire_cursor.fresh\n\t\t\t\n\t\t}\n\t\t\n\t\tpub_off( sub_pos: number ) {\n\t\t\tthis.data[ sub_pos ] = undefined as any\n\t\t\tthis.data[ sub_pos + 1 ] = undefined as any \n\t\t}\n\t\t\n\t\tdestructor() {\n\t\t\t\n\t\t\tfor(\n\t\t\t\tlet cursor = this.data.length - 2;\n\t\t\t\tcursor >= this.sub_from;\n\t\t\t\tcursor -= 2\n\t\t\t) {\n\t\t\t\tconst sub = this.data[ cursor ] as $mol_wire_sub\n\t\t\t\tconst pos = this.data[ cursor + 1 ] as number\n\t\t\t\tsub.pub_off( pos )\n\t\t\t\tthis.data.pop()\n\t\t\t\tthis.data.pop()\n\t\t\t}\n\t\t\t\n\t\t\tthis.cursor = this.pub_from\n\t\t\tthis.track_cut()\n\t\t\tthis.cursor = $mol_wire_cursor.final\n\t\t\t\n\t\t}\n\t\t\n\t\ttrack_cut() {\n\t\t\t\n\t\t\tif( this.cursor < this.pub_from ) {\n\t\t\t\t$mol_fail( new Error( 'Cut of non begun sub' ) )\n\t\t\t}\n\t\t\t\n\t\t\tlet tail = 0\n\t\t\t\n\t\t\tfor(\n\t\t\t\tlet cursor = this.cursor;\n\t\t\t\tcursor < this.sub_from;\n\t\t\t\tcursor += 2\n\t\t\t) {\n\t\t\t\t\n\t\t\t\tconst pub = this.data[ cursor ] as $mol_wire_pub | undefined\n\t\t\t\tpub?.sub_off( this.data[ cursor + 1 ] as number )\n\t\t\t\t\n\t\t\t\tif( this.sub_from < this.data.length ) {\n\t\t\t\t\tthis.peer_move( this.data.length - 2, cursor )\n\t\t\t\t\tthis.data.pop()\n\t\t\t\t\tthis.data.pop()\n\t\t\t\t} else {\n\t\t\t\t\t++ tail\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t\tfor(; tail; -- tail ) {\n\t\t\t\tthis.data.pop()\n\t\t\t\tthis.data.pop()\n\t\t\t}\n\t\t\t\n\t\t\tthis.sub_from = this.cursor\n\t\t\t\n\t\t}\n\t\t\n\t\tcomplete() { }\n\t\t\n\t\tcomplete_pubs() {\n\t\t\t\n\t\t\tconst limit = this.cursor < 0 ? this.sub_from : this.cursor \n\t\t\t\n\t\t\tfor(\n\t\t\t\tlet cursor = this.pub_from;\n\t\t\t\tcursor < limit;\n\t\t\t\tcursor += 2\n\t\t\t) {\n\t\t\t\tconst pub = this.data[ cursor ] as $mol_wire_pub\n\t\t\t\tpub?.complete()\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t\tabsorb( quant = $mol_wire_cursor.stale ) {\n\t\t\t\n\t\t\tif( this.cursor === $mol_wire_cursor.final ) return\n\t\t\tif( this.cursor >= quant ) return\n\t\t\t\n\t\t\tthis.cursor = quant\n\t\t\tthis.emit( $mol_wire_cursor.doubt )\n\t\t\t\n\t\t}\n\t\t\n\t\t[ $mol_dev_format_head ]() {\n\t\t\treturn $mol_dev_format_native( this )\n\t\t}\n\t\t\n\t\t/**\n\t\t * Is subscribed to any publisher or not.\n\t\t */\n\t\tget pub_empty() {\n\t\t\treturn this.sub_from === this.pub_from\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\texport class $mol_after_frame extends $mol_object2 {\n\n\t\tstatic _promise = null as Promise | null\n\n\t\tstatic get promise() {\n\n\t\t\tif( this._promise ) return this._promise\n\t\t\t\n\t\t\treturn this._promise = new Promise( done => {\n\t\t\t\t\n\t\t\t\tconst complete = ()=> {\n\t\t\t\t\tthis._promise = null\n\t\t\t\t\tdone()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( typeof requestAnimationFrame === 'function' ) {\n\t\t\t\t\trequestAnimationFrame( complete )\n\t\t\t\t} else {\n\t\t\t\t\tsetTimeout( complete, 16 )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t} )\n\n\t\t}\n\n\t\tcancelled = false\n\t\tpromise!: Promise\n\n\t\tconstructor(\n\t\t\tpublic task : ()=> void ,\n\t\t) {\n\t\t\tsuper()\n\n\t\t\tthis.promise = $mol_after_frame.promise.then( ()=> {\n\t\t\t\tif( this.cancelled ) return\n\t\t\t\ttask()\n\t\t\t} )\n\n\t\t}\n\n\t\tdestructor() {\n\t\t\tthis.cancelled = true\n\t\t}\n\n\t}\n\t\n}\n","namespace $ {\n\t\n\tconst handled = new WeakSet< Promise< unknown > >()\n\t\n\t/**\n\t * Suspendable task with support both sync/async api.\n\t * \n\t * \tA1 A2 A3 A4 P1 P2 P3 P4 S1 S2 S3\n\t * \t^ ^ ^\n\t * \targs_from pubs_from subs_from\n\t **/\n\texport abstract class $mol_wire_fiber<\n\t\tHost,\n\t\tArgs extends readonly unknown[],\n\t\tResult,\n\t> extends $mol_wire_pub_sub {\n\t\t\n\t\tstatic warm = true\n\t\t\n\t\tstatic planning = new Set< $mol_wire_fiber< any, any, any > >()\n\t\tstatic reaping = new Set< $mol_wire_fiber< any, any, any > >()\n\t\t\n\t\tstatic plan_task: $mol_after_frame | null = null\n\t\tstatic plan() {\n\t\t\t\n\t\t\tif( this.plan_task ) return\n\t\t\t\n\t\t\tthis.plan_task = new $mol_after_frame( ()=> {\n\t\t\t\t\n\t\t\t\ttry {\n\t\t\t\t\tthis.sync()\n\t\t\t\t} finally {\n\t\t\t\t\t$mol_wire_fiber.plan_task = null\n\t\t\t\t}\n\n\t\t\t} )\n\t\t\t\n\t\t}\n\t\t\n\t\tstatic sync() {\n\t\t\t\n\t\t\t// Sync whole fiber graph\n\t\t\twhile( this.planning.size ) {\n\t\t\t\tfor( const fiber of this.planning ) {\n\t\t\t\t\tthis.planning.delete( fiber )\n\t\t\t\t\tif( fiber.cursor >= 0 ) continue\n\t\t\t\t\tif( fiber.cursor === $mol_wire_cursor.final ) continue\n\t\t\t\t\tfiber.fresh()\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\t// Collect garbage\n\t\t\twhile( this.reaping.size ) {\n\t\t\t\t\n\t\t\t\tconst fibers = this.reaping\n\t\t\t\tthis.reaping = new Set\n\t\t\t\t\n\t\t\t\tfor( const fiber of fibers ) {\n\t\t\t\t\tif( !fiber.sub_empty ) continue\n\t\t\t\t\tfiber.destructor()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\tpublic cache: Result | Error | Promise< Result | Error > = undefined as any\n\t\t\n\t\tget args() {\n\t\t\treturn this.data.slice( 0 , this.pub_from ) as any as Args\n\t\t}\n\t\t\n\t\tresult() {\n\t\t\tif( this.cache instanceof Promise ) return\n\t\t\tif( this.cache instanceof Error ) return\n\t\t\treturn this.cache\n\t\t}\n\t\t\n\t\tfield() {\n\t\t\treturn this.task.name + '()'\n\t\t}\n\t\t\n\t\tconstructor(\n\t\t\tid: string,\n\t\t\treadonly task: ( this : Host , ... args : Args )=> Result,\n\t\t\treadonly host?: Host,\n\t\t\targs?: Args\n\t\t) {\n\t\t\t\n\t\t\tsuper()\n\t\t\tif( args ) this.data.push( ... args )\n\t\t\tthis.pub_from = this.sub_from = args?.length ?? 0\n\t\t\tthis[ Symbol.toStringTag ] = id\n\t\t\t\n\t\t}\n\t\t\n\t\tplan() {\n\t\t\t$mol_wire_fiber.planning.add( this )\n\t\t\t$mol_wire_fiber.plan()\n\t\t}\n\t\t\n\t\treap() {\n\t\t\t$mol_wire_fiber.reaping.add( this )\n\t\t\t$mol_wire_fiber.plan()\n\t\t}\n\t\t\n\t\ttoString() {\n\t\t\treturn this[ Symbol.toStringTag ]\n\t\t}\n\t\t\n\t\ttoJSON() {\n\t\t\treturn this[ Symbol.toStringTag ]\n\t\t}\n\n\t\t[ $mol_dev_format_head ]() {\n\t\t\t\n\t\t\tconst cursor = {\n\t\t\t\t[ $mol_wire_cursor.stale ]: '🔴',\n\t\t\t\t[ $mol_wire_cursor.doubt ]: '🟡',\n\t\t\t\t[ $mol_wire_cursor.fresh ]: '🟢',\n\t\t\t\t[ $mol_wire_cursor.final ]: '🔵',\n\t\t\t}[ this.cursor ] ?? this.cursor.toString()\n\t\t\t\n\t\t\treturn $mol_dev_format_div( {},\n\t\t\t\t$mol_dev_format_native( this ),\n\t\t\t\t$mol_dev_format_shade( cursor + ' ' ),\n\t\t\t\t$mol_dev_format_auto( this.cache ),\n\t\t\t)\n\t\t\t\n\t\t}\n\t\t\n\t\tget $() {\n\t\t\treturn ( this.host ?? this.task )['$']\n\t\t}\n\t\t\n\t\temit( quant = $mol_wire_cursor.stale ) {\n\t\t\tif( this.sub_empty ) this.plan()\n\t\t\telse super.emit( quant )\n\t\t}\n\t\t\n\t\tfresh() {\n\n\t\t\ttype Result = typeof this.cache\n\t\t\t\n\t\t\tif( this.cursor === $mol_wire_cursor.fresh ) return\n\t\t\tif( this.cursor === $mol_wire_cursor.final ) return\n\t\t\t\n\t\t\tcheck: if( this.cursor === $mol_wire_cursor.doubt ) {\n\t\t\t\t\n\t\t\t\tfor( let i = this.pub_from ; i < this.sub_from; i += 2 ) {\n\t\t\t\t\t;( this.data[i] as $mol_wire_pub )?.fresh()\n\t\t\t\t\tif( this.cursor !== $mol_wire_cursor.doubt ) break check\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tthis.cursor = $mol_wire_cursor.fresh\n\t\t\t\treturn\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t\tconst bu = this.track_on()\n\t\t\tlet result: typeof this.cache\n\n\t\t\ttry {\n\n\t\t\t\tswitch( this.pub_from ) {\n\t\t\t\t\tcase 0: result = (this.task as any).call( this.host! ); break\n\t\t\t\t\tcase 1: result = (this.task as any).call( this.host!, this.data[0] ); break\n\t\t\t\t\tdefault: result = (this.task as any).call( this.host!, ... this.args ); break\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( result instanceof Promise ) {\n\t\t\t\t\t\n\t\t\t\t\tconst put = ( res: Result )=> {\n\t\t\t\t\t\tif( this.cache === result ) this.put( res )\n\t\t\t\t\t\treturn res\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tresult = Object.assign( result.then( put, put ), {\n\t\t\t\t\t\tdestructor: result['destructor'] ?? (()=> {})\n\t\t\t\t\t} )\n\t\t\t\t\t\n\t\t\t\t\thandled.add( result )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t} catch( error: any ) {\n\t\t\t\t\n\t\t\t\tif( error instanceof Error || error instanceof Promise ) {\n\t\t\t\t\tresult = error\n\t\t\t\t} else {\n\t\t\t\t\tresult = new Error( String( error ), { cause: error } )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( result instanceof Promise && !handled.has( result ) ) {\n\t\t\t\t\t\n\t\t\t\t\tresult = Object.assign( result.finally( ()=> {\n\t\t\t\t\t\tif( this.cache === result ) this.absorb()\n\t\t\t\t\t} ), {\n\t\t\t\t\t\tdestructor: result['destructor'] ?? (()=> {})\n\t\t\t\t\t} )\n\t\t\t\t\t\n\t\t\t\t\thandled.add( result )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t\tif(!( result instanceof Promise )) {\n\t\t\t\tthis.track_cut()\n\t\t\t}\n\t\t\t\n\t\t\tthis.track_off( bu )\n\t\t\tthis.put( result )\n\n\t\t}\n\t\t\n\t\trefresh() {\n\t\t\tthis.cursor = $mol_wire_cursor.stale\n\t\t\tthis.fresh()\n\t\t}\n\t\t\n\t\tabstract put( next: Result | Error | Promise< Result | Error > ): Result | Error | Promise< Result | Error >\n\t\t\n\t\t/**\n\t\t * Synchronous execution. Throws Promise when waits async task (SuspenseAPI provider).\n\t\t * Should be called inside SuspenseAPI consumer (ie fiber).\n\t\t */\n\t\tsync() {\n\t\t\t\n\t\t\tif( !$mol_wire_fiber.warm ) {\n\t\t\t\treturn this.result() as Awaited< Result >\n\t\t\t}\n\t\t\t\n\t\t\tthis.promote()\n\t\t\tthis.fresh()\n\t\t\t\n\t\t\tif( this.cache instanceof Error ) {\n\t\t\t\treturn $mol_fail_hidden( this.cache )\n\t\t\t}\n\t\t\t\n\t\t\tif( this.cache instanceof Promise ) {\n\t\t\t\treturn $mol_fail_hidden( this.cache )\n\t\t\t}\n\t\t\t\n\t\t\treturn this.cache as Awaited< Result >\n\t\t}\n\n\t\t/**\n\t\t * Asynchronous execution.\n\t\t * It's SuspenseAPI consumer. So SuspenseAPI providers can be called inside.\n\t\t */\n\t\tasync async() {\n\t\t\t\n\t\t\twhile( true ) {\n\t\t\t\t\n\t\t\t\tthis.fresh()\n\t\t\t\t\n\t\t\t\tif( this.cache instanceof Error ) {\n\t\t\t\t\t$mol_fail_hidden( this.cache )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif(!( this.cache instanceof Promise )) return this.cache\n\t\t\t\t\t\n\t\t\t\tawait this.cache\n\t\t\t\t\t\n\t\t\t\tif( this.cursor === $mol_wire_cursor.final ) {\n\t\t\t\t\t// never ends on destructed fiber\n\t\t\t\t\tawait new Promise( ()=> {} )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\t\n\texport function $mol_func_name( this : $ , func : Function ) : string {\n\t\t\n\t\tlet name = func.name\n\t\tif( name?.length > 1 ) return name\n\n\t\tfor( let key in this ) {\n\t\t\ttry {\n\t\t\t\tif( this[ key ] !== func ) continue\n\t\t\t\tname = key\n\t\t\t\tObject.defineProperty( func , 'name' , { value : name } )\n\t\t\t\tbreak\n\t\t\t} catch {}\n\t\t}\n\n\t\treturn name\n\t}\n\n\texport function $mol_func_name_from< Target extends Function >( target : Target , source : Function ) {\n\t\tObject.defineProperty( target , 'name' , { value : source.name } )\n\t\treturn target\n\t}\n\n}\n","namespace $ {\n\n\t/** Generates unique identifier. */\n\texport function $mol_guid(\n\t\tlength = 8,\n\t\texists: ( id: string )=> boolean = ()=> false,\n\t) {\n\n\t\tfor(;;) {\n\n\t\t\tlet id = Math.random().toString( 36 ).substring( 2, length + 2 ).toUpperCase()\n\t\t\tif( exists( id ) ) continue\n\t\t\t\n\t\t\treturn id\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\t\n\texport const $mol_key_store = new WeakMap< object, string >()\n\n\texport function $mol_key< Value >( value : Value ) : string {\n\t\t\n\t\tif( !value ) return JSON.stringify( value )\n\t\tif( typeof value !== 'object' && typeof value !== 'function' ) return JSON.stringify( value )\n\t\t\n\t\treturn JSON.stringify( value, ( field, value )=> {\n\t\t\t\n\t\t\tif( !value ) return value\n\t\t\tif( typeof value !== 'object' && typeof value !== 'function' ) return value\n\t\t\tif( Array.isArray( value ) ) return value\n\t\t\t\n\t\t\tconst proto = Reflect.getPrototypeOf( value )\n\t\t\tif( !proto ) return value\n\t\t\tif( Reflect.getPrototypeOf( proto ) === null ) return value\n\t\t\t\n\t\t\tif( 'toJSON' in value ) return value\n\t\t\tif( value instanceof RegExp ) return value.toString()\n\t\t\t\n\t\t\tlet key = $mol_key_store.get( value )\n\t\t\tif( key ) return key\n\t\t\t\n\t\t\tkey = $mol_guid()\n\t\t\t$mol_key_store.set( value, key )\n\t\t\t\n\t\t\treturn key\n\t\t} )\n\n\t}\n\t\n}\n","namespace $ {\n\n\texport let $mol_compare_deep_cache = new WeakMap< any , WeakMap< any , boolean > >()\n\t\n\t/**\n\t * Deeply compares two values. Returns true if equal.\n\t * Define `Symbol.toPrimitive` to customize.\n\t */\n\texport function $mol_compare_deep< Value >( left: Value, right: Value ): boolean {\n\n\t\tif( Object.is( left , right ) ) return true\n\n\t\tif( left === null ) return false\n\t\tif( right === null ) return false\n\n\t\tif( typeof left !== 'object' ) return false\n\t\tif( typeof right !== 'object' ) return false\n\n\t\tconst left_proto = Reflect.getPrototypeOf( left as any )\n\t\tconst right_proto = Reflect.getPrototypeOf( right as any )\n\t\t\n\t\tif( left_proto !== right_proto ) return false\n\n\t\tif( left instanceof Boolean ) return Object.is( left.valueOf(), right['valueOf']() )\n\t\tif( left instanceof Number ) return Object.is( left.valueOf(), right['valueOf']() )\n\t\tif( left instanceof String ) return Object.is( left.valueOf(), right['valueOf']() )\n\t\tif( left instanceof Date ) return Object.is( left.valueOf(), right['valueOf']() )\n\t\tif( left instanceof RegExp ) return left.source === right['source'] && left.flags === right['flags']\n\t\tif( left instanceof Error ) return left.message === right['message'] && left.stack === right['stack']\n\n\t\tlet left_cache = $mol_compare_deep_cache.get( left )\n\t\tif( left_cache ) {\n\n\t\t\tconst right_cache = left_cache.get( right )\n\t\t\tif( typeof right_cache === 'boolean' ) return right_cache\n\n\t\t} else {\n\t\t\t\n\t\t\tleft_cache = new WeakMap< any , boolean >([[ right, true ]])\n\t\t\t$mol_compare_deep_cache.set( left , left_cache )\n\n\t\t}\n\n\t\tlet result!: boolean\n\n\t\ttry {\n\t\t\t\n\t\t\tif( left_proto && !Reflect.getPrototypeOf( left_proto ) ) result = compare_pojo( left, right as any )\n\t\t\telse if( Array.isArray( left ) ) result = compare_array( left, right as any )\n\t\t\telse if( left instanceof Set ) result = compare_set( left, right as any )\n\t\t\telse if( left instanceof Map ) result = compare_map( left, right as any )\n\t\t\telse if( ArrayBuffer.isView( left ) ) result = compare_buffer( left, right as any )\n\t\t\telse if( Symbol.toPrimitive in left ) result = compare_primitive( left, right )\n\t\t\telse result = false\n\n\t\t} finally {\n\t\t\tleft_cache.set( right , result )\n\t\t}\n\t\t\n\t\treturn result\n\t}\n\n\tfunction compare_array< Value extends any[] >( left: Value, right: Value ): boolean {\n\t\t\n\t\tconst len = left.length\n\t\tif( len !== right.length ) return false\n\t\t\n\t\tfor( let i = 0; i < len; ++i ) {\n\t\t\tif( !$mol_compare_deep( left[i] , right[i] ) ) return false\n\t\t}\n\t\t\n\t\treturn true\n\t}\n\t\n\tfunction compare_buffer( left: ArrayBufferView, right: ArrayBufferView ): boolean {\n\t\t\n\t\tconst len = left.byteLength\n\t\tif( len !== right.byteLength ) return false\n\t\t\n\t\tfor( let i = 0; i < len; ++i ) {\n\t\t\tif( left[i] !== right[i] ) return false\n\t\t}\n\t\t\n\t\treturn true\n\t}\n\t\n\tfunction compare_iterator< Value extends IterableIterator >(\n\t\tleft: Value,\n\t\tright: Value,\n\t): boolean {\n\t\t\n\t\twhile( true ) {\n\n\t\t\tconst left_next = left.next()\n\t\t\tconst right_next = right.next()\n\n\t\t\tif( left_next.done !== right_next.done ) return false\n\t\t\tif( left_next.done ) break\n\n\t\t\tif( !$mol_compare_deep( left_next.value , right_next.value ) ) return false\n\n\t\t}\n\n\t\treturn true\n\n\t}\n\t\n\tfunction compare_set< Value extends Set >( left: Value, right: Value ): boolean {\n\t\tif( left.size !== right.size ) return false\n\t\treturn compare_iterator( left.values(), right.values() )\n\t}\n\t\n\tfunction compare_map< Key, Value >( left: Map< Key, Value > , right: Map< Key, Value > ): boolean {\n\t\tif( left.size !== right.size ) return false\n\t\treturn compare_iterator( left.keys(), right.keys() )\n\t\t\t&& compare_iterator( left.values(), right.values() )\n\t}\n\t\n\tfunction compare_pojo( left: {}, right: {} ): boolean {\n\t\t\n\t\tconst left_keys = Object.getOwnPropertyNames( left )\n\t\tconst right_keys = Object.getOwnPropertyNames( right )\n\t\t\n\t\tif( left_keys.length !== right_keys.length ) return false\n\n\t\tfor( let key of left_keys ) {\n\t\t\tif( !$mol_compare_deep( left[ key ], Reflect.get( right, key ) ) ) return false\n\t\t}\n\n\t\treturn true\n\t}\n\t\n\tfunction compare_primitive( left: {}, right: {} ): boolean {\n\t\treturn Object.is(\n\t\t\tleft[ Symbol.toPrimitive ]( 'default' ),\n\t\t\tright[ Symbol.toPrimitive ]( 'default' ),\n\t\t)\n\t}\n\t\n}\n","namespace $ {\n\t\n\texport class $mol_wire_task<\n\t\tHost,\n\t\tArgs extends readonly unknown[],\n\t\tResult,\n\t> extends $mol_wire_fiber< Host, Args, Result > {\n\t\t\n\t\tstatic getter<\n\t\t\tHost,\n\t\t\tArgs extends readonly unknown[],\n\t\t\tResult,\n\t\t>(\n\t\t\ttask: ( this : Host , ... args : Args )=> Result,\n\t\t): ( host: Host, args: Args )=> $mol_wire_task< Host, [ ... Args ], Result > {\n\t\t\t\n\t\t\treturn function $mol_wire_task_get( host: Host, args: Args ) {\n\t\t\t\t\n\t\t\t\tconst sub = $mol_wire_auto()\n\t\t\t\tconst existen = sub?.track_next()\n\t\t\t\n\t\t\t\treuse: if( existen ) {\n\t\t\t\t\t\n\t\t\t\t\tif(!( existen instanceof $mol_wire_task )) break reuse\n\t\t\t\t\n\t\t\t\t\tif( existen.host !== host ) break reuse\n\t\t\t\t\tif( existen.task !== task ) break reuse\n\t\t\t\t\tif( !$mol_compare_deep( existen.args, args ) ) break reuse\n\t\t\t\t\t\n\t\t\t\t\treturn existen\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\t// Disabled because non-idempotency is required for try-catch\n\t\t\t\t// if( existen && sub instanceof $mol_wire_task ) {\n\t\t\t\t// \t$mol_fail( new Error( `$mol_wire_task detects nonidempotency\\n${existen}` ) )\n\t\t\t\t// }\n\t\t\t\t\n\t\t\t\treturn new $mol_wire_task( `${ host?.[ Symbol.toStringTag ] ?? host }.${ task.name }(#)`, task, host, args )\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t\tcomplete() {\n\t\t\tif( this.cache instanceof Promise ) return\n\t\t\tthis.destructor()\n\t\t}\n\t\t\n\t\tput( next: Result | Error | Promise< Result | Error > ) {\n\t\t\t\n\t\t\tconst prev = this.cache\n\t\t\tthis.cache = next\n\t\t\t\n\t\t\tif( next instanceof Promise ) {\n\t\t\t\t\n\t\t\t\tthis.cursor = $mol_wire_cursor.fresh\n\t\t\t\tif( next !== prev ) this.emit()\n\t\t\t\t\n\t\t\t\treturn next\n\t\t\t}\n\t\t\t\n\t\t\tthis.cursor = $mol_wire_cursor.final\n\t\t\t\n\t\t\tif( this.sub_empty ) this.destructor()\n\t\t\telse if( next !== prev ) this.emit()\n\t\t\t\n\t\t\treturn next\n\t\t}\n\t\t\n\t}\n\n}\n","namespace $ {\n\t\n\texport function $mol_wire_method<\n\t\tHost extends object,\n\t\tArgs extends readonly any[],\n\t\tResult,\n\t>(\n\t\thost : Host,\n\t\tfield : PropertyKey,\n\t\tdescr? : TypedPropertyDescriptor< ( ... args: Args )=> Result >,\n\t) {\n\t\t\n\t\tif( !descr ) descr = Reflect.getOwnPropertyDescriptor( host , field ) as any\n\t\tconst orig = descr?.value! ?? host[ field ]\n\t\t\n\t\tconst sup = Reflect.getPrototypeOf( host )!\t\n\t\tif( typeof sup[ field as any ] === 'function' ) {\n\t\t\tObject.defineProperty( orig , 'name' , { value : sup[ field as any ].name } )\n\t\t}\n\t\t\n\t\tconst temp = $mol_wire_task.getter( orig )\n\t\tconst value = function( this: Host, ... args: Args ) {\n\t\t\tconst fiber = temp( this ?? null as any, args )\n\t\t\treturn fiber.sync() as Result\n\t\t}\n\t\t\n\t\tObject.defineProperty( value , 'name' , { value : orig.name + ' ' } )\n\t\t\n\t\tObject.assign( value, { orig } )\n\t\tconst descr2 = { ... descr, value }\n\t\tReflect.defineProperty( host, field, descr2 )\n\t\t\n\t\treturn descr2\n\t\t\n\t}\n\t\n}\n",null,null,"namespace $ {\n\n\tconst cacthed = new WeakMap< any , boolean >()\n\n\texport function $mol_fail_catch( error: unknown ) {\n\t\t\n\t\tif( typeof error !== 'object' ) return false\n\t\tif( error instanceof Promise ) $mol_fail_hidden( error )\n\t\tif( cacthed.get( error ) ) return false\n\t\t\n\t\tcacthed.set( error , true )\n\t\treturn true\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\t\n\texport function $mol_fail_log( error: unknown ) {\n\t\t\n\t\tif( error instanceof Promise ) return false\n\t\tif( !$mol_fail_catch( error ) ) return false\n\t\t\n\t\tconsole.error( error )\n\t\treturn true\n\t\t\n\t}\n\n}\n","namespace $ {\n\n\texport class $mol_wire_atom<\n\t\tHost,\n\t\tArgs extends readonly unknown[],\n\t\tResult,\n\t> extends $mol_wire_fiber< Host, Args, Result > {\n\n\t\tstatic solo<\n\t\t\tHost,\n\t\t\tArgs extends readonly unknown[],\n\t\t\tResult,\n\t\t>(\n\t\t\thost: Host,\n\t\t\ttask: ( this: Host, ... args: Args )=> Result,\n\t\t): $mol_wire_atom< Host, Args, Result > {\n\t\t\t\n\t\t\tconst field = task.name + '()'\n\t\t\t\n\t\t\tconst existen = Object.getOwnPropertyDescriptor( host ?? task, field )?.value\n\t\t\tif( existen ) return existen\n\t\t\t\n\t\t\tconst prefix = host?.[ Symbol.toStringTag ] ?? ( host instanceof Function ? $$.$mol_func_name( host ) : host )\n\t\t\tconst key = `${ prefix }.${ field }`\n\t\t\t\n\t\t\tconst fiber = new $mol_wire_atom( key, task, host, [] as any as Args )\n\t\t\t;( host ?? task )[ field ] = fiber\n\t\t\t\n\t\t\treturn fiber\n\t\t}\n\t\t\n\t\tstatic plex<\n\t\t\tHost,\n\t\t\tArgs extends readonly unknown[],\n\t\t\tResult,\n\t\t>(\n\t\t\thost: Host,\n\t\t\ttask: ( this: Host , ... args: Args )=> Result,\n\t\t\tkey: Args[0],\n\t\t): $mol_wire_atom< Host, Args, Result > {\n\t\t\t\n\t\t\tconst field = task.name + '()'\n\t\t\tlet dict = Object.getOwnPropertyDescriptor( host ?? task, field )?.value\n\t\t\tconst prefix = host?.[ Symbol.toStringTag ] ?? ( host instanceof Function ? $$.$mol_func_name( host ) : host )\n\t\t\tconst id = `${ prefix }.${ task.name }(${ $mol_key( key ) })`\n\t\t\t\n\t\t\tif( dict ) {\n\t\t\t\tconst existen = dict.get( id )\n\t\t\t\tif( existen ) return existen\n\t\t\t} else {\n\t\t\t\tdict = ( host ?? task )[ field ] = new Map()\n\t\t\t}\n\t\t\t\n\t\t\tconst fiber = new $mol_wire_atom( id, task, host, [ key ] as any as Args )\n\t\t\tdict.set( id, fiber )\n\t\t\t\n\t\t\treturn fiber\n\t\t}\n\t\t\n\t\tstatic watching = new Set< $mol_wire_atom< any, any, any > >()\n\t\t\n\t\tstatic watch() {\n\t\t\n\t\t\tnew $mol_after_frame( $mol_wire_atom.watch )\n\t\t\t\n\t\t\tfor( const atom of $mol_wire_atom.watching ) {\n\t\t\t\t\n\t\t\t\tif( atom.cursor === $mol_wire_cursor.final ) {\n\t\t\t\t\t$mol_wire_atom.watching.delete( atom )\n\t\t\t\t} else {\n\t\t\t\t\tatom.cursor = $mol_wire_cursor.stale\n\t\t\t\t\tatom.fresh()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\twatch() {\n\t\t\t$mol_wire_atom.watching.add( this )\n\t\t}\n\t\t\n\t\t/**\n\t\t * Update fiber value through another temp fiber.\n\t\t */\n\t\t@ $mol_wire_method\n\t\tresync( args: Args ) {\n\t\t\treturn this.put( this.task.call( this.host!, ... args ) )\n\t\t}\n\t\t\n\t\t@ $mol_wire_method\n\t\tonce() {\n\t\t\treturn this.sync()\n\t\t}\n\t\t\n\t\tchannel() {\n\t\t\treturn Object.assign( ( next?: $mol_type_foot< Args > )=> {\n\t\t\t\t\t\n\t\t\t\tif( next !== undefined ) return this.resync( [ ... this.args, next ] as any ) as never\n\t\t\t\tif( !$mol_wire_fiber.warm ) return this.result() as never\n\t\t\t\t\n\t\t\t\tif( $mol_wire_auto() instanceof $mol_wire_task ) {\n\t\t\t\t\treturn this.once()\n\t\t\t\t} else {\n\t\t\t\t\treturn this.sync()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}, { atom: this as $mol_wire_atom< Host, Args, Result > } )\n\t\t}\n\t\t\n\t\tdestructor() {\n\t\t\t\n\t\t\tsuper.destructor()\n\t\t\t\n\t\t\tconst prev = this.cache\n\t\t\tif( $mol_owning_check( this, prev ) ) {\n\t\t\t\tprev.destructor()\n\t\t\t}\n\t\t\t\n\t\t\tif( this.pub_from === 0 ) {\n\t\t\t\t;( this.host ?? this.task )[ this.field() ] = null\n\t\t\t} else {\n\t\t\t\t;( this.host ?? this.task )[ this.field() ].delete( this[ Symbol.toStringTag ] )\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\tput( next: Result | Error | Promise< Result | Error > ) {\n\t\t\t\n\t\t\tconst prev = this.cache\n\t\t\t\n\t\t\tupdate: if( next !== prev ) {\n\t\t\t\t\n\t\t\t\ttry {\n\t\t\t\t\tif( $mol_compare_deep( prev, next ) ) break update\n\t\t\t\t} catch( error: any ) {\n\t\t\t\t\t$mol_fail_log( error )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( $mol_owning_check( this, prev ) ) {\n\t\t\t\t\tprev.destructor()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( $mol_owning_catch( this, next ) ) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tnext[ Symbol.toStringTag ] = this[ Symbol.toStringTag ]\n\t\t\t\t\t} catch { // Promises throws in strict mode\n\t\t\t\t\t\tObject.defineProperty( next, Symbol.toStringTag, { value: this[ Symbol.toStringTag ] } )\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( !this.sub_empty ) this.emit()\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t\tthis.cache = next\n\t\t\tthis.cursor = $mol_wire_cursor.fresh\n\t\t\t\n\t\t\tif( next instanceof Promise ) return next\n\t\t\t\n\t\t\tthis.complete_pubs()\n\t\t\t\n\t\t\treturn next\n\t\t}\n\t\t\n\t}\n\t\n\t$mol_wire_atom.watch()\n\t\n}\n","namespace $ {\n\t\n\texport function $mol_wire_solo< Args extends any[] >(\n\t\thost: object,\n\t\tfield: string,\n\t\tdescr?: TypedPropertyDescriptor< ( ... args: Args )=> any >\n\t) {\n\n\t\tif( !descr ) descr = Reflect.getOwnPropertyDescriptor( host , field )\n\t\tconst orig = descr?.value! ?? host[ field ]\n\t\t\n\t\tconst sup = Reflect.getPrototypeOf( host )!\n\t\tif( typeof sup[ field ] === 'function' ) {\n\t\t\tObject.defineProperty( orig , 'name' , { value : sup[ field ].name } )\n\t\t}\n\t\t\n\t\tconst descr2 = {\n\t\t\t... descr,\n\t\t\tvalue: function( this: typeof host, ... args: Args ){\n\t\t\t\n\t\t\t\tlet atom = $mol_wire_atom.solo( this, orig )\n\t\t\t\t\n\t\t\t\tif(( args.length === 0 )||( args[0] === undefined )) {\n\t\t\t\t\t\n\t\t\t\t\tif( !$mol_wire_fiber.warm ) return atom.result()\n\t\t\t\t\t\n\t\t\t\t\tif( $mol_wire_auto() instanceof $mol_wire_task ) {\n\t\t\t\t\t\treturn atom.once()\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn atom.sync()\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\treturn atom.resync( args )\t\n\t\t\t}\n\t\t}\n\t\t\n\t\tReflect.defineProperty( descr2.value , 'name' , { value : orig.name + ' ' } )\n\t\tObject.assign( descr2.value, { orig } )\n\t\t\n\t\tReflect.defineProperty( host, field, descr2 )\n\t\t\n\t\treturn descr2 as any as TypedPropertyDescriptor< ( ... args: First_optional< Args > )=> any >\n\t}\n\n\ttype First_optional< Args extends any[] > = Args extends []\n\t\t? []\n\t\t: [ Args[0] | undefined, ... $mol_type_tail< Args > ]\n\n}\n","namespace $ {\n\t\n\texport function $mol_wire_plex< Args extends [ any, ... any[] ] >(\n\t\thost: object,\n\t\tfield: string,\n\t\tdescr?: TypedPropertyDescriptor< ( ... args: Args )=> any >\n\t) {\n\n\t\tif( !descr ) descr = Reflect.getOwnPropertyDescriptor( host , field )\n\t\tconst orig = descr?.value! ?? host[ field ]\n\t\t\n\t\tconst sup = Reflect.getPrototypeOf( host )!\n\t\tif( typeof sup[ field ] === 'function' ) {\n\t\t\tObject.defineProperty( orig , 'name' , { value : sup[ field ].name } )\n\t\t}\n\t\t\n\t\tconst descr2 = {\n\t\t\t... descr,\n\t\t\tvalue: function( this: typeof host, ... args: Args ) {\n\t\t\t\n\t\t\t\tlet atom = $mol_wire_atom.plex( this, orig, args[0] )\n\t\t\t\t\n\t\t\t\tif(( args.length === 1 )||( args[1] === undefined )) {\n\t\t\t\t\t\n\t\t\t\t\tif( !$mol_wire_fiber.warm ) return atom.result()\n\t\t\t\t\t\n\t\t\t\t\tif( $mol_wire_auto() instanceof $mol_wire_task ) {\n\t\t\t\t\t\treturn atom.once()\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn atom.sync()\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\treturn atom.resync( args )\t\n\t\t\t}\n\t\t}\n\t\t\n\t\tReflect.defineProperty( descr2.value , 'name' , { value : orig.name + ' ' } )\n\t\tObject.assign( descr2.value, { orig } )\n\t\t\n\t\tReflect.defineProperty( host, field, descr2 )\n\t\t\n\t\treturn descr2\n\t}\n\t\n}\n","namespace $ {\n\texport let $mol_mem = $mol_wire_solo\n\texport let $mol_mem_key = $mol_wire_plex\n}\n","namespace $ {\n\t\n\texport class $mol_window extends $mol_object {\n\t\t\n\t\t@ $mol_mem\n\t\tstatic size() {\n\t\t\tthis.resizes()\n\t\t\treturn {\n\t\t\t\twidth: self.innerWidth,\n\t\t\t\theight: self.innerHeight,\n\t\t\t}\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tstatic resizes( next?: Event ) { return next }\n\t\t\n\t}\n\n\tself.addEventListener( 'resize', event => $mol_window.resizes( event ) )\n\t\n}\n","namespace $ {\n\t\n\texport class $mol_view_selection extends $mol_object {\n\t\t\n\t\t@ $mol_mem\n\t\tstatic focused( next? : Element[], notify?: 'notify' ) : Element[] {\n\t\t\t\n\t\t\tconst parents : Element[] = []\n\t\t\tlet element = next?.[0] ?? $mol_dom_context.document.activeElement\n\t\t\t\n\t\t\twhile( element ) {\n\t\t\t\tparents.push( element )\n\t\t\t\telement = element.parentNode as HTMLElement\n\t\t\t}\n\t\t\t\n\t\t\tif( !next || notify ) return parents\n\t\t\t\n\t\t\tnew $mol_after_tick( ()=> {\n\t\t\t\t\n\t\t\t\tconst element = this.focused()![0] as HTMLElement\n\t\t\t\t\n\t\t\t\tif( element ) element.focus()\n\t\t\t\telse $mol_dom_context.blur()\n\t\t\t\t\n\t\t\t} )\n\n\t\t\treturn parents\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\t\n\texport function $mol_maybe< Value >( value : Value | null | undefined ) : Value[] {\n\t\treturn ( value == null ) ? [] : [ value ]\n\t}\n\t\n}\n","namespace $ {\n\t\n\tif( $mol_dom_context.document ) {\n\n\t\t$mol_dom_context.document.documentElement.addEventListener(\n\t\t\t'focus' ,\n\t\t\t( event : FocusEvent )=> {\n\t\t\t\t$mol_view_selection.focused( $mol_maybe( $mol_dom_context.document.activeElement ), 'notify' )\n\t\t\t} ,\n\t\t\ttrue ,\n\t\t)\n\t\t\n\t\t// $mol_dom_context.document.documentElement.addEventListener(\n\t\t// \t'blur' ,\n\t\t// \t( event : FocusEvent )=> {\n\t\t// \t\t$mol_view_selection.focused( $mol_maybe( $mol_dom_context.document.activeElement ) )\n\t\t// \t} ,\n\t\t// \ttrue ,\n\t\t// )\n\t\n\t}\n\t\n}\n","namespace $ {\n\n\texport class $mol_wrapper extends $mol_object2 {\n\n\t\tstatic wrap : ( task : ( ... ags : any[] )=> any )=> ( ... ags : any[] )=> any\n\t\t\n\t\tstatic run< Result >( task : ()=> Result ) : Result {\n\t\t\treturn this.func( task )()\n\t\t}\n\t\n\t\tstatic func< Args extends any[] , Result , Host = void >(\n\t\t\tfunc : ( this : Host , ... args : Args )=> Result\n\t\t) : ( this : Host , ... args : Args )=> Result {\n\t\t\treturn this.wrap( func )\n\t\t}\n\n\t\tstatic get class() {\n\n\t\t\treturn < Class extends new ( ... args : any[] )=> any >(\n\t\t\t\tClass : Class\n\t\t\t) => {\n\n\t\t\t\ttype Args = ConstructorParameters< Class >\n\t\t\t\ttype Result = InstanceType< Class >\n\n\t\t\t\tconst construct = ( target : new ( ... args : Args )=> Result , args : Args )=> new Class( ... args )\n\n\t\t\t\tconst handler = {\n\t\t\t\t\tconstruct : this.func( construct )\n\t\t\t\t}\n\n\t\t\t\thandler[ Symbol.toStringTag ] = Class.name + '#'\n\n\t\t\t\treturn new Proxy( Class , handler )\n\t\t\t\t\n\t\t\t}\n\n\t\t}\n\n\t\tstatic get method() {\n\t\t\t\n\t\t\treturn (\n\t\t\t\tobj : object,\n\t\t\t\tname : PropertyKey,\n\t\t\t\tdescr : PropertyDescriptor,\n\t\t\t) => {\n\t\t\t\tdescr.value = this.func( descr.value! )\n\t\t\t\treturn descr\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t\tstatic get field() {\n\t\t\t\n\t\t\treturn <\n\t\t\t\tHost ,\n\t\t\t\tField extends keyof Host ,\n\t\t\t\tArgs extends any[] ,\n\t\t\t\tResult ,\n\t\t\t>(\n\t\t\t\tobj : Host ,\n\t\t\t\tname : Field ,\n\t\t\t\tdescr : TypedPropertyDescriptor< Result >\n\t\t\t) => {\n\t\t\t\tdescr.get = descr.set = this.func( descr.get! )\n\t\t\t\treturn descr\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\n\texport class $mol_memo extends $mol_wrapper {\n\t\t\n\t\tstatic wrap< This extends object , Value >( task : ( this : This , next? : Value )=> Value ) {\n\n\t\t\tconst store = new WeakMap< This , Value >()\n\n\t\t\treturn function( this : This , next? : Value ) {\n\n\t\t\t\tif( next === undefined && store.has( this ) ) return store.get( this )\n\t\t\t\t\n\t\t\t\tconst val = task.call( this , next ) ?? next\n\t\t\t\t\n\t\t\t\tstore.set( this , val! )\n\t\t\t\t\n\t\t\t\treturn val\n\n\t\t\t}\n\n\t\t}\n\t\t\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_dom_qname( name : string ) {\n\t\treturn name.replace( /\\W/g , '' ).replace( /^(?=\\d+)/ , '_' )\n\t}\n\n}\n","namespace $ {\n\t\n\texport function $mol_wire_probe< Value >(\n\t\ttask : ()=> Value, next?: Value\n\t) : Value | undefined {\n\t\t\n\t\tconst warm = $mol_wire_fiber.warm\n\t\t\n\t\ttry {\n\t\t\t$mol_wire_fiber.warm = false\n\t\t\treturn task()\n\t\t} finally {\n\t\t\t$mol_wire_fiber.warm = warm\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\t\n\t/**\n\t * Real-time refresh current atom.\n\t * Don't use if possible. May reduce performance.\n\t */\n\texport function $mol_wire_watch() {\n\t\tconst atom = $mol_wire_auto()\n\t\tif( atom instanceof $mol_wire_atom ) {\n\t\t\tatom.watch()\n\t\t} else {\n\t\t\t$mol_fail( new Error( 'Atom is required for watching' ) )\n\t\t}\n\t}\n\t\n}\n","namespace $ {\n\t\n\t/**\n\t * Disable reaping of current subscriber\n\t */\n\texport function $mol_wire_solid() {\n\t\tconst current = $mol_wire_auto()\n\t\tif( current!.reap !== nothing ) {\n\t\t\tcurrent?.sub_on( sub, sub.data.length )\n\t\t}\n\t\tcurrent!.reap = nothing\n\t}\n\t\n\tconst nothing = ()=> {}\n\tconst sub = new $mol_wire_pub_sub\n\t\n}\n","namespace $ { \n\texport function $mol_const< Value >( value : Value ) {\n\t\tvar getter = <{ () : Value , '()' : Value }> ( () => value )\n\t\tgetter['()'] = value\n\t\tgetter[ Symbol.toStringTag ] = value\n\t\treturn getter\n\t}\n}\n","namespace $ {\n\t\n\texport function $mol_dom_render_attributes (\n\t\tel : Element ,\n\t\tattrs : { [ key : string ] : string|number|boolean|null }\n\t) {\n\n\t\tfor( let name in attrs ) {\n\n\t\t\tlet val = attrs[ name ] as any\n\n\t\t\tif( val === null || val === false ) {\n\n\t\t\t\tif( !el.hasAttribute( name ) ) continue\n\t\t\t\t\n\t\t\t\tel.removeAttribute( name )\n\n\t\t\t} else {\n\t\t\t\t\n\t\t\t\tconst str = String( val )\n\t\t\t\tif( el.getAttribute( name ) === str ) continue\n\t\t\t\t\n\t\t\t\tel.setAttribute( name , str )\n\n\t\t\t}\n\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\t\n\texport function $mol_wire_async< Host extends object >( obj: Host ) {\n\t\t\n\t\tlet fiber: $mol_wire_fiber< any, any, any >\n\t\tconst temp = $mol_wire_task.getter( obj as ( ... args: any[] )=> any )\n\t\t\n\t\treturn new Proxy( obj, {\n\t\t\t\n\t\t\tget( obj, field ) {\n\t\t\t\t\n\t\t\t\tconst val = obj[ field ]\n\t\t\t\tif( typeof val !== 'function' ) return val\n\t\t\t\t\n\t\t\t\tlet fiber: $mol_wire_fiber< any, any, any >\n\t\t\t\tconst temp = $mol_wire_task.getter( val ) \n\t\t\t\t\n\t\t\t\treturn function $mol_wire_async( this: Host, ... args: any[] ) {\n\t\t\t\t\tfiber?.destructor()\n\t\t\t\t\tfiber = temp( obj, args )\n\t\t\t\t\treturn fiber.async()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t},\n\t\t\t\n\t\t\tapply( obj, self, args ) {\n\t\t\t\tfiber?.destructor()\n\t\t\t\tfiber = temp( self, args )\n\t\t\t\treturn fiber.async()\n\t\t\t},\n\t\t\t\n\t\t} ) as any as (\n\t\t\tHost extends ( ... args: infer Args )=> infer Res\n\t\t\t\t? Res extends Promise\n\t\t\t\t\t? Host\n\t\t\t\t\t: ( ... args: Args )=> Promise< Res >\n\t\t\t\t: {}\n\t\t) & {\n\t\t\t[ key in keyof Host ]: Host[ key ] extends ( ... args: infer Args )=> infer Res\n\t\t\t\t? Res extends Promise\n\t\t\t\t\t? Host[ key ]\n\t\t\t\t\t: ( ... args: Args )=> Promise< Res >\n\t\t\t\t: Host[ key ]\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\t\n\texport function $mol_dom_render_events (\n\t\tel : Element ,\n\t\tevents : { [ key : string ] : ( event : Event )=> any },\n\t\tpassive = false\n\t) {\n\t\tfor( let name in events ) {\n\t\t\tel.addEventListener( name , events[ name ] , { passive } )\n\t\t}\n\t}\n\n}\n","namespace $ {\n\t\n\texport function $mol_dom_render_styles (\n\t\tel : Element ,\n\t\tstyles : { [ key : string ] : string|number }\n\t) {\n\t\tfor( let name in styles ) {\n\t\t\tlet val = styles[ name ]\n\t\t\t\n\t\t\tconst style = ( el as HTMLElement ).style as any\n\t\t\t\n\t\t\tif( typeof val === 'number' ) {\n\t\t\t\tstyle[ name ] = `${ val }px`\n\t\t\t} else {\n\t\t\t\tstyle[ name ] = val\n\t\t\t}\n\t\t\t\n\t\t}\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_dom_render_children (\n\t\tel : Element | DocumentFragment ,\n\t\tchildNodes : NodeList | Array< Node | string | null >\n\t) {\n\t\tconst node_set = new Set< Node | string | null >( childNodes )\n\t\t\n\t\tlet nextNode : Node | null = el.firstChild\n\t\tfor( let view of childNodes ) {\n\n\t\t\tif( view == null ) continue\n\n\t\t\tif( view instanceof $mol_dom_context.Node ) {\n\t\t\t\t\n\t\t\t\twhile( true ) {\n\t\t\t\t\tif( !nextNode ) {\n\t\t\t\t\t\tel.appendChild( view )\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t\tif( nextNode == view ) {\n\t\t\t\t\t\tnextNode = nextNode.nextSibling\n\t\t\t\t\t\tbreak\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif( node_set.has( nextNode ) ) {\n\t\t\t\t\t\t\tel.insertBefore( view , nextNode )\n\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tconst nn = nextNode.nextSibling\n\t\t\t\t\t\t\tel.removeChild( nextNode )\n\t\t\t\t\t\t\tnextNode = nn\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t} else {\n\t\t\t\tif( nextNode && nextNode.nodeName === '#text' ) {\n\t\t\t\t\tconst str = String( view )\n\t\t\t\t\tif( nextNode.nodeValue !== str ) nextNode.nodeValue = str\n\t\t\t\t\tnextNode = nextNode.nextSibling\n\t\t\t\t} else {\n\t\t\t\t\tconst textNode = $mol_dom_context.document.createTextNode( String( view ) )\n\t\t\t\t\tel.insertBefore( textNode , nextNode )\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\twhile( nextNode ) {\n\t\t\tconst currNode = nextNode\n\t\t\tnextNode = currNode.nextSibling\n\t\t\tel.removeChild( currNode )\n\t\t}\n\t}\n\n}\n","namespace $ {\n\t\n\texport function $mol_dom_render_fields (\n\t\tel : Element ,\n\t\tfields : { [ key : string ] : any }\n\t) {\n\t\tfor( let key in fields ) {\n\t\t\t\n\t\t\tconst val : any = fields[ key ]\n\t\t\t\n\t\t\tif( val === undefined ) continue\n\t\t\t// if( el[ key ] === val ) continue\n\t\t\t\n\t\t\tel[ key ] = val\n\t\t}\n\t}\n\n}\n",null,null,"namespace $ {\n\n\texport type $mol_view_content = $mol_view|Node|string|number|boolean\n\t\n\texport function $mol_view_visible_width() {\n\t\treturn $mol_window.size().width\n\t}\n\t\n\texport function $mol_view_visible_height() {\n\t\treturn $mol_window.size().height\n\t}\n\t\n\texport function $mol_view_state_key( suffix : string ) {\n\t\treturn suffix\n\t}\n\t\n\tconst error_showed = new WeakMap< Error, $mol_view >()\n\n\t/// Reactive statefull lazy ViewModel\n\texport class $mol_view extends $mol_object {\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic Root< This extends typeof $mol_view >( this : This , id: number ) {\n\t\t\treturn new this as InstanceType< This >\n\t\t}\n\n\t\t@ $mol_mem\n\t\tautorun() {\n\t\t\ttry {\n\t\t\t\tthis.dom_tree()\n\t\t\t\tdocument.title = this.title()\n\t\t\t} catch( error ) {\n\t\t\t\t$mol_fail_log( error )\n\t\t\t}\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tstatic autobind() {\n\t\t\t\n\t\t\tconst nodes = $mol_dom_context.document.querySelectorAll( '[mol_view_root]:not([mol_view_root=\"\"])' )\n\t\t\t\n\t\t\tfor( let i = nodes.length - 1 ; i >= 0 ; --i ) {\n\n\t\t\t\tconst name = nodes.item( i ).getAttribute( 'mol_view_root' )!\n\t\t\t\t\n\t\t\t\tconst View = $[ name ] as typeof $mol_view\n\t\t\t\tif( !View ) {\n\t\t\t\t\tconsole.error( `Can not attach view. Class not found: ${ name }` )\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tconst view = View.Root( i )\n\t\t\t\tview.dom_node( nodes.item( i ) )\n\t\t\t\tview.autorun()\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\ttitle() {\n\t\t\treturn this.toString().match( /.*\\.(\\w+)/ )?.[1] ?? this.toString()\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tfocused( next?: boolean ) {\n\t\t\tlet node = this.dom_node()\n\t\t\tconst value = $mol_view_selection.focused( next === undefined ? undefined : ( next ? [ node ] : [] ) )\n\t\t\treturn value.indexOf( node ) !== -1\n\t\t}\n\t\t\n\t\tstate_key( suffix = '' ) {\n\t\t\treturn this.$.$mol_view_state_key( suffix )\n\t\t}\n\t\t\n\t\t/// Name of element that created when element not found in DOM\n\t\t@ $mol_memo.method\n\t\tdom_name() {\n\t\t\treturn $mol_dom_qname( this.constructor.toString() ) || 'div'\n\t\t}\n\t\t\n\t\t/// NameSpace of element that created when element not found in DOM\n\t\tdom_name_space() { return 'http://www.w3.org/1999/xhtml' }\n\t\t\n\t\t/// Raw child views\n\t\tsub() {\n\t\t\treturn [] as readonly ($mol_view|Node|string|number|boolean)[]\n\t\t}\n\t\t\n\t\t/// Visible sub views with defined ambient context\n\t\t/// Render all by default\n\t\tsub_visible() {\n\t\t\treturn this.sub()\n\t\t}\n\t\t\n\t\t/// Minimal width that used for lazy rendering\n\t\t@ $mol_mem\n\t\tminimal_width() {\n\t\t\t\n\t\t\tlet min = 0\n\t\t\ttry {\n\t\t\t\t\n\t\t\t\tconst sub = this.sub()\n\t\t\t\tif( !sub ) return 0\n\t\t\t\t\n\t\t\t\tsub.forEach( view => {\n\t\t\t\t\tif( view instanceof $mol_view ) {\n\t\t\t\t\t\tmin = Math.max( min , view.minimal_width() )\n\t\t\t\t\t}\n\t\t\t\t} )\n\t\t\t\t\n\t\t\t} catch( error: any ) {\n\t\t\t\t$mol_fail_log( error )\n\t\t\t\treturn 24\n\t\t\t}\n\t\t\n\t\t\treturn min\n\t\t}\n\t\t\n\t\tmaximal_width() {\n\t\t\treturn this.minimal_width()\n\t\t}\n\t\t\n\t\t/// Minimal height that used for lazy rendering\n\t\t@ $mol_mem\n\t\tminimal_height() {\n\t\t\t\n\t\t\tlet min = 0\n\t\t\ttry {\n\t\t\t\t\n\t\t\t\tfor( const view of this.sub() ?? [] ) {\n\n\t\t\t\t\tif( view instanceof $mol_view ) {\n\t\t\t\t\t\tmin = Math.max( min , view.minimal_height() )\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t \n\t\t\t} catch( error: any ) {\n\t\t\t\t$mol_fail_log( error )\n\t\t\t\treturn 24\n\t\t\t}\n\n\t\t\treturn min\n\t\t}\n\n\t\tstatic watchers = new Set< $mol_view >()\n\n\t\t@ $mol_mem\n\t\tview_rect() {\n\t\t\tif( $mol_wire_probe( ()=> this.view_rect() ) === undefined ) {\n\t\t\t\t$mol_wire_watch()\n\t\t\t\treturn null // don't touch DOM to prevent instant reflow\n\t\t\t} else {\n\t\t\t\tconst { width, height, left, right, top, bottom } = this.dom_node().getBoundingClientRect()\n\t\t\t\treturn { width, height, left, right, top, bottom } // pick to optimize compare\n\t\t\t}\n\t\t}\n\n\t\tdom_id() {\n\t\t\treturn this.toString()\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tdom_node( next? : Element ) {\n\t\t\t\n\t\t\t$mol_wire_solid()\n\t\t\t\n\t\t\tconst node = next || $mol_dom_context.document.createElementNS( this.dom_name_space() , this.dom_name() )\n\n\t\t\tconst id = this.dom_id()\n\t\t\tnode.setAttribute( 'id' , id )\n\t\t\tnode.toString = $mol_const( '<#' + id + '>' )\n\n\t\t\t$mol_dom_render_attributes( node , this.attr_static() )\n\t\t\t\n\t\t\tconst events = $mol_wire_async( this.event() )\n\t\t\t$mol_dom_render_events(node, events)\n\n\t\t\treturn node\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tdom_final() {\n\t\t\t\n\t\t\tthis.render()\n\t\t\t\n\t\t\tconst sub = this.sub_visible()\n\t\t\tif( !sub ) return\n\t\t\t\n\t\t\tfor( const el of sub ) {\n\t\t\t\tif( el && typeof el === 'object' && 'dom_final' in el ) {\n\t\t\t\t\tel['dom_final']()\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\treturn this.dom_node()\n\t\t\t\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tdom_tree( next? : Element ) : Element {\n\t\t\tconst node = this.dom_node( next )\n\t\t\t\n\t\t\trender: try {\n\n\t\t\t\t$mol_dom_render_attributes( node , { mol_view_error : null } )\n\n\t\t\t\ttry {\n\t\t\t\t\n\t\t\t\t\tthis.render()\n\t\t\t\t\t\n\t\t\t\t} finally {\n\t\t\t\t\t\n\t\t\t\t\tfor( let plugin of this.plugins() ) {\n\t\t\t\t\t\tif( plugin instanceof $mol_plugin ) {\n\t\t\t\t\t\t\tplugin.dom_tree()\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t\n\t\t\t} catch( error: any ) {\n\t\t\t\t\n\t\t\t\t$mol_fail_log( error )\n\t\t\t\t\n\t\t\t\t$mol_dom_render_attributes( node , { mol_view_error : error.name || error.constructor.name } )\n\t\t\t\t\n\t\t\t\tif( error instanceof Promise ) break render\n\t\t\t\tif( ( error_showed.get( error ) ?? this ) !== this ) break render\n\t\t\t\t\n\t\t\t\ttry {\n\t\t\t\t\tconst message = error.message || error\n\t\t\t\t\t;( node as HTMLElement ).innerText = message.replace( /^|$/mg, '\\xA0\\xA0' )\n\t\t\t\t} catch {}\n\t\t\t\t\n\t\t\t\terror_showed.set( error, this )\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t\ttry {\n\t\t\t\tthis.auto()\n\t\t\t} catch( error ) {\n\t\t\t\t$mol_fail_log( error )\n\t\t\t}\n\t\t\t\t\n\t\t\treturn node\n\t\t}\n\n\t\t@ $mol_mem\n\t\tdom_node_actual() {\n\t\t\tconst node = this.dom_node()\n\n\t\t\t$mol_dom_render_styles( node, this.style_size() )\n\n\t\t\tconst attr = this.attr()\n\t\t\tconst style = this.style()\n\t\t\tconst fields = this.field()\n\n\t\t\t$mol_dom_render_attributes( node , attr )\n\t\t\t$mol_dom_render_styles( node , style )\n\n\t\t\treturn node\n\t\t}\n\t\t\n\t\tauto() {\n\t\t\treturn null as any\n\t\t}\n\n\t\t@ $mol_mem\n\t\trender() {\n\n\t\t\tconst node = this.dom_node_actual()\n\n\t\t\tconst sub = this.sub_visible()\n\t\t\tif( !sub ) return\n\t\t\t\n\t\t\tconst nodes = sub.map( child => {\n\t\t\t\tif( child == null ) return null\n\t\t\t\treturn ( child instanceof $mol_view )\n\t\t\t\t\t? child.dom_node()\n\t\t\t\t\t: child instanceof $mol_dom_context.Node\n\t\t\t\t\t? child\n\t\t\t\t\t: String( child )\n\t\t\t})\n\t\t\t\n\t\t\t$mol_dom_render_children( node , nodes )\n\n\t\t\tfor( const el of sub ) if( el && typeof el === 'object' && 'dom_tree' in el ) el['dom_tree']()\n\n\t\t\t$mol_dom_render_fields( node , this.field() )\n\t\t\t\n\t\t}\n\n\t\t@ $mol_memo.method\n\t\tstatic view_classes() {\n\t\t\tconst proto = this.prototype\n\t\t\t\n\t\t\tlet current = proto\n\t\t\tconst classes = [] as ( typeof $mol_view )[]\n\t\t\t\n\t\t\twhile( current ) {\n\t\t\t\tclasses.push( current.constructor as typeof $mol_view )\n\t\t\t\tif(!( current instanceof $mol_view )) break\n\t\t\t\tcurrent = Object.getPrototypeOf( current )\n\t\t\t}\n\t\t\t\n\t\t\treturn classes\n\t\t}\n\t\t\n\t\t@ $mol_memo.method\n\t\tview_names_owned() {\n\t\t\tconst names = [] as string[]\n\t\t\tlet owner = $mol_owning_get( this ) as $mol_wire_fiber< any, any[], any >\n\n\t\t\tif( owner?.host instanceof $mol_view ) {\n\n\t\t\t\tconst suffix = owner.task.name.trim()\n\t\t\t\tconst suffix2 = '_' + suffix[0].toLowerCase() + suffix.substring(1)\n\t\t\t\t\n\t\t\t\tfor( let Class of ( owner.host.constructor as typeof $mol_view ).view_classes() ) {\n\t\t\t\t\tif( suffix in Class.prototype ) names.push( this.$.$mol_func_name( Class ) + suffix2 )\n\t\t\t\t\telse break\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tfor( let prefix of owner.host.view_names_owned() ) {\n\t\t\t\t\tnames.push( prefix + suffix2 )\n\t\t\t\t}\n\t\t\t\n\t\t\t}\n\n\t\t\treturn names\n\t\t}\n\n\t\t@ $mol_memo.method\n\t\tview_names() {\n\t\t\tconst names = [] as string[]\n\t\t\t\n\t\t\tfor( let name of this.view_names_owned() ) {\n\t\t\t\tif( names.indexOf( name ) < 0 ) names.push( name )\n\t\t\t}\n\n\t\t\tfor( let Class of ( this.constructor as typeof $mol_view ).view_classes() ) {\n\t\t\t\tconst name = this.$.$mol_func_name( Class )\n\t\t\t\tif( !name ) continue\n\t\t\t\tif( names.indexOf( name ) < 0 ) names.push( name )\n\t\t\t}\n\n\t\t\treturn names\n\t\t}\n\t\t\n\t\tattr_static() : { [ key : string ] : string|number|boolean|null } {\n\t\t\tlet attrs : any = {}\n\t\t\t\n\t\t\tfor( let name of this.view_names() ) attrs[ name.replace( /\\$/g , '' ).replace( /^(?=\\d)/ , '_' ).toLowerCase() ] = ''\n\t\t\t\n\t\t\treturn attrs\n\t\t}\n\t\t\n\t\tattr() {\n\t\t\treturn {}\n\t\t}\n\t\t\n\t\tstyle_size() {\n\t\t\treturn {\n\t\t\t\tminHeight: this.minimal_height(),\n\t\t\t\tminWidth: this.minimal_width(),\n\t\t\t} as {\n\t\t\t\t[key: string]: string | number;\n\t\t\t}\n\t\t}\n\t\t\n\t\tstyle() : { [ key : string ] : string|number } {\n\t\t\treturn {}\n\t\t}\n\t\t\n\t\tfield() : { [ key : string ] : any } {\n\t\t\treturn {}\n\t\t}\n\t\t\n\t\tevent() : { [ key : string ] : ( event : Event )=> void } {\n\t\t\treturn {}\n\t\t}\n\t\t\n\t\tplugins() {\n\t\t\treturn [] as readonly $mol_view[]\n\t\t}\n\t\t\n\t\t[ $mol_dev_format_head ]() {\n\t\t\treturn $mol_dev_format_span( {} ,\n\t\t\t\t$mol_dev_format_native( this ) ,\n\t\t\t\t// $mol_dev_format_shade( '/' ) ,\n\t\t\t\t// $mol_dev_format_auto( $mol_wire_cache( this ).sub().cache ) ,\n\t\t\t)\n\t\t}\n\n\t\t/** Deep search view by predicate. */\n\t\t*view_find(\n\t\t\tcheck: ( path : $mol_view, text?: string )=> boolean,\n\t\t\tpath = [] as $mol_view[],\n\t\t): Generator< $mol_view[] > {\n\n\t\t\tif( check( this ) ) return yield [ ... path, this ]\n\t\t\t\n\t\t\ttry {\n\t\t\t\tfor( const item of this.sub() ) {\n\t\t\t\t\tif( item instanceof $mol_view ) {\n\t\t\t\t\t\tyield* item.view_find( check, [ ... path, this ] )\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} catch( error: unknown ) {\n\t\t\t\tif( error instanceof Promise ) $mol_fail_hidden( error )\n\t\t\t\t$mol_fail_log( error )\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t\t/** Renders path of views to DOM. */\n\t\tforce_render(\n\t\t\tpath : Set< $mol_view >,\n\t\t) {\n\n\t\t\tconst kids = this.sub()\n\n\t\t\tconst index = kids.findIndex( item => {\n\t\t\t\tif( item instanceof $mol_view ) {\n\t\t\t\t\treturn path.has( item )\n\t\t\t\t} else {\n\t\t\t\t\treturn false\n\t\t\t\t}\n\t\t\t})\n\n\t\t\tif( index >= 0 ) {\n\t\t\t\t( kids[ index ] as $mol_view ).force_render( path )\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t\t/** Renders view to DOM and scroll to it. */\n\t\tensure_visible( view: $mol_view, align: ScrollLogicalPosition = \"start\" ) {\n\t\t\t\n\t\t\tconst path = this.view_find( v => v === view ).next().value\n\t\t\tthis.force_render( new Set( path ) )\n\t\t\t\n\t\t\tthis.dom_final()\n\n\t\t\tview.dom_node().scrollIntoView({ block: align })\n\n\t\t}\n\t\t\n\t\tbring() {\n\t\t\t\n\t\t\tconst win = this.$.$mol_dom_context\n\t\t\tif( win.parent !== win.self && !win.document.hasFocus() ) return\n\t\t\t\n\t\t\tnew this.$.$mol_after_frame( ()=> {\n\t\t\t\t\n\t\t\t\tthis.dom_node().scrollIntoView({ block: 'start', inline: 'end' })\n\t\t\t\tthis.focused( true )\n\t\t\t\t\n\t\t\t} )\n\t\t\t\n\t\t}\n\n\t}\n\n\texport type $mol_view_all = $mol_type_pick< $ , typeof $mol_view >\n\n}\n","namespace $ { $mol_style_attach( \"mol/view/view/view.css\",\n \"[mol_view] {\\n\\ttransition-property: height, width, min-height, min-width, max-width, max-height, transform;\\n\\ttransition-duration: .2s;\\n\\ttransition-timing-function: ease-out;\\n\\t-webkit-appearance: none;\\n\\tbox-sizing: border-box;\\n\\tdisplay: flex;\\n\\tflex-shrink: 0;\\n\\tcontain: style;\\n\\tscrollbar-color: var(--mol_theme_line) transparent;\\n\\tscrollbar-width: thin;\\n}\\t\\n\\n[mol_view]::selection {\\n\\tbackground: var(--mol_theme_line);\\n}\\t\\n\\n[mol_view]::-webkit-scrollbar {\\n\\twidth: .25rem;\\n\\theight: .25rem;\\n}\\n\\n[mol_view]::-webkit-scrollbar-corner {\\n\\tbackground-color: var(--mol_theme_line);\\n}\\n\\n[mol_view]::-webkit-scrollbar-track {\\n\\tbackground-color: transparent;\\n}\\n\\n[mol_view]::-webkit-scrollbar-thumb {\\n\\tbackground-color: var(--mol_theme_line);\\n\\tborder-radius: var(--mol_gap_round);\\n}\\n\\n[mol_view] > * {\\n\\tword-break: inherit;\\n}\\n\\n[mol_view_root] {\\n\\tmargin: 0;\\n\\tpadding: 0;\\n\\twidth: 100%;\\n\\theight: 100%;\\n\\tbox-sizing: border-box;\\n\\tfont-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;\\n\\tfont-size: 1rem;\\n\\tline-height: 1.5rem;\\n\\tbackground: var(--mol_theme_back);\\n\\tcolor: var(--mol_theme_text);\\n\\tcontain: unset; /** Fixes bg ignoring when applied to body on Chrome */\\n\\ttab-size: 4;\\n}\\n\\n[mol_view][mol_view_error]:not([mol_view_error=\\\"Promise\\\"]) {\\n\\tbackground-image: repeating-linear-gradient(\\n\\t\\t-45deg,\\n\\t\\t#f92323,\\n\\t\\t#f92323 .5rem,\\n\\t\\t#ff3d3d .5rem,\\n\\t\\t#ff3d3d 1.5rem\\n\\t);\\n\\tcolor: black;\\n\\talign-items: center;\\n justify-content: center;\\n}\\n\\n@keyframes mol_view_wait_move {\\n\\tfrom {\\n\\t\\tbackground-position: 0 0;\\n\\t}\\n\\tto {\\n\\t\\tbackground-position: 200vmax 0;\\n\\t}\\n}\\n\\n@keyframes mol_view_wait_show {\\n\\tto {\\n\\t\\tbackground-image: repeating-linear-gradient(\\n\\t\\t\\t45deg,\\n\\t\\t\\thsla( 0 , 0% , 50% , .5 ) 0% ,\\n\\t\\t\\thsla( 0 , 0% , 50% , 0 ) 5% ,\\n\\t\\t\\thsla( 0 , 0% , 50% , 0 ) 45% ,\\n\\t\\t\\thsla( 0 , 0% , 50% , .5 ) 50% ,\\n\\t\\t\\thsla( 0 , 0% , 50% , 0 ) 55% ,\\n\\t\\t\\thsla( 0 , 0% , 50% , 0 ) 95% ,\\n\\t\\t\\thsla( 0 , 0% , 50% , .5 ) 100%\\n\\t\\t);\\n\\t\\tbackground-size: 200vmax 200vmax;\\n\\t}\\n}\\n\\n[mol_view][mol_view_error=\\\"Promise\\\"] {\\n\\tanimation: mol_view_wait_show .5s .5s linear forwards , mol_view_wait_move 1s linear infinite;\\n\\topacity: .75;\\n}\\n\"\n) }","interface Window {\n\tcordova : any\n}\n\nnamespace $ {\n\n\t$mol_dom_context.document?.addEventListener(\n\t\t'DOMContentLoaded',\n\t\t()=> $mol_view.autobind(),\n\t\t{ once: true },\n\t)\n\t\n}\n",null,null,null,null,null,null,null,"namespace $ {\n\n\texport function $mol_style_sheet<\n\t\tComponent extends $mol_view,\n\t\tConfig extends $mol_style_guard< Component , Config >,\n\t>(\n\t\tComponent : new()=> Component,\n\t\tconfig0 : Config ,\n\t) {\n\n\t\tlet rules = [] as string[]\n\n\t\tconst block = $mol_dom_qname( $mol_ambient({}).$mol_func_name( Component ) )\n\t\tconst kebab = ( name : string )=> name.replace( /[A-Z]/g , letter => '-' + letter.toLowerCase() )\n\n\t\tconst make_class = ( prefix : string , path : string[] , config : typeof config0 )=> {\n\n\t\t\tconst props = [] as string[]\n\n\t\t\tconst selector = ( prefix : string , path : string[] )=> {\n\t\t\t\tif( path.length === 0 ) return prefix || `[${ block }]`\n\t\t\t\tlet res = `[${ block }_${ path.join('_') }]`\n\t\t\t\tif( prefix ) res = prefix + ' :where(' + res + ')'\n\t\t\t\treturn res\n\t\t\t}\n\t\t\t\n\t\t\tfor( const key of Object.keys( config ).reverse() ) {\n\n\t\t\t\tif( /^[a-z]/.test(key) ) {\n\t\t\t\t\t\n\t\t\t\t\tconst addProp = ( keys : string[] , val : any )=> {\n\n\t\t\t\t\t\tif( Array.isArray( val ) ) {\n\n\t\t\t\t\t\t\tif( val[0] && [ Array , Object ].includes( val[0].constructor ) ) {\n\t\t\t\t\t\t\t\tval = val.map( v => {\n\t\t\t\t\t\t\t\t\treturn Object.entries( v ).map( ([ n , a ])=> {\n\t\t\t\t\t\t\t\t\t\tif( a === true ) return kebab( n )\n\t\t\t\t\t\t\t\t\t\tif( a === false ) return null\n\t\t\t\t\t\t\t\t\t\treturn String( a )\n\t\t\t\t\t\t\t\t\t} ).filter( Boolean ).join(' ')\n\t\t\t\t\t\t\t\t}).join( ',' )\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tval = val.join(' ')\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tprops.push(`\\t${ keys.join('-') }: ${ val };\\n`)\n\n\t\t\t\t\t\t} else if( val.constructor === Object ) {\n\n\t\t\t\t\t\t\tfor( let suffix in val ) {\n\t\t\t\t\t\t\t\taddProp( [ ... keys , kebab( suffix ) ] , val[ suffix ] )\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t} else {\n\n\t\t\t\t\t\t\tprops.push(`\\t${ keys.join('-') }: ${ val };\\n`)\n\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t}\n\n\t\t\t\t\taddProp( [ kebab(key) ] , config[key] )\n\n\t\t\t\t} else if( /^[A-Z]/.test(key) ) {\n\n\t\t\t\t\tmake_class( prefix , [ ... path , key.toLowerCase() ] , config[key] )\n\n\t\t\t\t} else if( key[0] === '$' ) {\n\n\t\t\t\t\tmake_class( selector( prefix , path ) + ' :where([' + $mol_dom_qname( key ) + '])' , [] , config[key] )\n\n\t\t\t\t} else if( key === '>' ) {\n\n\t\t\t\t\tconst types = config[key] as any\n\n\t\t\t\t\tfor( let type in types ) {\n\t\t\t\t\t\tmake_class( selector( prefix , path ) + ' > :where([' + $mol_dom_qname( type ) + '])' , [] , types[type] )\n\t\t\t\t\t}\n\n\t\t\t\t} else if( key === '@' ) {\n\n\t\t\t\t\tconst attrs = config[key] as any\n\n\t\t\t\t\tfor( let name in attrs ) {\n\t\t\t\t\t\tfor( let val in attrs[name] ) {\n\t\t\t\t\t\t\tmake_class( selector( prefix , path ) + ':where([' + name + '=' + JSON.stringify( val ) + '])' , [] , attrs[name][val] )\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t} else if( key === '@media' ) {\n\n\t\t\t\t\tconst media = config[key] as any\n\n\t\t\t\t\tfor( let query in media ) {\n\n\t\t\t\t\t\trules.push('}\\n')\n\t\t\t\t\t\t\n\t\t\t\t\t\tmake_class( prefix , path , media[query] )\n\t\t\t\t\t\t\n\t\t\t\t\t\trules.push( `${ key } ${ query } {\\n` )\n\n\t\t\t\t\t}\n\n\t\t\t\t} else {\n\n\t\t\t\t\tmake_class( selector( prefix , path ) + key , [] , config[key] )\n\n\t\t\t\t}\n\n\t\t\t}\n\t\t\t\n\t\t\tif( props.length ) {\n\t\t\t\trules.push( `${ selector( prefix , path ) } {\\n${ props.reverse().join('') }}\\n` )\n\t\t\t}\n\n\t\t}\n\n\t\tmake_class( '' , [] , config0 )\n\n\t\treturn rules.reverse().join('')\n\n\t}\n\n}\n","namespace $ {\n\n\texport class $mol_plugin extends $mol_view {\n\n\t\t@ $mol_mem\n\t\tdom_node( next? : Element ) {\n\n\t\t\tconst node = next || ( ( $mol_owning_get( this ) as $mol_wire_fiber ).host as $mol_view )!.dom_node()\n\n\t\t\t$mol_dom_render_attributes( node , this.attr_static() )\n\n\t\t\tconst events = $mol_wire_async( this.event() )\n\t\t\tfor( let event_name in events ) {\n\t\t\t\tnode.addEventListener(\n\t\t\t\t\tevent_name ,\n\t\t\t\t\tevents[ event_name ] ,\n\t\t\t\t\t{ passive : false } as any ,\n\t\t\t\t)\n\t\t\t}\n\n\t\t\treturn node\n\t\t}\n\n\t\tattr_static() : { [ key : string ] : string|number|boolean } {\n\t\t\treturn {}\n\t\t}\n\n\t\tevent() : { [ key : string ] : ( event : Event )=> void } {\n\t\t\treturn {}\n\t\t}\n\t\t\n\t\trender() {\n\t\t\tthis.dom_node_actual()\n\t\t}\n\t\t\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_style_define<\n\t\tComponent extends $mol_view,\n\t\tConfig extends $mol_style_guard< Component , Config >,\n\t>(\n\t\tComponent : new()=> Component,\n\t\tconfig : Config ,\n\t) {\n\n\t\treturn $mol_style_attach(\n\t\t\tComponent.name,\n\t\t\t$mol_style_sheet( Component , config ),\n\t\t)\n\n\t}\n\n}\n","namespace $ {\n\texport class $mol_scroll extends $mol_view {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * scroll_top?val 0\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tscroll_top(val?: any) {\n\t\t\tif ( val !== undefined ) return val as never\n\t\t\treturn 0\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * scroll_left?val 0\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tscroll_left(val?: any) {\n\t\t\tif ( val !== undefined ) return val as never\n\t\t\treturn 0\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * field *\n\t\t * \t^\n\t\t * \ttabIndex <= tabindex\n\t\t * ```\n\t\t */\n\t\tfield() {\n\t\t\treturn {\n\t\t\t\t...super.field(),\n\t\t\t\ttabIndex: this.tabindex()\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * event *\n\t\t * \t^\n\t\t * \tscroll?event <=> event_scroll?event\n\t\t * ```\n\t\t */\n\t\tevent() {\n\t\t\treturn {\n\t\t\t\t...super.event(),\n\t\t\t\tscroll: (event?: any) => this.event_scroll(event)\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * tabindex -1\n\t\t * ```\n\t\t */\n\t\ttabindex() {\n\t\t\treturn -1\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * event_scroll?event null\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tevent_scroll(event?: any) {\n\t\t\tif ( event !== undefined ) return event as never\n\t\t\treturn null as any\n\t\t}\n\t}\n\t\n}\n\n","namespace $ {\n\n\texport class $mol_dom_listener extends $mol_object {\n\n\t\tconstructor(\n\t\t\tpublic _node : any ,\n\t\t\tpublic _event : string ,\n\t\t\tpublic _handler : ( event : any )=> any ,\n\t\t\tpublic _config : boolean|{ passive : boolean } = { passive : true }\n\t\t) {\n\t\t\tsuper()\n\t\t\tthis._node.addEventListener( this._event , this._handler , this._config )\n\t\t}\n\n\t\tdestructor() {\n\t\t\tthis._node.removeEventListener( this._event , this._handler , this._config )\n\t\t\tsuper.destructor()\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\n\texport class $mol_print extends $mol_object {\n\n\t\t@ $mol_mem\n\t\tstatic before() {\n\t\t\treturn new $mol_dom_listener( this.$.$mol_dom_context , 'beforeprint' , ()=> {\n\t\t\t\tthis.active( true )\n\t\t\t} )\n\t\t}\n\n\t\t@ $mol_mem\n\t\tstatic after() {\n\t\t\treturn new $mol_dom_listener( this.$.$mol_dom_context , 'afterprint' , ()=> {\n\t\t\t\tthis.active( false )\n\t\t\t} )\n\t\t}\n\n\t\t@ $mol_mem\n\t\tstatic active( next? : boolean ) {\n\t\t\tthis.before()\n\t\t\tthis.after()\n\t\t\treturn next || false\n\t\t}\n\n\t}\n\n}\n","namespace $.$$ {\n\n\tconst { per , rem , px } = $mol_style_unit\n\n\t$mol_style_define( $mol_scroll , {\n\t\toverflow: 'auto',\n\t} )\n\t\n\t$mol_style_define( $mol_scroll , {\n\n\t\tdisplay: 'flex',\n\t\toverflow: 'overlay',\n\t\tflex: {\n\t\t\tdirection: 'column',\n\t\t\tgrow: 1,\n\t\t\tshrink: 1,\n\t\t\tbasis: 0,\n\t\t},\n\t\toutline: 'none',\n\t\talignSelf: 'stretch',\n\t\tboxSizing: 'border-box',\n\t\twillChange: 'scroll-position',\n\t\tscroll: {\n\t\t\tpadding: [ rem(.75), 0 ],\n\t\t},\n\t\tmaxHeight: per(100),\n\t\tmaxWidth: per(100),\n\t\twebkitOverflowScrolling: 'touch',\n\t\tcontain: 'content',\n\n\t\t'>': {\n\t\t\t$mol_view: {\n\t\t\t\ttransform: 'translateZ(0)', // enforce gpu scroll in all agents\n\t\t\t},\n\t\t},\n\n\t\t'::-webkit-scrollbar': {\n\t\t\twidth: rem(.25),\n\t\t\theight: rem(.25),\n\t\t},\n\t\t\n\t\t':hover': {\n\t\t\t'::-webkit-scrollbar': {\n\t\t\t\twidth: rem(.5),\n\t\t\t\theight: rem(.5),\n\t\t\t},\n\t\t},\n\t\t\n\t\t'@media' : {\n\t\t\t'print' : {\n\t\t\t\toverflow: 'visible',\n\t\t\t\tcontain: 'none',\n\t\t\t\tmaxHeight: 'unset',\n\t\t\t},\n\t\t},\n\n\t})\n\n}\n","namespace $.$$ {\n\t\n\texport class $mol_scroll extends $.$mol_scroll {\n\n\t\t@ $mol_mem\n\t\tscroll_top( next? : number, cache?: 'cache' ): number {\n\t\t\t\n\t\t\tconst el = this.dom_node()\n\t\t\tif( next !== undefined && !cache ) el.scrollTop = next\n\t\t\t\n\t\t\treturn el.scrollTop\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tscroll_left( next? : number, cache?: 'cache' ): number {\n\t\t\t\n\t\t\tconst el = this.dom_node()\n\t\t\tif( next !== undefined && !cache ) el.scrollLeft = next\n\t\t\t\n\t\t\treturn el.scrollLeft\n\t\t}\n\t\t\n\t\tevent_scroll( next? : Event ) {\n\t\t\t\n\t\t\tconst el = this.dom_node() as HTMLElement\n\t\t\t\n\t\t\tthis.scroll_left( el.scrollLeft, 'cache' )\n\t\t\tthis.scroll_top( el.scrollTop, 'cache' )\n\t\t\t\n\t\t}\n\n\t\tminimal_height() {\n\t\t\treturn this.$.$mol_print.active() ? null! : 0\n\t\t}\n\t\t\n\t\tminimal_width() {\n\t\t\treturn this.$.$mol_print.active() ? null! : 0\n\t\t}\n\t\t\n\t}\n\n}\n","namespace $ {\n\texport class $mol_page extends $mol_view {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * dom_name \\article\n\t\t * ```\n\t\t */\n\t\tdom_name() {\n\t\t\treturn \"article\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * field *\n\t\t * \t^\n\t\t * \ttabIndex <= tabindex\n\t\t * ```\n\t\t */\n\t\tfield() {\n\t\t\treturn {\n\t\t\t\t...super.field(),\n\t\t\t\ttabIndex: this.tabindex()\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * sub /\n\t\t * \t<= Head\n\t\t * \t<= Body\n\t\t * \t<= Foot\n\t\t * ```\n\t\t */\n\t\tsub() {\n\t\t\treturn [\n\t\t\t\tthis.Head(),\n\t\t\t\tthis.Body(),\n\t\t\t\tthis.Foot()\n\t\t\t] as readonly any[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * tabindex -1\n\t\t * ```\n\t\t */\n\t\ttabindex() {\n\t\t\treturn -1\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Logo null\n\t\t * ```\n\t\t */\n\t\tLogo() {\n\t\t\treturn null as any\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * title_content /\n\t\t * \t<= Logo\n\t\t * \t<= title\n\t\t * ```\n\t\t */\n\t\ttitle_content() {\n\t\t\treturn [\n\t\t\t\tthis.Logo(),\n\t\t\t\tthis.title()\n\t\t\t] as readonly any[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Title $mol_view\n\t\t * \tdom_name \\h1\n\t\t * \tsub <= title_content\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tTitle() {\n\t\t\tconst obj = new this.$.$mol_view()\n\t\t\t\n\t\t\tobj.dom_name = () => \"h1\"\n\t\t\tobj.sub = () => this.title_content()\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * tools /$mol_view_content\n\t\t * ```\n\t\t */\n\t\ttools() {\n\t\t\treturn [\n\t\t\t] as readonly $mol_view_content[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Tools $mol_view sub <= tools\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tTools() {\n\t\t\tconst obj = new this.$.$mol_view()\n\t\t\t\n\t\t\tobj.sub = () => this.tools()\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * head /\n\t\t * \t<= Title\n\t\t * \t<= Tools\n\t\t * ```\n\t\t */\n\t\thead() {\n\t\t\treturn [\n\t\t\t\tthis.Title(),\n\t\t\t\tthis.Tools()\n\t\t\t] as readonly any[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Head $mol_view\n\t\t * \tminimal_height 64\n\t\t * \tdom_name \\header\n\t\t * \tsub <= head\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tHead() {\n\t\t\tconst obj = new this.$.$mol_view()\n\t\t\t\n\t\t\tobj.minimal_height = () => 64\n\t\t\tobj.dom_name = () => \"header\"\n\t\t\tobj.sub = () => this.head()\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * body /$mol_view_content\n\t\t * ```\n\t\t */\n\t\tbody() {\n\t\t\treturn [\n\t\t\t] as readonly $mol_view_content[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * body_scroll_top?val\n\t\t * ```\n\t\t */\n\t\tbody_scroll_top(val?: any) {\n\t\t\treturn this.Body().scroll_top(val)\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Body $mol_scroll\n\t\t * \tscroll_top?val => body_scroll_top?val\n\t\t * \tsub <= body\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tBody() {\n\t\t\tconst obj = new this.$.$mol_scroll()\n\t\t\t\n\t\t\tobj.sub = () => this.body()\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * foot /$mol_view\n\t\t * ```\n\t\t */\n\t\tfoot() {\n\t\t\treturn [\n\t\t\t] as readonly $mol_view[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Foot $mol_view\n\t\t * \tdom_name \\footer\n\t\t * \tsub <= foot\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tFoot() {\n\t\t\tconst obj = new this.$.$mol_view()\n\t\t\t\n\t\t\tobj.dom_name = () => \"footer\"\n\t\t\tobj.sub = () => this.foot()\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t}\n\t\n}\n\n","namespace $.$$ {\n\n\tconst { per , rem } = $mol_style_unit\n\tconst { calc } = $mol_style_func\n\n\t$mol_style_define( $mol_page , {\n\n\t\tdisplay: 'flex' ,\n\t\tflex: {\n\t\t\tbasis: 'auto' ,\n\t\t\tdirection: 'column' ,\n\t\t},\n\t\tposition: 'relative' ,\n\t\talignSelf: 'stretch' ,\n\t\tmaxWidth: per(100) ,\n\t\tmaxHeight: per(100) ,\n\t\tboxSizing: 'border-box' ,\n\t\tcolor: $mol_theme.text ,\n\t\t// zIndex: 0 ,\n\t\t\n\t\t':focus': {\n\t\t\toutline: 'none',\n\t\t} ,\n\n\t\tHead: {\n\t\t\tdisplay: 'flex' ,\n\t\t\tflexWrap: 'wrap' ,\n\t\t\tjustifyContent: 'flex-end' ,\n\t\t\tflex: 'none',\n\t\t\tposition: 'relative' ,\n\t\t\tmargin: 0 ,\n\t\t\tminHeight: rem(4),\n\t\t\tpadding: $mol_gap.block ,\n\t\t\tbackground: {\n\t\t\t\tcolor: $mol_theme.card ,\n\t\t\t},\n\t\t\tborder: {\n\t\t\t\tradius: $mol_gap.round,\n\t\t\t},\n\t\t\tboxShadow: `0 0.5rem 0.5rem -0.5rem hsla(0,0%,0%,.25)` ,\n\t\t\tzIndex: 2,\n\t\t},\n\n\t\tTitle: {\n\n\t\t\tminHeight: rem(2),\n\t\t\tmargin: 0,\n\t\t\tpadding: $mol_gap.text,\n\t\t\tgap: $mol_gap.text,\n\t\t\twordBreak: 'normal',\n\t\t\ttextShadow: '0 0',\n\n\t\t\tfont: {\n\t\t\t\tsize: 'inherit',\n\t\t\t\tweight: 'normal',\n\t\t\t},\n\t\n\t\t\tflex: {\n\t\t\t\tgrow: 1,\n\t\t\t\tshrink: 1,\n\t\t\t\tbasis: 'auto',\n\t\t\t},\n\n\t\t},\n\n\t\tTools: {\n\t\t\t\n\t\t\tflex: {\n\t\t\t\tbasis: 'auto',\n\t\t\t\tgrow: 1000,\n\t\t\t\tshrink: 1,\n\t\t\t},\n\t\t\tdisplay: 'flex',\n\t\t\tjustifyContent: 'flex-end',\n\t\t\talignItems: 'flex-start',\n\t\t\tflexWrap: 'wrap',\n\n\t\t},\n\n\t\tBody: {\n\t\t\tflex: {\n\t\t\t\tgrow: 1000,\n\t\t\t\tshrink: 1,\n\t\t\t\tbasis: per(100),\n\t\t\t},\n\t\t\tpadding: $mol_gap.block ,\n\t\t},\n\n\t\tFoot: {\n\t\t\tdisplay: 'flex',\n\t\t\tjustifyContent: 'space-between',\n\t\t\tflex: 'none',\n\t\t\tmargin: 0,\n\t\t\toverflow: 'hidden',\n\t\t\tbackground: {\n\t\t\t\tcolor: $mol_theme.card ,\n\t\t\t},\n\t\t\tborder: {\n\t\t\t\tradius: $mol_gap.round,\n\t\t\t},\n\t\t\tboxShadow: `0 -0.5rem 0.5rem -0.5rem hsla(0,0%,0%,.25)` ,\n\t\t\tzIndex: 1,\n\t\t\tpadding: $mol_gap.block ,\n\t\t\t':empty': {\n\t\t\t\tdisplay: 'none',\n\t\t\t},\n\t\t},\t\n\n\t} )\n\t\n}\n","namespace $ {\n\texport class $mol_link extends $mol_view {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * uri \\\n\t\t * ```\n\t\t */\n\t\turi() {\n\t\t\treturn \"\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * dom_name \\a\n\t\t * ```\n\t\t */\n\t\tdom_name() {\n\t\t\treturn \"a\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * attr *\n\t\t * \t^\n\t\t * \thref <= uri_toggle\n\t\t * \ttitle <= hint_safe\n\t\t * \ttarget <= target\n\t\t * \tdownload <= file_name\n\t\t * \tmol_link_current <= current\n\t\t * ```\n\t\t */\n\t\tattr() {\n\t\t\treturn {\n\t\t\t\t...super.attr(),\n\t\t\t\thref: this.uri_toggle(),\n\t\t\t\ttitle: this.hint_safe(),\n\t\t\t\ttarget: this.target(),\n\t\t\t\tdownload: this.file_name(),\n\t\t\t\tmol_link_current: this.current()\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * sub /$mol_view_content <= title\n\t\t * ```\n\t\t */\n\t\tsub() {\n\t\t\treturn [\n\t\t\t\tthis.title()\n\t\t\t] as readonly $mol_view_content[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * arg *\n\t\t * ```\n\t\t */\n\t\targ() {\n\t\t\treturn {\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * event *\n\t\t * \t^\n\t\t * \tclick?event <=> click?event\n\t\t * ```\n\t\t */\n\t\tevent() {\n\t\t\treturn {\n\t\t\t\t...super.event(),\n\t\t\t\tclick: (event?: any) => this.click(event)\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * uri_toggle \\\n\t\t * ```\n\t\t */\n\t\turi_toggle() {\n\t\t\treturn \"\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * hint \\\n\t\t * ```\n\t\t */\n\t\thint() {\n\t\t\treturn \"\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * hint_safe <= hint\n\t\t * ```\n\t\t */\n\t\thint_safe() {\n\t\t\treturn this.hint()\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * target \\_self\n\t\t * ```\n\t\t */\n\t\ttarget() {\n\t\t\treturn \"_self\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * file_name \\\n\t\t * ```\n\t\t */\n\t\tfile_name() {\n\t\t\treturn \"\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * current false\n\t\t * ```\n\t\t */\n\t\tcurrent() {\n\t\t\treturn false\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * event_click?event null\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tevent_click(event?: any) {\n\t\t\tif ( event !== undefined ) return event as never\n\t\t\treturn null as any\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * click?event <=> event_click?event\n\t\t * ```\n\t\t */\n\t\tclick(event?: any) {\n\t\t\treturn this.event_click(event)\n\t\t}\n\t}\n\t\n}\n\n","namespace $ {\n\texport let $mol_action = $mol_wire_method\n}\n","namespace $ {\n\t\n\texport class $mol_state_arg extends $mol_object {\n\t\t\n\t\t@ $mol_mem\n\t\tstatic href( next?: string ) {\n\t\t\t\n\t\t\tif( next === undefined ) {\n\t\t\t\t\n\t\t\t\tnext = $mol_dom_context.location.href\n\t\t\t\t\n\t\t\t} else if( !/^about:srcdoc/.test( next ) ) {\n\t\t\t\t\n\t\t\t\tnew $mol_after_frame( ()=> {\n\t\t\t\t\t\n\t\t\t\t\tconst next = this.href()\n\t\t\t\t\tconst prev = $mol_dom_context.location.href\n\t\t\t\t\tif( next === prev ) return\n\t\t\t\t\t\n\t\t\t\t\tconst history = $mol_dom_context.history\n\t\t\t\t\thistory.replaceState( history.state, $mol_dom_context.document.title, next )\n\t\t\t\t\t\n\t\t\t\t} )\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t\tif( $mol_dom_context.parent !== $mol_dom_context.self ) {\n\t\t\t\t$mol_dom_context.parent.postMessage( [ 'hashchange', next ], '*' )\n\t\t\t}\n\t\t\t\n\t\t\treturn next\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tstatic href_normal(): string {\n\t\t\treturn this.link({})\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tstatic href_absolute(): string {\n\t\t\treturn new URL( this.href(), $mol_dom_context.location.href ).toString()\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tstatic dict( next? : { [ key : string ] : string | null } ) {\n\t\t\t\n\t\t\tvar href = this.href( next && this.make_link( next ) ).split( /#!?/ )[1] || ''\n\t\t\tvar chunks = href.split( this.separator )\n\t\t\t\n\t\t\tvar params : { [ key : string ] : string } = {}\n\t\t\tchunks.forEach(\n\t\t\t\tchunk => {\n\t\t\t\t\tif( !chunk ) return\n\t\t\t\t\tvar vals = chunk.split( '=' ).map( decodeURIComponent )\n\t\t\t\t\tparams[ vals.shift()! ] = vals.join( '=' )\n\t\t\t\t}\n\t\t\t)\n\t\t\t\n\t\t\treturn params\n\t\t}\n\n\t\t@ $mol_mem_key\n\t\tstatic dict_cut( except : string[] ) {\n\t\t\t\n\t\t\tconst dict = this.dict()\n\t\t\tconst cut : { [ key : string ] : string } = {}\n\t\t\t\n\t\t\tfor( const key in dict ) {\n\t\t\t\tif( except.indexOf( key ) >= 0 ) continue\n\t\t\t\tcut[ key ] = dict[ key ]\n\t\t\t}\n\t\t\t\n\t\t\treturn cut\n\t\t}\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic value( key : string , next? : string | null ) {\n\t\t\tconst nextDict = ( next === void 0 ) ? void 0 : { ... this.dict() , [ key ] : next }\n\t\t\tconst next2 = this.dict( nextDict )[ key ]\n\t\t\treturn ( next2 == null ) ? null : next2\n\t\t}\n\t\t\n\t\tstatic link( next : { [ key : string ] : string } ) {\n\t\t\treturn this.make_link({\n\t\t\t\t... this.dict_cut( Object.keys( next ) ),\n\t\t\t\t... next,\n\t\t\t})\n\t\t}\n\t\t\n\t\tstatic prolog = '!'\n\t\tstatic separator = '/'\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic make_link( next : { [ key : string ] : string | null } ) {\n\t\t\tconst chunks : string[] = []\n\t\t\tfor( let key in next ) {\n\t\t\t\tif( null == next[ key ] ) continue\n\t\t\t\tconst val = next[ key ]\n\t\t\t\tchunks.push( [ key ].concat( val ? [ val ] : [] ).map( this.encode ).join( '=' ) )\n\t\t\t}\n\t\t\t\n\t\t\treturn new URL( '#' + this.prolog + chunks.join( this.separator ) , this.href_absolute() ).toString()\n\t\t}\n\n\t\t@ $mol_action\n\t\tstatic go( next : { [ key : string ] : string | null } ) {\n\t\t\t$mol_dom_context.location.href = this.make_link( next )\n\t\t}\n\t\t\n\t\tstatic encode( str : string ) {\n\t\t\treturn encodeURIComponent( str ).replace( /\\(/g , '%28' ).replace( /\\)/g , '%29' )\n\t\t}\n\t\t\n\t\tconstructor( public prefix = '' ) {\n\t\t\tsuper()\n\t\t}\n\t\t\n\t\tvalue( key : string , next? : string ) {\n\t\t\treturn ( this.constructor as typeof $mol_state_arg ).value( this.prefix + key , next )\n\t\t}\n\t\t\n\t\tsub( postfix : string ) {\n\t\t\treturn new ( this.constructor as typeof $mol_state_arg )( this.prefix + postfix + '.' )\n\t\t}\n\t\t\n\t\tlink( next : { [ key : string ] : string } ) {\n\t\t\tvar prefix = this.prefix\n\t\t\tvar dict : { [ key : string ] : string } = {}\n\t\t\tfor( var key in next ) {\n\t\t\t\tdict[ prefix + key ] = next[ key ]\n\t\t\t}\n\t\t\treturn ( this.constructor as typeof $mol_state_arg ).link( dict )\n\t\t}\n\t\t\n\t}\n\n\tconst $mol_state_arg_change = ( event : Event )=> {\n\t\t$mol_state_arg.href( $mol_dom_context.location.href ) \n\t}\n\n\tself.addEventListener( 'hashchange' , $mol_state_arg_change )\n\t\n}\n","namespace $ {\n\n\tconst { rem } = $mol_style_unit\n\tconst { scale } = $mol_style_func\n\n\t$mol_style_define( $mol_link , {\n\t\t\n\t\ttextDecoration: 'none',\n\t\tcolor: $mol_theme.control,\n\t\tstroke: 'currentcolor',\n\t\tcursor: 'pointer',\n\t\tpadding: $mol_gap.text,\n\t\tboxSizing: 'border-box',\n\t\tposition: 'relative',\n\t\tminWidth: rem(2.5),\n\t\tgap: $mol_gap.block,\n\t\t\n\t\tborder: {\n\t\t\tradius: $mol_gap.round,\n\t\t},\n\n\t\t':hover': {\n\t\t\t\n\t\t\tbackground: {\n\t\t\t\tcolor: $mol_theme.hover,\n\t\t\t},\n\t\t\t\n\t\t},\n\n\t\t':focus': {\n\t\t\t\n\t\t\toutline: 'none',\n\t\t\t\n\t\t\tbackground: {\n\t\t\t\tcolor: $mol_theme.hover,\n\t\t\t},\n\t\t\t\n\t\t},\n\n\t\t':focus-within': {\n\t\t\toutline: 'none',\n\t\t\tbackground: {\n\t\t\t\tcolor: $mol_theme.hover,\n\t\t\t}\n\t\t},\n\t\t\n\t\t':active': {\n\t\t\tcolor: $mol_theme.focus,\n\t\t},\n\n\t\t'@': {\n\t\t\tmol_link_current: {\n\t\t\t\t'true': {\n\t\t\t\t\tcolor: $mol_theme.current,\n\t\t\t\t\ttextShadow: '0 0',\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t\n\t} )\n\n}\n","namespace $.$$ {\n\t\n\texport class $mol_link extends $.$mol_link {\n\t\t\n\t\t@ $mol_mem\n\t\turi_toggle() {\n\t\t\treturn this.current() ? this.uri_off() : this.uri()\n\t\t}\n\n\t\t@ $mol_mem\n\t\turi() {\n\t\t\treturn new this.$.$mol_state_arg( this.state_key() ).link( this.arg() )\n\t\t}\n\n\t\t@ $mol_mem\n\t\turi_off() {\n\t\t\tconst arg2 = {}\n\t\t\tfor( let i in this.arg() ) arg2[i] = null\n\t\t\t\n\t\t\treturn new this.$.$mol_state_arg( this.state_key() ).link( arg2 )\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\turi_native() {\n\t\t\tconst base = this.$.$mol_state_arg.href()\n\t\t\treturn new URL( this.uri() , base )\n\t\t}\n\n\t\t@ $mol_mem\n\t\tcurrent() {\n\n\t\t\tconst base = this.$.$mol_state_arg.href_normal()\n\t\t\tconst target = this.uri_native().toString()\n\n\t\t\tif( base === target ) return true\n\t\t\t\n\t\t\tconst args = this.arg()\n\t\t\t\n\t\t\tconst keys = Object.keys( args ).filter( key => args[ key ] != null )\n\t\t\tif( keys.length === 0 ) return false\n\n\t\t\tfor( const key of keys ) {\n\t\t\t\tif( this.$.$mol_state_arg.value( key ) != args[ key ] ) return false\n\t\t\t}\n\n\t\t\treturn true\n\t\t}\n\n\t\tfile_name() {\n\t\t\treturn null as unknown as string\n\t\t}\n\n\t\tminimal_height() {\n\t\t\treturn Math.max( super.minimal_height(), 24 )\n\t\t}\n\t\t\n\t\texternal() {\n\t\t\treturn this.uri_native().origin !== $mol_dom_context.location.origin\n\t\t}\n\t\t\n\t\ttarget(): '_self' | '_blank' | '_top' | '_parent' | string {\n\t\t\treturn this.external() ? '_blank' : '_self'\n\t\t}\n\n\t\thint_safe() {\n\t\t\ttry {\n\t\t\t\treturn this.hint()\n\t\t\t} catch( error ) {\n\t\t\t\t$mol_fail_log( error )\n\t\t\t\treturn ''\n\t\t\t}\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\texport class $mol_image extends $mol_view {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * dom_name \\img\n\t\t * ```\n\t\t */\n\t\tdom_name() {\n\t\t\treturn \"img\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * field *\n\t\t * \t^\n\t\t * \tsrc <= uri\n\t\t * \talt <= title\n\t\t * \tloading <= loading\n\t\t * \tdecoding <= decoding\n\t\t * \tcrossOrigin <= cors\n\t\t * ```\n\t\t */\n\t\tfield() {\n\t\t\treturn {\n\t\t\t\t...super.field(),\n\t\t\t\tsrc: this.uri(),\n\t\t\t\talt: this.title(),\n\t\t\t\tloading: this.loading(),\n\t\t\t\tdecoding: this.decoding(),\n\t\t\t\tcrossOrigin: this.cors()\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * minimal_width 16\n\t\t * ```\n\t\t */\n\t\tminimal_width() {\n\t\t\treturn 16\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * minimal_height 16\n\t\t * ```\n\t\t */\n\t\tminimal_height() {\n\t\t\treturn 16\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * uri \\\n\t\t * ```\n\t\t */\n\t\turi() {\n\t\t\treturn \"\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * loading \\eager\n\t\t * ```\n\t\t */\n\t\tloading() {\n\t\t\treturn \"eager\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * decoding \\async\n\t\t * ```\n\t\t */\n\t\tdecoding() {\n\t\t\treturn \"async\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * cors null\n\t\t * ```\n\t\t */\n\t\tcors() {\n\t\t\treturn null as any\n\t\t}\n\t}\n\t\n}\n\n","namespace $ { $mol_style_attach( \"mol/image/image.view.css\",\n \"[mol_image] {\\n\\tborder-radius: var(--mol_gap_round);\\n\\toverflow: hidden;\\n\\tflex: 0 1 auto;\\n\\tmax-width: 100%;\\n\\tobject-fit: cover;\\n}\\n\"\n) }","namespace $ {\n\texport class $mol_link_iconed extends $mol_link {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * sub / <= Icon\n\t\t * ```\n\t\t */\n\t\tsub() {\n\t\t\treturn [\n\t\t\t\tthis.Icon()\n\t\t\t] as readonly any[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * content / <= title\n\t\t * ```\n\t\t */\n\t\tcontent() {\n\t\t\treturn [\n\t\t\t\tthis.title()\n\t\t\t] as readonly any[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * host \\\n\t\t * ```\n\t\t */\n\t\thost() {\n\t\t\treturn \"\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * icon \\\n\t\t * ```\n\t\t */\n\t\ticon() {\n\t\t\treturn \"\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Icon $mol_image\n\t\t * \turi <= icon\n\t\t * \ttitle \\\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tIcon() {\n\t\t\tconst obj = new this.$.$mol_image()\n\t\t\t\n\t\t\tobj.uri = () => this.icon()\n\t\t\tobj.title = () => \"\"\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * title <= uri\n\t\t * ```\n\t\t */\n\t\ttitle() {\n\t\t\treturn this.uri()\n\t\t}\n\t}\n\t\n}\n\n","namespace $ { $mol_style_attach( \"mol/link/iconed/iconed.view.css\",\n \"[mol_link_iconed] {\\n\\talign-items: baseline;\\n\\tdisplay: inline-flex;\\n\\tpadding: var(--mol_gap_text);\\n}\\n\\n[mol_link_iconed_icon] {\\n\\tbox-shadow: none;\\n\\theight: 1.5em;\\n\\twidth: 1em;\\n\\tflex: 0 0 auto;\\n\\tdisplay: inline-block;\\n\\talign-self: normal;\\n\\tvertical-align: top;\\n\\tborder-radius: 0;\\n\\tobject-fit: scale-down;\\n}\\n\\n[mol_theme=\\\"$mol_theme_dark\\\"] [mol_link_iconed_icon] {\\n\\tfilter: var(--mol_theme_image);\\n}\\n\"\n) }","namespace $.$$ {\n\n\texport class $mol_link_iconed extends $.$mol_link_iconed {\n\n\t\t@ $mol_mem\n\t\ticon() {\n\t\t\treturn `https://favicon.yandex.net/favicon/${ this.host() }?color=0,0,0,0&size=32&stub=1`\n\t\t\t// return `https://api.faviconkit.com/${ this.host() }/16`\n\t\t}\n\n\t\t@ $mol_mem\n\t\thost() {\n\t\t\tconst base = this.$.$mol_state_arg.href()\n\t\t\tconst url = new URL( this.uri() , base )\n\t\t\treturn url.hostname\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\ttitle() {\n\t\t\tconst uri = this.uri()\n\t\t\tconst host = this.host()\n\t\t\tconst suffix = ( host ? uri.split( this.host() , 2 )[1] : uri ).replace( /^[\\/\\?#!]+/, '' )\n\t\t\treturn decodeURIComponent( suffix || host ).replace( /^\\//, ' ' )\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tsub() {\n\t\t\treturn [\n\t\t\t\t... this.host() ? [ this.Icon() ] : [],\n\t\t\t\t... this.content() ? [ ' ', ... this.content() ] : [],\n\t\t\t] as readonly any[]\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\texport class $mol_theme_auto extends $mol_plugin {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * attr * mol_theme <= theme\n\t\t * ```\n\t\t */\n\t\tattr() {\n\t\t\treturn {\n\t\t\t\tmol_theme: this.theme()\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * theme \\\n\t\t * ```\n\t\t */\n\t\ttheme() {\n\t\t\treturn \"\"\n\t\t}\n\t}\n\t\n}\n\n","namespace $ {\n\t\n\texport class $mol_state_local< Value > extends $mol_object {\n\t\t\n\t\tstatic 'native()' : Pick< Storage , 'getItem'|'setItem'|'removeItem' >\n\t\tstatic native() {\n\t\t\tif( this['native()'] ) return this['native()']\n\n\t\t\tcheck : try {\n\t\t\t\tconst native = $mol_dom_context.localStorage\n\t\t\t\tif( !native ) break check\n\t\t\t\t\n\t\t\t\tnative.setItem( '' , '' )\n\t\t\t\tnative.removeItem( '' )\n\t\t\t\treturn this['native()'] = native\n\t\t\t} catch( error: any ) {\n\t\t\t\tconsole.warn( error )\n\t\t\t}\n\n\t\t\treturn this['native()'] = {\n\t\t\t\tgetItem( key : string ) {\n\t\t\t\t\treturn this[ ':' + key ]\n\t\t\t\t} ,\n\t\t\t\tsetItem( key : string , value : string ) {\n\t\t\t\t\tthis[ ':' + key ] = value\n\t\t\t\t} ,\n\t\t\t\tremoveItem( key : string ) {\n\t\t\t\t\tthis[ ':' + key ] = void 0\n\t\t\t\t}\n\t\t\t}\n\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tstatic changes( next?: StorageEvent ) { return next }\n\n\t\t@ $mol_mem_key\n\t\tstatic value< Value >(\n\t\t\tkey : string ,\n\t\t\tnext? : Value | null ,\n\t\t) : Value | null {\n\t\t\t\n\t\t\tthis.changes()\n\t\t\t\n\t\t\tif( next === void 0 ) return JSON.parse( this.native().getItem( key ) || 'null' )\n\t\t\t\n\t\t\tif( next === null ) this.native().removeItem( key )\n\t\t\telse this.native().setItem( key , JSON.stringify( next ) )\n\t\t\t\n\t\t\treturn next\n\t\t}\n\t\t\n\t\tprefix() { return '' }\n\t\t\n\t\tvalue( key : string , next? : Value ) {\n\t\t\treturn $mol_state_local.value( this.prefix() + '.' + key , next )\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\tself.addEventListener( 'storage' , event => $.$mol_state_local.changes( event ) )\n\n}\n","namespace $ {\n\t\n\tfunction parse( theme: string | null ) {\n\t\tif( theme === 'true' ) return true\n\t\tif( theme === 'false' ) return false\n\t\treturn null\n\t}\n\t\n\texport function $mol_lights( this : $ , next? : boolean ) {\n\t\t\n\t\tconst arg = parse( this.$mol_state_arg.value( 'mol_lights' ) )\n\t\t\n\t\tconst base = false //this.$mol_media.match( '(prefers-color-scheme: light)' )\n\t\t\n\t\tif( next === undefined ) {\n\t\t\treturn arg ?? this.$mol_state_local.value< boolean >( '$mol_lights' ) ?? base\n\t\t} else {\n\t\t\tif( arg === null ) {\n\t\t\t\tthis.$mol_state_local.value( '$mol_lights' , next === base ? null : next )\n\t\t\t} else {\n\t\t\t\tthis.$mol_state_arg.value( 'mol_lights' , String( next ) )\n\t\t\t}\n\t\t\treturn next\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $.$$ {\n\texport class $mol_theme_auto extends $.$mol_theme_auto {\n\n\t\ttheme() {\n\t\t\treturn this.$.$mol_lights() ? '$mol_theme_light' : '$mol_theme_dark'\n\t\t}\n\n\t}\n}\n","namespace $ {\n\texport class $mol_pop extends $mol_view {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * showed?val false\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tshowed(val?: any) {\n\t\t\tif ( val !== undefined ) return val as never\n\t\t\treturn false\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * align_vert \\\n\t\t * ```\n\t\t */\n\t\talign_vert() {\n\t\t\treturn \"\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * align_hor \\\n\t\t * ```\n\t\t */\n\t\talign_hor() {\n\t\t\treturn \"\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * sub / <= Anchor\n\t\t * ```\n\t\t */\n\t\tsub() {\n\t\t\treturn [\n\t\t\t\tthis.Anchor()\n\t\t\t] as readonly any[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * sub_visible /\n\t\t * \t<= Anchor\n\t\t * \t<= Bubble\n\t\t * ```\n\t\t */\n\t\tsub_visible() {\n\t\t\treturn [\n\t\t\t\tthis.Anchor(),\n\t\t\t\tthis.Bubble()\n\t\t\t] as readonly any[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Anchor null\n\t\t * ```\n\t\t */\n\t\tAnchor() {\n\t\t\treturn null as any\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * align \\bottom_center\n\t\t * ```\n\t\t */\n\t\talign() {\n\t\t\treturn \"bottom_center\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * bubble_content /$mol_view_content\n\t\t * ```\n\t\t */\n\t\tbubble_content() {\n\t\t\treturn [\n\t\t\t] as readonly $mol_view_content[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * height_max 9999\n\t\t * ```\n\t\t */\n\t\theight_max() {\n\t\t\treturn 9999\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Bubble $mol_pop_bubble\n\t\t * \talign <= align\n\t\t * \tcontent <= bubble_content\n\t\t * \theight_max <= height_max\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tBubble() {\n\t\t\tconst obj = new this.$.$mol_pop_bubble()\n\t\t\t\n\t\t\tobj.align = () => this.align()\n\t\t\tobj.content = () => this.bubble_content()\n\t\t\tobj.height_max = () => this.height_max()\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t}\n\t\n\texport class $mol_pop_bubble extends $mol_scroll {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * sub <= content\n\t\t * ```\n\t\t */\n\t\tsub() {\n\t\t\treturn this.content()\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * style *\n\t\t * \t^\n\t\t * \tmaxHeight <= height_max\n\t\t * ```\n\t\t */\n\t\tstyle() {\n\t\t\treturn {\n\t\t\t\t...super.style(),\n\t\t\t\tmaxHeight: this.height_max()\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * attr *\n\t\t * \t^\n\t\t * \tmol_pop_align <= align\n\t\t * \ttabindex 0\n\t\t * ```\n\t\t */\n\t\tattr() {\n\t\t\treturn {\n\t\t\t\t...super.attr(),\n\t\t\t\tmol_pop_align: this.align(),\n\t\t\t\ttabindex: 0\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * content /$mol_view_content\n\t\t * ```\n\t\t */\n\t\tcontent() {\n\t\t\treturn [\n\t\t\t] as readonly $mol_view_content[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * height_max 9999\n\t\t * ```\n\t\t */\n\t\theight_max() {\n\t\t\treturn 9999\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * align \\\n\t\t * ```\n\t\t */\n\t\talign() {\n\t\t\treturn \"\"\n\t\t}\n\t}\n\t\n}\n\n","namespace $ { $mol_style_attach( \"mol/layer/layer.css\",\n \":root {\\n\\t--mol_layer_hover: 1;\\n\\t--mol_layer_focus: 2;\\n\\t--mol_layer_speck: 3;\\n\\t--mol_layer_float: 4;\\n\\t--mol_layer_popup: 5;\\n}\\n\"\n) }","namespace $ {\n\tconst { vary } = $mol_style_func\n\texport let $mol_layer = {\n\t\thover: vary( '--mol_layer_hover' ),\n\t\tfocus: vary( '--mol_layer_focus' ),\n\t\tspeck: vary( '--mol_layer_speck' ),\n\t\tfloat: vary( '--mol_layer_float' ),\n\t\tpopup: vary( '--mol_layer_popup' ),\n\t} as const\n}\n","namespace $ { $mol_style_attach( \"mol/pop/pop.view.css\",\n \"[mol_pop] {\\n\\tposition: relative;\\n\\tdisplay: inline-flex;\\n}\\n\\n[mol_pop_bubble] {\\n\\tbox-shadow: 0 0 1rem hsla(0,0%,0%,.5);\\n\\tborder-radius: var(--mol_gap_round);\\n\\tposition: absolute;\\n\\tz-index: var(--mol_layer_popup);\\n\\tbackground: var(--mol_theme_back);\\n\\tmax-width: none;\\n\\tmax-height: none;\\n\\toverflow: hidden;\\n\\toverflow-y: scroll;\\n\\toverflow-y: overlay;\\n\\tword-break: normal;\\n\\twidth: max-content;\\n\\theight: max-content;\\n}\\n\\n[mol_pop_bubble][mol_scroll] {\\n\\tbackground: var(--mol_theme_back);\\n}\\n\\n[mol_pop_bubble]:focus {\\n\\toutline: none;\\n}\\n\\n[mol_pop_align=\\\"suspense\\\"] {\\n\\tdisplay: none;\\n}\\n\\n[mol_pop_align=\\\"left_top\\\"] {\\n\\ttransform: translate(-100%);\\n\\tleft: 0;\\n\\tbottom: 0;\\n}\\n\\n[mol_pop_align=\\\"left_center\\\"] {\\n\\ttransform: translate(-100%, -50%);\\n\\tleft: 0;\\n\\ttop: 50%;\\n}\\n\\n[mol_pop_align=\\\"left_bottom\\\"] {\\n\\ttransform: translate(-100%);\\n\\tleft: 0;\\n\\ttop: 0;\\n}\\n\\n[mol_pop_align=\\\"right_top\\\"] {\\n\\ttransform: translate(100%);\\n\\tright: 0;\\n\\tbottom: 0;\\n}\\n\\n[mol_pop_align=\\\"right_center\\\"] {\\n\\ttransform: translate(100%, -50%);\\n\\tright: 0;\\n\\ttop: 50%;\\n}\\n\\n[mol_pop_align=\\\"right_bottom\\\"] {\\n\\ttransform: translate(100%);\\n\\tright: 0;\\n\\ttop: 0;\\n}\\n\\n[mol_pop_align=\\\"center\\\"] {\\n\\tleft: 50%;\\n\\ttop: 50%;\\n\\ttransform: translate(-50%, -50%);\\n}\\n\\n[mol_pop_align=\\\"top_left\\\"] {\\n\\tright: 0;\\n\\tbottom: 100%;\\n}\\n\\n[mol_pop_align=\\\"top_center\\\"] {\\n\\ttransform: translate(-50%);\\n\\tleft: 50%;\\n\\tbottom: 100%;\\n}\\n\\n[mol_pop_align=\\\"top_right\\\"] {\\n\\tleft: 0;\\n\\tbottom: 100%;\\n}\\n\\n[mol_pop_align=\\\"bottom_left\\\"] {\\n\\tright: 0;\\n\\ttop: 100%;\\n}\\n\\n[mol_pop_align=\\\"bottom_center\\\"] {\\n\\ttransform: translate(-50%);\\n\\tleft: 50%;\\n\\ttop: 100%;\\n}\\n\\n[mol_pop_align=\\\"bottom_right\\\"] {\\n\\tleft: 0;\\n\\ttop: 100%;\\n}\\n\"\n) }","namespace $.$$ {\n\texport class $mol_pop extends $.$mol_pop {\n\t\t\n\t\t@ $mol_mem\n\t\tshowed( next = false ) {\n\t\t\tthis.focused()\n\t\t\treturn next\n\t\t}\n\n\t\t@ $mol_mem\n\t\tsub_visible() {\n\t\t\treturn [\n\t\t\t\tthis.Anchor() ,\n\t\t\t\t... this.showed() ? [ this.Bubble() ] : [] ,\n\t\t\t]\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\theight_max() {\n\t\t\t\n\t\t\tconst viewport = this.$.$mol_window.size()\n\t\t\tconst rect_bubble = this.view_rect()!\n\t\t\tconst align = this.align_vert()\n\t\t\t\n\t\t\tif( align === 'bottom' ) return ( viewport.height - rect_bubble.bottom ) * .66\n\t\t\tif( align === 'top' ) return rect_bubble.top * .66\n\t\t\t\n\t\t\treturn 0\n\t\t}\n\n\t\t@ $mol_mem\n\t\talign() {\n\t\t\treturn `${ this.align_vert() }_${ this.align_hor() }`\n\t\t}\n\n\t\t@ $mol_mem\n\t\talign_vert() {\n\t\t\tconst viewport = this.view_port()\n\t\t\t\n\t\t\tconst rect_pop = this.view_rect()\n\t\t\tif( !rect_pop ) return 'suspense'\n\t\t\t\n\t\t\treturn rect_pop.top > ( viewport.top + viewport.height / 2 ) ? 'top' : 'bottom'\n\t\t}\n\n\t\t@ $mol_mem\n\t\talign_hor() {\n\t\t\tconst viewport = this.view_port()\n\t\t\t\n\t\t\tconst rect_pop = this.view_rect()\n\t\t\tif( !rect_pop ) return 'suspense'\n\t\t\t\n\t\t\treturn rect_pop.left > ( viewport.left + viewport.width / 2 ) ? 'left' : 'right'\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tView_port() {\n\t\t\tconst view = new $mol_view\n\t\t\tview.dom_node = ()=> {\n\t\t\t\tlet node = this.dom_node() as HTMLElement\n\t\t\t\twhile( node = node.offsetParent! as HTMLElement ) {\n\t\t\t\t\tif( this.$.$mol_dom_context.getComputedStyle( node ).overflow !== 'visible' ) return node\n\t\t\t\t}\n\t\t\t\treturn this.$.$mol_dom_context.document.documentElement\n\t\t\t}\n\t\t\treturn view\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tview_port() {\n\t\t\treturn this.View_port().view_rect() ?? { ... this.$.$mol_window.size(), left: 0, top: 0 }\n\t\t}\n\n\t}\n}\n","namespace $ {\n\texport class $mol_speck extends $mol_view {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * attr *\n\t\t * \t^\n\t\t * \tmol_theme \\$mol_theme_accent\n\t\t * ```\n\t\t */\n\t\tattr() {\n\t\t\treturn {\n\t\t\t\t...super.attr(),\n\t\t\t\tmol_theme: \"$mol_theme_accent\"\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * style *\n\t\t * \t^\n\t\t * \tminHeight \\1em\n\t\t * ```\n\t\t */\n\t\tstyle() {\n\t\t\treturn {\n\t\t\t\t...super.style(),\n\t\t\t\tminHeight: \"1em\"\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * sub / <= value\n\t\t * ```\n\t\t */\n\t\tsub() {\n\t\t\treturn [\n\t\t\t\tthis.value()\n\t\t\t] as readonly any[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * value null\n\t\t * ```\n\t\t */\n\t\tvalue() {\n\t\t\treturn null as any\n\t\t}\n\t}\n\t\n}\n\n","namespace $ { $mol_style_attach( \"mol/speck/speck.view.css\",\n \"[mol_speck] {\\n\\tfont-size: .625rem;\\n\\tborder-radius: 1rem;\\n\\tmargin: -0.5rem -0.25rem;\\n\\talign-self: flex-start;\\n\\tmin-height: 1em;\\n\\tmin-width: .5em;\\n\\tvertical-align: sub;\\n\\tpadding: .25em .5em;\\n\\tposition: absolute;\\n\\tz-index: var(--mol_layer_speck);\\n\\ttext-align: center;\\n\\tline-height: 1;\\n\\tdisplay: inline-block;\\n\\twhite-space: nowrap;\\n\\ttext-overflow: ellipsis;\\n}\\n\"\n) }","namespace $ {\n\texport class $mol_button extends $mol_view {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * enabled true\n\t\t * ```\n\t\t */\n\t\tenabled() {\n\t\t\treturn true\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * click?event null\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tclick(event?: any) {\n\t\t\tif ( event !== undefined ) return event as never\n\t\t\treturn null as any\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * event_click?event null\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tevent_click(event?: any) {\n\t\t\tif ( event !== undefined ) return event as never\n\t\t\treturn null as any\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * event *\n\t\t * \t^\n\t\t * \tclick?event <=> event_activate?event\n\t\t * \tdblclick?event <=> clicks?event\n\t\t * \tkeydown?event <=> event_key_press?event\n\t\t * ```\n\t\t */\n\t\tevent() {\n\t\t\treturn {\n\t\t\t\t...super.event(),\n\t\t\t\tclick: (event?: any) => this.event_activate(event),\n\t\t\t\tdblclick: (event?: any) => this.clicks(event),\n\t\t\t\tkeydown: (event?: any) => this.event_key_press(event)\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * attr *\n\t\t * \t^\n\t\t * \tdisabled <= disabled\n\t\t * \trole \\button\n\t\t * \ttabindex <= tab_index\n\t\t * \ttitle <= hint_safe\n\t\t * ```\n\t\t */\n\t\tattr() {\n\t\t\treturn {\n\t\t\t\t...super.attr(),\n\t\t\t\tdisabled: this.disabled(),\n\t\t\t\trole: \"button\",\n\t\t\t\ttabindex: this.tab_index(),\n\t\t\t\ttitle: this.hint_safe()\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * sub /$mol_view_content <= title\n\t\t * ```\n\t\t */\n\t\tsub() {\n\t\t\treturn [\n\t\t\t\tthis.title()\n\t\t\t] as readonly $mol_view_content[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Speck $mol_speck value <= error\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tSpeck() {\n\t\t\tconst obj = new this.$.$mol_speck()\n\t\t\t\n\t\t\tobj.value = () => this.error()\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * event_activate?event null\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tevent_activate(event?: any) {\n\t\t\tif ( event !== undefined ) return event as never\n\t\t\treturn null as any\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * clicks?event null\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tclicks(event?: any) {\n\t\t\tif ( event !== undefined ) return event as never\n\t\t\treturn null as any\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * event_key_press?event null\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tevent_key_press(event?: any) {\n\t\t\tif ( event !== undefined ) return event as never\n\t\t\treturn null as any\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * disabled false\n\t\t * ```\n\t\t */\n\t\tdisabled() {\n\t\t\treturn false\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * tab_index 0\n\t\t * ```\n\t\t */\n\t\ttab_index() {\n\t\t\treturn 0\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * hint \\\n\t\t * ```\n\t\t */\n\t\thint() {\n\t\t\treturn \"\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * hint_safe <= hint\n\t\t * ```\n\t\t */\n\t\thint_safe() {\n\t\t\treturn this.hint()\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * error \\\n\t\t * ```\n\t\t */\n\t\terror() {\n\t\t\treturn \"\"\n\t\t}\n\t}\n\t\n}\n\n","namespace $ {\n export enum $mol_keyboard_code {\n backspace = 8,\n tab = 9,\n enter = 13,\n shift= 16,\n ctrl = 17,\n alt = 18,\n pause = 19,\n capsLock = 20,\n escape = 27,\n space = 32,\n pageUp = 33,\n pageDown = 34,\n end = 35,\n home = 36,\n left = 37,\n up = 38,\n right = 39,\n down = 40,\n insert = 45,\n delete = 46,\n key0 = 48,\n key1 = 49,\n key2 = 50,\n key3 = 51,\n key4 = 52,\n key5 = 53,\n key6 = 54,\n key7 = 55,\n key8 = 56,\n key9 = 57,\n A = 65,\n B = 66,\n C = 67,\n D = 68,\n E = 69,\n F = 70,\n G = 71,\n H = 72,\n I = 73,\n J = 74,\n K = 75,\n L = 76,\n M = 77,\n N = 78,\n O = 79,\n P = 80,\n Q = 81,\n R = 82,\n S = 83,\n T = 84,\n U = 85,\n V = 86,\n W = 87,\n X = 88,\n Y = 89,\n Z = 90,\n metaLeft = 91,\n metaRight = 92,\n select = 93,\n numpad0 = 96,\n numpad1 = 97,\n numpad2 = 98,\n numpad3 = 99,\n numpad4 = 100,\n numpad5 = 101,\n numpad6 = 102,\n numpad7 = 103,\n numpad8 = 104,\n numpad9 = 105,\n multiply = 106,\n add = 107,\n subtract = 109,\n decimal = 110,\n divide = 111,\n F1 = 112,\n F2 = 113,\n F3 = 114,\n F4 = 115,\n F5 = 116,\n F6 = 117,\n F7 = 118,\n F8 = 119,\n F9 = 120,\n F10 = 121,\n F11 = 122,\n F12 = 123,\n numLock = 144,\n scrollLock = 145,\n semicolon = 186,\n equals = 187,\n comma = 188,\n dash = 189,\n period = 190,\n forwardSlash = 191,\n graveAccent = 192,\n bracketOpen = 219,\n slashBack = 220,\n slashBackLeft = 226,\n bracketClose = 221,\n quoteSingle = 222\n }\n}\n","namespace $ { $mol_style_attach( \"mol/button/button.view.css\",\n \"[mol_button] {\\n\\tborder: none;\\n\\tfont: inherit;\\n\\tdisplay: inline-flex;\\n\\tflex-shrink: 0;\\n\\ttext-decoration: inherit;\\n\\tcursor: inherit;\\n\\tposition: relative;\\n\\tbox-sizing: border-box;\\n\\tword-break: normal;\\n\\tcursor: default;\\n\\tuser-select: none;\\n\\tborder-radius: var(--mol_gap_round);\\n}\\n\\n[mol_button]:where(:not(:disabled)):hover {\\n\\tz-index: var(--mol_layer_hover);\\n}\\n\\n[mol_button]:focus {\\n\\toutline: none;\\n\\tz-index: var(--mol_layer_focus);\\n}\\n\"\n) }","namespace $.$$ {\n\texport class $mol_button extends $.$mol_button {\n\n\t\t@ $mol_mem\n\t\tstatus( next = [ null as any ] ) { return next }\n\t\t\n\t\tdisabled() {\n\t\t\treturn !this.enabled()\n\t\t}\n\t\t\n\t\tevent_activate( next : Event ) {\n\t\t\t\n\t\t\tif( !next ) return\n\t\t\tif( !this.enabled() ) return\n\n\t\t\ttry {\n\t\t\t\t\n\t\t\t\tthis.event_click( next )\n\t\t\t\tthis.click( next )\n\t\t\t\tthis.status([ null ])\n\t\t\t\t\n\t\t\t} catch( error: any ) {\n\t\t\t\t\n\t\t\t\tthis.status([ error ])\n\t\t\t\t$mol_fail_hidden( error )\n\t\t\t\t\n\t\t\t}\n\n\t\t}\n\t\t\n\t\tevent_key_press ( event: KeyboardEvent ) { \n\t\t\tif( event.keyCode === $mol_keyboard_code.enter ) {\n\t\t\t\treturn this.event_activate( event )\n\t\t\t}\n\t\t} \n\t\t\n\t\ttab_index() {\n\t\t\treturn this.enabled() ? super.tab_index() : -1\n\t\t}\n\n\t\terror() {\n\n\t\t\tconst [ error ] = this.status()\n\t\t\tif( !error ) return ''\n\n\t\t\tif( error instanceof Promise ) {\n\t\t\t\treturn $mol_fail_hidden( error )\n\t\t\t}\n\t\t\t\n\t\t\treturn String( error.message ?? error )\n\n\t\t}\n\t\t\n\t\thint_safe() {\n\t\t\ttry {\n\t\t\t\treturn this.hint()\n\t\t\t} catch( error ) {\n\t\t\t\t$mol_fail_log( error )\n\t\t\t\treturn ''\n\t\t\t}\n\t\t}\n\n\t\tsub_visible() {\n\t\t\treturn [\n\t\t\t\t... this.error() ? [ this.Speck() ] : [] ,\n\t\t\t\t... this.sub() ,\n\t\t\t]\n\t\t}\n\t\t\n\t}\n}\n","namespace $ {\n\texport class $mol_button_typed extends $mol_button {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * minimal_height 40\n\t\t * ```\n\t\t */\n\t\tminimal_height() {\n\t\t\treturn 40\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * minimal_width 40\n\t\t * ```\n\t\t */\n\t\tminimal_width() {\n\t\t\treturn 40\n\t\t}\n\t}\n\t\n}\n\n","namespace $ { $mol_style_attach( \"mol/button/typed/typed.view.css\",\n \"[mol_button_typed] {\\n\\talign-content: center;\\n\\talign-items: center;\\n\\tpadding: var(--mol_gap_text);\\n\\tborder-radius: var(--mol_gap_round);\\n\\tgap: var(--mol_gap_space);\\n\\tuser-select: none;\\n\\tcursor: pointer;\\n}\\n\\n[mol_button_typed][disabled] {\\n\\tpointer-events: none;\\n}\\n\\n[mol_button_typed]:hover ,\\n[mol_button_typed]:focus {\\n\\tbackground-color: var(--mol_theme_hover);\\n}\\n\\n[mol_button_typed]:active {\\n\\tcolor: var(--mol_theme_focus);\\n}\\n\\n\"\n) }","namespace $ {\n\texport class $mol_button_minor extends $mol_button_typed {\n\t}\n\t\n}\n\n","namespace $ { $mol_style_attach( \"mol/button/minor/minor.view.css\",\n \"[mol_button_minor] {\\n\\tcolor: var(--mol_theme_control);\\n}\\n\\n[mol_button_minor][disabled] {\\n\\tcolor: var(--mol_theme_shade);\\n}\\n\"\n) }","namespace $ {\n\texport class $mol_hotkey extends $mol_plugin {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * event *\n\t\t * \t^\n\t\t * \tkeydown?event <=> keydown?event\n\t\t * ```\n\t\t */\n\t\tevent() {\n\t\t\treturn {\n\t\t\t\t...super.event(),\n\t\t\t\tkeydown: (event?: any) => this.keydown(event)\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * key *\n\t\t * ```\n\t\t */\n\t\tkey() {\n\t\t\treturn {\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * mod_ctrl false\n\t\t * ```\n\t\t */\n\t\tmod_ctrl() {\n\t\t\treturn false\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * mod_alt false\n\t\t * ```\n\t\t */\n\t\tmod_alt() {\n\t\t\treturn false\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * mod_shift false\n\t\t * ```\n\t\t */\n\t\tmod_shift() {\n\t\t\treturn false\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * keydown?event null\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tkeydown(event?: any) {\n\t\t\tif ( event !== undefined ) return event as never\n\t\t\treturn null as any\n\t\t}\n\t}\n\t\n}\n\n","namespace $.$$ {\n\texport class $mol_hotkey extends $.$mol_hotkey {\n\n\t\tkey() {\n\t\t\treturn super.key() as {\n\t\t\t\t[ key in keyof typeof $mol_keyboard_code ]? : ( event : KeyboardEvent )=> void\n\t\t\t}\n\t\t}\n\t\t\n\t\tkeydown( event? : KeyboardEvent ) {\n\n\t\t\tif( !event ) return\n\t\t\tif( event.defaultPrevented ) return\n\n\t\t\tlet name = $mol_keyboard_code[ event.keyCode ] as keyof typeof $mol_keyboard_code\n\t\t\t\n\t\t\tif( this.mod_ctrl() !== event.ctrlKey ) return\n\t\t\tif( this.mod_alt() !== event.altKey ) return\n\t\t\tif( this.mod_shift() !== event.shiftKey ) return\n\t\t\t\n\t\t\tconst handle = this.key()[ name ]\n\t\t\tif( handle ) handle( event )\n\n\t\t}\n\t\t\n\t}\n}\n","namespace $ {\n\texport class $mol_nav extends $mol_plugin {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * cycle?val false\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tcycle(val?: any) {\n\t\t\tif ( val !== undefined ) return val as never\n\t\t\treturn false\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * mod_ctrl false\n\t\t * ```\n\t\t */\n\t\tmod_ctrl() {\n\t\t\treturn false\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * mod_shift false\n\t\t * ```\n\t\t */\n\t\tmod_shift() {\n\t\t\treturn false\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * mod_alt false\n\t\t * ```\n\t\t */\n\t\tmod_alt() {\n\t\t\treturn false\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * keys_x?val /\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tkeys_x(val?: any) {\n\t\t\tif ( val !== undefined ) return val as never\n\t\t\treturn [\n\t\t\t] as readonly any[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * keys_y?val /\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tkeys_y(val?: any) {\n\t\t\tif ( val !== undefined ) return val as never\n\t\t\treturn [\n\t\t\t] as readonly any[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * current_x?val null\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tcurrent_x(val?: any) {\n\t\t\tif ( val !== undefined ) return val as never\n\t\t\treturn null as any\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * current_y?val null\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tcurrent_y(val?: any) {\n\t\t\tif ( val !== undefined ) return val as never\n\t\t\treturn null as any\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * event_up?event null\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tevent_up(event?: any) {\n\t\t\tif ( event !== undefined ) return event as never\n\t\t\treturn null as any\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * event_down?event null\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tevent_down(event?: any) {\n\t\t\tif ( event !== undefined ) return event as never\n\t\t\treturn null as any\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * event_left?event null\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tevent_left(event?: any) {\n\t\t\tif ( event !== undefined ) return event as never\n\t\t\treturn null as any\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * event_right?event null\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tevent_right(event?: any) {\n\t\t\tif ( event !== undefined ) return event as never\n\t\t\treturn null as any\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * event *\n\t\t * \t^\n\t\t * \tkeydown?event <=> event_key?event\n\t\t * ```\n\t\t */\n\t\tevent() {\n\t\t\treturn {\n\t\t\t\t...super.event(),\n\t\t\t\tkeydown: (event?: any) => this.event_key(event)\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * event_key?event null\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tevent_key(event?: any) {\n\t\t\tif ( event !== undefined ) return event as never\n\t\t\treturn null as any\n\t\t}\n\t}\n\t\n}\n\n","namespace $.$$ {\n\texport class $mol_nav extends $.$mol_nav {\n\t\t\n\t\tevent_key( event? : KeyboardEvent ) {\n\t\t\tif( !event ) return event\n\t\t\tif( event.defaultPrevented ) return\n\t\t\t\n\t\t\tif( this.mod_ctrl() && !event.ctrlKey ) return\n\t\t\tif( this.mod_shift() && !event.shiftKey ) return\n\t\t\tif( this.mod_alt() && !event.altKey ) return\n\t\t\t\n\t\t\tswitch( event.keyCode ) {\n\t\t\t\tcase $mol_keyboard_code.up : return this.event_up( event )\n\t\t\t\tcase $mol_keyboard_code.down : return this.event_down( event )\n\t\t\t\tcase $mol_keyboard_code.left : return this.event_left( event )\n\t\t\t\tcase $mol_keyboard_code.right : return this.event_right( event )\n\t\t\t\tcase $mol_keyboard_code.pageUp : return this.event_up( event )\n\t\t\t\tcase $mol_keyboard_code.pageDown : return this.event_down( event )\n\t\t\t}\n\t\t}\n\t\t\n\t\tevent_up( event? : KeyboardEvent ) {\n\t\t\tif( !event ) return event\n\n\t\t\tconst keys = this.keys_y()\n\t\t\tif( keys.length < 1 ) return\n\t\t\t\n\t\t\tconst index_y = this.index_y();\n\t\t\t\n\t\t\tconst index_old = index_y === null ? 0 : index_y\n\t\t\tconst index_new = ( index_old + keys.length - 1 ) % keys.length\n\t\t\t\n\t\t\tevent.preventDefault()\n\t\t\t\n\t\t\tif( index_old === 0 && !this.cycle() ) return\n\t\t\t\n\t\t\tthis.current_y( this.keys_y()[ index_new ] )\n\t\t}\n\t\t\n\t\tevent_down( event? : KeyboardEvent ) {\n\t\t\tif( !event ) return event\n\n\t\t\tconst keys = this.keys_y()\n\t\t\tif( keys.length < 1 ) return\n\t\t\t\n\t\t\tconst index_y = this.index_y();\n\t\t\t\n\t\t\tconst index_old = index_y === null ? keys.length - 1 : index_y;\n\t\t\tconst index_new = ( index_old + 1 ) % keys.length\n\t\t\t\n\t\t\tevent.preventDefault()\n\t\t\t\n\t\t\tif( index_new === 0 && !this.cycle() ) return\n\t\t\t\n\t\t\tthis.current_y( this.keys_y()[ index_new ] )\n\t\t}\n\t\t\n\t\tevent_left( event? : KeyboardEvent ) {\n\t\t\tif( !event ) return event\n\n\t\t\tconst keys = this.keys_x()\n\t\t\tif( keys.length < 1 ) return\n\t\t\t\n\t\t\tconst index_x = this.index_x();\n\t\t\t\n\t\t\tconst index_old = index_x === null ? 0 : index_x\n\t\t\tconst index_new = ( index_old + keys.length - 1 ) % keys.length\n\t\t\t\n\t\t\tevent.preventDefault()\n\t\t\t\n\t\t\tif( index_old === 0 && !this.cycle() ) return\n\t\t\t\n\t\t\tthis.current_x( this.keys_x()[ index_new ] )\n\t\t}\n\t\t\n\t\tevent_right( event? : KeyboardEvent ) {\n\t\t\tif( !event ) return event\n\n\t\t\tconst keys = this.keys_x()\n\t\t\tif( keys.length < 1 ) return\n\t\t\t\n\t\t\tconst index_x = this.index_x();\n\t\t\t\n\t\t\tconst index_old = index_x === null ? keys.length - 1 : index_x\n\t\t\tconst index_new = ( index_old + 1 ) % keys.length\n\t\t\t\n\t\t\tevent.preventDefault()\n\t\t\t\n\t\t\tif( index_new === 0 && !this.cycle() ) return\n\t\t\t\n\t\t\tthis.current_x( this.keys_x()[ index_new ] )\n\t\t}\n\t\t\n\t\tindex_y() {\n\t\t\tlet index = this.keys_y().indexOf( this.current_y() )\n\t\t\tif( index < 0 ) return null\n\t\t\t\n\t\t\treturn index\n\t\t}\n\t\t\n\t\tindex_x() {\n\t\t\tlet index = this.keys_x().indexOf( this.current_x() )\n\t\t\tif( index < 0 ) return null\n\t\t\t\n\t\t\treturn index\n\t\t}\n\t\t\n\t}\n}\n",null,"namespace $ {\n\n\tconst decoders = {} as { [ key in $mol_charset_encoding ]?: TextDecoder }\n\n\texport function $mol_charset_decode(\n\t\tbuffer: BufferSource,\n\t\tencoding: $mol_charset_encoding = 'utf8',\n\t) {\n\t\t\n\t\tlet decoder = decoders[ encoding ]\n\t\tif( !decoder ) decoder = decoders[ encoding ] = new TextDecoder( encoding )\n\t\t\n\t\treturn decoder.decode( buffer )\n\t}\n\n}\n",null,"// @ts-ignore\r\nvar $node = $node || {}\r\n","namespace $ {\n\tconst TextEncoder = globalThis.TextEncoder ?? $node.util.TextEncoder\n\n\tconst encoder = new TextEncoder()\n\n\texport function $mol_charset_encode(value: string) {\n\t\treturn encoder.encode(value)\n\t}\n\n}\n","namespace $ {\n\n\texport type $mol_file_type = 'file' | 'dir' | 'link'\n\n\texport interface $mol_file_stat {\n\t\ttype: $mol_file_type\n\t\tsize: number\n\t\tatime: Date\n\t\tmtime: Date\n\t\tctime: Date\n\t}\n\n\texport class $mol_file_not_found extends Error {}\n\n\texport abstract class $mol_file extends $mol_object {\n\t\t\t\n\t\t@ $mol_mem_key\n\t\tstatic absolute( path : string ): $mol_file {\n\t\t\tthrow new Error( 'Not implemented yet' )\n\t\t}\n\n\t\tstatic relative( path : string ) : $mol_file {\n\t\t\tthrow new Error( 'Not implemented yet' )\n\t\t}\n\t\t\n\t\tstatic base = ''\n\t\t\n\t\tpath() {\n\t\t\treturn '.'\n\t\t}\n\t\t\n\t\tparent() {\n\t\t\treturn this.resolve( '..' )\n\t\t}\n\n\t\tabstract stat( next? : $mol_file_stat | null, virt?: 'virt' ): $mol_file_stat | null\n\n\t\treset(): void {\n\t\t\ttry {\n\t\t\t\tthis.stat( null )\n\t\t\t} catch( error: any ) {\n\t\t\t\tif (error instanceof $mol_file_not_found) return\n\t\t\t\treturn $mol_fail_hidden(error)\n\t\t\t}\n\t\t}\n\t\t\n\t\tversion() {\n\t\t\treturn this.stat()?.mtime.getTime().toString( 36 ).toUpperCase() ?? ''\n\t\t}\n\n\t\tabstract ensure(): void\n\n\t\twatcher() {\n\t\t\tconsole.warn('$mol_file_web.watcher() not implemented')\n\n\t\t\treturn {\n\t\t\t\tdestructor() {}\n\t\t\t}\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\texists( next? : boolean ) {\n\t\t\t\n\t\t\tlet exists = Boolean( this.stat() )\n\n\t\t\tif( next === undefined ) return exists\n\t\t\tif( next === exists ) return exists\n\n\t\t\tif( next ) this.parent().exists( true )\n\t\t\tthis.ensure()\n\t\t\tthis.reset()\n\t\t\t\n\t\t\treturn next\n\t\t}\n\t\t\n\t\ttype() {\n\t\t\treturn this.stat()?.type ?? ''\n\t\t}\n\t\t\n\t\tname() {\n\t\t\treturn this.path().replace( /^.*\\//, '' )\n\t\t}\n\t\t\n\t\text() {\n\t\t\tconst match = /((?:\\.\\w+)+)$/.exec( this.path() )\n\t\t\treturn match ? match[ 1 ].substring( 1 ) : ''\n\t\t}\n\n\t\tabstract buffer( next? : Uint8Array ): Uint8Array\n\n\t\t@ $mol_mem\n\t\ttext(next?: string, virt?: 'virt') {\n\t\t\tif( virt ) {\n\t\t\t\tconst now = new Date\n\t\t\t\tthis.stat( {\n\t\t\t\t\ttype: 'file',\n\t\t\t\t\tsize: 0,\n\t\t\t\t\tatime: now,\n\t\t\t\t\tmtime: now,\n\t\t\t\t\tctime: now,\t\t\t\n\t\t\t\t}, 'virt' )\n\t\t\t\treturn next!\n\t\t\t}\n\t\t\tif( next === undefined ) {\n\t\t\t\treturn $mol_charset_decode( this.buffer( undefined ) )\t\n\t\t\t} else {\n\t\t\t\tconst buffer = next === undefined ? undefined : $mol_charset_encode( next )\n\t\t\t\tthis.buffer( buffer )\n\t\t\t\treturn next\n\t\t\t}\n\t\t}\n\n\t\tabstract sub(): $mol_file[]\n\n\t\tabstract resolve(path: string): $mol_file\n\n\t\tabstract relate( base?: $mol_file ): string\n\t\t\n\t\tabstract append( next : Uint8Array | string ): void\n\t\t\n\t\tfind(\n\t\t\tinclude? : RegExp ,\n\t\t\texclude? : RegExp\n\t\t) {\n\t\t\tconst found = [] as $mol_file[]\n\t\t\tconst sub = this.sub()\n\n\t\t\tfor (const child of sub) {\n\t\t\t\tconst child_path = child.path()\n\n\t\t\t\tif( exclude && child_path.match( exclude ) ) continue\n\n\t\t\t\tif( !include || child_path.match( include ) ) found.push( child )\n\n\t\t\t\tif( child.type() === 'dir' ) {\n\t\t\t\t\tconst sub_child = child.find( include , exclude )\n\t\t\t\t\tfor (const child of sub_child) found.push(child)\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn found\n\t\t}\n\n\t\tsize() {\n\t\t\tswitch( this.type() ) {\n\t\t\t\tcase 'file': return this.stat()?.size ?? 0\n\t\t\t\tdefault: return 0\n\t\t\t}\n\t\t}\n\t\t\n\t}\n}\n","namespace $ {\n\t\n\texport function $mol_wire_sync< Host extends object >( obj: Host ) {\n\t\treturn new Proxy( obj, {\n\t\t\t\n\t\t\tget( obj, field ) {\n\t\t\t\t\n\t\t\t\tconst val = obj[ field ]\n\t\t\t\tif( typeof val !== 'function' ) return val\n\t\t\t\t\n\t\t\t\tconst temp = $mol_wire_task.getter( val )\n\t\t\t\treturn function $mol_wire_sync( this: Host, ... args: any[] ) {\n\t\t\t\t\tconst fiber = temp( obj, args )\n\t\t\t\t\treturn fiber.sync()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t},\n\t\t\t\n\t\t\tapply( obj, self, args ) {\n\t\t\t\tconst temp = $mol_wire_task.getter( obj as ( ... args: any[] )=> any )\n\t\t\t\tconst fiber = temp( self, args )\n\t\t\t\treturn fiber.sync()\n\t\t\t},\n\t\t\t\n\t\t} ) as any as (\n\t\t\tHost extends ( ... args: infer Args )=> infer Res\n\t\t\t\t? Res extends Promise< infer Res2 >\n\t\t\t\t\t? ( ... args: Args )=> Res2\n\t\t\t\t\t: Host\n\t\t\t\t: {}\n\t\t) & {\n\t\t\t[ key in keyof Host ]: Host[ key ] extends ( ... args: infer Args )=> Promise< infer Res >\n\t\t\t\t? ( ... args: Args )=> Res\n\t\t\t\t: Host[ key ]\n\t\t}\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_dom_parse(\n\t\ttext : string ,\n\t\ttype : DOMParserSupportedType = 'application/xhtml+xml' ,\n\t) {\n\n\t\tconst parser = new $mol_dom_context.DOMParser()\n\t\tconst doc = parser.parseFromString( text , type )\n\t\t\n\t\tconst error = doc.getElementsByTagName( 'parsererror' )\n\t\tif( error.length ) throw new Error( error[0].textContent! )\n\n\t\treturn doc\n\t}\n\n}\n","namespace $ {\n\n\texport class $mol_fetch_response extends $mol_object2 {\n\n\t\tconstructor( readonly native : Response ) {\n\t\t\tsuper()\n\t\t}\n\n\t\theaders() {\n\t\t\treturn this.native.headers\n\t\t}\n\n\t\tmime() {\n\t\t\treturn this.headers().get( 'content-type' )\n\t\t}\n\n\t\t@ $mol_action\n\t\tstream() {\n\t\t\treturn this.native.body\n\t\t}\n\n\t\t@ $mol_action\n\t\ttext() {\n\n\t\t\tconst buffer = this.buffer()\n\n\t\t\tconst native = this.native\n\t\t\tconst mime = native.headers.get( 'content-type' ) || ''\n\t\t\tconst [,charset] = /charset=(.*)/.exec( mime ) || [, 'utf-8']\n\t\t\t\n\t\t\tconst decoder = new TextDecoder( charset )\n\t\t\treturn decoder.decode( buffer )\n\n\t\t}\t\n\n\t\tjson() {\n\t\t\treturn $mol_wire_sync( this.native ).json() as unknown\n\t\t}\t\n\n\t\t@ $mol_action\n\t\tbuffer() {\n\t\t\treturn $mol_wire_sync( this.native ).arrayBuffer()\n\t\t}\n\n\t\t@ $mol_action\n\t\txml() {\n\t\t\treturn $mol_dom_parse( this.text() , 'application/xml' )\n\t\t}\n\n\t\t@ $mol_action\n\t\txhtml() {\n\t\t\treturn $mol_dom_parse( this.text() , 'application/xhtml+xml' )\n\t\t}\n\n\t\t@ $mol_action\n\t\thtml() {\n\t\t\treturn $mol_dom_parse( this.text() , 'text/html' )\n\t\t}\n\n\t}\n\n\texport class $mol_fetch extends $mol_object2 {\n\t\t\n\t\tstatic request( input : RequestInfo , init : RequestInit = {} ) {\n\t\t\tconst native = globalThis.fetch ?? $node['undici'].fetch\n\t\t\t\n\t\t\tconst controller = new AbortController()\n\t\t\tlet done = false\n\t\t\t\n\t\t\tconst promise = native( input , {\n\t\t\t\t... init,\n\t\t\t\tsignal: controller!.signal,\n\t\t\t} ).finally( ()=> {\n\t\t\t\tdone = true\n\t\t\t} )\n\t\t\t\n\t\t\treturn Object.assign( promise, {\n\t\t\t\tdestructor: ()=> {\n\t\t\t\t\t// Abort of done request breaks response parsing\n\t\t\t\t\tif( !done ) controller.abort()\n\t\t\t\t},\n\t\t\t} )\n\t\t\t\n\t\t}\n\n\t\t@ $mol_action\n\t\tstatic response( input: RequestInfo, init?: RequestInit ) {\n\n\t\t\tconst response = $mol_wire_sync( this ).request( input , init )\n\t\t\tif( Math.floor( response.status / 100 ) === 2 ) return new $mol_fetch_response( response )\n\t\t\t\n\t\t\tthrow new Error( response.statusText || `HTTP Error ${ response.status }` )\n\t\t}\n\n\t\t@ $mol_action\n\t\tstatic stream( input: RequestInfo, init?: RequestInit ) {\n\t\t\treturn this.response( input , init ).stream()\n\t\t}\n\n\t\t@ $mol_action\n\t\tstatic text( input: RequestInfo, init?: RequestInit ) {\n\t\t\treturn this.response( input , init ).text()\n\t\t}\t\n\n\t\t@ $mol_action\n\t\tstatic json( input: RequestInfo, init?: RequestInit ) {\n\t\t\treturn this.response( input , init ).json()\n\t\t}\t\n\n\t\t@ $mol_action\n\t\tstatic buffer( input: RequestInfo, init?: RequestInit ) {\n\t\t\treturn this.response( input , init ).buffer()\n\t\t}\t\n\n\t\t@ $mol_action\n\t\tstatic xml( input: RequestInfo, init?: RequestInit ) {\n\t\t\treturn this.response( input , init ).xml()\n\t\t}\n\n\t\t@ $mol_action\n\t\tstatic xhtml( input: RequestInfo, init?: RequestInit ) {\n\t\t\treturn this.response( input , init ).xhtml()\n\t\t}\n\n\t\t@ $mol_action\n\t\tstatic html( input: RequestInfo, init?: RequestInit ) {\n\t\t\treturn this.response( input , init ).html()\n\t\t}\n\n\t}\n\n}\n\n","namespace $ {\n\t\n\texport class $mol_file_web extends $mol_file {\n\n\t\t@ $mol_mem_key\n\t\tstatic absolute( path : string ) {\n\t\t\treturn this.make({\n\t\t\t\tpath : $mol_const( path )\n\t\t\t})\n\t\t}\n\n\t\tstatic relative( path : string ) {\n\t\t\treturn this.absolute( new URL( path , this.base ).toString() )\n\t\t}\n\n\t\tstatic base = $mol_dom_context.document\n\t\t\t? new URL( '.' , $mol_dom_context.document.currentScript!['src'] ).toString()\n\t\t\t: ''\n\t\t\n\t\t@ $mol_mem\n\t\tbuffer( next? : Uint8Array ) {\n\t\t\tif (next !== undefined) throw new Error(`Saving content not supported: ${this.path}`)\n\n\t\t\tconst response = $mol_fetch.response(this.path())\n\t\t\tif (response.native.status === 404) throw new $mol_file_not_found(`File not found: ${this.path()}`)\n\n\t\t\treturn new Uint8Array(response.buffer())\n\t\t}\n\n\t\t@ $mol_mem\n\t\tstat( next? : $mol_file_stat, virt?: 'virt' ) {\n\t\t\tlet stat = next\n\t\t\tif (next === undefined) {\n\t\t\t\tconst content = this.text()\n\t\t\t\t// @todo взять дату из хедеров фетча, когда file.web будет переписан на webdav\n\t\t\t\tconst ctime = new Date()\n\t\t\t\tstat = {\n\t\t\t\t\ttype: 'file',\n\t\t\t\t\tsize: content.length,\n\t\t\t\t\tctime,\n\t\t\t\t\tatime: ctime,\n\t\t\t\t\tmtime: ctime\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.parent().watcher()\n\t\t\t\n\t\t\treturn stat!\n\t\t}\n\n\t\tresolve( path : string ) {\n\t\t\tlet res = this.path() + '/' + path\n\t\t\t\n\t\t\twhile( true ) {\n\t\t\t\tlet prev = res\n\t\t\t\tres = res.replace( /\\/[^\\/.]+\\/\\.\\.\\// , '/' )\n\t\t\t\tif( prev === res ) break\n\t\t\t}\n\t\t\t\n\t\t\treturn ( this.constructor as typeof $mol_file_web ).absolute( res )\n\t\t}\n\n\t\tensure() {\n\t\t\tthrow new Error('$mol_file_web.ensure() not implemented')\n\t\t} \n\n\t\t@ $mol_mem\n\t\tsub() : $mol_file[] {\n\t\t\tthrow new Error('$mol_file_web.sub() not implemented')\n\t\t}\n\t\t\n\t\trelate( base = ( this.constructor as typeof $mol_file ).relative( '.' )): string {\n\t\t\tthrow new Error('$mol_file_web.relate() not implemented')\n\t\t}\n\t\t\n\t\tappend( next : Uint8Array | string ) {\n\t\t\tthrow new Error('$mol_file_web.append() not implemented')\n\t\t}\n\t}\n\n\t$.$mol_file = $mol_file_web\n}\n","namespace $ {\n\t\n\texport interface $mol_locale_dict {\n\t\t[ key : string ] : string\n\t}\n\t\n\texport class $mol_locale extends $mol_object {\n\t\t\n\t\t@ $mol_mem\n\t\tstatic lang_default() {\n\t\t\treturn 'en'\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tstatic lang( next? : string ) {\n\t\t\treturn this.$.$mol_state_local.value( 'locale' , next ) || $mol_dom_context.navigator.language.replace( /-.*/ , '' ) || this.lang_default()\n\t\t}\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic source( lang : string ) {\n\t\t\treturn JSON.parse( this.$.$mol_file.relative( `web.locale=${ lang }.json` ).text().toString() )\n\t\t}\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic texts( lang : string , next? : $mol_locale_dict ) : $mol_locale_dict {\n\t\t\tif( next ) return next\n\t\t\t\n\t\t\ttry {\n\t\t\t\treturn this.source( lang ).valueOf()\n\t\t\t} catch( error: any ) {\n\t\t\t\tif( error instanceof Promise ) $mol_fail_hidden( error )\n\t\t\t\tconst def = this.lang_default()\n\t\t\t\tif( lang === def ) throw error\n\t\t\t\treturn this.source( def )\n\t\t\t}\n\t\t}\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic text( key : string ) {\n\n\t\t\tfor( let lang of [ this.lang() , 'en' ] ) {\n\t\t\t\t\n\t\t\t\tconst text = this.texts( lang )[ key ]\n\t\t\t\tif( text ) return text\n\n\t\t\t\tthis.warn( key )\n\t\t\t}\n\t\t\t\t\t\t\n\t\t\treturn `<${ key }>`\n\t\t}\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic warn( key : string ) {\n\t\t\tconsole.warn( `Not translated to \"${ this.lang() }\": ${ key }` )\n\t\t\treturn null\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\texport class $mol_string extends $mol_view {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * dom_name \\input\n\t\t * ```\n\t\t */\n\t\tdom_name() {\n\t\t\treturn \"input\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * enabled true\n\t\t * ```\n\t\t */\n\t\tenabled() {\n\t\t\treturn true\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * minimal_height 40\n\t\t * ```\n\t\t */\n\t\tminimal_height() {\n\t\t\treturn 40\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * autocomplete false\n\t\t * ```\n\t\t */\n\t\tautocomplete() {\n\t\t\treturn false\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * selection?val /number\n\t\t * \t0\n\t\t * \t0\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tselection(val?: any) {\n\t\t\tif ( val !== undefined ) return val as never\n\t\t\treturn [\n\t\t\t\t0,\n\t\t\t\t0\n\t\t\t] as readonly number[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * auto / <= selection_watcher\n\t\t * ```\n\t\t */\n\t\tauto() {\n\t\t\treturn [\n\t\t\t\tthis.selection_watcher()\n\t\t\t] as readonly any[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * field *\n\t\t * \t^\n\t\t * \tdisabled <= disabled\n\t\t * \tvalue <= value_changed?val\n\t\t * \tplaceholder <= hint_visible\n\t\t * \tspellcheck <= spellcheck\n\t\t * \tautocomplete <= autocomplete_native\n\t\t * \tselectionEnd <= selection_end\n\t\t * \tselectionStart <= selection_start\n\t\t * \tinputMode <= keyboard\n\t\t * ```\n\t\t */\n\t\tfield() {\n\t\t\treturn {\n\t\t\t\t...super.field(),\n\t\t\t\tdisabled: this.disabled(),\n\t\t\t\tvalue: this.value_changed(),\n\t\t\t\tplaceholder: this.hint_visible(),\n\t\t\t\tspellcheck: this.spellcheck(),\n\t\t\t\tautocomplete: this.autocomplete_native(),\n\t\t\t\tselectionEnd: this.selection_end(),\n\t\t\t\tselectionStart: this.selection_start(),\n\t\t\t\tinputMode: this.keyboard()\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * attr *\n\t\t * \t^\n\t\t * \tmaxlength <= length_max\n\t\t * \ttype <= type?val\n\t\t * ```\n\t\t */\n\t\tattr() {\n\t\t\treturn {\n\t\t\t\t...super.attr(),\n\t\t\t\tmaxlength: this.length_max(),\n\t\t\t\ttype: this.type()\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * event *\n\t\t * \t^\n\t\t * \tinput?event <=> event_change?event\n\t\t * ```\n\t\t */\n\t\tevent() {\n\t\t\treturn {\n\t\t\t\t...super.event(),\n\t\t\t\tinput: (event?: any) => this.event_change(event)\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * plugins / <= Submit\n\t\t * ```\n\t\t */\n\t\tplugins() {\n\t\t\treturn [\n\t\t\t\tthis.Submit()\n\t\t\t] as readonly any[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * selection_watcher null\n\t\t * ```\n\t\t */\n\t\tselection_watcher() {\n\t\t\treturn null as any\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * disabled false\n\t\t * ```\n\t\t */\n\t\tdisabled() {\n\t\t\treturn false\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * value?val \\\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tvalue(val?: any) {\n\t\t\tif ( val !== undefined ) return val as never\n\t\t\treturn \"\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * value_changed?val <=> value?val\n\t\t * ```\n\t\t */\n\t\tvalue_changed(val?: any) {\n\t\t\treturn this.value(val)\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * hint \\\n\t\t * ```\n\t\t */\n\t\thint() {\n\t\t\treturn \"\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * hint_visible <= hint\n\t\t * ```\n\t\t */\n\t\thint_visible() {\n\t\t\treturn this.hint()\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * spellcheck true\n\t\t * ```\n\t\t */\n\t\tspellcheck() {\n\t\t\treturn true\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * autocomplete_native \\\n\t\t * ```\n\t\t */\n\t\tautocomplete_native() {\n\t\t\treturn \"\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * selection_end 0\n\t\t * ```\n\t\t */\n\t\tselection_end() {\n\t\t\treturn 0\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * selection_start 0\n\t\t * ```\n\t\t */\n\t\tselection_start() {\n\t\t\treturn 0\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * keyboard \\text\n\t\t * ```\n\t\t */\n\t\tkeyboard() {\n\t\t\treturn \"text\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * length_max +Infinity\n\t\t * ```\n\t\t */\n\t\tlength_max() {\n\t\t\treturn +Infinity\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * type?val \\text\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\ttype(val?: any) {\n\t\t\tif ( val !== undefined ) return val as never\n\t\t\treturn \"text\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * event_change?event null\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tevent_change(event?: any) {\n\t\t\tif ( event !== undefined ) return event as never\n\t\t\treturn null as any\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * submit?event null\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tsubmit(event?: any) {\n\t\t\tif ( event !== undefined ) return event as never\n\t\t\treturn null as any\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Submit $mol_hotkey key * enter?event <=> submit?event\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tSubmit() {\n\t\t\tconst obj = new this.$.$mol_hotkey()\n\t\t\t\n\t\t\tobj.key = () => ({\n\t\t\t\tenter: (event?: any) => this.submit(event)\n\t\t\t})\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t}\n\t\n}\n\n","namespace $ { $mol_style_attach( \"mol/string/string.view.css\",\n \"[mol_string] {\\n\\tbox-sizing: border-box;\\n\\toutline-offset: 0;\\n\\tborder: none;\\n\\tborder-radius: var(--mol_gap_round);\\n\\twhite-space: pre-line;\\n\\toverflow: hidden;\\n\\ttext-overflow: ellipsis;\\n\\tpadding: var(--mol_gap_text);\\n\\ttext-align: left;\\n\\tposition: relative;\\n\\tfont: inherit;\\n\\tflex: 1 1 auto;\\n\\tbackground: transparent;\\n\\tmin-width: 0;\\n\\tcolor: inherit;\\n\\tbackground: var(--mol_theme_field);\\n}\\n\\n[mol_string]:disabled:not(:placeholder-shown) {\\n\\tbackground-color: transparent;\\n\\tcolor: var(--mol_theme_text);\\n}\\n\\n[mol_string]:where(:not(:disabled)) {\\n\\tbox-shadow: inset 0 0 0 1px var(--mol_theme_line);\\n}\\n\\n[mol_string]:where(:not(:disabled)):hover {\\n\\tbox-shadow: inset 0 0 0 2px var(--mol_theme_line);\\n\\tz-index: var(--mol_layer_hover);\\n}\\n\\n[mol_string]:focus {\\n\\toutline: none;\\n\\tz-index: var(--mol_layer_focus);\\n\\tcolor: var(--mol_theme_text);\\n\\tbox-shadow: inset 0 0 0 1px var(--mol_theme_focus);\\n}\\n\\n[mol_string]::placeholder {\\n\\tcolor: var(--mol_theme_shade);\\n}\\n\\n[mol_string]::-ms-clear {\\n\\tdisplay: none;\\n}\\n\"\n) }","namespace $.$$ {\n\texport class $mol_string extends $.$mol_string {\n\t\t\n\t\tevent_change( next? : Event ) {\n\t\t\tif( !next ) return\n\t\t\tconst el = next.target as HTMLInputElement\n\t\t\tconst from = el.selectionStart\n\t\t\tconst to = el.selectionEnd\n\t\t\tel.value = this.value_changed( el.value )\n\t\t\tel.selectionEnd = to\n\t\t\tel.selectionStart = from\n\t\t\tthis.selection_change( next )\n\t\t}\n\n\t\thint_visible() {\n\t\t\treturn ( this.enabled() ? this.hint() : '' ) || ' '\n\t\t}\n\n\t\tdisabled() {\n\t\t\treturn !this.enabled()\n\t\t}\n\n\t\tautocomplete_native() {\n\t\t\treturn this.autocomplete() ? 'on' : 'off'\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tselection_watcher() {\n\t\t\treturn new $mol_dom_listener(\n\t\t\t\tthis.$.$mol_dom_context.document,\n\t\t\t\t'selectionchange',\n\t\t\t\t$mol_wire_async( event => this.selection_change( event ) ),\n\t\t\t)\n\t\t}\n\t\t\n\t\tselection_change( event: Event ) {\n\t\t\t\n\t\t\tconst el = this.dom_node() as HTMLInputElement\n\t\t\tif( el !== this.$.$mol_dom_context.document.activeElement ) return\n\t\t\t\n\t\t\tconst [ from, to ] = this.selection([\n\t\t\t\tel.selectionStart!,\n\t\t\t\tel.selectionEnd!,\n\t\t\t])\n\t\t\t\n\t\t\tel.selectionEnd = to\n\t\t\tel.selectionStart = from\n\t\t\t\n\t\t}\n\t\t\n\t\tselection_start() {\n\t\t\treturn this.selection()[0]\n\t\t}\n\n\t\tselection_end() {\n\t\t\treturn this.selection()[1]\n\t\t}\n\n\t}\n}\n","namespace $ {\n\texport class $mol_svg extends $mol_view {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * dom_name \\svg\n\t\t * ```\n\t\t */\n\t\tdom_name() {\n\t\t\treturn \"svg\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * dom_name_space \\http://www.w3.org/2000/svg\n\t\t * ```\n\t\t */\n\t\tdom_name_space() {\n\t\t\treturn \"http://www.w3.org/2000/svg\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * font_size 16\n\t\t * ```\n\t\t */\n\t\tfont_size() {\n\t\t\treturn 16\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * font_family \\\n\t\t * ```\n\t\t */\n\t\tfont_family() {\n\t\t\treturn \"\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * style_size *\n\t\t * ```\n\t\t */\n\t\tstyle_size() {\n\t\t\treturn {\n\t\t\t}\n\t\t}\n\t}\n\t\n}\n\n","namespace $ {\n\n\texport class $mol_after_timeout extends $mol_object2 {\n\n\t\tid : any\n\n\t\tconstructor(\n\t\t\tpublic delay : number ,\n\t\t\tpublic task : ()=> void ,\n\t\t) {\n\t\t\tsuper()\n\t\t\tthis.id = setTimeout( task , delay )\n\t\t}\n\n\t\tdestructor() {\n\t\t\tclearTimeout( this.id )\n\t\t}\n\n\t}\n\t\n}\n","namespace $ {\n\t\n\texport class $mol_state_time extends $mol_object {\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic task( precision: number, reset?: null ): $mol_after_timeout | $mol_after_frame {\n\t\t\t\n\t\t\tif( precision ) {\n\t\t\t\treturn new $mol_after_timeout( precision, ()=> this.task( precision, null ) )\n\t\t\t} else {\n\t\t\t\treturn new $mol_after_frame( ()=> this.task( precision, null ) )\n\t\t\t}\n\t\t\n\t\t}\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic now( precision: number ) {\n\t\t\tthis.task( precision )\n\t\t\treturn Date.now()\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $.$$ {\n\texport class $mol_svg extends $.$mol_svg {\n\t\t@$mol_mem\n\t\tcomputed_style() {\n\t\t\tconst win = this.$.$mol_dom_context\n\t\t\tconst style = win.getComputedStyle(this.dom_node())\n\n\t\t\tif(!style['font-size']) $mol_state_time.now( 0 )\n\n\t\t\treturn style\n\t\t}\n\n\t\t@$mol_mem\n\t\tfont_size(): number {\n\t\t\treturn parseInt(this.computed_style()['font-size']) || 16\n\t\t}\n\n\t\t@$mol_mem\n\t\tfont_family() {\n\t\t\treturn this.computed_style()['font-family']\n\t\t}\n\n\t}\n}\n","namespace $ {\n\texport class $mol_svg_root extends $mol_svg {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * dom_name \\svg\n\t\t * ```\n\t\t */\n\t\tdom_name() {\n\t\t\treturn \"svg\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * attr *\n\t\t * \t^\n\t\t * \tviewBox <= view_box\n\t\t * \tpreserveAspectRatio <= aspect\n\t\t * ```\n\t\t */\n\t\tattr() {\n\t\t\treturn {\n\t\t\t\t...super.attr(),\n\t\t\t\tviewBox: this.view_box(),\n\t\t\t\tpreserveAspectRatio: this.aspect()\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * view_box \\0 0 100 100\n\t\t * ```\n\t\t */\n\t\tview_box() {\n\t\t\treturn \"0 0 100 100\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * aspect \\xMidYMid\n\t\t * ```\n\t\t */\n\t\taspect() {\n\t\t\treturn \"xMidYMid\"\n\t\t}\n\t}\n\t\n}\n\n","namespace $ { $mol_style_attach( \"mol/svg/root/root.view.css\",\n \"[mol_svg_root] {\\n\\toverflow: hidden;\\n}\\n\"\n) }","namespace $ {\n\texport class $mol_svg_path extends $mol_svg {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * dom_name \\path\n\t\t * ```\n\t\t */\n\t\tdom_name() {\n\t\t\treturn \"path\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * attr *\n\t\t * \t^\n\t\t * \td <= geometry\n\t\t * ```\n\t\t */\n\t\tattr() {\n\t\t\treturn {\n\t\t\t\t...super.attr(),\n\t\t\t\td: this.geometry()\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * geometry \\\n\t\t * ```\n\t\t */\n\t\tgeometry() {\n\t\t\treturn \"\"\n\t\t}\n\t}\n\t\n}\n\n","namespace $ {\n\texport class $mol_icon extends $mol_svg_root {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * view_box \\0 0 24 24\n\t\t * ```\n\t\t */\n\t\tview_box() {\n\t\t\treturn \"0 0 24 24\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * minimal_width 16\n\t\t * ```\n\t\t */\n\t\tminimal_width() {\n\t\t\treturn 16\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * minimal_height 16\n\t\t * ```\n\t\t */\n\t\tminimal_height() {\n\t\t\treturn 16\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * sub / <= Path\n\t\t * ```\n\t\t */\n\t\tsub() {\n\t\t\treturn [\n\t\t\t\tthis.Path()\n\t\t\t] as readonly any[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * path \\\n\t\t * ```\n\t\t */\n\t\tpath() {\n\t\t\treturn \"\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Path $mol_svg_path geometry <= path\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tPath() {\n\t\t\tconst obj = new this.$.$mol_svg_path()\n\t\t\t\n\t\t\tobj.geometry = () => this.path()\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t}\n\t\n}\n\n","namespace $ { $mol_style_attach( \"mol/icon/icon.view.css\",\n \"[mol_icon] {\\n\\tfill: currentColor;\\n\\tstroke: none;\\n\\twidth: 1rem;\\n\\theight: 1rem;\\n\\tflex: 0 0 auto;\\n\\tvertical-align: top;\\n\\tmargin: .25rem 0;\\n\\tdisplay: inline-block;\\n\\tfilter: drop-shadow(0px 1px 1px var(--mol_theme_back));\\n\\ttransform-origin: center;\\n}\\n\\n[mol_icon_path] {\\n\\ttransform-origin: center;\\n}\\n\"\n) }","namespace $ {\n\texport class $mol_icon_cross extends $mol_icon {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * path \\M19 6.41L17.59 5L12 10.59L6.41 5L5 6.41L10.59 12L5 17.59L6.41 19L12 13.41L17.59 19L19 17.59L13.41 12L19 6.41Z\n\t\t * ```\n\t\t */\n\t\tpath() {\n\t\t\treturn \"M19 6.41L17.59 5L12 10.59L6.41 5L5 6.41L10.59 12L5 17.59L6.41 19L12 13.41L17.59 19L19 17.59L13.41 12L19 6.41Z\"\n\t\t}\n\t}\n\t\n}\n\n","namespace $ {\n\texport class $mol_list extends $mol_view {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * render_visible_only true\n\t\t * ```\n\t\t */\n\t\trender_visible_only() {\n\t\t\treturn true\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * render_over 0\n\t\t * ```\n\t\t */\n\t\trender_over() {\n\t\t\treturn 0\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * sub <= rows\n\t\t * ```\n\t\t */\n\t\tsub() {\n\t\t\treturn this.rows()\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Empty $mol_view\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tEmpty() {\n\t\t\tconst obj = new this.$.$mol_view()\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Gap_before $mol_view style * paddingTop <= gap_before\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tGap_before() {\n\t\t\tconst obj = new this.$.$mol_view()\n\t\t\t\n\t\t\tobj.style = () => ({\n\t\t\t\tpaddingTop: this.gap_before()\n\t\t\t})\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Gap_after $mol_view style * paddingTop <= gap_after\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tGap_after() {\n\t\t\tconst obj = new this.$.$mol_view()\n\t\t\t\n\t\t\tobj.style = () => ({\n\t\t\t\tpaddingTop: this.gap_after()\n\t\t\t})\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * view_window /\n\t\t * \t0\n\t\t * \t0\n\t\t * ```\n\t\t */\n\t\tview_window() {\n\t\t\treturn [\n\t\t\t\t0,\n\t\t\t\t0\n\t\t\t] as readonly any[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * rows /$mol_view\n\t\t * ```\n\t\t */\n\t\trows() {\n\t\t\treturn [\n\t\t\t] as readonly $mol_view[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * gap_before 0\n\t\t * ```\n\t\t */\n\t\tgap_before() {\n\t\t\treturn 0\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * gap_after 0\n\t\t * ```\n\t\t */\n\t\tgap_after() {\n\t\t\treturn 0\n\t\t}\n\t}\n\t\n}\n\n","namespace $ {\n\n\tlet cache = null as null | boolean\n\texport function $mol_support_css_overflow_anchor( this: $ ) {\n\t\treturn cache ?? (\n\t\t\tcache = (\n\t\t\t\t!/Gecko\\//.test( navigator.userAgent ) // FF doesn't anchow while scroll animates\n\t\t\t\t&& this.$mol_dom_context.CSS?.supports( 'overflow-anchor:auto' )\n\t\t\t) ?? false\n\t\t)\n\t}\n\n}\n","namespace $ {\n\texport let $mol_mem_cached = $mol_wire_probe\n}\n","namespace $ { $mol_style_attach( \"mol/list/list.view.css\",\n \"[mol_list] {\\n\\twill-change: contents;\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tflex-shrink: 0;\\n\\tmax-width: 100%;\\n\\t/* display: flex;\\n\\talign-items: stretch;\\n\\talign-content: stretch; */\\n\\ttransition: none;\\n\\tmin-height: .5rem;\\n}\\n\\n[mol_list_gap_before] ,\\n[mol_list_gap_after] {\\n\\tdisplay: block !important;\\n\\tflex: none;\\n\\ttransition: none;\\n\\toverflow-anchor: none;\\n}\\n\"\n) }","namespace $.$$ {\n\n\texport class $mol_list extends $.$mol_list {\n\t\t\n\t\t@ $mol_mem\n\t\tsub() {\n\t\t\tconst rows = this.rows()\n\t\t\treturn ( rows.length === 0 ) ? [ this.Empty() ] : rows\n\t\t}\n\n\t\trender_visible_only() {\n\t\t\treturn this.$.$mol_support_css_overflow_anchor()\n\t\t}\n\n\t\t@ $mol_mem\n\t\tview_window( next?: [ number , number ] ) : [ number , number ] {\n\t\t\t\n\t\t\tconst kids = this.sub()\n\t\t\t\n\t\t\tif( kids.length < 3 ) return [ 0 , kids.length ]\n\t\t\tif( this.$.$mol_print.active() ) return [ 0 , kids.length ]\n\t\t\t\n\t\t\tconst rect = this.view_rect()\n\t\t\tif( next ) return next\n\t\t\t\n\t\t\tlet [ min , max ] = $mol_mem_cached( ()=> this.view_window() ) ?? [ 0 , 0 ]\n\n\t\t\tlet max2 = max = Math.min( max , kids.length )\n\t\t\tlet min2 = min = Math.max( 0 , Math.min( min , max - 1 ) )\n\t\t\t\n\t\t\tconst anchoring = this.render_visible_only()\n\t\t\tconst window_height = this.$.$mol_window.size().height + 40\n\t\t\tconst over = Math.ceil( window_height * this.render_over() )\n\t\t\tconst limit_top = -over\n\t\t\tconst limit_bottom = window_height + over\n\n\t\t\tconst gap_before = $mol_mem_cached( ()=> this.gap_before() ) ?? 0\n\t\t\tconst gap_after = $mol_mem_cached( ()=> this.gap_after() ) ?? 0\n\n\t\t\tlet top = Math.ceil( rect?.top ?? 0 ) + gap_before\n\t\t\tlet bottom = Math.ceil( rect?.bottom ?? 0 ) - gap_after\n\n\t\t\t// change nothing when already covers all limits\n\t\t\tif( top <= limit_top && bottom >= limit_bottom ) {\n\t\t\t\treturn [ min2 , max2 ]\n\t\t\t}\n\n\t\t\t// jumps when fully over limits\n\t\t\tif( anchoring && (( bottom < limit_top )||( top > limit_bottom )) ) {\n\n\t\t\t\tmin = 0\n\t\t\t\ttop = Math.ceil( rect?.top ?? 0 )\n\t\t\t\t\n\t\t\t\twhile( min < ( kids.length - 1 ) ) {\n\t\t\t\t\t\n\t\t\t\t\tconst height = kids[ min ].minimal_height()\n\t\t\t\t\tif( top + height >= limit_top ) break\n\t\t\t\t\t\n\t\t\t\t\ttop += height\n\t\t\t\t\t++ min\n\n\t\t\t\t}\n\n\t\t\t\tmin2 = min\n\t\t\t\tmax2 = max = min\n\t\t\t\tbottom = top\n\n\t\t\t}\n\n\t\t\tlet top2 = top\n\t\t\tlet bottom2 = bottom\n\n\t\t\t// force recalc min when overlapse top limit\n\t\t\tif( anchoring && ( top <= limit_top ) && ( bottom2 < limit_bottom ) ) {\n\t\t\t\tmin2 = Math.max( 0, max - 1 )\n\t\t\t\ttop2 = bottom\n\t\t\t}\n\n\t\t\t// force recalc max when overlapse bottom limit\n\t\t\tif( ( bottom >= limit_bottom ) && ( top2 >= limit_top ) ) {\n\t\t\t\tmax2 = Math.min( min + 1, kids.length )\n\t\t\t\tbottom2 = top\n\t\t\t}\n\n\t\t\t// extend max to cover bottom limit\n\t\t\twhile( bottom2 < limit_bottom && max2 < kids.length ) {\n\t\t\t\tbottom2 += kids[ max2 ].minimal_height()\n\t\t\t\t++ max2\n\t\t\t}\n\n\t\t\t// extend min to cover top limit\n\t\t\twhile( anchoring && (( top2 >= limit_top )&&( min2 > 0 )) ) {\n\t\t\t\t-- min2\n\t\t\t\ttop2 -= kids[ min2 ].minimal_height()\n\t\t\t}\n\n\t\t\treturn [ min2 , max2 ]\n\t\t}\n\n\t\t@ $mol_mem\n\t\tgap_before() {\n\t\t\tconst skipped = this.sub().slice( 0 , this.view_window()[0] )\n\t\t\treturn Math.max( 0 , skipped.reduce( ( sum , view )=> sum + view.minimal_height() , 0 ) )\n\t\t}\n\n\t\t@ $mol_mem\n\t\tgap_after() {\n\t\t\tconst skipped = this.sub().slice( this.view_window()[1] )\n\t\t\treturn Math.max( 0 , skipped.reduce( ( sum , view )=> sum + view.minimal_height() , 0 ) )\n\t\t}\n\n\t\t@ $mol_mem\n\t\tsub_visible() {\n\t\t\treturn [\n\t\t\t\t... this.gap_before() ? [ this.Gap_before() ] : [],\n\t\t\t\t... this.sub().slice( ... this.view_window() ),\n\t\t\t\t... this.gap_after() ? [ this.Gap_after() ] : [],\n\t\t\t]\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tminimal_height() {\n\n\t\t\treturn this.sub().reduce( ( sum , view )=> {\n\n\t\t\t\ttry {\n\t\t\t\t\treturn sum + view.minimal_height() \n\t\t\t\t} catch( error: any ) {\n\t\t\t\t\t$mol_fail_log( error )\n\t\t\t\t\treturn sum\n\t\t\t\t}\n\n\t\t\t} , 0 )\n\n\t\t}\n\n\t\tforce_render(\n\t\t\tpath : Set< $mol_view >,\n\t\t) {\n\n\t\t\tconst kids = this.rows()\n\n\t\t\tconst index = kids.findIndex( item => path.has( item ) )\n\n\t\t\tif( index >= 0 ) {\n\t\t\t\tconst win = this.view_window()\n\t\t\t\tif( index < win[0] || index >= win[1] ) {\n\t\t\t\t\tthis.view_window([ this.render_visible_only() ? index : 0, index + 1 ])\n\t\t\t\t}\n\t\t\t\t( kids[ index ] as $mol_view ).force_render( path )\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t}\n}\n","namespace $ {\n\texport class $mol_paragraph extends $mol_view {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * line_height 24\n\t\t * ```\n\t\t */\n\t\tline_height() {\n\t\t\treturn 24\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * letter_width 7\n\t\t * ```\n\t\t */\n\t\tletter_width() {\n\t\t\treturn 7\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * width_limit +Infinity\n\t\t * ```\n\t\t */\n\t\twidth_limit() {\n\t\t\treturn +Infinity\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * sub / <= title\n\t\t * ```\n\t\t */\n\t\tsub() {\n\t\t\treturn [\n\t\t\t\tthis.title()\n\t\t\t] as readonly any[]\n\t\t}\n\t}\n\t\n}\n\n","namespace $ { $mol_style_attach( \"mol/paragraph/paragraph.view.css\",\n \":where([mol_paragraph]) {\\n\\tmargin: 0;\\n\\tmax-width: 100%;\\n}\\n\"\n) }","namespace $.$$ {\n\n\texport class $mol_paragraph extends $.$mol_paragraph {\n\n\t\t@ $mol_mem\n\t\tmaximal_width() {\n\n\t\t\tlet width = 0\n\t\t\tconst letter = this.letter_width()\n\t\t\t\n\t\t\tfor( const kid of this.sub() ) {\n\t\t\t\t\n\t\t\t\tif( !kid ) continue\n\t\t\t\t\n\t\t\t\tif( kid instanceof $mol_view ) {\n\t\t\t\t\twidth += kid.maximal_width()\n\t\t\t\t} else if( typeof kid !== 'object' ) {\n\t\t\t\t\twidth += String( kid ).length * letter\n\t\t\t\t}\n\n\t\t\t}\n\t\t\t\n\t\t\treturn width\n\n\t\t}\n\n\t\twidth_limit() {\n\t\t\treturn this.$.$mol_window.size().width\n\t\t}\n\t\t\n\t\tminimal_width() {\n\t\t\treturn this.letter_width()\n\t\t}\n\n\t\t@ $mol_mem\n\t\trow_width() {\n\t\t\treturn Math.max( Math.min( this.width_limit() , this.maximal_width() ) , this.letter_width() )\n\t\t}\n\n\t\t@ $mol_mem\n\t\tminimal_height() {\n\t\t\treturn Math.max( 1 , Math.ceil( this.maximal_width() / this.row_width() ) ) * this.line_height()\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\texport class $mol_dimmer extends $mol_paragraph {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * haystack \\\n\t\t * ```\n\t\t */\n\t\thaystack() {\n\t\t\treturn \"\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * needle \\\n\t\t * ```\n\t\t */\n\t\tneedle() {\n\t\t\treturn \"\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * sub <= parts\n\t\t * ```\n\t\t */\n\t\tsub() {\n\t\t\treturn this.parts()\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Low* $mol_paragraph sub / <= string*\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem_key\n\t\tLow(id: any) {\n\t\t\tconst obj = new this.$.$mol_paragraph()\n\t\t\t\n\t\t\tobj.sub = () => [\n\t\t\t\tthis.string(id)\n\t\t\t] as readonly any[]\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * High* $mol_paragraph sub / <= string*\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem_key\n\t\tHigh(id: any) {\n\t\t\tconst obj = new this.$.$mol_paragraph()\n\t\t\t\n\t\t\tobj.sub = () => [\n\t\t\t\tthis.string(id)\n\t\t\t] as readonly any[]\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * parts /$mol_view_content\n\t\t * ```\n\t\t */\n\t\tparts() {\n\t\t\treturn [\n\t\t\t] as readonly $mol_view_content[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * string* \\\n\t\t * ```\n\t\t */\n\t\tstring(id: any) {\n\t\t\treturn \"\"\n\t\t}\n\t}\n\t\n}\n\n",null,null,null,null,"interface String {\n\t\n\tmatch< RE extends RegExp >( regexp: RE ): ReturnType<\n\t\tRE[ typeof Symbol.match ]\n\t>\n\t\n matchAll< RE extends RegExp >( regexp: RE ): ReturnType<\n\t\tRE[ typeof Symbol.matchAll ]\n\t>\n\t\n}\n\nnamespace $ {\n\t\n\ttype Groups_to_params = {\n\t\t[P in keyof T]?: T[P] | boolean | undefined;\n\t};\t\n\n\texport type $mol_regexp_source =\n\t| number\n\t| string\n\t| RegExp\n\t| { [ key in string ] : $mol_regexp_source }\n\t| readonly[ $mol_regexp_source , ... $mol_regexp_source[] ]\n\n\texport type $mol_regexp_groups< Source extends $mol_regexp_source >\n\t\n\t\t= Source extends number\n\t\t? {}\n\t\t\n\t\t: Source extends string\n\t\t? {}\n\t\t\n\t\t: Source extends $mol_regexp_source[]\n\t\t? $mol_type_merge< $mol_type_intersect< {\n\t\t\t[ key in Extract< keyof Source , number > ] : $mol_regexp_groups< Source[ key ] >\n\t\t}[ Extract< keyof Source , number > ] > >\n\t\t\n\t\t: Source extends RegExp\n\t\t? Record< string, string > extends NonNullable< NonNullable< ReturnType< Source['exec'] > >[ 'groups' ] >\n\t\t\t? {}\n\t\t\t: NonNullable< NonNullable< ReturnType< Source['exec'] > >[ 'groups' ] >\n\t\t\n\t\t: Source extends { readonly [ key in string ] : $mol_regexp_source }\n\t\t? $mol_type_merge< $mol_type_intersect< {\n\t\t\t[ key in keyof Source ] :\n\t\t\t\t$mol_type_merge<\n\t\t\t\t\t& $mol_type_override<\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\treadonly [ k in Extract< keyof Source , string > ]: string\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\treadonly [ k in key ]:\n\t\t\t\t\t\t\t\tSource[ key ] extends string\n\t\t\t\t\t\t\t\t\t? Source[ key ]\n\t\t\t\t\t\t\t\t\t: string\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t& $mol_regexp_groups< Source[ key ] >\n\t\t\t\t>\n\t\t}[ keyof Source ] > >\n\n\t\t: never\n\t\t\n\t/** Type safe reguar expression builder */\n\texport class $mol_regexp< Groups extends Record< string , string > > extends RegExp {\n\t\t\n\t\t/** Prefer to use $mol_regexp.from */\n\t\tconstructor( source : string , flags : string = 'gsu' , readonly groups : ( Extract< keyof Groups , string > )[] = [] ) {\n\t\t\tsuper( source , flags )\n\t\t}\n\t\t\n\t\t*[Symbol.matchAll] (str:string): IterableIterator< RegExpMatchArray & $mol_type_override< RegExpMatchArray, { groups?: { [ key in keyof Groups ] : string } } > > {\n\t\t\tconst index = this.lastIndex\n\t\t\tthis.lastIndex = 0\n\t\t\ttry {\n\t\t\t\twhile ( this.lastIndex < str.length ) {\n\t\t\t\t\tconst found = this.exec(str)\n\t\t\t\t\tif( !found ) break\n\t\t\t\t\tyield found\n\t\t\t\t}\n\t\t\t} finally {\n\t\t\t\tthis.lastIndex = index\n\t\t\t}\n\t\t}\n\t\t\n\t\t/** Parses input and returns found capture groups or null */\n\t\t[ Symbol.match ]( str : string ): null | RegExpMatchArray {\n\t\t\tconst res = [ ... this[Symbol.matchAll]( str ) ].filter( r => r.groups ).map( r => r[0] )\n\t\t\tif( !res.length ) return null\n\t\t\treturn res as RegExpMatchArray\n\t\t}\n\t\t\n\t\t/** Splits string by regexp edges */\n\t\t[ Symbol.split ]( str : string ): string[] {\n\t\t\t\n\t\t\tconst res = [] as string[]\n\t\t\tlet token_last = null\n\t\t\t\n\t\t\tfor( let token of this[Symbol.matchAll]( str ) ) {\n\t\t\t\tif( token.groups && ( token_last ? token_last.groups : true ) ) res.push( '' )\n\t\t\t\tres.push( token[0] )\n\t\t\t\ttoken_last = token\n\t\t\t}\n\t\t\t\n\t\t\tif( !res.length ) res.push( '' )\n\t\t\t\n\t\t\treturn res\n\t\t}\n\t\t\n\t\ttest( str : string ): boolean {\n\t\t\treturn Boolean( str.match( this) )\n\t\t}\n\t\t\n\t\texec( str : string ): RegExpExecArray & $mol_type_override< RegExpExecArray , { groups?: { [ key in keyof Groups ] : string } } > | null {\n\t\t\t\n\t\t\tconst from = this.lastIndex\n\t\t\tif( from >= str.length ) return null\n\t\t\t\n\t\t\tconst res = super.exec( str )\n\t\t\tif( res === null ) {\n\t\t\t\tthis.lastIndex = str.length\n\t\t\t\tif( !str ) return null\n\t\t\t\treturn Object.assign( [ str.slice( from ) ], {\n\t\t\t\t\tindex: from,\n\t\t\t\t\tinput: str,\n\t\t\t\t} ) as any\n\t\t\t}\n\n\t\t\tif( from === this.lastIndex ) {\n\t\t\t\t$mol_fail( new Error( 'Captured empty substring' ) )\n\t\t\t}\n\n\t\t\ttype Token = { [ key in keyof Groups ] : string } & { [ key : number ] : string }\n\t\t\tconst groups = {} as Token\n\t\t\t\n\t\t\tconst skipped = str.slice( from , this.lastIndex - res[0].length )\n\t\t\tif( skipped ) {\n\t\t\t\tthis.lastIndex = this.lastIndex - res[0].length\n\t\t\t\treturn Object.assign( [ skipped ], {\n\t\t\t\t\tindex: from,\n\t\t\t\t\tinput: res.input,\n\t\t\t\t} ) as any\n\t\t\t}\n\t\t\t\n\t\t\tfor( let i = 0 ; i < this.groups.length ; ++i ) {\n\t\t\t\tconst group = this.groups[ i ]\n\t\t\t\tgroups[ group ] = groups[ group ] || res[ i + 1 ] || '' as any\n\t\t\t}\n\n\t\t\treturn Object.assign( res, { groups } )\n\t\t}\n\t\t\n\t\tgenerate(\n\t\t\tparams: Groups_to_params< Groups >\n\t\t): string | null {\n\t\t\treturn null\n\t\t}\n\t\t\n\t\tget native() {\n\t\t\treturn new RegExp( this.source, this.flags )\n\t\t}\n\n\t\t/** Makes regexp that non-greedy repeats this pattern from min to max count */\n\t\tstatic repeat<\n\t\t\tSource extends $mol_regexp_source\n\t\t>(\n\t\t\tsource : Source ,\n\t\t\tmin = 0 ,\n\t\t\tmax = Number.POSITIVE_INFINITY ,\n\t\t) : $mol_regexp< $mol_regexp_groups< Source > > {\n\t\n\t\t\tconst regexp = $mol_regexp.from( source )\n\t\t\tconst upper = Number.isFinite( max ) ? max : ''\n\t\t\t\n\t\t\tconst str = `(?:${ regexp.source }){${ min },${ upper }}?`\n\t\t\tconst regexp2 = new $mol_regexp( str , regexp.flags , regexp.groups )\n\t\t\t\n\t\t\tregexp2.generate = params => {\n\t\t\t\tconst res = regexp.generate( params )\n\t\t\t\tif( res ) return res\n\t\t\t\tif( min > 0 ) return res\n\t\t\t\treturn ''\n\t\t\t}\n\t\n\t\t\treturn regexp2\n\t\n\t\t}\n\n\t\t/** Makes regexp that greedy repeats this pattern from min to max count */\n\t\tstatic repeat_greedy<\n\t\t\tSource extends $mol_regexp_source\n\t\t>(\n\t\t\tsource : Source ,\n\t\t\tmin = 0 ,\n\t\t\tmax = Number.POSITIVE_INFINITY ,\n\t\t) : $mol_regexp< $mol_regexp_groups< Source > > {\n\t\n\t\t\tconst regexp = $mol_regexp.from( source )\n\t\t\tconst upper = Number.isFinite( max ) ? max : ''\n\t\t\t\n\t\t\tconst str = `(?:${ regexp.source }){${ min },${ upper }}`\n\t\t\tconst regexp2 = new $mol_regexp( str , regexp.flags , regexp.groups )\n\t\t\t\n\t\t\tregexp2.generate = params => {\n\t\t\t\tconst res = regexp.generate( params )\n\t\t\t\tif( res ) return res\n\t\t\t\tif( min > 0 ) return res\n\t\t\t\treturn ''\n\t\t\t}\n\t\n\t\t\treturn regexp2\n\t\t}\n\n\t\t/** Makes regexp that match any of options */\n\t\tstatic vary<\n\t\t\tSources extends readonly $mol_regexp_source[]\n\t\t>(\n\t\t\tsources : Sources ,\n\t\t) {\n\t\t\t\n\t\t\tconst groups = [] as string[]\n\t\t\t\n\t\t\tconst chunks = sources.map( source => {\n\n\t\t\t\tconst regexp = $mol_regexp.from( source )\n\t\t\t\tgroups.push( ... regexp.groups )\n\t\t\t\t\n\t\t\t\treturn regexp.source\n\n\t\t\t} ) as any as readonly[ $mol_regexp_source , ... $mol_regexp_source[] ]\n\t\t\t\n\t\t\treturn new $mol_regexp< $mol_regexp_groups< Sources[number] > >(\n\t\t\t\t`(?:${ chunks.join('|') })` ,\n\t\t\t\t'' ,\n\t\t\t\tgroups as any[] ,\n\t\t\t)\n\t\t\t\n\t\t}\n\n\t\t/** Makes regexp that allow absent of this pattern */\n\t\tstatic optional<\n\t\t\tSource extends $mol_regexp_source\n\t\t>( source : Source ) {\n\t\t\treturn $mol_regexp.repeat_greedy( source , 0 , 1 )\n\t\t}\n\n\t\t/** Makes regexp that look ahead for pattern */\n\t\tstatic force_after( source : $mol_regexp_source ) {\n\n\t\t\tconst regexp = $mol_regexp.from( source )\n\t\t\t\n\t\t\treturn new $mol_regexp(\n\t\t\t\t`(?=${ regexp.source })` ,\n\t\t\t\tregexp.flags ,\n\t\t\t\tregexp.groups ,\n\t\t\t)\n\n\t\t}\n\n\t\t/** Makes regexp that look ahead for pattern */\n\t\tstatic forbid_after( source : $mol_regexp_source ) {\n\n\t\t\tconst regexp = $mol_regexp.from( source )\n\t\t\t\n\t\t\treturn new $mol_regexp(\n\t\t\t\t`(?!${ regexp.source })` ,\n\t\t\t\tregexp.flags ,\n\t\t\t\tregexp.groups ,\n\t\t\t)\n\n\t\t}\n\n\t\t/** Converts some js values to regexp */\n\t\tstatic from<\n\t\t\tSource extends $mol_regexp_source\n\t\t>(\n\t\t\tsource : Source ,\n\t\t\t{ ignoreCase , multiline } : Partial< Pick< RegExp , 'ignoreCase' | 'multiline' > > = {\n\t\t\t\tignoreCase : false ,\n\t\t\t\tmultiline : false ,\n\t\t\t} ,\n\t\t) : $mol_regexp< $mol_regexp_groups< Source > > {\n\n\t\t\tlet flags = 'gsu'\n\t\t\tif( multiline ) flags += 'm'\n\t\t\tif( ignoreCase ) flags += 'i'\n\n\t\t\tif( typeof source === 'number' ) {\n\n\t\t\t\tconst src = `\\\\u{${ source.toString(16) }}`\n\t\t\t\tconst regexp = new $mol_regexp< $mol_regexp_groups< Source > >( src , flags )\n\t\t\t\tregexp.generate = ()=> src\n\t\t\t\treturn regexp\n\n\t\t\t} if( typeof source === 'string' ) {\n\n\t\t\t\tconst src = source.replace( /[.*+?^${}()|[\\]\\\\]/g , '\\\\$&' ) \n\t\t\t\tconst regexp = new $mol_regexp< $mol_regexp_groups< Source > >( src , flags )\n\t\t\t\tregexp.generate = ()=> source\n\t\t\t\treturn regexp\n\n\t\t\t} else if( source instanceof $mol_regexp ) {\n\t\t\t\t\n\t\t\t\tconst regexp = new $mol_regexp( source.source, flags, source.groups )\n\t\t\t\tregexp.generate = params => source.generate( params )\n\t\t\t\treturn regexp\n\t\t\t\t\n\t\t\t} if( source instanceof RegExp ) {\n\n\n\t\t\t\tconst test = new RegExp( '|' + source.source )\n\t\t\t\tconst groups = Array.from(\n\t\t\t\t\t{ length : test.exec('')!.length - 1 } ,\n\t\t\t\t\t( _ , i )=> String( i + 1 ) ,\n\t\t\t\t)\n\n\t\t\t\tconst regexp = new $mol_regexp< $mol_regexp_groups< Source > >(\n\t\t\t\t\tsource.source ,\n\t\t\t\t\tsource.flags ,\n\t\t\t\t\tgroups as any ,\n\t\t\t\t)\n\t\t\t\t\n\t\t\t\tregexp.generate = ()=> ''\n\n\t\t\t\treturn regexp\n\n\t\t\t} if( Array.isArray( source ) ) {\n\n\t\t\t\tconst patterns = source.map( src => Array.isArray( src )\n\t\t\t\t\t? $mol_regexp.optional( src as any )\n\t\t\t\t\t: $mol_regexp.from( src )\n\t\t\t\t)\n\t\t\t\t\n\t\t\t\tconst chunks = patterns.map( pattern => pattern.source )\n\t\t\t\t\n\t\t\t\tconst groups = [] as ( Extract< keyof $mol_regexp_groups< Source > , string > )[]\n\n\t\t\t\tlet index = 0\n\t\t\n\t\t\t\tfor( const pattern of patterns ) {\n\t\t\t\t\t\n\t\t\t\t\tfor( let group of pattern.groups ) {\n\t\t\t\t\t\tif( Number( group ) >= 0 ) {\n\t\t\t\t\t\t\tgroups.push( String( index ++ ) as any )\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tgroups.push( group )\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tconst regexp = new $mol_regexp( chunks.join( '' ) , flags , groups )\n\t\t\t\t\n\t\t\t\tregexp.generate = params => {\n\t\t\t\t\tlet res = ''\n\t\t\t\t\tfor( const pattern of patterns ) {\n\t\t\t\t\t\tlet sub = pattern.generate( params )\n\t\t\t\t\t\tif( sub === null ) return ''\n\t\t\t\t\t\tres += sub\n\t\t\t\t\t}\n\t\t\t\t\treturn res\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\treturn regexp\n\t\t\n\t\t\t} else {\n\n\t\t\t\tconst groups = [] as string[]\n\n\t\t\t\tconst chunks = Object.keys( source ).map( name => {\n\n\t\t\t\t\tgroups.push( name )\n\n\t\t\t\t\tconst regexp = $mol_regexp.from( source[ name ] )\n\t\t\t\t\tgroups.push( ... regexp.groups )\n\t\t\t\t\t\n\t\t\t\t\treturn `(${regexp.source})`\n\n\t\t\t\t} ) as any as readonly[ $mol_regexp_source , ... $mol_regexp_source[] ]\n\n\t\t\t\tconst regexp = new $mol_regexp< $mol_regexp_groups< Source > >(\n\t\t\t\t\t`(?:${ chunks.join('|') })` ,\n\t\t\t\t\tflags ,\n\t\t\t\t\tgroups as any[] ,\n\t\t\t\t)\n\t\t\t\t\n\t\t\t\tconst validator = new RegExp( '^' + regexp.source + '$', flags )\n\t\t\t\tregexp.generate = params => {\n\t\t\t\t\t\n\t\t\t\t\tfor( let option in source ) {\n\t\t\t\t\t\t\n\t\t\t\t\t\tif( option in params ) {\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tif( typeof params[ option as any ] === 'boolean' ) {\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tif( !params[ option as any ] ) continue\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tconst str = String( params[ option as any ] )\n\t\t\t\t\t\t\t\tif( str.match( validator ) ) return str\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t$mol_fail( new Error( `Wrong param: ${option}=${str}` ) )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tif( typeof source[ option as any ] !== 'object' ) continue\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t\tconst res = $mol_regexp.from( source[ option as any ] ).generate( params )\n\t\t\t\t\t\tif( res ) return res\n\t\t\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\treturn null\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\treturn regexp\n\n\t\t\t}\n\t\n\t\t}\n\n\t\t/** Makes regexp which includes only unicode category */\n\t\tstatic unicode_only( ... category: $mol_unicode_category ) {\n\t\t\treturn new $mol_regexp(\n\t\t\t\t`\\\\p{${ category.join( '=' ) }}`\n\t\t\t)\n\t\t}\n\n\t\t/** Makes regexp which excludes unicode category */\n\t\tstatic unicode_except( ... category: $mol_unicode_category ) {\n\t\t\treturn new $mol_regexp(\n\t\t\t\t`\\\\P{${ category.join( '=' ) }}`\n\t\t\t)\n\t\t}\n\n\t\tstatic char_range(\n\t\t\tfrom: number,\n\t\t\tto: number,\n\t\t): $mol_regexp<{}> {\n\t\t\treturn new $mol_regexp(\n\t\t\t\t`${ $mol_regexp.from( from ).source }-${ $mol_regexp.from( to ).source }`\n\t\t\t)\n\t\t}\n\n\t\tstatic char_only(\n\t\t\t... allowed: readonly [ $mol_regexp_source, ... $mol_regexp_source[] ]\n\t\t): $mol_regexp<{}> {\n\t\t\tconst regexp = allowed.map( f => $mol_regexp.from( f ).source ).join('')\n\t\t\treturn new $mol_regexp( `[${ regexp }]` )\n\t\t}\n\n\t\tstatic char_except(\n\t\t\t... forbidden: readonly [ $mol_regexp_source, ... $mol_regexp_source[] ]\n\t\t): $mol_regexp<{}> {\n\t\t\tconst regexp = forbidden.map( f => $mol_regexp.from( f ).source ).join('')\n\t\t\treturn new $mol_regexp( `[^${ regexp }]` )\n\t\t}\n\t\t\n\t\tstatic decimal_only = $mol_regexp.from( /\\d/gsu )\n\t\tstatic decimal_except = $mol_regexp.from( /\\D/gsu )\n\t\t\n\t\tstatic latin_only = $mol_regexp.from( /\\w/gsu )\n\t\tstatic latin_except = $mol_regexp.from( /\\W/gsu )\n\t\t\n\t\tstatic space_only = $mol_regexp.from( /\\s/gsu )\n\t\tstatic space_except = $mol_regexp.from( /\\S/gsu )\n\t\t\n\t\tstatic word_break_only = $mol_regexp.from( /\\b/gsu )\n\t\tstatic word_break_except = $mol_regexp.from( /\\B/gsu )\n\t\t\n\t\tstatic tab = $mol_regexp.from( /\\t/gsu )\n\t\tstatic slash_back = $mol_regexp.from( /\\\\/gsu )\n\t\tstatic nul = $mol_regexp.from( /\\0/gsu )\n\t\t\n\t\tstatic char_any = $mol_regexp.from( /./gsu )\n\t\tstatic begin = $mol_regexp.from( /^/gsu )\n\t\tstatic end = $mol_regexp.from( /$/gsu )\n\t\tstatic or = $mol_regexp.from( /|/gsu )\n\t\t\n\t\tstatic line_end = $mol_regexp.from({\n\t\t\twin_end: [ [ '\\r' ], '\\n' ],\n\t\t\tmac_end: '\\r',\n\t\t})\n\t\t\n\t}\n\t\n}\n","namespace $ { $mol_style_attach( \"mol/dimmer/dimmer.view.css\",\n \"[mol_dimmer] {\\n\\tdisplay: block;\\n\\tmax-width: 100%;\\n}\\n\\n[mol_dimmer_low] {\\n\\tdisplay: inline;\\n\\topacity: 0.8;\\n}\\n\\n[mol_dimmer_high] {\\n\\tdisplay: inline;\\n\\tcolor: var(--mol_theme_focus);\\n\\ttext-shadow: 0 0;\\n}\\n\"\n) }","namespace $.$$ {\n\texport class $mol_dimmer extends $.$mol_dimmer {\n\t\t\n\t\tparts() {\n\t\t\tconst needle = this.needle()\n\t\t\tif( needle.length < 2 ) return [ this.haystack() ]\n\t\t\t\n\t\t\tlet chunks : any[] = []\n\t\t\tlet strings = this.strings()\n\t\t\t\n\t\t\tfor( let index = 0 ; index < strings.length ; index++ ) {\n\t\t\t\tif( strings[ index ] === '' ) continue\n\t\t\t\t\n\t\t\t\tchunks.push( ( index % 2 ) ? this.High( index ) : this.Low( index ) )\n\t\t\t}\n\t\t\t\n\t\t\treturn chunks\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tstrings() {\n\t\t\t\n\t\t\tconst options = this.needle().split( /\\s+/g ).filter( Boolean )\n\t\t\tif( !options.length ) return [ this.haystack() ]\n\t\t\t\n\t\t\tconst variants = { ... options } as Record< number, string >\n\t\t\tconst regexp = $mol_regexp.from( { needle: variants } , { ignoreCase: true } )\n\t\t\t\n\t\t\treturn this.haystack().split( regexp )\n\t\t}\n\t\t\n\t\tstring( index: number ) {\n\t\t\treturn this.strings()[ index ]\n\t\t}\n\t\t\n\t\t*view_find(\n\t\t\tcheck: ( path : $mol_view, text?: string )=> boolean,\n\t\t\tpath = [] as $mol_view[],\n\t\t): Generator< $mol_view[] > {\n\n\t\t\tif( check( this, this.haystack() ) ) {\n\t\t\t\tyield [ ... path, this ]\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t}\n}\n","namespace $ {\n\texport class $mol_search extends $mol_pop {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * clear?event null\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tclear(event?: any) {\n\t\t\tif ( event !== undefined ) return event as never\n\t\t\treturn null as any\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * query?val \\\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tquery(val?: any) {\n\t\t\tif ( val !== undefined ) return val as never\n\t\t\treturn \"\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * suggests /string\n\t\t * ```\n\t\t */\n\t\tsuggests() {\n\t\t\treturn [\n\t\t\t] as readonly string[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * plugins /$mol_plugin\n\t\t * \t^\n\t\t * \t<= Hotkey\n\t\t * \t<= Nav\n\t\t * ```\n\t\t */\n\t\tplugins() {\n\t\t\treturn [\n\t\t\t\t...super.plugins(),\n\t\t\t\tthis.Hotkey(),\n\t\t\t\tthis.Nav()\n\t\t\t] as readonly $mol_plugin[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * showed?val <=> suggests_showed?val\n\t\t * ```\n\t\t */\n\t\tshowed(val?: any) {\n\t\t\treturn this.suggests_showed(val)\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * align_hor \\right\n\t\t * ```\n\t\t */\n\t\talign_hor() {\n\t\t\treturn \"right\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Anchor $mol_view sub <= anchor_content\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tAnchor() {\n\t\t\tconst obj = new this.$.$mol_view()\n\t\t\t\n\t\t\tobj.sub = () => this.anchor_content()\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * bubble_content /$mol_view_content <= Menu\n\t\t * ```\n\t\t */\n\t\tbubble_content() {\n\t\t\treturn [\n\t\t\t\tthis.Menu()\n\t\t\t] as readonly $mol_view_content[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Suggest* $mol_button_minor\n\t\t * \tclick?event <=> suggest_select*?event\n\t\t * \tsub <= suggest_content*\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem_key\n\t\tSuggest(id: any) {\n\t\t\tconst obj = new this.$.$mol_button_minor()\n\t\t\t\n\t\t\tobj.click = (event?: any) => this.suggest_select(id, event)\n\t\t\tobj.sub = () => this.suggest_content(id)\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Hotkey $mol_hotkey key * escape?val <=> clear?val\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tHotkey() {\n\t\t\tconst obj = new this.$.$mol_hotkey()\n\t\t\t\n\t\t\tobj.key = () => ({\n\t\t\t\tescape: (val?: any) => this.clear(val)\n\t\t\t})\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * nav_components /$mol_view\n\t\t * ```\n\t\t */\n\t\tnav_components() {\n\t\t\treturn [\n\t\t\t] as readonly $mol_view[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * nav_focused?component null\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tnav_focused(component?: any) {\n\t\t\tif ( component !== undefined ) return component as never\n\t\t\treturn null as any\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Nav $mol_nav\n\t\t * \tkeys_y <= nav_components\n\t\t * \tcurrent_y?component <=> nav_focused?component\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tNav() {\n\t\t\tconst obj = new this.$.$mol_nav()\n\t\t\t\n\t\t\tobj.keys_y = () => this.nav_components()\n\t\t\tobj.current_y = (component?: any) => this.nav_focused(component)\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * suggests_showed?val false\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tsuggests_showed(val?: any) {\n\t\t\tif ( val !== undefined ) return val as never\n\t\t\treturn false\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * hint @ \\Search...\n\t\t * ```\n\t\t */\n\t\thint() {\n\t\t\treturn this.$.$mol_locale.text( '$mol_search_hint' )\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * submit?event null\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tsubmit(event?: any) {\n\t\t\tif ( event !== undefined ) return event as never\n\t\t\treturn null as any\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * enabled true\n\t\t * ```\n\t\t */\n\t\tenabled() {\n\t\t\treturn true\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * bring\n\t\t * ```\n\t\t */\n\t\tbring() {\n\t\t\treturn this.Query().bring()\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Query $mol_string\n\t\t * \tvalue?val <=> query?val\n\t\t * \thint <= hint\n\t\t * \tsubmit?event <=> submit?event\n\t\t * \tenabled <= enabled\n\t\t * \tbring => bring\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tQuery() {\n\t\t\tconst obj = new this.$.$mol_string()\n\t\t\t\n\t\t\tobj.value = (val?: any) => this.query(val)\n\t\t\tobj.hint = () => this.hint()\n\t\t\tobj.submit = (event?: any) => this.submit(event)\n\t\t\tobj.enabled = () => this.enabled()\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Clear_icon $mol_icon_cross\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tClear_icon() {\n\t\t\tconst obj = new this.$.$mol_icon_cross()\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Clear $mol_button_minor\n\t\t * \thint @ \\Clear\n\t\t * \tclick?event <=> clear?event\n\t\t * \tsub / <= Clear_icon\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tClear() {\n\t\t\tconst obj = new this.$.$mol_button_minor()\n\t\t\t\n\t\t\tobj.hint = () => this.$.$mol_locale.text( '$mol_search_Clear_hint' )\n\t\t\tobj.click = (event?: any) => this.clear(event)\n\t\t\tobj.sub = () => [\n\t\t\t\tthis.Clear_icon()\n\t\t\t] as readonly any[]\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * anchor_content /\n\t\t * \t<= Query\n\t\t * \t<= Clear\n\t\t * ```\n\t\t */\n\t\tanchor_content() {\n\t\t\treturn [\n\t\t\t\tthis.Query(),\n\t\t\t\tthis.Clear()\n\t\t\t] as readonly any[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * menu_items /$mol_view\n\t\t * ```\n\t\t */\n\t\tmenu_items() {\n\t\t\treturn [\n\t\t\t] as readonly $mol_view[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Menu $mol_list rows <= menu_items\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tMenu() {\n\t\t\tconst obj = new this.$.$mol_list()\n\t\t\t\n\t\t\tobj.rows = () => this.menu_items()\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * suggest_select*?event null\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem_key\n\t\tsuggest_select(id: any, event?: any) {\n\t\t\tif ( event !== undefined ) return event as never\n\t\t\treturn null as any\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * suggest_label* \\\n\t\t * ```\n\t\t */\n\t\tsuggest_label(id: any) {\n\t\t\treturn \"\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Suggest_label* $mol_dimmer\n\t\t * \thaystack <= suggest_label*\n\t\t * \tneedle <= query?val\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem_key\n\t\tSuggest_label(id: any) {\n\t\t\tconst obj = new this.$.$mol_dimmer()\n\t\t\t\n\t\t\tobj.haystack = () => this.suggest_label(id)\n\t\t\tobj.needle = () => this.query()\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * suggest_content* /$mol_view_content <= Suggest_label*\n\t\t * ```\n\t\t */\n\t\tsuggest_content(id: any) {\n\t\t\treturn [\n\t\t\t\tthis.Suggest_label(id)\n\t\t\t] as readonly $mol_view_content[]\n\t\t}\n\t}\n\t\n}\n\n","namespace $ {\n\n\t/** @deprecated Use $mol_wire_fiber..plan */\n\texport function $mol_fiber_defer< Value = void >( calculate : ()=> Value ) {\n\t\tconst host = {}\n\t\tconst fiber = new $mol_wire_task( calculate.name, calculate, host, [] )\n\t\tfiber.plan()\n\t\treturn fiber\n\t}\n\t\n\t/** @deprecated Use $mol_wire_async */\n\texport function $mol_fiber_root<\n\t\tCalculate extends ( this : This , ... args : any[] )=> Result ,\n\t\tResult = void ,\n\t\tThis = void ,\n\t>( calculate : Calculate ) {\n\t\t\n\t\tconst wrapper = function( this: This, ... args : any[] ) {\n\t\t\tconst fiber = new $mol_wire_task( this + '.' + calculate.name, calculate, this, args )\n\t\t\treturn fiber.async()\n\t\t} as any as Calculate\n\t\t\n\t\twrapper[ Symbol.toStringTag ] = calculate.name\n\t\t\n\t\treturn wrapper\n\t}\n\n\t/** @deprecated Use $mol_wire_sync */\n\texport function $mol_fiber_sync< Args extends any[] , Value = void , This = void >(\n\t\trequest : ( this : This , ... args : Args )=> PromiseLike< Value >\n\t) : ( ... args : Args )=> Value {\n\t\tthrow new Error( 'Use $mol_wire_sync instead' )\n\t}\n\t\t\n\t/** @deprecated Use $mol_wire_fiber.sync */\n\texport async function $mol_fiber_warp() {\n\t\t$mol_wire_fiber.sync()\n\t}\n\t\n\t/** @deprecated Don't use that */\n\texport class $mol_fiber_solid extends $mol_wrapper {\n\n\t\tstatic func< This , Args extends any[] , Result >( task : ( this : This , ... args : Args )=> Result ) {\n\t\t\treturn task\n\t\t}\n\n\t}\n\t\n\texport class $mol_fiber {\n\t\t/** @deprecated Use $mol_wire_method */\n\t\tstatic method = $mol_action\n\t}\n\n}\n","namespace $ { $mol_style_attach( \"mol/search/search.view.css\",\n \"[mol_search] {\\n\\talign-self: flex-start;\\n\\tflex: auto;\\n}\\n\\n[mol_search_anchor] {\\n\\tflex: 1 1 auto;\\n}\\n\\n[mol_search_query] {\\n\\tflex-grow: 1;\\n}\\n\\n[mol_search_menu] {\\n\\tmin-height: .75rem;\\n\\tdisplay: flex;\\n}\\n\\n[mol_search_suggest] {\\n\\ttext-align: left;\\n}\\n\\n[mol_search_suggest_label_high] {\\n\\tcolor: var(--mol_theme_shade);\\n\\ttext-shadow: none;\\n}\\n\"\n) }","namespace $.$$ {\n\t\n\texport class $mol_search extends $.$mol_search {\n\t\t\n\t\t@ $mol_mem\n\t\tanchor_content() {\n\t\t\treturn [\n\t\t\t\tthis.Query(),\n\t\t\t\t... this.query() ? [ this.Clear() ] : [],\n\t\t\t]\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tsuggests_showed( next = true ) {\n\t\t\t\n\t\t\tthis.query()\n\t\t\t\n\t\t\tif( !this.focused() ) return false\n\n\t\t\treturn next\n\t\t}\n\n\t\tsuggest_selected( next? : string ) {\n\t\t\tif( next === undefined ) return\n\t\t\t\n\t\t\tthis.query( next )\n\t\t\t\n\t\t\t$mol_fiber_defer( ()=> {\n\t\t\t\tthis.Query().focused( true )\n\t\t\t} )\n\t\t\t\n\t\t}\n\t\t\n\t\tnav_components() {\n\t\t\treturn [\n\t\t\t\tthis.Query(),\n\t\t\t\t... this.menu_items(),\n\t\t\t]\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tnav_focused( component? : $mol_view ) {\n\t\t\t\n\t\t\tif( !this.focused() ) return null\n\t\t\t\n\t\t\tif( component == null ) {\n\t\t\t\t\n\t\t\t\tfor( let comp of this.nav_components() ) {\n\t\t\t\t\tif( comp && comp.focused() ) return comp\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\treturn null\n\t\t\t}\n\t\t\t\n\t\t\tif( this.suggests_showed() ) {\n\t\t\t\tthis.ensure_visible( component, \"center\" )\n\t\t\t\tcomponent.focused( true )\n\t\t\t}\n\t\t\t\n\t\t\treturn component\n\t\t}\n\t\t\n\t\tsuggest_label( key: string ) {\n\t\t\treturn key\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tmenu_items() {\n\t\t\treturn this.suggests().map( ( suggest : string ) => this.Suggest( suggest ) )\n\t\t}\n\t\t\n\t\tsuggest_select( id : string , event? : MouseEvent ) {\n\t\t\tthis.query( id )\n\t\t\tthis.Query().selection([ id.length, id.length ])\n\t\t\tthis.Query().focused( true )\n\t\t}\n\t\t\n\t\tclear( event? : Event ) {\n\t\t\tthis.query( '' )\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\texport class $mol_check extends $mol_button_minor {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * attr *\n\t\t * \t^\n\t\t * \tmol_check_checked <= checked?val\n\t\t * \taria-checked <= checked?val\n\t\t * \trole \\checkbox\n\t\t * ```\n\t\t */\n\t\tattr() {\n\t\t\treturn {\n\t\t\t\t...super.attr(),\n\t\t\t\tmol_check_checked: this.checked(),\n\t\t\t\t\"aria-checked\": this.checked(),\n\t\t\t\trole: \"checkbox\"\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * sub /$mol_view_content\n\t\t * \t<= Icon\n\t\t * \t<= label\n\t\t * ```\n\t\t */\n\t\tsub() {\n\t\t\treturn [\n\t\t\t\tthis.Icon(),\n\t\t\t\tthis.label()\n\t\t\t] as readonly $mol_view_content[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * checked?val false\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tchecked(val?: any) {\n\t\t\tif ( val !== undefined ) return val as never\n\t\t\treturn false\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Icon null\n\t\t * ```\n\t\t */\n\t\tIcon() {\n\t\t\treturn null as any\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * title \\\n\t\t * ```\n\t\t */\n\t\ttitle() {\n\t\t\treturn \"\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Title $mol_view sub / <= title\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tTitle() {\n\t\t\tconst obj = new this.$.$mol_view()\n\t\t\t\n\t\t\tobj.sub = () => [\n\t\t\t\tthis.title()\n\t\t\t] as readonly any[]\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * label / <= Title\n\t\t * ```\n\t\t */\n\t\tlabel() {\n\t\t\treturn [\n\t\t\t\tthis.Title()\n\t\t\t] as readonly any[]\n\t\t}\n\t}\n\t\n}\n\n","namespace $ { $mol_style_attach( \"mol/check/check.css\",\n \"[mol_check] {\\n\\tflex: 0 0 auto;\\n\\tjustify-content: flex-start;\\n\\talign-content: center;\\n\\talign-items: flex-start;\\n\\tborder: none;\\n\\tfont-weight: inherit;\\n\\tbox-shadow: none;\\n\\ttext-align: left;\\n\\tdisplay: inline-flex;\\n\\tflex-wrap: nowrap;\\n}\\n\\n[mol_check_title] {\\n\\tflex-shrink: 1;\\n}\\n\\n[mol_check_checked] {\\n\\tcolor: var(--mol_theme_current);\\n}\\n\"\n) }","namespace $.$$ {\n\texport class $mol_check extends $.$mol_check {\n\n\t\tclick( next? : Event ) {\n\t\t\tif( next?.defaultPrevented ) return\n\t\t\tthis.checked( !this.checked() )\n\t\t\tif( next ) next.preventDefault()\n\t\t}\n\n\t\tsub() {\n\t\t\treturn [\n\t\t\t\t... $mol_maybe( this.Icon() ) ,\n\t\t\t\t... this.label() ,\n\t\t\t] as readonly $mol_view_content[]\n\t\t}\n\n\t\tlabel() {\n\t\t\treturn this.title() ? super.label() : []\n\t\t}\n\n\t}\n}\n","namespace $ {\n\texport class $mol_check_icon extends $mol_check {\n\t}\n\t\n}\n\n","namespace $ { $mol_style_attach( \"mol/check/icon/icon.view.css\",\n \"\"\n) }","namespace $ {\n\texport class $mol_icon_brightness_6 extends $mol_icon {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * path \\M12,18V6C15.31,6 18,8.69 18,12C18,15.31 15.31,18 12,18M20,15.31L23.31,12L20,8.69V4H15.31L12,0.69L8.69,4H4V8.69L0.69,12L4,15.31V20H8.69L12,23.31L15.31,20H20V15.31Z\n\t\t * ```\n\t\t */\n\t\tpath() {\n\t\t\treturn \"M12,18V6C15.31,6 18,8.69 18,12C18,15.31 15.31,18 12,18M20,15.31L23.31,12L20,8.69V4H15.31L12,0.69L8.69,4H4V8.69L0.69,12L4,15.31V20H8.69L12,23.31L15.31,20H20V15.31Z\"\n\t\t}\n\t}\n\t\n}\n\n","namespace $ {\n\texport class $mol_lights_toggle extends $mol_check_icon {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Icon <= Lights_icon\n\t\t * ```\n\t\t */\n\t\tIcon() {\n\t\t\treturn this.Lights_icon()\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * hint @ \\Toggle lights\n\t\t * ```\n\t\t */\n\t\thint() {\n\t\t\treturn this.$.$mol_locale.text( '$mol_lights_toggle_hint' )\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * checked?val <=> lights?val\n\t\t * ```\n\t\t */\n\t\tchecked(val?: any) {\n\t\t\treturn this.lights(val)\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Lights_icon $mol_icon_brightness_6\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tLights_icon() {\n\t\t\tconst obj = new this.$.$mol_icon_brightness_6()\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * lights?val false\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tlights(val?: any) {\n\t\t\tif ( val !== undefined ) return val as never\n\t\t\treturn false\n\t\t}\n\t}\n\t\n}\n\n","namespace $.$$ {\n\texport class $mol_lights_toggle extends $.$mol_lights_toggle {\n\t\tlights( next? : boolean ) {\n\t\t\treturn this.$.$mol_lights( next )\n\t\t}\n\t}\n}\n","namespace $ {\n\texport class $koplenov_rss extends $mol_page {\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * plugins / <= Theme\n\t\t * ```\n\t\t */\n\t\tplugins() {\n\t\t\treturn [\n\t\t\t\tthis.Theme()\n\t\t\t] as readonly any[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * tools /\n\t\t * \t<= search\n\t\t * \t<= lighter\n\t\t * ```\n\t\t */\n\t\ttools() {\n\t\t\treturn [\n\t\t\t\tthis.search(),\n\t\t\t\tthis.lighter()\n\t\t\t] as readonly any[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * title \\RSS\n\t\t * ```\n\t\t */\n\t\ttitle() {\n\t\t\treturn \"RSS\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * body <= posts_view\n\t\t * ```\n\t\t */\n\t\tbody() {\n\t\t\treturn this.posts_view()\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Post* $mol_link_iconed\n\t\t * \ttitle <= post_title*\n\t\t * \turi <= post_link*\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem_key\n\t\tPost(id: any) {\n\t\t\tconst obj = new this.$.$mol_link_iconed()\n\t\t\t\n\t\t\tobj.title = () => this.post_title(id)\n\t\t\tobj.uri = () => this.post_link(id)\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * Theme $mol_theme_auto\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tTheme() {\n\t\t\tconst obj = new this.$.$mol_theme_auto()\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * query?val \\\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tquery(val?: any) {\n\t\t\tif ( val !== undefined ) return val as never\n\t\t\treturn \"\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * search $mol_search query?val <=> query?val\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tsearch() {\n\t\t\tconst obj = new this.$.$mol_search()\n\t\t\t\n\t\t\tobj.query = (val?: any) => this.query(val)\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * lighter $mol_lights_toggle\n\t\t * ```\n\t\t */\n\t\t@ $mol_mem\n\t\tlighter() {\n\t\t\tconst obj = new this.$.$mol_lights_toggle()\n\t\t\t\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * posts_view null\n\t\t * ```\n\t\t */\n\t\tposts_view() {\n\t\t\treturn null as any\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * post_title* \\title\n\t\t * ```\n\t\t */\n\t\tpost_title(id: any) {\n\t\t\treturn \"title\"\n\t\t}\n\t\t\n\t\t/**\n\t\t * ```tree\n\t\t * post_link* \\link\n\t\t * ```\n\t\t */\n\t\tpost_link(id: any) {\n\t\t\treturn \"link\"\n\t\t}\n\t}\n\t\n}\n\n","namespace $.$$ {\n\n\texport class $koplenov_rss extends $.$koplenov_rss {\n\n\t\t@$mol_mem\n\t\tproxy() {\n\t\t\treturn \"https://rss.kinsle.ru/proxy/\"\n\t\t}\n\n\t\t@$mol_mem_key\n\t\traw_xml_posts( url: string ) {\n\t\t\treturn $mol_fetch.text( this.proxy() + url )\n\t\t}\n\n\t\t@$mol_mem_key\n\t\tposts( site: string ) {\n\t\t\tconst data = new window.DOMParser().parseFromString( this.raw_xml_posts( site ), \"text/xml\" )\n\t\t\tconst items = data.querySelectorAll( \"item\" )\n\t\t\tconst posts: { title: string | undefined; link: string | undefined }[] = []\n\t\t\titems.forEach( item => posts.push( {\n\t\t\t\ttitle: item.querySelector( \"title\" )?.innerHTML,\n\t\t\t\tlink: item.querySelector( \"link\" )?.innerHTML,\n\t\t\t} ) )\n\t\t\treturn posts\n\t\t}\n\n\t\t@$mol_mem\n\t\tall_posts() {\n\t\t\tconst posts = [\n\t\t\t\t...this.posts( \"https://dmoth.site/posts/index.xml\" ),\n\t\t\t\t...this.posts( \"https://critter.blog/feed\" ),\n\t\t\t]\n\n\t\t\treturn posts.filter( post => post.title?.toLowerCase().includes( this.query().toLowerCase() ) )\n\t\t}\n\n\t\tposts_view() {\n\t\t\treturn this.all_posts().map( post => this.Post( post ) )\n\t\t}\n\n\t\tpost_title( id: any ) {\n\t\t\treturn id.title\n\t\t}\n\n\t\tpost_link( id: any ) {\n\t\t\treturn id.link\n\t\t}\n\t}\n\n}\n"]}