From 846ab8589e21b2410d57ef58fd39e1c48bd4cacb Mon Sep 17 00:00:00 2001 From: yarikbratashchuk Date: Fri, 7 Jun 2024 13:54:03 +0000 Subject: [PATCH] =?UTF-8?q?Deploy=20preview=20for=20PR=20383=20?= =?UTF-8?q?=F0=9F=9B=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pr-383/404.html | 4 +- pr-383/README.html | 50 ++++++------- ...E.md.148122d1.js => README.md.9799c6fd.js} | 2 +- ...2d1.lean.js => README.md.9799c6fd.lean.js} | 2 +- .../{app.34e6398e.js => app.3c4fe3d0.js} | 6 +- ...87de80.js => blog_overview.md.781fbb8c.js} | 2 +- ...n.js => blog_overview.md.781fbb8c.lean.js} | 2 +- ...sovereign-rollup-framework.md.156637b0.js} | 2 +- ...eign-rollup-framework.md.156637b0.lean.js} | 2 +- ...vereign-rollups-on-bitcoin.md.b1f2b92d.js} | 2 +- ...gn-rollups-on-bitcoin.md.b1f2b92d.lean.js} | 2 +- .../chunks/@localSearchIndexroot.3fd80146.js | 1 + .../chunks/@localSearchIndexroot.b693d4d8.js | 1 - ...b12170.js => VPLocalSearchBox.151d2161.js} | 2 +- .../{arc.acf4fa71.js => arc.60bf6bcc.js} | 2 +- ...1b81.js => c4Diagram-36d27044.81ee1009.js} | 2 +- ...7.js => classDiagram-5e843ae7.86956ecb.js} | 2 +- ...s => classDiagram-v2-8c3b3e6a.76bb871a.js} | 2 +- ...ants.3fbf9100.js => constants.6a6fd4fb.js} | 2 +- ...e05.js => createText-285e50b4.661aa36f.js} | 2 +- ...14be9f5e.js => edges-b00f0ec2.d6f18c62.js} | 2 +- ...7ab1.js => erDiagram-0ccc0425.ab98041e.js} | 2 +- ...59257b5.js => flowDb-8f9fc471.70dad437.js} | 2 +- ...ae.js => flowDiagram-698c8d5d.30b27acf.js} | 2 +- .../flowDiagram-v2-d6437390.14ee101d.js | 1 + .../flowDiagram-v2-d6437390.acd2e861.js | 1 - ...chart-elk-definition-6f4e6aa0.e5ef11f4.js} | 2 +- ...c.js => ganttDiagram-60845bff.88fb5aac.js} | 2 +- ...s => gitGraphDiagram-a13ae597.baecb4c3.js} | 2 +- ...5e4d3745.js => index-4c4adb72.3f6562ef.js} | 2 +- ...0b.js => infoDiagram-c976a9ed.8fe15abe.js} | 2 +- ...js => journeyDiagram-5120ee2f.ba313e1f.js} | 2 +- ...{layout.ca521a87.js => layout.66644227.js} | 2 +- .../{line.075f786d.js => line.809d7f74.js} | 2 +- ...{linear.ae897b18.js => linear.ecff5eb1.js} | 2 +- ...> mindmap-definition-0ab67801.1a340cf0.js} | 2 +- ...fbb.js => pieDiagram-5efcb91d.1354b84a.js} | 2 +- ...s => quadrantDiagram-559115c7.018ee5bd.js} | 2 +- ...> requirementDiagram-b2d6a344.ee281397.js} | 2 +- ....js => sankeyDiagram-e679478d.72f10021.js} | 2 +- ...s => sequenceDiagram-583eee82.76688222.js} | 2 +- ...0.js => stateDiagram-b1c07dc6.a8381588.js} | 2 +- ...s => stateDiagram-v2-7c93469e.a55c5ec3.js} | 2 +- ...35605f9.js => styles-88ad4441.aa2ac1f2.js} | 2 +- ...3799276.js => styles-f626f8de.a466b9e4.js} | 2 +- ...55da03b.js => styles-ff678862.621533d1.js} | 2 +- ...5389d7.js => svgDraw-5d8a058e.38485a41.js} | 2 +- ....js => svgDrawCommon-f26cad39.398614f4.js} | 2 +- .../{theme.e11407bf.js => theme.71fa6e36.js} | 2 +- ... timeline-definition-491ea63c.7e8db34e.js} | 2 +- ...8.js => guides_block-times.md.17724d2e.js} | 2 +- ...=> guides_block-times.md.17724d2e.lean.js} | 2 +- .../guides_connect-local-da.md.7a20b17d.js | 3 + ...uides_connect-local-da.md.7a20b17d.lean.js | 1 + .../guides_create-genesis.md.d2739937.js | 10 +++ .../guides_create-genesis.md.d2739937.lean.js | 1 + ...1a14b.js => guides_cw-orch.md.ff556bd1.js} | 2 +- ....js => guides_cw-orch.md.ff556bd1.lean.js} | 2 +- ...es_full-and-sequencer-node.md.845c9497.js} | 2 +- ...ll-and-sequencer-node.md.845c9497.lean.js} | 2 +- ...255.js => guides_gas-price.md.c97936cd.js} | 2 +- ...s => guides_gas-price.md.c97936cd.lean.js} | 2 +- ...s => guides_ibc-connection.md.c27aa7d5.js} | 2 +- ...guides_ibc-connection.md.c27aa7d5.lean.js} | 2 +- ... => guides_lazy-sequencing.md.336f1b93.js} | 2 +- ...uides_lazy-sequencing.md.336f1b93.lean.js} | 2 +- ...087f.js => guides_overview.md.9a88b161.js} | 2 +- ...js => guides_overview.md.9a88b161.lean.js} | 2 +- ...s => guides_restart-rollup.md.7a47ad3f.js} | 2 +- ...guides_restart-rollup.md.7a47ad3f.lean.js} | 2 +- ... guides_rollkit-monitoring.md.953491f9.js} | 2 +- ...es_rollkit-monitoring.md.953491f9.lean.js} | 2 +- ... => guides_use-tia-for-gas.md.c62fd47c.js} | 4 +- ...uides_use-tia-for-gas.md.c62fd47c.lean.js} | 2 +- ...f27a520c.js => guides_zkml.md.5dd6d1ec.js} | 2 +- ...ean.js => guides_zkml.md.5dd6d1ec.lean.js} | 2 +- ...ex.md.db7783e0.js => index.md.1f1d03f9.js} | 2 +- ...83e0.lean.js => index.md.1f1d03f9.lean.js} | 2 +- ...eab2b488.js => learn_about.md.04dc482d.js} | 2 +- ...ean.js => learn_about.md.04dc482d.lean.js} | 2 +- ...ing-and-deploying-a-rollup.md.5a676a18.js} | 2 +- ...nd-deploying-a-rollup.md.5a676a18.lean.js} | 2 +- ...127f8fa5.js => learn_intro.md.603d0257.js} | 2 +- ...ean.js => learn_intro.md.603d0257.lean.js} | 2 +- ...js => learn_specifications.md.828ea458.js} | 2 +- ... learn_specifications.md.828ea458.lean.js} | 2 +- ...f7713922.js => learn_stack.md.77442c25.js} | 2 +- ...ean.js => learn_stack.md.77442c25.lean.js} | 2 +- ... => learn_transaction-flow.md.54d7b688.js} | 2 +- ...earn_transaction-flow.md.54d7b688.lean.js} | 2 +- ... testnets_cosmwasm-testnet.md.92cb90bd.js} | 2 +- ...nets_cosmwasm-testnet.md.92cb90bd.lean.js} | 2 +- ...af.js => tutorials_bitcoin.md.da6ebe93.js} | 2 +- ... => tutorials_bitcoin.md.da6ebe93.lean.js} | 2 +- ...s => tutorials_celestia-da.md.b2b0ce5f.js} | 9 ++- .../tutorials_celestia-da.md.b2b0ce5f.lean.js | 1 + .../tutorials_celestia-da.md.f41860ea.lean.js | 1 - ...e.js => tutorials_cosmwasm.md.5bcdfd4f.js} | 6 +- ...=> tutorials_cosmwasm.md.5bcdfd4f.lean.js} | 2 +- ...s_gm-world-arabica-testnet.md.636d72b3.js} | 2 +- ...world-arabica-testnet.md.636d72b3.lean.js} | 2 +- ...utorials_gm-world-frontend.md.bb566fda.js} | 4 +- ...als_gm-world-frontend.md.bb566fda.lean.js} | 2 +- ...tutorials_gm-world-mainnet.md.fd459b42.js} | 2 +- ...ials_gm-world-mainnet.md.fd459b42.lean.js} | 2 +- ...als_gm-world-mocha-testnet.md.3a6787c5.js} | 2 +- ...m-world-mocha-testnet.md.3a6787c5.lean.js} | 2 +- ...9.js => tutorials_gm-world.md.a5bbe595.js} | 4 +- ...=> tutorials_gm-world.md.a5bbe595.lean.js} | 2 +- ...s => tutorials_polaris-evm.md.ce54e49c.js} | 2 +- ...tutorials_polaris-evm.md.ce54e49c.lean.js} | 2 +- ...s => tutorials_quick-start.md.21b9828d.js} | 4 +- ...tutorials_quick-start.md.21b9828d.lean.js} | 2 +- ...02f.js => tutorials_wordle.md.2e8d5bf4.js} | 12 +-- .../tutorials_wordle.md.2e8d5bf4.lean.js | 1 + .../tutorials_wordle.md.bf1e602f.lean.js | 4 - pr-383/blog/overview.html | 50 ++++++------- ...-the-first-sovereign-rollup-framework.html | 50 ++++++------- pr-383/blog/sovereign-rollups-on-bitcoin.html | 52 ++++++------- pr-383/guides/block-times.html | 52 ++++++------- pr-383/guides/connect-local-da.html | 68 +++++++++++++++++ pr-383/guides/create-genesis.html | 75 +++++++++++++++++++ pr-383/guides/cw-orch.html | 52 ++++++------- pr-383/guides/full-and-sequencer-node.html | 52 ++++++------- pr-383/guides/gas-price.html | 50 ++++++------- pr-383/guides/ibc-connection.html | 52 ++++++------- pr-383/guides/lazy-sequencing.html | 52 ++++++------- pr-383/guides/overview.html | 50 ++++++------- pr-383/guides/restart-rollup.html | 52 ++++++------- pr-383/guides/rollkit-monitoring.html | 50 ++++++------- pr-383/guides/use-tia-for-gas.html | 54 ++++++------- pr-383/guides/zkml.html | 52 ++++++------- pr-383/hashmap.json | 2 +- pr-383/index.html | 48 ++++++------ pr-383/learn/about.html | 50 ++++++------- .../building-and-deploying-a-rollup.html | 50 ++++++------- pr-383/learn/intro.html | 50 ++++++------- pr-383/learn/specifications.html | 50 ++++++------- pr-383/learn/stack.html | 50 ++++++------- pr-383/learn/transaction-flow.html | 50 ++++++------- pr-383/sitemap.xml | 2 +- pr-383/testnets/cosmwasm-testnet.html | 52 ++++++------- pr-383/tutorials/bitcoin.html | 52 ++++++------- pr-383/tutorials/celestia-da.html | 57 +++++++------- pr-383/tutorials/cosmwasm.html | 56 +++++++------- .../tutorials/gm-world-arabica-testnet.html | 52 ++++++------- pr-383/tutorials/gm-world-frontend.html | 54 ++++++------- pr-383/tutorials/gm-world-mainnet.html | 52 ++++++------- pr-383/tutorials/gm-world-mocha-testnet.html | 52 ++++++------- pr-383/tutorials/gm-world.html | 54 ++++++------- pr-383/tutorials/polaris-evm.html | 52 ++++++------- pr-383/tutorials/quick-start.html | 54 ++++++------- pr-383/tutorials/wordle.html | 62 +++++++-------- 153 files changed, 1167 insertions(+), 1014 deletions(-) rename pr-383/assets/{README.md.148122d1.js => README.md.9799c6fd.js} (98%) rename pr-383/assets/{README.md.148122d1.lean.js => README.md.9799c6fd.lean.js} (88%) rename pr-383/assets/{app.34e6398e.js => app.3c4fe3d0.js} (97%) rename pr-383/assets/{blog_overview.md.0a87de80.js => blog_overview.md.781fbb8c.js} (95%) rename pr-383/assets/{blog_overview.md.0a87de80.lean.js => blog_overview.md.781fbb8c.lean.js} (91%) rename pr-383/assets/{blog_rollkit-the-first-sovereign-rollup-framework.md.ee4e4d6c.js => blog_rollkit-the-first-sovereign-rollup-framework.md.156637b0.js} (99%) rename pr-383/assets/{blog_rollkit-the-first-sovereign-rollup-framework.md.ee4e4d6c.lean.js => blog_rollkit-the-first-sovereign-rollup-framework.md.156637b0.lean.js} (97%) rename pr-383/assets/{blog_sovereign-rollups-on-bitcoin.md.aab6757b.js => blog_sovereign-rollups-on-bitcoin.md.b1f2b92d.js} (99%) rename pr-383/assets/{blog_sovereign-rollups-on-bitcoin.md.aab6757b.lean.js => blog_sovereign-rollups-on-bitcoin.md.b1f2b92d.lean.js} (97%) create mode 100644 pr-383/assets/chunks/@localSearchIndexroot.3fd80146.js delete mode 100644 pr-383/assets/chunks/@localSearchIndexroot.b693d4d8.js rename pr-383/assets/chunks/{VPLocalSearchBox.a5b12170.js => VPLocalSearchBox.151d2161.js} (99%) rename pr-383/assets/chunks/{arc.acf4fa71.js => arc.60bf6bcc.js} (98%) rename pr-383/assets/chunks/{c4Diagram-36d27044.c2db1b81.js => c4Diagram-36d27044.81ee1009.js} (99%) rename pr-383/assets/chunks/{classDiagram-5e843ae7.7a63d6c7.js => classDiagram-5e843ae7.86956ecb.js} (91%) rename pr-383/assets/chunks/{classDiagram-v2-8c3b3e6a.276e10f7.js => classDiagram-v2-8c3b3e6a.76bb871a.js} (92%) rename pr-383/assets/chunks/{constants.3fbf9100.js => constants.6a6fd4fb.js} (90%) rename pr-383/assets/chunks/{createText-285e50b4.f886ce05.js => createText-285e50b4.661aa36f.js} (99%) rename pr-383/assets/chunks/{edges-b00f0ec2.14be9f5e.js => edges-b00f0ec2.d6f18c62.js} (99%) rename pr-383/assets/chunks/{erDiagram-0ccc0425.a2587ab1.js => erDiagram-0ccc0425.ab98041e.js} (99%) rename pr-383/assets/chunks/{flowDb-8f9fc471.d59257b5.js => flowDb-8f9fc471.70dad437.js} (99%) rename pr-383/assets/chunks/{flowDiagram-698c8d5d.d6bb1fae.js => flowDiagram-698c8d5d.30b27acf.js} (97%) create mode 100644 pr-383/assets/chunks/flowDiagram-v2-d6437390.14ee101d.js delete mode 100644 pr-383/assets/chunks/flowDiagram-v2-d6437390.acd2e861.js rename pr-383/assets/chunks/{flowchart-elk-definition-6f4e6aa0.fe34683e.js => flowchart-elk-definition-6f4e6aa0.e5ef11f4.js} (99%) rename pr-383/assets/chunks/{ganttDiagram-60845bff.9268dc5c.js => ganttDiagram-60845bff.88fb5aac.js} (99%) rename pr-383/assets/chunks/{gitGraphDiagram-a13ae597.e8dc1e8e.js => gitGraphDiagram-a13ae597.baecb4c3.js} (99%) rename pr-383/assets/chunks/{index-4c4adb72.5e4d3745.js => index-4c4adb72.3f6562ef.js} (97%) rename pr-383/assets/chunks/{infoDiagram-c976a9ed.ae30040b.js => infoDiagram-c976a9ed.8fe15abe.js} (98%) rename pr-383/assets/chunks/{journeyDiagram-5120ee2f.0e5e0ae2.js => journeyDiagram-5120ee2f.ba313e1f.js} (98%) rename pr-383/assets/chunks/{layout.ca521a87.js => layout.66644227.js} (99%) rename pr-383/assets/chunks/{line.075f786d.js => line.809d7f74.js} (93%) rename pr-383/assets/chunks/{linear.ae897b18.js => linear.ecff5eb1.js} (98%) rename pr-383/assets/chunks/{mindmap-definition-0ab67801.6679988b.js => mindmap-definition-0ab67801.1a340cf0.js} (99%) rename pr-383/assets/chunks/{pieDiagram-5efcb91d.9463ffbb.js => pieDiagram-5efcb91d.1354b84a.js} (98%) rename pr-383/assets/chunks/{quadrantDiagram-559115c7.675bfb90.js => quadrantDiagram-559115c7.018ee5bd.js} (99%) rename pr-383/assets/chunks/{requirementDiagram-b2d6a344.80e58b3e.js => requirementDiagram-b2d6a344.ee281397.js} (99%) rename pr-383/assets/chunks/{sankeyDiagram-e679478d.fd7d6ecc.js => sankeyDiagram-e679478d.72f10021.js} (99%) rename pr-383/assets/chunks/{sequenceDiagram-583eee82.e80d25f4.js => sequenceDiagram-583eee82.76688222.js} (99%) rename pr-383/assets/chunks/{stateDiagram-b1c07dc6.a584cd20.js => stateDiagram-b1c07dc6.a8381588.js} (97%) rename pr-383/assets/chunks/{stateDiagram-v2-7c93469e.b7a5d2f2.js => stateDiagram-v2-7c93469e.a55c5ec3.js} (91%) rename pr-383/assets/chunks/{styles-88ad4441.f35605f9.js => styles-88ad4441.aa2ac1f2.js} (99%) rename pr-383/assets/chunks/{styles-f626f8de.a3799276.js => styles-f626f8de.a466b9e4.js} (99%) rename pr-383/assets/chunks/{styles-ff678862.a55da03b.js => styles-ff678862.621533d1.js} (97%) rename pr-383/assets/chunks/{svgDraw-5d8a058e.ea5389d7.js => svgDraw-5d8a058e.38485a41.js} (97%) rename pr-383/assets/chunks/{svgDrawCommon-f26cad39.493f1f49.js => svgDrawCommon-f26cad39.398614f4.js} (95%) rename pr-383/assets/chunks/{theme.e11407bf.js => theme.71fa6e36.js} (99%) rename pr-383/assets/chunks/{timeline-definition-491ea63c.903d7e91.js => timeline-definition-491ea63c.7e8db34e.js} (99%) rename pr-383/assets/{guides_block-times.md.1fe2e118.js => guides_block-times.md.17724d2e.js} (98%) rename pr-383/assets/{guides_block-times.md.1fe2e118.lean.js => guides_block-times.md.17724d2e.lean.js} (89%) create mode 100644 pr-383/assets/guides_connect-local-da.md.7a20b17d.js create mode 100644 pr-383/assets/guides_connect-local-da.md.7a20b17d.lean.js create mode 100644 pr-383/assets/guides_create-genesis.md.d2739937.js create mode 100644 pr-383/assets/guides_create-genesis.md.d2739937.lean.js rename pr-383/assets/{guides_cw-orch.md.e511a14b.js => guides_cw-orch.md.ff556bd1.js} (99%) rename pr-383/assets/{guides_cw-orch.md.e511a14b.lean.js => guides_cw-orch.md.ff556bd1.lean.js} (89%) rename pr-383/assets/{guides_full-and-sequencer-node.md.d80f1b45.js => guides_full-and-sequencer-node.md.845c9497.js} (99%) rename pr-383/assets/{guides_full-and-sequencer-node.md.d80f1b45.lean.js => guides_full-and-sequencer-node.md.845c9497.lean.js} (89%) rename pr-383/assets/{guides_gas-price.md.6941c255.js => guides_gas-price.md.c97936cd.js} (97%) rename pr-383/assets/{guides_gas-price.md.6941c255.lean.js => guides_gas-price.md.c97936cd.lean.js} (88%) rename pr-383/assets/{guides_ibc-connection.md.ca5b61e3.js => guides_ibc-connection.md.c27aa7d5.js} (99%) rename pr-383/assets/{guides_ibc-connection.md.ca5b61e3.lean.js => guides_ibc-connection.md.c27aa7d5.lean.js} (88%) rename pr-383/assets/{guides_lazy-sequencing.md.2c57ff6b.js => guides_lazy-sequencing.md.336f1b93.js} (97%) rename pr-383/assets/{guides_lazy-sequencing.md.2c57ff6b.lean.js => guides_lazy-sequencing.md.336f1b93.lean.js} (89%) rename pr-383/assets/{guides_overview.md.808e087f.js => guides_overview.md.9a88b161.js} (97%) rename pr-383/assets/{guides_overview.md.808e087f.lean.js => guides_overview.md.9a88b161.lean.js} (91%) rename pr-383/assets/{guides_restart-rollup.md.6ebc8a40.js => guides_restart-rollup.md.7a47ad3f.js} (99%) rename pr-383/assets/{guides_restart-rollup.md.6ebc8a40.lean.js => guides_restart-rollup.md.7a47ad3f.lean.js} (89%) rename pr-383/assets/{guides_rollkit-monitoring.md.aa13d519.js => guides_rollkit-monitoring.md.953491f9.js} (98%) rename pr-383/assets/{guides_rollkit-monitoring.md.aa13d519.lean.js => guides_rollkit-monitoring.md.953491f9.lean.js} (92%) rename pr-383/assets/{guides_use-tia-for-gas.md.fdcb6f1c.js => guides_use-tia-for-gas.md.c62fd47c.js} (99%) rename pr-383/assets/{guides_use-tia-for-gas.md.fdcb6f1c.lean.js => guides_use-tia-for-gas.md.c62fd47c.lean.js} (95%) rename pr-383/assets/{guides_zkml.md.f27a520c.js => guides_zkml.md.5dd6d1ec.js} (99%) rename pr-383/assets/{guides_zkml.md.f27a520c.lean.js => guides_zkml.md.5dd6d1ec.lean.js} (88%) rename pr-383/assets/{index.md.db7783e0.js => index.md.1f1d03f9.js} (95%) rename pr-383/assets/{index.md.db7783e0.lean.js => index.md.1f1d03f9.lean.js} (95%) rename pr-383/assets/{learn_about.md.eab2b488.js => learn_about.md.04dc482d.js} (99%) rename pr-383/assets/{learn_about.md.eab2b488.lean.js => learn_about.md.04dc482d.lean.js} (87%) rename pr-383/assets/{learn_building-and-deploying-a-rollup.md.fc0e2943.js => learn_building-and-deploying-a-rollup.md.5a676a18.js} (98%) rename pr-383/assets/{learn_building-and-deploying-a-rollup.md.fc0e2943.lean.js => learn_building-and-deploying-a-rollup.md.5a676a18.lean.js} (90%) rename pr-383/assets/{learn_intro.md.127f8fa5.js => learn_intro.md.603d0257.js} (95%) rename pr-383/assets/{learn_intro.md.127f8fa5.lean.js => learn_intro.md.603d0257.lean.js} (95%) rename pr-383/assets/{learn_specifications.md.a8519675.js => learn_specifications.md.828ea458.js} (94%) rename pr-383/assets/{learn_specifications.md.a8519675.lean.js => learn_specifications.md.828ea458.lean.js} (94%) rename pr-383/assets/{learn_stack.md.f7713922.js => learn_stack.md.77442c25.js} (99%) rename pr-383/assets/{learn_stack.md.f7713922.lean.js => learn_stack.md.77442c25.lean.js} (96%) rename pr-383/assets/{learn_transaction-flow.md.10ffbc09.js => learn_transaction-flow.md.54d7b688.js} (98%) rename pr-383/assets/{learn_transaction-flow.md.10ffbc09.lean.js => learn_transaction-flow.md.54d7b688.lean.js} (98%) rename pr-383/assets/{testnets_cosmwasm-testnet.md.1af3813a.js => testnets_cosmwasm-testnet.md.92cb90bd.js} (99%) rename pr-383/assets/{testnets_cosmwasm-testnet.md.1af3813a.lean.js => testnets_cosmwasm-testnet.md.92cb90bd.lean.js} (96%) rename pr-383/assets/{tutorials_bitcoin.md.91a66aaf.js => tutorials_bitcoin.md.da6ebe93.js} (99%) rename pr-383/assets/{tutorials_bitcoin.md.91a66aaf.lean.js => tutorials_bitcoin.md.da6ebe93.lean.js} (89%) rename pr-383/assets/{tutorials_celestia-da.md.f41860ea.js => tutorials_celestia-da.md.b2b0ce5f.js} (56%) create mode 100644 pr-383/assets/tutorials_celestia-da.md.b2b0ce5f.lean.js delete mode 100644 pr-383/assets/tutorials_celestia-da.md.f41860ea.lean.js rename pr-383/assets/{tutorials_cosmwasm.md.79f07a6e.js => tutorials_cosmwasm.md.5bcdfd4f.js} (99%) rename pr-383/assets/{tutorials_cosmwasm.md.79f07a6e.lean.js => tutorials_cosmwasm.md.5bcdfd4f.lean.js} (94%) rename pr-383/assets/{tutorials_gm-world-arabica-testnet.md.3d55a9f4.js => tutorials_gm-world-arabica-testnet.md.636d72b3.js} (99%) rename pr-383/assets/{tutorials_gm-world-arabica-testnet.md.3d55a9f4.lean.js => tutorials_gm-world-arabica-testnet.md.636d72b3.lean.js} (92%) rename pr-383/assets/{tutorials_gm-world-frontend.md.282d1299.js => tutorials_gm-world-frontend.md.bb566fda.js} (98%) rename pr-383/assets/{tutorials_gm-world-frontend.md.282d1299.lean.js => tutorials_gm-world-frontend.md.bb566fda.lean.js} (95%) rename pr-383/assets/{tutorials_gm-world-mainnet.md.45f86e76.js => tutorials_gm-world-mainnet.md.fd459b42.js} (99%) rename pr-383/assets/{tutorials_gm-world-mainnet.md.45f86e76.lean.js => tutorials_gm-world-mainnet.md.fd459b42.lean.js} (95%) rename pr-383/assets/{tutorials_gm-world-mocha-testnet.md.155432dd.js => tutorials_gm-world-mocha-testnet.md.3a6787c5.js} (99%) rename pr-383/assets/{tutorials_gm-world-mocha-testnet.md.155432dd.lean.js => tutorials_gm-world-mocha-testnet.md.3a6787c5.lean.js} (92%) rename pr-383/assets/{tutorials_gm-world.md.c0fc4059.js => tutorials_gm-world.md.a5bbe595.js} (99%) rename pr-383/assets/{tutorials_gm-world.md.c0fc4059.lean.js => tutorials_gm-world.md.a5bbe595.lean.js} (94%) rename pr-383/assets/{tutorials_polaris-evm.md.215da9f0.js => tutorials_polaris-evm.md.ce54e49c.js} (99%) rename pr-383/assets/{tutorials_polaris-evm.md.215da9f0.lean.js => tutorials_polaris-evm.md.ce54e49c.lean.js} (92%) rename pr-383/assets/{tutorials_quick-start.md.3bb83944.js => tutorials_quick-start.md.21b9828d.js} (97%) rename pr-383/assets/{tutorials_quick-start.md.3bb83944.lean.js => tutorials_quick-start.md.21b9828d.lean.js} (92%) rename pr-383/assets/{tutorials_wordle.md.bf1e602f.js => tutorials_wordle.md.2e8d5bf4.js} (73%) create mode 100644 pr-383/assets/tutorials_wordle.md.2e8d5bf4.lean.js delete mode 100644 pr-383/assets/tutorials_wordle.md.bf1e602f.lean.js create mode 100644 pr-383/guides/connect-local-da.html create mode 100644 pr-383/guides/create-genesis.html diff --git a/pr-383/404.html b/pr-383/404.html index 064bbc28d..21c7820d5 100644 --- a/pr-383/404.html +++ b/pr-383/404.html @@ -7,7 +7,7 @@ - + @@ -35,7 +35,7 @@

404

PAGE NOT FOUND

But if you don't change your direction, and if you keep looking, you may end up where you are heading.
- + \ No newline at end of file diff --git a/pr-383/README.html b/pr-383/README.html index 832249583..606ebc043 100644 --- a/pr-383/README.html +++ b/pr-383/README.html @@ -7,32 +7,32 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -59,8 +59,8 @@
On this page

Rollkit Documentation Site โ€‹

Welcome to the official documentation repository for Rollkit.

Here you'll find comprehensive guides, tutorials, and reference materials to help you make the most out of Rollkit.

Building the site โ€‹

To get started, clone the repository and run the following:

bash
yarn run docs:dev

This documentation site is built with VitePress

Contribution Guidelines โ€‹

We love contributions from the community! Whether you're fixing typos, improving content clarity, or adding new topics, every contribution helps.

  • Fork & Clone: Fork this repository and clone it to your local machine.
  • Branch: Always create a new branch for your changes. Naming it relevantly.
  • Commit Changes: Make your changes and commit them with a clear and concise commit message.
  • Push & Create PR: Push your changes to your fork and create a pull request to the main branch of this repository.

Please ensure to review the detailed Contribution Guidelines above before making a pull request.

Directory Structure โ€‹

  • /tutorials: Step-by-step instructions to help users build their own rollups with Rollkit.
  • /learn: Technical reference materials, such as configuration options and details about the Rollkit stack.
  • /blog: Blog posts for the Rollkit blog.
  • /public: Images, diagrams, and other media files used in the documentation.

Feedback & Suggestions โ€‹

We value feedback from the community. If you have suggestions for improvements or find any discrepancies in the documentation, please raise an issue in this repository.

Released under the APACHE-2.0 License

- +
On this page

Rollkit Documentation Site โ€‹

Welcome to the official documentation repository for Rollkit.

Here you'll find comprehensive guides, tutorials, and reference materials to help you make the most out of Rollkit.

Building the site โ€‹

To get started, clone the repository and run the following:

bash
yarn run docs:dev

This documentation site is built with VitePress

Contribution Guidelines โ€‹

We love contributions from the community! Whether you're fixing typos, improving content clarity, or adding new topics, every contribution helps.

  • Fork & Clone: Fork this repository and clone it to your local machine.
  • Branch: Always create a new branch for your changes. Naming it relevantly.
  • Commit Changes: Make your changes and commit them with a clear and concise commit message.
  • Push & Create PR: Push your changes to your fork and create a pull request to the main branch of this repository.

Please ensure to review the detailed Contribution Guidelines above before making a pull request.

Directory Structure โ€‹

  • /tutorials: Step-by-step instructions to help users build their own rollups with Rollkit.
  • /learn: Technical reference materials, such as configuration options and details about the Rollkit stack.
  • /blog: Blog posts for the Rollkit blog.
  • /public: Images, diagrams, and other media files used in the documentation.

Feedback & Suggestions โ€‹

We value feedback from the community. If you have suggestions for improvements or find any discrepancies in the documentation, please raise an issue in this repository.

Released under the APACHE-2.0 License

+ \ No newline at end of file diff --git a/pr-383/assets/README.md.148122d1.js b/pr-383/assets/README.md.9799c6fd.js similarity index 98% rename from pr-383/assets/README.md.148122d1.js rename to pr-383/assets/README.md.9799c6fd.js index 5a2404d1c..442f51f0e 100644 --- a/pr-383/assets/README.md.148122d1.js +++ b/pr-383/assets/README.md.9799c6fd.js @@ -1 +1 @@ -import{_ as e,o as t,c as i,X as o}from"./chunks/framework.be0a7370.js";const g=JSON.parse('{"title":"Rollkit Documentation Site","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Rollkit Documentation Site | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"README.md","filePath":"README.md","lastUpdated":1717671233000}'),a={name:"README.md"},n=o('

Rollkit Documentation Site โ€‹

Welcome to the official documentation repository for Rollkit.

Here you'll find comprehensive guides, tutorials, and reference materials to help you make the most out of Rollkit.

Building the site โ€‹

To get started, clone the repository and run the following:

bash
yarn run docs:dev

This documentation site is built with VitePress

Contribution Guidelines โ€‹

We love contributions from the community! Whether you're fixing typos, improving content clarity, or adding new topics, every contribution helps.

Please ensure to review the detailed Contribution Guidelines above before making a pull request.

Directory Structure โ€‹

Feedback & Suggestions โ€‹

We value feedback from the community. If you have suggestions for improvements or find any discrepancies in the documentation, please raise an issue in this repository.

',16),s=[n];function r(l,c,u,d,h,p){return t(),i("div",null,s)}const b=e(a,[["render",r]]);export{g as __pageData,b as default}; +import{_ as e,o as t,c as i,X as o}from"./chunks/framework.be0a7370.js";const g=JSON.parse('{"title":"Rollkit Documentation Site","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Rollkit Documentation Site | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"README.md","filePath":"README.md","lastUpdated":1717768398000}'),a={name:"README.md"},n=o('

Rollkit Documentation Site โ€‹

Welcome to the official documentation repository for Rollkit.

Here you'll find comprehensive guides, tutorials, and reference materials to help you make the most out of Rollkit.

Building the site โ€‹

To get started, clone the repository and run the following:

bash
yarn run docs:dev

This documentation site is built with VitePress

Contribution Guidelines โ€‹

We love contributions from the community! Whether you're fixing typos, improving content clarity, or adding new topics, every contribution helps.

Please ensure to review the detailed Contribution Guidelines above before making a pull request.

Directory Structure โ€‹

Feedback & Suggestions โ€‹

We value feedback from the community. If you have suggestions for improvements or find any discrepancies in the documentation, please raise an issue in this repository.

',16),s=[n];function r(l,c,u,d,h,p){return t(),i("div",null,s)}const b=e(a,[["render",r]]);export{g as __pageData,b as default}; diff --git a/pr-383/assets/README.md.148122d1.lean.js b/pr-383/assets/README.md.9799c6fd.lean.js similarity index 88% rename from pr-383/assets/README.md.148122d1.lean.js rename to pr-383/assets/README.md.9799c6fd.lean.js index 8480c2f4b..5778410a0 100644 --- a/pr-383/assets/README.md.148122d1.lean.js +++ b/pr-383/assets/README.md.9799c6fd.lean.js @@ -1 +1 @@ -import{_ as e,o as t,c as i,X as o}from"./chunks/framework.be0a7370.js";const g=JSON.parse('{"title":"Rollkit Documentation Site","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Rollkit Documentation Site | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"README.md","filePath":"README.md","lastUpdated":1717671233000}'),a={name:"README.md"},n=o("",16),s=[n];function r(l,c,u,d,h,p){return t(),i("div",null,s)}const b=e(a,[["render",r]]);export{g as __pageData,b as default}; +import{_ as e,o as t,c as i,X as o}from"./chunks/framework.be0a7370.js";const g=JSON.parse('{"title":"Rollkit Documentation Site","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Rollkit Documentation Site | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"README.md","filePath":"README.md","lastUpdated":1717768398000}'),a={name:"README.md"},n=o("",16),s=[n];function r(l,c,u,d,h,p){return t(),i("div",null,s)}const b=e(a,[["render",r]]);export{g as __pageData,b as default}; diff --git a/pr-383/assets/app.34e6398e.js b/pr-383/assets/app.3c4fe3d0.js similarity index 97% rename from pr-383/assets/app.34e6398e.js rename to pr-383/assets/app.3c4fe3d0.js index 4161d12bd..e4bcf15d9 100644 --- a/pr-383/assets/app.34e6398e.js +++ b/pr-383/assets/app.3c4fe3d0.js @@ -1,4 +1,4 @@ -import{$ as Z,h as ao,u as gs,a6 as Gl,j as ms,H as Xl,o as Kl,c as Zl,a7 as _s,G as Xr,a8 as Jl,a9 as Ql,aa as th,ab as eh,ac as ih,ad as rh,ae as nh,af as oh,ag as sh,ah,d as lh,A as hh,ai as ch,aj as uh,ak as fh}from"./chunks/framework.be0a7370.js";import{t as lo}from"./chunks/theme.e11407bf.js";function dh(t){for(var e=[],i=1;i{e.args[r]!==void 0&&(i==="flowchart-v2"&&(i="flowchart"),e.args[i]=e.args[r],delete e.args[r])}),S.info("sanitize in handleDirective",e.args),Ie(e.args),S.info("sanitize in handleDirective (done)",e.args),Ga(e.args);break}case"wrap":case"nowrap":t&&t.setWrap&&t.setWrap(e.type==="wrap");break;case"themeCss":S.warn("themeCss encountered");break;default:S.warn(`Unhandled directive: source: '%%{${e.type}: ${JSON.stringify(e.args?e.args:{})}}%%`,e);break}},oy=S,sy=Mn,nl=Vt,ay=t=>ri(t,nl()),ly=J_,hy=()=>ry,cy=(t,e,i,r)=>rl(t,e,i,r),er={},ir=(t,e,i)=>{if(er[t])throw new Error(`Diagram ${t} already registered.`);er[t]=e,i&&al(t,i),ty(t,e.styles),e.injectUtils&&e.injectUtils(oy,sy,nl,ay,ly,hy(),cy)},qn=t=>{if(t in er)return er[t];throw new Error(`Diagram ${t} not found.`)};class ol extends Error{constructor(e){super(e),this.name="UnknownDiagramError"}}const uy=/%{2}{\s*(?:(\w+)\s*:|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,fy=/\s*%%.*\n/gm,Oe={},Tr=function(t,e){t=t.replace(ja,"").replace(uy,"").replace(fy,` `);for(const[i,{detector:r}]of Object.entries(Oe))if(r(t,e))return i;throw new ol(`No diagram type detected matching given configuration for text: ${t}`)},sl=(...t)=>{for(const{id:e,detector:i,loader:r}of t)al(e,i,r)},dy=async()=>{S.debug("Loading registered diagrams");const e=(await Promise.allSettled(Object.entries(Oe).map(async([i,{detector:r,loader:n}])=>{if(n)try{qn(i)}catch{try{const{diagram:s,id:a}=await n();ir(a,s,r)}catch(s){throw S.error(`Failed to load external diagram with key ${i}. Removing from detectors.`),delete Oe[i],s}}}))).filter(i=>i.status==="rejected");if(e.length>0){S.error(`Failed to load ${e.length} external diagrams`);for(const i of e)S.error(i);throw new Error(`Failed to load ${e.length} external diagrams`)}},al=(t,e,i)=>{Oe[t]?S.error(`Detector with key ${t} already exists`):Oe[t]={detector:e,loader:i},S.debug(`Detector with key ${t} added${i?" with loader":""}`)},py=t=>Oe[t].loader,gy="โ€‹",my={curveBasis:Uf,curveBasisClosed:Yf,curveBasisOpen:Vf,curveBumpX:Hf,curveBumpY:jf,curveBundle:Gf,curveCardinalClosed:Kf,curveCardinalOpen:Zf,curveCardinal:Xf,curveCatmullRomClosed:Qf,curveCatmullRomOpen:td,curveCatmullRom:Jf,curveLinear:Wf,curveLinearClosed:ed,curveMonotoneX:id,curveMonotoneY:rd,curveNatural:nd,curveStep:od,curveStepAfter:ad,curveStepBefore:sd},Vr=/%{2}{\s*(?:(\w+)\s*:|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,_y=/\s*(?:(\w+)(?=:):|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,yy=function(t,e){const i=ll(t,/(?:init\b)|(?:initialize\b)/);let r={};if(Array.isArray(i)){const n=i.map(o=>o.args);Ie(n),r=st(r,[...n])}else r=i.args;if(r){let n=Tr(t,e);["config"].forEach(o=>{r[o]!==void 0&&(n==="flowchart-v2"&&(n="flowchart"),r[n]=r[o],delete r[o])})}return r},ll=function(t,e=null){try{const i=new RegExp(`[%]{2}(?![{]${_y.source})(?=[}][%]{2}).* `,"ig");t=t.trim().replace(i,"").replace(/'/gm,'"'),S.debug(`Detecting diagram directive${e!==null?" type:"+e:""} based on the text:${t}`);let r;const n=[];for(;(r=Vr.exec(t))!==null;)if(r.index===Vr.lastIndex&&Vr.lastIndex++,r&&!e||e&&r[1]&&r[1].match(e)||e&&r[2]&&r[2].match(e)){const o=r[1]?r[1]:r[2],s=r[3]?r[3].trim():r[4]?JSON.parse(r[4].trim()):null;n.push({type:o,args:s})}return n.length===0&&n.push({type:t,args:null}),n.length===1?n[0]:n}catch(i){return S.error(`ERROR: ${i.message} - Unable to parse directive - ${e!==null?" type:"+e:""} based on the text:${t}`),{type:null,args:null}}},Cy=function(t,e){for(const[i,r]of e.entries())if(r.match(t))return i;return-1};function by(t,e){if(!t)return e;const i=`curve${t.charAt(0).toUpperCase()+t.slice(1)}`;return my[i]||e}function xy(t,e){const i=t.trim();if(i)return e.securityLevel!=="loose"?Cs(i):i}const Ty=(t,...e)=>{const i=t.split("."),r=i.length-1,n=i[r];let o=window;for(let s=0;s{i+=rr(o,e),e=o});let r=i/2,n;return e=void 0,t.forEach(o=>{if(e&&!n){const s=rr(o,e);if(s=1&&(n={x:o.x,y:o.y}),a>0&&a<1&&(n={x:(1-a)*e.x+a*o.x,y:(1-a)*e.y+a*o.y})}}e=o}),n}function ky(t){return t.length===1?t[0]:vy(t)}const Sy=(t,e,i)=>{let r;S.info(`our points ${JSON.stringify(e)}`),e[0]!==i&&(e=e.reverse());let o=25,s;r=void 0,e.forEach(c=>{if(r&&!s){const u=rr(c,r);if(u=1&&(s={x:c.x,y:c.y}),g>0&&g<1&&(s={x:(1-g)*r.x+g*c.x,y:(1-g)*r.y+g*c.y})}}r=c});const a=t?10:5,l=Math.atan2(e[0].y-s.y,e[0].x-s.x),h={x:0,y:0};return h.x=Math.sin(l)*a+(e[0].x+s.x)/2,h.y=-Math.cos(l)*a+(e[0].y+s.y)/2,h};function wy(t,e,i){let r=JSON.parse(JSON.stringify(i)),n;S.info("our points",r),e!=="start_left"&&e!=="start_right"&&(r=r.reverse()),r.forEach(u=>{n=u});let s=25+t,a;n=void 0,r.forEach(u=>{if(n&&!a){const g=rr(u,n);if(g=1&&(a={x:u.x,y:u.y}),p>0&&p<1&&(a={x:(1-p)*n.x+p*u.x,y:(1-p)*n.y+p*u.y})}}n=u});const l=10+t*.5,h=Math.atan2(r[0].y-a.y,r[0].x-a.x),c={x:0,y:0};return c.x=Math.sin(h)*l+(r[0].x+a.x)/2,c.y=-Math.cos(h)*l+(r[0].y+a.y)/2,e==="start_left"&&(c.x=Math.sin(h+Math.PI)*l+(r[0].x+a.x)/2,c.y=-Math.cos(h+Math.PI)*l+(r[0].y+a.y)/2),e==="end_right"&&(c.x=Math.sin(h-Math.PI)*l+(r[0].x+a.x)/2-5,c.y=-Math.cos(h-Math.PI)*l+(r[0].y+a.y)/2-5),e==="end_left"&&(c.x=Math.sin(h)*l+(r[0].x+a.x)/2-5,c.y=-Math.cos(h)*l+(r[0].y+a.y)/2-5),c}function By(t){let e="",i="";for(const r of t)r!==void 0&&(r.startsWith("color:")||r.startsWith("text-align:")?i=i+r+";":e=e+r+";");return{style:e,labelStyle:i}}let hs=0;const Fy=()=>(hs++,"id-"+Math.random().toString(36).substr(2,12)+"-"+hs);function Ly(t){let e="";const i="0123456789abcdef",r=i.length;for(let n=0;nLy(t.length),Ey=function(){return{x:0,y:0,fill:void 0,anchor:"start",style:"#666",width:100,height:100,textMargin:0,rx:0,ry:0,valign:void 0}},My=function(t,e){const i=e.text.replace(On.lineBreakRegex," "),[,r]=Wn(e.fontSize),n=t.append("text");n.attr("x",e.x),n.attr("y",e.y),n.style("text-anchor",e.anchor),n.style("font-family",e.fontFamily),n.style("font-size",r),n.style("font-weight",e.fontWeight),n.attr("fill",e.fill),e.class!==void 0&&n.attr("class",e.class);const o=n.append("tspan");return o.attr("x",e.x+e.textMargin*2),o.attr("fill",e.fill),o.text(i),n},Oy=ci((t,e,i)=>{if(!t||(i=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"
"},i),On.lineBreakRegex.test(t)))return t;const r=t.split(" "),n=[];let o="";return r.forEach((s,a)=>{const l=nr(`${s} `,i),h=nr(o,i);if(l>e){const{hyphenatedStrings:g,remainingWord:p}=Iy(s,e,"-",i);n.push(o,...g),o=p}else h+l>=e?(n.push(o),o=s):o=[o,s].filter(Boolean).join(" ");a+1===r.length&&n.push(o)}),n.filter(s=>s!=="").join(i.joinWith)},(t,e,i)=>`${t}${e}${i.fontSize}${i.fontWeight}${i.fontFamily}${i.joinWith}`),Iy=ci((t,e,i="-",r)=>{r=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},r);const n=[...t],o=[];let s="";return n.forEach((a,l)=>{const h=`${s}${a}`;if(nr(h,r)>=e){const u=l+1,g=n.length===u,p=`${h}${i}`;o.push(g?h:p),s=""}else s=h}),{hyphenatedStrings:o,remainingWord:s}},(t,e,i="-",r)=>`${t}${e}${i}${r.fontSize}${r.fontWeight}${r.fontFamily}`);function $y(t,e){return e=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:15},e),zn(t,e).height}function nr(t,e){return e=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial"},e),zn(t,e).width}const zn=ci((t,e)=>{e=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial"},e);const{fontSize:i,fontFamily:r,fontWeight:n}=e;if(!t)return{width:0,height:0};const[,o]=Wn(i),s=["sans-serif",r],a=t.split(On.lineBreakRegex),l=[],h=Ot("body");if(!h.remove)return{width:0,height:0,lineHeight:0};const c=h.append("svg");for(const g of s){let p=0;const m={width:0,height:0,lineHeight:0};for(const k of a){const M=Ey();M.text=k||gy;const z=My(c,M).style("font-size",o).style("font-weight",n).style("font-family",g),b=(z._groups||z)[0][0].getBBox();if(b.width===0&&b.height===0)throw new Error("svg element not in render tree");m.width=Math.round(Math.max(m.width,b.width)),p=Math.round(b.height),m.height+=p,m.lineHeight=Math.round(Math.max(m.lineHeight,p))}l.push(m)}c.remove();const u=isNaN(l[1].height)||isNaN(l[1].width)||isNaN(l[1].lineHeight)||l[0].height>l[1].height&&l[0].width>l[1].width&&l[0].lineHeight>l[1].lineHeight?0:1;return l[u]},(t,e)=>`${t}${e.fontSize}${e.fontWeight}${e.fontFamily}`),Dy=class{constructor(e,i){this.deterministic=e,this.seed=i,this.count=i?i.length:0}next(){return this.deterministic?this.count++:Date.now()}};let Si;const Ny=function(t){return Si=Si||document.createElement("div"),t=escape(t).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),Si.innerHTML=t,unescape(Si.textContent)},Ie=t=>{if(S.debug("directiveSanitizer called with",t),typeof t=="object"&&(t.length?t.forEach(e=>Ie(e)):Object.keys(t).forEach(e=>{S.debug("Checking key",e),e.startsWith("__")&&(S.debug("sanitize deleting __ option",e),delete t[e]),e.includes("proto")&&(S.debug("sanitize deleting proto option",e),delete t[e]),e.includes("constr")&&(S.debug("sanitize deleting constr option",e),delete t[e]),e.includes("themeCSS")&&(S.debug("sanitizing themeCss option"),t[e]=Ni(t[e])),e.includes("fontFamily")&&(S.debug("sanitizing fontFamily option"),t[e]=Ni(t[e])),e.includes("altFontFamily")&&(S.debug("sanitizing altFontFamily option"),t[e]=Ni(t[e])),Zm.includes(e)?typeof t[e]=="object"&&(S.debug("sanitize deleting object",e),Ie(t[e])):(S.debug("sanitize deleting option",e),delete t[e])})),t.themeVariables){const e=Object.keys(t.themeVariables);for(const i of e){const r=t.themeVariables[i];r&&r.match&&!r.match(/^[\d "#%(),.;A-Za-z]+$/)&&(t.themeVariables[i]="")}}S.debug("After sanitization",t)},Ni=t=>{let e=0,i=0;for(const r of t){if(e{if(!r)return;const n=t.node().getBBox();t.append("text").text(r).attr("x",n.x+n.width/2).attr("y",-i).attr("class",e)},Wn=t=>{if(typeof t=="number")return[t,t+"px"];const e=parseInt(t,10);return Number.isNaN(e)?[void 0,void 0]:t===String(e)?[e,t+"px"]:[e,t]},Ri={assignWithDepth:st,wrapLabel:Oy,calculateTextHeight:$y,calculateTextWidth:nr,calculateTextDimensions:zn,detectInit:yy,detectDirective:ll,isSubstringInArray:Cy,interpolateToCurve:by,calcLabelPosition:ky,calcCardinalityPosition:Sy,calcTerminalLabelPosition:wy,formatUrl:xy,getStylesFromArray:By,generateId:Fy,random:Ay,runFunc:Ty,entityDecode:Ny,initIdGenerator:Dy,directiveSanitizer:Ie,sanitizeCss:Ni,insertTitle:Py,parseFontSize:Wn},cs="10.3.0",cl="c4",qy=t=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(t),zy=async()=>{const{diagram:t}=await Z(()=>import("./chunks/c4Diagram-36d27044.c2db1b81.js"),["assets/chunks/c4Diagram-36d27044.c2db1b81.js","assets/chunks/svgDrawCommon-f26cad39.493f1f49.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.e11407bf.js"]);return{id:cl,diagram:t}},Wy={id:cl,detector:qy,loader:zy},Hy=Wy,ul="flowchart",jy=(t,e)=>{var i,r;return((i=e==null?void 0:e.flowchart)==null?void 0:i.defaultRenderer)==="dagre-wrapper"||((r=e==null?void 0:e.flowchart)==null?void 0:r.defaultRenderer)==="elk"?!1:/^\s*graph/.test(t)},Uy=async()=>{const{diagram:t}=await Z(()=>import("./chunks/flowDiagram-698c8d5d.d6bb1fae.js"),["assets/chunks/flowDiagram-698c8d5d.d6bb1fae.js","assets/chunks/flowDb-8f9fc471.d59257b5.js","assets/chunks/layout.ca521a87.js","assets/chunks/styles-ff678862.a55da03b.js","assets/chunks/index-4c4adb72.5e4d3745.js","assets/chunks/edges-b00f0ec2.14be9f5e.js","assets/chunks/createText-285e50b4.f886ce05.js","assets/chunks/svgDraw-5d8a058e.ea5389d7.js","assets/chunks/line.075f786d.js","assets/chunks/array.9f3ba611.js","assets/chunks/path.53f90ab3.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.e11407bf.js"]);return{id:ul,diagram:t}},Yy={id:ul,detector:jy,loader:Uy},Vy=Yy,fl="flowchart-v2",Gy=(t,e)=>{var i,r,n;return((i=e==null?void 0:e.flowchart)==null?void 0:i.defaultRenderer)==="dagre-d3"||((r=e==null?void 0:e.flowchart)==null?void 0:r.defaultRenderer)==="elk"?!1:/^\s*graph/.test(t)&&((n=e==null?void 0:e.flowchart)==null?void 0:n.defaultRenderer)==="dagre-wrapper"?!0:/^\s*flowchart/.test(t)},Xy=async()=>{const{diagram:t}=await Z(()=>import("./chunks/flowDiagram-v2-d6437390.acd2e861.js"),["assets/chunks/flowDiagram-v2-d6437390.acd2e861.js","assets/chunks/flowDb-8f9fc471.d59257b5.js","assets/chunks/styles-ff678862.a55da03b.js","assets/chunks/layout.ca521a87.js","assets/chunks/index-4c4adb72.5e4d3745.js","assets/chunks/edges-b00f0ec2.14be9f5e.js","assets/chunks/createText-285e50b4.f886ce05.js","assets/chunks/svgDraw-5d8a058e.ea5389d7.js","assets/chunks/line.075f786d.js","assets/chunks/array.9f3ba611.js","assets/chunks/path.53f90ab3.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.e11407bf.js"]);return{id:fl,diagram:t}},Ky={id:fl,detector:Gy,loader:Xy},Zy=Ky,dl="er",Jy=t=>/^\s*erDiagram/.test(t),Qy=async()=>{const{diagram:t}=await Z(()=>import("./chunks/erDiagram-0ccc0425.a2587ab1.js"),["assets/chunks/erDiagram-0ccc0425.a2587ab1.js","assets/chunks/layout.ca521a87.js","assets/chunks/line.075f786d.js","assets/chunks/array.9f3ba611.js","assets/chunks/path.53f90ab3.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.e11407bf.js"]);return{id:dl,diagram:t}},tC={id:dl,detector:Jy,loader:Qy},eC=tC,pl="gitGraph",iC=t=>/^\s*gitGraph/.test(t),rC=async()=>{const{diagram:t}=await Z(()=>import("./chunks/gitGraphDiagram-a13ae597.e8dc1e8e.js"),["assets/chunks/gitGraphDiagram-a13ae597.e8dc1e8e.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.e11407bf.js"]);return{id:pl,diagram:t}},nC={id:pl,detector:iC,loader:rC},oC=nC,gl="gantt",sC=t=>/^\s*gantt/.test(t),aC=async()=>{const{diagram:t}=await Z(()=>import("./chunks/ganttDiagram-60845bff.9268dc5c.js"),["assets/chunks/ganttDiagram-60845bff.9268dc5c.js","assets/chunks/linear.ae897b18.js","assets/chunks/init.77b53fdd.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.e11407bf.js"]);return{id:gl,diagram:t}},lC={id:gl,detector:sC,loader:aC},hC=lC,ml="info",cC=t=>/^\s*info/.test(t),uC=async()=>{const{diagram:t}=await Z(()=>import("./chunks/infoDiagram-c976a9ed.ae30040b.js"),["assets/chunks/infoDiagram-c976a9ed.ae30040b.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.e11407bf.js"]);return{id:ml,diagram:t}},fC={id:ml,detector:cC,loader:uC},_l="pie",dC=t=>/^\s*pie/.test(t),pC=async()=>{const{diagram:t}=await Z(()=>import("./chunks/pieDiagram-5efcb91d.9463ffbb.js"),["assets/chunks/pieDiagram-5efcb91d.9463ffbb.js","assets/chunks/ordinal.b935e931.js","assets/chunks/init.77b53fdd.js","assets/chunks/array.9f3ba611.js","assets/chunks/path.53f90ab3.js","assets/chunks/arc.acf4fa71.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.e11407bf.js"]);return{id:_l,diagram:t}},gC={id:_l,detector:dC,loader:pC},mC=gC,yl="quadrantChart",_C=t=>/^\s*quadrantChart/.test(t),yC=async()=>{const{diagram:t}=await Z(()=>import("./chunks/quadrantDiagram-559115c7.675bfb90.js"),["assets/chunks/quadrantDiagram-559115c7.675bfb90.js","assets/chunks/linear.ae897b18.js","assets/chunks/init.77b53fdd.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.e11407bf.js"]);return{id:yl,diagram:t}},CC={id:yl,detector:_C,loader:yC},bC=CC,Cl="requirement",xC=t=>/^\s*requirement(Diagram)?/.test(t),TC=async()=>{const{diagram:t}=await Z(()=>import("./chunks/requirementDiagram-b2d6a344.80e58b3e.js"),["assets/chunks/requirementDiagram-b2d6a344.80e58b3e.js","assets/chunks/layout.ca521a87.js","assets/chunks/line.075f786d.js","assets/chunks/array.9f3ba611.js","assets/chunks/path.53f90ab3.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.e11407bf.js"]);return{id:Cl,diagram:t}},vC={id:Cl,detector:xC,loader:TC},kC=vC,bl="sequence",SC=t=>/^\s*sequenceDiagram/.test(t),wC=async()=>{const{diagram:t}=await Z(()=>import("./chunks/sequenceDiagram-583eee82.e80d25f4.js"),["assets/chunks/sequenceDiagram-583eee82.e80d25f4.js","assets/chunks/svgDrawCommon-f26cad39.493f1f49.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.e11407bf.js"]);return{id:bl,diagram:t}},BC={id:bl,detector:SC,loader:wC},FC=BC,xl="class",LC=(t,e)=>{var i;return((i=e==null?void 0:e.class)==null?void 0:i.defaultRenderer)==="dagre-wrapper"?!1:/^\s*classDiagram/.test(t)},AC=async()=>{const{diagram:t}=await Z(()=>import("./chunks/classDiagram-5e843ae7.7a63d6c7.js"),["assets/chunks/classDiagram-5e843ae7.7a63d6c7.js","assets/chunks/styles-88ad4441.f35605f9.js","assets/chunks/layout.ca521a87.js","assets/chunks/svgDraw-5d8a058e.ea5389d7.js","assets/chunks/line.075f786d.js","assets/chunks/array.9f3ba611.js","assets/chunks/path.53f90ab3.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.e11407bf.js"]);return{id:xl,diagram:t}},EC={id:xl,detector:LC,loader:AC},MC=EC,Tl="classDiagram",OC=(t,e)=>{var i;return/^\s*classDiagram/.test(t)&&((i=e==null?void 0:e.class)==null?void 0:i.defaultRenderer)==="dagre-wrapper"?!0:/^\s*classDiagram-v2/.test(t)},IC=async()=>{const{diagram:t}=await Z(()=>import("./chunks/classDiagram-v2-8c3b3e6a.276e10f7.js"),["assets/chunks/classDiagram-v2-8c3b3e6a.276e10f7.js","assets/chunks/styles-88ad4441.f35605f9.js","assets/chunks/layout.ca521a87.js","assets/chunks/index-4c4adb72.5e4d3745.js","assets/chunks/edges-b00f0ec2.14be9f5e.js","assets/chunks/createText-285e50b4.f886ce05.js","assets/chunks/svgDraw-5d8a058e.ea5389d7.js","assets/chunks/line.075f786d.js","assets/chunks/array.9f3ba611.js","assets/chunks/path.53f90ab3.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.e11407bf.js"]);return{id:Tl,diagram:t}},$C={id:Tl,detector:OC,loader:IC},DC=$C,vl="state",NC=(t,e)=>{var i;return((i=e==null?void 0:e.state)==null?void 0:i.defaultRenderer)==="dagre-wrapper"?!1:/^\s*stateDiagram/.test(t)},RC=async()=>{const{diagram:t}=await Z(()=>import("./chunks/stateDiagram-b1c07dc6.a584cd20.js"),["assets/chunks/stateDiagram-b1c07dc6.a584cd20.js","assets/chunks/styles-f626f8de.a3799276.js","assets/chunks/layout.ca521a87.js","assets/chunks/line.075f786d.js","assets/chunks/array.9f3ba611.js","assets/chunks/path.53f90ab3.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.e11407bf.js"]);return{id:vl,diagram:t}},PC={id:vl,detector:NC,loader:RC},qC=PC,kl="stateDiagram",zC=(t,e)=>{var i;return!!(/^\s*stateDiagram-v2/.test(t)||/^\s*stateDiagram/.test(t)&&((i=e==null?void 0:e.state)==null?void 0:i.defaultRenderer)==="dagre-wrapper")},WC=async()=>{const{diagram:t}=await Z(()=>import("./chunks/stateDiagram-v2-7c93469e.b7a5d2f2.js"),["assets/chunks/stateDiagram-v2-7c93469e.b7a5d2f2.js","assets/chunks/styles-f626f8de.a3799276.js","assets/chunks/layout.ca521a87.js","assets/chunks/index-4c4adb72.5e4d3745.js","assets/chunks/edges-b00f0ec2.14be9f5e.js","assets/chunks/createText-285e50b4.f886ce05.js","assets/chunks/svgDraw-5d8a058e.ea5389d7.js","assets/chunks/line.075f786d.js","assets/chunks/array.9f3ba611.js","assets/chunks/path.53f90ab3.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.e11407bf.js"]);return{id:kl,diagram:t}},HC={id:kl,detector:zC,loader:WC},jC=HC,Sl="journey",UC=t=>/^\s*journey/.test(t),YC=async()=>{const{diagram:t}=await Z(()=>import("./chunks/journeyDiagram-5120ee2f.0e5e0ae2.js"),["assets/chunks/journeyDiagram-5120ee2f.0e5e0ae2.js","assets/chunks/svgDrawCommon-f26cad39.493f1f49.js","assets/chunks/arc.acf4fa71.js","assets/chunks/path.53f90ab3.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.e11407bf.js"]);return{id:Sl,diagram:t}},VC={id:Sl,detector:UC,loader:YC},GC=VC,XC=()=>"",KC=XC,ZC=function(){},JC=(t,e,i)=>{try{S.debug(`Renering svg for syntax error -`);const r=Ot("#"+e),n=r.append("g");n.append("path").attr("class","error-icon").attr("d","m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z"),n.append("path").attr("class","error-icon").attr("d","m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z"),n.append("path").attr("class","error-icon").attr("d","m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z"),n.append("path").attr("class","error-icon").attr("d","m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z"),n.append("path").attr("class","error-icon").attr("d","m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z"),n.append("path").attr("class","error-icon").attr("d","m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z"),n.append("text").attr("class","error-text").attr("x",1440).attr("y",250).attr("font-size","150px").style("text-anchor","middle").text("Syntax error in text"),n.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text("mermaid version "+i),r.attr("height",100),r.attr("width",500),r.attr("viewBox","768 0 912 512")}catch(r){S.error("Error while rendering info diagram"),S.error(Ry(r))}},wl={setConf:ZC,draw:JC},QC={db:{clear:()=>{}},styles:KC,renderer:wl,parser:{parser:{yy:{}},parse:()=>{}},init:()=>{}},tb=QC,Bl="flowchart-elk",eb=(t,e)=>{var i;return!!(/^\s*flowchart-elk/.test(t)||/^\s*flowchart|graph/.test(t)&&((i=e==null?void 0:e.flowchart)==null?void 0:i.defaultRenderer)==="elk")},ib=async()=>{const{diagram:t}=await Z(()=>import("./chunks/flowchart-elk-definition-6f4e6aa0.fe34683e.js"),["assets/chunks/flowchart-elk-definition-6f4e6aa0.fe34683e.js","assets/chunks/flowDb-8f9fc471.d59257b5.js","assets/chunks/edges-b00f0ec2.14be9f5e.js","assets/chunks/createText-285e50b4.f886ce05.js","assets/chunks/svgDraw-5d8a058e.ea5389d7.js","assets/chunks/line.075f786d.js","assets/chunks/array.9f3ba611.js","assets/chunks/path.53f90ab3.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.e11407bf.js"]);return{id:Bl,diagram:t}},rb={id:Bl,detector:eb,loader:ib},nb=rb,Fl="timeline",ob=t=>/^\s*timeline/.test(t),sb=async()=>{const{diagram:t}=await Z(()=>import("./chunks/timeline-definition-491ea63c.903d7e91.js"),["assets/chunks/timeline-definition-491ea63c.903d7e91.js","assets/chunks/arc.acf4fa71.js","assets/chunks/path.53f90ab3.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.e11407bf.js"]);return{id:Fl,diagram:t}},ab={id:Fl,detector:ob,loader:sb},lb=ab,Ll="mindmap",hb=t=>/^\s*mindmap/.test(t),cb=async()=>{const{diagram:t}=await Z(()=>import("./chunks/mindmap-definition-0ab67801.6679988b.js"),["assets/chunks/mindmap-definition-0ab67801.6679988b.js","assets/chunks/createText-285e50b4.f886ce05.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.e11407bf.js"]);return{id:Ll,diagram:t}},ub={id:Ll,detector:hb,loader:cb},fb=ub,Al="sankey",db=t=>/^\s*sankey-beta/.test(t),pb=async()=>{const{diagram:t}=await Z(()=>import("./chunks/sankeyDiagram-e679478d.fd7d6ecc.js"),["assets/chunks/sankeyDiagram-e679478d.fd7d6ecc.js","assets/chunks/ordinal.b935e931.js","assets/chunks/init.77b53fdd.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.e11407bf.js"]);return{id:Al,diagram:t}},gb={id:Al,detector:db,loader:pb},mb=gb;let us=!1;const Hn=()=>{us||(us=!0,ir("error",tb,t=>t.toLowerCase().trim()==="error"),ir("---",{db:{clear:()=>{}},styles:{},renderer:{},parser:{parser:{yy:{}},parse:()=>{throw new Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks")}},init:()=>null},t=>t.toLowerCase().trimStart().startsWith("---")),sl(Hy,DC,MC,eC,hC,fC,mC,kC,FC,nb,Zy,Vy,fb,lb,oC,jC,qC,GC,bC,mb))},_b=t=>t.trimStart().replace(/^\s*%%(?!{)[^\n]+\n?/gm,"");class El{constructor(e){var i,r;this.text=e,this.type="graph",this.text+=` + ${e!==null?" type:"+e:""} based on the text:${t}`),{type:null,args:null}}},Cy=function(t,e){for(const[i,r]of e.entries())if(r.match(t))return i;return-1};function by(t,e){if(!t)return e;const i=`curve${t.charAt(0).toUpperCase()+t.slice(1)}`;return my[i]||e}function xy(t,e){const i=t.trim();if(i)return e.securityLevel!=="loose"?Cs(i):i}const Ty=(t,...e)=>{const i=t.split("."),r=i.length-1,n=i[r];let o=window;for(let s=0;s{i+=rr(o,e),e=o});let r=i/2,n;return e=void 0,t.forEach(o=>{if(e&&!n){const s=rr(o,e);if(s=1&&(n={x:o.x,y:o.y}),a>0&&a<1&&(n={x:(1-a)*e.x+a*o.x,y:(1-a)*e.y+a*o.y})}}e=o}),n}function ky(t){return t.length===1?t[0]:vy(t)}const Sy=(t,e,i)=>{let r;S.info(`our points ${JSON.stringify(e)}`),e[0]!==i&&(e=e.reverse());let o=25,s;r=void 0,e.forEach(c=>{if(r&&!s){const u=rr(c,r);if(u=1&&(s={x:c.x,y:c.y}),g>0&&g<1&&(s={x:(1-g)*r.x+g*c.x,y:(1-g)*r.y+g*c.y})}}r=c});const a=t?10:5,l=Math.atan2(e[0].y-s.y,e[0].x-s.x),h={x:0,y:0};return h.x=Math.sin(l)*a+(e[0].x+s.x)/2,h.y=-Math.cos(l)*a+(e[0].y+s.y)/2,h};function wy(t,e,i){let r=JSON.parse(JSON.stringify(i)),n;S.info("our points",r),e!=="start_left"&&e!=="start_right"&&(r=r.reverse()),r.forEach(u=>{n=u});let s=25+t,a;n=void 0,r.forEach(u=>{if(n&&!a){const g=rr(u,n);if(g=1&&(a={x:u.x,y:u.y}),p>0&&p<1&&(a={x:(1-p)*n.x+p*u.x,y:(1-p)*n.y+p*u.y})}}n=u});const l=10+t*.5,h=Math.atan2(r[0].y-a.y,r[0].x-a.x),c={x:0,y:0};return c.x=Math.sin(h)*l+(r[0].x+a.x)/2,c.y=-Math.cos(h)*l+(r[0].y+a.y)/2,e==="start_left"&&(c.x=Math.sin(h+Math.PI)*l+(r[0].x+a.x)/2,c.y=-Math.cos(h+Math.PI)*l+(r[0].y+a.y)/2),e==="end_right"&&(c.x=Math.sin(h-Math.PI)*l+(r[0].x+a.x)/2-5,c.y=-Math.cos(h-Math.PI)*l+(r[0].y+a.y)/2-5),e==="end_left"&&(c.x=Math.sin(h)*l+(r[0].x+a.x)/2-5,c.y=-Math.cos(h)*l+(r[0].y+a.y)/2-5),c}function By(t){let e="",i="";for(const r of t)r!==void 0&&(r.startsWith("color:")||r.startsWith("text-align:")?i=i+r+";":e=e+r+";");return{style:e,labelStyle:i}}let hs=0;const Fy=()=>(hs++,"id-"+Math.random().toString(36).substr(2,12)+"-"+hs);function Ly(t){let e="";const i="0123456789abcdef",r=i.length;for(let n=0;nLy(t.length),Ey=function(){return{x:0,y:0,fill:void 0,anchor:"start",style:"#666",width:100,height:100,textMargin:0,rx:0,ry:0,valign:void 0}},My=function(t,e){const i=e.text.replace(On.lineBreakRegex," "),[,r]=Wn(e.fontSize),n=t.append("text");n.attr("x",e.x),n.attr("y",e.y),n.style("text-anchor",e.anchor),n.style("font-family",e.fontFamily),n.style("font-size",r),n.style("font-weight",e.fontWeight),n.attr("fill",e.fill),e.class!==void 0&&n.attr("class",e.class);const o=n.append("tspan");return o.attr("x",e.x+e.textMargin*2),o.attr("fill",e.fill),o.text(i),n},Oy=ci((t,e,i)=>{if(!t||(i=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"
"},i),On.lineBreakRegex.test(t)))return t;const r=t.split(" "),n=[];let o="";return r.forEach((s,a)=>{const l=nr(`${s} `,i),h=nr(o,i);if(l>e){const{hyphenatedStrings:g,remainingWord:p}=Iy(s,e,"-",i);n.push(o,...g),o=p}else h+l>=e?(n.push(o),o=s):o=[o,s].filter(Boolean).join(" ");a+1===r.length&&n.push(o)}),n.filter(s=>s!=="").join(i.joinWith)},(t,e,i)=>`${t}${e}${i.fontSize}${i.fontWeight}${i.fontFamily}${i.joinWith}`),Iy=ci((t,e,i="-",r)=>{r=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},r);const n=[...t],o=[];let s="";return n.forEach((a,l)=>{const h=`${s}${a}`;if(nr(h,r)>=e){const u=l+1,g=n.length===u,p=`${h}${i}`;o.push(g?h:p),s=""}else s=h}),{hyphenatedStrings:o,remainingWord:s}},(t,e,i="-",r)=>`${t}${e}${i}${r.fontSize}${r.fontWeight}${r.fontFamily}`);function $y(t,e){return e=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:15},e),zn(t,e).height}function nr(t,e){return e=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial"},e),zn(t,e).width}const zn=ci((t,e)=>{e=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial"},e);const{fontSize:i,fontFamily:r,fontWeight:n}=e;if(!t)return{width:0,height:0};const[,o]=Wn(i),s=["sans-serif",r],a=t.split(On.lineBreakRegex),l=[],h=Ot("body");if(!h.remove)return{width:0,height:0,lineHeight:0};const c=h.append("svg");for(const g of s){let p=0;const m={width:0,height:0,lineHeight:0};for(const k of a){const M=Ey();M.text=k||gy;const z=My(c,M).style("font-size",o).style("font-weight",n).style("font-family",g),b=(z._groups||z)[0][0].getBBox();if(b.width===0&&b.height===0)throw new Error("svg element not in render tree");m.width=Math.round(Math.max(m.width,b.width)),p=Math.round(b.height),m.height+=p,m.lineHeight=Math.round(Math.max(m.lineHeight,p))}l.push(m)}c.remove();const u=isNaN(l[1].height)||isNaN(l[1].width)||isNaN(l[1].lineHeight)||l[0].height>l[1].height&&l[0].width>l[1].width&&l[0].lineHeight>l[1].lineHeight?0:1;return l[u]},(t,e)=>`${t}${e.fontSize}${e.fontWeight}${e.fontFamily}`),Dy=class{constructor(e,i){this.deterministic=e,this.seed=i,this.count=i?i.length:0}next(){return this.deterministic?this.count++:Date.now()}};let Si;const Ny=function(t){return Si=Si||document.createElement("div"),t=escape(t).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),Si.innerHTML=t,unescape(Si.textContent)},Ie=t=>{if(S.debug("directiveSanitizer called with",t),typeof t=="object"&&(t.length?t.forEach(e=>Ie(e)):Object.keys(t).forEach(e=>{S.debug("Checking key",e),e.startsWith("__")&&(S.debug("sanitize deleting __ option",e),delete t[e]),e.includes("proto")&&(S.debug("sanitize deleting proto option",e),delete t[e]),e.includes("constr")&&(S.debug("sanitize deleting constr option",e),delete t[e]),e.includes("themeCSS")&&(S.debug("sanitizing themeCss option"),t[e]=Ni(t[e])),e.includes("fontFamily")&&(S.debug("sanitizing fontFamily option"),t[e]=Ni(t[e])),e.includes("altFontFamily")&&(S.debug("sanitizing altFontFamily option"),t[e]=Ni(t[e])),Zm.includes(e)?typeof t[e]=="object"&&(S.debug("sanitize deleting object",e),Ie(t[e])):(S.debug("sanitize deleting option",e),delete t[e])})),t.themeVariables){const e=Object.keys(t.themeVariables);for(const i of e){const r=t.themeVariables[i];r&&r.match&&!r.match(/^[\d "#%(),.;A-Za-z]+$/)&&(t.themeVariables[i]="")}}S.debug("After sanitization",t)},Ni=t=>{let e=0,i=0;for(const r of t){if(e{if(!r)return;const n=t.node().getBBox();t.append("text").text(r).attr("x",n.x+n.width/2).attr("y",-i).attr("class",e)},Wn=t=>{if(typeof t=="number")return[t,t+"px"];const e=parseInt(t,10);return Number.isNaN(e)?[void 0,void 0]:t===String(e)?[e,t+"px"]:[e,t]},Ri={assignWithDepth:st,wrapLabel:Oy,calculateTextHeight:$y,calculateTextWidth:nr,calculateTextDimensions:zn,detectInit:yy,detectDirective:ll,isSubstringInArray:Cy,interpolateToCurve:by,calcLabelPosition:ky,calcCardinalityPosition:Sy,calcTerminalLabelPosition:wy,formatUrl:xy,getStylesFromArray:By,generateId:Fy,random:Ay,runFunc:Ty,entityDecode:Ny,initIdGenerator:Dy,directiveSanitizer:Ie,sanitizeCss:Ni,insertTitle:Py,parseFontSize:Wn},cs="10.3.0",cl="c4",qy=t=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(t),zy=async()=>{const{diagram:t}=await Z(()=>import("./chunks/c4Diagram-36d27044.81ee1009.js"),["assets/chunks/c4Diagram-36d27044.81ee1009.js","assets/chunks/svgDrawCommon-f26cad39.398614f4.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.71fa6e36.js"]);return{id:cl,diagram:t}},Wy={id:cl,detector:qy,loader:zy},Hy=Wy,ul="flowchart",jy=(t,e)=>{var i,r;return((i=e==null?void 0:e.flowchart)==null?void 0:i.defaultRenderer)==="dagre-wrapper"||((r=e==null?void 0:e.flowchart)==null?void 0:r.defaultRenderer)==="elk"?!1:/^\s*graph/.test(t)},Uy=async()=>{const{diagram:t}=await Z(()=>import("./chunks/flowDiagram-698c8d5d.30b27acf.js"),["assets/chunks/flowDiagram-698c8d5d.30b27acf.js","assets/chunks/flowDb-8f9fc471.70dad437.js","assets/chunks/layout.66644227.js","assets/chunks/styles-ff678862.621533d1.js","assets/chunks/index-4c4adb72.3f6562ef.js","assets/chunks/edges-b00f0ec2.d6f18c62.js","assets/chunks/createText-285e50b4.661aa36f.js","assets/chunks/svgDraw-5d8a058e.38485a41.js","assets/chunks/line.809d7f74.js","assets/chunks/array.9f3ba611.js","assets/chunks/path.53f90ab3.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.71fa6e36.js"]);return{id:ul,diagram:t}},Yy={id:ul,detector:jy,loader:Uy},Vy=Yy,fl="flowchart-v2",Gy=(t,e)=>{var i,r,n;return((i=e==null?void 0:e.flowchart)==null?void 0:i.defaultRenderer)==="dagre-d3"||((r=e==null?void 0:e.flowchart)==null?void 0:r.defaultRenderer)==="elk"?!1:/^\s*graph/.test(t)&&((n=e==null?void 0:e.flowchart)==null?void 0:n.defaultRenderer)==="dagre-wrapper"?!0:/^\s*flowchart/.test(t)},Xy=async()=>{const{diagram:t}=await Z(()=>import("./chunks/flowDiagram-v2-d6437390.14ee101d.js"),["assets/chunks/flowDiagram-v2-d6437390.14ee101d.js","assets/chunks/flowDb-8f9fc471.70dad437.js","assets/chunks/styles-ff678862.621533d1.js","assets/chunks/layout.66644227.js","assets/chunks/index-4c4adb72.3f6562ef.js","assets/chunks/edges-b00f0ec2.d6f18c62.js","assets/chunks/createText-285e50b4.661aa36f.js","assets/chunks/svgDraw-5d8a058e.38485a41.js","assets/chunks/line.809d7f74.js","assets/chunks/array.9f3ba611.js","assets/chunks/path.53f90ab3.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.71fa6e36.js"]);return{id:fl,diagram:t}},Ky={id:fl,detector:Gy,loader:Xy},Zy=Ky,dl="er",Jy=t=>/^\s*erDiagram/.test(t),Qy=async()=>{const{diagram:t}=await Z(()=>import("./chunks/erDiagram-0ccc0425.ab98041e.js"),["assets/chunks/erDiagram-0ccc0425.ab98041e.js","assets/chunks/layout.66644227.js","assets/chunks/line.809d7f74.js","assets/chunks/array.9f3ba611.js","assets/chunks/path.53f90ab3.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.71fa6e36.js"]);return{id:dl,diagram:t}},tC={id:dl,detector:Jy,loader:Qy},eC=tC,pl="gitGraph",iC=t=>/^\s*gitGraph/.test(t),rC=async()=>{const{diagram:t}=await Z(()=>import("./chunks/gitGraphDiagram-a13ae597.baecb4c3.js"),["assets/chunks/gitGraphDiagram-a13ae597.baecb4c3.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.71fa6e36.js"]);return{id:pl,diagram:t}},nC={id:pl,detector:iC,loader:rC},oC=nC,gl="gantt",sC=t=>/^\s*gantt/.test(t),aC=async()=>{const{diagram:t}=await Z(()=>import("./chunks/ganttDiagram-60845bff.88fb5aac.js"),["assets/chunks/ganttDiagram-60845bff.88fb5aac.js","assets/chunks/linear.ecff5eb1.js","assets/chunks/init.77b53fdd.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.71fa6e36.js"]);return{id:gl,diagram:t}},lC={id:gl,detector:sC,loader:aC},hC=lC,ml="info",cC=t=>/^\s*info/.test(t),uC=async()=>{const{diagram:t}=await Z(()=>import("./chunks/infoDiagram-c976a9ed.8fe15abe.js"),["assets/chunks/infoDiagram-c976a9ed.8fe15abe.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.71fa6e36.js"]);return{id:ml,diagram:t}},fC={id:ml,detector:cC,loader:uC},_l="pie",dC=t=>/^\s*pie/.test(t),pC=async()=>{const{diagram:t}=await Z(()=>import("./chunks/pieDiagram-5efcb91d.1354b84a.js"),["assets/chunks/pieDiagram-5efcb91d.1354b84a.js","assets/chunks/ordinal.b935e931.js","assets/chunks/init.77b53fdd.js","assets/chunks/array.9f3ba611.js","assets/chunks/path.53f90ab3.js","assets/chunks/arc.60bf6bcc.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.71fa6e36.js"]);return{id:_l,diagram:t}},gC={id:_l,detector:dC,loader:pC},mC=gC,yl="quadrantChart",_C=t=>/^\s*quadrantChart/.test(t),yC=async()=>{const{diagram:t}=await Z(()=>import("./chunks/quadrantDiagram-559115c7.018ee5bd.js"),["assets/chunks/quadrantDiagram-559115c7.018ee5bd.js","assets/chunks/linear.ecff5eb1.js","assets/chunks/init.77b53fdd.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.71fa6e36.js"]);return{id:yl,diagram:t}},CC={id:yl,detector:_C,loader:yC},bC=CC,Cl="requirement",xC=t=>/^\s*requirement(Diagram)?/.test(t),TC=async()=>{const{diagram:t}=await Z(()=>import("./chunks/requirementDiagram-b2d6a344.ee281397.js"),["assets/chunks/requirementDiagram-b2d6a344.ee281397.js","assets/chunks/layout.66644227.js","assets/chunks/line.809d7f74.js","assets/chunks/array.9f3ba611.js","assets/chunks/path.53f90ab3.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.71fa6e36.js"]);return{id:Cl,diagram:t}},vC={id:Cl,detector:xC,loader:TC},kC=vC,bl="sequence",SC=t=>/^\s*sequenceDiagram/.test(t),wC=async()=>{const{diagram:t}=await Z(()=>import("./chunks/sequenceDiagram-583eee82.76688222.js"),["assets/chunks/sequenceDiagram-583eee82.76688222.js","assets/chunks/svgDrawCommon-f26cad39.398614f4.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.71fa6e36.js"]);return{id:bl,diagram:t}},BC={id:bl,detector:SC,loader:wC},FC=BC,xl="class",LC=(t,e)=>{var i;return((i=e==null?void 0:e.class)==null?void 0:i.defaultRenderer)==="dagre-wrapper"?!1:/^\s*classDiagram/.test(t)},AC=async()=>{const{diagram:t}=await Z(()=>import("./chunks/classDiagram-5e843ae7.86956ecb.js"),["assets/chunks/classDiagram-5e843ae7.86956ecb.js","assets/chunks/styles-88ad4441.aa2ac1f2.js","assets/chunks/layout.66644227.js","assets/chunks/svgDraw-5d8a058e.38485a41.js","assets/chunks/line.809d7f74.js","assets/chunks/array.9f3ba611.js","assets/chunks/path.53f90ab3.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.71fa6e36.js"]);return{id:xl,diagram:t}},EC={id:xl,detector:LC,loader:AC},MC=EC,Tl="classDiagram",OC=(t,e)=>{var i;return/^\s*classDiagram/.test(t)&&((i=e==null?void 0:e.class)==null?void 0:i.defaultRenderer)==="dagre-wrapper"?!0:/^\s*classDiagram-v2/.test(t)},IC=async()=>{const{diagram:t}=await Z(()=>import("./chunks/classDiagram-v2-8c3b3e6a.76bb871a.js"),["assets/chunks/classDiagram-v2-8c3b3e6a.76bb871a.js","assets/chunks/styles-88ad4441.aa2ac1f2.js","assets/chunks/layout.66644227.js","assets/chunks/index-4c4adb72.3f6562ef.js","assets/chunks/edges-b00f0ec2.d6f18c62.js","assets/chunks/createText-285e50b4.661aa36f.js","assets/chunks/svgDraw-5d8a058e.38485a41.js","assets/chunks/line.809d7f74.js","assets/chunks/array.9f3ba611.js","assets/chunks/path.53f90ab3.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.71fa6e36.js"]);return{id:Tl,diagram:t}},$C={id:Tl,detector:OC,loader:IC},DC=$C,vl="state",NC=(t,e)=>{var i;return((i=e==null?void 0:e.state)==null?void 0:i.defaultRenderer)==="dagre-wrapper"?!1:/^\s*stateDiagram/.test(t)},RC=async()=>{const{diagram:t}=await Z(()=>import("./chunks/stateDiagram-b1c07dc6.a8381588.js"),["assets/chunks/stateDiagram-b1c07dc6.a8381588.js","assets/chunks/styles-f626f8de.a466b9e4.js","assets/chunks/layout.66644227.js","assets/chunks/line.809d7f74.js","assets/chunks/array.9f3ba611.js","assets/chunks/path.53f90ab3.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.71fa6e36.js"]);return{id:vl,diagram:t}},PC={id:vl,detector:NC,loader:RC},qC=PC,kl="stateDiagram",zC=(t,e)=>{var i;return!!(/^\s*stateDiagram-v2/.test(t)||/^\s*stateDiagram/.test(t)&&((i=e==null?void 0:e.state)==null?void 0:i.defaultRenderer)==="dagre-wrapper")},WC=async()=>{const{diagram:t}=await Z(()=>import("./chunks/stateDiagram-v2-7c93469e.a55c5ec3.js"),["assets/chunks/stateDiagram-v2-7c93469e.a55c5ec3.js","assets/chunks/styles-f626f8de.a466b9e4.js","assets/chunks/layout.66644227.js","assets/chunks/index-4c4adb72.3f6562ef.js","assets/chunks/edges-b00f0ec2.d6f18c62.js","assets/chunks/createText-285e50b4.661aa36f.js","assets/chunks/svgDraw-5d8a058e.38485a41.js","assets/chunks/line.809d7f74.js","assets/chunks/array.9f3ba611.js","assets/chunks/path.53f90ab3.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.71fa6e36.js"]);return{id:kl,diagram:t}},HC={id:kl,detector:zC,loader:WC},jC=HC,Sl="journey",UC=t=>/^\s*journey/.test(t),YC=async()=>{const{diagram:t}=await Z(()=>import("./chunks/journeyDiagram-5120ee2f.ba313e1f.js"),["assets/chunks/journeyDiagram-5120ee2f.ba313e1f.js","assets/chunks/svgDrawCommon-f26cad39.398614f4.js","assets/chunks/arc.60bf6bcc.js","assets/chunks/path.53f90ab3.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.71fa6e36.js"]);return{id:Sl,diagram:t}},VC={id:Sl,detector:UC,loader:YC},GC=VC,XC=()=>"",KC=XC,ZC=function(){},JC=(t,e,i)=>{try{S.debug(`Renering svg for syntax error +`);const r=Ot("#"+e),n=r.append("g");n.append("path").attr("class","error-icon").attr("d","m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z"),n.append("path").attr("class","error-icon").attr("d","m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z"),n.append("path").attr("class","error-icon").attr("d","m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z"),n.append("path").attr("class","error-icon").attr("d","m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z"),n.append("path").attr("class","error-icon").attr("d","m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z"),n.append("path").attr("class","error-icon").attr("d","m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z"),n.append("text").attr("class","error-text").attr("x",1440).attr("y",250).attr("font-size","150px").style("text-anchor","middle").text("Syntax error in text"),n.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text("mermaid version "+i),r.attr("height",100),r.attr("width",500),r.attr("viewBox","768 0 912 512")}catch(r){S.error("Error while rendering info diagram"),S.error(Ry(r))}},wl={setConf:ZC,draw:JC},QC={db:{clear:()=>{}},styles:KC,renderer:wl,parser:{parser:{yy:{}},parse:()=>{}},init:()=>{}},tb=QC,Bl="flowchart-elk",eb=(t,e)=>{var i;return!!(/^\s*flowchart-elk/.test(t)||/^\s*flowchart|graph/.test(t)&&((i=e==null?void 0:e.flowchart)==null?void 0:i.defaultRenderer)==="elk")},ib=async()=>{const{diagram:t}=await Z(()=>import("./chunks/flowchart-elk-definition-6f4e6aa0.e5ef11f4.js"),["assets/chunks/flowchart-elk-definition-6f4e6aa0.e5ef11f4.js","assets/chunks/flowDb-8f9fc471.70dad437.js","assets/chunks/edges-b00f0ec2.d6f18c62.js","assets/chunks/createText-285e50b4.661aa36f.js","assets/chunks/svgDraw-5d8a058e.38485a41.js","assets/chunks/line.809d7f74.js","assets/chunks/array.9f3ba611.js","assets/chunks/path.53f90ab3.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.71fa6e36.js"]);return{id:Bl,diagram:t}},rb={id:Bl,detector:eb,loader:ib},nb=rb,Fl="timeline",ob=t=>/^\s*timeline/.test(t),sb=async()=>{const{diagram:t}=await Z(()=>import("./chunks/timeline-definition-491ea63c.7e8db34e.js"),["assets/chunks/timeline-definition-491ea63c.7e8db34e.js","assets/chunks/arc.60bf6bcc.js","assets/chunks/path.53f90ab3.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.71fa6e36.js"]);return{id:Fl,diagram:t}},ab={id:Fl,detector:ob,loader:sb},lb=ab,Ll="mindmap",hb=t=>/^\s*mindmap/.test(t),cb=async()=>{const{diagram:t}=await Z(()=>import("./chunks/mindmap-definition-0ab67801.1a340cf0.js"),["assets/chunks/mindmap-definition-0ab67801.1a340cf0.js","assets/chunks/createText-285e50b4.661aa36f.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.71fa6e36.js"]);return{id:Ll,diagram:t}},ub={id:Ll,detector:hb,loader:cb},fb=ub,Al="sankey",db=t=>/^\s*sankey-beta/.test(t),pb=async()=>{const{diagram:t}=await Z(()=>import("./chunks/sankeyDiagram-e679478d.72f10021.js"),["assets/chunks/sankeyDiagram-e679478d.72f10021.js","assets/chunks/ordinal.b935e931.js","assets/chunks/init.77b53fdd.js","assets/chunks/framework.be0a7370.js","assets/chunks/theme.71fa6e36.js"]);return{id:Al,diagram:t}},gb={id:Al,detector:db,loader:pb},mb=gb;let us=!1;const Hn=()=>{us||(us=!0,ir("error",tb,t=>t.toLowerCase().trim()==="error"),ir("---",{db:{clear:()=>{}},styles:{},renderer:{},parser:{parser:{yy:{}},parse:()=>{throw new Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks")}},init:()=>null},t=>t.toLowerCase().trimStart().startsWith("---")),sl(Hy,DC,MC,eC,hC,fC,mC,kC,FC,nb,Zy,Vy,fb,lb,oC,jC,qC,GC,bC,mb))},_b=t=>t.trimStart().replace(/^\s*%%(?!{)[^\n]+\n?/gm,"");class El{constructor(e){var i,r;this.text=e,this.type="graph",this.text+=` `;const n=Vt();try{this.type=Tr(e,n)}catch(a){this.type="error",this.detectError=a}const o=qn(this.type);S.debug("Type "+this.type),this.db=o.db,(r=(i=this.db).clear)==null||r.call(i),this.renderer=o.renderer,this.parser=o.parser;const s=this.parser.parse.bind(this.parser);this.parser.parse=a=>s(_b(W_(a,this.db))),this.parser.parser.yy=this.db,o.init&&(o.init(n),S.info("Initialized diagram "+this.type,n)),this.parse()}parse(){var e,i;if(this.detectError)throw this.detectError;(i=(e=this.db).clear)==null||i.call(e),this.parser.parse(this.text)}async render(e,i){await this.renderer.draw(this.text,e,i,this)}getParser(){return this.parser}getType(){return this.type}}const jn=async t=>{const e=Tr(t,Vt());try{qn(e)}catch{const r=py(e);if(!r)throw new ol(`Diagram ${e} not found.`);const{id:n,diagram:o}=await r();ir(n,o)}return new El(t)};let gn=[];const F1=t=>{gn.push(t)},yb=()=>{gn.forEach(t=>{t()}),gn=[]},Cb="graphics-document document";function bb(t,e){t.attr("role",Cb),e!==""&&t.attr("aria-roledescription",e)}function xb(t,e,i,r){if(t.insert!==void 0){if(i){const n=`chart-desc-${r}`;t.attr("aria-describedby",n),t.insert("desc",":first-child").attr("id",n).text(i)}if(e){const n=`chart-title-${r}`;t.attr("aria-labelledby",n),t.insert("title",":first-child").attr("id",n).text(e)}}}const Ml=["graph","flowchart","flowchart-v2","flowchart-elk","stateDiagram","stateDiagram-v2"],Tb=5e4,vb="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",kb="sandbox",Sb="loose",wb="http://www.w3.org/2000/svg",Bb="http://www.w3.org/1999/xlink",Fb="http://www.w3.org/1999/xhtml",Lb="100%",Ab="100%",Eb="border:0;margin:0;",Mb="margin:0",Ob="allow-top-navigation-by-user-activation allow-popups",Ib='The "iframe" tag is not supported by your browser.',$b=["foreignobject"],Db=["dominant-baseline"];async function Nb(t,e){Hn();try{(await jn(t)).parse()}catch(i){if(e!=null&&e.suppressErrors)return!1;throw i}return!0}const Rb=function(t){let e=t;return e=e.replace(/style.*:\S*#.*;/g,function(i){return i.substring(0,i.length-1)}),e=e.replace(/classDef.*:\S*#.*;/g,function(i){return i.substring(0,i.length-1)}),e=e.replace(/#\w+;/g,function(i){const r=i.substring(1,i.length-1);return/^\+?\d+$/.test(r)?"๏ฌ‚ยฐยฐ"+r+"ยถรŸ":"๏ฌ‚ยฐ"+r+"ยถรŸ"}),e},Pb=function(t){return t.replace(/๏ฌ‚ยฐยฐ/g,"&#").replace(/๏ฌ‚ยฐ/g,"&").replace(/ยถรŸ/g,";")},fs=(t,e,i=[])=>` .${t} ${e} { ${i.join(" !important; ")} !important; }`,qb=(t,e,i={})=>{var r;let n="";if(t.themeCSS!==void 0&&(n+=` ${t.themeCSS}`),t.fontFamily!==void 0&&(n+=` diff --git a/pr-383/assets/blog_overview.md.0a87de80.js b/pr-383/assets/blog_overview.md.781fbb8c.js similarity index 95% rename from pr-383/assets/blog_overview.md.0a87de80.js rename to pr-383/assets/blog_overview.md.781fbb8c.js index 3f22dc4b8..cd844a189 100644 --- a/pr-383/assets/blog_overview.md.0a87de80.js +++ b/pr-383/assets/blog_overview.md.781fbb8c.js @@ -1 +1 @@ -import{_ as e,o,c as t,X as a}from"./chunks/framework.be0a7370.js";const f=JSON.parse('{"title":"Blog","description":"This page provides an overview of all the blog posts. It serves as a central hub for all the blog content.","frontmatter":{"description":"This page provides an overview of all the blog posts. It serves as a central hub for all the blog content.","head":[["meta",{"name":"og:title","content":"Blog | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"blog/overview.md","filePath":"blog/overview.md","lastUpdated":1717671233000}'),l={name:"blog/overview.md"},r=a('

Blog โ€‹

Welcome to our blog! Here, you'll find a variety of articles on a range of topics. Use this overview to navigate through our content.

Table of contents โ€‹

Stay tuned for more exciting content!

',5),i=[r];function n(s,c,h,p,d,g){return o(),t("div",null,i)}const _=e(l,[["render",n]]);export{f as __pageData,_ as default}; +import{_ as e,o,c as t,X as a}from"./chunks/framework.be0a7370.js";const f=JSON.parse('{"title":"Blog","description":"This page provides an overview of all the blog posts. It serves as a central hub for all the blog content.","frontmatter":{"description":"This page provides an overview of all the blog posts. It serves as a central hub for all the blog content.","head":[["meta",{"name":"og:title","content":"Blog | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"blog/overview.md","filePath":"blog/overview.md","lastUpdated":1717768398000}'),l={name:"blog/overview.md"},r=a('

Blog โ€‹

Welcome to our blog! Here, you'll find a variety of articles on a range of topics. Use this overview to navigate through our content.

Table of contents โ€‹

Stay tuned for more exciting content!

',5),i=[r];function n(s,c,h,p,d,g){return o(),t("div",null,i)}const _=e(l,[["render",n]]);export{f as __pageData,_ as default}; diff --git a/pr-383/assets/blog_overview.md.0a87de80.lean.js b/pr-383/assets/blog_overview.md.781fbb8c.lean.js similarity index 91% rename from pr-383/assets/blog_overview.md.0a87de80.lean.js rename to pr-383/assets/blog_overview.md.781fbb8c.lean.js index 97b787281..c4e00d8c4 100644 --- a/pr-383/assets/blog_overview.md.0a87de80.lean.js +++ b/pr-383/assets/blog_overview.md.781fbb8c.lean.js @@ -1 +1 @@ -import{_ as e,o,c as t,X as a}from"./chunks/framework.be0a7370.js";const f=JSON.parse('{"title":"Blog","description":"This page provides an overview of all the blog posts. It serves as a central hub for all the blog content.","frontmatter":{"description":"This page provides an overview of all the blog posts. It serves as a central hub for all the blog content.","head":[["meta",{"name":"og:title","content":"Blog | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"blog/overview.md","filePath":"blog/overview.md","lastUpdated":1717671233000}'),l={name:"blog/overview.md"},r=a("",5),i=[r];function n(s,c,h,p,d,g){return o(),t("div",null,i)}const _=e(l,[["render",n]]);export{f as __pageData,_ as default}; +import{_ as e,o,c as t,X as a}from"./chunks/framework.be0a7370.js";const f=JSON.parse('{"title":"Blog","description":"This page provides an overview of all the blog posts. It serves as a central hub for all the blog content.","frontmatter":{"description":"This page provides an overview of all the blog posts. It serves as a central hub for all the blog content.","head":[["meta",{"name":"og:title","content":"Blog | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"blog/overview.md","filePath":"blog/overview.md","lastUpdated":1717768398000}'),l={name:"blog/overview.md"},r=a("",5),i=[r];function n(s,c,h,p,d,g){return o(),t("div",null,i)}const _=e(l,[["render",n]]);export{f as __pageData,_ as default}; diff --git a/pr-383/assets/blog_rollkit-the-first-sovereign-rollup-framework.md.ee4e4d6c.js b/pr-383/assets/blog_rollkit-the-first-sovereign-rollup-framework.md.156637b0.js similarity index 99% rename from pr-383/assets/blog_rollkit-the-first-sovereign-rollup-framework.md.ee4e4d6c.js rename to pr-383/assets/blog_rollkit-the-first-sovereign-rollup-framework.md.156637b0.js index 905e312d8..b6e4d6829 100644 --- a/pr-383/assets/blog_rollkit-the-first-sovereign-rollup-framework.md.ee4e4d6c.js +++ b/pr-383/assets/blog_rollkit-the-first-sovereign-rollup-framework.md.156637b0.js @@ -1 +1 @@ -import{_ as l,o as r,c as a,a as o,p as c,m as h,k as e,O as d,X as p}from"./chunks/framework.be0a7370.js";const u="/docs-preview/pr-383/img/Rollkit-cover.jpg";const m={name:"Twitter"},i=t=>(c("data-v-23ec5da3"),t=t(),h(),t),f={class:"twitter-tweet","data-lang":"en","data-theme":"dark"},g=i(()=>e("p",{lang:"de",dir:"ltr"},[o("rollkit start "),e("a",{href:"https://t.co/tytjFm1Z4Y"},"pic.twitter.com/tytjFm1Z4Y")],-1)),k=i(()=>e("a",{href:"https://twitter.com/JoshCStein/status/1783880747301880161?ref_src=twsrc%5Etfw"},"April 26, 2024",-1));function b(t,n,s,B,q,x){return r(),a("blockquote",f,[g,o("โ€” Josh Stein ๐Ÿคณโœจ (@JoshCStein) "),k])}const v=l(m,[["render",b],["__scopeId","data-v-23ec5da3"]]),y=e("h1",{id:"rollkit-the-first-sovereign-rollup-framework",tabindex:"-1"},[o("Rollkit: The First Sovereign Rollup Framework "),e("a",{class:"header-anchor",href:"#rollkit-the-first-sovereign-rollup-framework","aria-label":'Permalink to "Rollkit: The First Sovereign Rollup Framework"'},"โ€‹")],-1),w=e("p",null,"By Rollkit",-1),_=e("p",null,[e("img",{src:u,alt:"Rollkit blog cover"})],-1),S=e("p",null,"Bitcoin to Ethereum took 7 years. Ethereum to more scalable alt-L1s took 1โ€“2 years. And then Cosmos SDK and CometBFT brought down time-to-launch a sovereign L1 to months.",-1),C=e("p",null,[o("Now, Rollkit makes deploying any VM or application on its own sovereign chain as easy as typing "),e("strong",null,"rollkit start"),o(".")],-1),T=p('

Rollkit provides a path to one-click sovereignty for any crypto application, enabling any developer to launch their own sovereign rollups within seconds.

Sovereign rollups combine the self-governance of a Layer 1 with the ease of deploying a rollup. They remove the need to recruit a secure validator set or bootstrap security by prematurely launching a token. Just like an independent L1, sovereign rollups retain the ability to hard fork which allows them to protect against hacks or bugs. This provides its community the ability to enforce social consensus and be sovereign.

Without the overhead of a settlement layer, sovereign rollups can directly interoperate with shared security when using the same DA layer.

By using a generic application interface like ABCI++, Rollkit is compatible with the Cosmos SDK, the leading framework for building sovereign blockchains. This enables all Cosmos SDK developers to build a sovereign rollup and tap into all the powerful cosmos ecosystem tooling theyโ€™re used to including IBC, ABCI++, and Skip Protocol's Slinky and BlockSDK.

Developers have full-freedom to deploy a VM or define their own execution environment, unconstrained by the overhead of an enshrined settlement layer that must process fraud or ZK proofs for their rollups. This means that instead of a canonical on-chain light client that comes with an enshrined settlement layer, sovereign rollups can define how they interoperate with other blockchains by having on-chain light clients of each other as needed.

Take Control โ€‹

In the past, developers have been compelled to accept a degree of trust in convincing validators to organize and independently run nodes that secure a new blockchain. This requires launching premature tokens, inflating away their token supply in order to maintain incentive alignment with validators and offset their operational costs. This does not let developers focus on the core product theyโ€™re building. Sovereign rollups empower developers to get rid of this need to launch a token prematurely for bootstrapping a validator set and spending an excessively high amount of internal resources on blockchain development.

Existing settled rollups come with the overhead of an enshrined settlement layer like Ethereum L1 where it is difficult and expensive to unwind a token on an L2 and move to another L2 without relying on trusted liquidity bridging intermediaries. This also comes with becoming subordinate to the social consensus of an enshrined settlement layer, which they may or may not align with.

Sovereign rollups donโ€™t need to settle to an external blockchain and can instead fully own their settlement. This allows them to protect against hacks and bugs, and facilitate upgrades via hard forks. They introduce rollup light clients that verify DA directly through data availability sampling and verify execution state proofs allowing asynchronous composability as needed. This in turn paves the path forward for trust-minimized interoperability between sovereign chains that share the same DA layer.

Sovereign rollups remove the need to have a bridge contract that is upgradeable by an offchain council and instead allows the sovereign community to define rules via fully onchain governance.

Build with the Best โ€‹

Cosmos SDKโ€™s rich array of developer tooling, battle-tested and refined over the past several years, is available to Rollkit developers from day one. Developers can use popular wallet infrastructure, block explorers and indexers supporting CometBFT RPCs, speak IBC across the interchain, have Cosmwasm smart contracts along with Abstract SDK, utilize MEV and free lanes via the BlockSDK and enshrine oracles in block production with Slinky from Skip Protocol. More cosmos related resources.

Rollkit rollups interact with a state machine via the Application Blockchain Interface (ABCI++). This allows it to be used as an alternative to CometBFT for any ABCI application. Rollkit comes with a custom start handler that can be used by Cosmos SDK blockchains to use it as its ABCI client while still following the release branches of upstream Cosmos SDK. This compatibility enables developers to use tools like abci-cli to test and debug rollups.

Optimize for your needs โ€‹

Rollkit allows developers to optimize between the different modular components of a sovereign chain as needed. Rollkit allows you to:

  • Choose between data availability layers that implement the go-da interface.

  • Choose any ABCI++ compatible virtual machine.

  • Utilize the Sequencing API to delegate sequencing to the shared sequencer network of your choice or even delegate sequencing to the DA layer to go based. Choose between state validity modes: Pessimistic, Optimistic, or ZK or use a combination of both zk and optimistic schemes. Eliminate the need to launch a token or designate the native token or any token for gas fees.

  • Customize block time to just a couple hundred milliseconds and produce blocks only when needed.

  • Configure the fork choice rule.

Rollkit rollups pay only for data availability on demand. There is no sequencer split required, nor will there ever be any kind of rent seeking model imposed on Rollkit rollups. Rollkit rollups preserve the advantages of a Cosmos SDK blockchain but reduce the overhead of deploying and maintaining a validator set.

Break Free. Be Sovereign. โ€‹

Get started with launching your own sovereign chain with Rollkit. If youโ€™re thinking of building a sovereign chain, weโ€™d love to hear from you. Fill out this form.

',19),D=JSON.parse('{"title":"Rollkit: The First Sovereign Rollup Framework","description":"Launch a sovereign, customizable blockchain as easily as a smart contract","frontmatter":{"head":[["meta",{"name":"title","content":"Rollkit: The First Sovereign Rollup Framework"}],["meta",{"name":"description","content":"Launch a sovereign, customizable blockchain as easily as a smart contract"}],["meta",{"name":"keywords","content":"Rollkit, Cosmos-SDK"}],["meta",{"name":"og:title","content":"Rollkit: The First Sovereign Rollup Framework | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"blog/rollkit-the-first-sovereign-rollup-framework.md","filePath":"blog/rollkit-the-first-sovereign-rollup-framework.md","lastUpdated":1717671233000}'),R={name:"blog/rollkit-the-first-sovereign-rollup-framework.md"},F=Object.assign(R,{setup(t){return(n,s)=>(r(),a("div",null,[y,w,_,S,C,d(v),T]))}});export{D as __pageData,F as default}; +import{_ as l,o as r,c as a,a as o,p as c,m as h,k as e,O as d,X as p}from"./chunks/framework.be0a7370.js";const u="/docs-preview/pr-383/img/Rollkit-cover.jpg";const m={name:"Twitter"},i=t=>(c("data-v-23ec5da3"),t=t(),h(),t),f={class:"twitter-tweet","data-lang":"en","data-theme":"dark"},g=i(()=>e("p",{lang:"de",dir:"ltr"},[o("rollkit start "),e("a",{href:"https://t.co/tytjFm1Z4Y"},"pic.twitter.com/tytjFm1Z4Y")],-1)),k=i(()=>e("a",{href:"https://twitter.com/JoshCStein/status/1783880747301880161?ref_src=twsrc%5Etfw"},"April 26, 2024",-1));function b(t,n,s,B,q,x){return r(),a("blockquote",f,[g,o("โ€” Josh Stein ๐Ÿคณโœจ (@JoshCStein) "),k])}const v=l(m,[["render",b],["__scopeId","data-v-23ec5da3"]]),y=e("h1",{id:"rollkit-the-first-sovereign-rollup-framework",tabindex:"-1"},[o("Rollkit: The First Sovereign Rollup Framework "),e("a",{class:"header-anchor",href:"#rollkit-the-first-sovereign-rollup-framework","aria-label":'Permalink to "Rollkit: The First Sovereign Rollup Framework"'},"โ€‹")],-1),w=e("p",null,"By Rollkit",-1),_=e("p",null,[e("img",{src:u,alt:"Rollkit blog cover"})],-1),S=e("p",null,"Bitcoin to Ethereum took 7 years. Ethereum to more scalable alt-L1s took 1โ€“2 years. And then Cosmos SDK and CometBFT brought down time-to-launch a sovereign L1 to months.",-1),C=e("p",null,[o("Now, Rollkit makes deploying any VM or application on its own sovereign chain as easy as typing "),e("strong",null,"rollkit start"),o(".")],-1),T=p('

Rollkit provides a path to one-click sovereignty for any crypto application, enabling any developer to launch their own sovereign rollups within seconds.

Sovereign rollups combine the self-governance of a Layer 1 with the ease of deploying a rollup. They remove the need to recruit a secure validator set or bootstrap security by prematurely launching a token. Just like an independent L1, sovereign rollups retain the ability to hard fork which allows them to protect against hacks or bugs. This provides its community the ability to enforce social consensus and be sovereign.

Without the overhead of a settlement layer, sovereign rollups can directly interoperate with shared security when using the same DA layer.

By using a generic application interface like ABCI++, Rollkit is compatible with the Cosmos SDK, the leading framework for building sovereign blockchains. This enables all Cosmos SDK developers to build a sovereign rollup and tap into all the powerful cosmos ecosystem tooling theyโ€™re used to including IBC, ABCI++, and Skip Protocol's Slinky and BlockSDK.

Developers have full-freedom to deploy a VM or define their own execution environment, unconstrained by the overhead of an enshrined settlement layer that must process fraud or ZK proofs for their rollups. This means that instead of a canonical on-chain light client that comes with an enshrined settlement layer, sovereign rollups can define how they interoperate with other blockchains by having on-chain light clients of each other as needed.

Take Control โ€‹

In the past, developers have been compelled to accept a degree of trust in convincing validators to organize and independently run nodes that secure a new blockchain. This requires launching premature tokens, inflating away their token supply in order to maintain incentive alignment with validators and offset their operational costs. This does not let developers focus on the core product theyโ€™re building. Sovereign rollups empower developers to get rid of this need to launch a token prematurely for bootstrapping a validator set and spending an excessively high amount of internal resources on blockchain development.

Existing settled rollups come with the overhead of an enshrined settlement layer like Ethereum L1 where it is difficult and expensive to unwind a token on an L2 and move to another L2 without relying on trusted liquidity bridging intermediaries. This also comes with becoming subordinate to the social consensus of an enshrined settlement layer, which they may or may not align with.

Sovereign rollups donโ€™t need to settle to an external blockchain and can instead fully own their settlement. This allows them to protect against hacks and bugs, and facilitate upgrades via hard forks. They introduce rollup light clients that verify DA directly through data availability sampling and verify execution state proofs allowing asynchronous composability as needed. This in turn paves the path forward for trust-minimized interoperability between sovereign chains that share the same DA layer.

Sovereign rollups remove the need to have a bridge contract that is upgradeable by an offchain council and instead allows the sovereign community to define rules via fully onchain governance.

Build with the Best โ€‹

Cosmos SDKโ€™s rich array of developer tooling, battle-tested and refined over the past several years, is available to Rollkit developers from day one. Developers can use popular wallet infrastructure, block explorers and indexers supporting CometBFT RPCs, speak IBC across the interchain, have Cosmwasm smart contracts along with Abstract SDK, utilize MEV and free lanes via the BlockSDK and enshrine oracles in block production with Slinky from Skip Protocol. More cosmos related resources.

Rollkit rollups interact with a state machine via the Application Blockchain Interface (ABCI++). This allows it to be used as an alternative to CometBFT for any ABCI application. Rollkit comes with a custom start handler that can be used by Cosmos SDK blockchains to use it as its ABCI client while still following the release branches of upstream Cosmos SDK. This compatibility enables developers to use tools like abci-cli to test and debug rollups.

Optimize for your needs โ€‹

Rollkit allows developers to optimize between the different modular components of a sovereign chain as needed. Rollkit allows you to:

  • Choose between data availability layers that implement the go-da interface.

  • Choose any ABCI++ compatible virtual machine.

  • Utilize the Sequencing API to delegate sequencing to the shared sequencer network of your choice or even delegate sequencing to the DA layer to go based. Choose between state validity modes: Pessimistic, Optimistic, or ZK or use a combination of both zk and optimistic schemes. Eliminate the need to launch a token or designate the native token or any token for gas fees.

  • Customize block time to just a couple hundred milliseconds and produce blocks only when needed.

  • Configure the fork choice rule.

Rollkit rollups pay only for data availability on demand. There is no sequencer split required, nor will there ever be any kind of rent seeking model imposed on Rollkit rollups. Rollkit rollups preserve the advantages of a Cosmos SDK blockchain but reduce the overhead of deploying and maintaining a validator set.

Break Free. Be Sovereign. โ€‹

Get started with launching your own sovereign chain with Rollkit. If youโ€™re thinking of building a sovereign chain, weโ€™d love to hear from you. Fill out this form.

',19),D=JSON.parse('{"title":"Rollkit: The First Sovereign Rollup Framework","description":"Launch a sovereign, customizable blockchain as easily as a smart contract","frontmatter":{"head":[["meta",{"name":"title","content":"Rollkit: The First Sovereign Rollup Framework"}],["meta",{"name":"description","content":"Launch a sovereign, customizable blockchain as easily as a smart contract"}],["meta",{"name":"keywords","content":"Rollkit, Cosmos-SDK"}],["meta",{"name":"og:title","content":"Rollkit: The First Sovereign Rollup Framework | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"blog/rollkit-the-first-sovereign-rollup-framework.md","filePath":"blog/rollkit-the-first-sovereign-rollup-framework.md","lastUpdated":1717768398000}'),R={name:"blog/rollkit-the-first-sovereign-rollup-framework.md"},F=Object.assign(R,{setup(t){return(n,s)=>(r(),a("div",null,[y,w,_,S,C,d(v),T]))}});export{D as __pageData,F as default}; diff --git a/pr-383/assets/blog_rollkit-the-first-sovereign-rollup-framework.md.ee4e4d6c.lean.js b/pr-383/assets/blog_rollkit-the-first-sovereign-rollup-framework.md.156637b0.lean.js similarity index 97% rename from pr-383/assets/blog_rollkit-the-first-sovereign-rollup-framework.md.ee4e4d6c.lean.js rename to pr-383/assets/blog_rollkit-the-first-sovereign-rollup-framework.md.156637b0.lean.js index ce3c91836..cc5a4f867 100644 --- a/pr-383/assets/blog_rollkit-the-first-sovereign-rollup-framework.md.ee4e4d6c.lean.js +++ b/pr-383/assets/blog_rollkit-the-first-sovereign-rollup-framework.md.156637b0.lean.js @@ -1 +1 @@ -import{_ as l,o as r,c as a,a as o,p as c,m as h,k as e,O as d,X as p}from"./chunks/framework.be0a7370.js";const u="/docs-preview/pr-383/img/Rollkit-cover.jpg";const m={name:"Twitter"},i=t=>(c("data-v-23ec5da3"),t=t(),h(),t),f={class:"twitter-tweet","data-lang":"en","data-theme":"dark"},g=i(()=>e("p",{lang:"de",dir:"ltr"},[o("rollkit start "),e("a",{href:"https://t.co/tytjFm1Z4Y"},"pic.twitter.com/tytjFm1Z4Y")],-1)),k=i(()=>e("a",{href:"https://twitter.com/JoshCStein/status/1783880747301880161?ref_src=twsrc%5Etfw"},"April 26, 2024",-1));function b(t,n,s,B,q,x){return r(),a("blockquote",f,[g,o("โ€” Josh Stein ๐Ÿคณโœจ (@JoshCStein) "),k])}const v=l(m,[["render",b],["__scopeId","data-v-23ec5da3"]]),y=e("h1",{id:"rollkit-the-first-sovereign-rollup-framework",tabindex:"-1"},[o("Rollkit: The First Sovereign Rollup Framework "),e("a",{class:"header-anchor",href:"#rollkit-the-first-sovereign-rollup-framework","aria-label":'Permalink to "Rollkit: The First Sovereign Rollup Framework"'},"โ€‹")],-1),w=e("p",null,"By Rollkit",-1),_=e("p",null,[e("img",{src:u,alt:"Rollkit blog cover"})],-1),S=e("p",null,"Bitcoin to Ethereum took 7 years. Ethereum to more scalable alt-L1s took 1โ€“2 years. And then Cosmos SDK and CometBFT brought down time-to-launch a sovereign L1 to months.",-1),C=e("p",null,[o("Now, Rollkit makes deploying any VM or application on its own sovereign chain as easy as typing "),e("strong",null,"rollkit start"),o(".")],-1),T=p("",19),D=JSON.parse('{"title":"Rollkit: The First Sovereign Rollup Framework","description":"Launch a sovereign, customizable blockchain as easily as a smart contract","frontmatter":{"head":[["meta",{"name":"title","content":"Rollkit: The First Sovereign Rollup Framework"}],["meta",{"name":"description","content":"Launch a sovereign, customizable blockchain as easily as a smart contract"}],["meta",{"name":"keywords","content":"Rollkit, Cosmos-SDK"}],["meta",{"name":"og:title","content":"Rollkit: The First Sovereign Rollup Framework | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"blog/rollkit-the-first-sovereign-rollup-framework.md","filePath":"blog/rollkit-the-first-sovereign-rollup-framework.md","lastUpdated":1717671233000}'),R={name:"blog/rollkit-the-first-sovereign-rollup-framework.md"},F=Object.assign(R,{setup(t){return(n,s)=>(r(),a("div",null,[y,w,_,S,C,d(v),T]))}});export{D as __pageData,F as default}; +import{_ as l,o as r,c as a,a as o,p as c,m as h,k as e,O as d,X as p}from"./chunks/framework.be0a7370.js";const u="/docs-preview/pr-383/img/Rollkit-cover.jpg";const m={name:"Twitter"},i=t=>(c("data-v-23ec5da3"),t=t(),h(),t),f={class:"twitter-tweet","data-lang":"en","data-theme":"dark"},g=i(()=>e("p",{lang:"de",dir:"ltr"},[o("rollkit start "),e("a",{href:"https://t.co/tytjFm1Z4Y"},"pic.twitter.com/tytjFm1Z4Y")],-1)),k=i(()=>e("a",{href:"https://twitter.com/JoshCStein/status/1783880747301880161?ref_src=twsrc%5Etfw"},"April 26, 2024",-1));function b(t,n,s,B,q,x){return r(),a("blockquote",f,[g,o("โ€” Josh Stein ๐Ÿคณโœจ (@JoshCStein) "),k])}const v=l(m,[["render",b],["__scopeId","data-v-23ec5da3"]]),y=e("h1",{id:"rollkit-the-first-sovereign-rollup-framework",tabindex:"-1"},[o("Rollkit: The First Sovereign Rollup Framework "),e("a",{class:"header-anchor",href:"#rollkit-the-first-sovereign-rollup-framework","aria-label":'Permalink to "Rollkit: The First Sovereign Rollup Framework"'},"โ€‹")],-1),w=e("p",null,"By Rollkit",-1),_=e("p",null,[e("img",{src:u,alt:"Rollkit blog cover"})],-1),S=e("p",null,"Bitcoin to Ethereum took 7 years. Ethereum to more scalable alt-L1s took 1โ€“2 years. And then Cosmos SDK and CometBFT brought down time-to-launch a sovereign L1 to months.",-1),C=e("p",null,[o("Now, Rollkit makes deploying any VM or application on its own sovereign chain as easy as typing "),e("strong",null,"rollkit start"),o(".")],-1),T=p("",19),D=JSON.parse('{"title":"Rollkit: The First Sovereign Rollup Framework","description":"Launch a sovereign, customizable blockchain as easily as a smart contract","frontmatter":{"head":[["meta",{"name":"title","content":"Rollkit: The First Sovereign Rollup Framework"}],["meta",{"name":"description","content":"Launch a sovereign, customizable blockchain as easily as a smart contract"}],["meta",{"name":"keywords","content":"Rollkit, Cosmos-SDK"}],["meta",{"name":"og:title","content":"Rollkit: The First Sovereign Rollup Framework | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"blog/rollkit-the-first-sovereign-rollup-framework.md","filePath":"blog/rollkit-the-first-sovereign-rollup-framework.md","lastUpdated":1717768398000}'),R={name:"blog/rollkit-the-first-sovereign-rollup-framework.md"},F=Object.assign(R,{setup(t){return(n,s)=>(r(),a("div",null,[y,w,_,S,C,d(v),T]))}});export{D as __pageData,F as default}; diff --git a/pr-383/assets/blog_sovereign-rollups-on-bitcoin.md.aab6757b.js b/pr-383/assets/blog_sovereign-rollups-on-bitcoin.md.b1f2b92d.js similarity index 99% rename from pr-383/assets/blog_sovereign-rollups-on-bitcoin.md.aab6757b.js rename to pr-383/assets/blog_sovereign-rollups-on-bitcoin.md.b1f2b92d.js index 50fb9e4b1..2e7f5df01 100644 --- a/pr-383/assets/blog_sovereign-rollups-on-bitcoin.md.aab6757b.js +++ b/pr-383/assets/blog_sovereign-rollups-on-bitcoin.md.b1f2b92d.js @@ -1,2 +1,2 @@ -import{_ as i}from"./chunks/rollkit-bitcoin-1.d0e25124.js";import{_ as e,o as a,c as n,X as l,k as t,a as o}from"./chunks/framework.be0a7370.js";const r="/docs-preview/pr-383/bitcoin-rollkit/rollkit-bitcoin.png",s="/docs-preview/pr-383/bitcoin-rollkit/rollkit-bitcoin-2.png",x=JSON.parse('{"title":"Sovereign rollups on Bitcoin with Rollkit","description":"Today, we are proud to announce that Rollkit is the first rollup framework to support sovereign rollups on Bitcoin. This allows Rollkit rollups to use Bitcoin for data availability. The implementation is in alpha, but we invite curious developers to experiment with it.","frontmatter":{"head":[["meta",{"name":"title","content":"Sovereign rollups on Bitcoin with Rollkit"}],["meta",{"name":"description","content":"Today, we are proud to announce that Rollkit is the first rollup framework to support sovereign rollups on Bitcoin. This allows Rollkit rollups to use Bitcoin for data availability. The implementation is in alpha, but we invite curious developers to experiment with it."}],["meta",{"name":"keywords","content":"Rollkit, Celestia"}],["meta",{"name":"og:image","content":"/img/Rollkit-cover.jpg"}],["meta",{"name":"og:title","content":"Sovereign rollups on Bitcoin with Rollkit | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"blog/sovereign-rollups-on-bitcoin.md","filePath":"blog/sovereign-rollups-on-bitcoin.md","lastUpdated":1717671233000}'),c={name:"blog/sovereign-rollups-on-bitcoin.md"},d=l('

Sovereign rollups on Bitcoin with Rollkit โ€‹

By Rollkit

rollkit-bitcoinOriginally published on 5 March 2023

Today, we are proud to announce that Rollkit is the first rollup framework to support sovereign rollups on Bitcoin. An early research implementation allows Rollkit rollups to use Bitcoin for data availability.

Rollkit is opening the door for developers to create rollups with arbitrary execution environments that inherit Bitcoinโ€™s data availability guarantees and re-org resistance. With the new integration it is now possible to run the EVM on Bitcoin as a Rollkit sovereign rollup. Sovereign rollups on Bitcoin not only expand the possibilities for rollups, but also have the potential to help bootstrap a healthy blockspace fee market on Bitcoin, enabling a more sustainable security budget.

Tl;dr โ€‹

  • Sovereign rollups using Bitcoin for data availability are now a reality with Rollkitโ€™s new early research integration.
  • Follow along with a demo of the EVM running on Bitcoin as a sovereign Rollkit rollup.
  • The implementation was possible due to Bitcoin's Taproot upgrade and Ordinals' usage of Bitcoin for publishing arbitrary data.

Posting data on Bitcoin with Taproot โ€‹

On Feb. 1, 2023, the Luxor mining pool mined the largest Bitcoin block (#774628) ever, approximately 4 MB. Most of the blockspace was used to inscribe a Taproot Wizards NFT with Ordinals, a project that implements NFTs on Bitcoin by publishing the image data on-chain.

Bitcoin NFTs use Taproot witnesses to inscribe arbitrary data, enabled by Bitcoin's Taproot upgrade. Taproot witnesses provide a slightly better payload-to-data ratio than SegWit transactions. A standard transaction can include up to around 390kB of arbitrary data while still passing through the public mempool. A non-standard transaction, included by a miner directly without passing through the mempool, can include close to 4MB of arbitrary data. In short, with SegWit, it became viable to post big blobs of data to the Bitcoin blockchain.

Since then, the usage of Ordinals for NFT inscriptions and Taproot utilization has kicked off. Eric Wall found that at the time of his tweet, posting data on Bitcoin was 7x cheaper than Ethereum. Now that there are thousands of inscriptions on Bitcoin, it has become clear that sovereign rollups and an ecosystem of dapps on Bitcoin could become a reality. The missing piece: a rollup framework for easily integrating Bitcoin as a data availability layer.

Integrating Bitcoin as a data availability layer into Rollkit โ€‹

Rollkit is a modular framework for rollups, where developers can plug-in custom execution layers and data availability layers. Initially, Rollkit only supported Celestia as an option for data availability and consensus. Now, Bitcoin is an option, thanks to an early research implementation of a Bitcoin data availability module for Rollkit. In this case, sovereign rollups manage their own execution and settlement while offloading consensus and data availability to Bitcoin.

rollkit-bitcoin-rollup

How Rollkit posts data to Bitcoin โ€‹

To write and read data on Bitcoin, we make use of Taproot transactions. To facilitate this, we implemented a Go package called bitcoin-da that provides a reader/writer interface to Bitcoin. For details of how the interface works and how it uses Taproot, see the specs. The package can be re-used by any project that wants to read or write data on Bitcoin.

Rollkit was built with modularity at its core. It has a data availability interface so that developers can simply implement specific methods to add a new data availability layer. To add a data availability layer, implementers need to satisfy the DataAvailabilityLayerClient interface which defines the behavior of the data availability client, and the BlockRetriever interface which defines how blocks can be synced. These interfaces live in the da package. The most important methods in these interfaces are SubmitBlock and RetrieveBlock for reading and writing the blocks.

After implementing the Taproot reader/writer interface for Bitcoin (bitcoin-da), adding it as a data availability module for Rollkit took less than a day. We mostly only had to implement the SubmitBlock and RetrieveBlocks functions for Rollkit to call the Read and Write methods in bitcoin-da.

rollkit-bitcoin-rollup-2

EVM on Bitcoin demo โ€‹

Rollkit supports custom execution layers, including EVM, CosmWasm, or the Cosmos SDK. To test the integration, we used Rollkit to run the EVM (using Ethermint) as a sovereign rollup on a local Bitcoin test network. See below for a demo.

',21),h=t("iframe",{title:"Rollkit: Ethermint + Bitcoin DA demo",src:"https://www.youtube.com/embed/qBKFEctzgT0",allowfullscreen:""},` +import{_ as i}from"./chunks/rollkit-bitcoin-1.d0e25124.js";import{_ as e,o as a,c as n,X as l,k as t,a as o}from"./chunks/framework.be0a7370.js";const r="/docs-preview/pr-383/bitcoin-rollkit/rollkit-bitcoin.png",s="/docs-preview/pr-383/bitcoin-rollkit/rollkit-bitcoin-2.png",x=JSON.parse('{"title":"Sovereign rollups on Bitcoin with Rollkit","description":"Today, we are proud to announce that Rollkit is the first rollup framework to support sovereign rollups on Bitcoin. This allows Rollkit rollups to use Bitcoin for data availability. The implementation is in alpha, but we invite curious developers to experiment with it.","frontmatter":{"head":[["meta",{"name":"title","content":"Sovereign rollups on Bitcoin with Rollkit"}],["meta",{"name":"description","content":"Today, we are proud to announce that Rollkit is the first rollup framework to support sovereign rollups on Bitcoin. This allows Rollkit rollups to use Bitcoin for data availability. The implementation is in alpha, but we invite curious developers to experiment with it."}],["meta",{"name":"keywords","content":"Rollkit, Celestia"}],["meta",{"name":"og:image","content":"/img/Rollkit-cover.jpg"}],["meta",{"name":"og:title","content":"Sovereign rollups on Bitcoin with Rollkit | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"blog/sovereign-rollups-on-bitcoin.md","filePath":"blog/sovereign-rollups-on-bitcoin.md","lastUpdated":1717768398000}'),c={name:"blog/sovereign-rollups-on-bitcoin.md"},d=l('

Sovereign rollups on Bitcoin with Rollkit โ€‹

By Rollkit

rollkit-bitcoinOriginally published on 5 March 2023

Today, we are proud to announce that Rollkit is the first rollup framework to support sovereign rollups on Bitcoin. An early research implementation allows Rollkit rollups to use Bitcoin for data availability.

Rollkit is opening the door for developers to create rollups with arbitrary execution environments that inherit Bitcoinโ€™s data availability guarantees and re-org resistance. With the new integration it is now possible to run the EVM on Bitcoin as a Rollkit sovereign rollup. Sovereign rollups on Bitcoin not only expand the possibilities for rollups, but also have the potential to help bootstrap a healthy blockspace fee market on Bitcoin, enabling a more sustainable security budget.

Tl;dr โ€‹

  • Sovereign rollups using Bitcoin for data availability are now a reality with Rollkitโ€™s new early research integration.
  • Follow along with a demo of the EVM running on Bitcoin as a sovereign Rollkit rollup.
  • The implementation was possible due to Bitcoin's Taproot upgrade and Ordinals' usage of Bitcoin for publishing arbitrary data.

Posting data on Bitcoin with Taproot โ€‹

On Feb. 1, 2023, the Luxor mining pool mined the largest Bitcoin block (#774628) ever, approximately 4 MB. Most of the blockspace was used to inscribe a Taproot Wizards NFT with Ordinals, a project that implements NFTs on Bitcoin by publishing the image data on-chain.

Bitcoin NFTs use Taproot witnesses to inscribe arbitrary data, enabled by Bitcoin's Taproot upgrade. Taproot witnesses provide a slightly better payload-to-data ratio than SegWit transactions. A standard transaction can include up to around 390kB of arbitrary data while still passing through the public mempool. A non-standard transaction, included by a miner directly without passing through the mempool, can include close to 4MB of arbitrary data. In short, with SegWit, it became viable to post big blobs of data to the Bitcoin blockchain.

Since then, the usage of Ordinals for NFT inscriptions and Taproot utilization has kicked off. Eric Wall found that at the time of his tweet, posting data on Bitcoin was 7x cheaper than Ethereum. Now that there are thousands of inscriptions on Bitcoin, it has become clear that sovereign rollups and an ecosystem of dapps on Bitcoin could become a reality. The missing piece: a rollup framework for easily integrating Bitcoin as a data availability layer.

Integrating Bitcoin as a data availability layer into Rollkit โ€‹

Rollkit is a modular framework for rollups, where developers can plug-in custom execution layers and data availability layers. Initially, Rollkit only supported Celestia as an option for data availability and consensus. Now, Bitcoin is an option, thanks to an early research implementation of a Bitcoin data availability module for Rollkit. In this case, sovereign rollups manage their own execution and settlement while offloading consensus and data availability to Bitcoin.

rollkit-bitcoin-rollup

How Rollkit posts data to Bitcoin โ€‹

To write and read data on Bitcoin, we make use of Taproot transactions. To facilitate this, we implemented a Go package called bitcoin-da that provides a reader/writer interface to Bitcoin. For details of how the interface works and how it uses Taproot, see the specs. The package can be re-used by any project that wants to read or write data on Bitcoin.

Rollkit was built with modularity at its core. It has a data availability interface so that developers can simply implement specific methods to add a new data availability layer. To add a data availability layer, implementers need to satisfy the DataAvailabilityLayerClient interface which defines the behavior of the data availability client, and the BlockRetriever interface which defines how blocks can be synced. These interfaces live in the da package. The most important methods in these interfaces are SubmitBlock and RetrieveBlock for reading and writing the blocks.

After implementing the Taproot reader/writer interface for Bitcoin (bitcoin-da), adding it as a data availability module for Rollkit took less than a day. We mostly only had to implement the SubmitBlock and RetrieveBlocks functions for Rollkit to call the Read and Write methods in bitcoin-da.

rollkit-bitcoin-rollup-2

EVM on Bitcoin demo โ€‹

Rollkit supports custom execution layers, including EVM, CosmWasm, or the Cosmos SDK. To test the integration, we used Rollkit to run the EVM (using Ethermint) as a sovereign rollup on a local Bitcoin test network. See below for a demo.

',21),h=t("iframe",{title:"Rollkit: Ethermint + Bitcoin DA demo",src:"https://www.youtube.com/embed/qBKFEctzgT0",allowfullscreen:""},` `,-1),p=t("h2",{id:"conclusion",tabindex:"-1"},[o("Conclusion "),t("a",{class:"header-anchor",href:"#conclusion","aria-label":'Permalink to "Conclusion"'},"โ€‹")],-1),u=t("p",null,[o("As we move towards a future where sovereign communities will form around different applications, asking them to incur the high cost and overhead of deploying a layer 1 blockchain to be sovereign is not sustainable. "),t("a",{href:"https://blog.celestia.org/sovereign-rollup-chains/",target:"_blank",rel:"noreferrer"},"Sovereign rollups"),o(" fix this by making it possible to deploy a sovereign chain that inherits the data availability and consensus of another layer 1 chain such as Bitcoin.")],-1),m=t("p",null,[o("Our goal with Rollkit is to make it easy to build and customize rollups. We invite you to play around Rollkit and build sovereign rollups on Bitcoin, or customize Rollkit with different execution environments and data availability layers. For details on how to run Rollkit with the Bitcoin data availability module, see the instructions "),t("a",{href:"/docs-preview/pr-383/docs/tutorials/bitcoin"},"here"),o(". Keep in mind that the integration is an early research implementation and it is not yet production-ready!")],-1),b=t("p",null,"Modularism, not maximalism.",-1),g=[d,h,p,u,m,b];function f(k,w,y,v,B,_){return a(),n("div",null,g)}const S=e(c,[["render",f]]);export{x as __pageData,S as default}; diff --git a/pr-383/assets/blog_sovereign-rollups-on-bitcoin.md.aab6757b.lean.js b/pr-383/assets/blog_sovereign-rollups-on-bitcoin.md.b1f2b92d.lean.js similarity index 97% rename from pr-383/assets/blog_sovereign-rollups-on-bitcoin.md.aab6757b.lean.js rename to pr-383/assets/blog_sovereign-rollups-on-bitcoin.md.b1f2b92d.lean.js index f9bef4d57..e677f4bba 100644 --- a/pr-383/assets/blog_sovereign-rollups-on-bitcoin.md.aab6757b.lean.js +++ b/pr-383/assets/blog_sovereign-rollups-on-bitcoin.md.b1f2b92d.lean.js @@ -1,2 +1,2 @@ -import{_ as i}from"./chunks/rollkit-bitcoin-1.d0e25124.js";import{_ as e,o as a,c as n,X as l,k as t,a as o}from"./chunks/framework.be0a7370.js";const r="/docs-preview/pr-383/bitcoin-rollkit/rollkit-bitcoin.png",s="/docs-preview/pr-383/bitcoin-rollkit/rollkit-bitcoin-2.png",x=JSON.parse('{"title":"Sovereign rollups on Bitcoin with Rollkit","description":"Today, we are proud to announce that Rollkit is the first rollup framework to support sovereign rollups on Bitcoin. This allows Rollkit rollups to use Bitcoin for data availability. The implementation is in alpha, but we invite curious developers to experiment with it.","frontmatter":{"head":[["meta",{"name":"title","content":"Sovereign rollups on Bitcoin with Rollkit"}],["meta",{"name":"description","content":"Today, we are proud to announce that Rollkit is the first rollup framework to support sovereign rollups on Bitcoin. This allows Rollkit rollups to use Bitcoin for data availability. The implementation is in alpha, but we invite curious developers to experiment with it."}],["meta",{"name":"keywords","content":"Rollkit, Celestia"}],["meta",{"name":"og:image","content":"/img/Rollkit-cover.jpg"}],["meta",{"name":"og:title","content":"Sovereign rollups on Bitcoin with Rollkit | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"blog/sovereign-rollups-on-bitcoin.md","filePath":"blog/sovereign-rollups-on-bitcoin.md","lastUpdated":1717671233000}'),c={name:"blog/sovereign-rollups-on-bitcoin.md"},d=l("",21),h=t("iframe",{title:"Rollkit: Ethermint + Bitcoin DA demo",src:"https://www.youtube.com/embed/qBKFEctzgT0",allowfullscreen:""},` +import{_ as i}from"./chunks/rollkit-bitcoin-1.d0e25124.js";import{_ as e,o as a,c as n,X as l,k as t,a as o}from"./chunks/framework.be0a7370.js";const r="/docs-preview/pr-383/bitcoin-rollkit/rollkit-bitcoin.png",s="/docs-preview/pr-383/bitcoin-rollkit/rollkit-bitcoin-2.png",x=JSON.parse('{"title":"Sovereign rollups on Bitcoin with Rollkit","description":"Today, we are proud to announce that Rollkit is the first rollup framework to support sovereign rollups on Bitcoin. This allows Rollkit rollups to use Bitcoin for data availability. The implementation is in alpha, but we invite curious developers to experiment with it.","frontmatter":{"head":[["meta",{"name":"title","content":"Sovereign rollups on Bitcoin with Rollkit"}],["meta",{"name":"description","content":"Today, we are proud to announce that Rollkit is the first rollup framework to support sovereign rollups on Bitcoin. This allows Rollkit rollups to use Bitcoin for data availability. The implementation is in alpha, but we invite curious developers to experiment with it."}],["meta",{"name":"keywords","content":"Rollkit, Celestia"}],["meta",{"name":"og:image","content":"/img/Rollkit-cover.jpg"}],["meta",{"name":"og:title","content":"Sovereign rollups on Bitcoin with Rollkit | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"blog/sovereign-rollups-on-bitcoin.md","filePath":"blog/sovereign-rollups-on-bitcoin.md","lastUpdated":1717768398000}'),c={name:"blog/sovereign-rollups-on-bitcoin.md"},d=l("",21),h=t("iframe",{title:"Rollkit: Ethermint + Bitcoin DA demo",src:"https://www.youtube.com/embed/qBKFEctzgT0",allowfullscreen:""},` `,-1),p=t("h2",{id:"conclusion",tabindex:"-1"},[o("Conclusion "),t("a",{class:"header-anchor",href:"#conclusion","aria-label":'Permalink to "Conclusion"'},"โ€‹")],-1),u=t("p",null,[o("As we move towards a future where sovereign communities will form around different applications, asking them to incur the high cost and overhead of deploying a layer 1 blockchain to be sovereign is not sustainable. "),t("a",{href:"https://blog.celestia.org/sovereign-rollup-chains/",target:"_blank",rel:"noreferrer"},"Sovereign rollups"),o(" fix this by making it possible to deploy a sovereign chain that inherits the data availability and consensus of another layer 1 chain such as Bitcoin.")],-1),m=t("p",null,[o("Our goal with Rollkit is to make it easy to build and customize rollups. We invite you to play around Rollkit and build sovereign rollups on Bitcoin, or customize Rollkit with different execution environments and data availability layers. For details on how to run Rollkit with the Bitcoin data availability module, see the instructions "),t("a",{href:"/docs-preview/pr-383/docs/tutorials/bitcoin"},"here"),o(". Keep in mind that the integration is an early research implementation and it is not yet production-ready!")],-1),b=t("p",null,"Modularism, not maximalism.",-1),g=[d,h,p,u,m,b];function f(k,w,y,v,B,_){return a(),n("div",null,g)}const S=e(c,[["render",f]]);export{x as __pageData,S as default}; diff --git a/pr-383/assets/chunks/@localSearchIndexroot.3fd80146.js b/pr-383/assets/chunks/@localSearchIndexroot.3fd80146.js new file mode 100644 index 000000000..e0250e80c --- /dev/null +++ b/pr-383/assets/chunks/@localSearchIndexroot.3fd80146.js @@ -0,0 +1 @@ +const e='{"documentCount":309,"nextId":309,"documentIds":{"0":"/docs-preview/pr-383/README#rollkit-documentation-site","1":"/docs-preview/pr-383/README#building-the-site","2":"/docs-preview/pr-383/README#contribution-guidelines","3":"/docs-preview/pr-383/README#directory-structure","4":"/docs-preview/pr-383/README#feedback-suggestions","5":"/docs-preview/pr-383/blog/overview#blog","6":"/docs-preview/pr-383/blog/overview#table-of-contents","7":"/docs-preview/pr-383/blog/rollkit-the-first-sovereign-rollup-framework#rollkit-the-first-sovereign-rollup-framework","8":"/docs-preview/pr-383/blog/rollkit-the-first-sovereign-rollup-framework#take-control","9":"/docs-preview/pr-383/blog/rollkit-the-first-sovereign-rollup-framework#build-with-the-best","10":"/docs-preview/pr-383/blog/rollkit-the-first-sovereign-rollup-framework#optimize-for-your-needs","11":"/docs-preview/pr-383/blog/rollkit-the-first-sovereign-rollup-framework#break-free-be-sovereign","12":"/docs-preview/pr-383/blog/sovereign-rollups-on-bitcoin#sovereign-rollups-on-bitcoin-with-rollkit","13":"/docs-preview/pr-383/blog/sovereign-rollups-on-bitcoin#tl-dr","14":"/docs-preview/pr-383/blog/sovereign-rollups-on-bitcoin#posting-data-on-bitcoin-with-taproot","15":"/docs-preview/pr-383/blog/sovereign-rollups-on-bitcoin#integrating-bitcoin-as-a-data-availability-layer-into-rollkit","16":"/docs-preview/pr-383/blog/sovereign-rollups-on-bitcoin#how-rollkit-posts-data-to-bitcoin","17":"/docs-preview/pr-383/blog/sovereign-rollups-on-bitcoin#evm-on-bitcoin-demo","18":"/docs-preview/pr-383/blog/sovereign-rollups-on-bitcoin#conclusion","19":"/docs-preview/pr-383/guides/block-times#how-to-change-speed-of-block-production","20":"/docs-preview/pr-383/guides/connect-local-da#how-to-connect-a-rollup-to-a-local-da-network","21":"/docs-preview/pr-383/guides/connect-local-da#setting-up-a-local-da-network","22":"/docs-preview/pr-383/guides/connect-local-da#configuring-your-rollup-to-connect-to-the-local-da-network","23":"/docs-preview/pr-383/guides/connect-local-da#run-your-rollup","24":"/docs-preview/pr-383/guides/connect-local-da#summary","25":"/docs-preview/pr-383/guides/create-genesis#how-to-create-a-genesis-for-your-rollup","26":"/docs-preview/pr-383/guides/create-genesis#_1-setting-variables","27":"/docs-preview/pr-383/guides/create-genesis#_2-ensuring-rollkit-toml-is-present-and-building-entrypoint","28":"/docs-preview/pr-383/guides/create-genesis#_3-resetting-existing-genesis-chain-data","29":"/docs-preview/pr-383/guides/create-genesis#_4-initializing-the-validator","30":"/docs-preview/pr-383/guides/create-genesis#_5-adding-a-key-to-keyring-backend","31":"/docs-preview/pr-383/guides/create-genesis#_6-adding-a-genesis-account","32":"/docs-preview/pr-383/guides/create-genesis#_7-setting-the-staking-amount-in-the-genesis-transaction","33":"/docs-preview/pr-383/guides/create-genesis#_8-collecting-genesis-transactions","34":"/docs-preview/pr-383/guides/create-genesis#_9-configuring-the-genesis-file","35":"/docs-preview/pr-383/guides/create-genesis#_10-creating-a-restart-script","36":"/docs-preview/pr-383/guides/create-genesis#_11-starting-the-chain","37":"/docs-preview/pr-383/guides/create-genesis#summary","38":"/docs-preview/pr-383/guides/cw-orch#speed-up-your-development-with-cw-orchestrator","39":"/docs-preview/pr-383/guides/cw-orch#introduction","40":"/docs-preview/pr-383/guides/cw-orch#summary","41":"/docs-preview/pr-383/guides/cw-orch#single-contract-integration","42":"/docs-preview/pr-383/guides/cw-orch#adding-cw-orch-to-your-cargo-toml-file","43":"/docs-preview/pr-383/guides/cw-orch#creating-an-interface","44":"/docs-preview/pr-383/guides/cw-orch#interaction-helpers","45":"/docs-preview/pr-383/guides/cw-orch#using-the-integration","46":"/docs-preview/pr-383/guides/cw-orch#integration-in-a-workspace","47":"/docs-preview/pr-383/guides/cw-orch#handling-dependencies-and-features","48":"/docs-preview/pr-383/guides/cw-orch#creating-an-interface-crate","49":"/docs-preview/pr-383/guides/cw-orch#integrating-single-contracts","50":"/docs-preview/pr-383/guides/cw-orch#more-examples-and-scripts","51":"/docs-preview/pr-383/guides/full-and-sequencer-node#full-and-sequencer-node-rollup-setup","52":"/docs-preview/pr-383/guides/full-and-sequencer-node#about","53":"/docs-preview/pr-383/guides/full-and-sequencer-node#prerequisites","54":"/docs-preview/pr-383/guides/full-and-sequencer-node#getting-started","55":"/docs-preview/pr-383/guides/full-and-sequencer-node#clone-the-script","56":"/docs-preview/pr-383/guides/full-and-sequencer-node#set-da-height","57":"/docs-preview/pr-383/guides/full-and-sequencer-node#update-the-p2p-address","58":"/docs-preview/pr-383/guides/full-and-sequencer-node#start-the-full-node","59":"/docs-preview/pr-383/guides/gas-price#how-to-configure-gas-price","60":"/docs-preview/pr-383/guides/ibc-connection#ibc-connection-tutorial","61":"/docs-preview/pr-383/guides/ibc-connection#prerequisites","62":"/docs-preview/pr-383/guides/ibc-connection#software-requirements","63":"/docs-preview/pr-383/guides/ibc-connection#run-a-gm-rollup-chain","64":"/docs-preview/pr-383/guides/ibc-connection#run-your-local-osmosis-testnet","65":"/docs-preview/pr-383/guides/ibc-connection#install-osmosis-binary","66":"/docs-preview/pr-383/guides/ibc-connection#run-local-osmosis-testnet","67":"/docs-preview/pr-383/guides/ibc-connection#funds","68":"/docs-preview/pr-383/guides/ibc-connection#setup-relayer-create-ibc-connection-and-start-relaying-packets","69":"/docs-preview/pr-383/guides/ibc-connection#install-relayer","70":"/docs-preview/pr-383/guides/ibc-connection#setup-relayer-config","71":"/docs-preview/pr-383/guides/ibc-connection#create-relayer-account","72":"/docs-preview/pr-383/guides/ibc-connection#create-ibc-channel","73":"/docs-preview/pr-383/guides/ibc-connection#start-relaying-packets","74":"/docs-preview/pr-383/guides/ibc-connection#transfer-token-from-rollup-chain-to-osmosis-local","75":"/docs-preview/pr-383/guides/ibc-connection#transfer-token-back-from-osmosis-local-to-rollup-chain","76":"/docs-preview/pr-383/guides/lazy-sequencing#how-to-use-lazy-sequencing-aggregation","77":"/docs-preview/pr-383/guides/overview#how-to-guides","78":"/docs-preview/pr-383/guides/overview#support","79":"/docs-preview/pr-383/guides/restart-rollup#๐Ÿ”„-how-to-restart-your-rollup","80":"/docs-preview/pr-383/guides/restart-rollup#restart-rollup","81":"/docs-preview/pr-383/guides/restart-rollup#restart-rollup-after-running-out-of-funds","82":"/docs-preview/pr-383/guides/restart-rollup#errors","83":"/docs-preview/pr-383/guides/restart-rollup#refund-your-account","84":"/docs-preview/pr-383/guides/restart-rollup#stopping-your-rollup","85":"/docs-preview/pr-383/guides/restart-rollup#increase-gas-fee","86":"/docs-preview/pr-383/guides/restart-rollup#restarting-your-rollup","87":"/docs-preview/pr-383/guides/restart-rollup#reduce-gas-fee-restart-again","88":"/docs-preview/pr-383/guides/rollkit-monitoring#how-to-integrate-range-with-your-rollup","89":"/docs-preview/pr-383/guides/rollkit-monitoring#overview","90":"/docs-preview/pr-383/guides/rollkit-monitoring#prerequisites","91":"/docs-preview/pr-383/guides/rollkit-monitoring#_1-integrate-your-rollup","92":"/docs-preview/pr-383/guides/rollkit-monitoring#steps","93":"/docs-preview/pr-383/guides/rollkit-monitoring#_2-add-your-addresses-and-contracts","94":"/docs-preview/pr-383/guides/rollkit-monitoring#_3-creating-your-first-alert-rule","95":"/docs-preview/pr-383/guides/use-tia-for-gas#how-to-use-ibc-token-tia-as-gas-token-in-your-rollup","96":"/docs-preview/pr-383/guides/use-tia-for-gas#introduction","97":"/docs-preview/pr-383/guides/use-tia-for-gas#dependencies","98":"/docs-preview/pr-383/guides/use-tia-for-gas#running-local-da","99":"/docs-preview/pr-383/guides/use-tia-for-gas#building-your-sovereign-rollup","100":"/docs-preview/pr-383/guides/use-tia-for-gas#start-your-rollup","101":"/docs-preview/pr-383/guides/use-tia-for-gas#ibc-to-celestia","102":"/docs-preview/pr-383/guides/use-tia-for-gas#transactions","103":"/docs-preview/pr-383/guides/use-tia-for-gas#๐ŸŽ‰-next-steps","104":"/docs-preview/pr-383/guides/zkml#zkml-rollup-tutorial-with-sindri","105":"/docs-preview/pr-383/guides/zkml#introduction-code-once-verify-anywhere","106":"/docs-preview/pr-383/guides/zkml#prerequisites","107":"/docs-preview/pr-383/guides/zkml#setting-up-the-polaris-evm-using-rollkit","108":"/docs-preview/pr-383/guides/zkml#installing-the-sindri-python-sdk","109":"/docs-preview/pr-383/guides/zkml#deploying-and-proving-a-cool-zkml-circuit-to-sindri","110":"/docs-preview/pr-383/guides/zkml#clone","111":"/docs-preview/pr-383/guides/zkml#modify","112":"/docs-preview/pr-383/guides/zkml#deploy-and-prove-your-zkml-circuit-on-sindri","113":"/docs-preview/pr-383/guides/zkml#deploy-smart-contract-verifier-to-rollkit","114":"/docs-preview/pr-383/guides/zkml#deploy","115":"/docs-preview/pr-383/guides/zkml#interact-with-the-contract-verify-your-zkml-proof-on-chain","116":"/docs-preview/pr-383/guides/zkml#congratulations","117":"/docs-preview/pr-383/learn/about#about-rollkit","118":"/docs-preview/pr-383/learn/about#what-is-rollkit","119":"/docs-preview/pr-383/learn/about#what-problems-is-rollkit-solving","120":"/docs-preview/pr-383/learn/about#_1-scalability-and-customizability","121":"/docs-preview/pr-383/learn/about#_2-security-and-time-to-market","122":"/docs-preview/pr-383/learn/about#why-rollkit","123":"/docs-preview/pr-383/learn/about#how-can-you-use-rollkit","124":"/docs-preview/pr-383/learn/about#rollup-with-any-execution-environment","125":"/docs-preview/pr-383/learn/about#sovereign-rollup-with-cosmos-sdk","126":"/docs-preview/pr-383/learn/about#build-a-settlement-layer","127":"/docs-preview/pr-383/learn/about#when-can-you-use-rollkit","128":"/docs-preview/pr-383/learn/building-and-deploying-a-rollup#๐Ÿ—ž๏ธ-building-a-rollup-and-testnet-deployment","129":"/docs-preview/pr-383/learn/building-and-deploying-a-rollup#beginner","130":"/docs-preview/pr-383/learn/building-and-deploying-a-rollup#intermediate","131":"/docs-preview/pr-383/learn/building-and-deploying-a-rollup#advanced","132":"/docs-preview/pr-383/learn/building-and-deploying-a-rollup#support","133":"/docs-preview/pr-383/learn/intro#introduction","134":"/docs-preview/pr-383/learn/specifications#technical-specifications","135":"/docs-preview/pr-383/learn/stack#rollkit-stack","136":"/docs-preview/pr-383/learn/stack#application-structure","137":"/docs-preview/pr-383/learn/stack#abci-interface","138":"/docs-preview/pr-383/learn/stack#cosmos-sdk","139":"/docs-preview/pr-383/learn/stack#data-availability","140":"/docs-preview/pr-383/learn/stack#celestia","141":"/docs-preview/pr-383/learn/stack#node-components","142":"/docs-preview/pr-383/learn/stack#mempool","143":"/docs-preview/pr-383/learn/stack#block-manager","144":"/docs-preview/pr-383/learn/stack#rpc","145":"/docs-preview/pr-383/learn/stack#p2p-layer","146":"/docs-preview/pr-383/learn/stack#rollkit-node-types","147":"/docs-preview/pr-383/learn/stack#full-node","148":"/docs-preview/pr-383/learn/stack#light-node-work-in-progress","149":"/docs-preview/pr-383/learn/stack#sequencer-node","150":"/docs-preview/pr-383/learn/stack#state-validity-modes","151":"/docs-preview/pr-383/learn/stack#pessimistic-full-nodes-only","152":"/docs-preview/pr-383/learn/stack#optimistic-fraud-proofs-work-in-progress","153":"/docs-preview/pr-383/learn/stack#validity-zk-proofs","154":"/docs-preview/pr-383/learn/transaction-flow#transaction-flow","155":"/docs-preview/pr-383/learn/transaction-flow#transaction-submission","156":"/docs-preview/pr-383/learn/transaction-flow#transaction-validation-and-processing","157":"/docs-preview/pr-383/learn/transaction-flow#block-processing","158":"/docs-preview/pr-383/learn/transaction-flow#fraud-proof-gossip-and-forking","159":"/docs-preview/pr-383/testnets/cosmwasm-testnet#cosmwasm-testnet","160":"/docs-preview/pr-383/testnets/cosmwasm-testnet#details-of-rosm-testnet","161":"/docs-preview/pr-383/testnets/cosmwasm-testnet#add-rosm-to-keplr","162":"/docs-preview/pr-383/tutorials/bitcoin#bitcoin-rollup-tutorial","163":"/docs-preview/pr-383/tutorials/bitcoin#โ˜€๏ธintroduction","164":"/docs-preview/pr-383/tutorials/bitcoin#๐Ÿ“–-the-stack","165":"/docs-preview/pr-383/tutorials/bitcoin#๐Ÿ’ป-prerequisites","166":"/docs-preview/pr-383/tutorials/bitcoin#๐Ÿ› ๏ธ-dependency-setup","167":"/docs-preview/pr-383/tutorials/bitcoin#๐Ÿƒ-golang","168":"/docs-preview/pr-383/tutorials/bitcoin#โš’๏ธ-foundry","169":"/docs-preview/pr-383/tutorials/bitcoin#๐Ÿช™-install-bitcoin","170":"/docs-preview/pr-383/tutorials/bitcoin#๐ŸŸข-running-a-local-bitcoin-network","171":"/docs-preview/pr-383/tutorials/bitcoin#๐Ÿ‘›-create-a-wallet-for-the-chain","172":"/docs-preview/pr-383/tutorials/bitcoin#๐ŸŽฌ-start-generating-blocks","173":"/docs-preview/pr-383/tutorials/bitcoin#๐ŸงŠ-block-height","174":"/docs-preview/pr-383/tutorials/bitcoin#๐ŸงŠ-block-hash","175":"/docs-preview/pr-383/tutorials/bitcoin#๐ŸงŠ-block-header","176":"/docs-preview/pr-383/tutorials/bitcoin#๐ŸŽฌ-restarting-the-local-network","177":"/docs-preview/pr-383/tutorials/bitcoin#๐Ÿƒโ€โ™€๏ธ-running-the-ethermint-rollup","178":"/docs-preview/pr-383/tutorials/bitcoin#โšก๏ธ-initialize-development-environment","179":"/docs-preview/pr-383/tutorials/bitcoin#๐Ÿ“’-updating-the-contract-and-tests","180":"/docs-preview/pr-383/tutorials/bitcoin#๐Ÿ“œ-updating-the-deployment-script","181":"/docs-preview/pr-383/tutorials/bitcoin#๐Ÿ -deploying-locally","182":"/docs-preview/pr-383/tutorials/bitcoin#๐Ÿงช-deploying-to-the-ethermint-sovereign-rollup","183":"/docs-preview/pr-383/tutorials/celestia-da#gm-world-rollup-deploying-to-celestia","184":"/docs-preview/pr-383/tutorials/celestia-da#introduction","185":"/docs-preview/pr-383/tutorials/celestia-da#๐Ÿชถ-running-a-celestia-light-node","186":"/docs-preview/pr-383/tutorials/celestia-da#prerequisites","187":"/docs-preview/pr-383/tutorials/celestia-da#building-your-sovereign-rollup","188":"/docs-preview/pr-383/tutorials/celestia-da#configuring-your-rollup","189":"/docs-preview/pr-383/tutorials/celestia-da#๐Ÿ› ๏ธ-configuring-flags-for-da","190":"/docs-preview/pr-383/tutorials/celestia-da#๐Ÿ”ฅ-running-your-rollup-connected-to-a-celestia-light-node","191":"/docs-preview/pr-383/tutorials/celestia-da#๐ŸŽ‰-next-steps","192":"/docs-preview/pr-383/tutorials/cosmwasm#๐Ÿ—ž๏ธ-cosmwasm-rollup","193":"/docs-preview/pr-383/tutorials/cosmwasm#dependencies","194":"/docs-preview/pr-383/tutorials/cosmwasm#install-go","195":"/docs-preview/pr-383/tutorials/cosmwasm#install-rust","196":"/docs-preview/pr-383/tutorials/cosmwasm#docker-installation","197":"/docs-preview/pr-383/tutorials/cosmwasm#wasmd-installation","198":"/docs-preview/pr-383/tutorials/cosmwasm#local-da-node","199":"/docs-preview/pr-383/tutorials/cosmwasm#setting-up-environment-on-local-da","200":"/docs-preview/pr-383/tutorials/cosmwasm#initialize-rollup","201":"/docs-preview/pr-383/tutorials/cosmwasm#view-script","202":"/docs-preview/pr-383/tutorials/cosmwasm#contract-deployment-on-cosmwasm","203":"/docs-preview/pr-383/tutorials/cosmwasm#compile-smart-contract","204":"/docs-preview/pr-383/tutorials/cosmwasm#unit-tests","205":"/docs-preview/pr-383/tutorials/cosmwasm#optimized-smart-contract","206":"/docs-preview/pr-383/tutorials/cosmwasm#contract-deployment","207":"/docs-preview/pr-383/tutorials/cosmwasm#contract-interaction-on-local-da","208":"/docs-preview/pr-383/tutorials/cosmwasm#contract-querying","209":"/docs-preview/pr-383/tutorials/cosmwasm#contract-instantiation","210":"/docs-preview/pr-383/tutorials/cosmwasm#contract-interaction","211":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#gm-world-rollup-part-2","212":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#deploying-to-a-celestia-devnet","213":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#run-celestia-node","214":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#start-your-sovereign-rollup","215":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#clear-previous-chain-history","216":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#start-the-new-chain","217":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#optional-restarting-your-rollup","218":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#optional-add-a-gm-world-query","219":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#say-gm-world","220":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#create-first-query","221":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#query-request-and-response-types","222":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#gm-keeper-function","223":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#restart-your-rollup","224":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#query-your-rollup","225":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#next-steps","226":"/docs-preview/pr-383/tutorials/gm-world-frontend#gm-world-ui-app","227":"/docs-preview/pr-383/tutorials/gm-world-frontend#๐Ÿ› -prerequisites","228":"/docs-preview/pr-383/tutorials/gm-world-frontend#๐Ÿ“ฆ-cloning-the-repo","229":"/docs-preview/pr-383/tutorials/gm-world-frontend#๐Ÿš€-running-the-app","230":"/docs-preview/pr-383/tutorials/gm-world-frontend#๐Ÿ”—-connecting-your-wallet","231":"/docs-preview/pr-383/tutorials/gm-world-frontend#๐ŸŽ‰-next-steps","232":"/docs-preview/pr-383/tutorials/gm-world-mainnet#gm-world-rollup-part-3","233":"/docs-preview/pr-383/tutorials/gm-world-mainnet#deploying-to-celestia-mainnet-beta","234":"/docs-preview/pr-383/tutorials/gm-world-mainnet#run-celestia-node","235":"/docs-preview/pr-383/tutorials/gm-world-mainnet#clear-previous-chain-history","236":"/docs-preview/pr-383/tutorials/gm-world-mainnet#start-the-rollup-on-mainnet","237":"/docs-preview/pr-383/tutorials/gm-world-mainnet#restarting-your-rollup","238":"/docs-preview/pr-383/tutorials/gm-world-mainnet#next-steps","239":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#gm-world-rollup-part-2","240":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#deploying-to-a-celestia-testnet","241":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#run-celestia-node","242":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#start-your-sovereign-rollup","243":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#clear-previous-chain-history","244":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#start-the-new-chain","245":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#optional-restarting-your-rollup","246":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#optional-add-a-gm-world-query","247":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#say-gm-world","248":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#create-first-query","249":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#query-request-and-response-types","250":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#gm-keeper-function","251":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#restart-your-rollup","252":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#query-your-rollup","253":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#next-steps","254":"/docs-preview/pr-383/tutorials/gm-world#gm-world-rollup","255":"/docs-preview/pr-383/tutorials/gm-world#introduction","256":"/docs-preview/pr-383/tutorials/gm-world#dependencies","257":"/docs-preview/pr-383/tutorials/gm-world#running-local-da","258":"/docs-preview/pr-383/tutorials/gm-world#building-your-sovereign-rollup","259":"/docs-preview/pr-383/tutorials/gm-world#configuring-your-rollup","260":"/docs-preview/pr-383/tutorials/gm-world#start-your-rollup","261":"/docs-preview/pr-383/tutorials/gm-world#transactions","262":"/docs-preview/pr-383/tutorials/gm-world#balances","263":"/docs-preview/pr-383/tutorials/gm-world#๐ŸŽ‰-next-steps","264":"/docs-preview/pr-383/tutorials/polaris-evm#polaris-evm-and-rollkit","265":"/docs-preview/pr-383/tutorials/polaris-evm#prerequisites","266":"/docs-preview/pr-383/tutorials/polaris-evm#run-a-local-celestia-devnet","267":"/docs-preview/pr-383/tutorials/polaris-evm#clone-the-repo","268":"/docs-preview/pr-383/tutorials/polaris-evm#install-foundry","269":"/docs-preview/pr-383/tutorials/polaris-evm#start-the-polaris-evm-using-rollkit","270":"/docs-preview/pr-383/tutorials/polaris-evm#congratulations","271":"/docs-preview/pr-383/tutorials/polaris-evm#funds","272":"/docs-preview/pr-383/tutorials/polaris-evm#frontend","273":"/docs-preview/pr-383/tutorials/polaris-evm#deploy-the-ooga-booga-portal-contract","274":"/docs-preview/pr-383/tutorials/polaris-evm#interact-with-the-contract","275":"/docs-preview/pr-383/tutorials/polaris-evm#start-and-update-the-frontend","276":"/docs-preview/pr-383/tutorials/polaris-evm#interact-with-the-frontend","277":"/docs-preview/pr-383/tutorials/polaris-evm#running-polaris-evm-with-a-celestia-light-node","278":"/docs-preview/pr-383/tutorials/polaris-evm#start-your-light-node","279":"/docs-preview/pr-383/tutorials/polaris-evm#setup-polaris-script","280":"/docs-preview/pr-383/tutorials/polaris-evm#start-the-evm-rollup","281":"/docs-preview/pr-383/tutorials/quick-start#quick-start-guide","282":"/docs-preview/pr-383/tutorials/quick-start#๐Ÿ“ฆ-install-rollkit-cli","283":"/docs-preview/pr-383/tutorials/quick-start#๐Ÿš€-run-your-sovereign-rollup-node","284":"/docs-preview/pr-383/tutorials/quick-start#๐ŸŽ‰-conclusion","285":"/docs-preview/pr-383/tutorials/wordle#๐Ÿ•น๏ธ-wordle-app","286":"/docs-preview/pr-383/tutorials/wordle#prerequisites","287":"/docs-preview/pr-383/tutorials/wordle#design-implementation","288":"/docs-preview/pr-383/tutorials/wordle#ignite-scaffold-wordle-chain","289":"/docs-preview/pr-383/tutorials/wordle#ignite","290":"/docs-preview/pr-383/tutorials/wordle#scaffolding-wordle-chain","291":"/docs-preview/pr-383/tutorials/wordle#wordle-directory","292":"/docs-preview/pr-383/tutorials/wordle#setting-up-rollkit","293":"/docs-preview/pr-383/tutorials/wordle#installing-rollkit","294":"/docs-preview/pr-383/tutorials/wordle#creating-wordle-module","295":"/docs-preview/pr-383/tutorials/wordle#scaffolding-a-module","296":"/docs-preview/pr-383/tutorials/wordle#messages","297":"/docs-preview/pr-383/tutorials/wordle#scaffolding-a-message","298":"/docs-preview/pr-383/tutorials/wordle#wordle-types","299":"/docs-preview/pr-383/tutorials/wordle#scaffolding-wordle-types","300":"/docs-preview/pr-383/tutorials/wordle#keeper-functions","301":"/docs-preview/pr-383/tutorials/wordle#submitwordle-function","302":"/docs-preview/pr-383/tutorials/wordle#submitguess-function","303":"/docs-preview/pr-383/tutorials/wordle#protobuf-file","304":"/docs-preview/pr-383/tutorials/wordle#โ›“๏ธ-run-the-wordle-chain","305":"/docs-preview/pr-383/tutorials/wordle#run-local-da-node","306":"/docs-preview/pr-383/tutorials/wordle#build-and-run-wordle-chain","307":"/docs-preview/pr-383/tutorials/wordle#extending-in-the-future","308":"/docs-preview/pr-383/tutorials/wordle#๐ŸŽ‰-next-steps"},"fieldIds":{"title":0,"titles":1,"text":2},"fieldLength":{"0":[3,1,24],"1":[3,3,20],"2":[2,3,69],"3":[2,3,41],"4":[3,3,25],"5":[1,1,22],"6":[3,1,17],"7":[6,1,171],"8":[2,6,172],"9":[4,6,110],"10":[4,6,114],"11":[5,6,27],"12":[6,1,79],"13":[2,6,43],"14":[6,6,129],"15":[9,6,46],"16":[6,6,110],"17":[4,6,34],"18":[1,6,90],"19":[7,1,83],"20":[8,1,22],"21":[6,8,40],"22":[9,8,19],"23":[4,8,26],"24":[1,8,32],"25":[8,1,27],"26":[3,8,30],"27":[9,8,54],"28":[6,8,13],"29":[4,8,15],"30":[7,8,14],"31":[5,8,19],"32":[8,8,21],"33":[4,8,8],"34":[5,8,41],"35":[5,8,64],"36":[4,8,32],"37":[1,8,52],"38":[7,1,1],"39":[1,7,129],"40":[1,7,42],"41":[3,7,27],"42":[8,10,42],"43":[3,10,124],"44":[2,10,114],"45":[3,10,120],"46":[4,7,36],"47":[4,11,51],"48":[4,11,80],"49":[3,11,16],"50":[4,7,42],"51":[6,1,23],"52":[1,6,30],"53":[1,6,25],"54":[2,6,47],"55":[3,8,22],"56":[3,8,25],"57":[4,8,142],"58":[4,6,25],"59":[5,1,91],"60":[3,1,73],"61":[3,3,1],"62":[2,6,15],"63":[5,3,104],"64":[5,3,1],"65":[3,8,17],"66":[4,8,76],"67":[1,3,34],"68":[9,3,72],"69":[2,10,38],"70":[3,10,107],"71":[3,10,48],"72":[3,10,169],"73":[3,10,25],"74":[8,10,105],"75":[9,10,80],"76":[7,1,57],"77":[3,1,84],"78":[2,3,30],"79":[6,1,12],"80":[2,6,102],"81":[7,6,105],"82":[5,12,50],"83":[5,12,43],"84":[4,12,23],"85":[5,12,48],"86":[4,12,7],"87":[7,12,68],"88":[7,1,27],"89":[1,7,37],"90":[1,7,22],"91":[4,8,17],"92":[1,12,48],"93":[6,8,44],"94":[6,8,76],"95":[11,1,1],"96":[2,11,75],"97":[2,11,35],"98":[6,11,45],"99":[5,11,102],"100":[4,11,173],"101":[8,11,230],"102":[2,11,58],"103":[3,11,20],"104":[5,1,1],"105":[5,5,81],"106":[1,5,30],"107":[7,6,22],"108":[5,6,48],"109":[9,5,32],"110":[1,12,56],"111":[1,12,90],"112":[8,12,90],"113":[6,5,39],"114":[1,11,157],"115":[10,5,120],"116":[1,5,41],"117":[2,1,61],"118":[4,2,88],"119":[6,2,1],"120":[4,7,38],"121":[6,7,102],"122":[3,2,181],"123":[6,2,24],"124":[5,7,37],"125":[5,7,48],"126":[4,7,47],"127":[6,2,76],"128":[7,1,41],"129":[2,7,7],"130":[2,7,5],"131":[2,7,7],"132":[2,7,73],"133":[1,1,55],"134":[2,1,32],"135":[2,1,61],"136":[2,2,2],"137":[2,4,37],"138":[2,6,65],"139":[2,4,77],"140":[1,6,45],"141":[2,2,1],"142":[1,4,43],"143":[2,4,82],"144":[1,4,49],"145":[2,4,68],"146":[3,2,9],"147":[2,4,24],"148":[6,4,45],"149":[2,4,107],"150":[3,2,1],"151":[5,5,38],"152":[7,5,114],"153":[4,5,12],"154":[2,1,41],"155":[2,2,2],"156":[4,2,2],"157":[2,2,2],"158":[5,2,125],"159":[2,1,18],"160":[4,2,149],"161":[4,6,18],"162":[3,1,1],"163":[1,3,78],"164":[3,4,63],"165":[2,3,16],"166":[3,3,50],"167":[2,6,87],"168":[2,6,24],"169":[3,6,30],"170":[6,3,20],"171":[7,8,31],"172":[4,8,90],"173":[3,12,33],"174":[3,12,28],"175":[3,12,31],"176":[5,12,28],"177":[5,3,86],"178":[4,7,52],"179":[6,7,149],"180":[5,7,69],"181":[3,7,100],"182":[7,7,109],"183":[6,1,1],"184":[2,6,55],"185":[6,6,54],"186":[2,6,16],"187":[5,6,53],"188":[4,6,39],"189":[5,6,159],"190":[10,6,78],"191":[3,6,28],"192":[3,1,55],"193":[4,3,1],"194":[2,6,34],"195":[2,6,124],"196":[3,6,38],"197":[3,6,98],"198":[4,6,32],"199":[10,3,19],"200":[8,12,52],"201":[8,12,20],"202":[7,3,1],"203":[5,9,41],"204":[3,9,23],"205":[4,9,81],"206":[3,9,107],"207":[5,3,41],"208":[3,7,77],"209":[3,7,69],"210":[3,7,168],"211":[5,1,1],"212":[5,5,37],"213":[6,10,36],"214":[5,10,76],"215":[4,14,22],"216":[4,14,35],"217":[4,10,41],"218":[7,10,1],"219":[4,14,72],"220":[5,17,105],"221":[6,17,29],"222":[4,17,100],"223":[3,17,13],"224":[3,17,19],"225":[2,5,41],"226":[4,1,37],"227":[2,4,64],"228":[4,4,26],"229":[4,4,51],"230":[4,4,53],"231":[3,4,37],"232":[5,1,36],"233":[5,5,1],"234":[6,10,34],"235":[4,10,22],"236":[5,10,98],"237":[3,14,33],"238":[2,5,31],"239":[5,1,1],"240":[5,5,38],"241":[6,10,34],"242":[5,10,76],"243":[4,14,22],"244":[4,14,35],"245":[4,10,41],"246":[7,10,1],"247":[4,14,72],"248":[5,17,105],"249":[6,17,29],"250":[4,17,100],"251":[3,17,13],"252":[3,17,19],"253":[2,5,41],"254":[3,1,1],"255":[2,3,65],"256":[2,3,31],"257":[6,3,42],"258":[5,3,49],"259":[4,3,58],"260":[4,3,138],"261":[2,3,138],"262":[3,3,35],"263":[3,3,26],"264":[4,1,80],"265":[1,4,28],"266":[5,4,36],"267":[3,4,25],"268":[2,4,9],"269":[6,4,15],"270":[1,4,67],"271":[1,4,44],"272":[1,4,41],"273":[6,5,106],"274":[4,5,31],"275":[5,5,56],"276":[4,5,73],"277":[8,4,83],"278":[4,10,108],"279":[3,10,73],"280":[4,10,41],"281":[3,1,19],"282":[5,3,38],"283":[6,3,69],"284":[2,3,39],"285":[3,1,47],"286":[3,3,49],"287":[3,3,110],"288":[7,3,1],"289":[2,10,103],"290":[5,10,95],"291":[3,10,114],"292":[4,3,16],"293":[3,7,59],"294":[5,3,55],"295":[4,8,70],"296":[2,3,73],"297":[4,5,32],"298":[3,3,15],"299":[4,5,48],"300":[3,3,62],"301":[3,6,221],"302":[3,6,291],"303":[3,6,80],"304":[5,3,1],"305":[6,8,53],"306":[6,8,267],"307":[5,8,80],"308":[3,3,23]},"averageFieldLength":[4.02588996763754,6.333333333333332,54.77669902912621],"storedFields":{"0":{"title":"Rollkit Documentation Site","titles":[]},"1":{"title":"Building the site","titles":["Rollkit Documentation Site"]},"2":{"title":"Contribution Guidelines","titles":["Rollkit Documentation Site"]},"3":{"title":"Directory Structure","titles":["Rollkit Documentation Site"]},"4":{"title":"Feedback & Suggestions","titles":["Rollkit Documentation Site"]},"5":{"title":"Blog","titles":[]},"6":{"title":"Table of contents","titles":["Blog"]},"7":{"title":"Rollkit: The First Sovereign Rollup Framework","titles":[]},"8":{"title":"Take Control","titles":["Rollkit: The First Sovereign Rollup Framework"]},"9":{"title":"Build with the Best","titles":["Rollkit: The First Sovereign Rollup Framework"]},"10":{"title":"Optimize for your needs","titles":["Rollkit: The First Sovereign Rollup Framework"]},"11":{"title":"Break Free. Be Sovereign.","titles":["Rollkit: The First Sovereign Rollup Framework"]},"12":{"title":"Sovereign rollups on Bitcoin with Rollkit","titles":[]},"13":{"title":"Tl;dr","titles":["Sovereign rollups on Bitcoin with Rollkit"]},"14":{"title":"Posting data on Bitcoin with Taproot","titles":["Sovereign rollups on Bitcoin with Rollkit"]},"15":{"title":"Integrating Bitcoin as a data availability layer into Rollkit","titles":["Sovereign rollups on Bitcoin with Rollkit"]},"16":{"title":"How Rollkit posts data to Bitcoin","titles":["Sovereign rollups on Bitcoin with Rollkit"]},"17":{"title":"EVM on Bitcoin demo","titles":["Sovereign rollups on Bitcoin with Rollkit"]},"18":{"title":"Conclusion","titles":["Sovereign rollups on Bitcoin with Rollkit"]},"19":{"title":"How to change speed of block production","titles":[]},"20":{"title":"How to Connect a Rollup to a Local DA Network","titles":[]},"21":{"title":"Setting Up a Local DA Network","titles":["How to Connect a Rollup to a Local DA Network"]},"22":{"title":"Configuring Your Rollup to Connect to the Local DA Network","titles":["How to Connect a Rollup to a Local DA Network"]},"23":{"title":"Run Your Rollup:","titles":["How to Connect a Rollup to a Local DA Network"]},"24":{"title":"Summary","titles":["How to Connect a Rollup to a Local DA Network"]},"25":{"title":"How to Create a Genesis for Your Rollup","titles":[]},"26":{"title":"1. Setting Variables","titles":["How to Create a Genesis for Your Rollup"]},"27":{"title":"2. Ensuring rollkit.toml is Present and Building Entrypoint","titles":["How to Create a Genesis for Your Rollup"]},"28":{"title":"3. Resetting Existing Genesis/Chain Data","titles":["How to Create a Genesis for Your Rollup"]},"29":{"title":"4. Initializing the Validator","titles":["How to Create a Genesis for Your Rollup"]},"30":{"title":"5. Adding a Key to Keyring Backend","titles":["How to Create a Genesis for Your Rollup"]},"31":{"title":"6. Adding a Genesis Account","titles":["How to Create a Genesis for Your Rollup"]},"32":{"title":"7. Setting the Staking Amount in the Genesis Transaction","titles":["How to Create a Genesis for Your Rollup"]},"33":{"title":"8. Collecting Genesis Transactions","titles":["How to Create a Genesis for Your Rollup"]},"34":{"title":"9. Configuring the Genesis File","titles":["How to Create a Genesis for Your Rollup"]},"35":{"title":"10. Creating a Restart Script","titles":["How to Create a Genesis for Your Rollup"]},"36":{"title":"11. Starting the Chain","titles":["How to Create a Genesis for Your Rollup"]},"37":{"title":"Summary","titles":["How to Create a Genesis for Your Rollup"]},"38":{"title":"Speed up your development with cw-orchestrator","titles":[]},"39":{"title":"Introduction","titles":["Speed up your development with cw-orchestrator"]},"40":{"title":"Summary","titles":["Speed up your development with cw-orchestrator"]},"41":{"title":"Single Contract Integration","titles":["Speed up your development with cw-orchestrator"]},"42":{"title":"Adding cw-orch to your Cargo.toml file","titles":["Speed up your development with cw-orchestrator","Single Contract Integration"]},"43":{"title":"Creating an Interface","titles":["Speed up your development with cw-orchestrator","Single Contract Integration"]},"44":{"title":"Interaction helpers","titles":["Speed up your development with cw-orchestrator","Single Contract Integration"]},"45":{"title":"Using the integration","titles":["Speed up your development with cw-orchestrator","Single Contract Integration"]},"46":{"title":"Integration in a workspace","titles":["Speed up your development with cw-orchestrator"]},"47":{"title":"Handling dependencies and features","titles":["Speed up your development with cw-orchestrator","Integration in a workspace"]},"48":{"title":"Creating an interface crate","titles":["Speed up your development with cw-orchestrator","Integration in a workspace"]},"49":{"title":"Integrating single contracts","titles":["Speed up your development with cw-orchestrator","Integration in a workspace"]},"50":{"title":"More examples and scripts","titles":["Speed up your development with cw-orchestrator"]},"51":{"title":"Full and sequencer node rollup setup","titles":[]},"52":{"title":"About","titles":["Full and sequencer node rollup setup"]},"53":{"title":"Prerequisites","titles":["Full and sequencer node rollup setup"]},"54":{"title":"Getting started","titles":["Full and sequencer node rollup setup"]},"55":{"title":"Clone the script","titles":["Full and sequencer node rollup setup","Getting started"]},"56":{"title":"Set DA height","titles":["Full and sequencer node rollup setup","Getting started"]},"57":{"title":"Update the p2p address","titles":["Full and sequencer node rollup setup","Getting started"]},"58":{"title":"Start the full node","titles":["Full and sequencer node rollup setup"]},"59":{"title":"How to configure gas price","titles":[]},"60":{"title":"IBC connection tutorial","titles":[]},"61":{"title":"๐Ÿ’ป Pre-requisites","titles":["IBC connection tutorial"]},"62":{"title":"Software requirements","titles":["IBC connection tutorial","๐Ÿ’ป Pre-requisites"]},"63":{"title":"Run a GM rollup chain","titles":["IBC connection tutorial"]},"64":{"title":"Run your local-osmosis-testnet","titles":["IBC connection tutorial"]},"65":{"title":"Install Osmosis binary","titles":["IBC connection tutorial","Run your local-osmosis-testnet"]},"66":{"title":"Run local-osmosis-testnet","titles":["IBC connection tutorial","Run your local-osmosis-testnet"]},"67":{"title":"Funds","titles":["IBC connection tutorial"]},"68":{"title":"Setup relayer, create IBC connection and start relaying packets","titles":["IBC connection tutorial"]},"69":{"title":"Install relayer","titles":["IBC connection tutorial","Setup relayer, create IBC connection and start relaying packets"]},"70":{"title":"Setup relayer config","titles":["IBC connection tutorial","Setup relayer, create IBC connection and start relaying packets"]},"71":{"title":"Create relayer account","titles":["IBC connection tutorial","Setup relayer, create IBC connection and start relaying packets"]},"72":{"title":"Create IBC channel","titles":["IBC connection tutorial","Setup relayer, create IBC connection and start relaying packets"]},"73":{"title":"Start relaying packets","titles":["IBC connection tutorial","Setup relayer, create IBC connection and start relaying packets"]},"74":{"title":"Transfer token from rollup chain to osmosis-local","titles":["IBC connection tutorial","Setup relayer, create IBC connection and start relaying packets"]},"75":{"title":"Transfer token back from osmosis-local to rollup chain","titles":["IBC connection tutorial","Setup relayer, create IBC connection and start relaying packets"]},"76":{"title":"How to use lazy sequencing (aggregation)","titles":[]},"77":{"title":"How To Guides","titles":[]},"78":{"title":"๐Ÿ’ป Support","titles":["How To Guides"]},"79":{"title":"๐Ÿ”„ How to restart your rollup","titles":[]},"80":{"title":"Restart rollup","titles":["๐Ÿ”„ How to restart your rollup"]},"81":{"title":"Restart rollup after running out of funds","titles":["๐Ÿ”„ How to restart your rollup"]},"82":{"title":"๐ŸŸ  Errors in this example","titles":["๐Ÿ”„ How to restart your rollup","Restart rollup after running out of funds"]},"83":{"title":"๐Ÿ’ฐ Re-fund your account","titles":["๐Ÿ”„ How to restart your rollup","Restart rollup after running out of funds"]},"84":{"title":"๐Ÿ›‘ Stopping your rollup","titles":["๐Ÿ”„ How to restart your rollup","Restart rollup after running out of funds"]},"85":{"title":"โ›ฝ Increase the gas fee","titles":["๐Ÿ”„ How to restart your rollup","Restart rollup after running out of funds"]},"86":{"title":"๐Ÿ” Restarting your rollup","titles":["๐Ÿ”„ How to restart your rollup","Restart rollup after running out of funds"]},"87":{"title":"๐Ÿ›ข๏ธ Reduce gas fee & restart again","titles":["๐Ÿ”„ How to restart your rollup","Restart rollup after running out of funds"]},"88":{"title":"How to integrate Range with your rollup","titles":[]},"89":{"title":"Overview","titles":["How to integrate Range with your rollup"]},"90":{"title":"Prerequisites","titles":["How to integrate Range with your rollup"]},"91":{"title":"1. Integrate Your Rollup","titles":["How to integrate Range with your rollup","Prerequisites"]},"92":{"title":"Steps","titles":["How to integrate Range with your rollup","Prerequisites","1. Integrate Your Rollup"]},"93":{"title":"2. Add Your Addresses and Contracts","titles":["How to integrate Range with your rollup","Prerequisites"]},"94":{"title":"3. Creating Your First Alert Rule","titles":["How to integrate Range with your rollup","Prerequisites"]},"95":{"title":"How to use IBC token (TIA) as gas token in your rollup","titles":[]},"96":{"title":"๐ŸŒž Introduction","titles":["How to use IBC token (TIA) as gas token in your rollup"]},"97":{"title":"๐Ÿ› ๏ธ Dependencies","titles":["How to use IBC token (TIA) as gas token in your rollup"]},"98":{"title":"๐ŸŒ Running a Local DA Network","titles":["How to use IBC token (TIA) as gas token in your rollup"]},"99":{"title":"๐Ÿ—๏ธ Building Your Sovereign Rollup","titles":["How to use IBC token (TIA) as gas token in your rollup"]},"100":{"title":"๐Ÿš€ Starting your rollup","titles":["How to use IBC token (TIA) as gas token in your rollup"]},"101":{"title":"โœจ Connecting to Celestia Mocha testnet using IBC","titles":["How to use IBC token (TIA) as gas token in your rollup"]},"102":{"title":"๐Ÿ’ธ Transactions","titles":["How to use IBC token (TIA) as gas token in your rollup"]},"103":{"title":"๐ŸŽ‰ Next steps","titles":["How to use IBC token (TIA) as gas token in your rollup"]},"104":{"title":"zkML Rollup Tutorial with Sindri","titles":[]},"105":{"title":"Introduction - Code Once, Verify Anywhere","titles":["zkML Rollup Tutorial with Sindri"]},"106":{"title":"Prerequisites","titles":["zkML Rollup Tutorial with Sindri"]},"107":{"title":"Setting Up the Polaris EVM using Rollkit","titles":["zkML Rollup Tutorial with Sindri","Prerequisites"]},"108":{"title":"Installing the Sindri Python SDK","titles":["zkML Rollup Tutorial with Sindri","Prerequisites"]},"109":{"title":"Deploying and Proving a Cool zkML Circuit to Sindri","titles":["zkML Rollup Tutorial with Sindri"]},"110":{"title":"Clone","titles":["zkML Rollup Tutorial with Sindri","Deploying and Proving a Cool zkML Circuit to Sindri"]},"111":{"title":"Modify","titles":["zkML Rollup Tutorial with Sindri","Deploying and Proving a Cool zkML Circuit to Sindri"]},"112":{"title":"Deploy and Prove your zkML Circuit on Sindri","titles":["zkML Rollup Tutorial with Sindri","Deploying and Proving a Cool zkML Circuit to Sindri"]},"113":{"title":"Deploy Smart Contract Verifier to Rollkit","titles":["zkML Rollup Tutorial with Sindri"]},"114":{"title":"Deploy","titles":["zkML Rollup Tutorial with Sindri","Deploy Smart Contract Verifier to Rollkit"]},"115":{"title":"Interact with the Contract - Verify your zkML Proof On-Chain","titles":["zkML Rollup Tutorial with Sindri"]},"116":{"title":"Congratulations","titles":["zkML Rollup Tutorial with Sindri"]},"117":{"title":"About Rollkit","titles":[]},"118":{"title":"What is Rollkit?","titles":["About Rollkit"]},"119":{"title":"What problems is Rollkit solving?","titles":["About Rollkit"]},"120":{"title":"1. Scalability and customizability","titles":["About Rollkit","What problems is Rollkit solving?"]},"121":{"title":"2. Security and time to market","titles":["About Rollkit","What problems is Rollkit solving?"]},"122":{"title":"Why Rollkit?","titles":["About Rollkit"]},"123":{"title":"How can you use Rollkit?","titles":["About Rollkit"]},"124":{"title":"Rollup with any execution environment","titles":["About Rollkit","How can you use Rollkit?"]},"125":{"title":"Sovereign rollup with Cosmos SDK","titles":["About Rollkit","How can you use Rollkit?"]},"126":{"title":"Build a settlement layer","titles":["About Rollkit","How can you use Rollkit?"]},"127":{"title":"When can you use Rollkit?","titles":["About Rollkit"]},"128":{"title":"๐Ÿ—ž๏ธ Building a rollup and testnet deployment","titles":[]},"129":{"title":"1. Beginner","titles":["๐Ÿ—ž๏ธ Building a rollup and testnet deployment"]},"130":{"title":"2๏ธ. Intermediate","titles":["๐Ÿ—ž๏ธ Building a rollup and testnet deployment"]},"131":{"title":"3๏ธ. Advanced","titles":["๐Ÿ—ž๏ธ Building a rollup and testnet deployment"]},"132":{"title":"๐Ÿ’ป Support","titles":["๐Ÿ—ž๏ธ Building a rollup and testnet deployment"]},"133":{"title":"Introduction","titles":[]},"134":{"title":"Technical specifications","titles":[]},"135":{"title":"Rollkit stack","titles":[]},"136":{"title":"Application structure","titles":["Rollkit stack"]},"137":{"title":"ABCI interface","titles":["Rollkit stack","Application structure"]},"138":{"title":"Cosmos SDK","titles":["Rollkit stack","Application structure","ABCI interface"]},"139":{"title":"Data availability","titles":["Rollkit stack","Application structure"]},"140":{"title":"Celestia","titles":["Rollkit stack","Application structure","Data availability"]},"141":{"title":"Node components","titles":["Rollkit stack"]},"142":{"title":"Mempool","titles":["Rollkit stack","Node components"]},"143":{"title":"Block manager","titles":["Rollkit stack","Node components"]},"144":{"title":"RPC","titles":["Rollkit stack","Node components"]},"145":{"title":"P2P layer","titles":["Rollkit stack","Node components"]},"146":{"title":"Rollkit node types","titles":["Rollkit stack"]},"147":{"title":"Full node","titles":["Rollkit stack","Rollkit node types"]},"148":{"title":"Light node (work in progress)","titles":["Rollkit stack","Rollkit node types"]},"149":{"title":"Sequencer node","titles":["Rollkit stack","Rollkit node types"]},"150":{"title":"State validity modes","titles":["Rollkit stack"]},"151":{"title":"Pessimistic (full nodes only)","titles":["Rollkit stack","State validity modes"]},"152":{"title":"Optimistic (fraud proofs) (work in progress)","titles":["Rollkit stack","State validity modes"]},"153":{"title":"Validity (ZK proofs)","titles":["Rollkit stack","State validity modes"]},"154":{"title":"Transaction flow","titles":[]},"155":{"title":"Transaction submission","titles":["Transaction flow"]},"156":{"title":"Transaction validation and processing","titles":["Transaction flow"]},"157":{"title":"Block processing","titles":["Transaction flow"]},"158":{"title":"Fraud proof gossip and forking","titles":["Transaction flow"]},"159":{"title":"CosmWasm Testnet","titles":[]},"160":{"title":"Details of ROSM testnet","titles":["CosmWasm Testnet"]},"161":{"title":"Add Rosm to Keplr","titles":["CosmWasm Testnet","Details of ROSM testnet"]},"162":{"title":"Bitcoin rollup tutorial","titles":[]},"163":{"title":"โ˜€๏ธIntroduction","titles":["Bitcoin rollup tutorial"]},"164":{"title":"๐Ÿ“– The stack","titles":["Bitcoin rollup tutorial","โ˜€๏ธIntroduction"]},"165":{"title":"๐Ÿ’ป Prerequisites","titles":["Bitcoin rollup tutorial"]},"166":{"title":"๐Ÿ› ๏ธ Dependency setup","titles":["Bitcoin rollup tutorial"]},"167":{"title":"๐Ÿƒ Golang","titles":["Bitcoin rollup tutorial","๐Ÿ› ๏ธ Dependency setup"]},"168":{"title":"โš’๏ธ Foundry","titles":["Bitcoin rollup tutorial","๐Ÿ› ๏ธ Dependency setup"]},"169":{"title":"๐Ÿช™ Install Bitcoin","titles":["Bitcoin rollup tutorial","๐Ÿ› ๏ธ Dependency setup"]},"170":{"title":"๐ŸŸข Running a local Bitcoin network","titles":["Bitcoin rollup tutorial"]},"171":{"title":"๐Ÿ‘› Create a wallet for the chain","titles":["Bitcoin rollup tutorial","๐ŸŸข Running a local Bitcoin network"]},"172":{"title":"๐ŸŽฌ Start generating blocks","titles":["Bitcoin rollup tutorial","๐ŸŸข Running a local Bitcoin network"]},"173":{"title":"๐ŸงŠ Block height","titles":["Bitcoin rollup tutorial","๐ŸŸข Running a local Bitcoin network","๐ŸŽฌ Start generating blocks"]},"174":{"title":"๐ŸงŠ Block hash","titles":["Bitcoin rollup tutorial","๐ŸŸข Running a local Bitcoin network","๐ŸŽฌ Start generating blocks"]},"175":{"title":"๐ŸงŠ Block header","titles":["Bitcoin rollup tutorial","๐ŸŸข Running a local Bitcoin network","๐ŸŽฌ Start generating blocks"]},"176":{"title":"๐ŸŽฌ Restarting the local network","titles":["Bitcoin rollup tutorial","๐ŸŸข Running a local Bitcoin network","๐ŸŽฌ Start generating blocks"]},"177":{"title":"๐Ÿƒโ€โ™€๏ธ Running the Ethermint rollup","titles":["Bitcoin rollup tutorial"]},"178":{"title":"โšก๏ธ Initialize development environment","titles":["Bitcoin rollup tutorial","๐Ÿƒโ€โ™€๏ธ Running the Ethermint rollup"]},"179":{"title":"๐Ÿ“’ Updating the contract and tests","titles":["Bitcoin rollup tutorial","๐Ÿƒโ€โ™€๏ธ Running the Ethermint rollup"]},"180":{"title":"๐Ÿ“œ Updating the deployment script","titles":["Bitcoin rollup tutorial","๐Ÿƒโ€โ™€๏ธ Running the Ethermint rollup"]},"181":{"title":"๐Ÿ  Deploying locally","titles":["Bitcoin rollup tutorial","๐Ÿƒโ€โ™€๏ธ Running the Ethermint rollup"]},"182":{"title":"๐Ÿงช Deploying to the Ethermint sovereign rollup","titles":["Bitcoin rollup tutorial","๐Ÿƒโ€โ™€๏ธ Running the Ethermint rollup"]},"183":{"title":"GM world rollup: Deploying to Celestia","titles":[]},"184":{"title":"๐ŸŒž Introduction","titles":["GM world rollup: Deploying to Celestia"]},"185":{"title":"๐Ÿชถ Running a Celestia light node","titles":["GM world rollup: Deploying to Celestia"]},"186":{"title":"๐Ÿ—๏ธ Prerequisites","titles":["GM world rollup: Deploying to Celestia"]},"187":{"title":"๐Ÿ—๏ธ Building Your Sovereign Rollup","titles":["GM world rollup: Deploying to Celestia"]},"188":{"title":"๐Ÿงฐ Configuring Your Rollup","titles":["GM world rollup: Deploying to Celestia"]},"189":{"title":"๐Ÿ› ๏ธ Configuring flags for DA","titles":["GM world rollup: Deploying to Celestia"]},"190":{"title":"๐Ÿ”ฅ Running your rollup connected to a Celestia light node","titles":["GM world rollup: Deploying to Celestia"]},"191":{"title":"๐ŸŽ‰ Next steps","titles":["GM world rollup: Deploying to Celestia"]},"192":{"title":"๐Ÿ—ž๏ธ CosmWasm rollup","titles":[]},"193":{"title":"๐Ÿ’ป CosmWasm dependency installations","titles":["๐Ÿ—ž๏ธ CosmWasm rollup"]},"194":{"title":"๐Ÿƒ Golang","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐Ÿ’ป CosmWasm dependency installations"]},"195":{"title":"๐Ÿฆ€ Rust","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐Ÿ’ป CosmWasm dependency installations"]},"196":{"title":"๐Ÿณ Docker installation","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐Ÿ’ป CosmWasm dependency installations"]},"197":{"title":"๐Ÿ’ป Wasmd installation","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐Ÿ’ป CosmWasm dependency installations"]},"198":{"title":"โœจ Local DA node","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐Ÿ’ป CosmWasm dependency installations"]},"199":{"title":"๐ŸŒŒ Setting up your environment for CosmWasm on local-da","titles":["๐Ÿ—ž๏ธ CosmWasm rollup"]},"200":{"title":"๐Ÿ—ž๏ธ Initializing CosmWasm rollup with a bash script","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐ŸŒŒ Setting up your environment for CosmWasm on local-da"]},"201":{"title":"๐Ÿ’  Optional: see what\'s inside the script","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐ŸŒŒ Setting up your environment for CosmWasm on local-da"]},"202":{"title":"๐Ÿ“’ Contract deployment on CosmWasm with Rollkit","titles":["๐Ÿ—ž๏ธ CosmWasm rollup"]},"203":{"title":"๐Ÿค– Compile the smart contract","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐Ÿ“’ Contract deployment on CosmWasm with Rollkit"]},"204":{"title":"๐Ÿงช Unit tests","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐Ÿ“’ Contract deployment on CosmWasm with Rollkit"]},"205":{"title":"๐ŸŽ๏ธ Optimized smart contract","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐Ÿ“’ Contract deployment on CosmWasm with Rollkit"]},"206":{"title":"๐Ÿš€ Contract deployment","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐Ÿ“’ Contract deployment on CosmWasm with Rollkit"]},"207":{"title":"๐ŸŒŸ Contract interaction on CosmWasm","titles":["๐Ÿ—ž๏ธ CosmWasm rollup"]},"208":{"title":"๐Ÿ”Ž Contract querying","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐ŸŒŸ Contract interaction on CosmWasm"]},"209":{"title":"๐Ÿ“ƒ Contract instantiation","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐ŸŒŸ Contract interaction on CosmWasm"]},"210":{"title":"๐Ÿ“„ Contract interaction","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐ŸŒŸ Contract interaction on CosmWasm"]},"211":{"title":"GM world rollup: Part 2","titles":[]},"212":{"title":"Deploying to a Celestia devnet","titles":["GM world rollup: Part 2"]},"213":{"title":"๐Ÿชถย Run a Celestia light node","titles":["GM world rollup: Part 2","Deploying to a Celestia devnet"]},"214":{"title":"๐ŸŸขย Start your sovereign rollup","titles":["GM world rollup: Part 2","Deploying to a Celestia devnet"]},"215":{"title":"Clear previous chain history","titles":["GM world rollup: Part 2","Deploying to a Celestia devnet","๐ŸŸขย Start your sovereign rollup"]},"216":{"title":"Start the new chain","titles":["GM world rollup: Part 2","Deploying to a Celestia devnet","๐ŸŸขย Start your sovereign rollup"]},"217":{"title":"Optional: Restarting your rollup","titles":["GM world rollup: Part 2","Deploying to a Celestia devnet"]},"218":{"title":"Optional: Add a "GM world" query","titles":["GM world rollup: Part 2","Deploying to a Celestia devnet"]},"219":{"title":"๐Ÿ’ฌย Say gm world","titles":["GM world rollup: Part 2","Deploying to a Celestia devnet","Optional: Add a "GM world" query"]},"220":{"title":"โœ‹ย Create your first query","titles":["GM world rollup: Part 2","Deploying to a Celestia devnet","Optional: Add a "GM world" query","๐Ÿ’ฌย Say gm world"]},"221":{"title":"๐Ÿ“จย Query request and response types","titles":["GM world rollup: Part 2","Deploying to a Celestia devnet","Optional: Add a "GM world" query","๐Ÿ’ฌย Say gm world"]},"222":{"title":"๐Ÿ‘‹ย Gm keeper function","titles":["GM world rollup: Part 2","Deploying to a Celestia devnet","Optional: Add a "GM world" query","๐Ÿ’ฌย Say gm world"]},"223":{"title":"Restart your rollup","titles":["GM world rollup: Part 2","Deploying to a Celestia devnet","Optional: Add a "GM world" query","๐Ÿ’ฌย Say gm world"]},"224":{"title":"Query your rollup","titles":["GM world rollup: Part 2","Deploying to a Celestia devnet","Optional: Add a "GM world" query","๐Ÿ’ฌย Say gm world"]},"225":{"title":"Next steps","titles":["GM world rollup: Part 2"]},"226":{"title":"GM world UI app","titles":[]},"227":{"title":"๐Ÿ›  Prerequisites","titles":["GM world UI app"]},"228":{"title":"๐Ÿ“ฆ Cloning the repo","titles":["GM world UI app"]},"229":{"title":"๐Ÿš€ Running the app","titles":["GM world UI app"]},"230":{"title":"๐Ÿ”— Connecting your wallet","titles":["GM world UI app"]},"231":{"title":"๐ŸŽ‰ Next steps","titles":["GM world UI app"]},"232":{"title":"GM world rollup: Part 3","titles":[]},"233":{"title":"Deploying to Celestia Mainnet Beta","titles":["GM world rollup: Part 3"]},"234":{"title":"๐Ÿชถย Run a Celestia light node","titles":["GM world rollup: Part 3","Deploying to Celestia Mainnet Beta"]},"235":{"title":"Clear previous chain history","titles":["GM world rollup: Part 3","Deploying to Celestia Mainnet Beta"]},"236":{"title":"Start the rollup on mainnet","titles":["GM world rollup: Part 3","Deploying to Celestia Mainnet Beta"]},"237":{"title":"Restarting your rollup","titles":["GM world rollup: Part 3","Deploying to Celestia Mainnet Beta","Start the rollup on mainnet"]},"238":{"title":"Next steps","titles":["GM world rollup: Part 3"]},"239":{"title":"GM world rollup: Part 2","titles":[]},"240":{"title":"Deploying to a Celestia testnet","titles":["GM world rollup: Part 2"]},"241":{"title":"๐Ÿชถย Run a Celestia light node","titles":["GM world rollup: Part 2","Deploying to a Celestia testnet"]},"242":{"title":"๐ŸŸขย Start your sovereign rollup","titles":["GM world rollup: Part 2","Deploying to a Celestia testnet"]},"243":{"title":"Clear previous chain history","titles":["GM world rollup: Part 2","Deploying to a Celestia testnet","๐ŸŸขย Start your sovereign rollup"]},"244":{"title":"Start the new chain","titles":["GM world rollup: Part 2","Deploying to a Celestia testnet","๐ŸŸขย Start your sovereign rollup"]},"245":{"title":"Optional: Restarting your rollup","titles":["GM world rollup: Part 2","Deploying to a Celestia testnet"]},"246":{"title":"Optional: Add a "GM world" query","titles":["GM world rollup: Part 2","Deploying to a Celestia testnet"]},"247":{"title":"๐Ÿ’ฌย Say gm world","titles":["GM world rollup: Part 2","Deploying to a Celestia testnet","Optional: Add a "GM world" query"]},"248":{"title":"โœ‹ย Create your first query","titles":["GM world rollup: Part 2","Deploying to a Celestia testnet","Optional: Add a "GM world" query","๐Ÿ’ฌย Say gm world"]},"249":{"title":"๐Ÿ“จย Query request and response types","titles":["GM world rollup: Part 2","Deploying to a Celestia testnet","Optional: Add a "GM world" query","๐Ÿ’ฌย Say gm world"]},"250":{"title":"๐Ÿ‘‹ย Gm keeper function","titles":["GM world rollup: Part 2","Deploying to a Celestia testnet","Optional: Add a "GM world" query","๐Ÿ’ฌย Say gm world"]},"251":{"title":"Restart your rollup","titles":["GM world rollup: Part 2","Deploying to a Celestia testnet","Optional: Add a "GM world" query","๐Ÿ’ฌย Say gm world"]},"252":{"title":"Query your rollup","titles":["GM world rollup: Part 2","Deploying to a Celestia testnet","Optional: Add a "GM world" query","๐Ÿ’ฌย Say gm world"]},"253":{"title":"Next steps","titles":["GM world rollup: Part 2"]},"254":{"title":"GM world rollup","titles":[]},"255":{"title":"๐ŸŒž Introduction","titles":["GM world rollup"]},"256":{"title":"๐Ÿ› ๏ธ Dependencies","titles":["GM world rollup"]},"257":{"title":"๐ŸŒ Running a Local DA Network","titles":["GM world rollup"]},"258":{"title":"๐Ÿ—๏ธ Building Your Sovereign Rollup","titles":["GM world rollup"]},"259":{"title":"๐Ÿงฐ Configuring Your Rollup","titles":["GM world rollup"]},"260":{"title":"๐Ÿš€ Starting your rollup","titles":["GM world rollup"]},"261":{"title":"๐Ÿ’ธ Transactions","titles":["GM world rollup"]},"262":{"title":"โš–๏ธ Checking Balances","titles":["GM world rollup"]},"263":{"title":"๐ŸŽ‰ Next steps","titles":["GM world rollup"]},"264":{"title":"Polaris EVM and Rollkit","titles":[]},"265":{"title":"Prerequisites","titles":["Polaris EVM and Rollkit"]},"266":{"title":"Run a local-celestia-devnet","titles":["Polaris EVM and Rollkit"]},"267":{"title":"Clone the repo","titles":["Polaris EVM and Rollkit"]},"268":{"title":"Install Foundry","titles":["Polaris EVM and Rollkit"]},"269":{"title":"Start the Polaris EVM using Rollkit","titles":["Polaris EVM and Rollkit"]},"270":{"title":"Congratulations","titles":["Polaris EVM and Rollkit"]},"271":{"title":"Funds","titles":["Polaris EVM and Rollkit"]},"272":{"title":"Frontend","titles":["Polaris EVM and Rollkit"]},"273":{"title":"Deploy the ooga booga portal contract","titles":["Polaris EVM and Rollkit","Frontend"]},"274":{"title":"Interact with the contract","titles":["Polaris EVM and Rollkit","Frontend"]},"275":{"title":"Start and update the frontend","titles":["Polaris EVM and Rollkit","Frontend"]},"276":{"title":"Interact with the frontend","titles":["Polaris EVM and Rollkit","Frontend"]},"277":{"title":"Running Polaris EVM with a Celestia light node","titles":["Polaris EVM and Rollkit"]},"278":{"title":"Start your light node","titles":["Polaris EVM and Rollkit","Running Polaris EVM with a Celestia light node"]},"279":{"title":"Setup Polaris script","titles":["Polaris EVM and Rollkit","Running Polaris EVM with a Celestia light node"]},"280":{"title":"Start the EVM rollup","titles":["Polaris EVM and Rollkit","Running Polaris EVM with a Celestia light node"]},"281":{"title":"Quick start guide","titles":[]},"282":{"title":"๐Ÿ“ฆ Install Rollkit (CLI)","titles":["Quick start guide"]},"283":{"title":"๐Ÿš€ Run your sovereign rollup node","titles":["Quick start guide"]},"284":{"title":"๐ŸŽ‰ Conclusion","titles":["Quick start guide"]},"285":{"title":"๐Ÿ•น๏ธ Wordle app","titles":[]},"286":{"title":"๐Ÿ’ป Pre-requisites","titles":["๐Ÿ•น๏ธ Wordle app"]},"287":{"title":"๐Ÿ“– Design implementation","titles":["๐Ÿ•น๏ธ Wordle app"]},"288":{"title":"โ›“๏ธ Ignite and scaffolding the wordle chain","titles":["๐Ÿ•น๏ธ Wordle app"]},"289":{"title":"๐Ÿ”ฅ Ignite","titles":["๐Ÿ•น๏ธ Wordle app","โ›“๏ธ Ignite and scaffolding the wordle chain"]},"290":{"title":"โ›“๏ธ Scaffolding the wordle chain","titles":["๐Ÿ•น๏ธ Wordle app","โ›“๏ธ Ignite and scaffolding the wordle chain"]},"291":{"title":"๐Ÿ—‚๏ธ Wordle directory","titles":["๐Ÿ•น๏ธ Wordle app","โ›“๏ธ Ignite and scaffolding the wordle chain"]},"292":{"title":"๐Ÿ› ๏ธ Setting up Rollkit","titles":["๐Ÿ•น๏ธ Wordle app"]},"293":{"title":"๐Ÿ—ž๏ธ Installing Rollkit","titles":["๐Ÿ•น๏ธ Wordle app","๐Ÿ› ๏ธ Setting up Rollkit"]},"294":{"title":"โœจ Creating the wordle module","titles":["๐Ÿ•น๏ธ Wordle app"]},"295":{"title":"๐Ÿ”– Scaffolding a module","titles":["๐Ÿ•น๏ธ Wordle app","โœจ Creating the wordle module"]},"296":{"title":"โœ‰๏ธ Messages","titles":["๐Ÿ•น๏ธ Wordle app"]},"297":{"title":"๐Ÿ’ฌ Scaffolding a message","titles":["๐Ÿ•น๏ธ Wordle app","โœ‰๏ธ Messages"]},"298":{"title":"๐ŸŽจ Wordle types","titles":["๐Ÿ•น๏ธ Wordle app"]},"299":{"title":"๐Ÿ—๏ธ Scaffolding wordle types","titles":["๐Ÿ•น๏ธ Wordle app","๐ŸŽจ Wordle types"]},"300":{"title":"๐Ÿ” Keeper functions","titles":["๐Ÿ•น๏ธ Wordle app"]},"301":{"title":"๐Ÿ“ค SubmitWordle function","titles":["๐Ÿ•น๏ธ Wordle app","๐Ÿ” Keeper functions"]},"302":{"title":"โŒ› SubmitGuess function","titles":["๐Ÿ•น๏ธ Wordle app","๐Ÿ” Keeper functions"]},"303":{"title":"๐Ÿ“ฆ Protobuf file","titles":["๐Ÿ•น๏ธ Wordle app","๐Ÿ” Keeper functions"]},"304":{"title":"โ›“๏ธ Run the wordle chain","titles":["๐Ÿ•น๏ธ Wordle app"]},"305":{"title":"๐Ÿชถ Run a local DA node","titles":["๐Ÿ•น๏ธ Wordle app","โ›“๏ธ Run the wordle chain"]},"306":{"title":"๐ŸŸข Building and running wordle chain","titles":["๐Ÿ•น๏ธ Wordle app","โ›“๏ธ Run the wordle chain"]},"307":{"title":"๐Ÿ”ฎ Extending in the future","titles":["๐Ÿ•น๏ธ Wordle app","โ›“๏ธ Run the wordle chain"]},"308":{"title":"๐ŸŽ‰ Next steps","titles":["๐Ÿ•น๏ธ Wordle app"]}},"dirtCount":0,"index":[["โŒ›",{"0":{"302":1}}],["โœ‰๏ธ",{"0":{"296":1},"1":{"297":1}}],["โ›“๏ธ",{"0":{"288":1,"290":1,"304":1},"1":{"289":1,"290":1,"291":1,"305":1,"306":1,"307":1}}],["โ ˜",{"2":{"273":1}}],["รฃ๏ฟฝ๏ฟฝ๏ฟฝ๏ฟฝ๏ฟฝ๏ฟฝ๏ฟฝ๏ฟฝ๏ฟฝ$๏ฟฝi๏ฟฝ๏ฟฝ",{"2":{"270":1}}],["๏ฟฝaru๏ฟฝ๏ฟฝ5๏ฟฝ",{"2":{"270":1}}],["๏ฟฝ๏ฟฝ๏ฟฝ",{"2":{"270":1}}],["โš–๏ธ",{"0":{"262":1}}],["\\treturn",{"2":{"222":2,"250":2}}],["\\tctx",{"2":{"222":2,"250":2}}],["\\t",{"2":{"222":4,"250":4}}],["\\t\\treturn",{"2":{"222":2,"250":2}}],["\\tif",{"2":{"222":2,"250":2}}],["โœ‹",{"0":{"220":1,"248":1}}],["โ ‘",{"2":{"179":1,"273":1}}],["โ Š",{"2":{"179":1}}],["๐Ÿค–",{"0":{"203":1}}],["๐Ÿฆ€",{"0":{"195":1}}],["๐Ÿงฐ",{"0":{"188":1,"259":1}}],["๐Ÿชถ",{"0":{"185":1,"213":1,"234":1,"241":1,"305":1}}],["๐Ÿงช",{"0":{"182":1,"204":1}}],["๐ŸงŠ",{"0":{"173":1,"174":1,"175":1}}],["๐Ÿช™",{"0":{"169":1}}],["โš’๏ธ",{"0":{"168":1}}],[">>",{"2":{"167":1}}],[">",{"2":{"167":2}}],["โ˜€๏ธintroduction",{"0":{"163":1},"1":{"164":1}}],["โšก๏ธ",{"0":{"178":1},"2":{"149":2}}],["โณ",{"2":{"149":2}}],["โŒ",{"2":{"149":4}}],["โœ…",{"2":{"114":1,"149":9,"273":1}}],["โ ‰",{"2":{"114":1,"273":1}}],["xyz",{"2":{"168":1,"268":1}}],["xzf",{"2":{"167":1}}],["x",{"2":{"114":1,"116":1,"210":1,"220":3,"222":4,"248":3,"250":4,"273":1,"277":1,"291":2,"301":2,"302":2,"303":1}}],["โ ฐ",{"2":{"114":1,"179":1}}],["โ †",{"2":{"114":1,"179":1}}],["โ ’",{"2":{"114":1,"179":1,"273":1}}],["^0",{"2":{"114":1,"179":2,"180":1}}],["โœจ",{"0":{"101":1,"198":1,"294":1},"1":{"295":1}}],["๐ŸŽจ",{"0":{"298":1},"1":{"299":1}}],["๐ŸŒŸ",{"0":{"207":1},"1":{"208":1,"209":1,"210":1}}],["๐ŸŽ๏ธ",{"0":{"205":1}}],["๐ŸŒŒ",{"0":{"199":1},"1":{"200":1,"201":1}}],["๐Ÿ ",{"0":{"181":1}}],["๐ŸŽฌ",{"0":{"172":1,"176":1},"1":{"173":1,"174":1,"175":1,"176":1}}],["๐Ÿƒโ€โ™€๏ธ",{"0":{"177":1},"1":{"178":1,"179":1,"180":1,"181":1,"182":1}}],["๐Ÿƒ",{"0":{"167":1,"194":1}}],["๐ŸŽ‰",{"0":{"103":1,"191":1,"231":1,"263":1,"284":1,"308":1},"2":{"220":1,"225":1,"248":1,"253":1}}],["๐Ÿ—๏ธ",{"0":{"99":1,"186":1,"187":1,"258":1,"299":1}}],["๐ŸŒ",{"0":{"98":1,"257":1}}],["๐ŸŒž",{"0":{"96":1,"184":1,"255":1}}],["๐ŸŽŠ",{"2":{"87":1,"94":1}}],["โ›ฝ",{"0":{"85":1}}],["+=",{"2":{"179":1,"302":1}}],["+calldata",{"2":{"111":1}}],["+",{"2":{"84":1,"87":1,"100":1,"116":1,"172":1,"236":1,"302":1}}],["๐Ÿ”ฎ",{"0":{"307":1}}],["๐Ÿ“ค",{"0":{"301":1}}],["๐Ÿ”",{"0":{"300":1},"1":{"301":1,"302":1,"303":1}}],["๐Ÿ”–",{"0":{"295":1}}],["๐Ÿ—‚๏ธ",{"0":{"291":1}}],["๐Ÿ•น๏ธ",{"0":{"285":1},"1":{"286":1,"287":1,"288":1,"289":1,"290":1,"291":1,"292":1,"293":1,"294":1,"295":1,"296":1,"297":1,"298":1,"299":1,"300":1,"301":1,"302":1,"303":1,"304":1,"305":1,"306":1,"307":1,"308":1}}],["๐Ÿ”—",{"0":{"230":1}}],["๐Ÿ“ฆ",{"0":{"228":1,"282":1,"303":1}}],["๐Ÿ› ",{"0":{"227":1}}],["๐Ÿ› ๏ธ",{"0":{"97":1,"166":1,"189":1,"256":1,"292":1},"1":{"167":1,"168":1,"169":1,"293":1}}],["๐Ÿ‘‹",{"0":{"222":1,"250":1}}],["๐Ÿ“จ",{"0":{"221":1,"249":1}}],["๐Ÿ’ฌ",{"0":{"219":1,"247":1,"297":1},"1":{"220":1,"221":1,"222":1,"223":1,"224":1,"248":1,"249":1,"250":1,"251":1,"252":1}}],["๐Ÿ“„",{"0":{"210":1}}],["๐Ÿ“ƒ",{"0":{"209":1}}],["๐Ÿ”Ž",{"0":{"208":1}}],["๐Ÿ’ ",{"0":{"201":1}}],["๐Ÿณ",{"0":{"196":1}}],["๐Ÿ”ฅ",{"0":{"190":1,"289":1}}],["๐Ÿ˜Ž",{"2":{"189":1,"214":1,"236":1,"242":1,"278":1}}],["๐Ÿ“œ",{"0":{"180":1}}],["๐Ÿ“’",{"0":{"179":1,"202":1},"1":{"203":1,"204":1,"205":1,"206":1}}],["๐Ÿ‘›",{"0":{"171":1}}],["๐ŸŸข",{"0":{"170":1,"214":1,"242":1,"306":1},"1":{"171":1,"172":1,"173":1,"174":1,"175":1,"176":1,"215":1,"216":1,"243":1,"244":1}}],["๐Ÿ“–",{"0":{"164":1,"287":1}}],["๐ŸŸก",{"2":{"149":2}}],["๐Ÿ—ž๏ธ",{"0":{"128":1,"192":1,"200":1,"293":1},"1":{"129":1,"130":1,"131":1,"132":1,"193":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"200":1,"201":1,"202":1,"203":1,"204":1,"205":1,"206":1,"207":1,"208":1,"209":1,"210":1}}],["๐Ÿ’ธ",{"0":{"102":1,"261":1}}],["๐Ÿš€",{"0":{"100":1,"206":1,"229":1,"260":1,"283":1},"2":{"167":1}}],["๐Ÿ›ข๏ธ",{"0":{"87":1}}],["๐Ÿ”",{"0":{"86":1}}],["๐Ÿ›‘",{"0":{"84":1}}],["๐Ÿ’ฐ",{"0":{"83":1}}],["๐ŸŸ ",{"0":{"82":1}}],["๐Ÿ”„",{"0":{"79":1},"1":{"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1}}],["๐Ÿ’ป",{"0":{"61":1,"78":1,"132":1,"165":1,"193":1,"197":1,"286":1},"1":{"62":1,"194":1,"195":1,"196":1,"197":1,"198":1}}],["โ‰ฅ",{"2":{"62":2}}],["q",{"2":{"57":1,"101":4,"102":1,"224":1,"252":1,"279":1,"306":1}}],["quality",{"2":{"112":1}}],["queried",{"2":{"174":1,"225":1,"253":1}}],["queries",{"2":{"44":1,"57":1,"135":1,"148":1,"219":1,"247":1}}],["querygmresponse",{"2":{"220":2,"221":2,"222":5,"248":2,"249":2,"250":5}}],["querygmrequest",{"2":{"220":2,"221":2,"222":2,"248":2,"249":2,"250":2}}],["queryparamsresponse",{"2":{"220":1,"248":1}}],["queryparamsrequest",{"2":{"220":1,"248":1}}],["query=",{"2":{"210":1}}],["querying",{"0":{"208":1},"2":{"144":1,"306":1}}],["queryresponses",{"2":{"44":1}}],["queryfns",{"2":{"44":2,"47":1}}],["query",{"0":{"218":1,"220":1,"221":1,"224":1,"246":1,"248":1,"249":1,"252":1},"1":{"219":1,"220":1,"221":1,"222":1,"223":1,"224":1,"247":1,"248":1,"249":1,"250":1,"251":1,"252":1},"2":{"43":1,"44":3,"74":2,"75":3,"160":3,"175":1,"189":1,"208":3,"210":7,"219":2,"220":13,"222":8,"247":2,"248":13,"250":8,"262":3,"306":6}}],["querymsgfns",{"2":{"44":1}}],["querymsg",{"2":{"43":2,"44":3,"47":2}}],["quot",{"0":{"218":2,"246":2},"1":{"219":2,"220":2,"221":2,"222":2,"223":2,"224":2,"247":2,"248":2,"249":2,"250":2,"251":2,"252":2},"2":{"26":6,"34":18,"35":8,"36":6,"42":2,"43":8,"45":6,"48":6,"56":2,"57":14,"67":4,"70":10,"71":4,"72":272,"74":8,"75":4,"80":10,"81":2,"82":6,"85":2,"87":2,"99":2,"100":26,"101":26,"102":8,"110":2,"111":29,"114":4,"115":4,"132":2,"149":4,"160":162,"167":10,"170":12,"171":8,"172":4,"173":2,"177":16,"179":2,"180":4,"181":4,"182":4,"189":4,"190":4,"195":2,"205":12,"208":10,"209":24,"210":56,"220":4,"222":6,"230":2,"248":4,"250":6,"255":2,"258":2,"259":4,"260":20,"261":36,"262":8,"270":2,"274":8,"301":30,"302":42,"306":82}}],["quickly",{"2":{"118":1}}],["quickstart",{"2":{"108":1}}],["quicker",{"2":{"39":2}}],["quick",{"0":{"281":1},"1":{"282":1,"283":1,"284":1},"2":{"20":1,"39":2,"96":1,"255":1,"256":1}}],["zero",{"2":{"105":1}}],["zone",{"2":{"57":1}}],["zkml",{"0":{"104":1,"109":1,"112":1,"115":1},"1":{"105":1,"106":1,"107":1,"108":1,"109":1,"110":2,"111":2,"112":2,"113":1,"114":1,"115":1,"116":1},"2":{"77":1,"109":1,"112":1,"113":1,"115":1,"116":1}}],["zk",{"0":{"153":1},"2":{"7":1,"10":2,"105":1,"122":2,"135":1,"153":1}}],["โ””โ”€โ”€",{"2":{"48":2}}],["โ”œโ”€โ”€",{"2":{"48":5}}],["`wasmd`",{"2":{"200":1}}],["`date",{"2":{"172":1}}],["`nodejs",{"2":{"167":1}}],["```bash",{"2":{"167":4}}],["```",{"2":{"167":5}}],["`gm`",{"2":{"55":1,"214":1,"220":1,"236":1,"242":1,"248":1}}],["`",{"2":{"45":1,"172":1}}],["=nil",{"2":{"302":1}}],["=https",{"2":{"195":1}}],["==",{"2":{"114":2,"222":2,"250":2,"273":2,"302":2}}],["=",{"2":{"34":1,"39":1,"42":2,"43":4,"45":8,"48":1,"81":1,"101":5,"102":1,"111":8,"179":6,"197":1,"210":4,"220":2,"221":1,"222":4,"248":2,"249":1,"250":4,"259":2,"265":1,"301":16,"302":22,"303":2}}],["~",{"2":{"34":4,"114":2,"167":4,"178":1,"204":1,"205":1,"206":1,"259":1,"293":1,"306":1}}],["jcstein",{"2":{"272":1}}],["join",{"2":{"111":1}}],["journey",{"2":{"39":1}}],["js",{"2":{"100":1,"167":1,"227":1,"307":1}}],["jsonrpc",{"2":{"160":1}}],["json",{"2":{"34":7,"44":1,"70":2,"101":2,"102":2,"110":1,"111":3,"144":2,"160":2,"206":2,"208":3,"210":4,"224":1,"252":1,"275":3,"283":4,"306":4}}],["juno",{"2":{"45":1}}],["just",{"2":{"7":1,"10":1,"68":1,"96":1,"112":1,"116":1,"122":1,"220":1,"248":1,"255":1,"261":1,"271":1,"277":1}}],["jq",{"2":{"34":3,"99":3,"101":1,"102":2,"166":1,"175":1,"189":1,"194":1,"206":2,"208":1,"210":1,"279":1,"306":1}}],["904",{"2":{"197":1}}],["902",{"2":{"197":1}}],["9090",{"2":{"63":2,"266":2}}],["9545",{"2":{"181":2}}],["9d5c710cd64d031752a7db86e09c8ea8ce4cae4e30878c6d0487c57806060a47",{"2":{"160":2}}],["974724",{"2":{"114":1}}],["999",{"2":{"209":1}}],["999uwasm",{"2":{"209":1}}],["9999999999999999999957931",{"2":{"262":1}}],["9999999999999999999897679",{"2":{"75":1}}],["9999999999999999989995000",{"2":{"101":1}}],["99ms",{"2":{"114":1}}],["991rcctqc5l4px95k6tdg4pjrms70m2a9t35rl50t",{"2":{"94":1}}],["991hesf7xgmjwttag2n2wzk43rvxh47nn4ckh3e6s",{"2":{"94":1}}],["9290",{"2":{"35":1,"36":1,"80":1,"85":1,"87":1,"100":1,"260":1}}],["9",{"0":{"34":1},"2":{"167":1,"179":2}}],["8s",{"2":{"229":1}}],["8kyecn9mzv8ghjspkrde",{"2":{"189":1}}],["8510",{"2":{"179":1}}],["8545",{"2":{"114":1,"182":3,"273":1}}],["8gb",{"2":{"165":1}}],["80085",{"2":{"114":1}}],["8000",{"2":{"87":1}}],["8",{"0":{"33":1},"2":{"114":3,"177":1,"179":6,"180":1,"205":1,"273":2}}],["682",{"2":{"273":1}}],["677caf6c80b85acef6f9ec7906fb3cb021322aac78b015fa07d5112f2f824bff",{"2":{"261":1}}],["6e340b9cffb37a989ca544e6bb780a2c78901d3fb33738768511a30617afa01d",{"2":{"160":1}}],["64ba6e31fe887d66c6f8f31c7b1a80c7ca179239677b4088bb55f5ea07dbe273",{"2":{"74":1,"75":1}}],["69",{"2":{"72":1}}],["61",{"2":{"72":1}}],["6510stake",{"2":{"72":1}}],["6",{"0":{"31":1},"2":{"63":1,"167":1,"197":1,"205":1,"266":1,"287":3,"302":5}}],["$name",{"2":{"210":1}}],["$namespace",{"2":{"80":1,"85":1,"87":1,"177":1}}],["$receiver",{"2":{"276":1}}],["$register",{"2":{"210":1}}],["$rpc",{"2":{"114":2,"115":2,"181":3,"273":2,"274":2,"276":1}}],["$init",{"2":{"209":1}}],["$hash",{"2":{"175":2}}],["$home",{"2":{"55":1,"63":1,"65":1,"69":1,"70":1,"83":1,"99":1,"101":4,"110":1,"113":1,"114":1,"115":1,"167":5,"187":1,"188":2,"195":2,"215":2,"217":1,"235":2,"237":1,"243":2,"245":1,"258":1,"267":1,"269":1,"272":1,"275":2,"278":1,"279":2,"280":1}}],["$flags",{"2":{"174":1,"175":2}}],["$code",{"2":{"208":2,"209":1,"210":2}}],["$coinbase",{"2":{"172":1}}],["$contract",{"2":{"115":2,"181":2,"182":2,"210":5,"274":2}}],["$calldata",{"2":{"115":2}}],["$channel",{"2":{"74":1,"75":1,"101":1}}],["$chain",{"2":{"29":1,"32":1}}],["$private",{"2":{"114":2,"115":2,"182":2,"273":2,"274":1,"276":1}}],["$pubkey",{"2":{"34":1}}],["$pub",{"2":{"34":1}}],["$tx",{"2":{"102":1,"206":2,"208":1}}],["$token",{"2":{"31":1}}],["$da",{"2":{"80":1,"85":1,"87":1,"189":1,"190":2}}],["$anvil",{"2":{"181":2}}],["$account",{"2":{"101":1,"102":2}}],["$auth",{"2":{"80":1,"189":1,"190":1,"279":1}}],["$address",{"2":{"34":1,"172":1}}],["$gm",{"2":{"75":3}}],["$osmo",{"2":{"74":2}}],["$staking",{"2":{"32":1}}],["$key2",{"2":{"261":1,"262":1}}],["$key1",{"2":{"261":1,"262":1}}],["$key",{"2":{"30":1,"31":1,"32":1}}],["$validator",{"2":{"29":1}}],["$",{"2":{"26":1,"57":1,"99":1,"101":3,"102":1,"176":1,"205":6,"258":1,"279":1}}],["|jq",{"2":{"279":1}}],["||",{"2":{"54":13}}],["|",{"2":{"21":1,"54":28,"63":1,"97":1,"98":1,"101":2,"102":2,"168":1,"175":1,"189":1,"194":1,"195":1,"198":1,"206":2,"208":1,"210":1,"227":1,"256":1,"257":1,"268":1,"279":1,"282":1,"289":1,"305":1,"306":1}}],["01",{"2":{"301":1,"302":2}}],["01|09",{"2":{"283":6}}],["082",{"2":{"283":1}}],["081",{"2":{"283":1}}],["080",{"2":{"283":1}}],["080998z",{"2":{"72":1}}],["080992z",{"2":{"72":1}}],["080924z",{"2":{"72":1}}],["05",{"2":{"283":6}}],["0`",{"2":{"167":1}}],["036da1ab230a4ce8654358f77cb426ba2f8ef9b81ea06faca32085b0b0d25c2a",{"2":{"160":2}}],["09t15",{"2":{"160":2}}],["0x18df82c7e422a42d47345ed86b0e935e9718ebda",{"2":{"273":1}}],["0xa174e9389633972458e6dce431d84736e0709e9406c1c3b14b5fa9ae0cdd6860",{"2":{"273":1}}],["0xa06a4585af436e2271fc9f697488ce49771c6480e72caac76739e286564c0fc3",{"2":{"114":1}}],["0xfffdbb37105441e14b0ee6330d855d8504ff39e705c3afa8f859ac9865f99306",{"2":{"271":1}}],["0x58096aabd3cb58bdef28501bda01b6cf4a37ed0ba482f81462bc1043bb91f996",{"2":{"115":1}}],["0x5c59c83c099f72fce832208f96a23a1e43737a14",{"2":{"114":2,"115":1}}],["0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",{"2":{"115":1}}],["0x20f33ce90a13a4b5e7697e3544c3083b8f8a51d4",{"2":{"115":1,"271":1}}],["0xbbd872d0c37fe889c2456daf80505c20f262b001842d919d06e48c163319af3d",{"2":{"115":1}}],["002",{"2":{"283":2}}],["002924172006823068",{"2":{"114":1}}],["001",{"2":{"283":1}}],["001528707003566983",{"2":{"273":1}}],["000000506f6c61726973",{"2":{"278":1}}],["00000000000000000000000000000000000000000008e5f679bf7116cb",{"2":{"189":2,"214":2,"236":2,"242":2}}],["0000000000000000000000000000000000000000000000000000000000000000",{"2":{"160":1}}],["000000000000000000000000000000000000b7b24d9321578eb83626",{"2":{"160":1}}],["000000007",{"2":{"114":1,"273":1}}],["000001",{"2":{"170":1}}],["00",{"2":{"114":3,"273":3}}],["069040z",{"2":{"72":1}}],["062667z",{"2":{"72":1}}],["062649z",{"2":{"72":1}}],["078583z",{"2":{"72":1}}],["070389z",{"2":{"72":1}}],["070364z",{"2":{"72":1}}],["07",{"2":{"72":8}}],["04",{"2":{"72":5,"160":2}}],["025uwasm",{"2":{"206":2,"209":1,"210":1}}],["025stake",{"2":{"35":1,"36":1,"100":1,"101":1,"190":2}}],["02ibc",{"2":{"100":1,"102":1}}],["02",{"2":{"72":13,"301":1,"302":2}}],["0s",{"2":{"70":2,"101":2,"114":1,"273":1}}],["0",{"2":{"19":1,"35":9,"36":9,"39":1,"42":1,"45":1,"57":6,"59":1,"62":2,"63":2,"65":1,"70":2,"72":12,"74":2,"76":1,"80":8,"85":8,"87":8,"94":2,"100":9,"101":7,"102":2,"114":4,"115":1,"160":6,"167":3,"177":2,"179":5,"181":2,"182":6,"187":1,"190":2,"195":2,"197":1,"198":1,"205":2,"206":6,"208":5,"209":3,"210":21,"229":4,"260":6,"261":1,"262":2,"265":1,"273":4,"278":3,"293":1,"302":1,"306":5}}],["364",{"2":{"210":1}}],["36656",{"2":{"35":1,"36":1,"57":2,"80":1,"85":1,"87":1}}],["36657",{"2":{"35":1,"36":1,"57":1,"70":1,"74":1,"75":2,"80":1,"85":1,"87":1,"94":1,"206":2,"208":2,"209":1,"210":6}}],["3๏ธ",{"0":{"131":1}}],["310493z",{"2":{"72":1}}],["39",{"2":{"34":8,"82":6,"101":16,"111":2,"160":2,"172":2,"175":2,"177":2,"179":2,"189":2,"195":15,"206":4,"208":2,"209":2,"210":12,"261":8,"279":5,"302":3,"306":2}}],["390kb",{"2":{"14":1}}],["3",{"0":{"28":1,"94":1,"232":1},"1":{"233":1,"234":1,"235":1,"236":1,"237":1,"238":1},"2":{"57":9,"63":2,"106":1,"114":1,"179":3,"194":1,"197":1,"206":2,"209":1,"210":1,"232":1,"273":1,"291":1}}],["3000",{"2":{"229":2,"230":1}}],["3000000007",{"2":{"115":1}}],["300397z",{"2":{"72":1}}],["30s",{"2":{"19":1}}],["30",{"2":{"19":1}}],["kv",{"2":{"301":2}}],["k",{"2":{"222":2,"250":2,"301":4,"302":6}}],["knowledge",{"2":{"105":1,"163":1}}],["know",{"2":{"78":1,"132":1,"201":1}}],["keplr",{"0":{"161":1},"2":{"161":3,"226":1,"230":3}}],["keyfile=",{"2":{"283":1}}],["key2=gm1e4fqspwdsy0dzkmzsdhkadfcrd0udngw0f88pw",{"2":{"261":1}}],["key1=gm18k57hn42ujcccyn0n5v7r6ydpacycn2wkt7uh9",{"2":{"261":1}}],["key=0xfffdbb37105441e14b0ee6330d855d8504ff39e705c3afa8f859ac9865f99306",{"2":{"114":1,"273":1}}],["key=",{"2":{"112":1,"181":1}}],["key=gm1vvl79phavqruppr6f5zy4ypxy7znshrqam48qy",{"2":{"74":1}}],["key=osmo1vvl79phavqruppr6f5zy4ypxy7znshrqm390ll",{"2":{"74":1}}],["key=$",{"2":{"34":1,"182":1}}],["keys",{"2":{"30":1,"70":2,"71":3,"74":1,"101":8,"102":1,"181":3,"182":1,"261":3}}],["keyring",{"0":{"30":1},"2":{"30":2,"31":1,"32":1,"70":2,"74":1,"83":1,"94":1,"101":5,"102":2,"182":1,"206":2,"209":1,"210":2,"261":2,"306":5}}],["key",{"0":{"30":1},"2":{"26":2,"30":1,"34":5,"66":2,"67":2,"70":4,"74":5,"75":3,"83":2,"101":7,"102":1,"106":1,"112":2,"114":5,"115":4,"160":1,"181":6,"182":8,"206":2,"208":1,"209":1,"210":3,"261":5,"262":2,"271":1,"273":5,"274":2,"276":4,"283":3,"287":1,"300":1,"301":1,"306":7}}],["keepers",{"2":{"300":1,"303":1}}],["keeper",{"0":{"222":1,"250":1,"300":1},"1":{"301":1,"302":1,"303":1},"2":{"210":2,"219":3,"220":1,"222":7,"247":3,"248":1,"250":7,"300":5,"301":3,"302":3,"303":1}}],["keep",{"2":{"18":1,"59":1,"68":1,"83":1,"115":1,"139":1,"213":1,"263":1,"294":1}}],["kickstarted",{"2":{"200":1,"216":1,"244":1,"306":1}}],["kicked",{"2":{"14":1}}],["kinds",{"2":{"295":1}}],["kind",{"2":{"10":1}}],["4980",{"2":{"174":1}}],["46",{"2":{"283":6}}],["464427035z",{"2":{"160":2}}],["46657",{"2":{"66":1,"70":1,"74":1,"75":1}}],["48",{"2":{"160":2}}],["443",{"2":{"101":1}}],["4039stake",{"2":{"94":1}}],["42069$ibc",{"2":{"75":1}}],["42069",{"2":{"74":1,"261":1}}],["42069stake",{"2":{"74":1,"261":1}}],["4762stake",{"2":{"72":1}}],["47",{"2":{"69":1}}],["4mb",{"2":{"14":1}}],["4",{"0":{"29":1},"2":{"14":1,"69":3,"82":3,"101":11,"165":1,"241":1,"278":3}}],["58",{"2":{"283":6}}],["58pm",{"2":{"270":10}}],["52s",{"2":{"273":1}}],["59s",{"2":{"179":1}}],["5699",{"2":{"114":1}}],["51pm",{"2":{"82":4}}],["5183",{"2":{"70":1,"101":1}}],["5112",{"2":{"60":1}}],["509569",{"2":{"273":1}}],["500uosmo",{"2":{"75":1}}],["5000stake",{"2":{"74":1,"94":1,"101":1,"261":1}}],["50",{"2":{"63":1,"160":2,"197":2}}],["55pm",{"2":{"57":10}}],["5",{"0":{"30":1},"2":{"12":1,"54":1,"69":1,"70":2,"88":1,"101":3,"301":4,"302":4,"306":1}}],["uwasm",{"2":{"209":2}}],["ui",{"0":{"226":1},"1":{"227":1,"228":1,"229":1,"230":1,"231":1},"2":{"226":1,"307":1}}],["uiiny",{"2":{"160":1}}],["uint256",{"2":{"115":8}}],["uri",{"2":{"144":1}}],["url=http",{"2":{"114":1,"181":1,"273":1}}],["url",{"2":{"114":5,"115":4,"181":7,"182":3,"189":1,"229":1,"273":5,"274":4,"276":2}}],["ubuntu",{"2":{"99":1,"165":2}}],["utia",{"2":{"87":1,"100":1}}],["utilizing",{"2":{"117":1,"133":2}}],["utilization",{"2":{"14":1}}],["utilized",{"2":{"125":1}}],["utilizes",{"2":{"96":1,"255":1}}],["utilize",{"2":{"9":1,"10":1,"125":1,"149":1}}],["utest",{"2":{"74":1}}],["uosmo",{"2":{"74":1}}],["updating",{"0":{"179":1,"180":1}}],["updated",{"2":{"143":1,"158":1,"230":1,"302":2}}],["updates=0",{"2":{"100":1,"260":1,"270":1,"283":1}}],["update",{"0":{"57":1,"275":1},"2":{"54":1,"57":2,"152":1,"166":2,"167":1,"179":2,"180":1,"222":1,"250":1,"264":1,"275":1}}],["upon",{"2":{"101":2,"283":1}}],["uploadable",{"2":{"43":1}}],["upload",{"2":{"39":1,"45":1,"110":2,"112":1}}],["up",{"0":{"21":1,"38":1,"107":1,"199":1,"292":1},"1":{"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"200":1,"201":1,"293":1},"2":{"14":1,"19":1,"21":1,"24":1,"25":1,"27":1,"37":1,"40":1,"51":1,"68":1,"81":1,"94":1,"98":1,"114":1,"117":1,"143":1,"149":2,"163":2,"164":1,"169":1,"170":1,"171":1,"184":1,"189":1,"209":1,"225":1,"229":1,"238":1,"253":1,"257":1,"258":1,"264":1,"284":1,"287":1,"292":1,"301":2,"302":2,"305":1}}],["upstream",{"2":{"9":1,"138":1}}],["upgrade",{"2":{"13":1,"14":1,"164":1,"166":2}}],["upgradeable",{"2":{"8":1}}],["upgrades",{"2":{"8":1}}],["undelegating",{"2":{"295":1}}],["under",{"2":{"148":1,"188":1,"259":2}}],["understanding",{"2":{"96":1,"163":1,"255":2}}],["understand",{"2":{"77":1,"134":1,"286":2,"294":1}}],["unicode",{"2":{"301":2}}],["unit",{"0":{"204":1},"2":{"204":1}}],["unified",{"2":{"118":1}}],["unchanged",{"2":{"195":1}}],["unconstrained",{"2":{"7":1}}],["unknown",{"2":{"195":8,"203":2,"210":3}}],["unpacked",{"2":{"172":1}}],["unlikely",{"2":{"121":1}}],["unlike",{"2":{"96":1,"255":1}}],["unable",{"2":{"81":1}}],["unordered",{"2":{"72":1}}],["until",{"2":{"59":1,"197":1}}],["unwrapsdkcontext",{"2":{"222":2,"250":2,"301":1,"302":1}}],["unwrap",{"2":{"43":1}}],["unwind",{"2":{"8":1}}],["unsafe",{"2":{"28":1,"182":1}}],["usr",{"2":{"167":3,"205":2}}],["us",{"2":{"78":1,"94":1,"111":1,"132":1,"208":1,"210":1,"219":1,"247":1,"289":1,"296":1,"299":1,"300":2,"301":1,"302":2}}],["usage",{"2":{"13":1,"14":1,"43":1,"44":1,"101":1,"164":1}}],["using",{"0":{"45":1,"101":1,"107":1,"269":1},"2":{"7":2,"13":1,"17":1,"37":1,"39":1,"40":1,"41":1,"43":1,"47":1,"48":1,"49":1,"51":1,"52":1,"53":1,"66":1,"70":1,"72":1,"80":1,"81":2,"84":1,"96":2,"99":1,"100":2,"102":1,"105":2,"106":1,"107":1,"115":1,"116":1,"138":1,"139":1,"140":2,"145":1,"163":2,"179":2,"180":1,"185":1,"189":2,"192":1,"195":1,"196":1,"207":2,"210":1,"214":1,"227":1,"229":1,"231":1,"236":2,"242":1,"255":1,"260":1,"264":1,"265":1,"277":4,"278":1,"281":1,"284":1,"289":1,"295":1,"301":1,"306":1,"307":2,"308":1}}],["user",{"2":{"158":2,"177":1,"226":1,"231":1,"295":1}}],["users",{"2":{"3":1,"116":1,"122":1,"135":1,"148":2,"154":1,"158":1,"289":1}}],["useful",{"2":{"24":1,"43":1,"44":1,"284":1}}],["uses",{"2":{"16":1,"52":2,"57":1,"96":1,"97":1,"103":1,"118":1,"120":1,"145":1,"151":1,"160":1,"179":1,"214":1,"236":1,"242":1,"264":1,"289":1,"301":1,"302":1}}],["use",{"0":{"76":1,"95":1,"123":1,"127":1},"1":{"96":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"124":1,"125":1,"126":1},"2":{"5":1,"9":3,"10":1,"12":1,"14":1,"16":1,"37":1,"42":1,"43":2,"44":1,"45":4,"46":1,"48":2,"50":1,"57":2,"59":1,"60":2,"63":1,"76":1,"77":3,"80":2,"117":1,"118":1,"124":2,"137":1,"145":1,"152":1,"154":1,"163":1,"164":1,"167":1,"176":1,"180":1,"181":2,"182":1,"192":2,"196":1,"206":3,"207":2,"217":1,"222":1,"237":1,"245":1,"250":1,"264":1,"273":1,"276":1,"278":2,"285":1,"290":1,"301":1,"302":1}}],["used",{"2":{"3":1,"7":1,"9":2,"14":1,"16":1,"17":1,"27":1,"45":2,"47":1,"53":1,"57":1,"59":2,"72":5,"108":1,"115":1,"118":1,"122":1,"123":1,"137":1,"145":1,"149":1,"160":2,"173":1,"190":1,"210":2,"220":1,"248":1,"264":1,"277":1,"298":1,"302":1,"306":1}}],["2๏ธ",{"0":{"130":1}}],["24ms",{"2":{"179":1}}],["24",{"2":{"72":3,"114":2,"160":1,"287":1}}],["24023uosmo",{"2":{"72":1}}],["296353z",{"2":{"72":1}}],["293348z",{"2":{"72":1}}],["231649",{"2":{"115":2}}],["23",{"2":{"72":1}}],["2225",{"2":{"229":1}}],["22",{"2":{"72":13,"165":1,"194":1}}],["2006",{"2":{"301":1,"302":2}}],["200000",{"2":{"261":1,"306":1}}],["2061",{"2":{"273":1}}],["2024",{"2":{"72":12,"160":2,"283":6}}],["2023",{"2":{"12":1,"14":1,"195":2}}],["20s",{"2":{"70":2,"101":2}}],["20",{"2":{"70":1,"100":1,"101":1,"114":1,"189":1,"273":2}}],["259b1278264180a2aefc2085f1b55753849c4815",{"2":{"69":1}}],["26650",{"2":{"266":2,"278":3}}],["26656",{"2":{"100":2,"260":2}}],["26659",{"2":{"63":2,"266":2,"278":2}}],["26657",{"2":{"63":2,"100":1,"101":1,"260":1,"266":2}}],["26658",{"2":{"57":1,"63":2,"266":2,"278":2}}],["2x",{"2":{"59":1}}],["21pm",{"2":{"100":24,"260":24}}],["21",{"2":{"42":1,"62":1,"69":1,"265":1}}],["2",{"0":{"27":1,"93":1,"121":1,"211":1,"239":1},"1":{"212":1,"213":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":1,"220":1,"221":1,"222":1,"223":1,"224":1,"225":1,"240":1,"241":1,"242":1,"243":1,"244":1,"245":1,"246":1,"247":1,"248":1,"249":1,"250":1,"251":1,"252":1,"253":1},"2":{"7":1,"42":1,"47":1,"52":1,"59":1,"62":1,"63":1,"69":3,"101":5,"102":1,"115":9,"160":2,"179":1,"187":1,"195":1,"198":1,"212":1,"232":1,"236":1,"240":1,"261":1,"293":1,"296":1,"303":1}}],["1ether",{"2":{"276":1}}],["1785",{"2":{"197":1}}],["1777655",{"2":{"189":1}}],["17",{"2":{"179":4,"197":1}}],["172",{"2":{"100":1,"260":1}}],["171590",{"2":{"72":1}}],["171",{"2":{"57":1}}],["19",{"2":{"72":1,"81":3,"82":3,"85":1,"167":1}}],["14",{"2":{"72":1}}],["18332",{"2":{"177":1}}],["18177uosmo",{"2":{"72":1}}],["18",{"2":{"72":1,"179":1,"195":1,"273":1}}],["1594",{"2":{"264":1}}],["15s",{"2":{"160":1}}],["15utia",{"2":{"101":1}}],["150",{"2":{"101":1}}],["15",{"2":{"72":1,"92":1}}],["15t09",{"2":{"72":13}}],["167533",{"2":{"210":1}}],["16",{"2":{"167":6}}],["160",{"2":{"165":1}}],["162",{"2":{"100":1,"260":1}}],["163",{"2":{"100":1,"260":1}}],["1632",{"2":{"60":1}}],["165662",{"2":{"72":1}}],["1uosmo",{"2":{"70":1}}],["1utia",{"2":{"59":1}}],["13285",{"2":{"179":1}}],["1317",{"2":{"160":1}}],["13",{"2":{"63":2,"114":1,"160":1,"179":2,"180":1,"195":1,"197":1}}],["12345",{"2":{"306":1}}],["123809",{"2":{"210":1}}],["12350",{"2":{"179":1}}],["124972",{"2":{"72":1}}],["126689",{"2":{"72":1}}],["12",{"2":{"72":1,"100":23,"179":2,"205":2,"260":23,"266":1,"278":1}}],["12d3koowsicdpmmtlf9fjbsshzc9uvp1cbnqkppbyvbgxhvbhauy",{"2":{"100":2,"260":2}}],["12d3koowcmfjlkqjzuarwpnudjsezefilyzculxe1deky6zpxzpk",{"2":{"57":3}}],["12d",{"2":{"57":1}}],["127",{"2":{"35":2,"36":2,"57":2,"80":2,"85":2,"87":2,"94":1,"100":1,"177":1,"181":1,"182":3,"206":2,"208":2,"209":1,"210":6,"260":1}}],["11544",{"2":{"115":1}}],["118",{"2":{"70":2,"101":2}}],["11",{"0":{"36":1},"2":{"160":1,"195":1,"213":1}}],["101",{"2":{"114":1,"172":2}}],["10+",{"2":{"106":1}}],["109",{"2":{"100":1,"260":1}}],["10s",{"2":{"70":1,"101":1,"160":1}}],["10",{"0":{"35":1},"2":{"52":1,"57":1,"72":1,"165":1,"179":3,"180":1,"189":3,"195":1,"214":3,"236":3,"242":3,"278":2}}],["100uwasm",{"2":{"209":1,"210":1}}],["1000000urosm",{"2":{"160":1}}],["1000000utia",{"2":{"101":1}}],["10000000utia",{"2":{"101":1}}],["10000000stake",{"2":{"101":2}}],["100000000999876914",{"2":{"74":1}}],["10000000000000000000042069",{"2":{"262":1}}],["10000000000000000000000000stake",{"2":{"26":1}}],["100000000000000",{"2":{"74":1}}],["1000000000stake",{"2":{"26":1}}],["1000000stake",{"2":{"74":1}}],["1000000",{"2":{"70":2,"101":1}}],["100000",{"2":{"70":2}}],["1000",{"2":{"34":1}}],["100",{"2":{"19":1,"209":1,"287":1,"301":1,"302":1}}],["1ms",{"2":{"19":1}}],["1stake",{"2":{"70":1,"102":1}}],["1s",{"2":{"19":3}}],["1",{"0":{"26":1,"91":1,"120":1,"129":1},"1":{"92":1},"2":{"7":2,"14":1,"18":2,"35":2,"36":2,"39":1,"45":1,"48":2,"53":1,"57":2,"59":3,"62":1,"63":1,"65":1,"70":4,"72":7,"73":1,"74":1,"75":2,"80":2,"85":2,"87":2,"94":1,"100":3,"101":5,"114":2,"115":3,"121":2,"122":2,"125":2,"160":5,"167":2,"172":2,"177":2,"179":2,"181":1,"182":3,"195":2,"206":4,"208":5,"209":2,"210":9,"212":1,"221":1,"232":1,"236":1,"240":1,"249":1,"260":3,"265":1,"273":3,"287":1,"302":1,"303":1}}],["yml",{"2":{"291":1}}],["yazzyyaz",{"2":{"306":1}}],["yarnversion",{"2":{"227":1}}],["yarn",{"2":{"227":3,"275":2}}],["yamlglobal",{"2":{"70":1}}],["yaml",{"2":{"70":1,"101":1}}],["y",{"2":{"101":1,"102":1,"166":2,"172":1,"206":2,"209":1,"210":2,"261":1,"306":7}}],["yes",{"2":{"149":8}}],["yellow",{"2":{"101":2,"287":1}}],["yet",{"2":{"18":1,"132":1,"302":1,"306":2}}],["years",{"2":{"7":2,"9":1,"122":1}}],["yourself",{"2":{"290":1}}],["yours",{"2":{"175":1}}],["your",{"0":{"10":1,"22":1,"23":1,"25":1,"38":1,"42":1,"64":1,"79":1,"83":1,"84":1,"86":1,"88":1,"91":1,"93":1,"94":1,"95":1,"99":1,"100":1,"112":1,"115":1,"187":1,"188":1,"190":1,"199":1,"214":1,"217":1,"220":1,"223":1,"224":1,"230":1,"237":1,"242":1,"245":1,"248":1,"251":1,"252":1,"258":1,"259":1,"260":1,"278":1,"283":1},"1":{"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"65":1,"66":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"89":1,"90":1,"91":1,"92":2,"93":1,"94":1,"96":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"200":1,"201":1,"215":1,"216":1,"243":1,"244":1},"2":{"2":5,"10":1,"11":1,"19":3,"20":1,"21":1,"22":1,"23":1,"24":1,"25":2,"26":1,"27":2,"37":3,"39":1,"40":2,"42":3,"43":4,"44":1,"45":2,"47":1,"48":5,"50":1,"54":3,"56":2,"57":5,"58":2,"62":1,"66":2,"67":2,"69":1,"72":1,"74":4,"75":1,"76":1,"77":4,"79":1,"80":7,"81":4,"82":1,"83":3,"84":2,"87":2,"89":3,"92":3,"93":2,"94":2,"98":1,"99":2,"105":1,"110":1,"112":3,"113":2,"114":9,"115":3,"120":2,"129":1,"137":1,"138":1,"161":1,"171":1,"172":2,"173":1,"174":1,"176":1,"177":1,"178":1,"182":1,"184":1,"185":3,"189":4,"190":2,"194":1,"195":4,"196":2,"206":1,"210":2,"213":1,"214":1,"216":2,"217":2,"220":1,"222":1,"223":1,"225":2,"226":1,"227":1,"230":6,"231":1,"234":1,"236":5,"237":1,"238":1,"241":1,"242":1,"244":2,"245":2,"248":1,"250":1,"251":1,"253":2,"257":1,"258":1,"259":1,"261":1,"265":2,"269":1,"271":2,"273":2,"275":2,"276":4,"277":5,"278":4,"279":1,"280":4,"281":1,"282":1,"284":1,"289":3,"290":2,"291":2,"293":1,"302":1,"305":3,"308":1}}],["you",{"0":{"123":1,"127":1},"1":{"124":1,"125":1,"126":1},"2":{"0":2,"2":1,"4":1,"5":1,"10":1,"11":2,"18":1,"19":4,"22":1,"24":1,"25":1,"27":2,"29":1,"37":1,"39":7,"42":2,"43":3,"45":2,"46":3,"47":2,"48":2,"49":2,"50":1,"53":1,"54":3,"56":1,"57":3,"58":1,"63":4,"66":2,"70":1,"71":1,"72":4,"73":1,"77":4,"78":1,"79":1,"80":4,"81":6,"82":1,"83":3,"84":1,"85":1,"87":1,"90":3,"92":1,"93":4,"94":2,"96":1,"99":4,"100":1,"103":1,"105":1,"107":1,"108":1,"110":3,"112":2,"113":1,"115":1,"116":1,"117":3,"120":1,"127":3,"128":2,"132":2,"133":1,"137":1,"138":2,"140":1,"152":1,"158":1,"160":1,"163":2,"167":1,"169":1,"172":2,"174":1,"176":2,"177":2,"178":1,"179":1,"181":2,"182":1,"184":1,"185":3,"186":1,"189":3,"190":1,"191":1,"192":1,"194":1,"195":5,"197":2,"198":1,"200":2,"201":1,"206":4,"207":2,"210":3,"212":1,"213":1,"214":3,"216":1,"217":4,"219":1,"220":2,"222":1,"225":3,"226":1,"227":4,"229":2,"230":1,"231":2,"232":1,"234":1,"236":4,"237":2,"238":2,"240":1,"241":1,"242":3,"244":1,"245":4,"247":1,"248":2,"250":1,"253":3,"255":1,"256":3,"258":1,"259":1,"260":1,"261":3,"263":2,"265":2,"266":2,"270":1,"271":2,"273":1,"275":4,"276":6,"277":4,"278":4,"279":2,"284":1,"286":3,"287":3,"289":4,"290":4,"291":2,"302":2,"305":2,"306":14,"307":7,"308":1}}],["79e9716c9",{"2":{"195":1}}],["7980",{"2":{"21":1,"23":1,"35":1,"36":1,"98":1,"100":1,"257":1,"260":1,"305":1,"306":1}}],["74",{"2":{"195":2}}],["7x",{"2":{"14":1}}],["774628",{"2":{"14":1}}],["7",{"0":{"32":1},"2":{"7":1,"76":1,"160":1,"229":1,"270":9}}],["h",{"2":{"172":1}}],["hub",{"2":{"126":1}}],["hundred",{"2":{"10":1}}],["hours",{"2":{"160":1,"287":1}}],["honest",{"2":{"152":1}}],["hole",{"2":{"127":1}}],["host",{"2":{"112":1,"177":1,"289":1}}],["hopefully",{"2":{"77":1}}],["hood",{"2":{"67":2,"71":2}}],["home",{"2":{"57":1,"278":1}}],["however",{"2":{"100":1,"133":1,"158":2}}],["how",{"0":{"16":1,"19":1,"20":1,"25":1,"59":1,"76":1,"77":1,"79":1,"88":1,"95":1,"123":1},"1":{"21":1,"22":1,"23":1,"24":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"78":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"96":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"124":1,"125":1,"126":1},"2":{"7":1,"16":3,"18":1,"47":1,"50":1,"51":1,"60":2,"76":1,"77":6,"79":1,"88":1,"96":1,"97":1,"105":1,"116":1,"125":1,"151":1,"163":5,"185":1,"192":2,"196":1,"200":1,"201":1,"207":1,"214":1,"225":1,"231":1,"242":1,"253":1,"260":1,"271":1,"284":1,"285":1,"290":1,"296":1,"299":1,"306":1}}],["http",{"2":{"23":1,"35":1,"36":1,"57":1,"70":2,"100":2,"101":1,"144":2,"177":1,"182":3,"206":2,"208":2,"209":1,"210":6,"219":1,"220":3,"229":1,"230":1,"247":1,"248":3,"260":2,"306":1}}],["https",{"2":{"21":1,"55":1,"63":2,"65":1,"66":1,"69":1,"97":1,"98":1,"99":1,"101":2,"110":1,"160":7,"167":1,"168":1,"177":1,"189":3,"194":1,"195":1,"197":1,"198":1,"200":1,"203":1,"214":1,"227":1,"228":1,"229":1,"236":1,"242":1,"256":1,"257":1,"258":1,"264":1,"267":1,"268":1,"272":1,"279":1,"282":1,"289":1,"305":1}}],["hints",{"2":{"287":1}}],["hire",{"2":{"45":1}}],["history",{"0":{"215":1,"235":1,"243":1},"2":{"176":1}}],["his",{"2":{"14":1}}],["highlight",{"2":{"287":3}}],["high",{"2":{"8":1,"18":1,"59":1,"60":1,"108":1,"122":2,"133":1,"261":1}}],["happen",{"2":{"291":1}}],["happened",{"2":{"220":1,"248":1}}],["happy",{"2":{"133":1}}],["halt",{"2":{"158":1}}],["handy",{"2":{"200":1,"214":1,"242":1}}],["handful",{"2":{"110":1,"181":1}}],["handshake",{"2":{"72":5}}],["handles",{"2":{"222":1,"250":1,"300":1}}],["handled",{"2":{"142":1}}],["handle",{"2":{"45":2,"99":1,"296":1}}],["handlers",{"2":{"219":1,"247":1}}],["handler",{"2":{"9":1}}],["handling",{"0":{"47":1},"2":{"40":1,"295":1}}],["had",{"2":{"16":1}}],["hasn",{"2":{"302":2}}],["hashing",{"2":{"307":1}}],["hash=",{"2":{"270":1,"283":1}}],["hash=ac959f089c21dc617275e0ab35e77dc3839c9597ecfdecdad6c924ec49b1eb07",{"2":{"270":1}}],["hash=0x5207a1ff35540dafe70565d3a95ed07f6c9b1ed9114f93c6c47ee0a1c0d4cc2e",{"2":{"270":1}}],["hash=0x314b131b1d4117445091b25240eaf420cdbdcf9f653eabd1d95aa0dab3cd1359",{"2":{"270":1}}],["hash=1d7e98aec3085b615c7c71659768fa42e774a87ab5981597e99794d240fb3db5",{"2":{"174":1}}],["hash=$",{"2":{"102":1,"206":2}}],["hash=235d3710d61f347dbbbdd6fd63aa7687842d1ef9cb475c712856d7da32f82f09",{"2":{"100":2,"260":2}}],["hash",{"0":{"174":1},"2":{"72":4,"74":1,"75":1,"102":1,"114":1,"160":14,"174":3,"175":2,"206":3,"207":1,"208":2,"261":1,"273":1,"282":1,"301":3,"302":5,"306":2,"307":1}}],["has",{"2":{"14":2,"16":1,"59":1,"60":1,"67":2,"71":1,"74":1,"75":1,"120":2,"125":1,"138":1,"158":1,"178":1,"181":1,"182":1,"210":1,"220":1,"222":1,"248":1,"250":1,"258":1,"264":1,"271":1,"300":1,"301":2,"306":2}}],["having",{"2":{"7":1,"118":1}}],["haven",{"2":{"90":1,"100":1}}],["have",{"2":{"4":1,"7":1,"8":2,"9":1,"12":1,"19":1,"58":1,"90":1,"92":1,"108":1,"112":1,"113":1,"116":1,"117":1,"122":1,"140":1,"161":1,"163":2,"177":1,"178":1,"179":1,"184":1,"186":1,"197":1,"200":2,"207":1,"210":1,"214":1,"216":1,"226":1,"227":2,"236":1,"238":1,"242":1,"244":1,"256":1,"260":1,"265":1,"270":1,"276":1,"286":1,"287":3,"301":1,"302":1,"305":1,"306":1}}],["hacks",{"2":{"7":1,"8":1}}],["hardhat",{"2":{"290":1}}],["hardcoded",{"2":{"101":1}}],["hard",{"2":{"7":1,"8":1}}],["hex",{"2":{"177":1,"189":1,"214":1,"236":1,"242":1,"274":1,"278":1,"301":3,"302":4}}],["height=$",{"2":{"189":1,"279":2}}],["height=$da",{"2":{"80":1}}],["height=12",{"2":{"270":3}}],["height=11",{"2":{"270":4}}],["height=1",{"2":{"160":1}}],["height=223",{"2":{"283":2}}],["height=22",{"2":{"100":4,"260":4}}],["height=28126",{"2":{"82":1}}],["height=5",{"2":{"56":1,"57":1}}],["height=your",{"2":{"56":1}}],["height",{"0":{"56":1,"173":1},"2":{"54":3,"56":2,"72":4,"80":4,"85":2,"87":2,"139":2,"143":1,"160":2,"173":1,"174":1,"175":2,"177":1,"189":6,"190":2,"210":1,"261":1,"279":4,"306":2}}],["health",{"2":{"144":1}}],["healthy",{"2":{"12":1}}],["head",{"2":{"93":1,"127":1,"279":1}}],["headerinch",{"2":{"143":1}}],["headers",{"2":{"135":1,"143":2,"144":1,"145":1,"148":1,"152":2,"154":1}}],["header",{"0":{"175":1},"2":{"52":1,"160":1,"175":2,"189":1,"279":3}}],["hear",{"2":{"11":1}}],["helper",{"2":{"291":1,"301":1}}],["helpers",{"0":{"44":1},"2":{"40":1,"44":1,"47":1}}],["helps",{"2":{"2":1,"286":1,"301":1,"302":1}}],["help",{"2":{"0":1,"3":1,"12":1,"39":1,"77":1,"128":1,"289":3,"300":1}}],["here",{"2":{"0":1,"5":1,"18":1,"19":1,"26":1,"35":1,"48":1,"66":1,"77":1,"97":1,"106":1,"109":1,"110":1,"133":1,"154":1,"158":1,"161":1,"179":2,"182":1,"189":1,"192":1,"195":2,"196":2,"197":1,"209":1,"256":1,"289":1,"291":1,"297":1,"299":1,"300":1,"301":1,"302":1,"303":1,"306":2,"307":3}}],["vue",{"2":{"291":2,"307":1}}],["v",{"2":{"205":2,"278":1}}],["vv",{"2":{"179":1}}],["v1beta1",{"2":{"160":2,"261":1}}],["v1",{"2":{"72":8,"264":1}}],["v2",{"2":{"69":1,"101":1,"264":1}}],["v21",{"2":{"65":1}}],["v28",{"2":{"62":1,"63":2}}],["v0",{"2":{"52":1,"63":3,"69":1,"76":1,"160":1,"187":1,"197":3,"198":1,"266":1,"278":1,"293":1}}],["vesting",{"2":{"295":1}}],["venue",{"2":{"45":1}}],["verified",{"2":{"115":1,"116":1}}],["verifierscript",{"2":{"114":3}}],["verifier",{"0":{"113":1},"1":{"114":1},"2":{"105":1,"111":10,"112":3,"114":12,"115":1}}],["verification",{"2":{"105":1}}],["verifiable",{"2":{"105":2,"116":1}}],["verifyfraudproof",{"2":{"152":1}}],["verifyproof",{"2":{"115":2}}],["verifying",{"2":{"112":1}}],["verify",{"0":{"105":1,"115":1},"2":{"8":2,"60":1,"67":2,"69":1,"71":2,"101":2,"102":1,"105":1,"113":1,"115":1,"122":2,"126":1,"135":2,"143":2,"147":2,"152":1,"282":1,"306":1}}],["very",{"2":{"44":1,"111":1}}],["version",{"2":{"42":2,"60":1,"62":2,"69":3,"72":1,"101":1,"138":1,"160":2,"167":1,"169":2,"179":1,"195":1,"264":2,"265":1,"282":3,"290":1}}],["ve",{"2":{"19":1,"77":1,"87":1,"93":1,"94":1,"101":1,"103":1,"116":1,"180":1,"182":1,"191":1,"212":1,"225":1,"231":1,"232":1,"240":1,"253":1,"263":1,"308":1}}],["visiting",{"2":{"117":1,"277":1}}],["view",{"2":{"115":1,"160":1,"179":2,"190":1,"200":1,"201":1,"214":1,"216":1,"236":2,"242":1,"244":1,"280":1}}],["vital",{"2":{"101":2}}],["vitepress",{"2":{"1":1}}],["virtual",{"2":{"10":1,"124":1,"264":1}}],["viable",{"2":{"14":1}}],["via",{"2":{"8":2,"9":2,"57":1,"128":1,"140":1,"142":1,"151":1,"227":1,"307":1}}],["vm",{"2":{"7":2,"114":2,"180":2,"197":1}}],["varying",{"2":{"295":1}}],["var",{"2":{"45":1,"301":6,"302":10}}],["variable",{"2":{"57":1,"112":1,"115":1,"173":1,"174":1,"181":2,"182":1,"189":1,"195":1,"207":1,"222":1,"250":1}}],["variables",{"0":{"26":1},"2":{"26":1,"74":1,"80":2,"177":1,"206":3}}],["variant",{"2":{"44":1}}],["variety",{"2":{"5":1}}],["valuable",{"2":{"121":1}}],["values",{"2":{"299":1}}],["value",{"2":{"4":1,"44":1,"70":2,"101":2,"110":1,"179":9,"208":2,"276":1,"300":1,"302":1,"306":1}}],["val",{"2":{"100":1,"260":1,"270":1,"283":1}}],["valid",{"2":{"158":2}}],["validating",{"2":{"294":1}}],["validation",{"0":{"156":1}}],["validate",{"2":{"158":1}}],["validators",{"2":{"8":2,"34":1,"121":2,"160":2}}],["validator",{"0":{"29":1},"2":{"7":1,"8":1,"10":1,"29":1,"34":2,"37":1,"121":1,"122":1,"160":1,"283":3}}],["validity",{"0":{"150":1,"153":1},"1":{"151":1,"152":1,"153":1},"2":{"10":1,"132":1,"147":1,"148":1,"151":1,"153":1,"158":1}}],["e2e",{"2":{"279":1}}],["eyjbbgxvdyi6wyjwdwjsawmilcjyzwfkiiwid3jpdguixx0",{"2":{"189":1}}],["eyjhbgcioijiuzi1niisinr5cci6ikpxvcj9",{"2":{"189":1}}],["eye",{"2":{"68":1}}],["emit",{"2":{"179":3}}],["empty",{"2":{"43":2,"70":1,"76":1,"220":1,"221":1,"222":1,"248":1,"249":1,"250":1,"301":2,"303":1}}],["empower",{"2":{"8":1,"118":1}}],["efficient",{"2":{"163":1}}],["effect",{"2":{"121":1}}],["effectivegasprice",{"2":{"115":1}}],["effectively",{"2":{"77":1}}],["e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",{"2":{"160":4}}],["etc",{"2":{"135":1}}],["eth",{"2":{"114":1,"182":1,"273":1,"276":1}}],["ethermintd",{"2":{"182":1}}],["ethermint",{"0":{"177":1,"182":1},"1":{"178":1,"179":1,"180":1,"181":1,"182":1},"2":{"17":1,"177":5,"178":3,"182":4}}],["ethereum",{"2":{"7":2,"8":1,"14":1,"264":1,"276":1}}],["escrow",{"2":{"301":1}}],["estimate",{"2":{"210":1}}],["establish",{"2":{"101":1,"189":1}}],["essentially",{"2":{"284":1}}],["essential",{"2":{"134":1,"139":1,"166":2}}],["e",{"2":{"132":1,"149":1,"160":1,"189":2,"278":2}}],["either",{"2":{"101":2,"180":1,"278":1}}],["educational",{"2":{"98":1,"257":1}}],["editor",{"2":{"70":1,"222":1,"250":1}}],["edit",{"2":{"63":1,"197":1}}],["errinvalidrequest",{"2":{"301":3,"302":4}}],["err",{"2":{"82":3,"197":2,"301":3,"302":6}}],["errtxinmempoolcache",{"2":{"81":2}}],["error=",{"2":{"82":3}}],["errors",{"0":{"82":1},"2":{"82":1,"99":1,"206":1,"301":5,"302":6,"306":2}}],["error",{"2":{"81":6,"85":1,"210":3,"222":5,"250":5,"301":1,"302":1,"303":1,"306":3}}],["eric",{"2":{"14":1}}],["else",{"2":{"39":1,"301":1,"302":2}}],["eliminates",{"2":{"122":1}}],["eliminate",{"2":{"10":1}}],["equivalent",{"2":{"222":1,"250":1}}],["equality",{"2":{"179":1}}],["eq",{"2":{"39":1,"45":1}}],["ecb9851af",{"2":{"195":1}}],["economic",{"2":{"122":1}}],["ecosystem",{"2":{"7":1,"14":1,"192":1}}],["echo",{"2":{"35":1,"80":4,"101":1,"167":2,"172":2,"189":2,"206":2,"208":1,"210":1}}],["evidence",{"2":{"160":3}}],["evm",{"0":{"17":1,"107":1,"264":1,"269":1,"277":1,"280":1},"1":{"265":1,"266":1,"267":1,"268":1,"269":1,"270":1,"271":1,"272":1,"273":1,"274":1,"275":1,"276":1,"277":1,"278":2,"279":2,"280":2},"2":{"12":1,"13":1,"17":2,"106":1,"107":2,"113":1,"114":3,"115":1,"128":1,"163":1,"177":1,"264":4,"265":1,"266":1,"270":3,"272":1,"273":2,"290":1}}],["ever",{"2":{"10":1,"14":1}}],["everyone",{"2":{"301":1}}],["everything",{"2":{"290":1}}],["everyday",{"2":{"122":1}}],["everybody",{"2":{"39":1}}],["every",{"2":{"2":1,"94":1,"120":1,"160":1,"172":3,"287":2,"302":1,"307":1}}],["eventual",{"2":{"149":2}}],["eventually",{"2":{"59":1}}],["eventbus",{"2":{"100":1,"260":1}}],["events",{"2":{"94":2,"100":1,"208":1,"210":1,"260":1,"270":1,"306":2}}],["event",{"2":{"72":1,"229":1}}],["even",{"2":{"10":1,"19":1,"122":1,"123":1,"306":1}}],["early",{"2":{"12":1,"13":1,"15":1,"18":1,"101":2}}],["each",{"2":{"7":1,"44":1,"68":2,"71":2,"139":1,"189":1,"219":1,"247":1,"291":1,"294":2,"296":1,"299":1,"300":2,"302":1}}],["easiest",{"2":{"281":1}}],["easier",{"2":{"77":1,"80":1,"122":1}}],["easily",{"2":{"14":1,"117":1,"133":2}}],["ease",{"2":{"7":1}}],["easy",{"2":{"7":1,"18":1,"39":1,"118":1,"122":1,"164":2,"290":1,"294":1}}],["exercise",{"2":{"175":1}}],["exec",{"2":{"57":1,"279":1}}],["executing",{"2":{"94":1,"96":1,"149":1,"255":1}}],["execution",{"0":{"124":1},"2":{"7":1,"8":1,"12":1,"15":2,"17":1,"18":1,"115":1,"120":1,"122":1,"126":1,"127":1,"163":2,"164":2,"283":1}}],["executed",{"2":{"100":1,"122":1,"260":1,"270":1}}],["executefns",{"2":{"44":2,"47":1}}],["execute",{"2":{"43":1,"44":1,"47":1,"97":1,"132":1,"135":1,"152":1,"166":1,"210":3,"283":1}}],["executemsgfns",{"2":{"44":1}}],["executemsg",{"2":{"43":2,"44":3,"47":2}}],["exist",{"2":{"294":1}}],["exists",{"2":{"81":2,"302":1}}],["existing",{"0":{"28":1},"2":{"8":1,"19":2,"28":1,"59":1,"76":2,"124":1,"125":1,"195":1}}],["extended",{"2":{"307":1}}],["extending",{"0":{"307":1}}],["extend",{"2":{"285":1,"287":1,"306":1}}],["extension",{"2":{"70":2,"101":2,"161":1,"210":1,"226":1,"261":2,"306":2}}],["external",{"2":{"8":1,"276":1}}],["extra",{"2":{"70":2,"101":2}}],["exotic",{"2":{"67":2,"71":2}}],["examples",{"0":{"50":1},"2":{"40":1,"50":2,"196":1,"307":1}}],["example",{"0":{"82":1},"2":{"19":2,"26":1,"39":1,"41":1,"44":1,"46":1,"50":2,"51":1,"76":1,"80":2,"81":2,"94":1,"114":2,"140":1,"160":3,"178":1,"179":1,"189":1,"236":1,"306":1,"307":1}}],["exposing",{"2":{"219":1,"247":1}}],["exposes",{"2":{"118":1,"295":1}}],["export",{"2":{"43":1,"44":1,"99":1,"112":1,"114":2,"167":2,"182":2,"261":2,"273":3}}],["explain",{"2":{"302":1}}],["explaining",{"2":{"116":1}}],["exploring",{"2":{"192":1,"231":1}}],["exploration",{"2":{"96":1}}],["explorer",{"2":{"93":1,"115":1,"160":2,"216":1,"244":1,"280":1}}],["explorers",{"2":{"9":1,"190":1}}],["explore",{"2":{"50":1,"78":1,"88":1,"89":1,"132":1,"163":1,"284":1,"308":1}}],["expecting",{"2":{"264":1}}],["expected",{"2":{"210":1,"212":1,"232":1,"240":1,"303":1}}],["experienced",{"2":{"231":1,"286":1}}],["experience",{"2":{"206":1}}],["experimentation",{"2":{"118":1,"125":1}}],["experiment",{"2":{"19":1,"124":1}}],["expertise",{"2":{"121":1}}],["expensive",{"2":{"8":1,"116":1}}],["expand",{"2":{"12":1}}],["excessively",{"2":{"8":1}}],["exciting",{"2":{"6":1,"127":1}}],["enter",{"2":{"291":1}}],["entries",{"2":{"283":1}}],["entry",{"2":{"121":1,"302":5}}],["entrypoint",{"0":{"27":1},"2":{"27":2,"188":1,"259":2,"279":1}}],["enhanced",{"2":{"138":1}}],["enjoy",{"2":{"122":1}}],["encodetostring",{"2":{"301":2,"302":3}}],["encoded",{"2":{"44":1,"274":1}}],["encoding",{"2":{"301":1,"302":1}}],["encourage",{"2":{"291":1}}],["encountered",{"2":{"122":1}}],["encounter",{"2":{"81":1}}],["env`",{"2":{"45":1}}],["env",{"2":{"45":2,"195":1}}],["environments",{"2":{"12":1,"18":1,"115":1,"122":1,"163":1,"164":2}}],["environment",{"0":{"124":1,"178":1,"199":1},"1":{"200":1,"201":1},"2":{"7":1,"24":1,"39":1,"63":1,"112":1,"114":1,"115":1,"120":1,"163":1,"178":1,"181":2,"195":1,"207":1,"222":1,"230":1,"250":1,"287":1}}],["enum",{"2":{"44":2}}],["endpoint",{"2":{"92":1,"160":1,"181":1,"189":1,"220":1,"248":1}}],["end",{"2":{"39":1,"72":1,"96":1,"116":1,"163":1,"255":1,"270":1,"287":1,"307":1}}],["ensuring",{"0":{"27":1},"2":{"23":1,"105":1,"307":1}}],["ensures",{"2":{"59":1,"302":1}}],["ensure",{"2":{"2":1,"27":2,"71":1,"99":1,"184":1,"227":1,"236":1,"279":1,"301":2,"302":1,"306":1}}],["enshrine",{"2":{"9":1}}],["enshrined",{"2":{"7":2,"8":2}}],["enable",{"2":{"101":1,"105":1,"139":1,"152":1}}],["enabled",{"2":{"14":1,"96":1,"138":1,"152":1,"229":1}}],["enables",{"2":{"7":1,"9":1,"122":1,"145":1}}],["enabling",{"2":{"7":1,"12":1,"44":1,"164":1}}],["enforce",{"2":{"7":1}}],["pwd",{"2":{"205":4}}],["pkg",{"2":{"166":1}}],["py",{"2":{"111":1,"112":2}}],["python",{"0":{"108":1},"2":{"106":2,"108":3,"111":1}}],["p",{"2":{"63":4,"101":1,"266":5,"278":3}}],["pseudo",{"2":{"295":1}}],["ps",{"2":{"57":1,"279":1}}],["person",{"2":{"299":1,"302":1}}],["perspective",{"2":{"184":1,"261":1}}],["per",{"2":{"143":2,"287":1,"301":2,"302":1}}],["perfect",{"2":{"121":1}}],["performs",{"2":{"222":1,"250":1}}],["perform",{"2":{"57":1,"181":1,"182":1}}],["periods",{"2":{"59":1}}],["peers",{"2":{"145":1}}],["peer",{"2":{"52":2,"145":1}}],["pessimistic",{"0":{"151":1},"2":{"10":1,"132":1,"151":3}}],["pip",{"2":{"108":1}}],["pipe",{"2":{"45":1}}],["piece",{"2":{"14":1,"300":1}}],["p2p",{"0":{"57":1,"145":1},"2":{"35":1,"36":1,"52":2,"54":1,"56":2,"57":9,"80":1,"83":1,"85":1,"87":1,"100":3,"145":2,"152":2,"154":1,"158":1,"189":2,"260":3,"277":1,"278":2}}],["plaintext",{"2":{"307":1}}],["planned",{"2":{"149":3,"153":1}}],["plans",{"2":{"149":1}}],["placed",{"2":{"122":1,"172":2}}],["place",{"2":{"68":1,"158":1,"205":1,"289":1}}],["platform",{"2":{"63":1,"88":1,"126":1,"192":1,"205":1,"266":1}}],["play",{"2":{"18":1}}],["plus",{"2":{"46":1,"48":1,"120":1}}],["plugin",{"2":{"167":1}}],["pluggable",{"2":{"149":1}}],["plugged",{"2":{"139":1}}],["plug",{"2":{"15":1}}],["please",{"2":{"2":1,"4":1,"57":1,"78":1,"109":1,"132":1,"259":1}}],["panic",{"2":{"197":1,"302":1}}],["paid",{"2":{"114":1,"273":1}}],["pagination",{"2":{"74":1,"75":1,"101":1,"208":1,"210":2,"262":2}}],["page",{"2":{"39":1,"117":1,"135":1,"230":1}}],["packets",{"0":{"68":1,"73":1},"1":{"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1}}],["packages",{"2":{"48":2,"166":1}}],["package",{"2":{"16":3,"47":1,"48":2,"108":1,"140":1,"146":1,"291":1}}],["parameter",{"2":{"297":1}}],["parameters",{"2":{"220":2,"221":1,"248":2,"249":1}}],["params",{"2":{"220":2,"248":2}}],["paradigm",{"2":{"168":1,"268":1}}],["paragraph",{"2":{"46":1}}],["particular",{"2":{"295":1}}],["parts",{"2":{"160":3,"236":1}}],["part",{"0":{"211":1,"232":1,"239":1},"1":{"212":1,"213":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":1,"220":1,"221":1,"222":1,"223":1,"224":1,"225":1,"233":1,"234":1,"235":1,"236":1,"237":1,"238":1,"240":1,"241":1,"242":1,"243":1,"244":1,"245":1,"246":1,"247":1,"248":1,"249":1,"250":1,"251":1,"252":1,"253":1},"2":{"53":1,"212":2,"232":3,"240":2,"287":1,"290":1}}],["passes",{"2":{"296":2}}],["passed",{"2":{"179":1,"290":1,"301":1}}],["pass",{"2":{"22":1,"177":1,"179":3}}],["passing",{"2":{"14":2,"68":1,"297":1}}],["past",{"2":{"8":1,"9":1}}],["paying",{"2":{"121":1}}],["payer",{"2":{"72":4,"261":1,"306":1}}],["payload",{"2":{"14":1}}],["pay",{"2":{"10":1}}],["paves",{"2":{"8":1}}],["path=",{"2":{"283":2}}],["path=$path",{"2":{"99":1,"167":2}}],["paths",{"2":{"68":2,"70":1,"72":1,"101":1}}],["path",{"2":{"7":1,"8":1,"43":2,"45":1,"48":2,"72":6,"99":1,"101":1,"167":1,"168":1,"195":1}}],["pops",{"2":{"189":2,"278":1,"279":1}}],["popular",{"2":{"9":1,"285":1}}],["polaris",{"0":{"107":1,"264":1,"269":1,"277":1,"279":1},"1":{"265":1,"266":1,"267":1,"268":1,"269":1,"270":1,"271":1,"272":1,"273":1,"274":1,"275":1,"276":1,"277":1,"278":2,"279":2,"280":2},"2":{"106":1,"107":2,"113":1,"114":3,"264":5,"265":1,"266":1,"267":3,"269":1,"270":1,"271":1,"272":3,"273":1,"277":1,"279":3,"280":2}}],["points",{"2":{"287":1}}],["point",{"2":{"66":1,"279":1}}],["power",{"2":{"34":1,"289":1}}],["powerful",{"2":{"7":1}}],["portion",{"2":{"178":1,"236":1,"277":1}}],["portal",{"0":{"273":1},"2":{"113":1,"114":4,"271":2,"272":4,"275":6,"276":1}}],["port=icahost",{"2":{"57":1}}],["port",{"2":{"21":1,"57":3,"66":3,"72":10,"98":1,"101":2,"160":1,"181":1,"210":1,"257":1,"305":1}}],["pool",{"2":{"14":1}}],["potential",{"2":{"12":1,"121":1}}],["position",{"2":{"287":3}}],["posted",{"2":{"122":1,"152":1}}],["post",{"2":{"14":1,"20":1,"24":1,"81":2,"116":1,"135":1,"163":1,"177":1,"225":1,"253":1,"276":1,"277":2}}],["posting",{"0":{"14":1},"2":{"14":1,"81":1,"96":1,"100":1,"122":1,"184":1,"185":1,"190":1,"232":1,"255":1,"260":1,"280":1}}],["posts",{"0":{"16":1},"2":{"3":1,"103":1,"152":1,"191":1,"236":1,"263":1}}],["possibly",{"2":{"185":1}}],["possible",{"2":{"12":1,"13":1,"18":1,"73":1,"142":2,"164":3,"205":1}}],["possibility",{"2":{"125":1,"158":1}}],["possibilities",{"2":{"12":1,"118":1,"163":1,"164":1}}],["put",{"2":{"172":1,"259":1}}],["putting",{"2":{"121":1,"172":1}}],["purpose",{"2":{"291":1}}],["purposes",{"2":{"98":1,"217":1,"245":1,"257":1}}],["purchase",{"2":{"209":2}}],["purchasing",{"2":{"192":1}}],["pure",{"2":{"149":2}}],["pubsub",{"2":{"100":1,"260":1}}],["pubkey",{"2":{"34":1,"261":6}}],["pub",{"2":{"34":3,"43":3,"44":4,"45":1,"160":1}}],["publishing",{"2":{"13":1,"14":1,"100":1,"164":1,"260":1,"270":1,"283":1}}],["published",{"2":{"12":1}}],["publicnode",{"2":{"101":1}}],["public",{"2":{"3":1,"14":1,"92":1,"114":2,"179":7,"180":2}}],["pull",{"2":{"2":2,"197":1,"203":1,"302":1}}],["push",{"2":{"2":2,"152":1}}],["prune",{"2":{"270":2}}],["practical",{"2":{"255":1}}],["pragma",{"2":{"114":1,"179":2,"180":1}}],["prhw8rohdq==",{"2":{"160":1}}],["primary",{"2":{"154":1}}],["print",{"2":{"111":2}}],["printed",{"2":{"54":1}}],["priority",{"2":{"142":1}}],["prior",{"2":{"96":1,"255":1,"307":1}}],["prices",{"2":{"70":2,"101":2,"102":1,"190":1,"206":2,"209":1,"210":1}}],["prices=",{"2":{"35":1,"36":1,"100":1,"190":2}}],["price=0",{"2":{"59":2}}],["price",{"0":{"59":1},"2":{"59":11,"67":2,"71":2,"77":1,"190":1,"209":4}}],["privileged",{"2":{"149":1}}],["privatekey",{"2":{"271":1}}],["private",{"2":{"67":2,"114":4,"115":2,"179":1,"181":6,"182":3,"271":1,"273":4,"274":1,"276":3,"283":1}}],["priv",{"2":{"34":2,"283":2}}],["press",{"2":{"172":1}}],["presents",{"2":{"121":1}}],["present",{"0":{"27":1},"2":{"27":1,"37":1}}],["preserve",{"2":{"10":1}}],["preparing",{"2":{"270":1}}],["prepared",{"2":{"189":1}}],["prepareproposal",{"2":{"142":1}}],["prepare",{"2":{"99":1,"258":1}}],["prepend",{"2":{"112":1}}],["prevents",{"2":{"76":1}}],["previous",{"0":{"215":1,"235":1,"243":1},"2":{"59":1,"206":1,"207":1}}],["prefer",{"2":{"70":1}}],["prefix",{"2":{"63":1,"70":2,"101":2,"160":1,"187":1}}],["pre",{"0":{"61":1,"286":1},"1":{"62":1},"2":{"109":1,"124":1,"145":1}}],["prerequisites",{"0":{"53":1,"90":1,"106":1,"165":1,"186":1,"227":1,"265":1},"1":{"91":1,"92":1,"93":1,"94":1,"107":1,"108":1}}],["pretty",{"2":{"45":1,"290":1}}],["prelude",{"2":{"43":1,"45":1}}],["premature",{"2":{"8":1}}],["prematurely",{"2":{"7":1,"8":1}}],["prompted",{"2":{"261":2}}],["prompt",{"2":{"230":1}}],["prominent",{"2":{"140":1}}],["proposer",{"2":{"160":1}}],["property",{"2":{"149":1}}],["propagate",{"2":{"135":1}}],["progress",{"0":{"148":1,"152":1},"2":{"149":1,"152":1,"154":1,"160":1}}],["programmatically",{"2":{"139":1}}],["programming",{"2":{"97":1}}],["problem",{"2":{"138":1}}],["problems",{"0":{"119":1},"1":{"120":1,"121":1},"2":{"121":1}}],["prohibitively",{"2":{"116":1}}],["proved",{"2":{"112":1}}],["prove",{"0":{"112":1},"2":{"111":1,"112":2}}],["proving",{"0":{"109":1},"1":{"110":1,"111":1,"112":1},"2":{"112":1}}],["providing",{"2":{"96":1}}],["provided",{"2":{"97":1,"189":1,"192":1,"289":1}}],["provider",{"2":{"72":4}}],["provide",{"2":{"14":1,"125":1,"126":1,"179":1,"189":1,"283":1}}],["provides",{"2":{"7":2,"16":1,"20":1,"37":1,"44":1,"127":1,"205":1,"255":1,"264":1,"289":1}}],["proof+public",{"2":{"111":2,"112":1}}],["proof",{"0":{"115":1,"158":1},"2":{"105":2,"111":7,"112":2,"113":1,"115":3,"122":1,"152":2}}],["proofs",{"0":{"152":1,"153":1},"2":{"7":1,"8":1,"60":2,"63":1,"105":1,"112":1,"122":2,"126":1,"127":1,"132":1,"135":2,"138":1,"145":1,"147":2,"148":2,"152":5,"154":1,"158":1,"197":1}}],["proceeding",{"2":{"99":1,"184":1,"286":1,"306":1}}],["processed",{"2":{"158":1}}],["processing",{"0":{"156":1,"157":1},"2":{"134":1}}],["processor",{"2":{"72":1,"294":1}}],["process",{"2":{"7":1,"25":1,"96":1,"100":2,"105":1,"255":1,"260":2,"290":1,"296":1}}],["profile",{"2":{"92":1,"167":2}}],["project",{"2":{"14":1,"16":1,"178":1,"187":2,"215":1,"235":1,"243":1,"290":1,"291":2,"293":1,"295":1}}],["proud",{"2":{"12":1}}],["producing",{"2":{"57":1}}],["producers",{"2":{"149":1}}],["produce",{"2":{"10":1,"147":1,"149":1}}],["products",{"2":{"121":1,"122":1}}],["production",{"0":{"19":1},"2":{"9":1,"18":1,"60":1,"77":1,"112":1,"143":1,"306":2}}],["product",{"2":{"8":1}}],["protobuf",{"0":{"303":1}}],["protomessage",{"2":{"221":1,"249":1}}],["protoservice",{"2":{"220":1,"248":1}}],["proto",{"2":{"187":1,"195":1,"219":2,"220":4,"222":1,"247":2,"248":4,"250":1,"291":1,"303":2}}],["protocols",{"2":{"144":1}}],["protocol",{"2":{"7":1,"9":1,"60":1,"68":1,"219":2,"247":2,"291":1}}],["protect",{"2":{"7":1,"8":1}}],["pr",{"2":{"2":1}}],["nice",{"2":{"307":1}}],["nil",{"2":{"197":1,"222":7,"250":7,"301":6,"302":8}}],["npm",{"2":{"166":1,"167":3}}],["ncdu",{"2":{"166":1}}],["n",{"2":{"111":2,"189":4,"261":1,"306":1}}],["num",{"2":{"100":2,"260":2,"270":3,"283":2}}],["number",{"2":{"44":1,"139":1,"160":1,"282":1}}],["null",{"2":{"70":2,"74":1,"101":2,"160":2,"208":1,"210":5,"261":1,"262":2,"306":1}}],["nfts",{"2":{"14":2}}],["nft",{"2":{"14":2}}],["nodeversion",{"2":{"227":1}}],["nodejs",{"2":{"167":3}}],["node",{"0":{"51":1,"58":1,"141":1,"146":1,"147":1,"148":1,"149":1,"185":1,"190":1,"198":1,"213":1,"234":1,"241":1,"277":1,"278":1,"283":1,"305":1},"1":{"52":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"142":1,"143":1,"144":1,"145":1,"147":1,"148":1,"149":1,"278":1,"279":1,"280":1},"2":{"19":1,"21":3,"22":1,"23":1,"24":1,"35":1,"51":2,"52":1,"54":1,"55":2,"57":13,"58":3,"59":2,"60":1,"71":1,"74":2,"75":3,"77":1,"81":3,"82":1,"83":3,"84":1,"94":1,"98":2,"100":4,"118":1,"132":1,"140":2,"143":1,"144":2,"145":1,"146":1,"152":1,"154":1,"158":4,"160":1,"163":1,"167":1,"169":1,"184":1,"185":3,"189":2,"190":1,"198":1,"206":2,"208":2,"209":1,"210":6,"213":4,"225":2,"227":1,"234":5,"236":1,"237":1,"238":2,"241":5,"253":2,"257":2,"260":6,"277":3,"278":8,"280":1,"281":1,"283":5,"284":1,"305":3}}],["nodes",{"0":{"151":1},"2":{"8":1,"57":1,"100":1,"122":3,"127":1,"132":1,"135":2,"139":1,"143":5,"145":3,"146":1,"147":1,"148":4,"149":2,"151":1,"152":10,"154":1,"158":4,"166":1,"260":1}}],["none",{"2":{"39":2,"45":2}}],["non",{"2":{"14":1,"261":1,"306":1}}],["nor",{"2":{"10":1}}],["no",{"2":{"10":1,"41":1,"57":1,"63":1,"96":1,"100":1,"138":1,"139":1,"149":4,"184":1,"197":1,"209":1,"255":1,"260":1,"290":2,"299":2,"301":1,"302":1}}],["notably",{"2":{"295":1}}],["notifies",{"2":{"94":1}}],["notice",{"2":{"35":1,"72":1,"260":1,"290":1}}],["note",{"2":{"39":2,"43":1,"44":1,"57":1,"66":1,"100":1,"101":1,"114":1,"115":1,"138":1,"143":1,"152":1,"182":1,"195":1,"306":2}}],["not",{"2":{"8":2,"12":1,"18":3,"27":1,"43":3,"74":1,"75":1,"99":1,"105":1,"124":1,"132":1,"152":1,"153":1,"158":1,"177":1,"220":1,"221":1,"248":1,"249":1,"256":1,"259":1,"264":1,"278":1,"286":1,"301":2,"306":2,"307":1}}],["now",{"2":{"7":1,"12":1,"13":1,"14":1,"15":1,"19":1,"45":2,"49":1,"55":1,"57":1,"58":2,"63":1,"73":1,"93":1,"94":1,"98":1,"100":1,"112":1,"115":1,"166":1,"172":1,"175":2,"177":1,"180":2,"181":1,"182":2,"187":1,"189":3,"190":2,"191":1,"195":1,"197":1,"199":1,"206":1,"208":2,"210":2,"216":1,"219":1,"229":1,"231":1,"244":1,"247":1,"257":1,"260":2,"261":3,"270":1,"272":1,"275":2,"276":1,"280":1,"284":1,"287":1,"289":1,"290":1,"291":1,"293":1,"297":1,"300":1,"301":1,"302":1,"305":1,"306":4,"308":1}}],["net",{"2":{"189":1}}],["network=mocha",{"2":{"278":2}}],["networks",{"2":{"39":1,"45":1,"118":1,"145":1,"167":1,"185":1,"308":1}}],["network",{"0":{"20":1,"21":1,"22":1,"98":1,"170":1,"176":1,"257":1},"1":{"21":1,"22":1,"23":1,"24":1,"171":1,"172":1,"173":1,"174":1,"175":1,"176":1},"2":{"10":1,"17":1,"20":1,"21":1,"22":1,"24":1,"37":1,"45":2,"51":1,"52":1,"59":1,"83":2,"92":2,"96":1,"98":2,"99":1,"100":1,"103":1,"105":1,"117":1,"121":5,"122":2,"133":2,"144":1,"145":1,"152":2,"154":1,"158":2,"170":1,"176":1,"180":1,"184":1,"189":2,"190":3,"197":1,"199":1,"200":1,"208":1,"210":1,"213":1,"234":1,"241":1,"255":1,"257":2,"258":1,"260":3,"263":1,"264":2,"277":2,"278":1,"293":2,"305":1,"306":3}}],["neural",{"2":{"105":1}}],["nextjs",{"2":{"229":1}}],["next",{"0":{"103":1,"191":1,"225":1,"231":1,"238":1,"253":1,"263":1,"308":1},"2":{"56":1,"57":1,"66":1,"72":1,"74":1,"101":1,"106":1,"112":1,"113":1,"114":1,"127":1,"160":1,"172":1,"178":1,"179":2,"181":2,"187":1,"208":1,"210":3,"213":1,"225":1,"228":1,"253":1,"262":2,"273":1,"293":1,"298":1,"301":1,"302":2,"303":1,"306":2}}],["neck",{"2":{"45":1}}],["necessary",{"2":{"26":1,"39":1,"166":1,"293":1}}],["needing",{"2":{"264":1}}],["needs",{"0":{"10":1},"2":{"124":1,"227":1}}],["needed",{"2":{"7":1,"8":1,"10":2,"57":1,"135":1,"138":1,"152":1,"163":1,"189":1}}],["need",{"2":{"7":1,"8":3,"10":1,"16":1,"19":1,"22":1,"39":1,"42":1,"43":2,"47":2,"53":1,"54":1,"63":2,"66":1,"72":1,"80":2,"81":3,"83":1,"85":1,"90":2,"99":1,"115":1,"122":1,"132":1,"138":1,"139":1,"167":1,"182":1,"185":1,"187":1,"194":1,"195":2,"198":1,"199":1,"215":1,"219":1,"222":1,"227":1,"235":1,"236":1,"243":1,"247":1,"250":1,"265":1,"266":1,"275":2,"276":2,"277":4,"278":1,"290":1,"292":1,"303":2,"306":1}}],["newguess",{"2":{"302":2}}],["newint64coin",{"2":{"301":1,"302":1}}],["newly",{"2":{"145":1,"189":1,"214":1,"236":1,"242":1,"301":2}}],["new",{"0":{"216":1,"244":1},"2":{"2":2,"8":1,"12":1,"13":1,"16":1,"27":1,"43":2,"45":2,"48":2,"68":2,"72":5,"81":1,"99":1,"114":5,"118":3,"121":3,"122":2,"127":1,"139":1,"140":1,"152":1,"158":1,"163":1,"164":1,"171":1,"172":3,"178":1,"179":1,"180":1,"182":1,"187":1,"203":1,"220":2,"248":2,"287":1,"289":1,"290":3,"302":7}}],["nameservice",{"2":{"192":2,"203":3,"204":1,"205":2,"206":3,"209":1,"210":1}}],["namespaces",{"2":{"189":1,"214":1,"236":1,"242":1,"278":1}}],["namespace=000000506f6c61726973",{"2":{"278":1}}],["namespace=00000000000000000000000000000000000000000008e5f679bf7116cb",{"2":{"189":1}}],["namespace=$",{"2":{"177":1}}],["namespace=$namespace",{"2":{"80":1}}],["namespace",{"2":{"54":1,"56":1,"80":2,"85":1,"87":1,"145":1,"160":1,"177":1,"189":3,"190":3,"214":1,"216":1,"236":3,"242":1,"244":1,"278":1,"280":2}}],["name",{"2":{"29":1,"30":1,"31":1,"32":1,"34":1,"66":2,"72":8,"110":1,"171":1,"182":2,"209":2,"210":8,"220":1,"248":1,"261":3}}],["name=ports",{"2":{"57":1}}],["name=rollup",{"2":{"26":1}}],["name=validator1",{"2":{"26":1}}],["naming",{"2":{"2":1}}],["native",{"2":{"10":1,"74":1,"96":1}}],["navigate",{"2":{"5":1,"110":1,"220":1,"248":1}}],["award",{"2":{"287":1}}],["away",{"2":{"8":1}}],["awdsly+2us2vv+rbyfi60gb4",{"2":{"261":1}}],["aims",{"2":{"226":1}}],["aarch64",{"2":{"195":4,"206":1}}],["auto",{"2":{"206":2,"209":1,"210":1}}],["automatically",{"2":{"105":1}}],["authorized",{"2":{"230":1}}],["authentication",{"2":{"189":1}}],["authenticate",{"2":{"135":1,"148":1}}],["auth",{"2":{"57":6,"80":3,"85":1,"87":1,"160":2,"189":4,"190":1,"277":1,"294":1,"306":1}}],["average",{"2":{"148":1}}],["avoid",{"2":{"59":1,"66":1,"85":1,"126":1,"287":1,"306":1}}],["available",{"2":{"9":1,"158":1,"179":1}}],["availability",{"0":{"15":1,"139":1},"1":{"140":1},"2":{"8":1,"10":2,"12":2,"13":1,"14":1,"15":4,"16":5,"18":3,"20":1,"35":1,"37":1,"57":1,"96":1,"105":1,"117":1,"118":1,"122":4,"127":1,"128":1,"133":2,"135":1,"139":3,"140":1,"143":1,"149":1,"151":1,"158":1,"163":2,"164":5,"184":1,"197":1,"213":1,"234":1,"241":1,"255":1,"264":2,"278":1,"279":1,"305":2,"306":1}}],["aggregating",{"2":{"149":1}}],["aggregationloop",{"2":{"143":2}}],["aggregation",{"0":{"76":1},"2":{"77":1}}],["aggregated",{"2":{"190":1}}],["aggregate",{"2":{"135":1}}],["aggregator",{"2":{"35":1,"36":1,"76":2,"80":1,"85":1,"87":1,"100":2,"177":1,"190":1,"260":2,"306":2}}],["again",{"0":{"87":1},"2":{"44":1,"99":1,"176":1,"210":1,"223":1,"251":1,"276":1,"302":3}}],["against",{"2":{"7":1,"8":1,"59":1}}],["afterward",{"2":{"70":1}}],["after",{"0":{"81":1},"1":{"82":1,"83":1,"84":1,"85":1,"86":1,"87":1},"2":{"16":1,"39":1,"44":1,"73":1,"87":1,"94":1,"158":1,"185":1,"195":2,"234":1,"241":1,"262":1,"278":1,"290":1,"305":1,"306":4}}],["atoi",{"2":{"302":1}}],["atomic",{"2":{"149":1}}],["attributes",{"2":{"208":1,"306":1}}],["attract",{"2":{"121":1}}],["attempts",{"2":{"296":1}}],["attempt",{"2":{"143":2}}],["attempt=3",{"2":{"82":1}}],["attempt=2",{"2":{"82":1}}],["attempt=1",{"2":{"82":1}}],["at",{"2":{"14":1,"16":1,"39":2,"42":1,"70":1,"72":1,"93":1,"121":1,"138":1,"152":1,"163":1,"172":1,"178":1,"180":1,"205":1,"208":1,"261":1,"287":1,"307":1}}],["adr",{"2":{"152":1}}],["adoption",{"2":{"121":1}}],["adjustment",{"2":{"70":2,"101":2,"206":2,"209":1,"210":1}}],["adjusted",{"2":{"19":1}}],["admin",{"2":{"57":1,"209":1,"210":1}}],["advertises",{"2":{"145":1}}],["advice",{"2":{"50":1}}],["advise",{"2":{"43":1,"48":2}}],["advanced",{"0":{"131":1},"2":{"39":1}}],["advantages",{"2":{"10":1}}],["addr",{"2":{"66":1,"70":3,"101":3}}],["addresshash",{"2":{"301":1,"302":1}}],["addresses",{"0":{"93":1},"2":{"88":1,"89":1,"93":2}}],["address=0x18df82c7e422a42d47345ed86b0e935e9718ebda",{"2":{"273":1}}],["address=0x5c59c83c099f72fce832208f96a23a1e43737a14",{"2":{"114":1}}],["address=`bitcoin",{"2":{"172":1}}],["address=127",{"2":{"100":2,"260":2}}],["address=",{"2":{"57":3,"100":2,"181":1,"182":1,"260":2}}],["address",{"0":{"57":1},"2":{"22":2,"23":2,"34":3,"35":4,"36":2,"57":3,"63":1,"67":2,"74":2,"75":1,"80":1,"83":1,"85":1,"87":1,"93":1,"94":1,"100":1,"101":4,"114":4,"115":2,"160":4,"172":1,"181":5,"182":5,"185":1,"187":1,"210":5,"230":1,"260":2,"261":5,"273":2,"274":2,"275":2,"276":1,"277":1,"287":1,"299":3,"302":2,"306":2}}],["added",{"2":{"46":1,"93":1,"140":1,"220":1,"248":1,"264":1,"293":1}}],["additionally",{"2":{"122":1,"126":1}}],["additional",{"2":{"44":1,"158":1}}],["additions",{"2":{"39":1,"111":1}}],["adding",{"0":{"30":1,"31":1,"42":1},"2":{"2":1,"16":1,"40":1,"93":1,"158":1,"188":2,"259":1,"289":1}}],["add",{"0":{"93":1,"161":1,"218":1,"246":1},"1":{"219":1,"220":1,"221":1,"222":1,"223":1,"224":1,"247":1,"248":1,"249":1,"250":1,"251":1,"252":1},"2":{"16":2,"19":1,"25":1,"30":2,"31":2,"37":1,"42":3,"43":1,"44":1,"47":1,"48":4,"71":1,"76":1,"80":1,"89":1,"92":1,"99":1,"158":1,"161":2,"167":1,"172":1,"179":1,"187":2,"195":1,"231":1,"276":1,"293":2,"294":1,"302":2,"303":1}}],["apt",{"2":{"99":1,"166":3}}],["apart",{"2":{"68":1}}],["apps",{"2":{"187":1,"289":1,"293":1}}],["append",{"2":{"111":2}}],["appear",{"2":{"94":1}}],["approve",{"2":{"230":1}}],["approach",{"2":{"105":1,"255":1}}],["approximately",{"2":{"14":1}}],["app",{"0":{"226":1,"229":1,"285":1},"1":{"227":1,"228":1,"229":1,"230":1,"231":1,"286":1,"287":1,"288":1,"289":1,"290":1,"291":1,"292":1,"293":1,"294":1,"295":1,"296":1,"297":1,"298":1,"299":1,"300":1,"301":1,"302":1,"303":1,"304":1,"305":1,"306":1,"307":1,"308":1},"2":{"100":2,"160":1,"178":3,"187":2,"197":2,"227":2,"228":1,"229":1,"231":1,"258":1,"260":2,"270":2,"275":1,"283":1,"285":1,"291":3,"292":1,"293":3,"308":1}}],["apple",{"2":{"195":4}}],["apply",{"2":{"41":1,"149":1}}],["applications",{"2":{"18":1,"96":1,"122":1,"124":1,"128":1,"163":1,"197":1,"255":1,"284":1}}],["application",{"0":{"136":1},"1":{"137":1,"138":1,"139":1,"140":1},"2":{"7":3,"9":2,"96":1,"118":1,"120":2,"137":2,"138":1,"142":2,"144":1,"226":1,"230":1,"231":1,"255":1,"291":1,"294":1}}],["apis",{"2":{"144":1}}],["api",{"2":{"10":1,"70":1,"101":1,"106":1,"112":3,"140":1,"160":3,"219":1,"220":3,"247":1,"248":3}}],["achieve",{"2":{"121":1,"287":1}}],["action",{"2":{"306":1}}],["actions",{"2":{"222":1,"250":1}}],["active",{"2":{"145":1}}],["activity",{"2":{"88":1}}],["act",{"2":{"126":1}}],["actor",{"2":{"45":1}}],["accaddress",{"2":{"301":1,"302":1,"303":2}}],["accaddressfrombech32",{"2":{"301":1,"302":1}}],["accessed",{"2":{"139":1}}],["accelerated",{"2":{"112":1}}],["accepts",{"2":{"220":2,"222":1,"248":2,"250":1}}],["accepted",{"2":{"59":2}}],["accept",{"2":{"8":1,"261":1}}],["accordingly",{"2":{"57":1,"158":1}}],["accounts",{"2":{"101":2,"160":2,"181":1,"295":3}}],["account",{"0":{"31":1,"71":1,"83":1},"2":{"25":1,"31":2,"37":1,"70":2,"81":1,"83":1,"92":2,"101":3,"160":3,"190":1,"216":1,"236":2,"244":1,"261":1,"276":2,"277":1,"306":1}}],["across",{"2":{"9":1,"115":2}}],["arabica",{"2":{"128":1,"185":1,"212":1,"213":3,"214":4,"216":2,"217":1,"223":1,"234":1,"277":1}}],["arm64",{"2":{"69":1,"205":2}}],["artifacts",{"2":{"43":1,"205":1,"206":2}}],["articles",{"2":{"5":1}}],["architecture",{"2":{"105":1,"152":1,"286":1,"287":1,"291":1}}],["arch",{"2":{"43":2}}],["argjson",{"2":{"34":1}}],["argument",{"2":{"19":1}}],["args",{"2":{"19":1,"80":1}}],["around",{"2":{"14":1,"18":2,"81":2,"307":1}}],["arbitrary",{"2":{"12":1,"13":1,"14":3,"139":1,"164":2}}],["are",{"2":{"12":1,"13":1,"14":1,"16":1,"47":2,"57":2,"68":2,"71":1,"77":1,"81":2,"114":1,"121":1,"122":4,"126":1,"142":1,"143":3,"144":1,"146":1,"148":2,"149":1,"151":1,"152":2,"153":1,"154":1,"158":2,"164":1,"166":2,"176":1,"179":1,"195":1,"196":1,"197":2,"205":1,"209":1,"212":1,"219":1,"232":1,"240":1,"247":1,"264":2,"276":1,"286":1,"287":3,"290":2,"296":3,"297":1,"299":1,"301":2,"302":3,"306":2,"307":2}}],["array",{"2":{"9":1}}],["amt",{"2":{"303":1}}],["amazing",{"2":{"289":1}}],["amd",{"2":{"165":1,"167":1,"205":1,"206":1}}],["amd64",{"2":{"63":1,"167":3,"266":1}}],["among",{"2":{"158":1}}],["amount=",{"2":{"26":2}}],["amount",{"0":{"32":1},"2":{"8":1,"31":2,"32":2,"70":4,"74":3,"75":1,"101":6,"209":2,"210":1,"261":3,"262":2,"302":1,"306":1}}],["am",{"2":{"114":1,"172":1,"273":1}}],["amp",{"0":{"4":1,"87":1},"2":{"2":2,"34":2,"35":2,"39":1,"43":3,"45":2,"83":2,"98":2,"99":2,"166":2,"206":4,"215":2,"222":2,"235":2,"243":2,"250":2,"258":2,"267":2,"269":2,"272":2,"275":2,"279":2,"301":1,"302":2}}],["abcdefg",{"2":{"306":1}}],["abci",{"0":{"137":1},"1":{"138":1},"2":{"9":3,"81":1,"100":1,"118":2,"124":1,"127":1,"137":3,"138":2,"144":1,"152":1,"260":1}}],["abci++",{"2":{"7":2,"9":1,"10":1,"142":1}}],["abi",{"2":{"275":1}}],["ability",{"2":{"7":2,"122":1,"133":1}}],["able",{"2":{"39":1,"121":1,"195":1}}],["abstraction",{"2":{"219":1,"247":1,"300":1}}],["abstract",{"2":{"9":1}}],["about",{"0":{"52":1,"117":1},"1":{"118":1,"119":1,"120":1,"121":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1},"2":{"3":1,"43":1,"44":1,"60":1,"118":1,"127":1,"135":1,"144":2,"148":1,"158":1,"189":1,"214":1,"222":1,"236":1,"242":1,"250":1,"261":1,"278":1,"289":1,"291":1}}],["above",{"2":{"2":1,"19":1,"47":1,"49":1,"56":1,"86":1,"121":1,"123":1,"275":1,"276":1,"302":1,"306":4}}],["alnsenbuv5go86fmwe11qth1+r76g2e1lv8c1fwhlpqp",{"2":{"261":1}}],["al92dloelpuaiousiajapkiveiwlhledz",{"2":{"261":1}}],["alerting",{"2":{"94":1}}],["alerts",{"2":{"94":1}}],["alert",{"0":{"94":1},"2":{"89":1,"94":2,"127":1}}],["algorithm",{"2":{"70":2,"101":2}}],["alphabet",{"2":{"301":2,"302":3}}],["alphabets",{"2":{"301":2}}],["alpha",{"2":{"39":1,"78":1,"127":1,"132":1}}],["already",{"2":{"19":1,"81":3,"100":1,"186":1,"256":1,"301":2,"306":2}}],["alongside",{"2":{"58":1,"225":1,"238":1,"253":1}}],["along",{"2":{"9":1,"13":1,"181":1,"264":1}}],["align",{"2":{"8":1}}],["alignment",{"2":{"8":1}}],["also",{"2":{"8":1,"12":1,"57":2,"59":1,"66":1,"68":1,"87":1,"105":1,"121":1,"122":1,"140":1,"142":1,"143":1,"163":1,"189":1,"219":1,"222":1,"227":1,"247":1,"250":1,"277":1,"296":1,"299":1,"301":1}}],["alley",{"2":{"67":2,"71":2}}],["allow",{"2":{"39":1,"111":1,"117":1,"133":2,"219":1,"247":1,"296":1,"303":1}}],["allowing",{"2":{"8":1,"122":1,"124":1}}],["allows",{"2":{"7":1,"8":2,"9":1,"10":2,"12":1,"76":1,"132":1,"139":1,"164":2,"197":1,"210":1,"299":1,"300":1,"301":1,"302":1}}],["all",{"2":{"7":2,"27":1,"28":1,"37":1,"41":1,"45":1,"46":1,"47":1,"48":1,"72":1,"73":1,"99":1,"121":1,"143":2,"147":2,"151":1,"179":1,"190":1,"258":1,"261":1,"286":1,"293":1,"303":1,"306":1}}],["alter",{"2":{"295":1}}],["alternatively",{"2":{"19":1,"42":1,"72":1}}],["alternative",{"2":{"9":1}}],["although",{"2":{"287":1}}],["alt",{"2":{"7":1}}],["always",{"2":{"2":1,"59":1,"101":1}}],["answer",{"2":{"302":1}}],["anvil",{"2":{"181":6}}],["announce",{"2":{"12":1}}],["another",{"2":{"8":1,"18":1,"125":1,"138":1,"158":1,"261":1,"306":2}}],["an",{"0":{"43":1,"48":1},"2":{"4":1,"7":3,"8":6,"9":1,"12":1,"14":1,"15":3,"18":1,"19":1,"26":1,"27":2,"40":2,"43":1,"46":1,"60":3,"63":1,"68":1,"70":1,"74":1,"75":1,"76":1,"80":1,"81":1,"90":1,"92":1,"94":2,"96":1,"99":2,"100":2,"101":1,"106":1,"112":1,"113":1,"118":2,"122":1,"125":1,"127":1,"134":1,"135":1,"138":1,"139":1,"158":1,"165":1,"178":1,"181":2,"189":3,"207":1,"210":1,"216":1,"219":2,"220":3,"222":1,"244":1,"247":2,"248":3,"250":1,"261":1,"262":1,"271":1,"274":1,"276":2,"280":1,"287":1,"289":2,"291":1,"300":1,"302":3,"306":4}}],["anyone",{"2":{"117":1,"133":2}}],["anywhere",{"0":{"105":1}}],["anyhow",{"2":{"45":2}}],["any",{"0":{"124":1},"2":{"4":1,"7":3,"9":1,"10":3,"16":1,"28":1,"41":1,"45":1,"70":1,"115":1,"118":1,"124":1,"137":1,"139":1,"149":1,"158":1,"160":1,"226":1,"230":1,"301":1,"306":2}}],["and",{"0":{"27":1,"47":1,"50":1,"51":1,"68":1,"93":1,"109":1,"112":1,"120":1,"121":1,"128":1,"156":1,"158":1,"179":1,"221":1,"249":1,"264":1,"275":1,"288":1,"306":1},"1":{"52":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"110":1,"111":1,"112":1,"129":1,"130":1,"131":1,"132":1,"265":1,"266":1,"267":1,"268":1,"269":1,"270":1,"271":1,"272":1,"273":1,"274":1,"275":1,"276":1,"277":1,"278":1,"279":1,"280":1,"289":1,"290":1,"291":1},"2":{"0":1,"1":1,"2":4,"3":2,"7":6,"8":10,"9":5,"10":3,"12":1,"13":1,"14":2,"15":4,"16":7,"18":6,"19":3,"20":2,"21":2,"24":2,"25":1,"27":2,"37":3,"39":5,"40":2,"44":5,"45":1,"47":3,"50":1,"51":1,"54":2,"56":2,"57":1,"60":3,"63":1,"66":3,"68":1,"72":3,"73":1,"74":2,"75":1,"76":1,"77":4,"80":1,"81":8,"87":1,"88":2,"89":3,"91":2,"92":1,"93":1,"94":1,"96":1,"97":1,"98":1,"99":2,"100":1,"103":1,"105":3,"107":2,"108":1,"109":2,"111":4,"112":6,"113":2,"114":3,"115":2,"118":4,"121":5,"122":5,"123":1,"124":1,"125":3,"126":2,"127":3,"128":1,"132":1,"133":1,"134":2,"135":5,"137":1,"138":1,"139":1,"142":2,"143":3,"144":4,"145":2,"147":1,"148":1,"149":2,"152":8,"154":1,"158":8,"163":6,"164":4,"166":2,"167":1,"171":1,"172":2,"175":1,"177":1,"178":1,"179":3,"181":2,"182":1,"184":1,"185":1,"186":1,"189":2,"190":1,"191":1,"194":1,"195":1,"197":2,"199":1,"203":1,"206":2,"207":1,"209":1,"210":3,"212":1,"213":3,"217":2,"219":3,"220":2,"222":4,"225":2,"227":1,"229":2,"230":3,"231":1,"232":1,"234":3,"236":1,"237":1,"238":1,"240":1,"241":3,"245":2,"247":3,"248":2,"250":4,"253":2,"255":1,"256":1,"257":1,"259":1,"260":1,"261":2,"264":3,"267":1,"270":1,"272":1,"273":1,"275":1,"276":1,"277":5,"278":4,"282":1,"283":2,"284":2,"285":2,"289":2,"290":1,"291":4,"294":2,"295":1,"296":4,"299":1,"300":2,"301":1,"302":6,"303":1,"305":4,"306":7,"307":1,"308":1}}],["ask",{"2":{"306":2}}],["asking",{"2":{"18":1}}],["async",{"2":{"306":5}}],["asynchronously",{"2":{"306":1}}],["asynchronous",{"2":{"8":1}}],["aspect",{"2":{"226":1}}],["asdf",{"2":{"167":7}}],["asset",{"2":{"295":1}}],["assertion",{"2":{"179":2}}],["asserteq",{"2":{"179":4}}],["assert",{"2":{"39":1,"45":1,"179":1}}],["associated",{"2":{"282":1}}],["assumes",{"2":{"107":1,"113":1,"226":1}}],["assume",{"2":{"100":1}}],["assumptions",{"2":{"60":1,"122":1}}],["as",{"0":{"15":1,"95":1},"1":{"96":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1},"2":{"3":1,"7":3,"8":1,"9":2,"10":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":2,"39":1,"42":1,"44":3,"46":1,"47":2,"51":1,"57":1,"74":1,"77":1,"80":1,"81":1,"94":1,"96":3,"102":1,"103":1,"106":2,"107":1,"111":4,"112":1,"117":2,"118":4,"120":1,"121":1,"122":3,"123":1,"125":1,"126":2,"127":2,"133":4,"135":1,"137":1,"138":1,"139":2,"143":2,"144":2,"145":1,"151":1,"152":2,"158":3,"163":1,"164":1,"174":1,"181":4,"182":1,"184":1,"189":1,"205":2,"206":1,"226":2,"231":1,"236":1,"261":1,"264":1,"271":1,"285":2,"290":1,"294":1,"295":1,"296":1,"297":2,"300":1,"301":1,"302":2,"306":4}}],["a",{"0":{"15":1,"20":2,"21":1,"25":1,"30":1,"31":1,"35":1,"46":1,"63":1,"98":1,"109":1,"126":1,"128":1,"170":1,"171":1,"185":1,"190":1,"200":1,"212":1,"213":1,"218":1,"234":1,"240":1,"241":1,"246":1,"257":1,"266":1,"277":1,"295":1,"297":1,"305":1},"1":{"21":2,"22":2,"23":2,"24":2,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"47":1,"48":1,"49":1,"110":1,"111":1,"112":1,"129":1,"130":1,"131":1,"132":1,"171":1,"172":1,"173":1,"174":1,"175":1,"176":1,"213":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":2,"220":2,"221":2,"222":2,"223":2,"224":2,"241":1,"242":1,"243":1,"244":1,"245":1,"246":1,"247":2,"248":2,"249":2,"250":2,"251":2,"252":2,"278":1,"279":1,"280":1},"2":{"2":4,"5":2,"7":11,"8":6,"9":2,"10":6,"11":1,"12":3,"13":3,"14":9,"15":2,"16":7,"17":3,"18":3,"19":1,"20":2,"21":1,"24":2,"25":2,"27":2,"30":1,"31":1,"35":1,"37":3,"39":2,"40":1,"41":1,"43":2,"44":2,"48":2,"51":2,"52":2,"54":1,"57":2,"58":1,"59":3,"60":2,"63":2,"66":1,"68":4,"72":4,"77":1,"78":1,"80":1,"81":4,"85":1,"92":1,"94":2,"96":5,"98":2,"99":4,"101":10,"102":2,"103":2,"105":5,"106":1,"107":1,"108":1,"109":2,"110":1,"111":3,"112":2,"114":3,"115":2,"116":1,"117":2,"118":6,"120":2,"121":10,"122":8,"124":1,"125":4,"126":3,"127":4,"132":3,"133":4,"135":1,"137":2,"138":2,"139":1,"140":4,"142":2,"143":6,"145":1,"149":4,"151":3,"152":6,"154":2,"158":9,"163":6,"164":2,"169":1,"171":2,"172":5,"173":1,"174":1,"178":1,"179":3,"180":1,"181":2,"184":3,"185":2,"187":1,"188":1,"189":5,"191":1,"192":1,"195":1,"196":2,"197":3,"198":1,"199":1,"200":1,"203":1,"205":1,"206":2,"207":1,"208":1,"209":1,"210":2,"212":1,"213":1,"214":3,"217":1,"219":2,"220":4,"222":4,"224":1,"225":1,"226":2,"228":1,"231":1,"232":2,"234":1,"236":2,"237":1,"238":2,"240":1,"241":1,"242":3,"245":1,"247":2,"248":4,"250":4,"252":1,"253":1,"255":4,"257":2,"258":2,"260":1,"261":2,"263":2,"264":5,"266":2,"270":2,"271":1,"272":2,"273":2,"276":2,"277":2,"278":2,"279":1,"281":1,"282":1,"283":1,"284":2,"285":1,"287":10,"289":3,"290":4,"291":4,"293":4,"294":2,"296":3,"297":3,"299":2,"300":3,"301":8,"302":11,"303":2,"305":1,"306":14,"307":6,"308":1}}],["ir",{"2":{"261":1}}],["illustrates",{"2":{"88":1}}],["io",{"2":{"63":1,"266":1,"278":1,"301":1,"302":1}}],["i",{"2":{"63":1,"111":2,"114":1,"132":1,"172":1,"266":1,"273":1,"283":5}}],["igniteversiontag",{"2":{"289":1}}],["ignite",{"0":{"288":1,"289":1},"1":{"289":1,"290":1,"291":1},"2":{"62":1,"63":3,"186":1,"187":3,"285":1,"286":1,"289":7,"290":5,"293":2,"296":1,"305":1,"306":1,"307":1}}],["ip4",{"2":{"57":2,"100":2,"260":2}}],["ip",{"2":{"57":1,"66":1,"278":1}}],["ics",{"2":{"100":1}}],["ics20",{"2":{"48":1,"72":1,"101":2}}],["icahost",{"2":{"57":1}}],["i32",{"2":{"44":2}}],["ideas",{"2":{"285":1}}],["ideal",{"2":{"126":1}}],["identifier",{"2":{"114":1,"179":2,"180":1}}],["id=$",{"2":{"208":1}}],["id=channel",{"2":{"74":1}}],["id=",{"2":{"56":1,"57":2}}],["id=rollup",{"2":{"26":1}}],["id",{"2":{"26":2,"29":3,"32":2,"43":3,"54":1,"56":1,"57":1,"70":2,"72":35,"74":4,"75":2,"94":1,"101":8,"102":1,"111":2,"145":1,"160":7,"177":1,"206":2,"208":5,"209":2,"210":5,"261":1,"306":6}}],["ibc",{"0":{"60":1,"68":1,"72":1,"95":1,"101":1},"1":{"61":1,"62":1,"63":1,"64":1,"65":1,"66":1,"67":1,"68":1,"69":2,"70":2,"71":2,"72":2,"73":2,"74":2,"75":2,"96":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1},"2":{"7":1,"9":1,"57":1,"60":5,"63":2,"66":2,"68":1,"72":9,"73":1,"74":5,"75":2,"77":2,"96":1,"100":3,"101":7,"102":1,"210":1}}],["if",{"2":{"4":1,"11":1,"19":1,"27":2,"39":2,"45":1,"46":1,"57":2,"59":1,"74":1,"75":1,"78":1,"81":1,"82":1,"83":1,"90":1,"99":1,"100":1,"108":1,"115":1,"117":1,"127":1,"132":1,"158":2,"189":1,"195":1,"197":1,"204":1,"206":1,"210":1,"217":1,"222":1,"225":1,"227":1,"230":1,"238":1,"245":1,"250":1,"253":1,"256":2,"263":1,"271":1,"275":1,"276":1,"289":1,"290":1,"301":8,"302":14,"306":1}}],["indicators",{"2":{"287":1}}],["indicating",{"2":{"229":1}}],["index",{"2":{"210":1,"301":4,"302":4,"306":1}}],["indexed",{"2":{"100":1,"260":1,"270":1}}],["indexerservice",{"2":{"100":1,"260":1}}],["indexers",{"2":{"9":1}}],["indexing",{"2":{"89":1,"91":1}}],["independently",{"2":{"8":1}}],["independent",{"2":{"7":1}}],["inner",{"2":{"134":1}}],["innovative",{"2":{"124":1}}],["innovation",{"2":{"118":1}}],["innovate",{"2":{"118":1}}],["invalidargument",{"2":{"222":2,"250":2}}],["invalid",{"2":{"158":4,"222":2,"250":2,"306":2}}],["involved",{"2":{"94":1}}],["involves",{"2":{"68":1}}],["invite",{"2":{"18":1}}],["initiate",{"2":{"185":1,"189":1}}],["initial",{"2":{"45":1,"60":1,"296":2,"302":1}}],["initialization",{"2":{"283":1}}],["initializing",{"0":{"29":1,"200":1},"2":{"71":1,"201":1}}],["initialized",{"2":{"188":1,"259":1}}],["initialize",{"0":{"178":1},"2":{"25":1,"29":1,"37":1,"177":1,"187":1,"200":3,"214":2,"216":1,"242":2,"244":1,"291":1,"293":1,"302":1,"306":1}}],["initially",{"2":{"15":1}}],["init",{"2":{"27":1,"29":1,"45":1,"54":1,"55":1,"57":2,"58":1,"63":2,"66":3,"70":1,"80":2,"99":2,"101":1,"139":1,"177":1,"178":1,"182":3,"187":1,"188":1,"200":4,"206":1,"209":1,"214":4,"216":1,"217":1,"223":1,"236":4,"237":1,"242":4,"244":1,"245":1,"251":1,"259":1,"293":1,"306":1}}],["insights",{"2":{"283":1}}],["inside",{"0":{"201":1},"2":{"43":2,"48":2,"55":1,"188":1,"200":1,"214":1,"236":1,"242":1,"291":2,"301":1,"303":1}}],["inspired",{"2":{"142":1}}],["inscriptions",{"2":{"14":2}}],["inscribe",{"2":{"14":2}}],["instantiating",{"2":{"209":1}}],["instantiation",{"0":{"209":1}}],["instantiated",{"2":{"208":1,"210":2}}],["instantiatemsg",{"2":{"39":1,"43":2,"45":2}}],["instantiate",{"2":{"39":1,"43":1,"45":1,"209":1}}],["instance",{"2":{"47":1,"63":1,"113":1,"203":1,"220":1,"248":1,"266":1}}],["installs",{"2":{"289":1}}],["installations",{"0":{"193":1},"1":{"194":1,"195":1,"196":1,"197":1,"198":1}}],["installation",{"0":{"196":1,"197":1},"2":{"108":1,"168":1,"195":1,"282":2,"289":1}}],["installing",{"0":{"108":1,"293":1},"2":{"179":1,"195":4,"196":1}}],["installed",{"2":{"99":1,"106":1,"108":1,"167":1,"178":1,"179":1,"186":1,"194":1,"195":2,"226":1,"227":1,"256":1,"265":1,"289":1,"305":1}}],["installer",{"2":{"97":1}}],["install",{"0":{"65":1,"69":1,"169":1,"268":1,"282":1},"2":{"21":2,"63":2,"65":1,"69":1,"97":2,"98":1,"99":4,"101":2,"108":1,"163":2,"166":2,"167":4,"168":1,"169":2,"177":1,"187":2,"194":2,"195":2,"196":1,"197":2,"198":1,"213":2,"227":2,"228":1,"234":2,"241":2,"256":1,"257":1,"258":1,"278":2,"282":2,"289":1,"293":2,"305":1}}],["instead",{"2":{"7":1,"8":2,"68":1,"114":1,"138":1,"206":1}}],["instructions",{"2":{"3":1,"18":1,"101":1,"108":1,"196":1,"213":2,"234":2,"241":2,"264":1,"278":2}}],["inherits",{"2":{"18":1}}],["inherit",{"2":{"12":1,"122":1,"164":1}}],["inflationary",{"2":{"121":1}}],["inflating",{"2":{"8":1}}],["inference",{"2":{"105":3}}],["inform",{"2":{"264":1}}],["information",{"2":{"106":1,"144":5,"222":1,"250":1,"296":1}}],["infos",{"2":{"261":1,"306":1}}],["info",{"2":{"72":13,"101":1,"144":1,"190":1,"195":3,"210":2,"229":1,"261":1,"306":2}}],["inf",{"2":{"57":10,"82":1,"100":24,"260":24,"270":10}}],["infrastructure",{"2":{"9":1,"112":1}}],["incorporates",{"2":{"105":1}}],["incredibly",{"2":{"284":1}}],["increase",{"0":{"85":1},"2":{"81":3,"85":1,"262":1}}],["increasing",{"2":{"59":1}}],["incrementcounter",{"2":{"179":3,"181":1,"182":1}}],["increment",{"2":{"39":1,"44":2,"45":1,"302":2,"306":1}}],["incurring",{"2":{"121":1}}],["incur",{"2":{"18":1,"122":1}}],["includes",{"2":{"60":1,"99":1,"122":1,"138":1,"139":1}}],["included",{"2":{"14":1,"158":2,"179":1,"287":1,"306":3}}],["include",{"2":{"14":2,"23":1,"47":1,"111":1,"179":1,"195":1}}],["including",{"2":{"7":1,"17":1,"121":1,"122":1,"134":1}}],["incentive",{"2":{"8":1}}],["int",{"2":{"179":9,"181":1,"182":1,"302":1}}],["introduction",{"0":{"39":1,"96":1,"105":1,"133":1,"184":1,"255":1},"2":{"40":1}}],["introduced",{"2":{"76":1}}],["introduce",{"2":{"8":1}}],["integers",{"2":{"301":1,"306":1}}],["integrated",{"2":{"92":1,"93":1}}],["integrate",{"0":{"88":1,"91":1},"1":{"89":1,"90":1,"91":1,"92":2,"93":1,"94":1},"2":{"39":2,"48":1,"49":1,"77":1,"89":1,"91":1,"96":1,"164":1,"192":1}}],["integrating",{"0":{"15":1,"49":1},"2":{"14":1,"40":1}}],["integrations",{"2":{"140":1}}],["integration",{"0":{"41":1,"45":1,"46":1},"1":{"42":1,"43":1,"44":1,"45":1,"47":1,"48":1,"49":1},"2":{"12":1,"13":1,"17":1,"18":1,"39":2,"40":3,"45":1,"46":2,"48":1,"89":1,"139":1,"140":1,"164":2,"264":2}}],["interested",{"2":{"225":1,"238":1,"253":1}}],["interwasm",{"2":{"203":1}}],["intermediate",{"0":{"130":1},"2":{"152":1}}],["intermediaries",{"2":{"8":1}}],["interpreted",{"2":{"107":1}}],["inter",{"2":{"60":1}}],["interacted",{"2":{"210":1}}],["interactive",{"2":{"99":1}}],["interacting",{"2":{"50":1,"143":1}}],["interactions",{"2":{"45":1,"50":1,"300":2}}],["interaction",{"0":{"44":1,"207":1,"210":1},"1":{"208":1,"209":1,"210":1},"2":{"40":1,"44":1,"47":1,"295":1}}],["interact",{"0":{"115":1,"274":1,"276":1},"2":{"9":1,"39":2,"41":1,"114":1,"115":1,"207":1,"210":1,"275":2,"276":1,"300":1}}],["interchain",{"2":{"9":1}}],["interoperability",{"2":{"8":1}}],["interoperate",{"2":{"7":2}}],["internal",{"2":{"8":1}}],["interfaces",{"2":{"16":2,"48":1,"139":1,"144":1,"295":1}}],["interface",{"0":{"43":1,"48":1,"137":1},"1":{"138":1},"2":{"7":1,"9":1,"10":1,"16":6,"40":2,"43":9,"44":1,"48":7,"118":2,"127":1,"137":1,"138":1,"139":2,"140":1,"226":1,"303":2,"307":1}}],["into",{"0":{"15":1},"2":{"7":1,"34":1,"39":1,"63":1,"77":1,"78":1,"89":1,"91":1,"93":1,"105":1,"132":1,"135":1,"149":1,"164":1,"178":1,"206":1,"220":1,"230":1,"248":1,"275":1,"276":1,"280":1,"283":1}}],["in",{"0":{"32":1,"46":1,"82":1,"95":1,"148":1,"152":1,"307":1},"1":{"47":1,"48":1,"49":1,"96":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1},"2":{"3":1,"4":2,"8":4,"9":1,"14":1,"15":2,"16":3,"18":1,"19":2,"24":1,"27":3,"32":1,"35":1,"37":1,"39":3,"40":1,"42":2,"43":4,"44":5,"45":2,"46":1,"47":1,"48":3,"50":1,"52":1,"53":2,"57":3,"59":1,"60":4,"63":2,"66":2,"68":2,"72":5,"74":3,"76":2,"77":2,"78":2,"80":1,"81":7,"84":1,"85":1,"87":2,"88":1,"89":1,"91":1,"92":5,"93":1,"94":4,"99":1,"100":3,"101":1,"105":1,"108":1,"109":1,"111":1,"112":2,"113":1,"114":2,"115":3,"117":1,"118":1,"121":2,"122":2,"123":2,"127":1,"132":3,"135":1,"139":2,"142":1,"143":3,"145":1,"146":1,"149":2,"151":2,"152":4,"154":1,"158":9,"160":2,"163":2,"172":1,"176":1,"178":1,"179":4,"182":1,"184":1,"185":1,"188":1,"189":1,"190":1,"192":1,"196":1,"197":2,"198":1,"200":1,"203":1,"204":1,"205":2,"206":5,"207":2,"208":1,"210":1,"212":1,"214":2,"217":3,"219":1,"220":4,"221":1,"222":3,"224":1,"225":2,"226":1,"229":1,"230":1,"231":1,"232":1,"236":2,"237":2,"238":1,"240":1,"242":2,"245":3,"247":1,"248":4,"249":1,"250":3,"252":1,"253":2,"259":2,"260":3,"264":1,"266":1,"269":1,"273":1,"275":1,"276":4,"277":3,"279":1,"280":2,"282":1,"285":1,"286":4,"287":5,"289":2,"290":1,"291":1,"294":2,"296":2,"297":1,"301":5,"302":3,"303":2,"306":6,"307":1}}],["image",{"2":{"14":1}}],["images",{"2":{"3":1}}],["impl=indexerservice",{"2":{"100":1,"260":1}}],["impl=pubsub",{"2":{"100":1,"260":1}}],["impl=eventbus",{"2":{"100":1,"260":1}}],["impl=localclient",{"2":{"100":4,"260":4}}],["impl=multiappconn",{"2":{"100":1,"260":1}}],["impl=node",{"2":{"57":1,"100":1,"260":1}}],["impl=rpc",{"2":{"57":1,"100":1,"260":1}}],["impl",{"2":{"43":1}}],["implementing",{"2":{"16":1,"127":1}}],["implementers",{"2":{"16":1}}],["implemented",{"2":{"16":1,"118":1,"140":1,"142":1,"145":1,"146":1,"149":1,"294":1,"303":1,"306":1}}],["implements",{"2":{"14":1,"44":1,"144":1,"222":1,"250":1}}],["implementations",{"2":{"139":1,"285":1}}],["implementation",{"0":{"287":1},"2":{"12":1,"13":1,"15":1,"18":1,"122":1,"149":2,"285":1}}],["implement",{"2":{"10":1,"16":2,"287":2,"300":1}}],["import",{"2":{"111":1,"114":2,"179":2,"180":2,"301":1,"302":1}}],["importing",{"2":{"45":1,"48":1}}],["important",{"2":{"16":1,"117":1,"139":1,"201":1,"291":1}}],["imposed",{"2":{"10":1}}],["improve",{"2":{"307":3}}],["improves",{"2":{"306":1}}],["improvements",{"2":{"4":1}}],["improving",{"2":{"2":1}}],["itoa",{"2":{"302":2}}],["its",{"2":{"7":2,"9":1,"16":1,"109":1,"145":1,"151":1,"158":1,"208":1,"282":1,"294":2,"302":1}}],["it",{"2":{"2":2,"8":1,"9":2,"12":1,"14":2,"16":3,"18":3,"19":2,"20":1,"24":1,"27":2,"35":1,"39":3,"42":1,"43":2,"44":1,"57":1,"60":1,"69":1,"72":3,"80":1,"96":1,"97":1,"99":2,"105":1,"110":1,"111":2,"112":5,"114":2,"115":2,"117":1,"118":1,"121":2,"122":4,"125":1,"127":1,"132":1,"133":1,"134":1,"137":1,"139":1,"140":1,"142":1,"143":1,"145":1,"152":1,"158":1,"160":1,"164":3,"167":2,"172":2,"179":1,"180":1,"181":1,"182":1,"184":1,"185":1,"189":1,"195":1,"196":1,"197":1,"198":1,"200":1,"201":1,"203":1,"205":1,"208":1,"210":1,"212":1,"214":1,"221":1,"222":1,"225":1,"226":2,"227":2,"232":1,"240":1,"242":1,"249":1,"250":1,"253":1,"255":1,"258":1,"263":1,"276":1,"284":2,"285":1,"287":2,"289":2,"291":3,"295":1,"296":3,"299":1,"300":2,"301":1,"302":2,"303":1,"306":3,"307":3}}],["isfound",{"2":{"301":2,"302":4}}],["isletter",{"2":{"301":3,"302":1}}],["isn",{"2":{"287":1}}],["isrs",{"2":{"152":1}}],["issues",{"2":{"230":1,"264":2}}],["issue",{"2":{"4":1,"60":3,"78":1,"132":1}}],["is",{"0":{"27":1,"118":1,"119":1},"1":{"120":1,"121":1},"2":{"1":1,"7":1,"8":2,"9":1,"10":1,"12":3,"15":2,"18":4,"19":2,"24":1,"26":1,"27":3,"35":1,"37":1,"39":1,"44":1,"45":1,"48":1,"49":1,"52":2,"54":1,"57":3,"59":2,"66":2,"68":1,"72":3,"73":1,"74":1,"75":1,"78":1,"80":1,"81":4,"82":1,"84":1,"89":1,"93":2,"94":1,"96":1,"99":1,"101":2,"108":1,"110":1,"111":1,"112":1,"113":1,"114":1,"117":1,"118":3,"120":2,"122":3,"125":1,"127":1,"132":2,"133":3,"134":1,"137":1,"139":1,"140":1,"142":3,"143":2,"145":2,"149":1,"151":1,"152":1,"158":6,"159":1,"160":1,"164":1,"177":1,"179":1,"180":1,"182":1,"188":1,"189":6,"190":3,"192":3,"195":1,"197":3,"199":1,"201":2,"203":1,"208":1,"209":2,"212":3,"219":2,"220":3,"221":2,"222":1,"229":1,"230":2,"232":2,"234":1,"236":1,"240":3,"241":1,"247":2,"248":3,"249":2,"250":1,"255":1,"259":1,"264":4,"275":1,"278":1,"280":1,"281":1,"284":3,"286":1,"287":1,"289":1,"290":2,"291":3,"293":1,"294":3,"295":2,"296":2,"299":3,"300":3,"301":5,"302":3,"303":2,"306":3,"307":1}}],["luck",{"2":{"191":1,"217":1,"245":1,"263":1,"284":1}}],["lunaroasis",{"2":{"189":1}}],["luxor",{"2":{"14":1}}],["l",{"2":{"168":1,"268":1}}],["l3s",{"2":{"123":1}}],["lt",{"2":{"23":1,"43":4,"45":1,"54":1,"80":1,"83":1,"112":1,"181":2,"182":1,"276":1}}],["l2",{"2":{"8":2}}],["len",{"2":{"301":1,"302":1}}],["level",{"2":{"101":1,"108":1,"142":1,"261":1}}],["leverages",{"2":{"105":1,"122":1}}],["leverage",{"2":{"88":1,"125":1,"134":1}}],["left",{"2":{"59":1}}],["less",{"2":{"16":1,"88":1,"92":1}}],["letters",{"2":{"301":3,"302":2}}],["letter",{"2":{"287":6,"301":1,"302":1,"306":1}}],["let",{"2":{"8":1,"39":1,"45":5,"78":1,"99":1,"114":1,"132":1,"179":2,"180":1,"189":3,"190":1,"206":1,"208":1,"210":1,"258":1,"261":1,"293":1,"306":3}}],["leader",{"2":{"306":1}}],["leading",{"2":{"7":1}}],["least",{"2":{"152":1,"306":1}}],["leaf",{"2":{"101":2}}],["learning",{"2":{"105":2}}],["learn",{"2":{"3":1,"43":1,"50":1,"60":2,"98":1,"118":1,"125":1,"127":1,"189":1,"214":1,"225":1,"236":1,"242":1,"253":1,"257":1,"271":1,"278":1}}],["lies",{"2":{"185":1}}],["license",{"2":{"114":1,"179":2,"180":1}}],["limited",{"2":{"120":2}}],["limitations",{"2":{"120":1}}],["limit",{"2":{"101":1,"261":1,"306":1}}],["listed",{"2":{"121":1}}],["listen=0",{"2":{"278":1}}],["listening",{"2":{"57":3,"98":1,"100":3,"257":1,"260":3,"305":1}}],["listen",{"2":{"21":1,"57":1,"70":1,"100":1,"101":1,"260":1}}],["list",{"2":{"83":1,"101":1,"195":1,"208":1,"210":2,"220":2,"248":2,"261":2,"296":1,"306":2}}],["lifecycle",{"2":{"139":1}}],["life",{"2":{"77":1,"124":1}}],["lines",{"2":{"111":1,"197":1}}],["line",{"2":{"99":1,"206":2}}],["link",{"2":{"72":1,"229":1}}],["linux",{"2":{"63":1,"97":1,"167":3,"195":1,"196":1,"197":1,"205":1,"227":1,"266":1}}],["libraries",{"2":{"289":1}}],["library",{"2":{"50":1,"179":1}}],["libssl",{"2":{"166":1}}],["libp2p",{"2":{"52":1,"145":1}}],["lib",{"2":{"43":2,"44":1,"48":1}}],["live",{"2":{"16":1,"39":1,"50":1,"59":1,"180":1}}],["liquidity",{"2":{"8":1,"126":1}}],["light",{"0":{"148":1,"185":1,"190":1,"213":1,"234":1,"241":1,"277":1,"278":1},"1":{"278":1,"279":1,"280":1},"2":{"7":2,"8":1,"70":1,"81":1,"83":1,"101":1,"122":2,"127":1,"135":1,"140":1,"148":4,"149":1,"152":4,"154":2,"158":2,"185":2,"189":3,"213":2,"234":3,"236":1,"237":1,"241":3,"277":2,"278":7,"280":1}}],["like",{"2":{"7":2,"8":1,"9":1,"43":1,"44":1,"68":2,"72":1,"74":1,"75":2,"76":1,"82":1,"110":1,"115":1,"121":1,"122":1,"137":1,"138":1,"154":1,"166":1,"171":1,"189":3,"217":1,"245":1,"259":1,"261":2,"263":1,"271":1,"306":1,"308":1}}],["larger",{"2":{"306":1}}],["largest",{"2":{"14":1}}],["label",{"2":{"209":1,"210":1}}],["labs",{"2":{"65":1,"110":1,"189":1}}],["lazy",{"0":{"76":1},"2":{"76":4,"77":1}}],["lastly",{"2":{"163":1}}],["last",{"2":{"75":1,"143":1,"160":4,"189":1,"214":1,"236":1,"242":1}}],["language",{"2":{"97":1}}],["land",{"2":{"43":1}}],["lanes",{"2":{"9":1}}],["latest",{"2":{"42":1,"174":1,"299":1,"302":1}}],["later",{"2":{"35":1,"80":2,"196":1,"207":1}}],["laddr",{"2":{"35":2,"36":2,"80":2,"85":2,"87":2}}],["layers",{"2":{"10":1,"15":2,"17":1,"18":1,"35":1,"118":1,"122":2,"123":1,"126":2,"163":1,"164":2}}],["layer",{"0":{"15":1,"126":1,"145":1},"2":{"7":5,"8":3,"10":1,"14":1,"16":2,"18":2,"57":1,"81":1,"82":4,"121":2,"122":5,"125":2,"126":2,"127":1,"128":1,"135":1,"139":4,"140":1,"143":2,"145":2,"149":1,"151":1,"152":2,"158":4,"163":1,"164":1,"177":1,"189":1,"192":1,"213":1,"234":1,"241":1,"264":1,"270":2,"278":1,"279":1}}],["launching",{"2":{"7":1,"8":1,"11":1}}],["launch",{"2":{"7":2,"8":1,"10":1,"117":1,"133":2,"281":1,"305":1}}],["l1",{"2":{"7":2,"8":1,"149":1}}],["l1s",{"2":{"7":1}}],["lots",{"2":{"289":1}}],["long",{"2":{"152":1,"301":1,"302":1,"306":1}}],["low",{"2":{"148":1}}],["looks",{"2":{"143":1,"154":1}}],["look",{"2":{"76":1,"82":1,"114":1,"115":1,"163":1,"171":1,"173":1,"189":1,"195":1,"208":1,"210":2,"259":1,"270":1,"273":1,"301":1}}],["looking",{"2":{"39":1,"93":1,"121":1,"134":1}}],["loop",{"2":{"70":2,"101":2}}],["login",{"2":{"276":1}}],["logic",{"2":{"231":1,"294":1,"300":1,"306":1}}],["logging",{"2":{"179":1}}],["logger",{"2":{"45":1}}],["logsbloom",{"2":{"115":1}}],["logs",{"2":{"100":1,"114":1,"115":1,"179":3,"210":1,"260":1,"270":1,"273":1,"306":1}}],["log",{"2":{"45":1,"101":1,"179":3,"181":1,"210":1,"283":1,"306":2}}],["loading",{"2":{"136":1,"155":1,"156":1,"157":1,"158":1}}],["loads",{"2":{"111":1}}],["loaded",{"2":{"101":1}}],["load",{"2":{"45":1}}],["location",{"2":{"176":1}}],["located",{"2":{"113":1,"178":1,"306":1}}],["localwasm",{"2":{"206":4,"209":2,"210":2}}],["locally",{"0":{"181":1},"2":{"180":1,"181":2,"182":1}}],["localclient",{"2":{"100":4,"260":4}}],["localhost",{"2":{"23":1,"35":1,"36":1,"57":1,"70":2,"74":2,"75":3,"100":1,"101":1,"114":1,"229":1,"230":1,"260":1,"273":1,"306":1}}],["localdalatesttag",{"2":{"21":1,"98":1,"257":1,"305":1}}],["local",{"0":{"20":1,"21":1,"22":1,"64":1,"66":1,"74":1,"75":1,"98":1,"170":1,"176":1,"198":1,"199":1,"257":1,"266":1,"305":1},"1":{"21":1,"22":1,"23":1,"24":1,"65":1,"66":1,"171":1,"172":1,"173":1,"174":1,"175":1,"176":1,"200":1,"201":1},"2":{"2":1,"17":1,"20":1,"21":3,"22":2,"24":1,"37":1,"45":4,"53":1,"54":1,"60":1,"63":4,"66":5,"70":2,"71":3,"72":6,"74":1,"80":8,"98":3,"99":1,"100":1,"103":2,"105":1,"163":1,"167":4,"169":1,"170":1,"178":1,"181":3,"184":2,"191":1,"192":1,"198":2,"199":1,"205":2,"208":1,"210":1,"212":1,"230":1,"232":1,"240":1,"257":3,"258":1,"260":1,"261":3,"263":2,"264":1,"266":2,"279":2,"289":1,"290":1,"293":3,"301":1,"302":1,"305":3,"307":1}}],["lock",{"2":{"45":1}}],["love",{"2":{"2":1,"11":1}}],["ll",{"2":{"0":1,"5":1,"53":2,"57":1,"60":1,"66":1,"76":1,"77":2,"81":1,"83":1,"89":1,"90":1,"91":1,"109":1,"163":1,"172":1,"210":2,"220":1,"222":1,"225":1,"248":1,"250":1,"253":1,"261":1,"275":1,"276":1,"277":2,"279":1}}],["w1",{"2":{"171":2}}],["w",{"2":{"111":2}}],["won",{"2":{"195":1}}],["would",{"2":{"76":1,"132":1,"138":1,"189":1,"195":2}}],["worry",{"2":{"261":1}}],["word",{"2":{"287":7,"296":1,"297":4,"299":3,"301":6,"302":8,"306":4,"307":2}}],["wordle",{"0":{"285":1,"288":1,"290":1,"291":1,"294":1,"298":1,"299":1,"304":1,"306":1},"1":{"286":1,"287":1,"288":1,"289":2,"290":2,"291":2,"292":1,"293":1,"294":1,"295":2,"296":1,"297":1,"298":1,"299":2,"300":1,"301":1,"302":1,"303":1,"304":1,"305":2,"306":2,"307":2,"308":1},"2":{"130":1,"231":1,"285":1,"286":1,"287":7,"290":3,"291":1,"292":1,"293":2,"294":1,"295":3,"296":3,"297":2,"299":3,"301":24,"302":17,"303":3,"306":31,"307":2,"308":1}}],["words",{"2":{"71":1}}],["working",{"2":{"100":1,"108":1,"109":1,"127":1,"260":1}}],["work",{"0":{"148":1,"152":1},"2":{"60":1,"152":2,"154":1,"160":1,"163":1,"260":1,"289":1,"291":1,"295":1,"303":1}}],["workspace",{"0":{"46":1},"1":{"47":1,"48":1,"49":1},"2":{"40":1,"43":1,"48":4,"49":1,"93":1}}],["workspaces",{"2":{"39":1,"47":1}}],["works",{"2":{"16":1,"111":1,"163":1}}],["worldle",{"2":{"306":1}}],["world",{"0":{"183":1,"211":1,"218":1,"219":1,"226":1,"232":1,"239":1,"246":1,"247":1,"254":1},"1":{"184":1,"185":1,"186":1,"187":1,"188":1,"189":1,"190":1,"191":1,"212":1,"213":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":2,"220":3,"221":3,"222":3,"223":3,"224":3,"225":1,"227":1,"228":1,"229":1,"230":1,"231":1,"233":1,"234":1,"235":1,"236":1,"237":1,"238":1,"240":1,"241":1,"242":1,"243":1,"244":1,"245":1,"246":1,"247":2,"248":3,"249":3,"250":3,"251":3,"252":3,"253":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"261":1,"262":1,"263":1},"2":{"19":1,"51":1,"53":1,"60":1,"63":1,"80":2,"81":1,"90":1,"96":1,"99":2,"129":2,"184":3,"186":1,"212":1,"219":1,"222":1,"224":1,"227":1,"232":1,"240":1,"247":1,"250":1,"252":1,"255":1,"258":1,"286":1,"290":1}}],["wget",{"2":{"55":1,"166":1,"167":1,"200":1,"214":1,"236":1,"242":1}}],["wrap",{"2":{"301":3,"302":4}}],["wrapper",{"2":{"43":2}}],["wrong",{"2":{"287":1,"302":2}}],["written",{"2":{"111":2}}],["writing",{"2":{"16":1,"39":1,"42":1,"209":1}}],["writer",{"2":{"16":2}}],["write",{"2":{"16":3,"39":2,"78":1,"111":2,"132":1,"189":1,"192":1,"219":1,"247":1,"290":1,"301":1}}],["watch",{"2":{"236":1}}],["warning",{"2":{"63":1,"99":1,"154":1,"160":1,"171":1}}],["waiting",{"2":{"114":1,"273":1}}],["wait",{"2":{"60":1,"76":1,"306":1}}],["wanted",{"2":{"210":2,"306":1}}],["want",{"2":{"39":1,"46":1,"93":1,"117":1,"126":1,"204":1,"205":1,"261":1,"279":1}}],["wants",{"2":{"16":1,"302":1}}],["ways",{"2":{"123":1,"287":1,"307":1}}],["way",{"2":{"39":1,"52":1,"281":1,"302":1,"306":4}}],["walkthrough",{"2":{"107":1,"108":1}}],["walk",{"2":{"25":1}}],["wall",{"2":{"14":1}}],["wallet",{"0":{"171":1,"230":1},"2":{"9":1,"71":1,"161":2,"171":1,"185":1,"210":1,"226":2,"230":5,"276":3}}],["waste",{"2":{"45":1}}],["wasm1y9ceqvnsnm9xtcdmhrjvv4rslgwfzmrzky2c5z",{"2":{"210":2}}],["wasm14hj2tavq8fpesdwxxcu44rty3hh90vhujrvcmstl4zr3txmfvw9s0phg4d",{"2":{"210":3}}],["wasm1lysztpn74kl40w6ghfhy7xr0v44r658szuysl5",{"2":{"160":4}}],["wasmd",{"0":{"197":1},"2":{"159":1,"160":1,"197":4,"199":2,"200":1,"205":1,"206":2,"208":1,"209":1,"210":6}}],["wasmpath",{"2":{"43":1}}],["wasm32",{"2":{"43":2,"195":4,"203":1}}],["wasm",{"2":{"43":4,"160":2,"192":1,"203":2,"205":2,"206":4,"208":1,"209":1,"210":7}}],["was",{"2":{"13":1,"14":2,"16":1,"76":1,"80":1,"115":1,"167":1,"289":1,"301":1,"302":1,"306":3}}],["wire",{"2":{"291":1}}],["window",{"2":{"224":1,"252":1,"306":1}}],["windows",{"2":{"97":1,"289":3}}],["win",{"2":{"101":2}}],["widespread",{"2":{"121":1}}],["widely",{"2":{"108":1}}],["wide",{"2":{"77":1}}],["witnesses",{"2":{"14":2}}],["without",{"2":{"7":1,"8":1,"14":1,"82":1,"139":1,"149":1,"264":1}}],["within",{"2":{"7":1,"96":1,"110":1,"302":1}}],["with",{"0":{"9":1,"12":1,"14":1,"38":1,"88":1,"104":1,"115":1,"124":1,"125":1,"200":1,"202":1,"274":1,"276":1,"277":1},"1":{"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"115":1,"116":1,"203":1,"204":1,"205":1,"206":1,"278":1,"279":1,"280":1},"2":{"1":1,"2":1,"3":1,"6":1,"7":5,"8":4,"9":4,"11":2,"12":2,"13":2,"14":2,"16":1,"18":3,"19":1,"22":1,"23":1,"29":1,"31":1,"36":1,"39":2,"40":1,"41":1,"43":2,"46":1,"49":1,"50":1,"57":1,"58":1,"59":1,"63":2,"66":1,"69":1,"70":2,"71":1,"72":1,"73":1,"77":3,"78":1,"87":1,"89":1,"96":1,"99":3,"100":2,"101":2,"108":2,"109":1,"111":4,"112":1,"114":2,"115":1,"117":2,"118":2,"120":1,"121":2,"122":4,"125":1,"128":1,"131":1,"132":1,"138":3,"139":1,"143":5,"144":1,"149":1,"154":1,"158":1,"163":2,"164":2,"165":1,"167":1,"175":1,"179":3,"180":1,"181":4,"182":1,"187":1,"189":2,"190":1,"192":1,"195":1,"197":1,"200":3,"204":1,"206":2,"207":1,"210":4,"212":1,"214":2,"216":2,"220":1,"228":1,"232":1,"236":1,"240":1,"242":2,"244":2,"248":1,"258":2,"260":2,"264":1,"272":1,"273":1,"275":3,"276":2,"277":1,"285":1,"286":1,"289":1,"290":2,"292":1,"293":3,"295":5,"296":2,"297":1,"299":1,"300":2,"301":2,"302":5,"303":2,"306":10,"307":1}}],["wizards",{"2":{"14":1}}],["will",{"2":{"10":1,"18":1,"19":1,"21":2,"24":1,"25":1,"35":1,"37":1,"39":3,"41":1,"46":1,"51":1,"54":2,"57":2,"58":1,"59":2,"63":1,"66":1,"67":2,"71":2,"74":2,"77":2,"78":1,"79":1,"80":1,"81":3,"82":1,"85":1,"94":1,"96":2,"99":1,"100":1,"101":1,"105":4,"108":1,"110":2,"111":1,"112":5,"113":1,"114":2,"115":3,"121":1,"128":1,"132":1,"135":2,"152":3,"158":5,"163":5,"166":1,"167":1,"171":1,"173":1,"174":1,"178":1,"179":1,"181":2,"182":1,"187":1,"189":2,"192":2,"194":1,"195":1,"196":1,"197":1,"198":1,"203":1,"205":1,"206":1,"207":1,"208":1,"210":2,"221":1,"224":1,"227":2,"230":1,"236":1,"249":1,"252":1,"255":2,"258":1,"264":1,"270":1,"272":1,"273":2,"275":2,"277":3,"282":1,"283":1,"285":3,"287":5,"290":2,"291":2,"293":1,"295":2,"296":1,"298":1,"300":1,"301":2,"302":2,"306":7}}],["whoever",{"2":{"287":1}}],["who",{"2":{"126":1,"286":1}}],["why",{"0":{"122":1}}],["whatever",{"2":{"110":1}}],["what",{"0":{"118":1,"119":1,"201":1},"1":{"120":1,"121":1},"2":{"82":1,"127":1,"154":1,"189":1,"220":1,"248":1,"284":1}}],["whammy",{"2":{"72":1}}],["whitelist",{"2":{"48":1}}],["while",{"2":{"9":1,"14":1,"15":1,"121":1,"132":1,"158":1,"172":1,"213":1,"294":1}}],["whichever",{"2":{"127":1}}],["which",{"2":{"7":1,"8":1,"16":2,"21":1,"27":1,"35":1,"52":1,"57":1,"59":1,"60":1,"63":1,"66":1,"68":1,"75":1,"78":1,"89":1,"96":1,"106":1,"118":2,"121":1,"122":2,"132":1,"138":2,"143":3,"158":2,"184":1,"190":1,"205":1,"277":1,"284":1,"287":1,"290":1,"295":2,"301":2,"302":2}}],["where",{"2":{"8":1,"15":1,"18":1,"19":1,"47":2,"60":1,"80":1,"81":1,"84":1,"112":1,"122":1,"132":1,"172":2,"306":1}}],["when",{"0":{"127":1},"2":{"7":1,"10":1,"43":1,"47":1,"48":2,"54":1,"59":2,"68":1,"71":1,"72":1,"77":1,"111":1,"135":1,"143":1,"152":1,"158":1,"217":1,"237":1,"245":1,"278":1,"302":1,"307":2}}],["whether",{"2":{"2":1,"152":1,"306":1}}],["web",{"2":{"227":1,"291":1}}],["webassembly",{"2":{"192":1}}],["websockets",{"2":{"144":1}}],["weight",{"2":{"148":1}}],["well",{"2":{"47":1,"106":1,"139":1,"145":1,"181":1,"191":1,"285":1}}],["welcome",{"2":{"0":1,"5":1,"77":1,"133":1,"281":1}}],["we",{"2":{"2":1,"4":1,"11":1,"12":1,"16":3,"17":1,"18":2,"19":1,"39":3,"41":1,"43":1,"46":1,"48":2,"53":1,"57":1,"60":1,"66":2,"76":1,"81":2,"87":1,"89":1,"91":1,"94":1,"96":1,"99":1,"100":4,"101":2,"105":2,"108":2,"109":1,"110":1,"111":1,"113":1,"115":2,"127":1,"128":1,"133":2,"142":1,"163":4,"166":1,"167":1,"172":1,"178":1,"179":2,"180":2,"181":3,"182":6,"187":1,"189":1,"192":2,"194":1,"196":2,"197":1,"199":1,"200":4,"203":1,"204":2,"205":2,"207":1,"208":2,"209":2,"210":3,"214":3,"215":1,"216":1,"219":1,"221":1,"224":1,"235":1,"242":3,"243":1,"244":1,"247":1,"249":1,"252":1,"255":1,"258":1,"260":3,"261":2,"264":2,"272":1,"275":1,"277":1,"286":1,"287":5,"290":4,"291":1,"292":2,"294":1,"295":2,"296":2,"297":3,"298":2,"299":1,"300":1,"301":9,"302":12,"303":2,"306":5}}],["dl",{"2":{"167":1}}],["d7d4c5a2ac271061512789bee3718305beaa519b",{"2":{"160":2}}],["d7e7e6ec0299c120c0e32167c11f0b60921ef88cc6524345bceb3b266ef727aa",{"2":{"72":1}}],["dht",{"2":{"145":3}}],["dst",{"2":{"72":3,"101":2}}],["dyn",{"2":{"43":1}}],["dumps",{"2":{"111":1}}],["duplicate",{"2":{"81":1}}],["duplication",{"2":{"39":1}}],["duration",{"2":{"70":2,"101":2}}],["during",{"2":{"59":1,"122":1}}],["due",{"2":{"13":1,"81":1}}],["dramatically",{"2":{"306":1}}],["drive",{"2":{"303":1}}],["drop",{"2":{"197":1}}],["dr",{"0":{"13":1}}],["d",{"2":{"11":1,"80":1,"172":1,"217":1,"245":1,"271":1,"278":1}}],["date",{"2":{"301":1,"306":1,"307":1}}],["dataavailabilitylayerclient",{"2":{"16":1,"139":1}}],["data",{"0":{"14":1,"15":1,"16":1,"28":1,"139":1},"1":{"140":1},"2":{"8":1,"10":2,"12":2,"13":2,"14":8,"15":4,"16":7,"18":3,"20":2,"24":1,"28":1,"35":1,"37":1,"57":1,"96":2,"105":1,"117":1,"118":1,"122":4,"127":1,"128":1,"133":2,"134":1,"135":1,"139":3,"140":1,"143":3,"149":1,"151":1,"158":1,"160":2,"163":2,"164":6,"184":1,"185":1,"197":1,"210":2,"213":1,"219":1,"222":1,"225":1,"234":1,"241":1,"247":1,"250":1,"253":1,"255":2,"264":2,"277":2,"278":1,"279":1,"280":1,"283":1,"291":1,"305":2,"306":2}}],["das",{"2":{"277":1}}],["dastartheight",{"2":{"143":1}}],["danger",{"2":{"177":1,"206":1,"264":1}}],["daemon",{"2":{"170":1}}],["daemonbuilder",{"2":{"45":1}}],["daheight=30",{"2":{"270":1}}],["daheight",{"2":{"143":1}}],["dablocktime",{"2":{"143":2}}],["dapp",{"2":{"131":1}}],["dappsys",{"2":{"179":1}}],["dapps",{"2":{"14":1}}],["darwin",{"2":{"69":1,"195":4}}],["days",{"2":{"284":1}}],["day",{"2":{"9":1,"16":1,"287":2,"296":1,"301":9,"302":15,"306":1,"307":1}}],["da",{"0":{"20":1,"21":1,"22":1,"56":1,"98":1,"189":1,"198":1,"199":1,"257":1,"305":1},"1":{"21":1,"22":1,"23":1,"24":1,"200":1,"201":1},"2":{"7":1,"8":2,"10":2,"16":4,"20":1,"21":3,"22":3,"23":2,"24":1,"35":3,"36":1,"37":1,"54":2,"56":2,"57":1,"59":5,"80":5,"81":3,"82":5,"85":3,"87":3,"96":1,"98":3,"99":1,"100":2,"103":1,"118":2,"122":1,"128":1,"135":1,"139":4,"140":3,"143":1,"152":2,"158":4,"160":1,"177":4,"184":2,"189":9,"190":6,"192":1,"197":1,"198":2,"210":1,"217":1,"245":1,"255":1,"257":3,"258":1,"260":4,"263":1,"270":2,"278":7,"279":3,"293":3,"305":1,"306":2,"308":1}}],["doing",{"2":{"213":1,"286":1,"301":1,"302":2}}],["do",{"2":{"47":1,"48":1,"99":1,"172":1,"180":1,"182":1,"204":1,"217":1,"219":1,"237":1,"245":1,"247":1,"286":2}}],["dotenv",{"2":{"45":2}}],["doubt",{"2":{"27":1}}],["door",{"2":{"12":1}}],["done",{"2":{"45":1,"90":1,"172":1,"191":1,"275":1}}],["don",{"2":{"8":1,"81":1,"138":1,"147":1,"161":1,"195":1,"227":1,"261":1}}],["doesn",{"2":{"116":1}}],["does",{"2":{"8":1,"124":1,"132":1,"221":1,"249":1,"278":1,"306":1}}],["downloading",{"2":{"66":1,"166":1,"195":1}}],["download",{"2":{"63":2,"97":1,"99":2,"122":1,"158":1,"197":1,"236":1,"258":1}}],["down",{"2":{"7":1,"19":1,"127":1,"197":1,"203":1}}],["docker",{"0":{"196":1},"2":{"57":3,"62":1,"196":2,"205":3,"265":1,"279":2}}],["docs",{"2":{"1":1,"133":1,"289":1,"291":1,"294":1,"295":1,"296":1,"300":1}}],["documentation",{"0":{"0":1},"1":{"1":1,"2":1,"3":1,"4":1},"2":{"0":1,"1":1,"3":1,"4":1,"39":1,"43":1,"44":1,"50":1,"117":1,"125":1,"134":1,"291":1}}],["did",{"2":{"302":1,"306":4}}],["didn",{"2":{"83":1,"306":1}}],["display",{"2":{"275":1,"282":1,"306":1}}],["displayed",{"2":{"230":1}}],["disputes",{"2":{"126":1}}],["distros",{"2":{"227":1}}],["disable",{"2":{"177":1}}],["discover",{"2":{"284":1}}],["discovery",{"2":{"145":1}}],["disclaimer",{"2":{"60":1}}],["discrepancies",{"2":{"4":1}}],["diving",{"2":{"263":1}}],["divided",{"2":{"89":1}}],["dive",{"2":{"77":1}}],["dir",{"2":{"43":1,"259":3}}],["directories",{"2":{"291":1}}],["directory",{"0":{"3":1,"291":1},"2":{"27":3,"37":1,"42":1,"43":1,"55":1,"58":1,"63":1,"70":2,"99":1,"101":2,"110":2,"112":1,"113":2,"114":1,"172":1,"178":2,"179":1,"187":1,"188":2,"195":1,"200":2,"204":1,"205":1,"206":1,"214":2,"217":1,"220":1,"236":1,"237":1,"242":2,"245":1,"248":1,"259":2,"275":1,"280":1,"290":2,"291":4,"293":1,"306":2}}],["direct",{"2":{"70":2,"101":2,"107":1,"139":1,"145":1}}],["directly",{"2":{"7":1,"8":1,"14":1,"50":1,"68":1,"122":1}}],["difference",{"2":{"184":1,"185":1}}],["differently",{"2":{"295":1}}],["different",{"2":{"10":1,"18":2,"35":1,"68":1,"74":1,"114":1,"118":1,"123":1,"149":1,"163":1,"164":1,"276":1,"286":1}}],["diff",{"2":{"46":1}}],["difficult",{"2":{"8":1}}],["diagrams",{"2":{"3":1}}],["delegating",{"2":{"295":1}}],["delegate",{"2":{"10":2}}],["deloyment",{"2":{"180":1}}],["dedicated",{"2":{"122":1,"145":1}}],["desc",{"2":{"210":2}}],["describing",{"2":{"291":1}}],["described",{"2":{"206":1}}],["description",{"2":{"109":1}}],["designs",{"2":{"296":1}}],["design",{"0":{"287":1},"2":{"109":1,"139":1,"152":2,"164":1,"285":1,"287":2,"296":1}}],["designed",{"2":{"77":1,"98":1,"257":1,"264":1,"290":2}}],["designate",{"2":{"10":1}}],["decrementcounter",{"2":{"179":2}}],["decreasing",{"2":{"59":1}}],["decision",{"2":{"152":1}}],["decide",{"2":{"145":1,"158":1}}],["decoded",{"2":{"115":1}}],["decentralized",{"2":{"105":1,"120":1,"121":1,"149":2,"158":1}}],["deep",{"2":{"105":1}}],["deeper",{"2":{"77":1,"96":1,"263":1}}],["determine",{"2":{"189":1}}],["detect",{"2":{"152":1}}],["detected",{"2":{"94":1}}],["detail",{"2":{"77":1}}],["details",{"0":{"160":1},"1":{"161":1},"2":{"3":1,"16":1,"18":1,"47":1,"190":1,"210":1}}],["detailed",{"2":{"2":1,"152":1}}],["denom",{"2":{"74":5,"75":3,"100":1,"101":2,"209":2,"261":1,"262":2}}],["de5f15d2ceb85278fa916185a01fba5da604563462893288ec7a8745fb597b96",{"2":{"72":1}}],["defer",{"2":{"149":1}}],["defaults",{"2":{"59":1}}],["default",{"2":{"45":1,"59":1,"70":2,"71":2,"87":1,"100":1,"142":1,"151":1,"160":1,"189":1,"195":2,"214":1,"236":1,"242":1,"260":1,"278":1,"280":1,"291":1}}],["definition",{"2":{"291":1}}],["definitions",{"2":{"44":1}}],["defining",{"2":{"48":1}}],["defined",{"2":{"47":2,"81":1,"294":1,"295":1,"300":1}}],["defines",{"2":{"16":2,"81":1,"220":1,"222":1,"248":1,"250":1,"296":1}}],["define",{"2":{"7":2,"8":1,"43":1,"219":2,"247":2}}],["derive",{"2":{"44":4,"47":1}}],["dep",{"2":{"295":1}}],["dependency",{"0":{"166":1,"193":1},"1":{"167":1,"168":1,"169":1,"194":1,"195":1,"196":1,"197":1,"198":1},"2":{"138":2,"295":2}}],["dependencies",{"0":{"47":1,"97":1,"256":1},"2":{"40":1,"42":1,"45":2,"166":1,"228":1,"294":1}}],["depth",{"2":{"39":1,"101":1,"109":1}}],["deployed",{"2":{"111":1,"112":1,"122":1,"159":1,"181":1,"182":2,"208":2}}],["deployment",{"0":{"128":1,"180":1,"202":1,"206":1},"1":{"129":1,"130":1,"131":1,"132":1,"203":1,"204":1,"205":1,"206":1},"2":{"39":1,"114":2,"122":1,"206":1,"273":2}}],["deploy",{"0":{"112":1,"113":1,"114":1,"273":1},"1":{"114":1},"2":{"7":1,"18":1,"105":2,"113":1,"114":1,"118":1,"122":2,"140":1,"149":1,"163":1,"164":1,"177":1,"180":1,"181":1,"182":1,"206":3,"207":1,"264":1,"271":2,"273":2}}],["deploying",{"0":{"109":1,"181":1,"182":1,"183":1,"212":1,"233":1,"240":1},"1":{"110":1,"111":1,"112":1,"184":1,"185":1,"186":1,"187":1,"188":1,"189":1,"190":1,"191":1,"213":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":1,"220":1,"221":1,"222":1,"223":1,"224":1,"234":1,"235":1,"236":1,"237":1,"241":1,"242":1,"243":1,"244":1,"245":1,"246":1,"247":1,"248":1,"249":1,"250":1,"251":1,"252":1},"2":{"7":2,"10":1,"18":1,"77":1,"118":2,"120":1,"121":3,"122":2,"125":1,"126":1,"180":1,"182":1,"184":1,"205":1,"236":1}}],["demonstrated",{"2":{"231":1}}],["demonstrate",{"2":{"226":1}}],["demonstrates",{"2":{"96":1}}],["demo",{"0":{"17":1},"2":{"13":1,"17":1,"53":1}}],["demand",{"2":{"10":1}}],["debug",{"2":{"9":1,"70":2,"101":2,"137":1}}],["degree",{"2":{"8":1}}],["devices",{"2":{"148":1}}],["devnet",{"0":{"212":1,"266":1},"1":{"213":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":1,"220":1,"221":1,"222":1,"223":1,"224":1},"2":{"53":1,"63":2,"105":1,"128":1,"185":1,"212":2,"213":1,"216":1,"232":1,"240":1,"244":1,"264":1,"266":2,"277":1,"279":1}}],["developing",{"2":{"77":1,"78":1,"132":1}}],["development",{"0":{"38":1,"178":1},"1":{"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1},"2":{"8":1,"24":1,"40":1,"96":1,"108":1,"148":1,"178":1,"217":1,"227":1,"229":1,"245":1,"255":1,"287":1,"290":1,"291":1}}],["developers",{"2":{"7":2,"8":3,"9":3,"10":1,"12":1,"15":1,"16":1,"88":1,"118":2,"121":3,"122":3,"124":2,"125":2,"126":1,"133":1,"134":1,"164":2,"286":1}}],["developer",{"2":{"7":1,"9":1,"120":1}}],["dev",{"2":{"1":1,"21":1,"45":1,"55":1,"63":1,"66":1,"97":1,"98":1,"99":1,"160":6,"166":1,"194":1,"198":1,"200":1,"214":1,"227":1,"229":1,"236":1,"242":1,"256":1,"257":1,"258":1,"275":1,"282":1,"305":1}}],["b",{"2":{"306":5}}],["b๏ฟฝ",{"2":{"270":1}}],["b917289ec7566b57b2d0ec759f2e703dbd652f9044362e78c05c4f6df8fd7ac7",{"2":{"72":1}}],["blank",{"2":{"72":1}}],["blob",{"2":{"59":2}}],["blobs",{"2":{"14":1}}],["blockinch",{"2":{"143":1}}],["blockmanager",{"2":{"143":3}}],["blocktime",{"2":{"143":1}}],["blocknumber",{"2":{"115":1}}],["blockhash",{"2":{"115":1}}],["blockretriever",{"2":{"16":1,"139":1}}],["blockspace",{"2":{"12":1,"14":1}}],["blocks",{"0":{"172":1},"1":{"173":1,"174":1,"175":1,"176":1},"2":{"10":1,"16":2,"19":1,"52":2,"57":1,"76":2,"81":2,"91":1,"122":3,"135":3,"139":1,"144":1,"145":1,"147":2,"149":1,"152":3,"172":2,"184":1,"185":1,"189":1,"190":1,"236":1}}],["blocksdk",{"2":{"7":1,"9":1}}],["block",{"0":{"19":1,"143":1,"157":1,"173":1,"174":1,"175":1},"2":{"9":2,"10":1,"14":1,"19":7,"54":1,"56":3,"57":1,"70":2,"77":1,"80":3,"81":1,"82":1,"85":1,"87":1,"100":6,"101":2,"114":1,"115":1,"139":2,"143":10,"144":1,"148":1,"149":1,"152":3,"158":7,"160":10,"172":4,"173":1,"174":3,"175":2,"189":8,"190":1,"260":6,"270":10,"273":1,"279":5,"283":3,"306":7}}],["blockchain",{"2":{"8":3,"9":1,"10":1,"14":1,"18":1,"60":1,"68":1,"96":2,"99":1,"117":1,"118":1,"120":2,"121":1,"122":1,"133":2,"137":1,"144":2,"163":1,"187":1,"219":2,"226":1,"247":2,"255":2,"258":1,"284":1,"290":5,"291":4,"294":1,"300":1,"303":1}}],["blockchains",{"2":{"7":2,"9":1,"68":6,"289":1,"290":1}}],["blog",{"0":{"5":1},"1":{"6":1},"2":{"3":3,"5":1,"116":1,"118":1,"163":1}}],["bit",{"2":{"301":1,"302":1}}],["bitcoin",{"0":{"12":1,"14":1,"15":1,"16":1,"17":1,"162":1,"169":1,"170":1},"1":{"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"170":1,"171":2,"172":2,"173":2,"174":2,"175":2,"176":2,"177":1,"178":1,"179":1,"180":1,"181":1,"182":1},"2":{"6":1,"7":1,"12":6,"13":4,"14":9,"15":3,"16":7,"17":1,"18":3,"151":1,"163":5,"164":7,"169":3,"172":3,"176":1,"177":3,"178":3}}],["bid",{"2":{"101":2}}],["bin",{"2":{"99":2,"167":3,"172":1,"195":2,"215":1,"235":1,"243":1}}],["binded",{"2":{"57":1}}],["binary",{"0":{"65":1},"2":{"27":2,"80":1,"197":1,"199":1,"291":1}}],["big",{"2":{"14":1}}],["bool",{"2":{"301":1}}],["boogas",{"2":{"274":1}}],["booga",{"0":{"273":1},"2":{"271":1,"272":1,"274":2,"276":2}}],["bootstrapping",{"2":{"8":1}}],["bootstrap",{"2":{"7":1,"12":1,"121":1,"122":1,"145":2}}],["body",{"2":{"261":1,"302":2,"303":1,"306":1}}],["bodies",{"2":{"143":1}}],["bonus",{"2":{"138":1}}],["bot",{"2":{"307":1}}],["bottom",{"2":{"111":1}}],["both",{"2":{"10":1,"19":1,"94":1}}],["box",{"2":{"43":2}}],["bar",{"2":{"133":1}}],["barrier",{"2":{"121":1}}],["back",{"0":{"75":1},"2":{"87":1,"208":1}}],["backend",{"0":{"30":1},"2":{"30":2,"31":1,"32":1,"70":2,"74":1,"83":1,"94":1,"101":5,"102":2,"182":1,"206":2,"209":1,"210":2,"261":2,"306":5}}],["bankkeeper",{"2":{"301":1,"302":1,"303":2}}],["bank",{"2":{"74":1,"75":2,"94":1,"101":2,"102":1,"210":2,"261":2,"262":2,"295":5}}],["balances",{"0":{"262":1},"2":{"74":2,"75":5,"101":2,"210":3,"262":3,"295":1}}],["balance",{"2":{"74":1,"75":1,"81":1,"101":4,"262":2}}],["batches",{"2":{"185":1,"190":1}}],["batch",{"2":{"70":2,"101":2}}],["battle",{"2":{"9":1}}],["basename",{"2":{"205":2}}],["baseaccount",{"2":{"160":1}}],["baseurl=http",{"2":{"57":1}}],["base",{"2":{"47":2,"48":3,"306":1}}],["based",{"2":{"10":1,"145":1}}],["basic",{"2":{"37":1,"179":2,"222":1,"250":1,"283":1,"306":1}}],["bash7",{"2":{"270":1}}],["bashtext",{"2":{"224":1,"252":1}}],["bashtx",{"2":{"206":2}}],["bashmodify",{"2":{"220":1,"248":1}}],["bashmake",{"2":{"197":1}}],["bashname",{"2":{"210":1}}],["bashwasmd",{"2":{"208":1,"210":1}}],["bashwget",{"2":{"63":1,"66":1}}],["bashopenssl",{"2":{"189":1,"214":1,"236":1,"242":1,"278":1}}],["bashosmosisd",{"2":{"74":1,"75":1}}],["bashosmo",{"2":{"74":1}}],["bashyour",{"2":{"189":2}}],["bashyarn",{"2":{"1":1,"228":1,"229":1}}],["bashaddress",{"2":{"271":1}}],["bashauth",{"2":{"189":1,"261":1}}],["bashanvil",{"2":{"181":1}}],["bashaccount",{"2":{"101":1,"102":1}}],["bashforge",{"2":{"178":1,"179":1,"181":1,"182":1,"273":1}}],["bashfoundryup",{"2":{"168":1}}],["bashentrypoint",{"2":{"259":1}}],["basherror",{"2":{"210":1}}],["bashethermintd",{"2":{"177":1}}],["bashexport",{"2":{"112":1,"114":2,"172":1,"173":1,"174":1,"177":1,"181":3,"182":1,"261":1,"273":2,"276":1}}],["bash1d7e98aec3085b615c7c71659768fa42e774a87ab5981597e99794d240fb3db5",{"2":{"174":1}}],["bash12",{"2":{"100":1,"260":1}}],["bashbitcoin",{"2":{"169":1,"170":1,"171":1,"173":1,"174":1,"175":2}}],["bashbalances",{"2":{"74":1,"262":2}}],["bashbash",{"2":{"63":1,"66":1,"172":1,"177":1,"200":1,"216":1,"217":1,"236":1,"237":1,"244":1,"245":1}}],["bashsource",{"2":{"168":1}}],["bashsudo",{"2":{"166":2,"169":1,"205":2}}],["bashver=",{"2":{"167":1}}],["bashversion",{"2":{"69":1}}],["bashprivate",{"2":{"182":1}}],["bashpython3",{"2":{"112":1}}],["bashpip",{"2":{"108":1}}],["bashgit",{"2":{"101":1,"177":1,"197":1,"203":1,"228":1}}],["bashgmd",{"2":{"59":2,"74":1,"75":2,"85":1,"87":1,"94":1,"100":1,"101":2,"224":1,"252":1}}],["bash4980",{"2":{"173":1}}],["bash4",{"2":{"82":1}}],["bashi",{"2":{"283":1}}],["bashinit=",{"2":{"209":1}}],["bashinfo",{"2":{"195":1}}],["bashinterface",{"2":{"48":1}}],["bashignite",{"2":{"187":3,"220":1,"248":1,"289":1,"290":1,"293":3,"295":1,"297":2,"299":2}}],["bashibc",{"2":{"75":1}}],["bash2024",{"2":{"72":1}}],["bashready",{"2":{"229":1}}],["bashregister=",{"2":{"210":1}}],["bashrustup",{"2":{"195":1}}],["bashrust",{"2":{"195":1}}],["bashrm",{"2":{"176":1,"215":1,"235":1,"243":1}}],["bashrc",{"2":{"167":3,"168":1}}],["bashrly",{"2":{"69":1,"70":1,"71":1,"72":3,"73":1,"101":7}}],["bashrollkit",{"2":{"23":1,"188":1,"190":1,"259":1,"260":1,"261":2,"262":2,"282":1,"283":1,"306":9}}],["bashkeyname",{"2":{"67":2}}],["bashconfirm",{"2":{"306":1}}],["bashcode",{"2":{"208":1,"306":1}}],["bashcargo",{"2":{"204":1}}],["bashcast",{"2":{"115":2,"181":2,"182":2,"274":2}}],["bashcalldata=$",{"2":{"115":1}}],["bashcd",{"2":{"63":2,"65":1,"69":1,"83":1,"110":2,"114":3,"187":1,"258":1,"267":1,"269":1,"272":1,"273":1,"275":2,"279":1,"280":1,"291":1}}],["bashcurl",{"2":{"21":1,"63":1,"97":1,"168":1,"194":1,"195":1,"198":1,"227":1,"256":1,"257":1,"268":1,"282":1,"289":1,"305":1}}],["bashdeip",{"2":{"210":1}}],["bashdocker",{"2":{"63":1,"266":1,"278":1}}],["bashda",{"2":{"57":1,"189":2}}],["bash3",{"2":{"57":1}}],["bash",{"0":{"200":1},"2":{"19":4,"21":1,"55":1,"57":1,"58":2,"63":1,"76":2,"80":1,"97":1,"98":2,"99":2,"167":3,"168":1,"172":1,"179":1,"194":1,"198":1,"200":1,"210":2,"214":1,"227":1,"236":1,"242":1,"257":1,"258":1,"261":2,"268":1,"279":1,"289":1}}],["begin",{"2":{"270":1}}],["beginner",{"0":{"129":1}}],["beginning",{"2":{"57":1}}],["berachain",{"2":{"264":1,"267":1}}],["being",{"2":{"173":1,"306":1}}],["benefit",{"2":{"122":1}}],["below",{"2":{"17":1,"25":1,"41":1,"42":2,"44":1,"106":1,"173":1,"195":2,"206":1,"210":2,"278":1}}],["behavior",{"2":{"16":1,"109":1}}],["because",{"2":{"81":1,"101":1,"108":2,"145":1,"205":1,"221":1,"249":1,"290":1,"306":2}}],["became",{"2":{"14":1}}],["become",{"2":{"14":2}}],["becoming",{"2":{"8":1}}],["beta",{"0":{"233":1},"1":{"234":1,"235":1,"236":1,"237":1},"2":{"184":1,"185":2,"189":3,"190":1,"191":1,"225":1,"234":1,"236":1,"238":1,"253":1,"277":1}}],["better",{"2":{"14":1,"206":1,"286":1}}],["between",{"2":{"8":1,"10":3,"60":1,"66":1,"68":3,"72":1,"73":1,"126":1,"139":1,"145":1,"152":2,"199":1,"295":1}}],["best",{"0":{"9":1}}],["been",{"2":{"8":1,"59":1,"74":1,"75":1,"158":1,"181":1,"182":1,"210":1,"220":1,"248":1,"264":1,"301":1,"302":1,"306":2}}],["be",{"0":{"11":1},"2":{"7":1,"9":2,"10":1,"16":2,"18":1,"19":1,"39":1,"41":1,"43":1,"44":1,"53":1,"54":1,"59":4,"72":1,"74":1,"92":1,"100":2,"101":1,"106":1,"107":1,"109":1,"114":1,"115":1,"116":1,"118":2,"121":4,"123":1,"125":1,"127":1,"135":1,"137":1,"138":1,"139":2,"140":1,"142":1,"148":1,"152":1,"158":3,"160":2,"174":1,"175":1,"178":1,"188":1,"189":1,"192":1,"195":1,"196":1,"205":1,"227":1,"230":1,"259":1,"261":1,"264":1,"275":1,"277":3,"278":1,"287":2,"290":1,"295":1,"298":2,"301":3,"302":3,"303":1,"307":1}}],["before",{"2":{"2":1,"39":1,"54":1,"63":1,"85":1,"99":1,"158":1,"184":1,"185":1,"195":1,"215":1,"227":1,"235":1,"243":1,"261":1,"265":1,"266":1,"275":1,"277":1,"279":1,"286":1,"287":1,"292":1,"306":2}}],["buffer",{"2":{"219":2,"247":2,"291":1}}],["business",{"2":{"121":1}}],["budget",{"2":{"12":1,"45":1}}],["button",{"2":{"92":1,"230":1}}],["but",{"2":{"10":1,"12":1,"66":1,"105":1,"108":1,"121":1,"138":1,"145":1,"153":1,"182":1,"201":1,"286":1,"287":1,"289":1,"290":1,"291":1}}],["bugs",{"2":{"7":1,"8":1,"78":1,"132":1}}],["builds",{"2":{"98":1,"257":1,"305":1}}],["build",{"0":{"9":1,"126":1},"2":{"3":1,"7":1,"18":2,"21":1,"45":1,"76":1,"96":1,"99":1,"105":1,"108":1,"121":1,"125":1,"132":1,"164":2,"166":1,"167":1,"191":1,"192":1,"197":1,"255":1,"284":1,"285":1,"290":3,"293":1,"295":1,"305":1}}],["building",{"0":{"1":1,"27":1,"99":1,"128":1,"187":1,"258":1,"306":1},"1":{"129":1,"130":1,"131":1,"132":1},"2":{"7":1,"8":1,"11":1,"76":1,"96":2,"127":1,"128":1,"255":2,"285":1,"289":1,"292":1}}],["built",{"2":{"1":1,"16":1,"103":1,"109":2,"112":1,"122":1,"125":1,"191":1,"192":1,"199":1,"212":1,"225":1,"240":1,"253":1,"263":1,"308":1}}],["briefly",{"2":{"123":1}}],["bring",{"2":{"122":1,"124":1}}],["bridge",{"2":{"8":1,"57":2}}],["bridging",{"2":{"8":1}}],["brew",{"2":{"99":1}}],["break",{"0":{"11":1}}],["broadcasting",{"2":{"144":1,"261":1,"306":1}}],["broadcast",{"2":{"70":2,"101":2,"114":2,"181":1,"182":1,"273":2}}],["broccoli",{"2":{"45":1}}],["browser",{"2":{"161":1,"226":1,"230":1}}],["browse",{"2":{"39":1}}],["brought",{"2":{"7":1}}],["branches",{"2":{"9":1,"138":1}}],["branch",{"2":{"2":3,"101":1,"267":1,"272":1,"279":1}}],["byte",{"2":{"301":3,"302":4}}],["bytecode",{"2":{"205":1}}],["bytes",{"2":{"189":2}}],["by",{"2":{"3":1,"7":5,"8":1,"9":1,"12":1,"14":3,"16":1,"18":1,"24":1,"37":1,"44":1,"45":1,"48":1,"57":1,"59":4,"66":1,"72":1,"80":2,"81":1,"84":1,"99":1,"105":1,"109":1,"111":1,"112":1,"117":2,"118":1,"122":5,"133":2,"140":1,"142":3,"143":1,"148":1,"149":1,"151":1,"152":2,"153":1,"159":1,"163":1,"169":1,"172":1,"181":1,"182":1,"187":1,"188":1,"189":3,"190":1,"192":2,"194":1,"208":2,"209":1,"210":2,"214":1,"216":1,"220":1,"223":1,"236":2,"242":1,"244":1,"248":1,"251":1,"259":1,"264":1,"277":2,"278":1,"281":1,"282":1,"290":1,"291":1,"293":1,"294":1,"298":1,"302":1,"306":2,"307":1}}],["ctx",{"2":{"222":3,"250":3,"301":4,"302":6,"303":1}}],["ctrl+c",{"2":{"172":1}}],["c147257485b72e7ffa5fdb943c94ce951a37817554339586ffd645ad2aa397c3",{"2":{"210":1}}],["csrjjpfudtnftzgho69v0d",{"2":{"189":1}}],["cmd",{"2":{"188":1,"259":3,"291":1}}],["cpu",{"2":{"165":1}}],["cp",{"2":{"114":2,"275":1}}],["circom",{"2":{"110":1,"114":1,"115":1}}],["circuit",{"0":{"109":1,"112":1},"1":{"110":1,"111":1,"112":1},"2":{"105":3,"109":2,"110":6,"111":6,"112":6,"114":1,"115":2,"116":1}}],["c3e53d20bc7a4cc993b17c7971f8ecd06a433c10b6a96f4c4c3714f0624c56da",{"2":{"100":1,"101":1,"102":1}}],["c",{"2":{"84":1,"87":1,"99":1,"167":1,"236":1,"258":1}}],["c053d637cca2a2ba030e2c5ee1b28a16f71ccb0e45e8be52766dc1b241b77878",{"2":{"74":1}}],["cb1fa1d3309513fc6c8599606defe75164f4cae2abd101d78133b287862a5aca",{"2":{"72":1}}],["cd",{"2":{"55":1,"65":1,"69":1,"83":1,"98":1,"99":1,"101":1,"167":1,"177":1,"178":1,"197":1,"203":2,"220":1,"228":1,"248":1,"267":1,"272":1}}],["cutting",{"2":{"122":1}}],["cumulativegasused",{"2":{"115":1}}],["curl",{"2":{"98":1,"99":1,"166":1,"189":1,"227":1,"258":1,"279":1}}],["currentcount",{"2":{"302":2}}],["currenttimeguesserhashstring",{"2":{"302":4}}],["currenttimeguesserhash",{"2":{"302":2}}],["currenttimeguesserbytes",{"2":{"302":2}}],["currenttimehashstring",{"2":{"301":3,"302":2}}],["currenttimehash",{"2":{"301":2,"302":2}}],["currenttimebytes",{"2":{"301":2,"302":2}}],["currenttime",{"2":{"301":2,"302":3}}],["currently",{"2":{"127":2,"132":2,"142":1,"144":1,"148":1,"153":1,"177":1,"222":1,"250":1,"301":1,"306":1}}],["current",{"2":{"44":2,"152":2,"173":1,"188":1,"195":2,"259":1,"264":1,"287":1,"301":4,"302":7,"306":1,"307":1}}],["customizing",{"2":{"291":1}}],["customizability",{"0":{"120":1},"2":{"122":1}}],["customizable",{"2":{"117":1,"122":1,"133":2}}],["customize",{"2":{"10":1,"18":2,"93":1,"122":1,"133":1,"163":1,"164":2}}],["custom",{"2":{"9":1,"15":1,"17":1,"44":1,"66":1,"92":1,"112":1,"124":1,"163":1,"291":1}}],["cfg",{"2":{"43":2}}],["cw1",{"2":{"48":2}}],["cw20",{"2":{"47":3,"48":6}}],["cwenv",{"2":{"43":1}}],["cw",{"0":{"38":1,"42":1},"1":{"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1},"2":{"39":6,"40":2,"41":1,"42":4,"43":2,"44":7,"45":1,"46":2,"47":1,"48":2,"50":2,"77":1,"203":3,"204":1,"205":2,"206":4,"207":1}}],["certain",{"2":{"287":1}}],["censorship",{"2":{"149":1}}],["centralized",{"2":{"34":1,"127":1,"149":1}}],["celenium",{"2":{"160":1,"236":2,"280":1}}],["celestiaorg",{"2":{"177":1}}],["celestia1jqevcsld0dqpjp3csfg7alkv3lehvn8u04ymsu",{"2":{"101":2}}],["celestia",{"0":{"101":1,"140":1,"183":1,"185":1,"190":1,"212":1,"213":1,"233":1,"234":1,"240":1,"241":1,"266":1,"277":1},"1":{"184":1,"185":1,"186":1,"187":1,"188":1,"189":1,"190":1,"191":1,"213":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":1,"220":1,"221":1,"222":1,"223":1,"224":1,"234":1,"235":1,"236":1,"237":1,"241":1,"242":1,"243":1,"244":1,"245":1,"246":1,"247":1,"248":1,"249":1,"250":1,"251":1,"252":1,"278":1,"279":1,"280":1},"2":{"15":1,"35":1,"52":1,"53":1,"57":8,"63":2,"81":4,"83":2,"100":2,"101":4,"105":2,"116":1,"118":2,"122":1,"128":2,"131":1,"132":1,"135":1,"140":5,"184":2,"185":1,"189":3,"190":1,"191":1,"212":1,"213":1,"217":1,"225":1,"232":1,"234":2,"236":2,"237":1,"238":1,"240":1,"241":1,"245":1,"253":1,"264":2,"266":2,"277":2,"278":10,"279":2,"280":1,"308":1}}],["cel",{"2":{"83":1}}],["cast",{"2":{"181":2,"182":2,"276":1}}],["cases",{"2":{"59":1,"122":1,"158":1}}],["case",{"2":{"15":1,"35":1,"80":1,"81":1,"87":1,"122":1,"135":1,"158":2,"176":1,"208":1,"295":1}}],["capabilities",{"2":{"134":1,"144":1,"295":1}}],["capability=2",{"2":{"57":1}}],["capability",{"2":{"57":1}}],["capital",{"2":{"121":1}}],["calculate",{"2":{"100":1}}],["calldata=true",{"2":{"111":1}}],["calldata",{"2":{"111":15,"112":3,"115":3}}],["calls",{"2":{"44":1,"219":2,"247":2}}],["call",{"2":{"16":1,"115":2,"128":1,"181":2,"182":2,"274":1}}],["called",{"2":{"16":1,"205":1,"217":1,"237":1,"245":1,"290":1,"299":1,"300":1}}],["cache",{"2":{"70":1,"101":1,"205":4}}],["cat",{"2":{"115":1}}],["catalog",{"2":{"45":1}}],["catch",{"2":{"39":1}}],["cargo",{"0":{"42":1},"2":{"40":1,"42":1,"48":4,"195":5,"203":1,"205":2}}],["canary",{"2":{"160":1}}],["candidate",{"2":{"72":2,"229":1}}],["canonical",{"2":{"7":1}}],["can",{"0":{"123":1,"127":1},"1":{"124":1,"125":1,"126":1},"2":{"7":2,"8":1,"9":2,"14":2,"15":1,"16":3,"19":1,"27":1,"42":1,"43":2,"44":1,"45":2,"46":1,"48":1,"49":1,"50":1,"54":1,"56":1,"59":2,"63":2,"66":1,"68":2,"72":1,"73":1,"80":2,"83":1,"84":1,"88":1,"93":2,"94":2,"99":1,"100":1,"106":1,"110":1,"115":2,"117":1,"118":3,"121":2,"122":4,"125":2,"127":1,"128":1,"137":2,"138":1,"139":2,"140":1,"142":1,"148":2,"149":1,"152":4,"158":2,"160":3,"169":1,"176":1,"179":2,"180":1,"181":4,"182":5,"185":1,"189":1,"190":1,"192":1,"194":1,"200":3,"201":1,"204":1,"206":2,"207":1,"208":1,"210":1,"213":1,"214":3,"216":1,"229":1,"234":1,"236":1,"241":1,"242":3,"244":1,"259":1,"260":1,"265":1,"266":1,"271":1,"275":2,"277":3,"278":2,"284":1,"287":1,"289":2,"294":1,"296":1,"301":2,"302":3,"306":2,"307":7}}],["checked",{"2":{"302":1}}],["checking",{"0":{"262":1},"2":{"282":1}}],["checks",{"2":{"143":1,"158":1,"302":1}}],["checktx",{"2":{"142":1}}],["checkout",{"2":{"65":1,"69":1,"177":1,"197":1,"267":1,"272":1,"279":1}}],["check",{"2":{"35":1,"74":1,"75":1,"115":1,"116":1,"132":1,"151":1,"167":1,"169":1,"173":1,"174":1,"192":1,"222":1,"250":1,"272":1,"277":1,"289":1,"301":4,"302":5,"306":1}}],["cheaper",{"2":{"14":1}}],["choosing",{"2":{"19":1}}],["choose",{"2":{"10":3,"45":1,"92":1,"127":1}}],["choice",{"2":{"10":2,"149":3}}],["characters",{"2":{"189":1,"214":2,"236":2,"242":2,"301":1,"302":3,"306":1}}],["challenging",{"2":{"121":1}}],["challenges",{"2":{"121":1,"122":1}}],["changing",{"2":{"82":1,"87":1}}],["changed",{"2":{"19":1,"68":1,"275":1}}],["change",{"0":{"19":1},"2":{"39":1,"63":1,"66":1,"77":1,"138":1,"178":1,"182":1,"275":2,"277":1,"279":1,"280":1,"289":1,"300":1}}],["changes",{"2":{"2":4,"219":1,"247":1}}],["channel",{"0":{"72":1},"2":{"72":17,"74":3,"75":1,"100":3,"101":6,"143":2}}],["channels",{"2":{"68":2,"101":1,"143":1}}],["chain=regtest",{"2":{"170":1}}],["chainflag=",{"2":{"26":1}}],["chains",{"2":{"8":1,"50":1,"60":1,"66":1,"70":1,"72":1,"101":1,"121":2,"122":1,"128":1}}],["chain",{"0":{"28":1,"36":1,"63":1,"74":1,"75":1,"115":1,"171":1,"215":1,"216":1,"235":1,"243":1,"244":1,"288":1,"290":1,"304":1,"306":1},"1":{"289":1,"290":1,"291":1,"305":1,"306":1,"307":1},"2":{"7":3,"10":1,"11":2,"14":1,"18":2,"19":1,"25":2,"26":5,"27":2,"28":1,"29":2,"32":1,"35":1,"36":1,"37":1,"43":2,"45":4,"54":1,"63":3,"66":1,"67":2,"70":2,"71":1,"72":20,"74":4,"75":1,"76":1,"80":2,"81":1,"82":1,"84":1,"85":1,"87":2,"94":1,"101":5,"102":1,"105":1,"112":1,"113":1,"115":1,"118":1,"121":2,"122":1,"125":2,"132":1,"158":3,"160":2,"176":1,"177":3,"182":2,"187":3,"206":2,"209":1,"210":1,"220":1,"221":1,"248":1,"249":1,"258":1,"259":3,"261":1,"269":1,"271":1,"290":2,"291":1,"293":1,"295":1,"306":7,"307":2}}],["critical",{"2":{"121":1,"261":1,"306":1}}],["crates",{"2":{"47":1,"48":1}}],["crater",{"2":{"45":1}}],["crate",{"0":{"48":1},"2":{"39":1,"40":1,"43":6,"44":1,"45":1,"48":2}}],["cross",{"2":{"39":1,"206":1,"300":1}}],["creator",{"2":{"210":1,"301":2,"302":3,"306":1}}],["creative",{"2":{"189":1,"214":1,"236":1,"242":1,"278":1}}],["creation",{"2":{"43":1}}],["creating",{"0":{"35":1,"43":1,"48":1,"94":1,"294":1},"1":{"295":1},"2":{"40":2,"43":1,"68":1,"100":1,"163":1,"260":1,"270":1,"283":1,"290":3,"296":1,"298":1}}],["createwallet",{"2":{"171":1}}],["created",{"2":{"72":2,"145":1,"158":1,"178":1,"210":1,"220":1,"248":1,"298":1,"302":1}}],["creates",{"2":{"27":1,"72":1,"297":1}}],["create",{"0":{"25":1,"68":1,"71":1,"72":1,"171":1,"220":1,"248":1},"1":{"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1},"2":{"2":3,"12":1,"35":1,"48":1,"60":1,"63":1,"66":1,"72":3,"80":1,"89":1,"92":1,"94":1,"101":3,"105":1,"118":1,"124":1,"125":1,"163":3,"164":1,"171":1,"178":1,"179":1,"187":1,"219":1,"220":3,"247":1,"248":3,"291":1,"293":1,"297":2,"300":1,"301":2,"302":2,"307":2}}],["crypto",{"2":{"7":1,"261":3,"301":3,"302":3}}],["clang",{"2":{"166":1}}],["classes",{"2":{"118":1}}],["clay",{"2":{"67":2,"71":2}}],["claimed",{"2":{"57":1}}],["clarity",{"2":{"2":1}}],["clean",{"2":{"39":1,"197":1}}],["clear",{"0":{"215":1,"235":1,"243":1},"2":{"2":1,"14":1,"176":1}}],["cloning",{"0":{"228":1}}],["clone",{"0":{"55":1,"110":1,"267":1},"2":{"1":1,"2":2,"55":1,"65":1,"69":1,"101":1,"110":2,"177":2,"197":1,"203":1,"228":2,"267":2,"272":2}}],["cloud",{"2":{"160":2}}],["close",{"2":{"14":1,"75":1}}],["clip",{"2":{"45":1}}],["cli",{"0":{"282":1},"2":{"9":1,"37":1,"63":1,"137":1,"160":1,"169":1,"171":1,"172":4,"173":1,"174":1,"175":2,"186":1,"207":1,"220":2,"222":3,"248":2,"250":3,"256":1,"277":2,"281":1,"283":1,"285":1,"289":3,"290":2,"291":1,"302":1,"305":1}}],["clients",{"2":{"7":1,"8":1,"60":2,"68":1,"72":1,"101":1,"122":1,"135":1,"149":1}}],["client",{"2":{"7":1,"9":1,"16":1,"45":1,"57":3,"72":14,"100":5,"101":2,"118":2,"137":1,"138":1,"220":2,"222":2,"229":1,"248":2,"250":2,"260":5}}],["click",{"2":{"7":1,"92":1,"149":1,"161":1,"230":1}}],["copies",{"2":{"200":1,"214":1,"242":1}}],["copy",{"2":{"34":1,"114":2,"200":1,"214":1,"242":1}}],["cool",{"0":{"109":1},"1":{"110":1,"111":1,"112":1}}],["coins",{"2":{"261":1,"301":1,"302":1,"303":1}}],["coinbase=$",{"2":{"172":1}}],["coin",{"2":{"70":2,"101":2,"295":1}}],["covers",{"2":{"80":1,"81":1,"184":1}}],["cover",{"2":{"51":1,"96":1,"135":1,"255":1}}],["coyote",{"2":{"45":1}}],["collection",{"2":{"48":1}}],["collecting",{"0":{"33":1}}],["collect",{"2":{"33":2,"135":1,"160":1}}],["corner",{"2":{"92":1}}],["correct",{"2":{"279":1,"287":2,"302":2,"306":1,"307":1}}],["correctly",{"2":{"27":1,"287":1,"302":2}}],["correlation",{"2":{"139":1}}],["corresponding",{"2":{"43":1,"74":1,"109":1,"143":1}}],["core",{"2":{"8":1,"16":1,"59":2,"72":8,"163":1,"165":1,"169":3,"170":1,"171":1,"172":4,"173":1,"174":1,"175":2,"278":1,"300":2}}],["codebase",{"2":{"285":1,"287":1,"292":1,"307":1}}],["codes",{"2":{"222":2,"250":2}}],["codespace",{"2":{"82":3,"210":1,"306":1}}],["codecs",{"2":{"70":2,"101":2}}],["code",{"0":{"105":1},"2":{"27":1,"39":3,"43":1,"46":1,"72":1,"81":2,"82":3,"85":1,"102":1,"110":1,"111":7,"112":2,"159":1,"179":2,"180":1,"205":4,"206":1,"208":4,"210":6,"290":1,"294":1,"301":2,"302":2,"303":1,"306":1}}],["counts",{"2":{"302":1}}],["count",{"2":{"39":5,"44":8,"45":5,"179":7,"299":3,"302":12,"306":1}}],["counterscript",{"2":{"180":1,"181":1,"182":1}}],["countertest",{"2":{"179":1}}],["counterparty",{"2":{"72":4}}],["counterquerymsgfns",{"2":{"44":1,"45":1}}],["counterexecutemsgfns",{"2":{"44":1,"45":1}}],["countercontract",{"2":{"43":3,"45":2}}],["counter",{"2":{"39":3,"41":1,"43":2,"44":2,"45":7,"50":1,"178":1,"179":16,"180":4,"181":1,"182":1}}],["council",{"2":{"8":1}}],["could",{"2":{"14":1,"19":1,"123":1,"125":1,"189":1,"214":1,"236":1,"242":1,"259":1,"278":1}}],["couple",{"2":{"10":1}}],["cost",{"2":{"18":1,"115":1}}],["costs",{"2":{"8":1,"122":1}}],["cosmwasm",{"0":{"159":1,"192":1,"193":1,"199":1,"200":1,"202":1,"207":1},"1":{"160":1,"161":1,"193":1,"194":2,"195":2,"196":2,"197":2,"198":2,"199":1,"200":2,"201":2,"202":1,"203":2,"204":2,"205":2,"206":2,"207":1,"208":2,"209":2,"210":2},"2":{"9":1,"17":1,"39":1,"43":1,"130":1,"159":2,"160":1,"192":3,"197":2,"200":3,"201":1,"205":3,"210":2}}],["cosmos17lk3fgutf00pd5s8zwz5fmefjsdv4wvzyg7d74",{"2":{"306":1}}],["cosmossdk",{"2":{"301":1,"302":1}}],["cosmos",{"0":{"125":1,"138":1},"2":{"7":4,"9":4,"10":1,"17":1,"63":3,"69":2,"70":2,"72":4,"81":1,"96":2,"101":3,"117":2,"125":4,"127":1,"128":1,"138":5,"160":2,"192":2,"197":4,"219":3,"231":1,"247":3,"255":2,"261":4,"285":1,"286":3,"289":2,"290":2,"291":2,"294":4,"295":1,"296":3,"300":3,"301":4,"302":4,"306":2,"308":1}}],["convert",{"2":{"302":1}}],["convenience",{"2":{"261":1}}],["convincing",{"2":{"8":1}}],["condition",{"2":{"72":2}}],["conditional",{"2":{"60":2}}],["confirm",{"2":{"261":2,"306":3}}],["confirming",{"2":{"230":1,"306":4}}],["confirmations",{"2":{"149":1}}],["config=",{"2":{"177":1}}],["config",{"0":{"70":1},"2":{"34":4,"70":4,"101":3,"166":1,"170":1,"258":1,"259":4,"283":3,"291":1}}],["configurable",{"2":{"143":1}}],["configuration",{"2":{"3":1,"27":1,"70":1,"187":2,"188":1,"189":1,"291":1,"293":1}}],["configuring",{"0":{"22":1,"34":1,"188":1,"189":1,"259":1},"2":{"37":1,"96":1,"190":1,"255":1}}],["configures",{"2":{"59":2}}],["configured",{"2":{"59":2,"145":1}}],["configure",{"0":{"59":1},"2":{"10":1,"20":1,"24":1,"77":1,"101":1,"195":1}}],["conflicts",{"2":{"66":1}}],["congrats",{"2":{"87":1,"92":1,"94":1}}],["congratulations",{"0":{"116":1,"270":1},"2":{"58":1,"103":1,"112":1,"116":1,"177":1,"191":1,"225":1,"231":1,"238":1,"253":1,"263":1,"280":1,"308":1}}],["congestion",{"2":{"59":1}}],["console",{"2":{"171":1}}],["consist",{"2":{"301":1,"302":1}}],["consists",{"2":{"152":1}}],["consider",{"2":{"158":1,"231":1,"287":1}}],["constructor",{"2":{"179":1}}],["const",{"2":{"43":1,"45":1}}],["constants",{"2":{"21":1,"97":1,"98":1,"227":2,"256":1,"257":1,"282":1,"289":1,"305":1}}],["consensus",{"2":{"7":1,"8":1,"15":2,"18":1,"34":1,"81":1,"105":1,"121":1,"122":1,"158":1,"160":1,"264":1}}],["connected",{"0":{"190":1},"2":{"230":1}}],["connects",{"2":{"145":1,"228":1}}],["connecting",{"0":{"101":1,"230":1},"2":{"184":1,"226":2,"231":1,"308":1}}],["connection=consensus",{"2":{"100":1,"260":1}}],["connection=mempool",{"2":{"100":1,"260":1}}],["connection=snapshot",{"2":{"100":1,"260":1}}],["connection=query",{"2":{"100":1,"260":1}}],["connection",{"0":{"60":1,"68":1},"1":{"61":1,"62":1,"63":1,"64":1,"65":1,"66":1,"67":1,"68":1,"69":2,"70":2,"71":2,"72":2,"73":2,"74":2,"75":2},"2":{"60":1,"63":1,"66":1,"72":9,"77":1,"100":1,"101":3,"127":1,"189":1,"230":1}}],["connections",{"2":{"57":1,"68":1,"100":1,"260":1}}],["connect",{"0":{"20":1,"22":1},"1":{"21":1,"22":1,"23":1,"24":1},"2":{"22":1,"128":1,"197":1,"227":1,"230":3,"278":1}}],["conclude",{"2":{"285":1}}],["conclusion",{"0":{"18":1,"284":1}}],["concept",{"2":{"118":1}}],["concise",{"2":{"2":1}}],["context",{"2":{"222":5,"250":5,"301":3,"302":3,"303":1}}],["contents",{"0":{"6":1},"2":{"115":1,"200":1,"214":1,"242":1,"302":1}}],["content",{"2":{"2":1,"5":1,"6":1,"43":1,"70":1}}],["continue",{"2":{"195":1,"292":1,"302":1}}],["continuation",{"2":{"107":1}}],["contained",{"2":{"296":1}}],["contain",{"2":{"139":1,"219":1,"247":1}}],["contains",{"2":{"108":1,"110":1,"143":1,"152":1,"159":1,"221":1,"222":2,"249":1,"250":2,"291":1,"294":1,"300":1,"301":1,"302":1}}],["contribute",{"2":{"134":1}}],["contributions",{"2":{"2":1}}],["contribution",{"0":{"2":1},"2":{"2":2}}],["contract=$",{"2":{"210":1}}],["contracting",{"2":{"192":1}}],["contracttest",{"2":{"179":1}}],["contractaddress",{"2":{"115":1}}],["contractwrapper",{"2":{"43":1}}],["contracts",{"0":{"49":1,"93":1},"2":{"9":1,"39":4,"40":1,"43":1,"47":1,"48":3,"49":1,"50":1,"89":1,"93":1,"114":4,"177":1,"179":1,"192":1,"203":3,"204":2,"205":2,"206":3,"208":2,"210":2,"273":1,"275":2}}],["contract",{"0":{"41":1,"113":1,"115":1,"179":1,"202":1,"203":1,"205":1,"206":1,"207":1,"208":1,"209":1,"210":1,"273":1,"274":1},"1":{"42":1,"43":1,"44":1,"45":1,"114":1,"203":1,"204":1,"205":1,"206":1,"208":1,"209":1,"210":1},"2":{"8":1,"39":2,"40":1,"41":2,"42":2,"43":13,"44":2,"45":5,"47":2,"48":1,"50":1,"77":1,"105":1,"111":10,"112":3,"113":1,"114":10,"115":4,"117":1,"118":1,"120":2,"122":2,"133":2,"178":1,"179":4,"180":3,"181":5,"182":6,"192":3,"196":1,"203":2,"205":1,"206":3,"207":2,"208":3,"209":2,"210":11,"271":1,"272":1,"273":7,"274":1,"275":5,"276":1}}],["controls",{"2":{"143":1}}],["controlled",{"2":{"24":1}}],["control",{"0":{"8":1},"2":{"84":1,"87":1,"149":1,"236":1}}],["coming",{"2":{"127":1,"290":1}}],["com",{"2":{"63":3,"65":1,"69":1,"101":2,"110":1,"177":1,"187":1,"197":3,"203":1,"228":1,"264":1,"267":1,"272":1,"289":1,"293":1,"301":3,"302":3}}],["combination",{"2":{"10":1}}],["combine",{"2":{"7":1}}],["come",{"2":{"8":1,"67":2,"71":2,"122":1,"142":1,"149":1}}],["comes",{"2":{"7":1,"8":1,"9":1,"290":2}}],["cometbft",{"2":{"7":1,"9":2,"100":1,"118":1,"137":1,"138":3,"142":1,"144":1,"197":2,"260":1,"285":1,"301":2,"302":2,"306":1}}],["computational",{"2":{"120":1,"122":2}}],["compiling",{"2":{"114":2,"166":1,"179":2,"196":1,"273":2}}],["compiled",{"2":{"203":1,"205":1,"229":1,"291":1}}],["compiler",{"2":{"114":1,"179":1,"273":1}}],["compile",{"0":{"203":1},"2":{"111":1,"112":3,"203":1,"205":1,"303":1}}],["compat=1",{"2":{"197":1}}],["compatibility",{"2":{"9":1,"63":1,"137":1}}],["compatible",{"2":{"7":1,"10":1,"39":1,"115":1,"118":2,"124":1,"125":1}}],["comparing",{"2":{"152":1}}],["compare",{"2":{"115":1}}],["compact",{"2":{"105":1}}],["complex",{"2":{"121":1}}],["complexity",{"2":{"41":1}}],["completions",{"2":{"167":1}}],["completion",{"2":{"152":1}}],["completing",{"2":{"73":1}}],["completed",{"2":{"184":1,"212":1,"227":1,"232":1,"240":1}}],["complete",{"2":{"46":1,"53":1,"90":1,"198":1}}],["component",{"2":{"195":2}}],["components",{"0":{"141":1},"1":{"142":1,"143":1,"144":1,"145":1},"2":{"10":1,"122":3,"134":1,"135":1,"286":1}}],["composability",{"2":{"8":1,"149":1}}],["compelled",{"2":{"8":1}}],["comprehensive",{"2":{"0":1,"134":1,"184":1}}],["comma",{"2":{"220":1,"248":1}}],["commands",{"2":{"72":1,"167":1,"169":1,"178":1,"195":2,"200":1,"203":1,"206":1,"214":1,"242":1,"289":1,"290":1,"302":1}}],["command",{"2":{"19":1,"23":1,"27":2,"36":1,"37":1,"42":1,"48":1,"70":1,"71":1,"72":2,"74":1,"75":1,"76":2,"80":2,"99":1,"112":1,"160":1,"175":1,"176":1,"179":1,"187":2,"189":2,"200":1,"204":1,"205":1,"206":4,"214":1,"216":1,"220":1,"222":2,"224":1,"227":1,"229":1,"236":1,"242":1,"244":1,"248":1,"250":2,"252":1,"276":1,"278":2,"282":1,"289":1,"290":3,"293":2,"295":1,"297":1,"306":2}}],["comment",{"2":{"197":1}}],["common",{"2":{"173":1}}],["communicates",{"2":{"199":1}}],["communicate",{"2":{"68":1,"143":1,"154":1}}],["communication",{"2":{"60":1,"68":1,"145":1}}],["communities",{"2":{"18":1,"122":1}}],["community",{"2":{"2":1,"4":1,"7":1,"8":1,"121":1}}],["commit",{"2":{"2":3,"69":1,"160":2,"282":1}}],["switch",{"2":{"267":1}}],["swcmin",{"2":{"229":1}}],["swc",{"2":{"229":1}}],["sweet",{"2":{"45":1}}],["snap",{"2":{"169":1}}],["snapd",{"2":{"166":1}}],["ssf",{"2":{"195":1}}],["ssd",{"2":{"165":1}}],["ssl",{"2":{"21":1,"97":1,"98":1,"99":1,"194":1,"198":1,"227":1,"256":1,"257":1,"258":1,"282":1,"305":1}}],["skills",{"2":{"163":1}}],["skip",{"2":{"7":1,"9":1,"117":1,"127":1,"187":1,"201":1}}],["system",{"2":{"152":1}}],["systems",{"2":{"122":1,"195":1}}],["symbol",{"2":{"101":2}}],["syncloop",{"2":{"143":3}}],["syncing",{"2":{"139":1}}],["sync",{"2":{"72":2,"185":1,"213":1,"234":1,"241":1,"278":1,"306":1}}],["syncs",{"2":{"52":2}}],["synced",{"2":{"16":1,"234":1,"241":1,"277":1,"278":1}}],["small",{"2":{"196":1,"205":1}}],["smart",{"0":{"113":1,"203":1,"205":1},"1":{"114":1},"2":{"9":1,"39":2,"41":1,"43":1,"77":1,"105":1,"111":10,"112":3,"113":1,"114":2,"115":1,"117":1,"118":1,"120":2,"122":2,"133":2,"177":1,"178":1,"180":1,"182":1,"192":4,"196":1,"203":1,"205":1,"206":2,"210":2,"271":1,"272":1,"273":2,"275":1}}],["smoothly",{"2":{"68":1}}],["src",{"2":{"48":1,"72":3,"101":3,"114":3,"178":1,"179":2,"180":1,"275":1}}],["sleep",{"2":{"172":1}}],["slashing",{"2":{"158":1,"294":1}}],["slow",{"2":{"19":1}}],["slightly",{"2":{"14":1}}],["slinky",{"2":{"7":1,"9":1}}],["say",{"0":{"219":1,"247":1},"1":{"220":1,"221":1,"222":1,"223":1,"224":1,"248":1,"249":1,"250":1,"251":1,"252":1},"2":{"219":1,"247":1}}],["save",{"2":{"80":1,"87":1,"111":3,"112":2,"115":1}}],["satisfy",{"2":{"16":1}}],["sample",{"2":{"89":1,"94":1}}],["samplingstats",{"2":{"277":1}}],["sampling",{"2":{"8":1}}],["same",{"2":{"7":1,"8":1,"52":1,"57":1,"59":1,"81":1,"101":1,"126":1,"145":1,"159":1,"210":1,"220":1,"221":1,"248":1,"249":1,"306":4}}],["side",{"2":{"231":1}}],["similarly",{"2":{"125":1}}],["similar",{"2":{"80":1,"114":1,"151":1,"173":1,"179":1,"188":1,"189":1,"195":2,"210":2,"214":1,"236":1,"242":1,"259":1,"270":1,"273":1,"278":1}}],["simplicity",{"2":{"287":1}}],["simplify",{"2":{"39":1,"43":1,"44":2}}],["simpler",{"2":{"68":1}}],["simple",{"2":{"39":1,"41":1,"99":1,"228":1,"231":1,"258":1,"284":1,"285":1,"287":1}}],["simply",{"2":{"16":1,"189":2,"230":1}}],["size",{"2":{"70":1,"101":2}}],["signer",{"2":{"261":1,"306":1}}],["signaled",{"2":{"143":1}}],["signal",{"2":{"143":1}}],["signatures",{"2":{"160":1,"261":1,"306":1}}],["signature",{"2":{"60":1,"160":1}}],["significant",{"2":{"121":1}}],["significantly",{"2":{"39":1}}],["signing",{"2":{"70":2,"101":2,"261":1,"306":1}}],["sign",{"2":{"70":2,"101":2,"261":1}}],["sister",{"2":{"45":1}}],["sindri",{"0":{"104":1,"108":1,"109":1,"112":1},"1":{"105":1,"106":1,"107":1,"108":1,"109":1,"110":2,"111":2,"112":2,"113":1,"114":1,"115":1,"116":1},"2":{"105":4,"106":2,"108":3,"109":1,"110":7,"111":3,"112":7,"114":1,"115":1,"116":2}}],["single",{"0":{"41":1,"49":1},"1":{"42":1,"43":1,"44":1,"45":1},"2":{"40":2,"43":1,"49":1,"60":1,"112":1,"132":1,"152":1,"306":1}}],["since",{"2":{"14":1,"147":1,"208":1,"227":1}}],["site",{"0":{"0":1,"1":1},"1":{"1":1,"2":1,"3":1,"4":1},"2":{"1":1}}],["shell",{"2":{"172":1,"195":2}}],["shellcargo",{"2":{"42":1,"48":2}}],["shda",{"2":{"56":1}}],["should",{"2":{"69":1,"72":1,"74":1,"75":1,"92":1,"100":1,"101":1,"107":1,"186":1,"188":1,"195":1,"229":1,"256":1,"259":2,"260":1,"261":1,"262":1,"289":2,"306":1}}],["showcasing",{"2":{"226":1}}],["showcase",{"2":{"50":1}}],["show",{"2":{"50":1,"57":1,"101":2,"102":1,"105":1,"207":1,"262":1,"287":1}}],["shows",{"2":{"46":1,"287":1,"306":2}}],["shown",{"2":{"42":1,"306":1}}],["short",{"2":{"14":1}}],["sharing",{"2":{"122":1,"126":1}}],["share",{"2":{"8":1,"120":1,"122":1,"126":1}}],["shared",{"2":{"7":1,"10":1,"117":1,"120":2,"122":1,"133":2,"149":1}}],["sha256",{"2":{"100":1,"301":3,"302":4}}],["shaddress=$",{"2":{"34":1}}],["shrollkit",{"2":{"27":2,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"36":1}}],["shvalidator",{"2":{"26":1}}],["sh",{"2":{"21":1,"35":5,"54":1,"55":1,"57":2,"58":1,"63":2,"66":3,"80":8,"97":1,"98":1,"99":3,"172":2,"177":1,"182":3,"194":1,"195":2,"198":1,"200":4,"206":1,"214":4,"216":1,"217":3,"223":1,"227":1,"236":4,"237":3,"242":4,"244":1,"245":3,"251":1,"256":2,"257":1,"258":1,"279":1,"282":2,"305":2}}],["spinning",{"2":{"149":2}}],["spikes",{"2":{"59":1}}],["spoiler",{"2":{"127":1}}],["spots",{"2":{"46":1}}],["spdx",{"2":{"114":1,"179":2,"180":1}}],["split",{"2":{"10":1}}],["speed",{"0":{"19":1,"38":1},"1":{"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1},"2":{"19":2,"40":1,"77":1,"117":1}}],["spec",{"2":{"291":1}}],["special",{"2":{"126":1,"295":1}}],["specialized",{"2":{"122":1}}],["specifying",{"2":{"209":1}}],["specify",{"2":{"72":1}}],["specified",{"2":{"31":1,"100":1,"260":1}}],["specifically",{"2":{"152":1,"190":1,"290":1}}],["specifications",{"0":{"134":1},"2":{"134":1}}],["specifics",{"2":{"43":1}}],["specific",{"2":{"16":1,"74":1,"77":1,"94":1,"96":1,"124":1,"145":1,"196":1,"255":1,"291":1,"294":1,"296":1,"307":2}}],["specs",{"2":{"16":1}}],["speak",{"2":{"9":1}}],["spending",{"2":{"8":1}}],["scope",{"2":{"192":1,"291":1}}],["scheme",{"2":{"158":1}}],["schemes",{"2":{"10":1,"122":1,"149":1}}],["scalability",{"0":{"120":1},"2":{"105":1,"120":1,"122":2}}],["scalable",{"2":{"7":1,"163":1}}],["scaffolds",{"2":{"290":1}}],["scaffoldings",{"2":{"289":1}}],["scaffolding",{"0":{"288":1,"290":1,"295":1,"297":1,"299":1},"1":{"289":1,"290":1,"291":1},"2":{"290":1}}],["scaffolded",{"2":{"222":1,"250":1}}],["scaffold",{"2":{"63":2,"187":1,"220":1,"248":1,"290":1,"295":2,"297":2,"299":2}}],["scripts",{"0":{"50":1},"2":{"40":1,"45":1}}],["scripting",{"2":{"39":1,"180":1,"207":1}}],["script",{"0":{"35":1,"55":1,"180":1,"200":1,"201":1,"279":1},"2":{"21":2,"54":1,"55":1,"56":1,"57":3,"58":1,"63":1,"66":3,"80":3,"97":1,"98":1,"99":3,"111":1,"112":1,"114":9,"172":4,"180":5,"181":2,"182":4,"194":1,"200":3,"201":1,"206":2,"212":1,"214":3,"216":1,"217":2,"223":1,"236":3,"237":2,"240":1,"242":3,"244":1,"245":2,"251":1,"256":1,"257":1,"273":5,"305":1}}],["s",{"0":{"201":1},"2":{"7":1,"9":1,"12":1,"13":2,"14":1,"21":1,"42":2,"43":1,"44":1,"48":1,"60":1,"66":1,"68":1,"81":1,"97":2,"98":1,"99":1,"100":1,"105":1,"108":1,"109":1,"110":1,"111":4,"112":3,"114":8,"115":1,"116":1,"117":1,"121":2,"122":1,"127":2,"128":2,"134":1,"139":1,"140":1,"144":2,"145":2,"148":1,"149":2,"152":1,"154":1,"158":1,"164":1,"172":1,"179":3,"180":2,"181":1,"182":1,"184":3,"185":2,"189":3,"190":1,"191":1,"194":1,"195":1,"198":1,"206":1,"207":1,"208":2,"210":2,"212":1,"222":1,"225":1,"226":1,"227":1,"236":2,"238":1,"240":1,"250":1,"253":1,"256":2,"257":1,"258":1,"261":1,"262":2,"273":3,"277":1,"278":1,"279":1,"280":2,"282":1,"283":1,"284":2,"287":3,"291":1,"293":1,"300":1,"301":4,"302":4,"305":1,"306":5,"307":2}}],["soon",{"2":{"264":1}}],["soft",{"2":{"149":1}}],["software",{"0":{"62":1},"2":{"137":1,"265":1}}],["sound",{"2":{"121":1}}],["source=registry",{"2":{"205":2}}],["source=",{"2":{"205":2}}],["source",{"2":{"118":1,"122":1,"167":2,"195":1,"289":1,"307":1}}],["solves",{"2":{"122":1}}],["solving",{"0":{"119":1},"1":{"120":1,"121":1}}],["solution",{"2":{"121":1,"145":1,"299":1}}],["solc",{"2":{"114":1,"179":3,"273":1}}],["solidity",{"2":{"114":1,"179":4,"180":3}}],["sol",{"2":{"111":1,"112":1,"114":14,"178":1,"179":5,"180":3,"181":1,"182":1,"273":2,"275":2}}],["somewhat",{"2":{"121":1}}],["something",{"2":{"68":1,"72":1,"74":1,"75":1,"80":1,"191":1}}],["some",{"2":{"50":2,"75":1,"77":2,"112":1,"117":1,"121":1,"177":1,"307":1}}],["so",{"2":{"16":1,"43":1,"68":1,"90":1,"111":1,"120":2,"122":1,"180":1,"182":1,"204":1,"217":1,"219":1,"237":1,"245":1,"247":1,"260":1,"263":2,"286":1,"306":1,"307":1}}],["social",{"2":{"7":1,"8":1,"158":1}}],["sovereignty",{"2":{"7":1,"122":2}}],["sovereign",{"0":{"7":1,"11":1,"12":1,"99":1,"125":1,"182":1,"187":1,"214":1,"242":1,"258":1,"283":1},"1":{"8":1,"9":1,"10":1,"11":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"215":1,"216":1,"243":1,"244":1},"2":{"6":2,"7":10,"8":5,"10":1,"11":2,"12":3,"13":2,"14":1,"15":1,"17":1,"18":5,"77":1,"96":2,"117":1,"118":2,"122":1,"123":1,"125":1,"126":1,"128":1,"132":1,"133":3,"163":3,"164":3,"184":1,"255":2,"281":2,"283":1,"284":1,"285":1,"291":1,"305":1}}],["session",{"2":{"289":1}}],["selection",{"2":{"306":1}}],["selecting",{"2":{"158":1,"213":1,"234":1,"241":1,"278":1}}],["self",{"2":{"7":1,"43":2}}],["seal",{"2":{"270":1}}],["search",{"2":{"144":1,"280":1}}],["seamless",{"2":{"139":1}}],["sendcoins",{"2":{"301":1,"302":1,"303":2}}],["sender",{"2":{"262":1}}],["sender=",{"2":{"160":1}}],["sends",{"2":{"261":1}}],["sending",{"2":{"181":1,"182":1,"303":1}}],["send",{"2":{"83":1,"94":1,"101":1,"102":3,"115":3,"181":2,"182":2,"261":1,"274":2,"276":1,"302":1}}],["sent",{"2":{"68":1}}],["serve",{"2":{"149":1}}],["served",{"2":{"142":1}}],["serves",{"2":{"139":1,"184":1}}],["server",{"2":{"100":2,"229":3,"260":2,"301":1,"302":1}}],["serving",{"2":{"57":1,"100":1,"260":1}}],["service",{"2":{"57":2,"100":20,"209":1,"210":1,"220":2,"248":2,"260":20}}],["serde",{"2":{"44":3}}],["separated",{"2":{"220":1,"248":1}}],["separate",{"2":{"48":1,"57":2,"63":1,"66":1,"190":1,"224":1,"252":1,"266":1,"294":1}}],["seed",{"2":{"57":1,"100":1,"260":1}}],["see",{"0":{"201":1},"2":{"16":1,"17":1,"18":1,"59":1,"63":1,"74":1,"75":1,"100":1,"106":1,"109":1,"115":1,"133":1,"189":1,"190":1,"195":1,"200":1,"210":3,"214":1,"220":1,"225":1,"229":1,"238":1,"242":1,"248":1,"253":1,"259":1,"260":1,"261":2,"289":1,"291":1,"301":2,"306":2}}],["seeking",{"2":{"10":1}}],["segwit",{"2":{"14":2}}],["sequence",{"2":{"160":1}}],["sequencers",{"2":{"122":1,"149":2,"152":1}}],["sequencer",{"0":{"51":1,"149":1},"1":{"52":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1},"2":{"10":2,"19":1,"34":2,"51":1,"57":4,"58":1,"77":1,"122":2,"127":1,"132":1,"135":1,"143":1,"149":7,"152":1,"158":6,"225":2,"238":2,"253":2}}],["sequencing",{"0":{"76":1},"2":{"10":3,"76":2,"77":1}}],["several",{"2":{"9":1,"290":1,"291":1,"295":1}}],["setguess",{"2":{"302":1}}],["setwordle",{"2":{"301":1}}],["settings",{"2":{"92":1}}],["setting",{"0":{"21":1,"26":1,"32":1,"107":1,"199":1,"292":1},"1":{"200":1,"201":1,"293":1},"2":{"25":1,"133":1,"184":1,"189":1,"190":1,"225":1,"238":1,"253":1,"287":1}}],["settle",{"2":{"8":1}}],["settled",{"2":{"8":1}}],["settlement",{"0":{"126":1},"2":{"7":3,"8":3,"15":1,"123":1,"126":3}}],["setup",{"0":{"51":1,"68":1,"70":1,"166":1,"279":1},"1":{"52":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"167":1,"168":1,"169":1},"2":{"19":1,"24":1,"45":1,"49":1,"53":1,"63":1,"77":1,"99":1,"114":1,"179":1,"180":1,"187":1,"195":1,"199":1,"225":1,"238":1,"253":1,"285":1,"290":1,"302":2}}],["set",{"0":{"56":1},"2":{"7":1,"8":1,"10":1,"21":1,"24":1,"26":1,"27":2,"29":1,"32":1,"35":1,"37":1,"45":1,"51":1,"56":1,"57":1,"68":1,"74":1,"75":1,"94":1,"98":1,"121":3,"122":1,"149":1,"163":1,"167":1,"168":1,"169":1,"170":1,"173":1,"174":1,"177":1,"181":3,"182":1,"189":2,"195":1,"214":1,"230":1,"236":1,"242":1,"257":1,"258":1,"259":1,"264":1,"276":2,"277":1,"278":1,"279":1,"292":1,"301":1,"305":1}}],["secp256k1",{"2":{"261":3}}],["sections",{"2":{"89":1}}],["section",{"2":{"49":1,"77":2,"80":1,"81":1,"86":1,"88":1,"92":1,"93":1,"94":1,"113":1,"117":1,"127":2,"201":1,"259":1}}],["second",{"2":{"19":2,"172":3,"216":1,"244":1,"296":1,"299":1}}],["seconds",{"2":{"7":1,"19":1,"92":1}}],["security",{"0":{"121":1},"2":{"7":2,"12":1,"105":1,"117":1,"122":3,"133":2,"147":1,"164":1}}],["secured",{"2":{"148":1}}],["secures",{"2":{"105":1}}],["secure",{"2":{"7":1,"8":1,"121":4,"295":1}}],["sdkerrors",{"2":{"301":4,"302":5}}],["sdk=github",{"2":{"63":1,"197":1}}],["sdk",{"0":{"108":1,"125":1,"138":1},"2":{"7":3,"9":4,"10":1,"17":1,"63":1,"69":1,"81":1,"82":3,"96":2,"106":1,"108":2,"117":2,"125":4,"127":1,"128":1,"138":5,"192":1,"197":2,"219":3,"222":2,"231":1,"247":3,"250":2,"255":2,"285":1,"286":3,"289":2,"290":2,"291":2,"294":4,"295":1,"296":3,"300":2,"301":8,"302":8,"303":4,"306":2,"308":1}}],["sum256",{"2":{"301":2,"302":3}}],["summary",{"0":{"24":1,"37":1,"40":1},"2":{"40":1}}],["sustainably",{"2":{"121":1}}],["sustainable",{"2":{"12":1,"18":1}}],["sustainability",{"2":{"121":1}}],["sufficiently",{"2":{"121":2}}],["suffice",{"2":{"108":1}}],["sudo",{"2":{"99":1,"166":1,"167":2}}],["suit",{"2":{"67":2,"71":2}}],["success",{"2":{"102":1,"114":1,"121":1,"273":1}}],["successfully",{"2":{"72":2,"87":1,"114":1,"179":1,"185":1,"225":1,"229":1,"230":1,"253":1,"270":1,"273":1,"277":1,"289":1}}],["successful",{"2":{"72":4,"94":1,"114":2,"158":1,"179":2,"273":2,"282":1}}],["succeeds",{"2":{"59":1}}],["such",{"2":{"3":1,"18":1,"39":1,"59":1,"118":1,"127":1,"135":1,"144":2,"158":2}}],["suggest",{"2":{"39":1}}],["suggestions",{"0":{"4":1},"2":{"4":1}}],["sure",{"2":{"37":1,"68":2,"92":1,"166":1,"175":1,"178":1,"230":1}}],["subsequent",{"2":{"301":1}}],["substitute",{"2":{"118":1}}],["submits",{"2":{"307":1}}],["submitguess",{"0":{"302":1},"2":{"296":1,"297":1,"302":1}}],["submitwordle",{"0":{"301":1},"2":{"296":1,"297":1,"301":3}}],["submitteraddress",{"2":{"301":2}}],["submitter",{"2":{"299":4,"301":1,"302":8,"306":1}}],["submittedsolutionhashstring",{"2":{"301":2,"302":3}}],["submittedsolutionhash",{"2":{"301":2,"302":2}}],["submitted",{"2":{"158":3,"270":1,"287":1,"296":1,"299":3,"301":10,"302":1,"306":5,"307":1}}],["submitting",{"2":{"82":1,"154":1,"260":1,"270":1,"306":3,"307":1}}],["submit",{"2":{"158":2,"261":2,"296":1,"297":4,"301":1,"302":2,"306":9}}],["submitblocks",{"2":{"139":1}}],["submitblock",{"2":{"16":2}}],["submission",{"0":{"155":1},"2":{"59":2,"82":3}}],["subkeys",{"2":{"48":1}}],["sub",{"2":{"19":1}}],["subordinate",{"2":{"8":1}}],["supports",{"2":{"17":1,"132":1,"151":2}}],["supported",{"2":{"15":1,"144":1,"153":1,"177":1}}],["support",{"0":{"78":1,"132":1},"2":{"12":1,"60":1,"132":1,"142":1,"149":1,"264":1}}],["supporting",{"2":{"9":1}}],["supply",{"2":{"8":1}}],["stick",{"2":{"307":1}}],["still",{"2":{"9":1,"14":1,"78":1,"81":1,"100":1,"127":1,"132":1,"148":1,"152":1,"154":1}}],["storing",{"2":{"299":1}}],["storage",{"2":{"134":1}}],["stores",{"2":{"222":1,"250":1}}],["stored",{"2":{"207":1}}],["store",{"2":{"57":1,"206":2,"299":1,"300":2,"301":2,"302":1}}],["stopbroadcast",{"2":{"114":1,"180":1}}],["stop",{"2":{"84":1,"139":1,"172":1,"217":1,"234":1,"236":1,"241":1,"245":1,"278":1}}],["stopping",{"0":{"84":1},"2":{"87":1}}],["stuck",{"2":{"81":1}}],["std",{"2":{"45":1,"114":1,"179":1,"180":1,"195":2}}],["steak",{"2":{"45":2}}],["steps",{"0":{"92":1,"103":1,"191":1,"225":1,"231":1,"238":1,"253":1,"263":1,"308":1},"2":{"24":1,"25":1,"37":1,"39":2,"41":1,"47":1,"73":1,"89":1,"207":1,"213":1,"277":1,"293":1,"298":1}}],["step",{"2":{"3":2,"66":1,"72":1,"75":1,"93":1,"101":1,"106":1,"112":1,"264":2}}],["strconv",{"2":{"302":4}}],["strong",{"2":{"121":1}}],["str+",{"2":{"111":1}}],["string",{"2":{"75":1,"220":1,"221":1,"248":1,"249":1,"274":1,"277":1,"301":3,"302":3,"303":2,"307":1}}],["string=youribc",{"2":{"75":1}}],["struct",{"2":{"43":2,"44":1}}],["structure",{"0":{"3":1,"136":1},"1":{"137":1,"138":1,"139":1,"140":1},"2":{"48":1,"291":1}}],["str",{"2":{"43":1,"45":1,"111":6}}],["straightforward",{"2":{"20":1,"44":1,"226":1,"231":1,"290":2}}],["stands",{"2":{"255":1}}],["standard",{"2":{"14":2,"179":1}}],["stable",{"2":{"195":4}}],["status",{"2":{"115":1,"144":1,"149":1,"222":2,"250":2,"277":1}}],["statefile=",{"2":{"283":1}}],["state",{"0":{"150":1},"1":{"151":1,"152":1,"153":1},"2":{"8":1,"9":1,"10":1,"44":1,"60":2,"124":2,"127":1,"135":1,"138":1,"145":1,"148":1,"149":1,"152":11,"158":2,"210":1,"219":2,"247":2,"283":1,"296":1,"300":1,"302":1}}],["stage",{"2":{"78":1,"127":1,"132":1}}],["stake",{"2":{"74":1,"75":1,"101":1,"261":1,"262":2}}],["staking",{"0":{"32":1},"2":{"26":1,"32":1}}],["starship",{"2":{"39":1}}],["startbroadcast",{"2":{"114":1,"180":1}}],["starts",{"2":{"54":1,"57":1,"143":1}}],["starting",{"0":{"36":1,"100":1,"260":1},"2":{"37":1,"57":2,"72":1,"100":14,"145":1,"176":1,"177":1,"185":1,"215":1,"235":1,"243":1,"260":14,"279":1}}],["start",{"0":{"58":1,"68":1,"73":1,"172":1,"214":1,"216":1,"236":1,"242":1,"244":1,"269":1,"275":1,"278":1,"280":1,"281":1},"1":{"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"173":1,"174":1,"175":1,"176":1,"215":1,"216":1,"237":1,"243":1,"244":1,"282":1,"283":1,"284":1},"2":{"7":1,"9":1,"19":4,"20":1,"21":1,"23":2,"25":1,"35":1,"36":2,"37":1,"39":2,"45":1,"57":2,"59":2,"63":1,"66":2,"71":1,"73":2,"76":4,"80":6,"85":2,"87":2,"89":1,"91":1,"93":1,"96":1,"100":12,"101":2,"127":1,"139":1,"143":1,"172":3,"177":3,"181":1,"182":1,"185":2,"189":3,"190":2,"198":1,"209":1,"213":1,"227":1,"234":1,"241":1,"255":1,"256":1,"260":13,"266":2,"269":2,"270":1,"278":4,"279":1,"280":1,"283":2,"284":1,"296":1,"301":1,"306":2}}],["started",{"0":{"54":1},"1":{"55":1,"56":1,"57":1},"2":{"1":1,"11":1,"107":1,"128":2,"181":1,"195":1,"220":1,"229":1,"248":1,"267":1,"271":1,"283":1,"287":1,"289":1}}],["stay",{"2":{"6":1}}],["stack",{"0":{"135":1,"164":1},"1":{"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1,"146":1,"147":1,"148":1,"149":1,"150":1,"151":1,"152":1,"153":1},"2":{"3":1,"118":1,"122":1,"131":1}}],["gcc",{"2":{"197":1}}],["gz",{"2":{"167":3}}],["gb",{"2":{"165":1}}],["g",{"2":{"149":1,"160":1,"167":1}}],["gateway",{"2":{"278":1}}],["game",{"2":{"130":1,"285":2}}],["gain",{"2":{"121":1}}],["gasused",{"2":{"115":1}}],["gas",{"0":{"59":1,"85":1,"87":1,"95":1},"1":{"96":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1},"2":{"10":1,"35":1,"36":1,"59":15,"70":8,"72":4,"75":1,"77":2,"81":3,"82":1,"85":1,"87":1,"96":4,"100":2,"101":9,"102":2,"103":1,"114":1,"179":3,"190":4,"206":6,"209":3,"210":8,"261":1,"273":1,"306":3}}],["giant",{"2":{"306":2}}],["given",{"2":{"286":1,"296":1,"306":5}}],["give",{"2":{"181":1,"208":1}}],["gives",{"2":{"118":1,"124":1}}],["git",{"2":{"65":2,"69":2,"101":1,"110":2,"166":1,"177":2,"197":2,"228":1,"267":3,"272":3,"279":1,"282":1}}],["github",{"2":{"63":1,"65":1,"69":1,"78":1,"101":1,"110":2,"132":1,"177":1,"187":1,"197":2,"203":1,"228":1,"264":1,"267":1,"272":1,"293":1,"301":3,"302":3}}],["gwei",{"2":{"114":1,"273":1}}],["gpu",{"2":{"112":1}}],["global",{"2":{"101":1}}],["ghcr",{"2":{"63":1,"266":1,"278":1}}],["grey",{"2":{"287":1}}],["green",{"2":{"287":1}}],["great",{"2":{"125":2,"127":1,"191":1,"195":1}}],["greater",{"2":{"59":1}}],["growth",{"2":{"125":1}}],["granter",{"2":{"261":1,"306":1}}],["grab",{"2":{"115":1}}],["gradually",{"2":{"59":1}}],["grpc",{"2":{"35":1,"36":1,"80":1,"85":1,"87":1,"100":1,"220":1,"248":1,"260":1,"278":2}}],["gt",{"2":{"23":1,"34":1,"35":2,"43":6,"45":2,"80":9,"83":1,"101":6,"102":1,"112":1,"167":2,"181":2,"182":1,"265":1,"276":1}}],["gms",{"2":{"274":1}}],["gmportalscript",{"2":{"273":2}}],["gmportal",{"2":{"114":3,"273":2,"275":5}}],["gm1e4fqspwdsy0dzkmzsdhkadfcrd0udngw0f88pw",{"2":{"261":2}}],["gm18k57hn42ujcccyn0n5v7r6ydpacycn2wkt7uh9",{"2":{"261":2}}],["gm1jqevcsld0dqpjp3csfg7alkv3lehvn8uswknrc",{"2":{"101":3}}],["gm1vvl79phavqruppr6f5zy4ypxy7znshrqam48qy",{"2":{"67":1,"72":2,"261":1}}],["gmd",{"2":{"19":3,"76":2,"80":2,"99":1,"101":2,"102":3,"188":1,"215":1,"216":1,"235":1,"243":1,"244":1,"259":3}}],["gm",{"0":{"63":1,"183":1,"211":1,"218":1,"219":1,"222":1,"226":1,"232":1,"239":1,"246":1,"247":1,"250":1,"254":1},"1":{"184":1,"185":1,"186":1,"187":1,"188":1,"189":1,"190":1,"191":1,"212":1,"213":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":2,"220":3,"221":3,"222":3,"223":3,"224":3,"225":1,"227":1,"228":1,"229":1,"230":1,"231":1,"233":1,"234":1,"235":1,"236":1,"237":1,"238":1,"240":1,"241":1,"242":1,"243":1,"244":1,"245":1,"246":1,"247":2,"248":3,"249":3,"250":3,"251":3,"252":3,"253":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"261":1,"262":1,"263":1},"2":{"19":1,"51":1,"53":1,"55":2,"58":1,"60":1,"63":9,"66":1,"67":2,"70":3,"71":1,"72":22,"73":1,"74":5,"80":2,"81":1,"84":1,"89":1,"90":1,"91":1,"94":4,"96":1,"99":3,"101":24,"102":2,"113":1,"114":5,"129":2,"184":3,"186":1,"187":6,"188":3,"212":1,"214":3,"215":1,"217":1,"219":1,"220":22,"222":15,"224":3,"227":1,"228":2,"232":1,"235":1,"236":1,"237":1,"240":1,"242":3,"243":1,"245":1,"247":1,"248":22,"250":15,"252":3,"255":2,"258":2,"259":5,"261":4,"271":1,"272":3,"273":1,"274":1,"275":6,"286":1}}],["gui",{"2":{"287":1}}],["guidance",{"2":{"195":1}}],["guide",{"0":{"281":1},"1":{"282":1,"283":1,"284":1},"2":{"20":1,"25":1,"27":1,"37":1,"39":1,"51":1,"52":1,"76":1,"79":1,"89":1,"96":2,"105":2,"107":1,"108":1,"184":1,"190":1,"207":1,"255":2,"256":1,"285":1,"287":1,"291":1}}],["guidelines",{"0":{"2":1},"2":{"2":1,"63":1}}],["guides",{"0":{"77":1},"1":{"78":1},"2":{"0":1,"77":3,"78":1,"286":1}}],["guessing",{"2":{"302":1}}],["guessed",{"2":{"302":2}}],["guesseraddress",{"2":{"302":2}}],["guesser",{"2":{"302":2,"303":1}}],["guesses",{"2":{"287":2,"299":1,"301":2,"302":2}}],["guess",{"2":{"287":2,"296":2,"297":3,"299":3,"301":1,"302":19,"306":8,"307":1}}],["guarantees",{"2":{"12":1,"122":1,"164":2}}],["gotype",{"2":{"303":1}}],["gomessage",{"2":{"303":1}}],["gopackage",{"2":{"301":1,"302":1}}],["goctx",{"2":{"222":4,"250":4,"301":2,"302":2}}],["gofunc",{"2":{"222":2,"250":2}}],["google",{"2":{"220":2,"248":2}}],["good",{"2":{"163":1,"191":1,"255":1,"260":1,"263":2,"284":1}}],["goif",{"2":{"197":1}}],["going",{"2":{"108":1,"127":1,"197":1,"219":1,"247":1,"291":1}}],["go$ver",{"2":{"167":3}}],["golang",{"0":{"167":1,"194":1},"2":{"167":2,"256":1}}],["golangversion",{"2":{"97":1}}],["gossips",{"2":{"158":1}}],["gossipping",{"2":{"154":1}}],["gossiped",{"2":{"152":1}}],["gossip",{"0":{"158":1},"2":{"145":1,"152":2,"158":1}}],["go1",{"2":{"69":1,"194":1}}],["gone",{"2":{"19":1,"77":1}}],["goal",{"2":{"18":1,"96":1,"118":1,"122":1,"164":1,"255":1}}],["go",{"2":{"10":2,"16":1,"39":1,"46":1,"52":1,"60":1,"62":1,"63":3,"69":1,"76":1,"77":1,"81":1,"89":1,"92":1,"97":2,"99":2,"138":1,"140":1,"143":2,"167":4,"188":1,"191":1,"194":2,"197":4,"210":1,"215":1,"220":3,"222":4,"230":1,"235":1,"243":1,"248":3,"250":4,"259":3,"265":1,"277":1,"285":3,"286":1,"287":1,"291":1,"301":3,"302":1,"303":1,"305":1}}],["governance",{"2":{"7":1,"8":1}}],["gentxs",{"2":{"33":1}}],["gentx",{"2":{"32":1}}],["generating",{"0":{"172":1},"1":{"173":1,"174":1,"175":1,"176":1},"2":{"72":1,"172":2}}],["generation",{"2":{"44":2}}],["generates",{"2":{"185":1}}],["generatetoaddress",{"2":{"172":2}}],["generatefraudproof",{"2":{"152":1}}],["generated",{"2":{"44":1,"80":1,"105":2,"111":1,"112":1,"181":1,"182":1,"189":1,"214":1,"217":1,"236":1,"237":1,"242":1,"245":1,"291":1}}],["generate",{"2":{"27":2,"70":1,"122":1,"152":2,"158":1,"172":3,"188":1,"220":1,"248":1,"259":1,"278":1}}],["generic",{"2":{"7":1,"139":1}}],["genesis",{"0":{"25":1,"28":1,"31":1,"32":1,"33":1,"34":1},"1":{"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1},"2":{"25":2,"28":1,"31":3,"32":2,"33":2,"34":3,"37":2,"283":2}}],["getguess",{"2":{"302":1}}],["getwordle",{"2":{"301":1,"302":1}}],["gettotalgms",{"2":{"274":1}}],["getting",{"0":{"54":1},"1":{"55":1,"56":1,"57":1},"2":{"144":2,"302":1}}],["geth",{"2":{"270":2}}],["getblockheader",{"2":{"175":2}}],["getblockhash",{"2":{"174":1}}],["getblockcount",{"2":{"173":1}}],["getnewaddress`",{"2":{"172":1}}],["getnewaddress",{"2":{"172":1}}],["getapphash",{"2":{"152":1}}],["gets",{"2":{"68":1,"287":1}}],["getcountresponse",{"2":{"44":2}}],["getcount",{"2":{"44":2,"179":4,"181":1,"182":1}}],["get",{"2":{"1":1,"8":1,"11":1,"39":2,"44":1,"45":1,"48":1,"63":1,"81":2,"83":1,"99":2,"101":1,"111":2,"117":1,"128":2,"175":1,"189":1,"195":1,"206":1,"208":1,"214":1,"219":1,"220":2,"224":1,"236":1,"242":1,"247":1,"248":2,"252":1,"267":1,"271":1,"274":1,"278":1,"287":1,"289":2,"301":1,"302":3,"306":2}}],["ooga",{"0":{"273":1},"2":{"271":1,"272":1,"274":3,"276":2}}],["o5crnimdwh",{"2":{"261":1}}],["omit",{"2":{"189":1}}],["omnilayer",{"2":{"151":1}}],["old",{"2":{"176":1,"215":1,"235":1,"243":1}}],["os",{"2":{"166":1,"196":1}}],["osmo",{"2":{"70":2,"71":1,"72":12}}],["osmo1vvl79phavqruppr6f5zy4ypxy7znshrqm390ll",{"2":{"67":1,"72":2}}],["osmosis",{"0":{"64":1,"65":1,"66":1,"74":1,"75":1},"1":{"65":1,"66":1},"2":{"60":1,"65":3,"66":6,"67":2,"70":2,"72":6,"73":1,"74":3,"75":2}}],["occurred",{"2":{"152":1}}],["occasional",{"2":{"59":1}}],["objects",{"2":{"111":3,"296":1,"306":1}}],["obtained",{"2":{"106":1}}],["obtain",{"2":{"105":1,"111":2,"189":1,"277":1}}],["observed",{"2":{"72":4}}],["obvious",{"2":{"45":1}}],["ok",{"2":{"45":2,"179":1}}],["opportunity",{"2":{"125":1}}],["operators",{"2":{"76":1,"116":1}}],["operation",{"2":{"283":1}}],["operations",{"2":{"27":1,"37":1,"143":1,"181":1,"182":1,"190":1}}],["operational",{"2":{"8":1,"90":1,"106":1,"113":1}}],["openapi",{"2":{"291":1}}],["openssl",{"2":{"177":1}}],["opens",{"2":{"164":1}}],["open",{"2":{"56":1,"68":1,"111":3,"114":1,"118":1,"122":1,"171":1,"179":2,"220":1,"230":1,"248":1,"259":1,"289":1,"301":1,"302":1,"307":1}}],["opening",{"2":{"12":1,"118":1,"163":1}}],["optional",{"0":{"201":1,"217":1,"218":1,"245":1,"246":1},"1":{"219":1,"220":1,"221":1,"222":1,"223":1,"224":1,"247":1,"248":1,"249":1,"250":1,"251":1,"252":1},"2":{"152":1,"167":1,"220":2,"248":2}}],["option",{"2":{"15":2,"220":3,"248":3}}],["options",{"2":{"3":1,"70":2,"101":2,"158":1,"261":2,"306":2}}],["optimistic",{"0":{"152":1},"2":{"10":2,"122":1,"135":1,"147":1,"158":1}}],["optimizer",{"2":{"205":3}}],["optimized",{"0":{"205":1},"2":{"205":1}}],["optimize",{"0":{"10":1},"2":{"10":1}}],["overall",{"2":{"152":1}}],["override",{"2":{"81":1,"101":2}}],["over",{"2":{"9":1,"52":2,"76":1,"89":1,"144":3,"149":1,"152":2,"200":2,"214":2,"242":2,"277":1,"285":3,"286":1,"287":2,"291":1,"301":2}}],["overhead",{"2":{"7":2,"8":1,"10":1,"18":1,"121":1}}],["overview",{"0":{"89":1},"2":{"5":1,"94":1}}],["onstart",{"2":{"143":1}}],["onto",{"2":{"135":1}}],["once",{"0":{"105":1},"2":{"57":1,"93":1,"142":1,"152":1,"181":2,"182":1,"230":1}}],["onchain",{"2":{"8":1}}],["only",{"0":{"151":1},"2":{"10":2,"12":1,"15":1,"16":1,"57":1,"59":1,"60":1,"100":1,"105":1,"132":1,"143":1,"151":1,"260":1,"275":1,"296":1,"301":6,"302":3}}],["ones",{"2":{"158":1}}],["one",{"2":{"7":1,"9":1,"19":1,"27":1,"44":1,"72":3,"81":1,"93":1,"149":1,"152":1,"181":2,"185":1,"189":2,"192":1,"261":1,"276":1,"278":2,"279":1,"291":1,"296":2,"301":2,"302":1,"306":1}}],["on",{"0":{"12":1,"14":1,"17":1,"112":1,"115":1,"199":1,"202":1,"207":1,"236":1},"1":{"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"200":1,"201":1,"203":1,"204":1,"205":1,"206":1,"208":1,"209":1,"210":1,"237":1},"2":{"5":1,"6":1,"7":3,"8":4,"10":2,"12":5,"13":1,"14":6,"16":2,"17":1,"18":2,"21":2,"27":1,"37":1,"44":1,"47":4,"50":1,"57":2,"62":1,"67":2,"68":2,"76":1,"77":1,"81":1,"92":1,"98":2,"99":2,"100":2,"101":8,"102":4,"105":7,"111":1,"112":2,"113":2,"114":1,"115":1,"116":1,"117":1,"118":1,"120":1,"122":2,"127":1,"132":1,"134":1,"140":1,"142":2,"147":1,"148":1,"152":1,"160":1,"163":3,"164":3,"178":1,"184":1,"185":1,"190":2,"194":1,"195":1,"196":3,"197":1,"206":1,"208":1,"210":1,"213":1,"222":1,"227":1,"229":1,"230":1,"234":1,"236":1,"238":1,"241":1,"250":1,"257":2,"260":2,"265":2,"271":1,"272":1,"273":1,"275":3,"276":2,"278":1,"279":1,"280":1,"284":1,"287":1,"289":1,"292":1,"293":1,"300":1,"302":1,"305":2,"306":1,"307":1}}],["our",{"2":{"5":2,"18":1,"44":1,"50":1,"78":1,"81":1,"87":1,"89":1,"91":1,"94":1,"100":1,"101":4,"102":1,"111":4,"113":1,"117":1,"118":1,"122":1,"132":1,"133":2,"159":1,"163":1,"167":1,"180":1,"182":2,"187":2,"188":1,"189":2,"190":2,"194":1,"200":4,"206":1,"208":3,"210":2,"214":3,"216":1,"219":1,"222":1,"231":1,"242":3,"244":1,"247":1,"250":1,"261":1,"272":1,"275":2,"287":1,"289":1,"290":2,"292":2,"295":1,"296":3,"303":1,"306":1}}],["outline",{"2":{"300":1}}],["outside",{"2":{"192":1,"291":1}}],["outputs",{"2":{"306":1}}],["outputted",{"2":{"203":1}}],["output",{"2":{"54":1,"70":2,"101":2,"102":2,"114":2,"115":2,"171":1,"173":1,"174":1,"179":1,"182":1,"188":1,"189":2,"195":1,"206":2,"208":3,"210":5,"229":1,"259":2,"261":2,"262":1,"273":2,"283":1,"289":1,"306":3}}],["out",{"0":{"81":1},"1":{"82":1,"83":1,"84":1,"85":1,"86":1,"87":1},"2":{"0":1,"11":1,"27":1,"35":1,"44":1,"81":2,"82":1,"87":1,"92":1,"116":1,"181":1,"192":1,"197":1,"207":1,"272":1,"275":2,"289":1,"303":1,"306":1}}],["others",{"2":{"307":1}}],["other",{"2":{"3":1,"7":2,"23":1,"35":1,"50":1,"66":1,"68":3,"81":1,"84":1,"120":1,"122":2,"149":1,"158":1,"226":1,"295":1,"300":1}}],["owner",{"2":{"210":2}}],["own",{"2":{"3":1,"7":3,"8":1,"11":1,"15":1,"117":1,"122":1,"133":2,"189":1,"214":1,"236":1,"242":1,"271":1,"278":1,"280":1,"289":1,"294":1,"305":1}}],["original",{"2":{"75":1,"80":1}}],["originally",{"2":{"12":1,"276":1}}],["orch",{"0":{"42":1},"2":{"39":3,"40":1,"41":1,"42":3,"43":2,"44":3,"45":1,"46":1,"47":1,"48":1,"50":1,"77":1}}],["orchestrator",{"0":{"38":1},"1":{"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1},"2":{"39":2,"40":1,"42":1,"44":1,"50":1,"206":1,"207":1}}],["ordinals",{"2":{"13":1,"14":2,"164":1}}],["ordering",{"2":{"142":1,"149":2}}],["ordered",{"2":{"135":1}}],["order",{"2":{"8":1,"39":1,"43":1,"48":1,"72":1,"80":1,"81":2,"85":1,"87":1,"117":1,"121":1,"151":1,"198":1,"205":1,"206":1,"217":1,"219":1,"237":1,"245":1,"247":1,"276":1,"277":1,"286":1,"303":1}}],["org",{"2":{"12":1,"167":1}}],["organize",{"2":{"8":1}}],["oracles",{"2":{"9":1}}],["or",{"2":{"2":1,"4":1,"7":5,"8":1,"10":5,"16":1,"17":1,"18":1,"19":1,"28":1,"45":2,"68":1,"74":1,"75":1,"78":1,"82":1,"84":1,"93":1,"94":1,"97":1,"99":1,"112":1,"116":1,"122":4,"124":1,"127":1,"128":1,"132":1,"147":1,"148":1,"152":1,"158":2,"160":1,"164":1,"180":1,"184":1,"185":1,"189":1,"190":2,"191":1,"206":1,"214":1,"216":1,"219":1,"227":1,"232":2,"236":2,"242":1,"244":1,"247":1,"276":1,"278":2,"280":1,"289":1,"290":1,"301":1,"302":1,"306":1}}],["offered",{"2":{"294":1}}],["offs",{"2":{"118":1,"121":1,"122":1}}],["offset",{"2":{"8":1}}],["offloading",{"2":{"15":1}}],["off",{"2":{"14":1,"122":1}}],["offchain",{"2":{"8":1}}],["official",{"2":{"0":1,"117":1}}],["of",{"0":{"6":1,"19":1,"81":1,"160":1},"1":{"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"161":1},"2":{"0":1,"2":1,"5":2,"7":6,"8":5,"9":2,"10":6,"11":1,"13":2,"14":8,"15":1,"16":3,"18":2,"19":1,"25":1,"27":3,"35":3,"37":1,"39":3,"42":1,"43":1,"44":1,"48":1,"59":4,"60":2,"66":1,"68":1,"70":1,"73":1,"74":1,"75":1,"77":3,"80":1,"81":3,"82":1,"83":1,"87":1,"89":2,"92":1,"96":2,"99":1,"100":1,"101":1,"105":3,"107":1,"108":2,"109":1,"110":1,"112":1,"113":1,"114":2,"115":3,"117":1,"118":2,"121":6,"122":5,"124":1,"126":2,"127":1,"132":1,"133":2,"134":2,"135":2,"138":3,"139":2,"140":1,"142":1,"143":2,"145":1,"149":1,"152":2,"158":3,"163":2,"164":4,"168":1,"172":1,"174":1,"176":1,"178":1,"179":1,"181":3,"182":1,"185":3,"189":1,"192":2,"200":1,"206":2,"208":1,"209":1,"210":1,"212":2,"214":1,"219":1,"220":4,"222":3,"226":1,"232":2,"236":1,"240":2,"242":1,"247":1,"248":4,"250":3,"255":1,"260":1,"261":1,"264":1,"271":1,"277":1,"279":1,"285":1,"286":1,"287":5,"289":3,"290":3,"291":4,"295":1,"296":2,"299":2,"300":4,"301":7,"302":11,"306":2}}],["md",{"2":{"291":1}}],["m",{"2":{"172":2}}],["my",{"2":{"172":1}}],["mykey",{"2":{"66":1,"182":2}}],["ml",{"2":{"105":2,"108":2,"109":1,"110":2,"114":1,"115":1,"116":1}}],["mkdir",{"2":{"101":1}}],["mnemonics",{"2":{"71":1,"101":1}}],["mnemonic",{"2":{"45":3,"67":2,"71":1}}],["msgsubmitguessresponse",{"2":{"302":3,"303":2}}],["msgsubmitguess",{"2":{"302":1}}],["msgsubmitwordleresponse",{"2":{"301":2}}],["msgsubmitwordle",{"2":{"301":1,"306":1}}],["msgserver",{"2":{"301":1,"302":1}}],["msgsend",{"2":{"261":1}}],["msgchannelopenconfirm",{"2":{"72":1}}],["msgchannelopenack",{"2":{"72":1}}],["msgchannelopentry",{"2":{"72":1}}],["msgchannelopeninit",{"2":{"72":1}}],["msgupdateclient",{"2":{"72":4}}],["msg=",{"2":{"57":2,"100":10,"260":10}}],["msg",{"2":{"43":1,"44":2,"45":1,"72":4,"301":7,"302":8}}],["much",{"2":{"290":1}}],["multiappconn",{"2":{"100":1,"260":1}}],["multiplier=1",{"2":{"59":1}}],["multiplier",{"2":{"59":2}}],["multiple",{"2":{"39":1,"93":1,"115":1,"145":1,"149":1,"152":1}}],["multi",{"2":{"39":1,"51":1,"295":1}}],["must",{"2":{"7":1,"121":2,"158":1,"287":1,"290":1,"295":2,"301":2,"302":2}}],["mv",{"2":{"34":1}}],["mb",{"2":{"14":1}}],["might",{"2":{"121":1,"145":1,"231":1}}],["migrate",{"2":{"43":2}}],["migratemsg",{"2":{"43":2}}],["mission",{"2":{"117":1,"133":2}}],["missing",{"2":{"14":1}}],["mit",{"2":{"114":1,"179":2,"180":1}}],["middleman",{"2":{"68":1}}],["millions",{"2":{"121":1}}],["milliseconds",{"2":{"10":1,"19":1}}],["milk",{"2":{"67":2,"71":2}}],["minutes",{"2":{"88":1,"122":1}}],["minus",{"2":{"75":1}}],["min",{"2":{"70":4,"101":4}}],["mind",{"2":{"18":1,"115":1,"139":1}}],["mine",{"2":{"172":2}}],["miner",{"2":{"14":1}}],["mined",{"2":{"14":1}}],["minify",{"2":{"229":1}}],["minimizes",{"2":{"290":1}}],["minimized",{"2":{"8":1,"60":1,"126":1,"135":1,"148":1}}],["minimization",{"2":{"152":1}}],["minimizing",{"2":{"122":1}}],["minimal",{"2":{"118":1,"187":1}}],["minimum",{"2":{"35":1,"36":1,"59":1,"100":1,"190":2}}],["mining",{"2":{"14":1}}],["morning",{"2":{"255":1}}],["more",{"0":{"50":1},"2":{"6":1,"7":1,"9":1,"12":1,"19":1,"39":1,"40":1,"43":1,"44":1,"47":1,"50":2,"60":1,"83":1,"106":1,"109":1,"118":2,"127":1,"134":1,"158":1,"163":1,"189":1,"214":1,"231":1,"236":1,"242":1,"255":1,"278":1,"289":1,"290":1}}],["mounted",{"2":{"222":1,"250":1}}],["mount",{"2":{"205":4}}],["monitoring",{"2":{"166":1,"307":1}}],["monitored",{"2":{"94":1}}],["monitor",{"2":{"88":1,"93":1,"94":1}}],["months",{"2":{"7":1,"122":1}}],["mock",{"2":{"184":1}}],["mockcontract",{"2":{"43":1}}],["mocha=",{"2":{"101":1}}],["mocha",{"0":{"101":1},"2":{"81":2,"100":1,"101":24,"128":1,"160":1,"185":1,"189":6,"190":1,"240":1,"241":3,"242":4,"244":2,"245":1,"251":1,"277":2,"278":6,"279":1,"280":1}}],["moment",{"2":{"45":1,"301":1}}],["moving",{"2":{"39":1,"306":1}}],["move",{"2":{"8":1,"18":1}}],["modified",{"2":{"264":1,"303":1}}],["modifying",{"2":{"219":1,"247":1}}],["modify",{"0":{"111":1},"2":{"66":1,"110":1,"114":2,"182":1,"219":1,"220":1,"222":1,"247":1,"248":1,"250":1}}],["mod",{"2":{"43":1,"63":3,"197":3}}],["modulename",{"2":{"301":1,"302":1}}],["moduleacct",{"2":{"301":2,"302":2}}],["modules",{"2":{"229":1,"289":1,"291":2,"294":3,"295":1}}],["module=main",{"2":{"283":4}}],["module=grpc",{"2":{"100":1,"260":1}}],["module=txindex",{"2":{"100":2,"260":2,"270":1}}],["module=events",{"2":{"100":1,"260":1}}],["module=abci",{"2":{"100":4,"260":4}}],["module=polaris",{"2":{"270":2}}],["module=pubsub",{"2":{"100":1,"260":1}}],["module=proxy",{"2":{"100":1,"260":1}}],["module=p2p",{"2":{"57":3,"100":3,"260":3}}],["module=blockmanager",{"2":{"82":4,"100":4,"260":4,"270":5,"283":2}}],["module=da",{"2":{"57":1}}],["module=server",{"2":{"57":4,"100":7,"260":7,"270":2}}],["module=icahost",{"2":{"57":1}}],["module=x",{"2":{"57":1}}],["module",{"0":{"294":1,"295":1},"1":{"295":1},"2":{"15":1,"16":1,"18":1,"43":1,"164":1,"219":1,"247":1,"290":3,"294":4,"295":6,"296":2,"300":3}}],["modularism",{"2":{"18":1}}],["modularity",{"2":{"16":1}}],["modular",{"2":{"10":1,"15":1,"117":1,"118":2,"122":1,"131":1,"133":2,"160":2,"164":1}}],["mode",{"2":{"70":4,"100":1,"101":4,"132":1,"177":1,"260":1}}],["models",{"2":{"105":1}}],["model",{"2":{"10":1,"105":1,"109":1}}],["modes",{"0":{"150":1},"1":{"151":1,"152":1,"153":1},"2":{"10":1}}],["mostly",{"2":{"16":1}}],["most",{"2":{"0":1,"14":1,"16":1,"39":1,"59":1,"227":1,"291":2,"300":1}}],["messaging",{"2":{"307":1}}],["messages",{"0":{"296":1},"1":{"297":1},"2":{"48":1,"68":1,"219":1,"247":1,"261":1,"289":1,"296":7,"298":1,"306":1}}],["message",{"0":{"297":1},"2":{"2":1,"68":1,"82":3,"160":1,"209":1,"210":2,"219":1,"221":1,"247":1,"249":1,"294":2,"297":5,"299":2,"300":2,"306":2}}],["meter",{"2":{"306":1}}],["method",{"2":{"20":1,"277":1,"303":1}}],["methods",{"2":{"16":3,"44":2,"138":1,"139":2,"152":1,"277":1}}],["mean",{"2":{"306":1}}],["meaning",{"2":{"289":1}}],["meanwhile",{"2":{"160":1}}],["means",{"2":{"7":1,"116":1,"122":1,"287":3,"301":2}}],["mentioned",{"2":{"123":1}}],["memo",{"2":{"70":1,"101":2,"261":1,"306":1}}],["members",{"2":{"48":1}}],["mempoolttl=25",{"2":{"100":1,"260":1}}],["mempool",{"0":{"142":1},"2":{"14":2,"59":1,"81":3,"100":1,"142":3,"158":3,"260":1}}],["mev",{"2":{"9":1}}],["media",{"2":{"3":1}}],["map",{"2":{"299":3}}],["maple",{"2":{"67":2,"71":2}}],["maliciously",{"2":{"158":1}}],["made",{"2":{"100":1,"133":1,"164":2}}],["maximum",{"2":{"302":1}}],["maximalism",{"2":{"18":1}}],["max",{"2":{"70":2,"101":3,"302":1}}],["maid",{"2":{"45":1}}],["mainnet",{"0":{"233":1,"236":1},"1":{"234":1,"235":1,"236":1,"237":2},"2":{"184":1,"185":2,"189":3,"190":1,"191":1,"225":1,"234":1,"236":5,"237":3,"238":1,"253":1,"277":1}}],["maintaining",{"2":{"10":1}}],["maintain",{"2":{"8":1}}],["main",{"2":{"2":1,"45":1,"122":1,"135":1,"185":1,"188":1,"259":3,"291":1,"300":1}}],["mac",{"2":{"195":1}}],["macos",{"2":{"97":1,"99":1,"227":1,"289":1}}],["macro",{"2":{"44":1}}],["macros",{"2":{"44":2}}],["machinesarm",{"2":{"205":1,"206":1}}],["machines",{"2":{"124":1,"205":1,"206":1,"289":1}}],["machine",{"2":{"2":1,"9":1,"10":1,"21":1,"62":1,"98":1,"105":2,"113":1,"124":2,"165":1,"194":1,"196":1,"257":1,"264":1,"265":2,"289":1,"305":1}}],["manner",{"2":{"142":1}}],["managing",{"2":{"121":1}}],["manager",{"0":{"143":1},"2":{"143":1}}],["manage",{"2":{"15":1,"122":1}}],["many",{"2":{"120":1,"123":1,"127":1,"166":1,"294":1,"299":1,"307":1}}],["manifest",{"2":{"110":1}}],["manually",{"2":{"42":1,"54":1,"59":2,"99":1,"259":1}}],["matter",{"2":{"41":1}}],["materials",{"2":{"0":1,"3":1}}],["market",{"0":{"121":1},"2":{"12":1,"101":2,"122":2}}],["march",{"2":{"12":1}}],["maybe",{"2":{"149":2}}],["may",{"2":{"8":2,"59":2,"72":1,"99":1,"117":1,"139":1,"145":1,"158":1,"167":1,"195":1,"276":1}}],["making",{"2":{"2":1,"18":1,"164":1,"192":1}}],["makes",{"2":{"7":1,"39":1,"68":2,"222":1,"250":1}}],["make",{"2":{"0":1,"2":1,"16":1,"18":1,"37":1,"39":1,"65":1,"69":1,"72":1,"74":1,"75":1,"77":1,"80":1,"92":1,"99":1,"101":1,"114":1,"118":1,"122":2,"148":1,"164":1,"166":2,"177":1,"219":1,"230":1,"247":1,"258":1,"269":1,"272":1,"279":1,"280":1,"290":1,"296":1}}],["f159e11116ec9505fc2c0d97e605357fec0f3dae06b57bfb17ea6a548905043e",{"2":{"306":2}}],["fc0kermqylp8voivw8qfywgeldflbaufcmpm7tb7ptlb4opwzjaost6hbo",{"2":{"160":1}}],["fcfs",{"2":{"142":1}}],["fwsrxeovry",{"2":{"160":1}}],["flow",{"0":{"154":1},"1":{"155":1,"156":1,"157":1,"158":1},"2":{"154":1,"158":1}}],["flexible",{"2":{"145":1}}],["flexibility",{"2":{"120":1,"124":1,"133":1}}],["flags=",{"2":{"173":1}}],["flags",{"0":{"189":1},"2":{"19":2,"23":1,"35":1,"59":1,"76":2,"173":1,"189":1,"190":1,"261":1}}],["flag",{"2":{"19":2,"22":1,"23":1,"35":1,"43":1,"59":2,"66":1,"76":1,"160":1,"189":1,"220":1,"248":1,"277":1,"290":1}}],["fn",{"2":{"43":2,"45":1}}],["f",{"2":{"35":1,"111":6}}],["far",{"2":{"260":1,"263":1,"306":1}}],["fallbackfee=0",{"2":{"170":1}}],["false",{"2":{"101":2,"301":1}}],["familiar",{"2":{"117":1,"212":1,"232":1,"240":1}}],["familiarity",{"2":{"117":1}}],["faucet",{"2":{"101":1,"160":2,"277":1}}],["failed",{"2":{"82":3,"179":1,"210":2}}],["failures",{"2":{"59":1}}],["face",{"2":{"122":1,"302":1}}],["factor",{"2":{"59":2}}],["facilitate",{"2":{"8":1,"16":1,"126":1}}],["fast",{"2":{"46":1}}],["faster",{"2":{"19":1,"122":1,"149":1}}],["further",{"2":{"116":1,"210":1,"284":1,"287":1}}],["furthermore",{"2":{"112":1,"132":2}}],["func",{"2":{"301":2,"302":1}}],["functional",{"2":{"137":1,"264":1}}],["functionality",{"2":{"44":1,"108":1,"179":1,"300":1}}],["function",{"0":{"222":1,"250":1,"301":1,"302":1},"2":{"44":2,"114":2,"179":7,"180":2,"219":1,"222":4,"247":1,"250":4,"301":3,"302":1}}],["functions",{"0":{"300":1},"1":{"301":1,"302":1,"303":1},"2":{"16":1,"44":1,"179":1,"219":1,"247":1,"291":2,"300":1,"303":1}}],["fun",{"2":{"290":1,"306":1}}],["funded",{"2":{"101":2,"236":1,"273":1,"276":1,"277":1}}],["funding",{"2":{"82":1}}],["fund",{"0":{"83":1},"2":{"81":1,"101":2,"185":2,"213":1,"234":1,"241":1,"276":1,"278":1}}],["funds",{"0":{"67":1,"81":1,"271":1},"1":{"82":1,"83":1,"84":1,"85":1,"86":1,"87":1},"2":{"67":2,"81":1,"271":1}}],["future",{"0":{"307":1},"2":{"18":1,"121":1,"123":1,"158":1,"285":1,"302":1,"306":1}}],["fully",{"2":{"8":2,"137":1,"144":1,"147":1,"213":1,"234":1,"241":1,"264":1,"277":1,"278":1}}],["full",{"0":{"51":1,"58":1,"147":1,"151":1},"1":{"52":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1},"2":{"7":1,"19":1,"39":1,"46":1,"50":1,"51":1,"54":1,"55":2,"57":4,"58":3,"77":1,"121":1,"122":2,"131":1,"132":1,"134":1,"135":1,"139":1,"147":1,"151":1,"152":7,"158":6,"225":2,"238":2,"253":2}}],["few",{"2":{"287":1,"301":1,"303":1,"306":1}}],["fetiklj3cwvhuf6b",{"2":{"261":1}}],["fetch",{"2":{"111":1,"152":1}}],["fetched",{"2":{"57":1}}],["feature",{"2":{"52":1,"76":1}}],["features",{"0":{"47":1},"2":{"40":1,"118":1,"127":1}}],["feb",{"2":{"14":1}}],["feel",{"2":{"302":1}}],["feegrants",{"2":{"70":2,"101":2}}],["fee",{"0":{"85":1,"87":1},"2":{"12":1,"72":4,"81":3,"82":1,"85":1,"87":1,"261":1,"306":1}}],["fees",{"2":{"10":1,"72":4,"74":1,"75":2,"94":1,"101":1,"261":1}}],["feedback",{"0":{"4":1},"2":{"4":1}}],["fresh",{"2":{"290":1}}],["fred",{"2":{"210":3}}],["frequency",{"2":{"143":1}}],["free",{"0":{"11":1},"2":{"9":1,"302":1}}],["freedom",{"2":{"7":1,"118":1}}],["front",{"2":{"307":2}}],["frontend",{"0":{"272":1,"275":1,"276":1},"1":{"273":1,"274":1,"275":1,"276":1},"2":{"129":1,"228":3,"272":1,"275":8,"276":1}}],["fromaddr",{"2":{"303":1}}],["from",{"0":{"74":1,"75":1},"2":{"2":1,"4":1,"9":2,"11":1,"43":1,"44":1,"54":2,"55":1,"56":1,"57":2,"58":1,"66":1,"68":1,"74":2,"75":2,"76":1,"80":1,"101":1,"114":2,"115":1,"122":3,"123":1,"135":1,"139":1,"152":1,"172":1,"175":1,"180":1,"182":1,"184":1,"186":1,"188":1,"190":1,"200":1,"206":2,"209":1,"210":1,"214":1,"221":1,"231":1,"236":2,"242":1,"249":1,"259":1,"261":3,"273":1,"275":2,"276":1,"277":1,"279":1,"290":2,"294":1,"295":1,"296":1,"300":1,"301":2,"306":7}}],["fraudulent",{"2":{"122":1,"152":2}}],["fraud",{"0":{"152":1,"158":1},"2":{"7":1,"63":1,"122":1,"127":1,"132":1,"135":2,"138":1,"145":1,"147":2,"148":1,"152":7,"154":1,"158":1,"197":1}}],["framework",{"0":{"7":1},"1":{"8":1,"9":1,"10":1,"11":1},"2":{"6":1,"7":1,"12":1,"14":1,"15":1,"37":1,"39":1,"77":1,"118":2,"122":1,"127":1,"133":1,"281":1}}],["five",{"2":{"287":2,"306":1}}],["field",{"2":{"220":1,"248":1}}],["fit",{"2":{"133":1}}],["finish",{"2":{"168":1,"175":1}}],["finished",{"2":{"114":1,"179":2,"273":1}}],["finalizing",{"2":{"270":1}}],["finalized",{"2":{"100":1,"135":1,"260":1,"270":1,"283":1}}],["final",{"2":{"50":1,"297":1}}],["finally",{"2":{"36":1,"102":1,"112":1}}],["finding",{"2":{"190":1,"216":1,"236":1,"244":1}}],["find",{"2":{"0":1,"4":1,"5":1,"43":1,"44":2,"50":1,"77":2,"110":1,"152":1,"158":1,"196":1,"213":1,"221":1,"234":1,"241":1,"249":1,"259":1,"278":1,"280":1}}],["fixed",{"2":{"59":1}}],["fix",{"2":{"18":1,"111":1,"197":1}}],["fixing",{"2":{"2":1}}],["filter",{"2":{"101":1}}],["file",{"0":{"34":1,"42":1,"303":1},"2":{"27":2,"35":1,"40":1,"42":2,"43":4,"45":1,"48":1,"70":2,"80":1,"110":1,"111":8,"112":1,"179":1,"188":2,"219":1,"220":1,"221":1,"222":2,"247":1,"248":1,"249":1,"250":2,"259":5,"283":1,"291":4,"301":1,"302":1,"303":2,"306":1}}],["files",{"2":{"3":1,"48":1,"110":1,"111":1,"114":1,"166":1,"179":1,"187":1,"219":1,"247":1,"273":1,"291":2,"293":1,"303":1}}],["fill",{"2":{"11":1,"92":1,"303":1}}],["firstly",{"2":{"70":1}}],["first",{"0":{"7":1,"94":1,"220":1,"248":1},"1":{"8":1,"9":1,"10":1,"11":1},"2":{"6":1,"12":1,"26":1,"53":1,"77":1,"83":1,"89":1,"90":1,"93":1,"94":1,"100":1,"115":1,"133":1,"142":2,"149":2,"163":1,"166":1,"174":1,"178":1,"182":1,"189":1,"195":1,"208":1,"225":1,"228":1,"253":1,"261":1,"269":1,"272":1,"275":1,"279":1,"290":2,"296":1,"301":2,"303":1}}],["footprint",{"2":{"196":1}}],["food",{"2":{"110":2,"114":1,"115":1}}],["four",{"2":{"122":1}}],["foundation",{"2":{"290":1}}],["foundryup",{"2":{"269":1}}],["foundry",{"0":{"168":1,"268":1},"2":{"168":3,"178":3,"179":1,"268":1,"273":1,"290":1}}],["found",{"2":{"14":1,"72":2,"99":1,"138":1,"188":2,"196":1,"200":1,"214":1,"242":1,"259":1,"283":3}}],["folders",{"2":{"215":1,"235":1,"243":1}}],["folder",{"2":{"48":1,"172":1,"176":1}}],["followed",{"2":{"256":1}}],["follows",{"2":{"138":1,"189":1}}],["follow",{"2":{"13":1,"25":1,"27":1,"86":1,"195":2,"213":1,"234":1,"241":1,"271":1,"278":1,"286":1}}],["following",{"2":{"1":1,"9":1,"21":1,"23":1,"24":1,"27":2,"36":1,"37":1,"39":1,"48":1,"67":2,"70":1,"76":1,"83":1,"108":1,"111":2,"114":1,"115":1,"128":2,"143":1,"144":1,"159":1,"160":1,"169":1,"171":1,"172":1,"175":1,"176":1,"179":4,"180":1,"182":1,"187":2,"200":2,"203":1,"204":1,"205":1,"206":1,"207":1,"208":1,"209":1,"214":1,"216":1,"219":1,"222":1,"224":2,"229":2,"242":1,"244":1,"247":1,"250":1,"252":2,"261":1,"265":1,"271":1,"282":1,"286":1,"287":1,"289":1,"290":1,"293":1,"294":1,"295":2,"297":1,"300":1,"301":3,"302":3,"303":1,"306":4}}],["foam",{"2":{"45":1}}],["focus",{"2":{"8":1,"72":1,"105":1}}],["forth",{"2":{"191":1}}],["forget",{"2":{"138":1}}],["forge",{"2":{"114":3,"179":3,"180":1,"273":1}}],["formula",{"2":{"100":1}}],["formatting",{"2":{"111":1}}],["formatted",{"2":{"111":2,"112":1}}],["format",{"2":{"70":2,"101":2,"301":1,"302":2}}],["form",{"2":{"11":1,"18":1,"92":1}}],["forward",{"2":{"8":1,"306":1}}],["forking",{"0":{"158":1}}],["forks",{"2":{"8":1}}],["fork",{"2":{"2":3,"7":1,"10":1,"139":1,"149":3,"158":1,"181":1}}],["for",{"0":{"10":1,"25":1,"171":1,"189":1,"199":1},"1":{"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"200":1,"201":1},"2":{"0":1,"2":1,"3":1,"4":1,"6":1,"7":3,"8":2,"9":1,"10":2,"12":3,"13":2,"14":2,"15":3,"16":5,"17":1,"18":1,"19":1,"24":1,"25":1,"26":1,"35":1,"37":3,"39":2,"43":3,"44":4,"47":3,"48":2,"50":1,"54":1,"55":1,"57":4,"60":3,"63":1,"68":1,"71":1,"72":3,"74":1,"76":1,"80":4,"93":1,"96":2,"98":1,"99":1,"100":1,"101":1,"105":2,"109":2,"110":1,"111":3,"112":3,"114":2,"116":2,"118":3,"121":4,"122":4,"125":1,"126":3,"127":1,"133":1,"134":1,"137":1,"138":1,"139":1,"140":1,"143":4,"144":1,"147":2,"148":1,"149":3,"154":1,"158":1,"159":1,"160":2,"163":1,"164":4,"167":1,"170":1,"173":1,"177":1,"178":1,"179":2,"184":1,"185":1,"187":1,"189":9,"190":3,"192":5,"194":1,"195":4,"196":2,"197":1,"206":2,"207":2,"208":1,"209":1,"210":1,"212":2,"217":2,"219":3,"220":2,"227":1,"236":3,"237":1,"240":2,"245":2,"247":3,"248":2,"255":2,"256":1,"257":1,"258":1,"260":1,"261":2,"262":1,"264":1,"273":1,"277":1,"280":1,"285":2,"286":1,"287":5,"289":6,"290":1,"291":6,"293":1,"294":3,"295":4,"296":2,"298":1,"299":1,"300":3,"301":6,"302":10,"303":2,"306":4,"307":1}}],["rf",{"2":{"167":1,"176":1,"215":1,"235":1,"243":1}}],["rly",{"2":{"69":2,"71":1,"72":2,"101":8}}],["rt",{"2":{"45":2}}],["rs",{"2":{"43":4,"44":2,"48":4,"195":1}}],["rpcuser",{"2":{"177":1}}],["rpcuser=rpcuser",{"2":{"170":1,"171":1,"172":4,"173":2}}],["rpcpass",{"2":{"177":1}}],["rpcpassword=rpcpass",{"2":{"170":1,"171":1,"172":4,"173":2}}],["rpcport=18332",{"2":{"170":1,"171":1,"172":4,"173":2}}],["rpc",{"0":{"144":1},"2":{"35":1,"36":1,"66":1,"70":2,"80":1,"85":1,"87":1,"92":1,"100":1,"101":3,"114":4,"115":2,"144":5,"160":4,"181":6,"182":3,"189":4,"210":2,"219":2,"220":4,"227":1,"247":2,"248":4,"260":1,"273":4,"274":2,"276":1,"277":2,"278":1,"279":1}}],["rpcs",{"2":{"9":1}}],["rm",{"2":{"35":1,"80":1,"167":2,"205":2,"215":1,"235":1,"243":1}}],["r",{"2":{"34":2,"101":1,"102":1,"189":1,"206":2,"208":1,"210":1,"215":1,"235":1,"243":1,"279":2,"301":2,"306":1}}],["routing",{"2":{"294":1}}],["routines",{"2":{"143":2}}],["round",{"2":{"160":1}}],["rosm",{"0":{"160":1,"161":1},"1":{"161":1},"2":{"160":9,"161":1}}],["roadmap",{"2":{"122":1}}],["roots",{"2":{"152":1}}],["rootcodespace",{"2":{"81":1}}],["root",{"2":{"27":2,"37":1,"70":2,"115":1,"149":1,"168":1,"172":2,"188":3,"259":1,"283":4}}],["rollup=",{"2":{"101":1,"102":1}}],["rollup",{"0":{"7":1,"20":1,"22":1,"23":1,"25":1,"51":1,"63":1,"74":1,"75":1,"79":1,"80":1,"81":1,"84":1,"86":1,"88":1,"91":1,"95":1,"99":1,"100":1,"104":1,"124":1,"125":1,"128":1,"162":1,"177":1,"182":1,"183":1,"187":1,"188":1,"190":1,"192":1,"200":1,"211":1,"214":1,"217":1,"223":1,"224":1,"232":1,"236":1,"237":1,"239":1,"242":1,"245":1,"251":1,"252":1,"254":1,"258":1,"259":1,"260":1,"280":1,"283":1},"1":{"8":1,"9":1,"10":1,"11":1,"21":1,"22":1,"23":1,"24":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"52":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"80":1,"81":1,"82":2,"83":2,"84":2,"85":2,"86":2,"87":2,"89":1,"90":1,"91":1,"92":2,"93":1,"94":1,"96":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"115":1,"116":1,"129":1,"130":1,"131":1,"132":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"173":1,"174":1,"175":1,"176":1,"177":1,"178":2,"179":2,"180":2,"181":2,"182":2,"184":1,"185":1,"186":1,"187":1,"188":1,"189":1,"190":1,"191":1,"193":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"200":1,"201":1,"202":1,"203":1,"204":1,"205":1,"206":1,"207":1,"208":1,"209":1,"210":1,"212":1,"213":1,"214":1,"215":2,"216":2,"217":1,"218":1,"219":1,"220":1,"221":1,"222":1,"223":1,"224":1,"225":1,"233":1,"234":1,"235":1,"236":1,"237":2,"238":1,"240":1,"241":1,"242":1,"243":2,"244":2,"245":1,"246":1,"247":1,"248":1,"249":1,"250":1,"251":1,"252":1,"253":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"261":1,"262":1,"263":1},"2":{"6":1,"7":2,"8":1,"12":2,"13":1,"14":1,"17":1,"19":2,"20":1,"22":1,"23":1,"24":1,"25":2,"27":3,"34":4,"35":4,"37":3,"51":1,"59":3,"60":2,"63":2,"67":1,"76":2,"77":6,"79":1,"80":4,"81":2,"84":1,"86":1,"87":1,"88":1,"89":2,"90":1,"91":1,"92":2,"93":1,"94":2,"96":6,"99":4,"100":1,"101":13,"102":3,"103":1,"105":2,"118":1,"122":4,"124":1,"125":2,"129":1,"130":1,"133":1,"135":3,"137":1,"138":1,"139":2,"140":1,"143":2,"144":5,"145":3,"147":1,"148":2,"149":3,"151":3,"154":2,"158":5,"160":1,"163":1,"169":1,"177":1,"182":1,"184":3,"185":2,"186":1,"188":2,"189":1,"190":4,"191":1,"200":2,"201":1,"212":2,"214":2,"215":1,"216":2,"217":2,"223":1,"225":2,"226":1,"227":1,"228":1,"231":2,"232":2,"235":1,"236":4,"237":1,"238":2,"240":2,"242":2,"243":1,"244":2,"245":2,"251":1,"253":2,"255":4,"258":3,"259":3,"260":2,"263":1,"264":1,"270":2,"272":1,"279":1,"280":1,"281":2,"283":1,"284":2,"285":1,"293":1,"305":1,"306":1,"308":1}}],["rollups",{"0":{"12":1},"1":{"13":1,"14":1,"15":1,"16":1,"17":1,"18":1},"2":{"3":1,"6":1,"7":6,"8":4,"9":2,"10":3,"12":5,"13":1,"14":1,"15":2,"18":3,"81":1,"118":4,"122":8,"123":1,"126":4,"128":1,"132":1,"133":1,"147":1,"149":3,"151":2,"153":1,"163":2,"164":6}}],["rollkitheight=11",{"2":{"270":1}}],["rollkitlatesttag",{"2":{"256":1,"282":1}}],["rollkit",{"0":{"0":1,"7":1,"12":1,"15":1,"16":1,"27":1,"107":1,"113":1,"117":1,"118":1,"119":1,"122":1,"123":1,"127":1,"135":1,"146":1,"202":1,"264":1,"269":1,"282":1,"292":1,"293":1},"1":{"1":1,"2":1,"3":1,"4":1,"8":1,"9":1,"10":1,"11":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"114":1,"118":1,"119":1,"120":2,"121":2,"122":1,"123":1,"124":2,"125":2,"126":2,"127":1,"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1,"146":1,"147":2,"148":2,"149":2,"150":1,"151":1,"152":1,"153":1,"203":1,"204":1,"205":1,"206":1,"265":1,"266":1,"267":1,"268":1,"269":1,"270":1,"271":1,"272":1,"273":1,"274":1,"275":1,"276":1,"277":1,"278":1,"279":1,"280":1,"293":1},"2":{"0":2,"3":3,"6":2,"7":5,"9":3,"10":5,"11":1,"12":5,"13":2,"15":3,"16":3,"17":2,"18":4,"19":4,"21":1,"22":1,"23":1,"27":3,"34":1,"35":4,"36":2,"37":3,"55":1,"58":1,"59":5,"60":1,"63":5,"66":1,"76":3,"77":3,"78":1,"79":1,"80":4,"81":1,"84":1,"85":4,"87":5,"88":1,"90":1,"92":2,"96":1,"97":2,"98":1,"99":1,"100":3,"105":2,"106":1,"107":2,"111":4,"113":2,"114":3,"116":2,"117":2,"118":3,"122":8,"123":1,"124":2,"125":2,"127":2,"128":1,"132":3,"133":2,"134":3,"135":1,"137":1,"138":6,"139":1,"140":3,"143":3,"144":1,"145":2,"146":1,"148":1,"149":1,"151":1,"152":6,"153":1,"159":1,"160":8,"163":6,"164":5,"177":5,"184":1,"186":1,"187":7,"188":4,"189":4,"190":4,"192":1,"194":1,"197":4,"198":1,"199":1,"200":1,"201":1,"210":1,"214":1,"227":1,"228":1,"236":1,"238":1,"242":1,"255":1,"256":2,"257":1,"258":1,"259":6,"260":3,"264":6,"265":1,"266":1,"267":2,"270":2,"273":1,"277":1,"278":2,"279":1,"281":2,"282":3,"283":4,"284":2,"285":2,"292":1,"293":8,"305":1,"306":7,"308":1}}],["risk",{"2":{"121":1}}],["right",{"2":{"68":1,"92":1,"196":1,"279":1,"287":1,"303":1}}],["rich",{"2":{"9":1}}],["rid",{"2":{"8":1}}],["rustc",{"2":{"195":1}}],["rustcounter",{"2":{"39":1}}],["rustup",{"2":{"195":4}}],["rustuse",{"2":{"43":1,"45":1}}],["rustpub",{"2":{"44":1}}],["rust",{"0":{"195":1},"2":{"39":1,"43":2,"44":1,"192":1,"195":5,"205":3,"206":1,"207":1}}],["rule",{"0":{"94":1},"2":{"10":1,"101":1,"149":3}}],["rules",{"2":{"8":1,"287":2}}],["runs",{"2":{"81":1,"82":1,"98":1,"257":1,"305":1}}],["runtime",{"2":{"45":3}}],["running",{"0":{"81":1,"98":1,"170":1,"177":1,"185":1,"190":1,"229":1,"257":1,"277":1,"306":1},"1":{"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"171":1,"172":1,"173":1,"174":1,"175":1,"176":1,"178":1,"179":1,"180":1,"181":1,"182":1,"278":1,"279":1,"280":1},"2":{"13":1,"54":1,"57":3,"58":1,"59":1,"62":1,"66":2,"80":1,"81":1,"83":1,"84":1,"87":1,"99":3,"100":1,"113":1,"132":1,"148":1,"169":2,"172":1,"177":1,"179":1,"181":1,"187":1,"188":1,"190":1,"194":1,"198":1,"212":1,"213":1,"223":1,"227":1,"229":1,"232":1,"236":1,"238":1,"240":1,"251":1,"258":1,"259":1,"260":1,"264":1,"265":1,"270":1,"275":1,"277":1,"278":1,"284":1,"293":1,"305":1,"306":2,"307":1}}],["run",{"0":{"23":1,"63":1,"64":1,"66":1,"213":1,"234":1,"241":1,"266":1,"283":1,"304":1,"305":1},"1":{"65":1,"66":1,"305":1,"306":1,"307":1},"2":{"1":2,"8":1,"12":1,"17":1,"18":1,"21":2,"27":3,"42":1,"58":1,"63":3,"66":1,"78":1,"80":1,"83":1,"97":1,"98":1,"111":1,"112":3,"114":2,"118":1,"132":1,"140":1,"143":3,"163":1,"167":1,"168":1,"171":1,"172":1,"175":1,"178":1,"179":1,"180":1,"182":1,"187":2,"190":1,"195":1,"198":1,"203":1,"204":1,"205":3,"206":2,"213":1,"217":1,"220":1,"224":1,"227":1,"229":1,"230":1,"234":1,"236":1,"237":1,"241":1,"245":1,"248":1,"252":1,"257":1,"264":1,"265":1,"266":1,"273":1,"278":3,"282":1,"289":2,"290":1,"293":2,"297":1,"305":1,"306":2}}],["ram",{"2":{"165":1}}],["raw",{"2":{"144":1,"210":1,"306":2}}],["rabbit",{"2":{"127":1}}],["rather",{"2":{"122":2}}],["ratio",{"2":{"14":1}}],["rapid",{"2":{"118":1}}],["rand",{"2":{"177":1,"189":1,"214":1,"236":1,"242":1,"278":1}}],["ran",{"2":{"54":1,"81":1,"114":1,"143":1,"217":1,"237":1,"245":1,"273":1,"290":1}}],["range",{"0":{"88":1},"1":{"89":1,"90":1,"91":1,"92":1,"93":1,"94":1},"2":{"5":1,"77":2,"88":1,"89":1,"91":1,"92":2,"93":1,"301":1}}],["raise",{"2":{"4":1}}],["revealed",{"2":{"307":1}}],["review",{"2":{"2":1,"39":3,"46":1}}],["reward",{"2":{"301":3,"302":4,"303":1}}],["req",{"2":{"222":4,"250":4}}],["requisites",{"0":{"61":1,"286":1},"1":{"62":1}}],["require",{"2":{"122":1,"152":1,"221":1,"249":1}}],["requirements",{"0":{"62":1}}],["required",{"2":{"10":1,"96":1,"219":1,"247":1,"255":1}}],["requires",{"2":{"8":1,"121":2,"149":2,"169":1,"189":1,"205":1}}],["request",{"0":{"221":1,"249":1},"2":{"2":2,"160":1,"210":1,"220":2,"222":4,"230":1,"248":2,"250":4}}],["remainder",{"2":{"206":1,"271":1}}],["remaining",{"2":{"152":1,"166":1}}],["remember",{"2":{"172":1,"301":1}}],["removeguess",{"2":{"302":1}}],["remove",{"2":{"7":1,"8":1,"27":1,"215":1,"235":1,"243":1,"302":1}}],["reuse",{"2":{"122":1,"145":1,"294":1}}],["registry",{"2":{"205":2}}],["register",{"2":{"81":1,"210":3}}],["regtest",{"2":{"169":1,"170":1,"171":1,"172":4,"173":2,"176":1}}],["regret",{"2":{"101":2,"264":1}}],["reiterate",{"2":{"85":1}}],["replay",{"2":{"151":1}}],["replacement",{"2":{"137":1,"197":1,"306":1}}],["replace",{"2":{"63":1,"70":1,"111":2,"138":2,"175":1,"189":2,"197":2,"214":1,"236":1,"242":1,"301":1,"302":1}}],["repositories",{"2":{"307":1}}],["repository",{"2":{"0":1,"1":1,"2":2,"4":1,"46":1,"99":1,"138":2,"197":1,"258":1,"267":1,"272":1}}],["repo",{"0":{"228":1,"267":1},"2":{"50":1,"110":1,"200":1,"214":1,"228":1,"242":1}}],["record",{"2":{"152":1,"210":2}}],["recommend",{"2":{"87":1,"196":1,"286":1}}],["recommended",{"2":{"60":1,"148":1}}],["receipts",{"2":{"114":2,"273":2}}],["receive",{"2":{"122":1,"135":1,"143":2}}],["receiver=",{"2":{"276":1}}],["receiver",{"2":{"74":2,"75":1,"101":1,"262":1,"276":1}}],["received",{"2":{"71":1,"143":2}}],["receiving",{"2":{"60":1}}],["recruit",{"2":{"7":1}}],["reducing",{"2":{"39":1}}],["reduce",{"0":{"87":1},"2":{"10":1,"122":1}}],["rebuild",{"2":{"27":1}}],["retrieving",{"2":{"277":1}}],["retrieveloop",{"2":{"143":3}}],["retrieve",{"2":{"54":1,"143":1,"277":1}}],["retrieveblocks",{"2":{"16":1,"139":1}}],["retrieveblock",{"2":{"16":1}}],["returned",{"2":{"221":1,"249":1}}],["returning",{"2":{"142":1,"220":1,"248":1}}],["returns",{"2":{"43":1,"44":2,"179":1,"219":1,"220":3,"222":2,"247":1,"248":3,"250":2}}],["return",{"2":{"43":1,"59":1,"69":1,"72":1,"74":1,"75":1,"179":1,"301":7,"302":7}}],["retain",{"2":{"7":1}}],["reach",{"2":{"302":1}}],["reached",{"2":{"302":1}}],["reasons",{"2":{"154":1}}],["real",{"2":{"91":1,"93":1,"149":2}}],["reality",{"2":{"13":1,"14":1}}],["readme",{"2":{"291":2}}],["ready",{"2":{"18":1,"19":1,"39":1,"77":1,"127":1,"177":1,"305":1}}],["reading",{"2":{"16":1,"116":1}}],["reader",{"2":{"16":2}}],["read",{"2":{"16":3,"118":1,"158":1,"163":1,"181":1,"182":1,"289":1,"291":1,"306":1}}],["resource",{"2":{"134":1,"148":1}}],["resources",{"2":{"8":1,"9":1,"110":3,"114":1,"115":1,"120":1,"121":1,"122":2}}],["resolved",{"2":{"197":1}}],["resolve",{"2":{"126":1,"210":1}}],["resist",{"2":{"101":2}}],["resistance",{"2":{"12":1,"149":1}}],["res=0",{"2":{"100":1,"260":1,"270":1,"283":1}}],["responsible",{"2":{"143":1,"149":1,"219":1,"220":1,"247":1,"248":1,"291":1,"294":1,"295":1}}],["response",{"0":{"221":1,"249":1},"2":{"44":2,"210":1,"220":5,"222":3,"224":1,"248":5,"250":3,"252":1,"306":3}}],["respective",{"2":{"80":1,"294":1}}],["restrict",{"2":{"124":1}}],["restricted",{"2":{"120":1}}],["rest",{"2":{"80":1,"122":1}}],["restore",{"2":{"71":2,"101":3}}],["restarted",{"2":{"87":1}}],["restarting",{"0":{"86":1,"176":1,"217":1,"237":1,"245":1},"2":{"85":1,"87":1}}],["restart",{"0":{"35":1,"79":1,"80":1,"81":1,"87":1,"223":1,"251":1},"1":{"80":1,"81":1,"82":2,"83":2,"84":2,"85":2,"86":2,"87":2},"2":{"35":5,"77":1,"79":1,"80":11,"81":2,"82":1,"86":1,"129":1,"195":1,"217":5,"223":1,"237":4,"245":5,"251":1}}],["results",{"2":{"158":1,"160":1}}],["result",{"2":{"45":1,"158":1,"160":1,"179":1,"189":1,"279":2}}],["reset",{"2":{"28":2,"44":3}}],["resetting",{"0":{"28":1}}],["research",{"2":{"12":1,"13":1,"15":1,"18":1}}],["rent",{"2":{"10":1}}],["refactored",{"2":{"302":1}}],["refresh",{"2":{"289":1}}],["refused",{"2":{"158":1}}],["refers",{"2":{"149":1}}],["refer",{"2":{"47":1}}],["references",{"2":{"300":1}}],["reference",{"2":{"0":1,"3":1,"48":1,"114":1,"206":1}}],["refined",{"2":{"9":1}}],["reload",{"2":{"195":1}}],["rely",{"2":{"105":1,"147":1}}],["relying",{"2":{"8":1}}],["relayed",{"2":{"74":1,"75":1}}],["relayers",{"2":{"68":2}}],["relayer",{"0":{"68":1,"69":1,"70":1,"71":1},"1":{"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1},"2":{"60":1,"68":4,"69":2,"70":3,"101":14}}],["relaying",{"0":{"68":1,"73":1},"1":{"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1},"2":{"71":1,"73":1}}],["relay",{"2":{"66":1,"67":2,"75":1,"261":1}}],["related",{"2":{"9":1}}],["relevant",{"2":{"88":1}}],["relevantly",{"2":{"2":1}}],["released",{"2":{"52":1}}],["release",{"2":{"9":1,"138":1,"203":1,"229":1,"264":1}}],["re",{"0":{"83":1},"2":{"2":1,"7":1,"8":1,"11":1,"12":1,"16":1,"19":1,"27":1,"39":1,"43":1,"44":1,"66":1,"81":2,"108":2,"117":1,"120":1,"127":2,"132":1,"133":2,"148":1,"177":1,"189":1,"217":1,"219":1,"225":1,"238":1,"245":1,"247":1,"253":1,"279":1,"305":1}}],["tsx",{"2":{"275":1}}],["ttl",{"2":{"100":1,"260":1}}],["tmp",{"2":{"98":1,"99":1,"101":2}}],["txindex=1",{"2":{"170":1}}],["txhash",{"2":{"102":1,"206":2,"210":1,"261":1,"306":5}}],["txs=0",{"2":{"270":1}}],["txs",{"2":{"100":1,"160":2,"260":1,"270":1,"283":1}}],["tx",{"2":{"72":4,"74":2,"75":1,"81":2,"94":1,"101":6,"102":3,"206":2,"207":1,"208":1,"209":1,"210":2,"261":1,"303":1,"306":7}}],["txt",{"2":{"54":1,"111":1,"112":1,"115":1}}],["two",{"2":{"72":1,"154":1,"261":1,"299":1}}],["tweet",{"2":{"14":1}}],["title",{"2":{"302":2,"303":1}}],["tia",{"0":{"95":1},"1":{"96":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1},"2":{"77":1,"81":1,"87":2,"96":3,"100":1,"101":3,"102":1,"103":1,"185":2,"277":1}}],["tip",{"2":{"63":1,"66":1,"72":1,"74":1,"96":1,"99":1,"115":1,"117":1,"178":1,"189":1,"192":1,"195":1,"197":1,"212":1,"214":1,"226":1,"227":1,"230":1,"232":1,"236":1,"240":1,"242":1,"255":1,"261":1,"264":1,"275":1,"277":1,"278":1,"285":1}}],["tidy",{"2":{"63":1,"197":1}}],["timezone",{"2":{"307":1}}],["timer",{"2":{"143":3}}],["time=1000",{"2":{"100":1,"260":1}}],["timeout",{"2":{"70":5,"101":5,"261":1,"306":2}}],["timestamp",{"2":{"160":1,"210":1,"306":1}}],["times",{"2":{"19":2,"302":2}}],["time",{"0":{"121":1},"2":{"7":1,"10":1,"14":1,"19":5,"39":1,"42":1,"91":1,"93":1,"94":1,"121":1,"122":2,"149":2,"160":3,"185":1,"291":1,"300":1,"301":2,"302":2,"303":1,"307":1}}],["tcp",{"2":{"35":1,"36":1,"57":2,"74":2,"75":3,"80":1,"85":1,"87":1,"94":1,"100":2,"260":2}}],["trigger",{"2":{"296":1}}],["tries",{"2":{"287":2,"302":2}}],["triple",{"2":{"72":1}}],["trying",{"2":{"197":1,"306":1}}],["try",{"2":{"180":1,"210":1,"301":1,"302":2,"306":3}}],["true",{"2":{"70":2,"121":1,"177":2,"301":1}}],["trusted",{"2":{"8":1}}],["trust",{"2":{"8":2,"60":2,"67":2,"71":2,"122":1,"126":1,"135":1,"148":1,"152":1}}],["tradeoffs",{"2":{"122":1}}],["trade",{"2":{"118":1,"121":1,"122":1}}],["tracked",{"2":{"264":1}}],["track",{"2":{"83":1}}],["tracking",{"2":{"60":1,"295":1}}],["transitions",{"2":{"296":1}}],["transition",{"2":{"152":2}}],["transient",{"2":{"59":1}}],["transfers",{"2":{"101":1,"126":1,"295":2}}],["transfer",{"0":{"74":1,"75":1},"2":{"72":11,"73":1,"74":5,"75":4,"100":2,"101":4,"209":2,"276":1}}],["transact",{"2":{"72":4,"158":1}}],["transactionindex",{"2":{"115":1}}],["transactionhash",{"2":{"115":1}}],["transaction",{"0":{"32":1,"154":1,"155":1,"156":1},"1":{"155":1,"156":1,"157":1,"158":1},"2":{"14":2,"32":1,"59":2,"72":5,"74":1,"75":1,"81":2,"94":3,"102":2,"134":1,"144":1,"149":1,"154":1,"158":6,"206":1,"208":1,"261":6,"262":1,"294":1,"306":9}}],["transactions",{"0":{"33":1,"102":1,"261":1},"2":{"14":1,"16":1,"33":1,"76":1,"88":1,"89":1,"91":1,"93":2,"94":1,"96":1,"122":2,"132":1,"135":1,"142":2,"144":2,"145":1,"149":2,"151":1,"152":2,"154":1,"158":2,"160":1,"181":1,"182":1,"255":1,"260":1,"295":1,"296":1,"306":2}}],["traits",{"2":{"44":1}}],["tlsv1",{"2":{"195":1}}],["tls",{"2":{"177":1}}],["tl",{"0":{"13":1}}],["team",{"2":{"192":1,"205":1}}],["teach",{"2":{"79":1}}],["tether",{"2":{"151":1}}],["techniques",{"2":{"112":1}}],["technical",{"0":{"134":1},"2":{"3":1}}],["telegram",{"2":{"78":1,"132":1}}],["text",{"2":{"70":1,"220":3,"221":2,"222":3,"248":3,"249":2,"250":3}}],["termination",{"2":{"72":8}}],["terminal",{"2":{"54":1,"63":1,"66":1,"84":1,"99":1,"171":1,"203":1,"220":2,"236":1,"248":2,"266":1,"269":1,"276":1,"280":1,"282":1,"289":3,"307":1}}],["terms",{"2":{"68":1}}],["template",{"2":{"291":1}}],["temporary",{"2":{"197":1}}],["temp",{"2":{"34":2}}],["tendermint",{"2":{"28":1,"72":8,"160":1}}],["testutil",{"2":{"291":1}}],["testapp",{"2":{"279":1}}],["testdecrement",{"2":{"179":2}}],["testincrement",{"2":{"179":2}}],["testing",{"2":{"24":1,"39":1,"50":1,"77":1,"291":1}}],["testgetcount",{"2":{"179":2}}],["testnets",{"2":{"184":1,"191":1}}],["testnet",{"0":{"64":1,"66":1,"101":1,"128":1,"159":1,"160":1,"240":1},"1":{"65":1,"66":1,"129":1,"130":1,"131":1,"132":1,"160":1,"161":2,"241":1,"242":1,"243":1,"244":1,"245":1,"246":1,"247":1,"248":1,"249":1,"250":1,"251":1,"252":1},"2":{"60":1,"66":3,"70":2,"72":6,"73":1,"74":2,"75":1,"81":2,"100":1,"101":4,"128":1,"159":1,"161":1,"163":1,"181":1,"185":2,"189":3,"190":1,"214":4,"216":1,"217":3,"223":1,"232":1,"240":1,"241":1,"242":4,"244":1,"245":3,"251":1,"277":3,"278":1,"280":1}}],["tests",{"0":{"179":1,"204":1},"2":{"45":2,"179":1,"204":1}}],["test",{"2":{"9":1,"17":2,"30":1,"31":1,"32":1,"39":3,"70":3,"74":1,"83":1,"94":1,"101":5,"102":2,"137":1,"167":1,"179":10,"180":1,"181":1,"182":2,"204":1,"206":3,"209":1,"210":2,"261":2,"303":1,"305":1,"306":6}}],["tested",{"2":{"9":1,"180":1,"182":1}}],["t",{"2":{"8":1,"63":1,"81":1,"83":1,"90":1,"100":1,"116":1,"138":1,"147":1,"161":1,"179":2,"195":2,"227":1,"261":1,"266":1,"287":1,"302":2,"306":1}}],["tags",{"2":{"197":1}}],["tar",{"2":{"166":1,"167":4}}],["targeted",{"2":{"286":1}}],["target=",{"2":{"205":4}}],["target",{"2":{"43":3,"195":2,"203":1,"205":2}}],["tasks",{"2":{"166":1}}],["taking",{"2":{"125":1}}],["taken",{"2":{"210":1}}],["takes",{"2":{"122":1,"297":1}}],["take",{"0":{"8":1},"2":{"208":1,"289":1,"303":1}}],["tailored",{"2":{"124":1}}],["tail",{"2":{"101":1}}],["tab",{"2":{"92":1,"93":1,"94":1}}],["table",{"0":{"6":1}}],["talk",{"2":{"68":1}}],["talking",{"2":{"68":1}}],["taproot",{"0":{"14":1},"2":{"13":1,"14":5,"16":3,"164":1}}],["tap",{"2":{"7":1}}],["typical",{"2":{"154":1}}],["typically",{"2":{"149":1}}],["typing",{"2":{"7":1}}],["type=light",{"2":{"278":1}}],["type=hash",{"2":{"208":1,"306":1}}],["type=volume",{"2":{"205":4}}],["typed",{"2":{"81":1}}],["type",{"2":{"70":4,"72":4,"83":1,"101":4,"115":1,"126":1,"160":1,"220":1,"222":1,"248":1,"250":1,"261":7,"291":1,"299":3,"301":1,"302":3,"306":2}}],["types",{"0":{"146":1,"221":1,"249":1,"298":1,"299":1},"1":{"147":1,"148":1,"149":1,"299":1},"2":{"48":1,"72":4,"219":1,"222":6,"247":1,"250":6,"289":1,"298":1,"301":8,"302":9,"303":1}}],["typos",{"2":{"2":1}}],["tube",{"2":{"39":1}}],["tutorial",{"0":{"60":1,"104":1,"162":1},"1":{"61":1,"62":1,"63":1,"64":1,"65":1,"66":1,"67":1,"68":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"115":1,"116":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"173":1,"174":1,"175":1,"176":1,"177":1,"178":1,"179":1,"180":1,"181":1,"182":1},"2":{"35":1,"53":1,"60":1,"80":2,"90":1,"96":2,"109":1,"110":1,"159":1,"163":2,"177":1,"178":1,"184":2,"186":1,"192":3,"194":1,"195":1,"196":1,"198":1,"206":1,"212":4,"220":2,"225":2,"226":1,"227":1,"231":1,"232":3,"236":1,"238":1,"240":4,"248":2,"253":2,"255":2,"264":2,"271":1,"277":1,"280":1,"285":3,"286":3,"289":1,"291":1}}],["tutorials",{"2":{"0":1,"3":1,"77":1,"110":1,"114":1,"115":1,"117":1,"127":1,"128":2,"132":1,"212":1,"232":1,"240":1,"286":1}}],["turn",{"2":{"8":1,"76":1}}],["tuned",{"2":{"6":1}}],["thus",{"2":{"115":1}}],["throws",{"2":{"222":1,"250":1}}],["throughout",{"2":{"41":1,"118":1}}],["through",{"2":{"5":1,"8":1,"14":2,"19":1,"25":1,"68":1,"77":1,"96":1,"122":1,"143":3,"158":1,"164":1,"255":1,"277":1}}],["three",{"2":{"89":1,"189":1}}],["though",{"2":{"306":1}}],["thousands",{"2":{"14":1}}],["those",{"2":{"47":1,"121":1,"128":1,"286":1,"287":1}}],["thanks",{"2":{"15":1,"137":1}}],["than",{"2":{"14":2,"16":1,"39":2,"59":1,"74":1,"88":1,"92":1,"122":2,"149":1,"276":1,"306":1}}],["that",{"2":{"7":3,"8":4,"9":1,"10":1,"12":2,"14":4,"16":3,"18":2,"27":2,"43":1,"44":1,"45":1,"46":1,"47":2,"48":1,"49":1,"52":3,"57":2,"59":1,"68":1,"71":1,"77":1,"80":1,"81":5,"93":3,"94":1,"96":1,"99":1,"100":1,"101":1,"103":1,"105":2,"110":1,"111":1,"112":3,"114":1,"115":1,"118":2,"120":1,"122":2,"125":1,"126":1,"128":1,"138":1,"139":1,"143":2,"148":1,"151":2,"152":4,"158":1,"164":2,"166":1,"167":1,"176":1,"177":1,"180":1,"181":1,"182":1,"184":1,"185":1,"191":1,"197":1,"199":1,"200":1,"209":1,"210":2,"212":1,"216":1,"219":3,"220":4,"221":1,"222":4,"226":1,"228":1,"229":1,"230":1,"232":1,"236":2,"240":1,"244":1,"247":3,"248":4,"249":1,"250":4,"255":1,"258":1,"259":1,"261":1,"263":1,"264":2,"276":2,"283":1,"284":1,"287":2,"290":2,"291":2,"296":1,"297":1,"299":2,"300":1,"301":2,"302":6,"303":1,"306":3,"307":2}}],["things",{"2":{"301":1,"302":1,"306":1}}],["think",{"2":{"126":1,"290":1}}],["thinking",{"2":{"11":1}}],["this",{"0":{"82":1},"2":{"1":1,"2":2,"4":1,"5":1,"7":3,"8":6,"9":2,"11":1,"15":1,"16":1,"18":1,"20":1,"21":1,"24":1,"25":1,"27":1,"37":1,"39":4,"41":1,"43":3,"44":1,"46":1,"48":1,"51":1,"52":2,"53":1,"59":2,"60":2,"66":4,"68":1,"70":1,"71":1,"72":3,"74":3,"75":2,"76":4,"77":1,"79":1,"80":2,"81":7,"82":1,"88":1,"89":1,"96":2,"98":1,"99":1,"100":1,"105":3,"107":2,"108":1,"109":2,"112":1,"113":2,"121":1,"122":1,"125":1,"135":1,"137":1,"139":1,"142":1,"145":1,"149":1,"152":2,"158":1,"163":2,"164":1,"168":1,"169":1,"172":2,"178":1,"179":1,"180":1,"184":1,"187":1,"188":1,"189":4,"190":1,"192":3,"194":1,"195":1,"196":1,"197":1,"198":1,"200":2,"201":1,"205":1,"206":1,"208":2,"210":1,"212":3,"214":3,"220":3,"222":1,"226":1,"227":1,"232":2,"236":2,"240":3,"242":3,"248":3,"250":1,"255":2,"257":1,"259":2,"261":1,"264":3,"270":1,"271":1,"275":1,"276":1,"277":1,"278":2,"285":3,"286":3,"287":3,"289":3,"290":2,"291":1,"293":2,"295":1,"297":1,"299":2,"301":5,"302":4,"303":2,"305":1,"306":5,"307":1}}],["these",{"2":{"16":2,"24":1,"37":1,"44":1,"68":1,"72":1,"73":1,"77":1,"101":1,"111":1,"122":2,"143":1,"152":2,"166":1,"167":1,"277":1,"284":1,"293":1,"296":1}}],["therefore",{"2":{"132":1}}],["there",{"2":{"10":2,"14":1,"68":1,"81":1,"139":1,"152":1,"158":1,"184":1,"287":2,"301":1,"306":1,"307":1}}],["they",{"2":{"7":3,"8":3,"54":1,"122":1,"126":2,"133":1,"147":2,"148":1,"158":2,"302":1}}],["then",{"2":{"7":1,"14":1,"19":1,"21":1,"43":2,"72":1,"74":1,"75":1,"99":1,"112":1,"114":1,"115":1,"152":2,"158":1,"163":1,"181":2,"182":1,"217":1,"237":1,"245":1,"269":1,"301":2,"302":3,"306":1}}],["their",{"2":{"3":1,"7":3,"8":3,"15":1,"88":1,"117":2,"122":2,"124":1,"133":2,"152":1,"158":2,"287":1}}],["themselves",{"2":{"152":1}}],["them",{"2":{"2":1,"7":1,"8":1,"18":1,"44":1,"47":1,"72":1,"135":1,"158":1,"189":1,"194":1,"296":1}}],["the",{"0":{"1":1,"7":1,"9":1,"22":1,"29":1,"32":2,"34":1,"36":1,"45":1,"55":1,"57":1,"58":1,"85":1,"107":1,"108":1,"115":1,"164":1,"171":1,"176":1,"177":1,"179":1,"180":1,"182":1,"201":1,"203":1,"216":1,"228":1,"229":1,"236":1,"244":1,"267":1,"269":1,"273":1,"274":1,"275":1,"276":1,"280":1,"288":1,"290":1,"294":1,"304":1,"307":1},"1":{"8":1,"9":1,"10":1,"11":1,"178":1,"179":1,"180":1,"181":1,"182":1,"237":1,"289":1,"290":1,"291":1,"295":1,"305":1,"306":1,"307":1},"2":{"0":2,"1":2,"2":3,"3":3,"4":2,"6":1,"7":11,"8":8,"9":5,"10":10,"12":6,"13":2,"14":10,"16":13,"17":3,"18":5,"19":7,"21":3,"22":3,"23":2,"25":3,"26":1,"27":9,"29":2,"30":1,"31":1,"32":2,"33":1,"34":1,"35":5,"36":2,"37":6,"39":8,"40":1,"41":2,"42":1,"43":7,"44":9,"45":2,"46":3,"47":6,"48":6,"49":1,"50":3,"51":1,"52":1,"53":2,"54":1,"55":3,"56":1,"57":11,"58":2,"59":22,"60":2,"63":6,"66":6,"67":2,"68":7,"70":3,"71":3,"72":2,"74":4,"75":6,"76":3,"77":3,"78":1,"80":11,"81":12,"82":3,"83":2,"84":1,"85":2,"86":1,"87":4,"88":1,"89":3,"90":1,"92":5,"93":4,"94":4,"96":8,"97":3,"98":1,"99":5,"100":6,"101":13,"102":2,"103":1,"105":5,"106":1,"107":1,"108":3,"110":7,"111":7,"112":8,"113":1,"114":7,"115":11,"117":2,"118":4,"120":2,"121":7,"122":18,"123":1,"124":2,"125":3,"126":1,"127":4,"128":2,"132":4,"133":5,"134":2,"135":4,"138":7,"139":5,"140":3,"142":4,"143":14,"144":6,"145":3,"146":1,"148":1,"149":2,"151":2,"152":6,"154":2,"158":31,"159":4,"160":5,"161":1,"163":2,"164":3,"166":3,"167":1,"168":2,"169":2,"170":1,"171":1,"172":2,"173":2,"174":4,"175":7,"176":3,"177":5,"178":4,"179":11,"180":3,"181":8,"182":12,"184":2,"185":2,"186":2,"187":5,"188":3,"189":9,"190":3,"192":6,"195":4,"196":1,"197":2,"199":1,"200":7,"201":2,"203":3,"204":2,"205":5,"206":13,"207":2,"208":6,"209":2,"210":8,"212":3,"213":4,"214":7,"215":2,"216":2,"217":2,"219":6,"220":12,"221":2,"222":14,"223":1,"224":2,"225":2,"226":2,"227":2,"228":3,"229":4,"230":5,"231":2,"232":2,"234":4,"235":2,"236":10,"237":2,"238":1,"240":3,"241":4,"242":7,"243":2,"244":2,"245":2,"247":6,"248":12,"249":2,"250":14,"251":1,"252":2,"253":2,"255":4,"256":3,"257":1,"258":1,"259":9,"260":5,"261":6,"262":3,"264":3,"265":1,"267":2,"269":1,"270":1,"271":2,"272":2,"273":4,"274":1,"275":6,"276":5,"277":7,"278":5,"279":3,"280":3,"281":2,"282":4,"283":2,"285":6,"286":3,"287":19,"289":3,"290":8,"291":10,"293":5,"294":4,"295":9,"296":7,"297":4,"298":2,"299":6,"300":12,"301":24,"302":35,"303":8,"305":1,"306":42,"307":6}}],["toaddr",{"2":{"303":1}}],["tomorrow",{"2":{"302":1}}],["tomlcounter",{"2":{"45":1}}],["toml",{"0":{"27":1,"42":1},"2":{"27":4,"37":1,"40":1,"42":3,"48":3,"188":5,"259":7,"306":3}}],["together",{"2":{"291":1}}],["touppercase",{"2":{"100":1}}],["toutf8",{"2":{"100":1}}],["tohex",{"2":{"100":1}}],["top",{"2":{"81":1,"92":1,"152":1}}],["topics",{"2":{"2":1,"5":1,"77":1}}],["total",{"2":{"74":1,"75":1,"101":1,"160":3,"208":1,"210":2,"262":2,"274":1}}],["tokio",{"2":{"45":2}}],["token=",{"2":{"80":1}}],["token=$auth",{"2":{"80":1,"85":1,"87":1}}],["token=$",{"2":{"57":1,"189":1}}],["tokens",{"2":{"8":1,"71":1,"73":1,"81":1,"83":1,"121":1,"287":1}}],["token",{"0":{"74":1,"75":1,"95":2},"1":{"96":2,"97":2,"98":2,"99":2,"100":2,"101":2,"102":2,"103":2},"2":{"7":1,"8":3,"10":3,"26":1,"31":1,"57":4,"74":1,"75":1,"77":2,"80":3,"85":1,"87":1,"96":5,"100":2,"102":1,"103":1,"126":1,"189":5,"190":2,"277":1,"279":2,"301":1,"302":1}}],["towards",{"2":{"18":1,"152":1}}],["today",{"2":{"12":1,"127":1,"301":1,"302":3,"306":1}}],["too",{"2":{"277":1}}],["toolchain",{"2":{"195":1}}],["tool",{"2":{"99":1,"205":1,"289":1}}],["tools",{"2":{"9":1,"137":1}}],["toolings",{"2":{"289":1}}],["tooling",{"2":{"7":1,"9":1,"125":1}}],["took",{"2":{"7":2,"16":1}}],["to",{"0":{"16":1,"19":1,"20":2,"22":2,"25":1,"30":1,"42":1,"59":1,"74":1,"75":1,"76":1,"77":1,"79":1,"88":1,"95":1,"101":1,"109":1,"113":1,"121":1,"161":1,"182":1,"183":1,"190":1,"212":1,"233":1,"240":1},"1":{"21":2,"22":2,"23":2,"24":2,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"78":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"96":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"110":1,"111":1,"112":1,"114":1,"184":1,"185":1,"186":1,"187":1,"188":1,"189":1,"190":1,"191":1,"213":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":1,"220":1,"221":1,"222":1,"223":1,"224":1,"234":1,"235":1,"236":1,"237":1,"241":1,"242":1,"243":1,"244":1,"245":1,"246":1,"247":1,"248":1,"249":1,"250":1,"251":1,"252":1},"2":{"0":2,"1":1,"2":4,"3":1,"5":2,"7":13,"8":13,"9":6,"10":8,"11":1,"12":6,"13":1,"14":7,"15":2,"16":9,"17":2,"18":7,"19":6,"20":3,"21":2,"22":3,"23":1,"24":2,"25":1,"27":4,"30":1,"35":1,"39":9,"40":1,"41":2,"42":3,"43":8,"44":3,"45":2,"46":1,"47":5,"48":5,"50":1,"51":1,"52":1,"53":1,"54":1,"57":2,"59":5,"60":3,"63":3,"66":5,"68":3,"71":1,"72":2,"74":3,"75":2,"76":5,"77":9,"79":1,"80":7,"81":12,"82":1,"83":3,"85":3,"87":2,"88":1,"90":2,"92":1,"93":2,"94":1,"96":2,"97":1,"98":2,"99":4,"100":4,"101":2,"103":1,"105":2,"108":1,"110":3,"111":8,"112":6,"113":1,"114":5,"115":5,"116":1,"117":6,"118":5,"120":2,"121":6,"122":13,"123":2,"124":4,"125":4,"126":3,"127":6,"128":2,"132":3,"133":5,"134":2,"135":1,"137":2,"138":4,"139":3,"140":2,"143":3,"145":3,"149":4,"151":2,"152":7,"154":1,"158":10,"160":2,"161":2,"163":8,"164":7,"166":2,"167":2,"168":1,"171":1,"172":2,"173":1,"175":3,"176":1,"177":2,"179":4,"180":3,"181":2,"182":8,"184":2,"185":2,"187":4,"188":3,"189":3,"190":1,"191":1,"192":3,"195":10,"196":2,"197":4,"198":2,"199":1,"200":3,"201":1,"203":2,"204":1,"205":3,"206":3,"207":1,"210":6,"213":2,"214":4,"215":1,"217":4,"219":6,"220":4,"222":2,"225":2,"226":3,"227":3,"228":1,"230":5,"231":3,"232":1,"234":2,"235":1,"236":4,"237":3,"241":2,"242":4,"243":1,"245":4,"247":6,"248":4,"250":2,"253":2,"255":2,"257":2,"258":1,"259":3,"260":1,"261":4,"263":1,"264":5,"265":1,"266":1,"267":2,"270":4,"271":3,"272":1,"273":3,"274":1,"275":3,"276":5,"277":8,"278":8,"279":3,"280":2,"281":2,"282":1,"283":1,"284":1,"285":3,"286":3,"287":6,"289":3,"290":5,"291":3,"292":1,"293":4,"294":2,"295":1,"296":5,"297":1,"298":1,"299":2,"300":3,"301":9,"302":11,"303":7,"305":2,"306":15,"307":4,"308":1}}]],"serializationVersion":2}';export{e as default}; diff --git a/pr-383/assets/chunks/@localSearchIndexroot.b693d4d8.js b/pr-383/assets/chunks/@localSearchIndexroot.b693d4d8.js deleted file mode 100644 index b3441fcde..000000000 --- a/pr-383/assets/chunks/@localSearchIndexroot.b693d4d8.js +++ /dev/null @@ -1 +0,0 @@ -const e='{"documentCount":290,"nextId":290,"documentIds":{"0":"/docs-preview/pr-383/README#rollkit-documentation-site","1":"/docs-preview/pr-383/README#building-the-site","2":"/docs-preview/pr-383/README#contribution-guidelines","3":"/docs-preview/pr-383/README#directory-structure","4":"/docs-preview/pr-383/README#feedback-suggestions","5":"/docs-preview/pr-383/blog/overview#blog","6":"/docs-preview/pr-383/blog/overview#table-of-contents","7":"/docs-preview/pr-383/blog/rollkit-the-first-sovereign-rollup-framework#rollkit-the-first-sovereign-rollup-framework","8":"/docs-preview/pr-383/blog/rollkit-the-first-sovereign-rollup-framework#take-control","9":"/docs-preview/pr-383/blog/rollkit-the-first-sovereign-rollup-framework#build-with-the-best","10":"/docs-preview/pr-383/blog/rollkit-the-first-sovereign-rollup-framework#optimize-for-your-needs","11":"/docs-preview/pr-383/blog/rollkit-the-first-sovereign-rollup-framework#break-free-be-sovereign","12":"/docs-preview/pr-383/blog/sovereign-rollups-on-bitcoin#sovereign-rollups-on-bitcoin-with-rollkit","13":"/docs-preview/pr-383/blog/sovereign-rollups-on-bitcoin#tl-dr","14":"/docs-preview/pr-383/blog/sovereign-rollups-on-bitcoin#posting-data-on-bitcoin-with-taproot","15":"/docs-preview/pr-383/blog/sovereign-rollups-on-bitcoin#integrating-bitcoin-as-a-data-availability-layer-into-rollkit","16":"/docs-preview/pr-383/blog/sovereign-rollups-on-bitcoin#how-rollkit-posts-data-to-bitcoin","17":"/docs-preview/pr-383/blog/sovereign-rollups-on-bitcoin#evm-on-bitcoin-demo","18":"/docs-preview/pr-383/blog/sovereign-rollups-on-bitcoin#conclusion","19":"/docs-preview/pr-383/guides/block-times#how-to-change-speed-of-block-production","20":"/docs-preview/pr-383/guides/cw-orch#speed-up-your-development-with-cw-orchestrator","21":"/docs-preview/pr-383/guides/cw-orch#introduction","22":"/docs-preview/pr-383/guides/cw-orch#summary","23":"/docs-preview/pr-383/guides/cw-orch#single-contract-integration","24":"/docs-preview/pr-383/guides/cw-orch#adding-cw-orch-to-your-cargo-toml-file","25":"/docs-preview/pr-383/guides/cw-orch#creating-an-interface","26":"/docs-preview/pr-383/guides/cw-orch#interaction-helpers","27":"/docs-preview/pr-383/guides/cw-orch#using-the-integration","28":"/docs-preview/pr-383/guides/cw-orch#integration-in-a-workspace","29":"/docs-preview/pr-383/guides/cw-orch#handling-dependencies-and-features","30":"/docs-preview/pr-383/guides/cw-orch#creating-an-interface-crate","31":"/docs-preview/pr-383/guides/cw-orch#integrating-single-contracts","32":"/docs-preview/pr-383/guides/cw-orch#more-examples-and-scripts","33":"/docs-preview/pr-383/guides/full-and-sequencer-node#full-and-sequencer-node-rollup-setup","34":"/docs-preview/pr-383/guides/full-and-sequencer-node#about","35":"/docs-preview/pr-383/guides/full-and-sequencer-node#prerequisites","36":"/docs-preview/pr-383/guides/full-and-sequencer-node#getting-started","37":"/docs-preview/pr-383/guides/full-and-sequencer-node#clone-the-script","38":"/docs-preview/pr-383/guides/full-and-sequencer-node#set-da-height","39":"/docs-preview/pr-383/guides/full-and-sequencer-node#update-the-p2p-address","40":"/docs-preview/pr-383/guides/full-and-sequencer-node#start-the-full-node","41":"/docs-preview/pr-383/guides/gas-price#how-to-configure-gas-price","42":"/docs-preview/pr-383/guides/ibc-connection#ibc-connection-tutorial","43":"/docs-preview/pr-383/guides/ibc-connection#prerequisites","44":"/docs-preview/pr-383/guides/ibc-connection#software-requirements","45":"/docs-preview/pr-383/guides/ibc-connection#run-a-gm-rollup-chain","46":"/docs-preview/pr-383/guides/ibc-connection#run-your-local-osmosis-testnet","47":"/docs-preview/pr-383/guides/ibc-connection#install-osmosis-binary","48":"/docs-preview/pr-383/guides/ibc-connection#run-local-osmosis-testnet","49":"/docs-preview/pr-383/guides/ibc-connection#funds","50":"/docs-preview/pr-383/guides/ibc-connection#setup-relayer-create-ibc-connection-and-start-relaying-packets","51":"/docs-preview/pr-383/guides/ibc-connection#install-relayer","52":"/docs-preview/pr-383/guides/ibc-connection#setup-relayer-config","53":"/docs-preview/pr-383/guides/ibc-connection#create-relayer-account","54":"/docs-preview/pr-383/guides/ibc-connection#create-ibc-channel","55":"/docs-preview/pr-383/guides/ibc-connection#start-relaying-packets","56":"/docs-preview/pr-383/guides/ibc-connection#transfer-token-from-rollup-chain-to-osmosis-local","57":"/docs-preview/pr-383/guides/ibc-connection#transfer-token-back-from-osmosis-local-to-rollup-chain","58":"/docs-preview/pr-383/guides/lazy-sequencing#how-to-use-lazy-sequencing-aggregation","59":"/docs-preview/pr-383/guides/overview#how-to-guides","60":"/docs-preview/pr-383/guides/overview#support","61":"/docs-preview/pr-383/guides/restart-rollup#๐Ÿ”„-how-to-restart-your-rollup","62":"/docs-preview/pr-383/guides/restart-rollup#restart-rollup","63":"/docs-preview/pr-383/guides/restart-rollup#restart-rollup-after-running-out-of-funds","64":"/docs-preview/pr-383/guides/restart-rollup#errors","65":"/docs-preview/pr-383/guides/restart-rollup#refund-your-account","66":"/docs-preview/pr-383/guides/restart-rollup#stopping-your-rollup","67":"/docs-preview/pr-383/guides/restart-rollup#increase-gas-fee","68":"/docs-preview/pr-383/guides/restart-rollup#restarting-your-rollup","69":"/docs-preview/pr-383/guides/restart-rollup#reduce-gas-fee-restart-again","70":"/docs-preview/pr-383/guides/rollkit-monitoring#how-to-integrate-range-with-your-rollup","71":"/docs-preview/pr-383/guides/rollkit-monitoring#overview","72":"/docs-preview/pr-383/guides/rollkit-monitoring#prerequisites","73":"/docs-preview/pr-383/guides/rollkit-monitoring#_1-integrate-your-rollup","74":"/docs-preview/pr-383/guides/rollkit-monitoring#steps","75":"/docs-preview/pr-383/guides/rollkit-monitoring#_2-add-your-addresses-and-contracts","76":"/docs-preview/pr-383/guides/rollkit-monitoring#_3-creating-your-first-alert-rule","77":"/docs-preview/pr-383/guides/use-tia-for-gas#how-to-use-ibc-token-tia-as-gas-token-in-your-rollup","78":"/docs-preview/pr-383/guides/use-tia-for-gas#introduction","79":"/docs-preview/pr-383/guides/use-tia-for-gas#dependencies","80":"/docs-preview/pr-383/guides/use-tia-for-gas#running-local-da","81":"/docs-preview/pr-383/guides/use-tia-for-gas#building-your-sovereign-rollup","82":"/docs-preview/pr-383/guides/use-tia-for-gas#start-your-rollup","83":"/docs-preview/pr-383/guides/use-tia-for-gas#ibc-to-celestia","84":"/docs-preview/pr-383/guides/use-tia-for-gas#transactions","85":"/docs-preview/pr-383/guides/use-tia-for-gas#๐ŸŽ‰-next-steps","86":"/docs-preview/pr-383/guides/zkml#zkml-rollup-tutorial-with-sindri","87":"/docs-preview/pr-383/guides/zkml#introduction-code-once-verify-anywhere","88":"/docs-preview/pr-383/guides/zkml#prerequisites","89":"/docs-preview/pr-383/guides/zkml#setting-up-the-polaris-evm-using-rollkit","90":"/docs-preview/pr-383/guides/zkml#installing-the-sindri-python-sdk","91":"/docs-preview/pr-383/guides/zkml#deploying-and-proving-a-cool-zkml-circuit-to-sindri","92":"/docs-preview/pr-383/guides/zkml#clone","93":"/docs-preview/pr-383/guides/zkml#modify","94":"/docs-preview/pr-383/guides/zkml#deploy-and-prove-your-zkml-circuit-on-sindri","95":"/docs-preview/pr-383/guides/zkml#deploy-smart-contract-verifier-to-rollkit","96":"/docs-preview/pr-383/guides/zkml#deploy","97":"/docs-preview/pr-383/guides/zkml#interact-with-the-contract-verify-your-zkml-proof-on-chain","98":"/docs-preview/pr-383/guides/zkml#congratulations","99":"/docs-preview/pr-383/learn/about#about-rollkit","100":"/docs-preview/pr-383/learn/about#what-is-rollkit","101":"/docs-preview/pr-383/learn/about#what-problems-is-rollkit-solving","102":"/docs-preview/pr-383/learn/about#_1-scalability-and-customizability","103":"/docs-preview/pr-383/learn/about#_2-security-and-time-to-market","104":"/docs-preview/pr-383/learn/about#why-rollkit","105":"/docs-preview/pr-383/learn/about#how-can-you-use-rollkit","106":"/docs-preview/pr-383/learn/about#rollup-with-any-execution-environment","107":"/docs-preview/pr-383/learn/about#sovereign-rollup-with-cosmos-sdk","108":"/docs-preview/pr-383/learn/about#build-a-settlement-layer","109":"/docs-preview/pr-383/learn/about#when-can-you-use-rollkit","110":"/docs-preview/pr-383/learn/building-and-deploying-a-rollup#๐Ÿ—ž๏ธ-building-a-rollup-and-testnet-deployment","111":"/docs-preview/pr-383/learn/building-and-deploying-a-rollup#beginner","112":"/docs-preview/pr-383/learn/building-and-deploying-a-rollup#intermediate","113":"/docs-preview/pr-383/learn/building-and-deploying-a-rollup#advanced","114":"/docs-preview/pr-383/learn/building-and-deploying-a-rollup#support","115":"/docs-preview/pr-383/learn/intro#introduction","116":"/docs-preview/pr-383/learn/specifications#technical-specifications","117":"/docs-preview/pr-383/learn/stack#rollkit-stack","118":"/docs-preview/pr-383/learn/stack#application-structure","119":"/docs-preview/pr-383/learn/stack#abci-interface","120":"/docs-preview/pr-383/learn/stack#cosmos-sdk","121":"/docs-preview/pr-383/learn/stack#data-availability","122":"/docs-preview/pr-383/learn/stack#celestia","123":"/docs-preview/pr-383/learn/stack#node-components","124":"/docs-preview/pr-383/learn/stack#mempool","125":"/docs-preview/pr-383/learn/stack#block-manager","126":"/docs-preview/pr-383/learn/stack#rpc","127":"/docs-preview/pr-383/learn/stack#p2p-layer","128":"/docs-preview/pr-383/learn/stack#rollkit-node-types","129":"/docs-preview/pr-383/learn/stack#full-node","130":"/docs-preview/pr-383/learn/stack#light-node-work-in-progress","131":"/docs-preview/pr-383/learn/stack#sequencer-node","132":"/docs-preview/pr-383/learn/stack#state-validity-modes","133":"/docs-preview/pr-383/learn/stack#pessimistic-full-nodes-only","134":"/docs-preview/pr-383/learn/stack#optimistic-fraud-proofs-work-in-progress","135":"/docs-preview/pr-383/learn/stack#validity-zk-proofs","136":"/docs-preview/pr-383/learn/transaction-flow#transaction-flow","137":"/docs-preview/pr-383/learn/transaction-flow#transaction-submission","138":"/docs-preview/pr-383/learn/transaction-flow#transaction-validation-and-processing","139":"/docs-preview/pr-383/learn/transaction-flow#block-processing","140":"/docs-preview/pr-383/learn/transaction-flow#fraud-proof-gossip-and-forking","141":"/docs-preview/pr-383/testnets/cosmwasm-testnet#cosmwasm-testnet","142":"/docs-preview/pr-383/testnets/cosmwasm-testnet#details-of-rosm-testnet","143":"/docs-preview/pr-383/testnets/cosmwasm-testnet#add-rosm-to-keplr","144":"/docs-preview/pr-383/tutorials/bitcoin#bitcoin-rollup-tutorial","145":"/docs-preview/pr-383/tutorials/bitcoin#โ˜€๏ธintroduction","146":"/docs-preview/pr-383/tutorials/bitcoin#๐Ÿ“–-the-stack","147":"/docs-preview/pr-383/tutorials/bitcoin#๐Ÿ’ป-prerequisites","148":"/docs-preview/pr-383/tutorials/bitcoin#๐Ÿ› ๏ธ-dependency-setup","149":"/docs-preview/pr-383/tutorials/bitcoin#๐Ÿƒ-golang","150":"/docs-preview/pr-383/tutorials/bitcoin#โš’๏ธ-foundry","151":"/docs-preview/pr-383/tutorials/bitcoin#๐Ÿช™-install-bitcoin","152":"/docs-preview/pr-383/tutorials/bitcoin#๐ŸŸข-running-a-local-bitcoin-network","153":"/docs-preview/pr-383/tutorials/bitcoin#๐Ÿ‘›-create-a-wallet-for-the-chain","154":"/docs-preview/pr-383/tutorials/bitcoin#๐ŸŽฌ-start-generating-blocks","155":"/docs-preview/pr-383/tutorials/bitcoin#๐ŸงŠ-block-height","156":"/docs-preview/pr-383/tutorials/bitcoin#๐ŸงŠ-block-hash","157":"/docs-preview/pr-383/tutorials/bitcoin#๐ŸงŠ-block-header","158":"/docs-preview/pr-383/tutorials/bitcoin#๐ŸŽฌ-restarting-the-local-network","159":"/docs-preview/pr-383/tutorials/bitcoin#๐Ÿƒโ€โ™€๏ธ-running-the-ethermint-rollup","160":"/docs-preview/pr-383/tutorials/bitcoin#โšก๏ธ-initialize-development-environment","161":"/docs-preview/pr-383/tutorials/bitcoin#๐Ÿ“’-updating-the-contract-and-tests","162":"/docs-preview/pr-383/tutorials/bitcoin#๐Ÿ“œ-updating-the-deployment-script","163":"/docs-preview/pr-383/tutorials/bitcoin#๐Ÿ -deploying-locally","164":"/docs-preview/pr-383/tutorials/bitcoin#๐Ÿงช-deploying-to-the-ethermint-sovereign-rollup","165":"/docs-preview/pr-383/tutorials/celestia-da#gm-world-rollup-deploying-to-celestia","166":"/docs-preview/pr-383/tutorials/celestia-da#introduction","167":"/docs-preview/pr-383/tutorials/celestia-da#๐Ÿชถ-running-a-celestia-light-node","168":"/docs-preview/pr-383/tutorials/celestia-da#๐Ÿงน-cleaning-previous-chain-history","169":"/docs-preview/pr-383/tutorials/celestia-da#๐Ÿ—๏ธ-building-your-rollup","170":"/docs-preview/pr-383/tutorials/celestia-da#๐Ÿ› ๏ธ-configuring-flags-for-da","171":"/docs-preview/pr-383/tutorials/celestia-da#๐Ÿ”ฅ-running-your-rollup-connected-to-a-celestia-light-node","172":"/docs-preview/pr-383/tutorials/celestia-da#๐ŸŽ‰-next-steps","173":"/docs-preview/pr-383/tutorials/cosmwasm#๐Ÿ—ž๏ธ-cosmwasm-rollup","174":"/docs-preview/pr-383/tutorials/cosmwasm#dependencies","175":"/docs-preview/pr-383/tutorials/cosmwasm#install-go","176":"/docs-preview/pr-383/tutorials/cosmwasm#install-rust","177":"/docs-preview/pr-383/tutorials/cosmwasm#docker-installation","178":"/docs-preview/pr-383/tutorials/cosmwasm#wasmd-installation","179":"/docs-preview/pr-383/tutorials/cosmwasm#local-da-node","180":"/docs-preview/pr-383/tutorials/cosmwasm#setting-up-environment-on-local-da","181":"/docs-preview/pr-383/tutorials/cosmwasm#initialize-rollup","182":"/docs-preview/pr-383/tutorials/cosmwasm#view-script","183":"/docs-preview/pr-383/tutorials/cosmwasm#contract-deployment-on-cosmwasm","184":"/docs-preview/pr-383/tutorials/cosmwasm#compile-smart-contract","185":"/docs-preview/pr-383/tutorials/cosmwasm#unit-tests","186":"/docs-preview/pr-383/tutorials/cosmwasm#optimized-smart-contract","187":"/docs-preview/pr-383/tutorials/cosmwasm#contract-deployment","188":"/docs-preview/pr-383/tutorials/cosmwasm#contract-interaction-on-local-da","189":"/docs-preview/pr-383/tutorials/cosmwasm#contract-querying","190":"/docs-preview/pr-383/tutorials/cosmwasm#contract-instantiation","191":"/docs-preview/pr-383/tutorials/cosmwasm#contract-interaction","192":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#gm-world-rollup-part-2","193":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#deploying-to-a-celestia-devnet","194":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#run-celestia-node","195":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#start-your-sovereign-rollup","196":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#clear-previous-chain-history","197":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#start-the-new-chain","198":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#optional-restarting-your-rollup","199":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#optional-add-a-gm-world-query","200":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#say-gm-world","201":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#create-first-query","202":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#query-request-and-response-types","203":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#gm-keeper-function","204":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#restart-your-rollup","205":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#query-your-rollup","206":"/docs-preview/pr-383/tutorials/gm-world-arabica-testnet#next-steps","207":"/docs-preview/pr-383/tutorials/gm-world-frontend#gm-world-ui-app","208":"/docs-preview/pr-383/tutorials/gm-world-frontend#๐Ÿ› -prerequisites","209":"/docs-preview/pr-383/tutorials/gm-world-frontend#๐Ÿ“ฆ-cloning-the-repo","210":"/docs-preview/pr-383/tutorials/gm-world-frontend#๐Ÿš€-running-the-app","211":"/docs-preview/pr-383/tutorials/gm-world-frontend#๐Ÿ”—-connecting-your-wallet","212":"/docs-preview/pr-383/tutorials/gm-world-frontend#๐ŸŽ‰-next-steps","213":"/docs-preview/pr-383/tutorials/gm-world-mainnet#gm-world-rollup-part-3","214":"/docs-preview/pr-383/tutorials/gm-world-mainnet#deploying-to-celestia-mainnet-beta","215":"/docs-preview/pr-383/tutorials/gm-world-mainnet#run-celestia-node","216":"/docs-preview/pr-383/tutorials/gm-world-mainnet#clear-previous-chain-history","217":"/docs-preview/pr-383/tutorials/gm-world-mainnet#start-the-rollup-on-mainnet","218":"/docs-preview/pr-383/tutorials/gm-world-mainnet#restarting-your-rollup","219":"/docs-preview/pr-383/tutorials/gm-world-mainnet#next-steps","220":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#gm-world-rollup-part-2","221":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#deploying-to-a-celestia-testnet","222":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#run-celestia-node","223":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#start-your-sovereign-rollup","224":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#clear-previous-chain-history","225":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#start-the-new-chain","226":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#optional-restarting-your-rollup","227":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#optional-add-a-gm-world-query","228":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#say-gm-world","229":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#create-first-query","230":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#query-request-and-response-types","231":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#gm-keeper-function","232":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#restart-your-rollup","233":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#query-your-rollup","234":"/docs-preview/pr-383/tutorials/gm-world-mocha-testnet#next-steps","235":"/docs-preview/pr-383/tutorials/gm-world#gm-world-rollup","236":"/docs-preview/pr-383/tutorials/gm-world#introduction","237":"/docs-preview/pr-383/tutorials/gm-world#dependencies","238":"/docs-preview/pr-383/tutorials/gm-world#running-local-da","239":"/docs-preview/pr-383/tutorials/gm-world#building-your-sovereign-rollup","240":"/docs-preview/pr-383/tutorials/gm-world#configuring-your-rollup","241":"/docs-preview/pr-383/tutorials/gm-world#start-your-rollup","242":"/docs-preview/pr-383/tutorials/gm-world#transactions","243":"/docs-preview/pr-383/tutorials/gm-world#balances","244":"/docs-preview/pr-383/tutorials/gm-world#๐ŸŽ‰-next-steps","245":"/docs-preview/pr-383/tutorials/polaris-evm#polaris-evm-and-rollkit","246":"/docs-preview/pr-383/tutorials/polaris-evm#prerequisites","247":"/docs-preview/pr-383/tutorials/polaris-evm#run-a-local-celestia-devnet","248":"/docs-preview/pr-383/tutorials/polaris-evm#clone-the-repo","249":"/docs-preview/pr-383/tutorials/polaris-evm#install-foundry","250":"/docs-preview/pr-383/tutorials/polaris-evm#start-the-polaris-evm-using-rollkit","251":"/docs-preview/pr-383/tutorials/polaris-evm#congratulations","252":"/docs-preview/pr-383/tutorials/polaris-evm#funds","253":"/docs-preview/pr-383/tutorials/polaris-evm#frontend","254":"/docs-preview/pr-383/tutorials/polaris-evm#deploy-the-ooga-booga-portal-contract","255":"/docs-preview/pr-383/tutorials/polaris-evm#interact-with-the-contract","256":"/docs-preview/pr-383/tutorials/polaris-evm#start-and-update-the-frontend","257":"/docs-preview/pr-383/tutorials/polaris-evm#interact-with-the-frontend","258":"/docs-preview/pr-383/tutorials/polaris-evm#running-polaris-evm-with-a-celestia-light-node","259":"/docs-preview/pr-383/tutorials/polaris-evm#start-your-light-node","260":"/docs-preview/pr-383/tutorials/polaris-evm#setup-polaris-script","261":"/docs-preview/pr-383/tutorials/polaris-evm#start-the-evm-rollup","262":"/docs-preview/pr-383/tutorials/quick-start#quick-start-guide","263":"/docs-preview/pr-383/tutorials/quick-start#๐Ÿ“ฆ-install-rollkit-cli","264":"/docs-preview/pr-383/tutorials/quick-start#๐Ÿš€-run-your-sovereign-rollup-node","265":"/docs-preview/pr-383/tutorials/quick-start#๐ŸŽ‰-conclusion","266":"/docs-preview/pr-383/tutorials/wordle#๐Ÿ•น๏ธ-wordle-app","267":"/docs-preview/pr-383/tutorials/wordle#prerequisites","268":"/docs-preview/pr-383/tutorials/wordle#design-implementation","269":"/docs-preview/pr-383/tutorials/wordle#ignite-scaffold-wordle-chain","270":"/docs-preview/pr-383/tutorials/wordle#ignite","271":"/docs-preview/pr-383/tutorials/wordle#scaffolding-wordle-chain","272":"/docs-preview/pr-383/tutorials/wordle#wordle-directory","273":"/docs-preview/pr-383/tutorials/wordle#setting-up-rollkit","274":"/docs-preview/pr-383/tutorials/wordle#installing-rollkit","275":"/docs-preview/pr-383/tutorials/wordle#creating-wordle-module","276":"/docs-preview/pr-383/tutorials/wordle#scaffolding-a-module","277":"/docs-preview/pr-383/tutorials/wordle#messages","278":"/docs-preview/pr-383/tutorials/wordle#scaffolding-a-message","279":"/docs-preview/pr-383/tutorials/wordle#wordle-types","280":"/docs-preview/pr-383/tutorials/wordle#scaffolding-wordle-types","281":"/docs-preview/pr-383/tutorials/wordle#keeper-functions","282":"/docs-preview/pr-383/tutorials/wordle#submitwordle-function","283":"/docs-preview/pr-383/tutorials/wordle#submitguess-function","284":"/docs-preview/pr-383/tutorials/wordle#protobuf-file","285":"/docs-preview/pr-383/tutorials/wordle#โ›“๏ธ-run-the-wordle-chain","286":"/docs-preview/pr-383/tutorials/wordle#run-local-da-node","287":"/docs-preview/pr-383/tutorials/wordle#build-and-run-wordle-chain","288":"/docs-preview/pr-383/tutorials/wordle#extending-in-the-future","289":"/docs-preview/pr-383/tutorials/wordle#๐ŸŽ‰-next-steps"},"fieldIds":{"title":0,"titles":1,"text":2},"fieldLength":{"0":[3,1,24],"1":[3,3,20],"2":[2,3,69],"3":[2,3,41],"4":[3,3,25],"5":[1,1,22],"6":[3,1,17],"7":[6,1,171],"8":[2,6,172],"9":[4,6,110],"10":[4,6,114],"11":[5,6,27],"12":[6,1,79],"13":[2,6,43],"14":[6,6,129],"15":[9,6,46],"16":[6,6,110],"17":[4,6,34],"18":[1,6,90],"19":[7,1,83],"20":[7,1,1],"21":[1,7,129],"22":[1,7,42],"23":[3,7,27],"24":[8,10,42],"25":[3,10,124],"26":[2,10,114],"27":[3,10,120],"28":[4,7,36],"29":[4,11,51],"30":[4,11,80],"31":[3,11,16],"32":[4,7,42],"33":[6,1,23],"34":[1,6,30],"35":[1,6,25],"36":[2,6,47],"37":[3,8,22],"38":[3,8,25],"39":[4,8,142],"40":[4,6,25],"41":[5,1,91],"42":[3,1,73],"43":[3,3,1],"44":[2,6,15],"45":[5,3,104],"46":[5,3,1],"47":[3,8,17],"48":[4,8,76],"49":[1,3,34],"50":[9,3,72],"51":[2,10,38],"52":[3,10,107],"53":[3,10,48],"54":[3,10,169],"55":[3,10,25],"56":[8,10,105],"57":[9,10,80],"58":[7,1,57],"59":[3,1,84],"60":[2,3,30],"61":[6,1,12],"62":[2,6,102],"63":[7,6,105],"64":[5,12,50],"65":[5,12,43],"66":[4,12,23],"67":[5,12,48],"68":[4,12,7],"69":[7,12,68],"70":[7,1,27],"71":[1,7,37],"72":[1,7,22],"73":[4,8,17],"74":[1,12,48],"75":[6,8,44],"76":[6,8,76],"77":[11,1,1],"78":[2,11,75],"79":[2,11,35],"80":[6,11,45],"81":[5,11,102],"82":[4,11,173],"83":[8,11,230],"84":[2,11,58],"85":[3,11,20],"86":[5,1,1],"87":[5,5,81],"88":[1,5,30],"89":[7,6,22],"90":[5,6,48],"91":[9,5,32],"92":[1,12,56],"93":[1,12,90],"94":[8,12,90],"95":[6,5,39],"96":[1,11,157],"97":[10,5,120],"98":[1,5,41],"99":[2,1,61],"100":[4,2,88],"101":[6,2,1],"102":[4,7,38],"103":[6,7,102],"104":[3,2,181],"105":[6,2,24],"106":[5,7,37],"107":[5,7,48],"108":[4,7,47],"109":[6,2,76],"110":[7,1,41],"111":[2,7,7],"112":[2,7,5],"113":[2,7,7],"114":[2,7,73],"115":[1,1,55],"116":[2,1,32],"117":[2,1,61],"118":[2,2,2],"119":[2,4,37],"120":[2,6,65],"121":[2,4,77],"122":[1,6,45],"123":[2,2,1],"124":[1,4,43],"125":[2,4,82],"126":[1,4,49],"127":[2,4,68],"128":[3,2,9],"129":[2,4,24],"130":[6,4,45],"131":[2,4,107],"132":[3,2,1],"133":[5,5,38],"134":[7,5,114],"135":[4,5,12],"136":[2,1,41],"137":[2,2,2],"138":[4,2,2],"139":[2,2,2],"140":[5,2,125],"141":[2,1,18],"142":[4,2,149],"143":[4,6,18],"144":[3,1,1],"145":[1,3,78],"146":[3,4,63],"147":[2,3,16],"148":[3,3,50],"149":[2,6,87],"150":[2,6,24],"151":[3,6,30],"152":[6,3,20],"153":[7,8,31],"154":[4,8,90],"155":[3,12,33],"156":[3,12,28],"157":[3,12,31],"158":[5,12,28],"159":[5,3,86],"160":[4,7,52],"161":[6,7,149],"162":[5,7,69],"163":[3,7,100],"164":[7,7,109],"165":[6,1,1],"166":[2,6,55],"167":[6,6,54],"168":[5,6,28],"169":[4,6,35],"170":[5,6,160],"171":[10,6,78],"172":[3,6,28],"173":[3,1,55],"174":[4,3,1],"175":[2,6,34],"176":[2,6,124],"177":[3,6,38],"178":[3,6,98],"179":[4,6,32],"180":[10,3,19],"181":[8,12,52],"182":[8,12,20],"183":[7,3,1],"184":[5,9,41],"185":[3,9,23],"186":[4,9,81],"187":[3,9,107],"188":[5,3,41],"189":[3,7,77],"190":[3,7,69],"191":[3,7,168],"192":[5,1,1],"193":[5,5,37],"194":[6,10,36],"195":[5,10,76],"196":[4,14,22],"197":[4,14,35],"198":[4,10,41],"199":[7,10,1],"200":[4,14,72],"201":[5,17,105],"202":[6,17,29],"203":[4,17,100],"204":[3,17,13],"205":[3,17,19],"206":[2,5,41],"207":[4,1,37],"208":[2,4,64],"209":[4,4,26],"210":[4,4,51],"211":[4,4,53],"212":[3,4,37],"213":[5,1,36],"214":[5,5,1],"215":[6,10,34],"216":[4,10,22],"217":[5,10,98],"218":[3,14,33],"219":[2,5,31],"220":[5,1,1],"221":[5,5,38],"222":[6,10,34],"223":[5,10,76],"224":[4,14,22],"225":[4,14,35],"226":[4,10,41],"227":[7,10,1],"228":[4,14,72],"229":[5,17,105],"230":[6,17,29],"231":[4,17,100],"232":[3,17,13],"233":[3,17,19],"234":[2,5,41],"235":[3,1,1],"236":[2,3,65],"237":[2,3,31],"238":[6,3,42],"239":[5,3,49],"240":[4,3,58],"241":[4,3,138],"242":[2,3,138],"243":[3,3,35],"244":[3,3,26],"245":[4,1,80],"246":[1,4,28],"247":[5,4,36],"248":[3,4,25],"249":[2,4,9],"250":[6,4,15],"251":[1,4,67],"252":[1,4,44],"253":[1,4,41],"254":[6,5,106],"255":[4,5,31],"256":[5,5,56],"257":[4,5,73],"258":[8,4,83],"259":[4,10,108],"260":[3,10,73],"261":[4,10,41],"262":[3,1,19],"263":[5,3,38],"264":[6,3,69],"265":[2,3,39],"266":[3,1,47],"267":[3,3,49],"268":[3,3,110],"269":[7,3,1],"270":[2,10,107],"271":[5,10,97],"272":[3,10,114],"273":[4,3,16],"274":[3,7,38],"275":[5,3,55],"276":[4,8,70],"277":[2,3,73],"278":[4,5,32],"279":[3,3,15],"280":[4,5,48],"281":[3,3,62],"282":[3,6,221],"283":[3,6,291],"284":[3,6,80],"285":[5,3,1],"286":[6,8,52],"287":[6,8,274],"288":[5,8,80],"289":[3,3,23]},"averageFieldLength":[3.9482758620689653,6.279310344827586,56.3586206896552],"storedFields":{"0":{"title":"Rollkit Documentation Site","titles":[]},"1":{"title":"Building the site","titles":["Rollkit Documentation Site"]},"2":{"title":"Contribution Guidelines","titles":["Rollkit Documentation Site"]},"3":{"title":"Directory Structure","titles":["Rollkit Documentation Site"]},"4":{"title":"Feedback & Suggestions","titles":["Rollkit Documentation Site"]},"5":{"title":"Blog","titles":[]},"6":{"title":"Table of contents","titles":["Blog"]},"7":{"title":"Rollkit: The First Sovereign Rollup Framework","titles":[]},"8":{"title":"Take Control","titles":["Rollkit: The First Sovereign Rollup Framework"]},"9":{"title":"Build with the Best","titles":["Rollkit: The First Sovereign Rollup Framework"]},"10":{"title":"Optimize for your needs","titles":["Rollkit: The First Sovereign Rollup Framework"]},"11":{"title":"Break Free. Be Sovereign.","titles":["Rollkit: The First Sovereign Rollup Framework"]},"12":{"title":"Sovereign rollups on Bitcoin with Rollkit","titles":[]},"13":{"title":"Tl;dr","titles":["Sovereign rollups on Bitcoin with Rollkit"]},"14":{"title":"Posting data on Bitcoin with Taproot","titles":["Sovereign rollups on Bitcoin with Rollkit"]},"15":{"title":"Integrating Bitcoin as a data availability layer into Rollkit","titles":["Sovereign rollups on Bitcoin with Rollkit"]},"16":{"title":"How Rollkit posts data to Bitcoin","titles":["Sovereign rollups on Bitcoin with Rollkit"]},"17":{"title":"EVM on Bitcoin demo","titles":["Sovereign rollups on Bitcoin with Rollkit"]},"18":{"title":"Conclusion","titles":["Sovereign rollups on Bitcoin with Rollkit"]},"19":{"title":"How to change speed of block production","titles":[]},"20":{"title":"Speed up your development with cw-orchestrator","titles":[]},"21":{"title":"Introduction","titles":["Speed up your development with cw-orchestrator"]},"22":{"title":"Summary","titles":["Speed up your development with cw-orchestrator"]},"23":{"title":"Single Contract Integration","titles":["Speed up your development with cw-orchestrator"]},"24":{"title":"Adding cw-orch to your Cargo.toml file","titles":["Speed up your development with cw-orchestrator","Single Contract Integration"]},"25":{"title":"Creating an Interface","titles":["Speed up your development with cw-orchestrator","Single Contract Integration"]},"26":{"title":"Interaction helpers","titles":["Speed up your development with cw-orchestrator","Single Contract Integration"]},"27":{"title":"Using the integration","titles":["Speed up your development with cw-orchestrator","Single Contract Integration"]},"28":{"title":"Integration in a workspace","titles":["Speed up your development with cw-orchestrator"]},"29":{"title":"Handling dependencies and features","titles":["Speed up your development with cw-orchestrator","Integration in a workspace"]},"30":{"title":"Creating an interface crate","titles":["Speed up your development with cw-orchestrator","Integration in a workspace"]},"31":{"title":"Integrating single contracts","titles":["Speed up your development with cw-orchestrator","Integration in a workspace"]},"32":{"title":"More examples and scripts","titles":["Speed up your development with cw-orchestrator"]},"33":{"title":"Full and sequencer node rollup setup","titles":[]},"34":{"title":"About","titles":["Full and sequencer node rollup setup"]},"35":{"title":"Prerequisites","titles":["Full and sequencer node rollup setup"]},"36":{"title":"Getting started","titles":["Full and sequencer node rollup setup"]},"37":{"title":"Clone the script","titles":["Full and sequencer node rollup setup","Getting started"]},"38":{"title":"Set DA height","titles":["Full and sequencer node rollup setup","Getting started"]},"39":{"title":"Update the p2p address","titles":["Full and sequencer node rollup setup","Getting started"]},"40":{"title":"Start the full node","titles":["Full and sequencer node rollup setup"]},"41":{"title":"How to configure gas price","titles":[]},"42":{"title":"IBC connection tutorial","titles":[]},"43":{"title":"๐Ÿ’ป Pre-requisites","titles":["IBC connection tutorial"]},"44":{"title":"Software requirements","titles":["IBC connection tutorial","๐Ÿ’ป Pre-requisites"]},"45":{"title":"Run a GM rollup chain","titles":["IBC connection tutorial"]},"46":{"title":"Run your local-osmosis-testnet","titles":["IBC connection tutorial"]},"47":{"title":"Install Osmosis binary","titles":["IBC connection tutorial","Run your local-osmosis-testnet"]},"48":{"title":"Run local-osmosis-testnet","titles":["IBC connection tutorial","Run your local-osmosis-testnet"]},"49":{"title":"Funds","titles":["IBC connection tutorial"]},"50":{"title":"Setup relayer, create IBC connection and start relaying packets","titles":["IBC connection tutorial"]},"51":{"title":"Install relayer","titles":["IBC connection tutorial","Setup relayer, create IBC connection and start relaying packets"]},"52":{"title":"Setup relayer config","titles":["IBC connection tutorial","Setup relayer, create IBC connection and start relaying packets"]},"53":{"title":"Create relayer account","titles":["IBC connection tutorial","Setup relayer, create IBC connection and start relaying packets"]},"54":{"title":"Create IBC channel","titles":["IBC connection tutorial","Setup relayer, create IBC connection and start relaying packets"]},"55":{"title":"Start relaying packets","titles":["IBC connection tutorial","Setup relayer, create IBC connection and start relaying packets"]},"56":{"title":"Transfer token from rollup chain to osmosis-local","titles":["IBC connection tutorial","Setup relayer, create IBC connection and start relaying packets"]},"57":{"title":"Transfer token back from osmosis-local to rollup chain","titles":["IBC connection tutorial","Setup relayer, create IBC connection and start relaying packets"]},"58":{"title":"How to use lazy sequencing (aggregation)","titles":[]},"59":{"title":"How To Guides","titles":[]},"60":{"title":"๐Ÿ’ป Support","titles":["How To Guides"]},"61":{"title":"๐Ÿ”„ How to restart your rollup","titles":[]},"62":{"title":"Restart rollup","titles":["๐Ÿ”„ How to restart your rollup"]},"63":{"title":"Restart rollup after running out of funds","titles":["๐Ÿ”„ How to restart your rollup"]},"64":{"title":"๐ŸŸ  Errors in this example","titles":["๐Ÿ”„ How to restart your rollup","Restart rollup after running out of funds"]},"65":{"title":"๐Ÿ’ฐ Re-fund your account","titles":["๐Ÿ”„ How to restart your rollup","Restart rollup after running out of funds"]},"66":{"title":"๐Ÿ›‘ Stopping your rollup","titles":["๐Ÿ”„ How to restart your rollup","Restart rollup after running out of funds"]},"67":{"title":"โ›ฝ Increase the gas fee","titles":["๐Ÿ”„ How to restart your rollup","Restart rollup after running out of funds"]},"68":{"title":"๐Ÿ” Restarting your rollup","titles":["๐Ÿ”„ How to restart your rollup","Restart rollup after running out of funds"]},"69":{"title":"๐Ÿ›ข๏ธ Reduce gas fee & restart again","titles":["๐Ÿ”„ How to restart your rollup","Restart rollup after running out of funds"]},"70":{"title":"How to integrate Range with your rollup","titles":[]},"71":{"title":"Overview","titles":["How to integrate Range with your rollup"]},"72":{"title":"Prerequisites","titles":["How to integrate Range with your rollup"]},"73":{"title":"1. Integrate Your Rollup","titles":["How to integrate Range with your rollup","Prerequisites"]},"74":{"title":"Steps","titles":["How to integrate Range with your rollup","Prerequisites","1. Integrate Your Rollup"]},"75":{"title":"2. Add Your Addresses and Contracts","titles":["How to integrate Range with your rollup","Prerequisites"]},"76":{"title":"3. Creating Your First Alert Rule","titles":["How to integrate Range with your rollup","Prerequisites"]},"77":{"title":"How to use IBC token (TIA) as gas token in your rollup","titles":[]},"78":{"title":"๐ŸŒž Introduction","titles":["How to use IBC token (TIA) as gas token in your rollup"]},"79":{"title":"๐Ÿ› ๏ธ Dependencies","titles":["How to use IBC token (TIA) as gas token in your rollup"]},"80":{"title":"๐ŸŒ Running a Local DA Network","titles":["How to use IBC token (TIA) as gas token in your rollup"]},"81":{"title":"๐Ÿ—๏ธ Building Your Sovereign Rollup","titles":["How to use IBC token (TIA) as gas token in your rollup"]},"82":{"title":"๐Ÿš€ Starting your rollup","titles":["How to use IBC token (TIA) as gas token in your rollup"]},"83":{"title":"โœจ Connecting to Celestia Mocha testnet using IBC","titles":["How to use IBC token (TIA) as gas token in your rollup"]},"84":{"title":"๐Ÿ’ธ Transactions","titles":["How to use IBC token (TIA) as gas token in your rollup"]},"85":{"title":"๐ŸŽ‰ Next steps","titles":["How to use IBC token (TIA) as gas token in your rollup"]},"86":{"title":"zkML Rollup Tutorial with Sindri","titles":[]},"87":{"title":"Introduction - Code Once, Verify Anywhere","titles":["zkML Rollup Tutorial with Sindri"]},"88":{"title":"Prerequisites","titles":["zkML Rollup Tutorial with Sindri"]},"89":{"title":"Setting Up the Polaris EVM using Rollkit","titles":["zkML Rollup Tutorial with Sindri","Prerequisites"]},"90":{"title":"Installing the Sindri Python SDK","titles":["zkML Rollup Tutorial with Sindri","Prerequisites"]},"91":{"title":"Deploying and Proving a Cool zkML Circuit to Sindri","titles":["zkML Rollup Tutorial with Sindri"]},"92":{"title":"Clone","titles":["zkML Rollup Tutorial with Sindri","Deploying and Proving a Cool zkML Circuit to Sindri"]},"93":{"title":"Modify","titles":["zkML Rollup Tutorial with Sindri","Deploying and Proving a Cool zkML Circuit to Sindri"]},"94":{"title":"Deploy and Prove your zkML Circuit on Sindri","titles":["zkML Rollup Tutorial with Sindri","Deploying and Proving a Cool zkML Circuit to Sindri"]},"95":{"title":"Deploy Smart Contract Verifier to Rollkit","titles":["zkML Rollup Tutorial with Sindri"]},"96":{"title":"Deploy","titles":["zkML Rollup Tutorial with Sindri","Deploy Smart Contract Verifier to Rollkit"]},"97":{"title":"Interact with the Contract - Verify your zkML Proof On-Chain","titles":["zkML Rollup Tutorial with Sindri"]},"98":{"title":"Congratulations","titles":["zkML Rollup Tutorial with Sindri"]},"99":{"title":"About Rollkit","titles":[]},"100":{"title":"What is Rollkit?","titles":["About Rollkit"]},"101":{"title":"What problems is Rollkit solving?","titles":["About Rollkit"]},"102":{"title":"1. Scalability and customizability","titles":["About Rollkit","What problems is Rollkit solving?"]},"103":{"title":"2. Security and time to market","titles":["About Rollkit","What problems is Rollkit solving?"]},"104":{"title":"Why Rollkit?","titles":["About Rollkit"]},"105":{"title":"How can you use Rollkit?","titles":["About Rollkit"]},"106":{"title":"Rollup with any execution environment","titles":["About Rollkit","How can you use Rollkit?"]},"107":{"title":"Sovereign rollup with Cosmos SDK","titles":["About Rollkit","How can you use Rollkit?"]},"108":{"title":"Build a settlement layer","titles":["About Rollkit","How can you use Rollkit?"]},"109":{"title":"When can you use Rollkit?","titles":["About Rollkit"]},"110":{"title":"๐Ÿ—ž๏ธ Building a rollup and testnet deployment","titles":[]},"111":{"title":"1. Beginner","titles":["๐Ÿ—ž๏ธ Building a rollup and testnet deployment"]},"112":{"title":"2๏ธ. Intermediate","titles":["๐Ÿ—ž๏ธ Building a rollup and testnet deployment"]},"113":{"title":"3๏ธ. Advanced","titles":["๐Ÿ—ž๏ธ Building a rollup and testnet deployment"]},"114":{"title":"๐Ÿ’ป Support","titles":["๐Ÿ—ž๏ธ Building a rollup and testnet deployment"]},"115":{"title":"Introduction","titles":[]},"116":{"title":"Technical specifications","titles":[]},"117":{"title":"Rollkit stack","titles":[]},"118":{"title":"Application structure","titles":["Rollkit stack"]},"119":{"title":"ABCI interface","titles":["Rollkit stack","Application structure"]},"120":{"title":"Cosmos SDK","titles":["Rollkit stack","Application structure","ABCI interface"]},"121":{"title":"Data availability","titles":["Rollkit stack","Application structure"]},"122":{"title":"Celestia","titles":["Rollkit stack","Application structure","Data availability"]},"123":{"title":"Node components","titles":["Rollkit stack"]},"124":{"title":"Mempool","titles":["Rollkit stack","Node components"]},"125":{"title":"Block manager","titles":["Rollkit stack","Node components"]},"126":{"title":"RPC","titles":["Rollkit stack","Node components"]},"127":{"title":"P2P layer","titles":["Rollkit stack","Node components"]},"128":{"title":"Rollkit node types","titles":["Rollkit stack"]},"129":{"title":"Full node","titles":["Rollkit stack","Rollkit node types"]},"130":{"title":"Light node (work in progress)","titles":["Rollkit stack","Rollkit node types"]},"131":{"title":"Sequencer node","titles":["Rollkit stack","Rollkit node types"]},"132":{"title":"State validity modes","titles":["Rollkit stack"]},"133":{"title":"Pessimistic (full nodes only)","titles":["Rollkit stack","State validity modes"]},"134":{"title":"Optimistic (fraud proofs) (work in progress)","titles":["Rollkit stack","State validity modes"]},"135":{"title":"Validity (ZK proofs)","titles":["Rollkit stack","State validity modes"]},"136":{"title":"Transaction flow","titles":[]},"137":{"title":"Transaction submission","titles":["Transaction flow"]},"138":{"title":"Transaction validation and processing","titles":["Transaction flow"]},"139":{"title":"Block processing","titles":["Transaction flow"]},"140":{"title":"Fraud proof gossip and forking","titles":["Transaction flow"]},"141":{"title":"CosmWasm Testnet","titles":[]},"142":{"title":"Details of ROSM testnet","titles":["CosmWasm Testnet"]},"143":{"title":"Add Rosm to Keplr","titles":["CosmWasm Testnet","Details of ROSM testnet"]},"144":{"title":"Bitcoin rollup tutorial","titles":[]},"145":{"title":"โ˜€๏ธIntroduction","titles":["Bitcoin rollup tutorial"]},"146":{"title":"๐Ÿ“– The stack","titles":["Bitcoin rollup tutorial","โ˜€๏ธIntroduction"]},"147":{"title":"๐Ÿ’ป Prerequisites","titles":["Bitcoin rollup tutorial"]},"148":{"title":"๐Ÿ› ๏ธ Dependency setup","titles":["Bitcoin rollup tutorial"]},"149":{"title":"๐Ÿƒ Golang","titles":["Bitcoin rollup tutorial","๐Ÿ› ๏ธ Dependency setup"]},"150":{"title":"โš’๏ธ Foundry","titles":["Bitcoin rollup tutorial","๐Ÿ› ๏ธ Dependency setup"]},"151":{"title":"๐Ÿช™ Install Bitcoin","titles":["Bitcoin rollup tutorial","๐Ÿ› ๏ธ Dependency setup"]},"152":{"title":"๐ŸŸข Running a local Bitcoin network","titles":["Bitcoin rollup tutorial"]},"153":{"title":"๐Ÿ‘› Create a wallet for the chain","titles":["Bitcoin rollup tutorial","๐ŸŸข Running a local Bitcoin network"]},"154":{"title":"๐ŸŽฌ Start generating blocks","titles":["Bitcoin rollup tutorial","๐ŸŸข Running a local Bitcoin network"]},"155":{"title":"๐ŸงŠ Block height","titles":["Bitcoin rollup tutorial","๐ŸŸข Running a local Bitcoin network","๐ŸŽฌ Start generating blocks"]},"156":{"title":"๐ŸงŠ Block hash","titles":["Bitcoin rollup tutorial","๐ŸŸข Running a local Bitcoin network","๐ŸŽฌ Start generating blocks"]},"157":{"title":"๐ŸงŠ Block header","titles":["Bitcoin rollup tutorial","๐ŸŸข Running a local Bitcoin network","๐ŸŽฌ Start generating blocks"]},"158":{"title":"๐ŸŽฌ Restarting the local network","titles":["Bitcoin rollup tutorial","๐ŸŸข Running a local Bitcoin network","๐ŸŽฌ Start generating blocks"]},"159":{"title":"๐Ÿƒโ€โ™€๏ธ Running the Ethermint rollup","titles":["Bitcoin rollup tutorial"]},"160":{"title":"โšก๏ธ Initialize development environment","titles":["Bitcoin rollup tutorial","๐Ÿƒโ€โ™€๏ธ Running the Ethermint rollup"]},"161":{"title":"๐Ÿ“’ Updating the contract and tests","titles":["Bitcoin rollup tutorial","๐Ÿƒโ€โ™€๏ธ Running the Ethermint rollup"]},"162":{"title":"๐Ÿ“œ Updating the deployment script","titles":["Bitcoin rollup tutorial","๐Ÿƒโ€โ™€๏ธ Running the Ethermint rollup"]},"163":{"title":"๐Ÿ  Deploying locally","titles":["Bitcoin rollup tutorial","๐Ÿƒโ€โ™€๏ธ Running the Ethermint rollup"]},"164":{"title":"๐Ÿงช Deploying to the Ethermint sovereign rollup","titles":["Bitcoin rollup tutorial","๐Ÿƒโ€โ™€๏ธ Running the Ethermint rollup"]},"165":{"title":"GM world rollup: Deploying to Celestia","titles":[]},"166":{"title":"๐ŸŒž Introduction","titles":["GM world rollup: Deploying to Celestia"]},"167":{"title":"๐Ÿชถ Running a Celestia light node","titles":["GM world rollup: Deploying to Celestia"]},"168":{"title":"๐Ÿงน Cleaning previous chain history","titles":["GM world rollup: Deploying to Celestia"]},"169":{"title":"๐Ÿ—๏ธ Building your rollup","titles":["GM world rollup: Deploying to Celestia"]},"170":{"title":"๐Ÿ› ๏ธ Configuring flags for DA","titles":["GM world rollup: Deploying to Celestia"]},"171":{"title":"๐Ÿ”ฅ Running your rollup connected to a Celestia light node","titles":["GM world rollup: Deploying to Celestia"]},"172":{"title":"๐ŸŽ‰ Next steps","titles":["GM world rollup: Deploying to Celestia"]},"173":{"title":"๐Ÿ—ž๏ธ CosmWasm rollup","titles":[]},"174":{"title":"๐Ÿ’ป CosmWasm dependency installations","titles":["๐Ÿ—ž๏ธ CosmWasm rollup"]},"175":{"title":"๐Ÿƒ Golang","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐Ÿ’ป CosmWasm dependency installations"]},"176":{"title":"๐Ÿฆ€ Rust","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐Ÿ’ป CosmWasm dependency installations"]},"177":{"title":"๐Ÿณ Docker installation","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐Ÿ’ป CosmWasm dependency installations"]},"178":{"title":"๐Ÿ’ป Wasmd installation","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐Ÿ’ป CosmWasm dependency installations"]},"179":{"title":"โœจ Local DA node","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐Ÿ’ป CosmWasm dependency installations"]},"180":{"title":"๐ŸŒŒ Setting up your environment for CosmWasm on local-da","titles":["๐Ÿ—ž๏ธ CosmWasm rollup"]},"181":{"title":"๐Ÿ—ž๏ธ Initializing CosmWasm rollup with a bash script","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐ŸŒŒ Setting up your environment for CosmWasm on local-da"]},"182":{"title":"๐Ÿ’  Optional: see what\'s inside the script","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐ŸŒŒ Setting up your environment for CosmWasm on local-da"]},"183":{"title":"๐Ÿ“’ Contract deployment on CosmWasm with Rollkit","titles":["๐Ÿ—ž๏ธ CosmWasm rollup"]},"184":{"title":"๐Ÿค– Compile the smart contract","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐Ÿ“’ Contract deployment on CosmWasm with Rollkit"]},"185":{"title":"๐Ÿงช Unit tests","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐Ÿ“’ Contract deployment on CosmWasm with Rollkit"]},"186":{"title":"๐ŸŽ๏ธ Optimized smart contract","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐Ÿ“’ Contract deployment on CosmWasm with Rollkit"]},"187":{"title":"๐Ÿš€ Contract deployment","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐Ÿ“’ Contract deployment on CosmWasm with Rollkit"]},"188":{"title":"๐ŸŒŸ Contract interaction on CosmWasm","titles":["๐Ÿ—ž๏ธ CosmWasm rollup"]},"189":{"title":"๐Ÿ”Ž Contract querying","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐ŸŒŸ Contract interaction on CosmWasm"]},"190":{"title":"๐Ÿ“ƒ Contract instantiation","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐ŸŒŸ Contract interaction on CosmWasm"]},"191":{"title":"๐Ÿ“„ Contract interaction","titles":["๐Ÿ—ž๏ธ CosmWasm rollup","๐ŸŒŸ Contract interaction on CosmWasm"]},"192":{"title":"GM world rollup: Part 2","titles":[]},"193":{"title":"Deploying to a Celestia devnet","titles":["GM world rollup: Part 2"]},"194":{"title":"๐Ÿชถย Run a Celestia light node","titles":["GM world rollup: Part 2","Deploying to a Celestia devnet"]},"195":{"title":"๐ŸŸขย Start your sovereign rollup","titles":["GM world rollup: Part 2","Deploying to a Celestia devnet"]},"196":{"title":"Clear previous chain history","titles":["GM world rollup: Part 2","Deploying to a Celestia devnet","๐ŸŸขย Start your sovereign rollup"]},"197":{"title":"Start the new chain","titles":["GM world rollup: Part 2","Deploying to a Celestia devnet","๐ŸŸขย Start your sovereign rollup"]},"198":{"title":"Optional: Restarting your rollup","titles":["GM world rollup: Part 2","Deploying to a Celestia devnet"]},"199":{"title":"Optional: Add a "GM world" query","titles":["GM world rollup: Part 2","Deploying to a Celestia devnet"]},"200":{"title":"๐Ÿ’ฌย Say gm world","titles":["GM world rollup: Part 2","Deploying to a Celestia devnet","Optional: Add a "GM world" query"]},"201":{"title":"โœ‹ย Create your first query","titles":["GM world rollup: Part 2","Deploying to a Celestia devnet","Optional: Add a "GM world" query","๐Ÿ’ฌย Say gm world"]},"202":{"title":"๐Ÿ“จย Query request and response types","titles":["GM world rollup: Part 2","Deploying to a Celestia devnet","Optional: Add a "GM world" query","๐Ÿ’ฌย Say gm world"]},"203":{"title":"๐Ÿ‘‹ย Gm keeper function","titles":["GM world rollup: Part 2","Deploying to a Celestia devnet","Optional: Add a "GM world" query","๐Ÿ’ฌย Say gm world"]},"204":{"title":"Restart your rollup","titles":["GM world rollup: Part 2","Deploying to a Celestia devnet","Optional: Add a "GM world" query","๐Ÿ’ฌย Say gm world"]},"205":{"title":"Query your rollup","titles":["GM world rollup: Part 2","Deploying to a Celestia devnet","Optional: Add a "GM world" query","๐Ÿ’ฌย Say gm world"]},"206":{"title":"Next steps","titles":["GM world rollup: Part 2"]},"207":{"title":"GM world UI app","titles":[]},"208":{"title":"๐Ÿ›  Prerequisites","titles":["GM world UI app"]},"209":{"title":"๐Ÿ“ฆ Cloning the repo","titles":["GM world UI app"]},"210":{"title":"๐Ÿš€ Running the app","titles":["GM world UI app"]},"211":{"title":"๐Ÿ”— Connecting your wallet","titles":["GM world UI app"]},"212":{"title":"๐ŸŽ‰ Next steps","titles":["GM world UI app"]},"213":{"title":"GM world rollup: Part 3","titles":[]},"214":{"title":"Deploying to Celestia Mainnet Beta","titles":["GM world rollup: Part 3"]},"215":{"title":"๐Ÿชถย Run a Celestia light node","titles":["GM world rollup: Part 3","Deploying to Celestia Mainnet Beta"]},"216":{"title":"Clear previous chain history","titles":["GM world rollup: Part 3","Deploying to Celestia Mainnet Beta"]},"217":{"title":"Start the rollup on mainnet","titles":["GM world rollup: Part 3","Deploying to Celestia Mainnet Beta"]},"218":{"title":"Restarting your rollup","titles":["GM world rollup: Part 3","Deploying to Celestia Mainnet Beta","Start the rollup on mainnet"]},"219":{"title":"Next steps","titles":["GM world rollup: Part 3"]},"220":{"title":"GM world rollup: Part 2","titles":[]},"221":{"title":"Deploying to a Celestia testnet","titles":["GM world rollup: Part 2"]},"222":{"title":"๐Ÿชถย Run a Celestia light node","titles":["GM world rollup: Part 2","Deploying to a Celestia testnet"]},"223":{"title":"๐ŸŸขย Start your sovereign rollup","titles":["GM world rollup: Part 2","Deploying to a Celestia testnet"]},"224":{"title":"Clear previous chain history","titles":["GM world rollup: Part 2","Deploying to a Celestia testnet","๐ŸŸขย Start your sovereign rollup"]},"225":{"title":"Start the new chain","titles":["GM world rollup: Part 2","Deploying to a Celestia testnet","๐ŸŸขย Start your sovereign rollup"]},"226":{"title":"Optional: Restarting your rollup","titles":["GM world rollup: Part 2","Deploying to a Celestia testnet"]},"227":{"title":"Optional: Add a "GM world" query","titles":["GM world rollup: Part 2","Deploying to a Celestia testnet"]},"228":{"title":"๐Ÿ’ฌย Say gm world","titles":["GM world rollup: Part 2","Deploying to a Celestia testnet","Optional: Add a "GM world" query"]},"229":{"title":"โœ‹ย Create your first query","titles":["GM world rollup: Part 2","Deploying to a Celestia testnet","Optional: Add a "GM world" query","๐Ÿ’ฌย Say gm world"]},"230":{"title":"๐Ÿ“จย Query request and response types","titles":["GM world rollup: Part 2","Deploying to a Celestia testnet","Optional: Add a "GM world" query","๐Ÿ’ฌย Say gm world"]},"231":{"title":"๐Ÿ‘‹ย Gm keeper function","titles":["GM world rollup: Part 2","Deploying to a Celestia testnet","Optional: Add a "GM world" query","๐Ÿ’ฌย Say gm world"]},"232":{"title":"Restart your rollup","titles":["GM world rollup: Part 2","Deploying to a Celestia testnet","Optional: Add a "GM world" query","๐Ÿ’ฌย Say gm world"]},"233":{"title":"Query your rollup","titles":["GM world rollup: Part 2","Deploying to a Celestia testnet","Optional: Add a "GM world" query","๐Ÿ’ฌย Say gm world"]},"234":{"title":"Next steps","titles":["GM world rollup: Part 2"]},"235":{"title":"GM world rollup","titles":[]},"236":{"title":"๐ŸŒž Introduction","titles":["GM world rollup"]},"237":{"title":"๐Ÿ› ๏ธ Dependencies","titles":["GM world rollup"]},"238":{"title":"๐ŸŒ Running a Local DA Network","titles":["GM world rollup"]},"239":{"title":"๐Ÿ—๏ธ Building Your Sovereign Rollup","titles":["GM world rollup"]},"240":{"title":"๐Ÿงฐ Configuring Your Rollup","titles":["GM world rollup"]},"241":{"title":"๐Ÿš€ Starting your rollup","titles":["GM world rollup"]},"242":{"title":"๐Ÿ’ธ Transactions","titles":["GM world rollup"]},"243":{"title":"โš–๏ธ Checking Balances","titles":["GM world rollup"]},"244":{"title":"๐ŸŽ‰ Next steps","titles":["GM world rollup"]},"245":{"title":"Polaris EVM and Rollkit","titles":[]},"246":{"title":"Prerequisites","titles":["Polaris EVM and Rollkit"]},"247":{"title":"Run a local-celestia-devnet","titles":["Polaris EVM and Rollkit"]},"248":{"title":"Clone the repo","titles":["Polaris EVM and Rollkit"]},"249":{"title":"Install Foundry","titles":["Polaris EVM and Rollkit"]},"250":{"title":"Start the Polaris EVM using Rollkit","titles":["Polaris EVM and Rollkit"]},"251":{"title":"Congratulations","titles":["Polaris EVM and Rollkit"]},"252":{"title":"Funds","titles":["Polaris EVM and Rollkit"]},"253":{"title":"Frontend","titles":["Polaris EVM and Rollkit"]},"254":{"title":"Deploy the ooga booga portal contract","titles":["Polaris EVM and Rollkit","Frontend"]},"255":{"title":"Interact with the contract","titles":["Polaris EVM and Rollkit","Frontend"]},"256":{"title":"Start and update the frontend","titles":["Polaris EVM and Rollkit","Frontend"]},"257":{"title":"Interact with the frontend","titles":["Polaris EVM and Rollkit","Frontend"]},"258":{"title":"Running Polaris EVM with a Celestia light node","titles":["Polaris EVM and Rollkit"]},"259":{"title":"Start your light node","titles":["Polaris EVM and Rollkit","Running Polaris EVM with a Celestia light node"]},"260":{"title":"Setup Polaris script","titles":["Polaris EVM and Rollkit","Running Polaris EVM with a Celestia light node"]},"261":{"title":"Start the EVM rollup","titles":["Polaris EVM and Rollkit","Running Polaris EVM with a Celestia light node"]},"262":{"title":"Quick start guide","titles":[]},"263":{"title":"๐Ÿ“ฆ Install Rollkit (CLI)","titles":["Quick start guide"]},"264":{"title":"๐Ÿš€ Run your sovereign rollup node","titles":["Quick start guide"]},"265":{"title":"๐ŸŽ‰ Conclusion","titles":["Quick start guide"]},"266":{"title":"๐Ÿ•น๏ธ Wordle app","titles":[]},"267":{"title":"๐Ÿ’ป Pre-requisites","titles":["๐Ÿ•น๏ธ Wordle app"]},"268":{"title":"๐Ÿ“– Design implementation","titles":["๐Ÿ•น๏ธ Wordle app"]},"269":{"title":"โ›“๏ธ Ignite and scaffolding the wordle chain","titles":["๐Ÿ•น๏ธ Wordle app"]},"270":{"title":"๐Ÿ”ฅ Ignite","titles":["๐Ÿ•น๏ธ Wordle app","โ›“๏ธ Ignite and scaffolding the wordle chain"]},"271":{"title":"โ›“๏ธ Scaffolding the wordle chain","titles":["๐Ÿ•น๏ธ Wordle app","โ›“๏ธ Ignite and scaffolding the wordle chain"]},"272":{"title":"๐Ÿ—‚๏ธ Wordle directory","titles":["๐Ÿ•น๏ธ Wordle app","โ›“๏ธ Ignite and scaffolding the wordle chain"]},"273":{"title":"๐Ÿ› ๏ธ Setting up Rollkit","titles":["๐Ÿ•น๏ธ Wordle app"]},"274":{"title":"๐Ÿ—ž๏ธ Installing Rollkit","titles":["๐Ÿ•น๏ธ Wordle app","๐Ÿ› ๏ธ Setting up Rollkit"]},"275":{"title":"โœจ Creating the wordle module","titles":["๐Ÿ•น๏ธ Wordle app"]},"276":{"title":"๐Ÿ”– Scaffolding a module","titles":["๐Ÿ•น๏ธ Wordle app","โœจ Creating the wordle module"]},"277":{"title":"โœ‰๏ธ Messages","titles":["๐Ÿ•น๏ธ Wordle app"]},"278":{"title":"๐Ÿ’ฌ Scaffolding a message","titles":["๐Ÿ•น๏ธ Wordle app","โœ‰๏ธ Messages"]},"279":{"title":"๐ŸŽจ Wordle types","titles":["๐Ÿ•น๏ธ Wordle app"]},"280":{"title":"๐Ÿ—๏ธ Scaffolding wordle types","titles":["๐Ÿ•น๏ธ Wordle app","๐ŸŽจ Wordle types"]},"281":{"title":"๐Ÿ” Keeper functions","titles":["๐Ÿ•น๏ธ Wordle app"]},"282":{"title":"๐Ÿ“ค SubmitWordle function","titles":["๐Ÿ•น๏ธ Wordle app","๐Ÿ” Keeper functions"]},"283":{"title":"โŒ› SubmitGuess function","titles":["๐Ÿ•น๏ธ Wordle app","๐Ÿ” Keeper functions"]},"284":{"title":"๐Ÿ“ฆ Protobuf file","titles":["๐Ÿ•น๏ธ Wordle app","๐Ÿ” Keeper functions"]},"285":{"title":"โ›“๏ธ Run the wordle chain","titles":["๐Ÿ•น๏ธ Wordle app"]},"286":{"title":"๐Ÿชถ Run a local DA node","titles":["๐Ÿ•น๏ธ Wordle app","โ›“๏ธ Run the wordle chain"]},"287":{"title":"๐ŸŸข Building and running wordle chain","titles":["๐Ÿ•น๏ธ Wordle app","โ›“๏ธ Run the wordle chain"]},"288":{"title":"๐Ÿ”ฎ Extending in the future","titles":["๐Ÿ•น๏ธ Wordle app","โ›“๏ธ Run the wordle chain"]},"289":{"title":"๐ŸŽ‰ Next steps","titles":["๐Ÿ•น๏ธ Wordle app"]}},"dirtCount":0,"index":[["โŒ›",{"0":{"283":1}}],["โœ‰๏ธ",{"0":{"277":1},"1":{"278":1}}],["โ›“๏ธ",{"0":{"269":1,"271":1,"285":1},"1":{"270":1,"271":1,"272":1,"286":1,"287":1,"288":1}}],["โ ˜",{"2":{"254":1}}],["รฃ๏ฟฝ๏ฟฝ๏ฟฝ๏ฟฝ๏ฟฝ๏ฟฝ๏ฟฝ๏ฟฝ๏ฟฝ$๏ฟฝi๏ฟฝ๏ฟฝ",{"2":{"251":1}}],["๏ฟฝaru๏ฟฝ๏ฟฝ5๏ฟฝ",{"2":{"251":1}}],["๏ฟฝ๏ฟฝ๏ฟฝ",{"2":{"251":1}}],["โš–๏ธ",{"0":{"243":1}}],["\\treturn",{"2":{"203":2,"231":2}}],["\\tctx",{"2":{"203":2,"231":2}}],["\\t",{"2":{"203":4,"231":4}}],["\\t\\treturn",{"2":{"203":2,"231":2}}],["\\tif",{"2":{"203":2,"231":2}}],["โœ‹",{"0":{"201":1,"229":1}}],["โ ‘",{"2":{"161":1,"254":1}}],["โ Š",{"2":{"161":1}}],["๐Ÿงฐ",{"0":{"240":1}}],["๐Ÿค–",{"0":{"184":1}}],["๐Ÿฆ€",{"0":{"176":1}}],["๐Ÿงน",{"0":{"168":1}}],["๐Ÿชถ",{"0":{"167":1,"194":1,"215":1,"222":1,"286":1}}],["๐Ÿงช",{"0":{"164":1,"185":1}}],["๐ŸงŠ",{"0":{"155":1,"156":1,"157":1}}],["๐Ÿช™",{"0":{"151":1}}],["โš’๏ธ",{"0":{"150":1}}],[">>",{"2":{"149":1}}],[">",{"2":{"149":2}}],["โ˜€๏ธintroduction",{"0":{"145":1},"1":{"146":1}}],["โšก๏ธ",{"0":{"160":1},"2":{"131":2}}],["โณ",{"2":{"131":2}}],["โŒ",{"2":{"131":4}}],["โœ…",{"2":{"96":1,"131":9,"254":1}}],["โ ‰",{"2":{"96":1,"254":1}}],["xyz",{"2":{"150":1,"249":1}}],["xzf",{"2":{"149":1}}],["x",{"2":{"96":1,"98":1,"191":1,"201":3,"203":4,"229":3,"231":4,"254":1,"258":1,"272":2,"282":2,"283":2,"284":1}}],["โ ฐ",{"2":{"96":1,"161":1}}],["โ †",{"2":{"96":1,"161":1}}],["โ ’",{"2":{"96":1,"161":1,"254":1}}],["8s",{"2":{"210":1}}],["8kyecn9mzv8ghjspkrde",{"2":{"170":1}}],["8510",{"2":{"161":1}}],["8545",{"2":{"96":1,"164":3,"254":1}}],["8gb",{"2":{"147":1}}],["80085",{"2":{"96":1}}],["8000",{"2":{"69":1}}],["8",{"2":{"96":3,"159":1,"161":6,"162":1,"186":1,"254":2}}],["^0",{"2":{"96":1,"161":2,"162":1}}],["~",{"2":{"96":2,"149":4,"160":1,"185":1,"186":1,"187":1,"240":1}}],["โœจ",{"0":{"83":1,"179":1,"275":1},"1":{"276":1}}],["๐ŸŽจ",{"0":{"279":1},"1":{"280":1}}],["๐ŸŒŸ",{"0":{"188":1},"1":{"189":1,"190":1,"191":1}}],["๐ŸŽ๏ธ",{"0":{"186":1}}],["๐ŸŒŒ",{"0":{"180":1},"1":{"181":1,"182":1}}],["๐Ÿ ",{"0":{"163":1}}],["๐ŸŽฌ",{"0":{"154":1,"158":1},"1":{"155":1,"156":1,"157":1,"158":1}}],["๐Ÿƒโ€โ™€๏ธ",{"0":{"159":1},"1":{"160":1,"161":1,"162":1,"163":1,"164":1}}],["๐Ÿƒ",{"0":{"149":1,"175":1}}],["๐ŸŽ‰",{"0":{"85":1,"172":1,"212":1,"244":1,"265":1,"289":1},"2":{"201":1,"206":1,"229":1,"234":1}}],["๐Ÿ—๏ธ",{"0":{"81":1,"169":1,"239":1,"280":1}}],["๐ŸŒ",{"0":{"80":1,"238":1}}],["๐ŸŒž",{"0":{"78":1,"166":1,"236":1}}],["๐ŸŽŠ",{"2":{"69":1,"76":1}}],["โ›ฝ",{"0":{"67":1}}],["+=",{"2":{"161":1,"283":1}}],["+calldata",{"2":{"93":1}}],["+",{"2":{"66":1,"69":1,"82":1,"98":1,"154":1,"217":1,"283":1}}],["๐Ÿ”ฎ",{"0":{"288":1}}],["๐Ÿ“ค",{"0":{"282":1}}],["๐Ÿ”",{"0":{"281":1},"1":{"282":1,"283":1,"284":1}}],["๐Ÿ”–",{"0":{"276":1}}],["๐Ÿ—‚๏ธ",{"0":{"272":1}}],["๐Ÿ•น๏ธ",{"0":{"266":1},"1":{"267":1,"268":1,"269":1,"270":1,"271":1,"272":1,"273":1,"274":1,"275":1,"276":1,"277":1,"278":1,"279":1,"280":1,"281":1,"282":1,"283":1,"284":1,"285":1,"286":1,"287":1,"288":1,"289":1}}],["๐Ÿ”—",{"0":{"211":1}}],["๐Ÿ“ฆ",{"0":{"209":1,"263":1,"284":1}}],["๐Ÿ› ",{"0":{"208":1}}],["๐Ÿ› ๏ธ",{"0":{"79":1,"148":1,"170":1,"237":1,"273":1},"1":{"149":1,"150":1,"151":1,"274":1}}],["๐Ÿ‘‹",{"0":{"203":1,"231":1}}],["๐Ÿ“จ",{"0":{"202":1,"230":1}}],["๐Ÿ’ฌ",{"0":{"200":1,"228":1,"278":1},"1":{"201":1,"202":1,"203":1,"204":1,"205":1,"229":1,"230":1,"231":1,"232":1,"233":1}}],["๐Ÿ“„",{"0":{"191":1}}],["๐Ÿ“ƒ",{"0":{"190":1}}],["๐Ÿ”Ž",{"0":{"189":1}}],["๐Ÿ’ ",{"0":{"182":1}}],["๐Ÿณ",{"0":{"177":1}}],["๐Ÿ”ฅ",{"0":{"171":1,"270":1}}],["๐Ÿ˜Ž",{"2":{"170":1,"195":1,"217":1,"223":1,"259":1}}],["๐Ÿ“œ",{"0":{"162":1}}],["๐Ÿ“’",{"0":{"161":1,"183":1},"1":{"184":1,"185":1,"186":1,"187":1}}],["๐Ÿ‘›",{"0":{"153":1}}],["๐ŸŸข",{"0":{"152":1,"195":1,"223":1,"287":1},"1":{"153":1,"154":1,"155":1,"156":1,"157":1,"158":1,"196":1,"197":1,"224":1,"225":1}}],["๐Ÿ“–",{"0":{"146":1,"268":1}}],["๐ŸŸก",{"2":{"131":2}}],["๐Ÿ—ž๏ธ",{"0":{"110":1,"173":1,"181":1,"274":1},"1":{"111":1,"112":1,"113":1,"114":1,"174":1,"175":1,"176":1,"177":1,"178":1,"179":1,"180":1,"181":1,"182":1,"183":1,"184":1,"185":1,"186":1,"187":1,"188":1,"189":1,"190":1,"191":1}}],["๐Ÿ’ธ",{"0":{"84":1,"242":1}}],["๐Ÿš€",{"0":{"82":1,"187":1,"210":1,"241":1,"264":1},"2":{"149":1}}],["๐Ÿ›ข๏ธ",{"0":{"69":1}}],["๐Ÿ”",{"0":{"68":1}}],["๐Ÿ›‘",{"0":{"66":1}}],["๐Ÿ’ฐ",{"0":{"65":1}}],["๐ŸŸ ",{"0":{"64":1}}],["๐Ÿ”„",{"0":{"61":1},"1":{"62":1,"63":1,"64":1,"65":1,"66":1,"67":1,"68":1,"69":1}}],["๐Ÿ’ป",{"0":{"43":1,"60":1,"114":1,"147":1,"174":1,"178":1,"267":1},"1":{"44":1,"175":1,"176":1,"177":1,"178":1,"179":1}}],["904",{"2":{"178":1}}],["902",{"2":{"178":1}}],["9090",{"2":{"45":2,"247":2}}],["9545",{"2":{"163":2}}],["9",{"2":{"149":1,"161":2}}],["9d5c710cd64d031752a7db86e09c8ea8ce4cae4e30878c6d0487c57806060a47",{"2":{"142":2}}],["974724",{"2":{"96":1}}],["999",{"2":{"190":1}}],["999uwasm",{"2":{"190":1}}],["9999999999999999999957931",{"2":{"243":1}}],["9999999999999999999897679",{"2":{"57":1}}],["9999999999999999989995000",{"2":{"83":1}}],["99ms",{"2":{"96":1}}],["991rcctqc5l4px95k6tdg4pjrms70m2a9t35rl50t",{"2":{"76":1}}],["991hesf7xgmjwttag2n2wzk43rvxh47nn4ckh3e6s",{"2":{"76":1}}],["9290",{"2":{"62":1,"67":1,"69":1,"82":1,"241":1}}],["682",{"2":{"254":1}}],["677caf6c80b85acef6f9ec7906fb3cb021322aac78b015fa07d5112f2f824bff",{"2":{"242":1}}],["6e340b9cffb37a989ca544e6bb780a2c78901d3fb33738768511a30617afa01d",{"2":{"142":1}}],["64ba6e31fe887d66c6f8f31c7b1a80c7ca179239677b4088bb55f5ea07dbe273",{"2":{"56":1,"57":1}}],["69",{"2":{"54":1}}],["61",{"2":{"54":1}}],["6510stake",{"2":{"54":1}}],["6",{"2":{"45":1,"149":1,"178":1,"186":1,"247":1,"268":3,"283":5}}],["โ‰ฅ",{"2":{"44":2}}],["q",{"2":{"39":1,"83":4,"84":1,"205":1,"233":1,"260":1,"287":1}}],["quality",{"2":{"94":1}}],["queried",{"2":{"156":1,"206":1,"234":1}}],["queries",{"2":{"26":1,"39":1,"117":1,"130":1,"200":1,"228":1}}],["querygmresponse",{"2":{"201":2,"202":2,"203":5,"229":2,"230":2,"231":5}}],["querygmrequest",{"2":{"201":2,"202":2,"203":2,"229":2,"230":2,"231":2}}],["queryparamsresponse",{"2":{"201":1,"229":1}}],["queryparamsrequest",{"2":{"201":1,"229":1}}],["query=",{"2":{"191":1}}],["querying",{"0":{"189":1},"2":{"126":1,"287":1}}],["queryresponses",{"2":{"26":1}}],["queryfns",{"2":{"26":2,"29":1}}],["query",{"0":{"199":1,"201":1,"202":1,"205":1,"227":1,"229":1,"230":1,"233":1},"1":{"200":1,"201":1,"202":1,"203":1,"204":1,"205":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1},"2":{"25":1,"26":3,"56":2,"57":3,"142":3,"157":1,"170":1,"189":3,"191":7,"200":2,"201":13,"203":8,"228":2,"229":13,"231":8,"243":3,"287":6}}],["querymsgfns",{"2":{"26":1}}],["querymsg",{"2":{"25":2,"26":3,"29":2}}],["quot",{"0":{"199":2,"227":2},"1":{"200":2,"201":2,"202":2,"203":2,"204":2,"205":2,"228":2,"229":2,"230":2,"231":2,"232":2,"233":2},"2":{"24":2,"25":8,"27":6,"30":6,"38":2,"39":14,"49":4,"52":10,"53":4,"54":272,"56":8,"57":4,"62":10,"63":2,"64":6,"67":2,"69":2,"81":2,"82":26,"83":26,"84":8,"92":2,"93":29,"96":4,"97":4,"114":2,"131":4,"142":162,"149":10,"152":12,"153":8,"154":4,"155":2,"159":16,"161":2,"162":4,"163":4,"164":4,"170":4,"171":4,"176":2,"186":12,"189":10,"190":24,"191":56,"201":4,"203":6,"211":2,"229":4,"231":6,"236":2,"239":2,"240":4,"241":20,"242":36,"243":8,"251":2,"255":8,"282":30,"283":42,"287":82}}],["quickly",{"2":{"100":1}}],["quickstart",{"2":{"90":1}}],["quicker",{"2":{"21":2}}],["quick",{"0":{"262":1},"1":{"263":1,"264":1,"265":1},"2":{"21":2,"78":1,"236":1,"237":1}}],["$key2",{"2":{"242":1,"243":1}}],["$key1",{"2":{"242":1,"243":1}}],["$name",{"2":{"191":1}}],["$namespace",{"2":{"62":1,"67":1,"69":1,"159":1}}],["$receiver",{"2":{"257":1}}],["$register",{"2":{"191":1}}],["$rpc",{"2":{"96":2,"97":2,"163":3,"254":2,"255":2,"257":1}}],["$init",{"2":{"190":1}}],["$hash",{"2":{"157":2}}],["$home",{"2":{"37":1,"45":1,"47":1,"51":1,"52":1,"65":1,"81":1,"83":4,"92":1,"95":1,"96":1,"97":1,"149":5,"168":2,"169":2,"176":2,"196":2,"198":1,"216":2,"218":1,"224":2,"226":1,"239":1,"248":1,"250":1,"253":1,"256":2,"259":1,"260":2,"261":1}}],["$flags",{"2":{"156":1,"157":2}}],["$code",{"2":{"189":2,"190":1,"191":2}}],["$coinbase",{"2":{"154":1}}],["$contract",{"2":{"97":2,"163":2,"164":2,"191":5,"255":2}}],["$calldata",{"2":{"97":2}}],["$channel",{"2":{"56":1,"57":1,"83":1}}],["$private",{"2":{"96":2,"97":2,"164":2,"254":2,"255":1,"257":1}}],["$tx",{"2":{"84":1,"187":2,"189":1}}],["$anvil",{"2":{"163":2}}],["$address",{"2":{"154":1}}],["$account",{"2":{"83":1,"84":2}}],["$auth",{"2":{"62":1,"170":1,"171":1,"260":1}}],["$da",{"2":{"62":1,"67":1,"69":1,"170":1,"171":2}}],["$gm",{"2":{"57":3}}],["$osmo",{"2":{"56":2}}],["$",{"2":{"39":1,"81":1,"83":3,"84":1,"158":1,"168":1,"186":6,"239":1,"260":1}}],["zero",{"2":{"87":1}}],["zone",{"2":{"39":1}}],["zkml",{"0":{"86":1,"91":1,"94":1,"97":1},"1":{"87":1,"88":1,"89":1,"90":1,"91":1,"92":2,"93":2,"94":2,"95":1,"96":1,"97":1,"98":1},"2":{"59":1,"91":1,"94":1,"95":1,"97":1,"98":1}}],["zk",{"0":{"135":1},"2":{"7":1,"10":2,"87":1,"104":2,"117":1,"135":1}}],["|jq",{"2":{"260":1}}],["||",{"2":{"36":13}}],["|",{"2":{"36":28,"45":1,"79":1,"80":1,"83":2,"84":2,"150":1,"157":1,"170":1,"175":1,"176":1,"179":1,"187":2,"189":1,"191":1,"208":1,"237":1,"238":1,"249":1,"260":1,"263":1,"270":1,"286":1,"287":1}}],["โ””โ”€โ”€",{"2":{"30":2}}],["โ”œโ”€โ”€",{"2":{"30":5}}],["`wordle`",{"2":{"287":1}}],["`wasmd`",{"2":{"181":1}}],["`date",{"2":{"154":1}}],["`nodejs",{"2":{"149":1}}],["```bash",{"2":{"149":4}}],["```",{"2":{"149":5}}],["`gm`",{"2":{"37":1,"195":1,"201":1,"217":1,"223":1,"229":1}}],["`",{"2":{"27":1,"154":1}}],["=nil",{"2":{"283":1}}],["=https",{"2":{"176":1}}],["==",{"2":{"96":2,"203":2,"231":2,"254":2,"283":2}}],["=",{"2":{"21":1,"24":2,"25":4,"27":8,"30":1,"63":1,"83":5,"84":1,"93":8,"161":6,"178":1,"191":4,"201":2,"202":1,"203":4,"229":2,"230":1,"231":4,"240":2,"246":1,"282":16,"283":22,"284":2}}],["jcstein",{"2":{"253":1}}],["join",{"2":{"93":1}}],["journey",{"2":{"21":1}}],["js",{"2":{"82":1,"149":1,"208":1,"288":1}}],["jsonrpc",{"2":{"142":1}}],["json",{"2":{"26":1,"52":2,"83":2,"84":2,"92":1,"93":3,"126":2,"142":2,"187":2,"189":3,"191":4,"205":1,"233":1,"256":3,"264":4,"287":4}}],["jq",{"2":{"81":3,"83":1,"84":2,"148":1,"157":1,"170":1,"175":1,"187":2,"189":1,"191":1,"260":1,"287":1}}],["juno",{"2":{"27":1}}],["just",{"2":{"7":1,"10":1,"50":1,"78":1,"94":1,"98":1,"104":1,"201":1,"229":1,"236":1,"242":1,"252":1,"258":1}}],["01",{"2":{"282":1,"283":2}}],["01|09",{"2":{"264":6}}],["082",{"2":{"264":1}}],["081",{"2":{"264":1}}],["080",{"2":{"264":1}}],["080998z",{"2":{"54":1}}],["080992z",{"2":{"54":1}}],["080924z",{"2":{"54":1}}],["05",{"2":{"264":6}}],["0`",{"2":{"149":1}}],["036da1ab230a4ce8654358f77cb426ba2f8ef9b81ea06faca32085b0b0d25c2a",{"2":{"142":2}}],["09t15",{"2":{"142":2}}],["0x18df82c7e422a42d47345ed86b0e935e9718ebda",{"2":{"254":1}}],["0xa174e9389633972458e6dce431d84736e0709e9406c1c3b14b5fa9ae0cdd6860",{"2":{"254":1}}],["0xa06a4585af436e2271fc9f697488ce49771c6480e72caac76739e286564c0fc3",{"2":{"96":1}}],["0xfffdbb37105441e14b0ee6330d855d8504ff39e705c3afa8f859ac9865f99306",{"2":{"252":1}}],["0x58096aabd3cb58bdef28501bda01b6cf4a37ed0ba482f81462bc1043bb91f996",{"2":{"97":1}}],["0x5c59c83c099f72fce832208f96a23a1e43737a14",{"2":{"96":2,"97":1}}],["0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",{"2":{"97":1}}],["0x20f33ce90a13a4b5e7697e3544c3083b8f8a51d4",{"2":{"97":1,"252":1}}],["0xbbd872d0c37fe889c2456daf80505c20f262b001842d919d06e48c163319af3d",{"2":{"97":1}}],["002",{"2":{"264":2}}],["002924172006823068",{"2":{"96":1}}],["001",{"2":{"264":1}}],["001528707003566983",{"2":{"254":1}}],["000000506f6c61726973",{"2":{"259":1}}],["00000000000000000000000000000000000000000008e5f679bf7116cb",{"2":{"170":2,"195":2,"217":2,"223":2}}],["0000000000000000000000000000000000000000000000000000000000000000",{"2":{"142":1}}],["000000000000000000000000000000000000b7b24d9321578eb83626",{"2":{"142":1}}],["000000007",{"2":{"96":1,"254":1}}],["000001",{"2":{"152":1}}],["00",{"2":{"96":3,"254":3}}],["069040z",{"2":{"54":1}}],["062667z",{"2":{"54":1}}],["062649z",{"2":{"54":1}}],["078583z",{"2":{"54":1}}],["070389z",{"2":{"54":1}}],["070364z",{"2":{"54":1}}],["07",{"2":{"54":8}}],["04",{"2":{"54":5,"142":2}}],["025uwasm",{"2":{"187":2,"190":1,"191":1}}],["025stake",{"2":{"82":1,"83":1,"171":2}}],["02ibc",{"2":{"82":1,"84":1}}],["02",{"2":{"54":13,"282":1,"283":2}}],["0s",{"2":{"52":2,"83":2,"96":1,"254":1}}],["0",{"2":{"19":1,"21":1,"24":1,"27":1,"39":6,"41":1,"44":2,"45":2,"47":1,"52":2,"54":12,"56":2,"58":1,"62":8,"67":8,"69":8,"76":2,"82":9,"83":7,"84":2,"96":4,"97":1,"142":6,"149":3,"159":2,"161":5,"163":2,"164":6,"171":2,"176":2,"178":1,"179":1,"186":2,"187":6,"189":5,"190":3,"191":21,"210":4,"241":6,"242":1,"243":2,"246":1,"254":4,"259":3,"283":1,"287":5}}],["364",{"2":{"191":1}}],["36656",{"2":{"39":2,"62":1,"67":1,"69":1}}],["36657",{"2":{"39":1,"52":1,"56":1,"57":2,"62":1,"67":1,"69":1,"76":1,"187":2,"189":2,"190":1,"191":6}}],["3๏ธ",{"0":{"113":1}}],["39",{"2":{"64":6,"83":16,"93":2,"142":2,"154":2,"157":2,"159":2,"161":2,"170":2,"176":15,"187":4,"189":2,"190":2,"191":12,"242":8,"260":5,"283":3,"287":2}}],["390kb",{"2":{"14":1}}],["310493z",{"2":{"54":1}}],["3",{"0":{"76":1,"213":1},"1":{"214":1,"215":1,"216":1,"217":1,"218":1,"219":1},"2":{"39":9,"45":2,"88":1,"96":1,"161":3,"175":1,"178":1,"187":2,"190":1,"191":1,"213":1,"254":1,"272":1}}],["3000",{"2":{"210":2,"211":1}}],["3000000007",{"2":{"97":1}}],["300397z",{"2":{"54":1}}],["30s",{"2":{"19":1}}],["30",{"2":{"19":1}}],["kv",{"2":{"282":2}}],["k",{"2":{"203":2,"231":2,"282":4,"283":6}}],["knowledge",{"2":{"87":1,"145":1}}],["know",{"2":{"60":1,"114":1,"182":1}}],["keplr",{"0":{"143":1},"2":{"143":3,"207":1,"211":3}}],["keyfile=",{"2":{"264":1}}],["key2=gm1e4fqspwdsy0dzkmzsdhkadfcrd0udngw0f88pw",{"2":{"242":1}}],["key1=gm18k57hn42ujcccyn0n5v7r6ydpacycn2wkt7uh9",{"2":{"242":1}}],["key=$",{"2":{"164":1}}],["key=0xfffdbb37105441e14b0ee6330d855d8504ff39e705c3afa8f859ac9865f99306",{"2":{"96":1,"254":1}}],["key=",{"2":{"94":1,"163":1}}],["key=gm1vvl79phavqruppr6f5zy4ypxy7znshrqam48qy",{"2":{"56":1}}],["key=osmo1vvl79phavqruppr6f5zy4ypxy7znshrqm390ll",{"2":{"56":1}}],["keyring",{"2":{"52":2,"56":1,"65":1,"76":1,"83":5,"84":2,"164":1,"187":2,"190":1,"191":2,"242":2,"287":5}}],["keys",{"2":{"52":2,"53":3,"56":1,"83":8,"84":1,"163":3,"164":1,"242":3}}],["key",{"2":{"48":2,"49":2,"52":4,"56":5,"57":3,"65":2,"83":7,"84":1,"88":1,"94":2,"96":5,"97":4,"142":1,"163":6,"164":8,"187":2,"189":1,"190":1,"191":3,"242":5,"243":2,"252":1,"254":5,"255":2,"257":4,"264":3,"268":1,"281":1,"282":1,"287":7}}],["keepers",{"2":{"281":1,"284":1}}],["keeper",{"0":{"203":1,"231":1,"281":1},"1":{"282":1,"283":1,"284":1},"2":{"191":2,"200":3,"201":1,"203":7,"228":3,"229":1,"231":7,"281":5,"282":3,"283":3,"284":1}}],["keep",{"2":{"18":1,"41":1,"50":1,"65":1,"97":1,"121":1,"194":1,"244":1,"275":1}}],["kickstarted",{"2":{"181":1,"197":1,"225":1,"287":1}}],["kicked",{"2":{"14":1}}],["kinds",{"2":{"276":1}}],["kind",{"2":{"10":1}}],["4980",{"2":{"156":1}}],["46",{"2":{"264":6}}],["464427035z",{"2":{"142":2}}],["46657",{"2":{"48":1,"52":1,"56":1,"57":1}}],["48",{"2":{"142":2}}],["443",{"2":{"83":1}}],["4039stake",{"2":{"76":1}}],["42069$ibc",{"2":{"57":1}}],["42069",{"2":{"56":1,"242":1}}],["42069stake",{"2":{"56":1,"242":1}}],["4762stake",{"2":{"54":1}}],["47",{"2":{"51":1}}],["4mb",{"2":{"14":1}}],["4",{"2":{"14":1,"51":3,"64":3,"83":11,"147":1,"222":1,"259":3}}],["58",{"2":{"264":6}}],["58pm",{"2":{"251":10}}],["52s",{"2":{"254":1}}],["59s",{"2":{"161":1}}],["5699",{"2":{"96":1}}],["51pm",{"2":{"64":4}}],["5183",{"2":{"52":1,"83":1}}],["5112",{"2":{"42":1}}],["509569",{"2":{"254":1}}],["500uosmo",{"2":{"57":1}}],["5000stake",{"2":{"56":1,"76":1,"83":1,"242":1}}],["50",{"2":{"45":1,"142":2,"178":2}}],["55pm",{"2":{"39":10}}],["5",{"2":{"12":1,"36":1,"51":1,"52":2,"70":1,"83":3,"282":4,"283":4,"287":1}}],["uwasm",{"2":{"190":2}}],["ui",{"0":{"207":1},"1":{"208":1,"209":1,"210":1,"211":1,"212":1},"2":{"207":1,"288":1}}],["uiiny",{"2":{"142":1}}],["uint256",{"2":{"97":8}}],["uri",{"2":{"126":1}}],["url=http",{"2":{"96":1,"163":1,"254":1}}],["url",{"2":{"96":5,"97":4,"163":7,"164":3,"170":1,"210":1,"254":5,"255":4,"257":2}}],["ubuntu",{"2":{"81":1,"147":2}}],["utia",{"2":{"69":1,"82":1}}],["utilizing",{"2":{"99":1,"115":2}}],["utilization",{"2":{"14":1}}],["utilized",{"2":{"107":1}}],["utilizes",{"2":{"78":1,"236":1}}],["utilize",{"2":{"9":1,"10":1,"107":1,"131":1}}],["utest",{"2":{"56":1}}],["uosmo",{"2":{"56":1}}],["updating",{"0":{"161":1,"162":1}}],["updated",{"2":{"125":1,"140":1,"211":1,"283":2}}],["updates=0",{"2":{"82":1,"241":1,"251":1,"264":1}}],["update",{"0":{"39":1,"256":1},"2":{"36":1,"39":2,"134":1,"148":2,"149":1,"161":2,"162":1,"203":1,"231":1,"245":1,"256":1}}],["upon",{"2":{"83":2,"264":1}}],["uploadable",{"2":{"25":1}}],["upload",{"2":{"21":1,"27":1,"92":2,"94":1}}],["up",{"0":{"20":1,"89":1,"180":1,"273":1},"1":{"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"181":1,"182":1,"274":1},"2":{"14":1,"19":1,"22":1,"33":1,"50":1,"63":1,"76":1,"80":1,"96":1,"99":1,"125":1,"131":2,"145":2,"146":1,"151":1,"152":1,"153":1,"166":1,"170":1,"190":1,"206":1,"210":1,"219":1,"234":1,"238":1,"239":1,"245":1,"265":1,"268":1,"273":1,"282":2,"283":2,"286":1}}],["upstream",{"2":{"9":1,"120":1}}],["upgrade",{"2":{"13":1,"14":1,"146":1,"148":2}}],["upgradeable",{"2":{"8":1}}],["upgrades",{"2":{"8":1}}],["undelegating",{"2":{"276":1}}],["under",{"2":{"130":1,"240":2}}],["understanding",{"2":{"78":1,"145":1,"236":2}}],["understand",{"2":{"59":1,"116":1,"267":2,"275":1}}],["unicode",{"2":{"282":2}}],["unit",{"0":{"185":1},"2":{"185":1}}],["unified",{"2":{"100":1}}],["unchanged",{"2":{"176":1}}],["unconstrained",{"2":{"7":1}}],["unknown",{"2":{"176":8,"184":2,"191":3}}],["unsafe",{"2":{"164":1}}],["unpacked",{"2":{"154":1}}],["unlikely",{"2":{"103":1}}],["unlike",{"2":{"78":1,"236":1}}],["unable",{"2":{"63":1}}],["unordered",{"2":{"54":1}}],["until",{"2":{"41":1,"178":1}}],["unwrapsdkcontext",{"2":{"203":2,"231":2,"282":1,"283":1}}],["unwrap",{"2":{"25":1}}],["unwind",{"2":{"8":1}}],["usr",{"2":{"149":3,"186":2,"270":1}}],["us",{"2":{"60":1,"76":1,"93":1,"114":1,"189":1,"191":1,"200":1,"228":1,"270":1,"277":1,"280":1,"281":2,"282":1,"283":2}}],["usage",{"2":{"13":1,"14":1,"25":1,"26":1,"83":1,"146":1}}],["using",{"0":{"27":1,"83":1,"89":1,"250":1},"2":{"7":2,"13":1,"17":1,"21":1,"22":1,"23":1,"25":1,"29":1,"30":1,"31":1,"33":1,"34":1,"35":1,"48":1,"52":1,"54":1,"62":1,"63":2,"66":1,"78":2,"81":1,"82":2,"84":1,"87":2,"88":1,"89":1,"97":1,"98":1,"120":1,"121":1,"122":2,"127":1,"145":2,"161":2,"162":1,"167":1,"170":2,"173":1,"176":1,"177":1,"188":2,"191":1,"195":1,"208":1,"210":1,"212":1,"217":2,"223":1,"236":1,"241":1,"245":1,"246":1,"258":4,"259":1,"262":1,"265":1,"270":1,"276":1,"282":1,"287":1,"288":2,"289":1}}],["user",{"2":{"140":2,"159":1,"207":1,"212":1,"276":1}}],["users",{"2":{"3":1,"98":1,"104":1,"117":1,"130":2,"136":1,"140":1,"270":1}}],["useful",{"2":{"25":1,"26":1,"265":1}}],["uses",{"2":{"16":1,"34":2,"39":1,"78":1,"79":1,"85":1,"100":1,"102":1,"127":1,"133":1,"142":1,"161":1,"195":1,"217":1,"223":1,"245":1,"270":1,"282":1,"283":1}}],["use",{"0":{"58":1,"77":1,"105":1,"109":1},"1":{"78":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"106":1,"107":1,"108":1},"2":{"5":1,"9":3,"10":1,"12":1,"14":1,"16":1,"24":1,"25":2,"26":1,"27":4,"28":1,"30":2,"32":1,"39":2,"41":1,"42":2,"45":1,"58":1,"59":3,"62":2,"99":1,"100":1,"106":2,"119":1,"127":1,"134":1,"136":1,"145":1,"146":1,"149":1,"158":1,"162":1,"163":2,"164":1,"173":2,"177":1,"187":3,"188":2,"198":1,"203":1,"218":1,"226":1,"231":1,"245":1,"254":1,"257":1,"259":2,"266":1,"271":1,"282":1,"283":1}}],["used",{"2":{"3":1,"7":1,"9":2,"14":1,"16":1,"17":1,"27":2,"29":1,"35":1,"39":1,"41":2,"54":5,"90":1,"97":1,"100":1,"104":1,"105":1,"119":1,"127":1,"131":1,"142":2,"155":1,"171":1,"191":2,"201":1,"229":1,"245":1,"258":1,"279":1,"283":1,"287":1}}],["2๏ธ",{"0":{"112":1}}],["24ms",{"2":{"161":1}}],["24",{"2":{"54":3,"96":2,"142":1,"268":1}}],["24023uosmo",{"2":{"54":1}}],["296353z",{"2":{"54":1}}],["293348z",{"2":{"54":1}}],["231649",{"2":{"97":2}}],["23",{"2":{"54":1}}],["2225",{"2":{"210":1}}],["22",{"2":{"54":13,"147":1,"175":1}}],["2006",{"2":{"282":1,"283":2}}],["200000",{"2":{"242":1,"287":1}}],["2061",{"2":{"254":1}}],["2024",{"2":{"54":12,"142":2,"264":6}}],["2023",{"2":{"12":1,"14":1,"176":2}}],["20s",{"2":{"52":2,"83":2}}],["20",{"2":{"52":1,"82":1,"83":1,"96":1,"170":1,"254":2}}],["259b1278264180a2aefc2085f1b55753849c4815",{"2":{"51":1}}],["26650",{"2":{"247":2,"259":3}}],["26656",{"2":{"82":2,"241":2}}],["26659",{"2":{"45":2,"247":2,"259":2}}],["26657",{"2":{"45":2,"82":1,"83":1,"241":1,"247":2}}],["26658",{"2":{"39":1,"45":2,"247":2,"259":2}}],["2x",{"2":{"41":1}}],["21pm",{"2":{"82":24,"241":24}}],["21",{"2":{"24":1,"44":1,"51":1,"246":1}}],["2",{"0":{"75":1,"103":1,"192":1,"220":1},"1":{"193":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"200":1,"201":1,"202":1,"203":1,"204":1,"205":1,"206":1,"221":1,"222":1,"223":1,"224":1,"225":1,"226":1,"227":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1,"234":1},"2":{"7":1,"24":1,"29":1,"34":1,"41":1,"44":1,"45":1,"51":3,"83":5,"84":1,"97":9,"142":2,"161":1,"176":1,"179":1,"193":1,"213":1,"217":1,"221":1,"242":1,"277":1,"284":1}}],["1ether",{"2":{"257":1}}],["11",{"2":{"142":1,"176":1,"194":1}}],["11544",{"2":{"97":1}}],["118",{"2":{"52":2,"83":2}}],["1785",{"2":{"178":1}}],["1777655",{"2":{"170":1}}],["17",{"2":{"161":4,"178":1}}],["172",{"2":{"82":1,"241":1}}],["171590",{"2":{"54":1}}],["171",{"2":{"39":1}}],["19",{"2":{"54":1,"63":3,"64":3,"67":1,"149":1}}],["14",{"2":{"54":1}}],["18332",{"2":{"159":1}}],["18177uosmo",{"2":{"54":1}}],["18",{"2":{"54":1,"161":1,"176":1,"254":1}}],["1594",{"2":{"245":1}}],["15s",{"2":{"142":1}}],["15utia",{"2":{"83":1}}],["150",{"2":{"83":1}}],["15",{"2":{"54":1,"74":1}}],["15t09",{"2":{"54":13}}],["167533",{"2":{"191":1}}],["16",{"2":{"149":6}}],["160",{"2":{"147":1}}],["162",{"2":{"82":1,"241":1}}],["163",{"2":{"82":1,"241":1}}],["1632",{"2":{"42":1}}],["165662",{"2":{"54":1}}],["1uosmo",{"2":{"52":1}}],["1utia",{"2":{"41":1}}],["13285",{"2":{"161":1}}],["1317",{"2":{"142":1}}],["13",{"2":{"45":2,"96":1,"142":1,"161":2,"162":1,"176":1,"178":1}}],["12345",{"2":{"287":1}}],["123809",{"2":{"191":1}}],["12350",{"2":{"161":1}}],["124972",{"2":{"54":1}}],["126689",{"2":{"54":1}}],["12",{"2":{"54":1,"82":23,"161":2,"186":2,"241":23,"247":1,"259":1}}],["127",{"2":{"39":2,"62":2,"67":2,"69":2,"76":1,"82":1,"159":1,"163":1,"164":3,"187":2,"189":2,"190":1,"191":6,"241":1}}],["12d3koowsicdpmmtlf9fjbsshzc9uvp1cbnqkppbyvbgxhvbhauy",{"2":{"82":2,"241":2}}],["12d3koowcmfjlkqjzuarwpnudjsezefilyzculxe1deky6zpxzpk",{"2":{"39":3}}],["12d",{"2":{"39":1}}],["101",{"2":{"96":1,"154":2}}],["10+",{"2":{"88":1}}],["109",{"2":{"82":1,"241":1}}],["10s",{"2":{"52":1,"83":1,"142":1}}],["10",{"2":{"34":1,"39":1,"54":1,"147":1,"161":3,"162":1,"170":3,"176":1,"195":3,"217":3,"223":3,"259":2}}],["100uwasm",{"2":{"190":1,"191":1}}],["1000000urosm",{"2":{"142":1}}],["1000000utia",{"2":{"83":1}}],["10000000utia",{"2":{"83":1}}],["10000000stake",{"2":{"83":2}}],["10000000000000000000042069",{"2":{"243":1}}],["100000000000000",{"2":{"56":1}}],["100000000999876914",{"2":{"56":1}}],["1000000stake",{"2":{"56":1}}],["1000000",{"2":{"52":2,"83":1}}],["100000",{"2":{"52":2}}],["100",{"2":{"19":1,"190":1,"268":1,"282":1,"283":1}}],["1ms",{"2":{"19":1}}],["1stake",{"2":{"52":1,"84":1}}],["1s",{"2":{"19":3}}],["1",{"0":{"73":1,"102":1,"111":1},"1":{"74":1},"2":{"7":2,"14":1,"18":2,"21":1,"27":1,"30":2,"35":1,"39":2,"41":3,"44":1,"45":1,"47":1,"52":4,"54":7,"55":1,"56":1,"57":2,"62":2,"67":2,"69":2,"76":1,"82":3,"83":5,"96":2,"97":3,"103":2,"104":2,"107":2,"142":5,"149":2,"154":2,"159":2,"161":2,"163":1,"164":3,"176":2,"187":4,"189":5,"190":2,"191":9,"193":1,"202":1,"213":1,"217":1,"221":1,"230":1,"241":3,"246":1,"254":3,"268":1,"283":1,"284":1}}],["yml",{"2":{"272":1}}],["yazzyyaz",{"2":{"287":1}}],["yarnversion",{"2":{"208":1}}],["yarn",{"2":{"208":3,"256":2}}],["yamlglobal",{"2":{"52":1}}],["yaml",{"2":{"52":1,"83":1}}],["y",{"2":{"83":1,"84":1,"148":2,"154":1,"187":2,"190":1,"191":2,"242":1,"287":7}}],["yes",{"2":{"131":8}}],["yellow",{"2":{"83":2,"268":1}}],["yet",{"2":{"18":1,"114":1,"283":1,"287":2}}],["years",{"2":{"7":2,"9":1,"104":1}}],["yourself",{"2":{"271":1}}],["yours",{"2":{"157":1}}],["your",{"0":{"10":1,"20":1,"24":1,"46":1,"61":1,"65":1,"66":1,"68":1,"70":1,"73":1,"75":1,"76":1,"77":1,"81":1,"82":1,"94":1,"97":1,"169":1,"171":1,"180":1,"195":1,"198":1,"201":1,"204":1,"205":1,"211":1,"218":1,"223":1,"226":1,"229":1,"232":1,"233":1,"239":1,"240":1,"241":1,"259":1,"264":1},"1":{"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"47":1,"48":1,"62":1,"63":1,"64":1,"65":1,"66":1,"67":1,"68":1,"69":1,"71":1,"72":1,"73":1,"74":2,"75":1,"76":1,"78":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"181":1,"182":1,"196":1,"197":1,"224":1,"225":1},"2":{"2":5,"10":1,"11":1,"19":3,"21":1,"22":2,"24":3,"25":4,"26":1,"27":2,"29":1,"30":5,"32":1,"36":3,"38":2,"39":5,"40":2,"44":1,"48":2,"49":2,"51":1,"54":1,"56":4,"57":1,"58":1,"59":4,"61":1,"62":7,"63":4,"64":1,"65":3,"66":2,"69":2,"71":3,"74":3,"75":2,"76":2,"80":1,"81":2,"87":1,"92":1,"94":3,"95":2,"96":9,"97":3,"102":2,"111":1,"119":1,"120":1,"143":1,"153":1,"154":2,"155":1,"156":1,"158":1,"159":1,"160":1,"164":1,"166":1,"167":3,"170":4,"171":2,"175":1,"176":4,"177":2,"187":1,"191":2,"194":1,"195":1,"197":2,"198":2,"201":1,"203":1,"204":1,"206":2,"207":1,"208":1,"211":6,"212":1,"215":1,"217":5,"218":1,"219":1,"222":1,"223":1,"225":2,"226":2,"229":1,"231":1,"232":1,"234":2,"238":1,"239":1,"240":1,"242":1,"246":2,"250":1,"252":2,"254":2,"256":2,"257":4,"258":5,"259":4,"260":1,"261":4,"262":1,"263":1,"265":1,"270":3,"271":2,"272":2,"283":1,"286":3,"289":1}}],["you",{"0":{"105":1,"109":1},"1":{"106":1,"107":1,"108":1},"2":{"0":2,"2":1,"4":1,"5":1,"10":1,"11":2,"18":1,"19":4,"21":7,"24":2,"25":3,"27":2,"28":3,"29":2,"30":2,"31":2,"32":1,"35":1,"36":3,"38":1,"39":3,"40":1,"45":4,"48":2,"52":1,"53":1,"54":4,"55":1,"59":4,"60":1,"61":1,"62":4,"63":6,"64":1,"65":3,"66":1,"67":1,"69":1,"72":3,"74":1,"75":4,"76":2,"78":1,"81":4,"82":1,"85":1,"87":1,"89":1,"90":1,"92":3,"94":2,"95":1,"97":1,"98":1,"99":3,"102":1,"109":3,"110":2,"114":2,"115":1,"119":1,"120":2,"122":1,"134":1,"140":1,"142":1,"145":2,"149":1,"151":1,"154":2,"156":1,"158":2,"159":2,"160":1,"161":1,"163":2,"164":1,"166":1,"167":3,"168":1,"170":3,"171":1,"172":1,"173":1,"175":1,"176":5,"178":2,"179":1,"181":2,"182":1,"187":4,"188":2,"191":3,"193":1,"194":1,"195":3,"197":1,"198":4,"200":1,"201":2,"203":1,"206":3,"207":1,"208":4,"210":2,"211":1,"212":2,"213":1,"215":1,"217":4,"218":2,"219":2,"221":1,"222":1,"223":3,"225":1,"226":4,"228":1,"229":2,"231":1,"234":3,"236":1,"237":3,"239":1,"240":1,"241":1,"242":3,"244":2,"246":2,"247":2,"251":1,"252":2,"254":1,"256":4,"257":6,"258":4,"259":4,"260":2,"265":1,"267":3,"268":3,"270":4,"271":4,"272":2,"283":2,"286":2,"287":16,"288":7,"289":1}}],["79e9716c9",{"2":{"176":1}}],["7980",{"2":{"80":1,"82":1,"238":1,"241":1,"286":1}}],["74",{"2":{"176":2}}],["7x",{"2":{"14":1}}],["774628",{"2":{"14":1}}],["7",{"2":{"7":1,"58":1,"142":1,"210":1,"251":9}}],["h",{"2":{"154":1}}],["hub",{"2":{"108":1}}],["hundred",{"2":{"10":1}}],["hours",{"2":{"142":1,"268":1}}],["honest",{"2":{"134":1}}],["hole",{"2":{"109":1}}],["host",{"2":{"94":1,"159":1,"270":1}}],["hopefully",{"2":{"59":1}}],["hood",{"2":{"49":2,"53":2}}],["home",{"2":{"39":1,"259":1}}],["however",{"2":{"82":1,"115":1,"140":2}}],["how",{"0":{"16":1,"19":1,"41":1,"58":1,"59":1,"61":1,"70":1,"77":1,"105":1},"1":{"60":1,"62":1,"63":1,"64":1,"65":1,"66":1,"67":1,"68":1,"69":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"78":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"106":1,"107":1,"108":1},"2":{"7":1,"16":3,"18":1,"29":1,"32":1,"33":1,"42":2,"58":1,"59":6,"61":1,"70":1,"78":1,"79":1,"87":1,"98":1,"107":1,"133":1,"145":5,"167":1,"173":2,"177":1,"181":1,"182":1,"188":1,"195":1,"206":1,"212":1,"223":1,"234":1,"241":1,"252":1,"265":1,"266":1,"271":1,"277":1,"280":1,"287":2}}],["http",{"2":{"39":1,"52":2,"82":2,"83":1,"126":2,"159":1,"164":3,"187":2,"189":2,"190":1,"191":6,"200":1,"201":3,"210":1,"211":1,"228":1,"229":3,"241":2}}],["https",{"2":{"37":1,"45":2,"47":1,"48":1,"51":1,"79":1,"80":1,"81":1,"83":2,"92":1,"142":7,"149":1,"150":1,"159":1,"170":3,"175":1,"176":1,"178":1,"179":1,"181":1,"184":1,"195":1,"208":1,"209":1,"210":1,"217":1,"223":1,"237":1,"238":1,"239":1,"245":1,"248":1,"249":1,"253":1,"260":1,"263":1,"270":1,"286":1,"287":1}}],["hints",{"2":{"268":1}}],["hire",{"2":{"27":1}}],["history",{"0":{"168":1,"196":1,"216":1,"224":1},"2":{"158":1}}],["his",{"2":{"14":1}}],["highlight",{"2":{"268":3}}],["high",{"2":{"8":1,"18":1,"41":1,"42":1,"90":1,"104":2,"115":1,"242":1}}],["happen",{"2":{"272":1}}],["happened",{"2":{"201":1,"229":1}}],["happy",{"2":{"115":1}}],["halt",{"2":{"140":1}}],["handy",{"2":{"181":1,"195":1,"223":1,"287":1}}],["handful",{"2":{"92":1,"163":1}}],["handshake",{"2":{"54":5}}],["handles",{"2":{"203":1,"231":1,"281":1}}],["handled",{"2":{"124":1}}],["handle",{"2":{"27":2,"81":1,"277":1}}],["handlers",{"2":{"200":1,"228":1}}],["handler",{"2":{"9":1}}],["handling",{"0":{"29":1},"2":{"22":1,"276":1}}],["had",{"2":{"16":1}}],["hasn",{"2":{"283":2}}],["hashing",{"2":{"288":1}}],["hash=",{"2":{"251":1,"264":1}}],["hash=ac959f089c21dc617275e0ab35e77dc3839c9597ecfdecdad6c924ec49b1eb07",{"2":{"251":1}}],["hash=0x5207a1ff35540dafe70565d3a95ed07f6c9b1ed9114f93c6c47ee0a1c0d4cc2e",{"2":{"251":1}}],["hash=0x314b131b1d4117445091b25240eaf420cdbdcf9f653eabd1d95aa0dab3cd1359",{"2":{"251":1}}],["hash=1d7e98aec3085b615c7c71659768fa42e774a87ab5981597e99794d240fb3db5",{"2":{"156":1}}],["hash=$",{"2":{"84":1,"187":2}}],["hash=235d3710d61f347dbbbdd6fd63aa7687842d1ef9cb475c712856d7da32f82f09",{"2":{"82":2,"241":2}}],["hash",{"0":{"156":1},"2":{"54":4,"56":1,"57":1,"84":1,"96":1,"142":14,"156":3,"157":2,"187":3,"188":1,"189":2,"242":1,"254":1,"263":1,"282":3,"283":5,"287":2,"288":1}}],["has",{"2":{"14":2,"16":1,"41":1,"42":1,"49":2,"53":1,"56":1,"57":1,"102":2,"107":1,"120":1,"140":1,"160":1,"163":1,"164":1,"191":1,"201":1,"203":1,"229":1,"231":1,"239":1,"245":1,"252":1,"281":1,"282":2,"287":2}}],["having",{"2":{"7":1,"100":1}}],["haven",{"2":{"72":1,"82":1}}],["have",{"2":{"4":1,"7":1,"8":2,"9":1,"12":1,"19":1,"40":1,"72":1,"74":1,"90":1,"94":1,"95":1,"98":1,"99":1,"104":1,"122":1,"143":1,"145":2,"159":1,"160":1,"161":1,"166":1,"168":1,"178":1,"181":2,"188":1,"191":1,"195":1,"197":1,"207":1,"208":2,"217":1,"219":1,"223":1,"225":1,"237":1,"241":1,"246":1,"251":1,"257":1,"267":1,"268":3,"274":1,"282":1,"283":1,"286":1,"287":2}}],["hacks",{"2":{"7":1,"8":1}}],["hardhat",{"2":{"271":1}}],["hardcoded",{"2":{"83":1}}],["hard",{"2":{"7":1,"8":1}}],["hex",{"2":{"159":1,"170":1,"195":1,"217":1,"223":1,"255":1,"259":1,"282":3,"283":4}}],["height=$",{"2":{"170":1,"260":2}}],["height=$da",{"2":{"62":1}}],["height=12",{"2":{"251":3}}],["height=11",{"2":{"251":4}}],["height=1",{"2":{"142":1}}],["height=223",{"2":{"264":2}}],["height=22",{"2":{"82":4,"241":4}}],["height=28126",{"2":{"64":1}}],["height=5",{"2":{"38":1,"39":1}}],["height=your",{"2":{"38":1}}],["height",{"0":{"38":1,"155":1},"2":{"36":3,"38":2,"54":4,"62":4,"67":2,"69":2,"121":2,"125":1,"142":2,"155":1,"156":1,"157":2,"159":1,"170":6,"171":2,"191":1,"242":1,"260":4,"287":2}}],["health",{"2":{"126":1}}],["healthy",{"2":{"12":1}}],["head",{"2":{"75":1,"109":1,"260":1}}],["headerinch",{"2":{"125":1}}],["headers",{"2":{"117":1,"125":2,"126":1,"127":1,"130":1,"134":2,"136":1}}],["header",{"0":{"157":1},"2":{"34":1,"142":1,"157":2,"170":1,"260":3}}],["hear",{"2":{"11":1}}],["helper",{"2":{"272":1,"282":1}}],["helpers",{"0":{"26":1},"2":{"22":1,"26":1,"29":1}}],["helps",{"2":{"2":1,"267":1,"282":1,"283":1}}],["help",{"2":{"0":1,"3":1,"12":1,"21":1,"59":1,"110":1,"270":3,"281":1}}],["here",{"2":{"0":1,"5":1,"18":1,"19":1,"30":1,"48":1,"59":1,"79":1,"88":1,"91":1,"92":1,"115":1,"136":1,"140":1,"143":1,"161":2,"164":1,"170":1,"173":1,"176":2,"177":2,"178":1,"190":1,"237":1,"270":1,"272":1,"278":1,"280":1,"281":1,"282":1,"283":1,"284":1,"287":2,"288":3}}],["vue",{"2":{"272":2,"288":1}}],["v",{"2":{"186":2,"259":1}}],["vv",{"2":{"161":1}}],["v1beta1",{"2":{"142":2,"242":1}}],["v1",{"2":{"54":8,"245":1}}],["v2",{"2":{"51":1,"83":1,"245":1}}],["v21",{"2":{"47":1}}],["v28",{"2":{"44":1,"45":2}}],["v0",{"2":{"34":1,"45":3,"51":1,"58":1,"142":1,"178":3,"179":1,"247":1,"259":1}}],["vesting",{"2":{"276":1}}],["venue",{"2":{"27":1}}],["verified",{"2":{"97":1,"98":1}}],["verifierscript",{"2":{"96":3}}],["verifier",{"0":{"95":1},"1":{"96":1},"2":{"87":1,"93":10,"94":3,"96":12,"97":1}}],["verification",{"2":{"87":1}}],["verifiable",{"2":{"87":2,"98":1}}],["verifyfraudproof",{"2":{"134":1}}],["verifyproof",{"2":{"97":2}}],["verifying",{"2":{"94":1}}],["verify",{"0":{"87":1,"97":1},"2":{"8":2,"42":1,"49":2,"51":1,"53":2,"83":2,"84":1,"87":1,"95":1,"97":1,"104":2,"108":1,"117":2,"125":2,"129":2,"134":1,"263":1,"287":1}}],["very",{"2":{"26":1,"93":1}}],["version",{"2":{"24":2,"42":1,"44":2,"51":3,"54":1,"83":1,"120":1,"142":2,"149":1,"151":2,"161":1,"176":1,"245":2,"246":1,"263":3,"271":1}}],["ve",{"2":{"19":1,"59":1,"69":1,"75":1,"76":1,"83":1,"85":1,"98":1,"162":1,"164":1,"172":1,"193":1,"206":1,"212":1,"213":1,"221":1,"234":1,"244":1,"289":1}}],["visiting",{"2":{"99":1,"258":1}}],["view",{"2":{"97":1,"142":1,"161":2,"171":1,"181":1,"182":1,"195":1,"197":1,"217":2,"223":1,"225":1,"261":1,"287":1}}],["vital",{"2":{"83":2}}],["vitepress",{"2":{"1":1}}],["virtual",{"2":{"10":1,"106":1,"245":1}}],["viable",{"2":{"14":1}}],["via",{"2":{"8":2,"9":2,"39":1,"110":1,"122":1,"124":1,"133":1,"208":1,"288":1}}],["vm",{"2":{"7":2,"96":2,"162":2,"178":1}}],["varying",{"2":{"276":1}}],["var",{"2":{"27":1,"282":6,"283":10}}],["variables",{"2":{"56":1,"62":2,"159":1,"187":3}}],["variable",{"2":{"39":1,"94":1,"97":1,"155":1,"156":1,"163":2,"164":1,"170":1,"176":1,"188":1,"203":1,"231":1}}],["variant",{"2":{"26":1}}],["variety",{"2":{"5":1}}],["valuable",{"2":{"103":1}}],["values",{"2":{"280":1}}],["value",{"2":{"4":1,"26":1,"52":2,"83":2,"92":1,"161":9,"189":2,"257":1,"281":1,"283":1,"287":1}}],["val",{"2":{"82":1,"241":1,"251":1,"264":1}}],["valid",{"2":{"140":2}}],["validating",{"2":{"275":1}}],["validation",{"0":{"138":1}}],["validate",{"2":{"140":1}}],["validators",{"2":{"8":2,"103":2,"142":2}}],["validator",{"2":{"7":1,"8":1,"10":1,"103":1,"104":1,"142":1,"264":3}}],["validity",{"0":{"132":1,"135":1},"1":{"133":1,"134":1,"135":1},"2":{"10":1,"114":1,"129":1,"130":1,"133":1,"135":1,"140":1}}],["e2e",{"2":{"260":1}}],["eyjbbgxvdyi6wyjwdwjsawmilcjyzwfkiiwid3jpdguixx0",{"2":{"170":1}}],["eyjhbgcioijiuzi1niisinr5cci6ikpxvcj9",{"2":{"170":1}}],["eye",{"2":{"50":1}}],["emit",{"2":{"161":3}}],["empty",{"2":{"25":2,"52":1,"58":1,"201":1,"202":1,"203":1,"229":1,"230":1,"231":1,"282":2,"284":1}}],["empower",{"2":{"8":1,"100":1}}],["efficient",{"2":{"145":1}}],["effect",{"2":{"103":1}}],["effectivegasprice",{"2":{"97":1}}],["effectively",{"2":{"59":1}}],["e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",{"2":{"142":4}}],["etc",{"2":{"117":1}}],["eth",{"2":{"96":1,"164":1,"254":1,"257":1}}],["ethermintd",{"2":{"164":1}}],["ethermint",{"0":{"159":1,"164":1},"1":{"160":1,"161":1,"162":1,"163":1,"164":1},"2":{"17":1,"159":5,"160":3,"164":4}}],["ethereum",{"2":{"7":2,"8":1,"14":1,"245":1,"257":1}}],["escrow",{"2":{"282":1}}],["estimate",{"2":{"191":1}}],["establish",{"2":{"83":1,"170":1}}],["essentially",{"2":{"265":1}}],["essential",{"2":{"116":1,"121":1,"148":2}}],["e",{"2":{"114":1,"131":1,"142":1,"170":2,"259":2}}],["either",{"2":{"83":2,"162":1,"259":1}}],["educational",{"2":{"80":1,"238":1}}],["editor",{"2":{"52":1,"203":1,"231":1}}],["edit",{"2":{"45":1,"178":1,"274":1}}],["errinvalidrequest",{"2":{"282":3,"283":4}}],["err",{"2":{"64":3,"178":2,"282":3,"283":6}}],["errtxinmempoolcache",{"2":{"63":2}}],["error=",{"2":{"64":3}}],["errors",{"0":{"64":1},"2":{"64":1,"81":1,"187":1,"282":5,"283":6,"287":2}}],["error",{"2":{"63":6,"67":1,"191":3,"203":5,"231":5,"282":1,"283":1,"284":1,"287":3}}],["eric",{"2":{"14":1}}],["ecb9851af",{"2":{"176":1}}],["economic",{"2":{"104":1}}],["ecosystem",{"2":{"7":1,"14":1,"173":1}}],["echo",{"2":{"62":4,"83":1,"149":2,"154":2,"170":2,"187":2,"189":1,"191":1}}],["else",{"2":{"21":1,"282":1,"283":2}}],["eliminates",{"2":{"104":1}}],["eliminate",{"2":{"10":1}}],["equivalent",{"2":{"203":1,"231":1}}],["equality",{"2":{"161":1}}],["eq",{"2":{"21":1,"27":1}}],["evidence",{"2":{"142":3}}],["evm",{"0":{"17":1,"89":1,"245":1,"250":1,"258":1,"261":1},"1":{"246":1,"247":1,"248":1,"249":1,"250":1,"251":1,"252":1,"253":1,"254":1,"255":1,"256":1,"257":1,"258":1,"259":2,"260":2,"261":2},"2":{"12":1,"13":1,"17":2,"88":1,"89":2,"95":1,"96":3,"97":1,"110":1,"145":1,"159":1,"245":4,"246":1,"247":1,"251":3,"253":1,"254":2,"271":1}}],["ever",{"2":{"10":1,"14":1}}],["everyone",{"2":{"282":1}}],["everything",{"2":{"271":1}}],["everyday",{"2":{"104":1}}],["everybody",{"2":{"21":1}}],["every",{"2":{"2":1,"76":1,"102":1,"142":1,"154":3,"268":2,"283":1,"288":1}}],["eventual",{"2":{"131":2}}],["eventually",{"2":{"41":1}}],["eventbus",{"2":{"82":1,"241":1}}],["events",{"2":{"76":2,"82":1,"189":1,"191":1,"241":1,"251":1,"287":2}}],["event",{"2":{"54":1,"210":1}}],["even",{"2":{"10":1,"19":1,"104":1,"105":1,"287":1}}],["early",{"2":{"12":1,"13":1,"15":1,"18":1,"83":2}}],["each",{"2":{"7":1,"26":1,"50":2,"53":2,"121":1,"170":1,"200":1,"228":1,"272":1,"275":2,"277":1,"280":1,"281":2,"283":1}}],["easiest",{"2":{"262":1}}],["easier",{"2":{"59":1,"62":1,"104":1}}],["easily",{"2":{"14":1,"99":1,"115":2}}],["ease",{"2":{"7":1}}],["easy",{"2":{"7":1,"18":1,"21":1,"100":1,"104":1,"146":2,"271":1,"275":1}}],["exercise",{"2":{"157":1}}],["exec",{"2":{"39":1,"260":1}}],["executing",{"2":{"76":1,"78":1,"131":1,"236":1}}],["execution",{"0":{"106":1},"2":{"7":1,"8":1,"12":1,"15":2,"17":1,"18":1,"97":1,"102":1,"104":1,"108":1,"109":1,"145":2,"146":2,"264":1}}],["executed",{"2":{"82":1,"104":1,"241":1,"251":1}}],["executefns",{"2":{"26":2,"29":1}}],["execute",{"2":{"25":1,"26":1,"29":1,"79":1,"114":1,"117":1,"134":1,"148":1,"191":3,"264":1}}],["executemsgfns",{"2":{"26":1}}],["executemsg",{"2":{"25":2,"26":3,"29":2}}],["exist",{"2":{"275":1}}],["exists",{"2":{"63":2,"283":1}}],["existing",{"2":{"8":1,"19":2,"41":1,"58":2,"106":1,"107":1,"169":1,"176":1}}],["extended",{"2":{"288":1}}],["extending",{"0":{"288":1}}],["extend",{"2":{"266":1,"268":1,"287":1}}],["extension",{"2":{"52":2,"83":2,"143":1,"191":1,"207":1,"242":2,"287":2}}],["external",{"2":{"8":1,"257":1}}],["extra",{"2":{"52":2,"83":2}}],["exotic",{"2":{"49":2,"53":2}}],["examples",{"0":{"32":1},"2":{"22":1,"32":2,"177":1,"288":1}}],["example",{"0":{"64":1},"2":{"19":2,"21":1,"23":1,"26":1,"28":1,"32":2,"33":1,"58":1,"62":2,"63":2,"76":1,"96":2,"122":1,"142":3,"160":1,"161":1,"170":1,"217":1,"287":1,"288":1}}],["exposing",{"2":{"200":1,"228":1}}],["exposes",{"2":{"100":1,"276":1}}],["export",{"2":{"25":1,"26":1,"81":1,"94":1,"96":2,"149":2,"164":2,"242":2,"254":3}}],["explain",{"2":{"283":1}}],["explaining",{"2":{"98":1}}],["exploring",{"2":{"173":1,"212":1}}],["exploration",{"2":{"78":1}}],["explorer",{"2":{"75":1,"97":1,"142":2,"197":1,"225":1,"261":1}}],["explorers",{"2":{"9":1,"171":1}}],["explore",{"2":{"32":1,"60":1,"70":1,"71":1,"114":1,"145":1,"265":1,"289":1}}],["expecting",{"2":{"245":1}}],["expected",{"2":{"191":1,"193":1,"213":1,"221":1,"284":1}}],["experienced",{"2":{"212":1,"267":1}}],["experience",{"2":{"187":1}}],["experimentation",{"2":{"100":1,"107":1}}],["experiment",{"2":{"19":1,"106":1}}],["expertise",{"2":{"103":1}}],["expensive",{"2":{"8":1,"98":1}}],["expand",{"2":{"12":1}}],["excessively",{"2":{"8":1}}],["exciting",{"2":{"6":1,"109":1}}],["enter",{"2":{"272":1}}],["entries",{"2":{"264":1}}],["entrypoint",{"2":{"240":2,"260":1}}],["entry",{"2":{"103":1,"283":5}}],["enhanced",{"2":{"120":1}}],["enjoy",{"2":{"104":1}}],["encodetostring",{"2":{"282":2,"283":3}}],["encoded",{"2":{"26":1,"255":1}}],["encoding",{"2":{"282":1,"283":1}}],["encourage",{"2":{"272":1}}],["encountered",{"2":{"104":1}}],["encounter",{"2":{"63":1}}],["env`",{"2":{"27":1}}],["env",{"2":{"27":2,"176":1}}],["environments",{"2":{"12":1,"18":1,"97":1,"104":1,"145":1,"146":2}}],["environment",{"0":{"106":1,"160":1,"180":1},"1":{"181":1,"182":1},"2":{"7":1,"21":1,"45":1,"94":1,"96":1,"97":1,"102":1,"145":1,"160":1,"163":2,"176":1,"188":1,"203":1,"211":1,"231":1,"268":1}}],["enum",{"2":{"26":2}}],["endpoint",{"2":{"74":1,"142":1,"163":1,"170":1,"201":1,"229":1}}],["end",{"2":{"21":1,"54":1,"78":1,"98":1,"145":1,"236":1,"251":1,"268":1,"288":1}}],["ensuring",{"2":{"87":1,"288":1}}],["ensures",{"2":{"41":1,"283":1}}],["ensure",{"2":{"2":1,"53":1,"81":1,"166":1,"208":1,"217":1,"260":1,"282":2,"283":1,"287":1}}],["enshrine",{"2":{"9":1}}],["enshrined",{"2":{"7":2,"8":2}}],["enable",{"2":{"83":1,"87":1,"121":1,"134":1}}],["enabled",{"2":{"14":1,"78":1,"120":1,"134":1,"210":1}}],["enables",{"2":{"7":1,"9":1,"104":1,"127":1}}],["enabling",{"2":{"7":1,"12":1,"26":1,"146":1}}],["enforce",{"2":{"7":1}}],["pwd",{"2":{"186":4}}],["pkg",{"2":{"148":1}}],["py",{"2":{"93":1,"94":2}}],["python",{"0":{"90":1},"2":{"88":2,"90":3,"93":1}}],["p",{"2":{"45":4,"83":1,"247":5,"259":3}}],["pseudo",{"2":{"276":1}}],["ps",{"2":{"39":1,"260":1}}],["p2p",{"0":{"39":1,"127":1},"2":{"34":2,"36":1,"38":2,"39":9,"62":1,"65":1,"67":1,"69":1,"82":3,"127":2,"134":2,"136":1,"140":1,"170":2,"241":3,"258":1,"259":2}}],["person",{"2":{"280":1,"283":1}}],["perspective",{"2":{"166":1,"242":1}}],["per",{"2":{"125":2,"268":1,"282":2,"283":1}}],["perfect",{"2":{"103":1}}],["performs",{"2":{"203":1,"231":1}}],["perform",{"2":{"39":1,"163":1,"164":1}}],["periods",{"2":{"41":1}}],["peers",{"2":{"127":1}}],["peer",{"2":{"34":2,"127":1}}],["pessimistic",{"0":{"133":1},"2":{"10":1,"114":1,"133":3}}],["pip",{"2":{"90":1}}],["pipe",{"2":{"27":1}}],["piece",{"2":{"14":1,"281":1}}],["plaintext",{"2":{"288":1}}],["planned",{"2":{"131":3,"135":1}}],["plans",{"2":{"131":1}}],["placed",{"2":{"104":1,"154":2}}],["place",{"2":{"50":1,"140":1,"186":1,"270":1}}],["platform",{"2":{"45":1,"70":1,"108":1,"173":1,"186":1,"247":1}}],["play",{"2":{"18":1}}],["plus",{"2":{"28":1,"30":1,"102":1}}],["plugin",{"2":{"149":1}}],["pluggable",{"2":{"131":1}}],["plugged",{"2":{"121":1}}],["plug",{"2":{"15":1}}],["please",{"2":{"2":1,"4":1,"39":1,"60":1,"91":1,"114":1,"240":1}}],["panic",{"2":{"178":1,"283":1}}],["paid",{"2":{"96":1,"254":1}}],["pagination",{"2":{"56":1,"57":1,"83":1,"189":1,"191":2,"243":2}}],["page",{"2":{"21":1,"99":1,"117":1,"211":1}}],["packets",{"0":{"50":1,"55":1},"1":{"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"57":1}}],["packages",{"2":{"30":2,"148":1}}],["package",{"2":{"16":3,"29":1,"30":2,"90":1,"122":1,"128":1,"272":1}}],["parameter",{"2":{"278":1}}],["parameters",{"2":{"201":2,"202":1,"229":2,"230":1}}],["params",{"2":{"201":2,"229":2}}],["paradigm",{"2":{"150":1,"249":1}}],["paragraph",{"2":{"28":1}}],["particular",{"2":{"276":1}}],["parts",{"2":{"142":3,"217":1}}],["part",{"0":{"192":1,"213":1,"220":1},"1":{"193":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"200":1,"201":1,"202":1,"203":1,"204":1,"205":1,"206":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":1,"221":1,"222":1,"223":1,"224":1,"225":1,"226":1,"227":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1,"234":1},"2":{"35":1,"193":2,"213":3,"221":2,"268":1,"271":1}}],["passes",{"2":{"277":2}}],["passed",{"2":{"161":1,"271":1,"282":1}}],["pass",{"2":{"159":1,"161":3}}],["passing",{"2":{"14":2,"50":1,"278":1}}],["past",{"2":{"8":1,"9":1}}],["paying",{"2":{"103":1}}],["payer",{"2":{"54":4,"242":1,"287":1}}],["payload",{"2":{"14":1}}],["pay",{"2":{"10":1}}],["paves",{"2":{"8":1}}],["path=",{"2":{"264":2}}],["path=$path",{"2":{"81":1,"149":2}}],["paths",{"2":{"50":2,"52":1,"54":1,"83":1}}],["path",{"2":{"7":1,"8":1,"25":2,"27":1,"30":2,"54":6,"81":1,"83":1,"149":1,"150":1,"176":1}}],["power",{"2":{"270":1}}],["powerful",{"2":{"7":1}}],["pops",{"2":{"170":2,"259":1,"260":1}}],["popular",{"2":{"9":1,"266":1}}],["polaris",{"0":{"89":1,"245":1,"250":1,"258":1,"260":1},"1":{"246":1,"247":1,"248":1,"249":1,"250":1,"251":1,"252":1,"253":1,"254":1,"255":1,"256":1,"257":1,"258":1,"259":2,"260":2,"261":2},"2":{"88":1,"89":2,"95":1,"96":3,"245":5,"246":1,"247":1,"248":3,"250":1,"251":1,"252":1,"253":3,"254":1,"258":1,"260":3,"261":2}}],["points",{"2":{"268":1}}],["point",{"2":{"48":1,"260":1}}],["portion",{"2":{"160":1,"217":1,"258":1}}],["portal",{"0":{"254":1},"2":{"95":1,"96":4,"252":2,"253":4,"256":6,"257":1}}],["port=icahost",{"2":{"39":1}}],["port",{"2":{"39":3,"48":3,"54":10,"80":1,"83":2,"142":1,"163":1,"191":1,"238":1,"286":1}}],["pool",{"2":{"14":1}}],["potential",{"2":{"12":1,"103":1}}],["position",{"2":{"268":3}}],["posted",{"2":{"104":1,"134":1}}],["post",{"2":{"14":1,"63":2,"98":1,"117":1,"145":1,"159":1,"206":1,"234":1,"257":1,"258":2}}],["posting",{"0":{"14":1},"2":{"14":1,"63":1,"78":1,"82":1,"104":1,"166":1,"167":1,"171":1,"213":1,"236":1,"241":1,"261":1}}],["posts",{"0":{"16":1},"2":{"3":1,"85":1,"134":1,"172":1,"217":1,"244":1}}],["possibly",{"2":{"167":1}}],["possible",{"2":{"12":1,"13":1,"18":1,"55":1,"124":2,"146":3,"186":1}}],["possibility",{"2":{"107":1,"140":1}}],["possibilities",{"2":{"12":1,"100":1,"145":1,"146":1}}],["put",{"2":{"154":1,"240":1}}],["putting",{"2":{"103":1,"154":1}}],["purpose",{"2":{"272":1}}],["purposes",{"2":{"80":1,"198":1,"226":1,"238":1}}],["purchase",{"2":{"190":2}}],["purchasing",{"2":{"173":1}}],["pure",{"2":{"131":2}}],["pubkey",{"2":{"242":6}}],["pubsub",{"2":{"82":1,"241":1}}],["pub",{"2":{"25":3,"26":4,"27":1,"142":1}}],["publishing",{"2":{"13":1,"14":1,"82":1,"146":1,"241":1,"251":1,"264":1}}],["published",{"2":{"12":1}}],["publicnode",{"2":{"83":1}}],["public",{"2":{"3":1,"14":1,"74":1,"96":2,"161":7,"162":2}}],["pull",{"2":{"2":2,"178":1,"184":1,"283":1}}],["push",{"2":{"2":2,"134":1}}],["prune",{"2":{"251":2}}],["practical",{"2":{"236":1}}],["pragma",{"2":{"96":1,"161":2,"162":1}}],["prhw8rohdq==",{"2":{"142":1}}],["primary",{"2":{"136":1}}],["priv",{"2":{"264":2}}],["privileged",{"2":{"131":1}}],["privatekey",{"2":{"252":1}}],["private",{"2":{"49":2,"96":4,"97":2,"161":1,"163":6,"164":3,"252":1,"254":4,"255":1,"257":3,"264":1}}],["print",{"2":{"93":2}}],["printed",{"2":{"36":1}}],["priority",{"2":{"124":1}}],["prior",{"2":{"78":1,"236":1,"288":1}}],["prices=",{"2":{"82":1,"171":2}}],["prices",{"2":{"52":2,"83":2,"84":1,"171":1,"187":2,"190":1,"191":1}}],["price=0",{"2":{"41":2}}],["price",{"0":{"41":1},"2":{"41":11,"49":2,"53":2,"59":1,"171":1,"190":4}}],["press",{"2":{"154":1}}],["presents",{"2":{"103":1}}],["preserve",{"2":{"10":1}}],["preparing",{"2":{"251":1}}],["prepared",{"2":{"170":1}}],["prepareproposal",{"2":{"124":1}}],["prepare",{"2":{"81":1,"239":1}}],["prepend",{"2":{"94":1}}],["prevents",{"2":{"58":1}}],["previous",{"0":{"168":1,"196":1,"216":1,"224":1},"2":{"41":1,"187":1,"188":1}}],["prefer",{"2":{"52":1}}],["prefix",{"2":{"45":1,"52":2,"83":2,"142":1}}],["pre",{"0":{"43":1,"267":1},"1":{"44":1},"2":{"91":1,"106":1,"127":1}}],["prerequisites",{"0":{"35":1,"72":1,"88":1,"147":1,"208":1,"246":1},"1":{"73":1,"74":1,"75":1,"76":1,"89":1,"90":1}}],["pretty",{"2":{"27":1,"271":1}}],["prelude",{"2":{"25":1,"27":1}}],["premature",{"2":{"8":1}}],["prematurely",{"2":{"7":1,"8":1}}],["prompted",{"2":{"242":2}}],["prompt",{"2":{"211":1}}],["prominent",{"2":{"122":1}}],["proposer",{"2":{"142":1}}],["property",{"2":{"131":1}}],["propagate",{"2":{"117":1}}],["progress",{"0":{"130":1,"134":1},"2":{"131":1,"134":1,"136":1,"142":1}}],["programmatically",{"2":{"121":1}}],["programming",{"2":{"79":1}}],["problem",{"2":{"120":1}}],["problems",{"0":{"101":1},"1":{"102":1,"103":1},"2":{"103":1}}],["prohibitively",{"2":{"98":1}}],["proved",{"2":{"94":1}}],["prove",{"0":{"94":1},"2":{"93":1,"94":2}}],["proving",{"0":{"91":1},"1":{"92":1,"93":1,"94":1},"2":{"94":1}}],["providing",{"2":{"78":1}}],["provided",{"2":{"79":1,"170":1,"173":1,"270":1}}],["provider",{"2":{"54":4}}],["provide",{"2":{"14":1,"107":1,"108":1,"161":1,"170":1,"264":1}}],["provides",{"2":{"7":2,"16":1,"26":1,"109":1,"186":1,"236":1,"245":1,"270":1}}],["proof+public",{"2":{"93":2,"94":1}}],["proof",{"0":{"97":1,"140":1},"2":{"87":2,"93":7,"94":2,"95":1,"97":3,"104":1,"134":2}}],["proofs",{"0":{"134":1,"135":1},"2":{"7":1,"8":1,"42":2,"45":1,"87":1,"94":1,"104":2,"108":1,"109":1,"114":1,"117":2,"120":1,"127":1,"129":2,"130":2,"134":5,"136":1,"140":1,"178":1}}],["proceeding",{"2":{"81":1,"166":1,"267":1,"287":1}}],["processed",{"2":{"140":1}}],["processing",{"0":{"138":1,"139":1},"2":{"116":1}}],["processor",{"2":{"54":1,"275":1}}],["process",{"2":{"7":1,"78":1,"82":2,"87":1,"169":1,"236":1,"241":2,"271":1,"277":1}}],["profile",{"2":{"74":1,"149":2}}],["project",{"2":{"14":1,"16":1,"160":1,"196":1,"216":1,"224":1,"271":1,"272":2,"274":1,"276":1}}],["proud",{"2":{"12":1}}],["producing",{"2":{"39":1}}],["producers",{"2":{"131":1}}],["produce",{"2":{"10":1,"129":1,"131":1}}],["products",{"2":{"103":1,"104":1}}],["production",{"0":{"19":1},"2":{"9":1,"18":1,"42":1,"59":1,"94":1,"125":1,"287":2}}],["product",{"2":{"8":1}}],["protobuf",{"0":{"284":1}}],["protomessage",{"2":{"202":1,"230":1}}],["protoservice",{"2":{"201":1,"229":1}}],["proto",{"2":{"176":1,"200":2,"201":4,"203":1,"228":2,"229":4,"231":1,"272":1,"284":2}}],["protocols",{"2":{"126":1}}],["protocol",{"2":{"7":1,"9":1,"42":1,"50":1,"200":2,"228":2,"272":1}}],["protect",{"2":{"7":1,"8":1}}],["pr",{"2":{"2":1}}],["nice",{"2":{"288":1}}],["nil",{"2":{"178":1,"203":7,"231":7,"282":6,"283":8}}],["npm",{"2":{"148":1,"149":3}}],["ncdu",{"2":{"148":1}}],["n",{"2":{"93":2,"170":4,"242":1,"287":1}}],["num",{"2":{"82":2,"241":2,"251":3,"264":2}}],["number",{"2":{"26":1,"121":1,"142":1,"263":1}}],["null",{"2":{"52":2,"56":1,"83":2,"142":2,"189":1,"191":5,"242":1,"243":2,"287":1}}],["nfts",{"2":{"14":2}}],["nft",{"2":{"14":2}}],["nodeversion",{"2":{"208":1}}],["nodejs",{"2":{"149":3}}],["node",{"0":{"33":1,"40":1,"123":1,"128":1,"129":1,"130":1,"131":1,"167":1,"171":1,"179":1,"194":1,"215":1,"222":1,"258":1,"259":1,"264":1,"286":1},"1":{"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"124":1,"125":1,"126":1,"127":1,"129":1,"130":1,"131":1,"259":1,"260":1,"261":1},"2":{"19":1,"33":2,"34":1,"36":1,"37":2,"39":13,"40":3,"41":2,"42":1,"53":1,"56":2,"57":3,"59":1,"63":3,"64":1,"65":3,"66":1,"76":1,"80":2,"82":4,"100":1,"114":1,"122":2,"125":1,"126":2,"127":1,"128":1,"134":1,"136":1,"140":4,"142":1,"145":1,"149":1,"151":1,"166":1,"167":3,"169":1,"170":2,"171":1,"179":1,"187":2,"189":2,"190":1,"191":6,"194":4,"206":2,"208":1,"215":5,"217":1,"218":1,"219":2,"222":5,"234":2,"238":2,"241":6,"258":3,"259":8,"261":1,"262":1,"264":5,"265":1,"286":3}}],["nodes",{"0":{"133":1},"2":{"8":1,"39":1,"82":1,"104":3,"109":1,"114":1,"117":2,"121":1,"125":5,"127":3,"128":1,"129":1,"130":4,"131":2,"133":1,"134":10,"136":1,"140":4,"148":1,"241":1}}],["none",{"2":{"21":2,"27":2}}],["non",{"2":{"14":1,"242":1,"287":1}}],["nor",{"2":{"10":1}}],["no",{"2":{"10":1,"23":1,"39":1,"45":1,"78":1,"82":1,"120":1,"121":1,"131":4,"166":1,"178":1,"190":1,"236":1,"241":1,"271":2,"280":2,"282":1,"283":1}}],["notably",{"2":{"276":1}}],["notifies",{"2":{"76":1}}],["notice",{"2":{"54":1,"241":1,"271":1}}],["note",{"2":{"21":2,"25":1,"26":1,"39":1,"48":1,"82":1,"83":1,"96":1,"97":1,"120":1,"125":1,"134":1,"164":1,"176":1,"287":2}}],["not",{"2":{"8":2,"12":1,"18":3,"25":3,"56":1,"57":1,"81":1,"87":1,"106":1,"114":1,"134":1,"135":1,"140":1,"159":1,"201":1,"202":1,"229":1,"230":1,"237":1,"240":1,"245":1,"259":1,"267":1,"282":2,"287":2,"288":1}}],["now",{"2":{"7":1,"12":1,"13":1,"14":1,"15":1,"19":1,"27":2,"31":1,"37":1,"39":1,"40":2,"45":1,"55":1,"75":1,"76":1,"80":1,"82":1,"94":1,"97":1,"148":1,"154":1,"157":2,"159":1,"162":2,"163":1,"164":2,"169":1,"170":3,"171":2,"172":1,"176":1,"178":1,"180":1,"187":1,"189":2,"191":2,"197":1,"200":1,"210":1,"212":1,"225":1,"228":1,"238":1,"241":2,"242":3,"251":1,"253":1,"256":2,"257":1,"261":1,"265":1,"268":1,"270":1,"271":1,"272":1,"274":1,"278":1,"281":1,"282":1,"283":1,"286":1,"287":3,"289":1}}],["net",{"2":{"170":1}}],["network=mocha",{"2":{"259":2}}],["networks",{"2":{"21":1,"27":1,"100":1,"127":1,"149":1,"167":1,"289":1}}],["network",{"0":{"80":1,"152":1,"158":1,"238":1},"1":{"153":1,"154":1,"155":1,"156":1,"157":1,"158":1},"2":{"10":1,"17":1,"27":2,"33":1,"34":1,"41":1,"65":2,"74":2,"78":1,"80":2,"81":1,"82":1,"85":1,"87":1,"99":1,"103":5,"104":2,"115":2,"126":1,"127":1,"134":2,"136":1,"140":2,"152":1,"158":1,"162":1,"166":1,"170":2,"171":3,"178":1,"180":1,"181":1,"189":1,"191":1,"194":1,"215":1,"222":1,"236":1,"238":2,"239":1,"241":3,"244":1,"245":2,"258":2,"259":1,"286":1,"287":3}}],["neural",{"2":{"87":1}}],["nextjs",{"2":{"210":1}}],["next",{"0":{"85":1,"172":1,"206":1,"212":1,"219":1,"234":1,"244":1,"289":1},"2":{"38":1,"39":1,"48":1,"54":1,"56":1,"83":1,"88":1,"94":1,"95":1,"96":1,"109":1,"142":1,"154":1,"160":1,"161":2,"163":2,"169":1,"189":1,"191":3,"194":1,"206":1,"209":1,"234":1,"243":2,"254":1,"279":1,"282":1,"283":2,"284":1,"287":2}}],["neck",{"2":{"27":1}}],["necessary",{"2":{"21":1,"148":1}}],["needing",{"2":{"245":1}}],["needs",{"0":{"10":1},"2":{"106":1,"208":1}}],["needed",{"2":{"7":1,"8":1,"10":2,"39":1,"117":1,"120":1,"134":1,"145":1,"170":1}}],["need",{"2":{"7":1,"8":3,"10":1,"16":1,"19":1,"21":1,"24":1,"25":2,"29":2,"35":1,"36":1,"45":2,"48":1,"54":1,"62":2,"63":3,"65":1,"67":1,"72":2,"81":1,"97":1,"104":1,"114":1,"120":1,"121":1,"149":1,"164":1,"167":1,"169":2,"175":1,"176":2,"179":1,"180":1,"196":1,"200":1,"203":1,"208":1,"216":1,"217":1,"224":1,"228":1,"231":1,"246":1,"247":1,"256":2,"257":2,"258":4,"259":1,"271":1,"273":1,"284":2,"287":1}}],["newguess",{"2":{"283":2}}],["newint64coin",{"2":{"282":1,"283":1}}],["newly",{"2":{"127":1,"170":1,"195":1,"217":1,"223":1,"282":2}}],["new",{"0":{"197":1,"225":1},"2":{"2":2,"8":1,"12":1,"13":1,"16":1,"25":2,"27":2,"30":2,"50":2,"54":5,"63":1,"81":1,"96":5,"100":3,"103":3,"104":2,"109":1,"121":1,"122":1,"134":1,"140":1,"145":1,"146":1,"153":1,"154":3,"160":1,"161":1,"162":1,"164":1,"169":2,"184":1,"201":2,"229":2,"268":1,"270":1,"271":3,"283":7}}],["nameservice",{"2":{"173":2,"184":3,"185":1,"186":2,"187":3,"190":1,"191":1}}],["namespaces",{"2":{"170":1,"195":1,"217":1,"223":1,"259":1}}],["namespace=000000506f6c61726973",{"2":{"259":1}}],["namespace=00000000000000000000000000000000000000000008e5f679bf7116cb",{"2":{"170":1}}],["namespace=$",{"2":{"159":1}}],["namespace=$namespace",{"2":{"62":1}}],["namespace",{"2":{"36":1,"38":1,"62":2,"67":1,"69":1,"127":1,"142":1,"159":1,"170":3,"171":3,"195":1,"197":1,"217":3,"223":1,"225":1,"259":1,"261":2}}],["name",{"2":{"48":2,"54":8,"92":1,"153":1,"164":2,"190":2,"191":8,"201":1,"229":1,"242":3}}],["name=ports",{"2":{"39":1}}],["naming",{"2":{"2":1}}],["native",{"2":{"10":1,"56":1,"78":1}}],["navigate",{"2":{"5":1,"92":1,"201":1,"229":1}}],["award",{"2":{"268":1}}],["away",{"2":{"8":1}}],["awdsly+2us2vv+rbyfi60gb4",{"2":{"242":1}}],["aims",{"2":{"207":1}}],["aarch64",{"2":{"176":4,"187":1}}],["auto",{"2":{"187":2,"190":1,"191":1}}],["automatically",{"2":{"87":1}}],["authorized",{"2":{"211":1}}],["authentication",{"2":{"170":1}}],["authenticate",{"2":{"117":1,"130":1}}],["auth",{"2":{"39":6,"62":3,"67":1,"69":1,"142":2,"170":4,"171":1,"258":1,"275":1,"287":1}}],["aggregating",{"2":{"131":1}}],["aggregationloop",{"2":{"125":2}}],["aggregation",{"0":{"58":1},"2":{"59":1}}],["aggregated",{"2":{"171":1}}],["aggregate",{"2":{"117":1}}],["aggregator",{"2":{"58":2,"62":1,"67":1,"69":1,"82":2,"159":1,"171":1,"241":2,"287":1}}],["again",{"0":{"69":1},"2":{"26":1,"81":1,"158":1,"191":1,"204":1,"232":1,"257":1,"283":3}}],["against",{"2":{"7":1,"8":1,"41":1}}],["average",{"2":{"130":1}}],["avoid",{"2":{"41":1,"48":1,"67":1,"108":1,"268":1,"287":1}}],["available",{"2":{"9":1,"140":1,"161":1}}],["availability",{"0":{"15":1,"121":1},"1":{"122":1},"2":{"8":1,"10":2,"12":2,"13":1,"14":1,"15":4,"16":5,"18":3,"39":1,"78":1,"87":1,"99":1,"100":1,"104":4,"109":1,"110":1,"115":2,"117":1,"121":3,"122":1,"125":1,"131":1,"133":1,"140":1,"145":2,"146":5,"166":1,"178":1,"194":1,"215":1,"222":1,"236":1,"245":2,"259":1,"260":1,"286":2,"287":1}}],["afterward",{"2":{"52":1}}],["after",{"0":{"63":1},"1":{"64":1,"65":1,"66":1,"67":1,"68":1,"69":1},"2":{"16":1,"21":1,"26":1,"55":1,"69":1,"76":1,"140":1,"167":1,"176":2,"215":1,"222":1,"243":1,"259":1,"271":1,"286":1,"287":4}}],["atoi",{"2":{"283":1}}],["atomic",{"2":{"131":1}}],["attributes",{"2":{"189":1,"287":1}}],["attract",{"2":{"103":1}}],["attempts",{"2":{"277":1}}],["attempt",{"2":{"125":2}}],["attempt=3",{"2":{"64":1}}],["attempt=2",{"2":{"64":1}}],["attempt=1",{"2":{"64":1}}],["at",{"2":{"14":1,"16":1,"21":2,"24":1,"52":1,"54":1,"75":1,"103":1,"120":1,"134":1,"145":1,"154":1,"160":1,"162":1,"186":1,"189":1,"242":1,"268":1,"288":1}}],["adr",{"2":{"134":1}}],["adoption",{"2":{"103":1}}],["adjustment",{"2":{"52":2,"83":2,"187":2,"190":1,"191":1}}],["adjusted",{"2":{"19":1}}],["admin",{"2":{"39":1,"190":1,"191":1}}],["advertises",{"2":{"127":1}}],["advice",{"2":{"32":1}}],["advise",{"2":{"25":1,"30":2}}],["advanced",{"0":{"113":1},"2":{"21":1}}],["advantages",{"2":{"10":1}}],["addr",{"2":{"48":1,"52":3,"83":3}}],["addresshash",{"2":{"282":1,"283":1}}],["addresses",{"0":{"75":1},"2":{"70":1,"71":1,"75":2}}],["address=0x18df82c7e422a42d47345ed86b0e935e9718ebda",{"2":{"254":1}}],["address=0x5c59c83c099f72fce832208f96a23a1e43737a14",{"2":{"96":1}}],["address=`bitcoin",{"2":{"154":1}}],["address=127",{"2":{"82":2,"241":2}}],["address=",{"2":{"39":3,"82":2,"163":1,"164":1,"241":2}}],["address",{"0":{"39":1},"2":{"39":3,"45":1,"49":2,"56":2,"57":1,"62":1,"65":1,"67":1,"69":1,"75":1,"76":1,"82":1,"83":4,"96":4,"97":2,"142":4,"154":1,"163":5,"164":5,"167":1,"191":5,"211":1,"241":2,"242":5,"254":2,"255":2,"256":2,"257":1,"258":1,"268":1,"280":3,"283":2,"287":1}}],["added",{"2":{"28":1,"75":1,"122":1,"201":1,"229":1,"245":1,"274":1}}],["additionally",{"2":{"104":1,"108":1}}],["additional",{"2":{"26":1,"140":1}}],["additions",{"2":{"21":1,"93":1}}],["adding",{"0":{"24":1},"2":{"2":1,"16":1,"22":1,"75":1,"140":1,"240":1,"270":1}}],["add",{"0":{"75":1,"143":1,"199":1,"227":1},"1":{"200":1,"201":1,"202":1,"203":1,"204":1,"205":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1},"2":{"16":2,"19":1,"24":3,"25":1,"26":1,"29":1,"30":4,"53":1,"58":1,"62":1,"71":1,"74":1,"81":1,"140":1,"143":2,"149":1,"154":1,"161":1,"176":1,"212":1,"257":1,"275":1,"283":2,"284":1}}],["apt",{"2":{"81":1,"148":3}}],["apart",{"2":{"50":1}}],["apps",{"2":{"270":1}}],["append",{"2":{"93":2}}],["appear",{"2":{"76":1}}],["approve",{"2":{"211":1}}],["approach",{"2":{"87":1,"236":1}}],["approximately",{"2":{"14":1}}],["app",{"0":{"207":1,"210":1,"266":1},"1":{"208":1,"209":1,"210":1,"211":1,"212":1,"267":1,"268":1,"269":1,"270":1,"271":1,"272":1,"273":1,"274":1,"275":1,"276":1,"277":1,"278":1,"279":1,"280":1,"281":1,"282":1,"283":1,"284":1,"285":1,"286":1,"287":1,"288":1,"289":1},"2":{"82":2,"142":1,"160":3,"178":2,"208":2,"209":1,"210":1,"212":1,"239":1,"241":2,"251":2,"256":1,"264":1,"266":1,"272":3,"273":1,"274":1,"289":1}}],["apple",{"2":{"176":4}}],["apply",{"2":{"23":1,"131":1}}],["applications",{"2":{"18":1,"78":1,"104":1,"106":1,"110":1,"145":1,"178":1,"236":1,"265":1}}],["application",{"0":{"118":1},"1":{"119":1,"120":1,"121":1,"122":1},"2":{"7":3,"9":2,"78":1,"100":1,"102":2,"119":2,"120":1,"124":2,"126":1,"207":1,"211":1,"212":1,"236":1,"272":1,"275":1}}],["apis",{"2":{"126":1}}],["api",{"2":{"10":1,"52":1,"83":1,"88":1,"94":3,"122":1,"142":3,"200":1,"201":3,"228":1,"229":3}}],["achieve",{"2":{"103":1,"268":1}}],["action",{"2":{"287":1}}],["actions",{"2":{"203":1,"231":1}}],["active",{"2":{"127":1}}],["activity",{"2":{"70":1}}],["act",{"2":{"108":1}}],["actor",{"2":{"27":1}}],["accaddress",{"2":{"282":1,"283":1,"284":2}}],["accaddressfrombech32",{"2":{"282":1,"283":1}}],["accessed",{"2":{"121":1}}],["accelerated",{"2":{"94":1}}],["accepts",{"2":{"201":2,"203":1,"229":2,"231":1}}],["accepted",{"2":{"41":2}}],["accept",{"2":{"8":1,"242":1}}],["accounts",{"2":{"83":2,"142":2,"163":1,"276":3}}],["account",{"0":{"53":1,"65":1},"2":{"52":2,"63":1,"65":1,"74":2,"83":3,"142":3,"171":1,"197":1,"217":2,"225":1,"242":1,"257":2,"258":1,"287":1}}],["accordingly",{"2":{"39":1,"140":1}}],["across",{"2":{"9":1,"97":2}}],["arabica",{"2":{"110":1,"167":1,"193":1,"194":3,"195":4,"197":2,"198":1,"204":1,"215":1,"258":1}}],["arm64",{"2":{"51":1,"186":2}}],["artifacts",{"2":{"25":1,"186":1,"187":2}}],["articles",{"2":{"5":1}}],["architecture",{"2":{"87":1,"134":1,"267":1,"268":1,"272":1}}],["arch",{"2":{"25":2}}],["argument",{"2":{"19":1}}],["args",{"2":{"19":1,"62":1}}],["around",{"2":{"14":1,"18":2,"63":2,"288":1}}],["arbitrary",{"2":{"12":1,"13":1,"14":3,"121":1,"146":2}}],["are",{"2":{"12":1,"13":1,"14":1,"16":1,"29":2,"39":2,"50":2,"53":1,"59":1,"63":2,"96":1,"103":1,"104":4,"108":1,"124":1,"125":3,"126":1,"128":1,"130":2,"131":1,"133":1,"134":2,"135":1,"136":1,"140":2,"146":1,"148":2,"158":1,"161":1,"176":1,"177":1,"178":2,"186":1,"190":1,"193":1,"200":1,"213":1,"221":1,"228":1,"245":2,"257":1,"267":1,"268":3,"271":2,"277":3,"278":1,"280":1,"282":2,"283":3,"287":2,"288":2}}],["array",{"2":{"9":1}}],["amt",{"2":{"284":1}}],["amazing",{"2":{"270":1}}],["amd",{"2":{"147":1,"149":1,"186":1,"187":1}}],["amd64",{"2":{"45":1,"149":3,"247":1}}],["among",{"2":{"140":1}}],["amount",{"2":{"8":1,"52":4,"56":3,"57":1,"83":6,"190":2,"191":1,"242":3,"243":2,"283":1,"287":1}}],["am",{"2":{"96":1,"154":1,"254":1}}],["amp",{"0":{"4":1,"69":1},"2":{"2":2,"21":1,"25":3,"27":2,"65":2,"80":2,"81":2,"148":2,"168":2,"169":2,"187":4,"196":2,"203":2,"216":2,"224":2,"231":2,"239":2,"248":2,"250":2,"253":2,"256":2,"260":2,"282":1,"283":2}}],["abcdefg",{"2":{"287":1}}],["abci",{"0":{"119":1},"1":{"120":1},"2":{"9":3,"63":1,"82":1,"100":2,"106":1,"109":1,"119":3,"120":2,"126":1,"134":1,"241":1}}],["abci++",{"2":{"7":2,"9":1,"10":1,"124":1}}],["abi",{"2":{"256":1}}],["ability",{"2":{"7":2,"104":1,"115":1}}],["able",{"2":{"21":1,"103":1,"176":1}}],["abstraction",{"2":{"200":1,"228":1,"281":1}}],["abstract",{"2":{"9":1}}],["about",{"0":{"34":1,"99":1},"1":{"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"108":1,"109":1},"2":{"3":1,"25":1,"26":1,"42":1,"100":1,"109":1,"117":1,"126":2,"130":1,"140":1,"170":1,"195":1,"203":1,"217":1,"223":1,"231":1,"242":1,"259":1,"270":1,"272":1}}],["above",{"2":{"2":1,"19":1,"29":1,"31":1,"38":1,"68":1,"103":1,"105":1,"256":1,"257":1,"283":1,"287":4}}],["alnsenbuv5go86fmwe11qth1+r76g2e1lv8c1fwhlpqp",{"2":{"242":1}}],["al92dloelpuaiousiajapkiveiwlhledz",{"2":{"242":1}}],["alerting",{"2":{"76":1}}],["alerts",{"2":{"76":1}}],["alert",{"0":{"76":1},"2":{"71":1,"76":2,"109":1}}],["algorithm",{"2":{"52":2,"83":2}}],["alphabet",{"2":{"282":2,"283":3}}],["alphabets",{"2":{"282":2}}],["alpha",{"2":{"21":1,"60":1,"109":1,"114":1}}],["already",{"2":{"19":1,"63":3,"82":1,"168":1,"237":1,"282":2,"287":2}}],["alongside",{"2":{"40":1,"206":1,"219":1,"234":1}}],["along",{"2":{"9":1,"13":1,"163":1,"245":1}}],["align",{"2":{"8":1}}],["alignment",{"2":{"8":1}}],["also",{"2":{"8":1,"12":1,"39":2,"41":1,"48":1,"50":1,"69":1,"87":1,"103":1,"104":1,"122":1,"124":1,"125":1,"145":1,"170":1,"200":1,"203":1,"208":1,"228":1,"231":1,"258":1,"277":1,"280":1,"282":1}}],["alley",{"2":{"49":2,"53":2}}],["allow",{"2":{"21":1,"93":1,"99":1,"115":2,"200":1,"228":1,"277":1,"284":1}}],["allowing",{"2":{"8":1,"104":1,"106":1}}],["allows",{"2":{"7":1,"8":2,"9":1,"10":2,"12":1,"58":1,"114":1,"121":1,"146":2,"178":1,"191":1,"280":1,"281":1,"282":1,"283":1}}],["all",{"2":{"7":2,"23":1,"27":1,"28":1,"29":1,"30":1,"54":1,"55":1,"81":1,"103":1,"125":2,"129":2,"133":1,"161":1,"171":1,"239":1,"242":1,"267":1,"284":1,"287":1}}],["alter",{"2":{"276":1}}],["alternatively",{"2":{"19":1,"24":1,"54":1}}],["alternative",{"2":{"9":1}}],["although",{"2":{"268":1}}],["alt",{"2":{"7":1}}],["always",{"2":{"2":1,"41":1,"83":1}}],["answer",{"2":{"283":1}}],["anvil",{"2":{"163":6}}],["announce",{"2":{"12":1}}],["another",{"2":{"8":1,"18":1,"107":1,"120":1,"140":1,"242":1,"287":2}}],["an",{"0":{"25":1,"30":1},"2":{"4":1,"7":3,"8":6,"9":1,"12":1,"14":1,"15":3,"18":1,"19":1,"22":2,"25":1,"28":1,"42":3,"45":1,"50":1,"52":1,"56":1,"57":1,"58":1,"62":1,"63":1,"72":1,"74":1,"76":2,"78":1,"81":2,"82":2,"83":1,"88":1,"94":1,"95":1,"100":2,"104":1,"107":1,"109":1,"116":1,"117":1,"120":1,"121":1,"140":1,"147":1,"160":1,"163":2,"170":3,"188":1,"191":1,"197":1,"200":2,"201":3,"203":1,"225":1,"228":2,"229":3,"231":1,"242":1,"243":1,"252":1,"255":1,"257":2,"261":1,"268":1,"270":2,"272":1,"281":1,"283":3,"287":4}}],["anyone",{"2":{"99":1,"115":2}}],["anywhere",{"0":{"87":1}}],["anyhow",{"2":{"27":2}}],["any",{"0":{"106":1},"2":{"4":1,"7":3,"9":1,"10":3,"16":1,"23":1,"27":1,"52":1,"97":1,"100":1,"106":1,"119":1,"121":1,"131":1,"140":1,"142":1,"207":1,"211":1,"282":1,"287":2}}],["and",{"0":{"29":1,"32":1,"33":1,"50":1,"75":1,"91":1,"94":1,"102":1,"103":1,"110":1,"138":1,"140":1,"161":1,"202":1,"230":1,"245":1,"256":1,"269":1,"287":1},"1":{"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"57":1,"92":1,"93":1,"94":1,"111":1,"112":1,"113":1,"114":1,"246":1,"247":1,"248":1,"249":1,"250":1,"251":1,"252":1,"253":1,"254":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"261":1,"270":1,"271":1,"272":1},"2":{"0":1,"1":1,"2":4,"3":2,"7":6,"8":10,"9":5,"10":3,"12":1,"13":1,"14":2,"15":4,"16":7,"18":6,"19":3,"21":5,"22":2,"26":5,"27":1,"29":3,"32":1,"33":1,"36":2,"38":2,"39":1,"42":3,"45":1,"48":3,"50":1,"54":3,"55":1,"56":2,"57":1,"58":1,"59":4,"62":1,"63":8,"69":1,"70":2,"71":3,"73":2,"74":1,"75":1,"76":1,"78":1,"79":1,"80":1,"81":2,"82":1,"85":1,"87":3,"89":2,"90":1,"91":2,"93":4,"94":6,"95":2,"96":3,"97":2,"100":4,"103":5,"104":5,"105":1,"106":1,"107":3,"108":2,"109":3,"110":1,"114":1,"115":1,"116":2,"117":5,"119":1,"120":1,"121":1,"124":2,"125":3,"126":4,"127":2,"129":1,"130":1,"131":2,"134":8,"136":1,"140":8,"145":6,"146":4,"148":2,"149":1,"153":1,"154":2,"157":1,"159":1,"160":1,"161":3,"163":2,"164":1,"166":1,"167":1,"168":1,"169":1,"170":2,"171":1,"172":1,"175":1,"176":1,"178":2,"180":1,"184":1,"187":2,"188":1,"190":1,"191":3,"193":1,"194":3,"198":2,"200":3,"201":2,"203":4,"206":2,"208":1,"210":2,"211":3,"212":1,"213":1,"215":3,"217":1,"218":1,"219":1,"221":1,"222":3,"226":2,"228":3,"229":2,"231":4,"234":2,"236":1,"237":1,"238":1,"240":1,"241":1,"242":2,"245":3,"248":1,"251":1,"253":1,"254":1,"256":1,"257":1,"258":5,"259":4,"263":1,"264":2,"265":2,"266":2,"270":2,"271":1,"272":4,"275":2,"276":1,"277":4,"280":1,"281":2,"282":1,"283":6,"284":1,"286":4,"287":7,"288":1,"289":1}}],["ask",{"2":{"287":2}}],["asking",{"2":{"18":1}}],["async",{"2":{"287":5}}],["asynchronously",{"2":{"287":1}}],["asynchronous",{"2":{"8":1}}],["aspect",{"2":{"207":1}}],["asdf",{"2":{"149":7}}],["asset",{"2":{"276":1}}],["assertion",{"2":{"161":2}}],["asserteq",{"2":{"161":4}}],["assert",{"2":{"21":1,"27":1,"161":1}}],["associated",{"2":{"263":1}}],["assumes",{"2":{"89":1,"95":1,"207":1}}],["assume",{"2":{"82":1}}],["assumptions",{"2":{"42":1,"104":1}}],["as",{"0":{"15":1,"77":1},"1":{"78":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1},"2":{"3":1,"7":3,"8":1,"9":2,"10":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":2,"21":1,"24":1,"26":3,"28":1,"29":2,"33":1,"39":1,"56":1,"59":1,"62":1,"63":1,"76":1,"78":3,"84":1,"85":1,"88":2,"89":1,"93":4,"94":1,"99":2,"100":4,"102":1,"103":1,"104":3,"105":1,"107":1,"108":2,"109":2,"115":4,"117":1,"119":1,"120":1,"121":2,"125":2,"126":2,"127":1,"133":1,"134":2,"140":3,"145":1,"146":1,"156":1,"163":4,"164":1,"166":1,"170":1,"186":2,"187":1,"207":2,"212":1,"217":1,"242":1,"245":1,"252":1,"266":2,"271":1,"275":1,"276":1,"277":1,"278":2,"281":1,"282":1,"283":2,"287":4}}],["a",{"0":{"15":1,"28":1,"45":1,"80":1,"91":1,"108":1,"110":1,"152":1,"153":1,"167":1,"171":1,"181":1,"193":1,"194":1,"199":1,"215":1,"221":1,"222":1,"227":1,"238":1,"247":1,"258":1,"276":1,"278":1,"286":1},"1":{"29":1,"30":1,"31":1,"92":1,"93":1,"94":1,"111":1,"112":1,"113":1,"114":1,"153":1,"154":1,"155":1,"156":1,"157":1,"158":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"200":2,"201":2,"202":2,"203":2,"204":2,"205":2,"222":1,"223":1,"224":1,"225":1,"226":1,"227":1,"228":2,"229":2,"230":2,"231":2,"232":2,"233":2,"259":1,"260":1,"261":1},"2":{"2":4,"5":2,"7":11,"8":6,"9":2,"10":6,"11":1,"12":3,"13":3,"14":9,"15":2,"16":7,"17":3,"18":3,"19":1,"21":2,"22":1,"23":1,"25":2,"26":2,"30":2,"33":2,"34":2,"36":1,"39":2,"40":1,"41":3,"42":2,"45":2,"48":1,"50":4,"54":4,"59":1,"60":1,"62":1,"63":4,"67":1,"74":1,"76":2,"78":5,"80":2,"81":4,"83":10,"84":2,"85":2,"87":5,"88":1,"89":1,"90":1,"91":2,"92":1,"93":3,"94":2,"96":3,"97":2,"98":1,"99":2,"100":6,"102":2,"103":10,"104":8,"106":1,"107":4,"108":3,"109":4,"114":3,"115":4,"117":1,"119":2,"120":2,"121":1,"122":4,"124":2,"125":6,"127":1,"131":4,"133":3,"134":6,"136":2,"140":9,"145":6,"146":2,"151":1,"153":2,"154":5,"155":1,"156":1,"160":1,"161":3,"162":1,"163":2,"166":3,"167":2,"169":2,"170":5,"172":1,"173":1,"176":1,"177":2,"178":3,"179":1,"180":1,"181":1,"184":1,"186":1,"187":2,"188":1,"189":1,"190":1,"191":2,"193":1,"194":1,"195":3,"198":1,"200":2,"201":4,"203":4,"205":1,"206":1,"207":2,"209":1,"212":1,"213":2,"215":1,"217":2,"218":1,"219":2,"221":1,"222":1,"223":3,"226":1,"228":2,"229":4,"231":4,"233":1,"234":1,"236":4,"238":2,"239":2,"241":1,"242":2,"244":2,"245":5,"247":2,"251":2,"252":1,"253":2,"254":2,"257":2,"258":2,"259":2,"260":1,"262":1,"263":1,"264":1,"265":2,"266":1,"268":10,"270":3,"271":4,"272":4,"275":2,"277":3,"278":3,"280":2,"281":3,"282":8,"283":11,"284":2,"286":1,"287":13,"288":6,"289":1}}],["ir",{"2":{"242":1}}],["illustrates",{"2":{"70":1}}],["io",{"2":{"45":1,"247":1,"259":1,"282":1,"283":1}}],["i",{"2":{"45":1,"93":2,"96":1,"114":1,"154":1,"247":1,"254":1,"264":5}}],["igniteversiontag",{"2":{"270":1}}],["ignite",{"0":{"269":1,"270":1},"1":{"270":1,"271":1,"272":1},"2":{"44":1,"45":3,"266":1,"267":1,"270":8,"271":5,"277":1,"286":1,"287":1,"288":1}}],["ip4",{"2":{"39":2,"82":2,"241":2}}],["ip",{"2":{"39":1,"48":1,"259":1}}],["ics",{"2":{"82":1}}],["ics20",{"2":{"30":1,"54":1,"83":2}}],["icahost",{"2":{"39":1}}],["i32",{"2":{"26":2}}],["ideas",{"2":{"266":1}}],["ideal",{"2":{"108":1}}],["identifier",{"2":{"96":1,"161":2,"162":1}}],["id=$",{"2":{"189":1}}],["id=channel",{"2":{"56":1}}],["id=",{"2":{"38":1,"39":2}}],["id",{"2":{"25":3,"36":1,"38":1,"39":1,"52":2,"54":35,"56":4,"57":2,"76":1,"83":8,"84":1,"93":2,"127":1,"142":7,"159":1,"187":2,"189":5,"190":2,"191":5,"242":1,"287":6}}],["ibc",{"0":{"42":1,"50":1,"54":1,"77":1,"83":1},"1":{"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":2,"52":2,"53":2,"54":2,"55":2,"56":2,"57":2,"78":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1},"2":{"7":1,"9":1,"39":1,"42":5,"45":2,"48":2,"50":1,"54":9,"55":1,"56":5,"57":2,"59":2,"78":1,"82":3,"83":7,"84":1,"191":1}}],["if",{"2":{"4":1,"11":1,"19":1,"21":2,"27":1,"28":1,"39":2,"41":1,"56":1,"57":1,"60":1,"63":1,"64":1,"65":1,"72":1,"81":1,"82":1,"90":1,"97":1,"99":1,"109":1,"114":1,"140":2,"170":1,"176":1,"178":1,"185":1,"187":1,"191":1,"198":1,"203":1,"206":1,"208":1,"211":1,"219":1,"226":1,"231":1,"234":1,"237":2,"244":1,"252":1,"256":1,"257":1,"270":1,"271":1,"282":8,"283":14,"287":1}}],["indicators",{"2":{"268":1}}],["indicating",{"2":{"210":1}}],["index",{"2":{"191":1,"282":4,"283":4,"287":1}}],["indexed",{"2":{"82":1,"241":1,"251":1}}],["indexerservice",{"2":{"82":1,"241":1}}],["indexers",{"2":{"9":1}}],["indexing",{"2":{"71":1,"73":1}}],["independently",{"2":{"8":1}}],["independent",{"2":{"7":1}}],["inner",{"2":{"116":1}}],["innovative",{"2":{"106":1}}],["innovation",{"2":{"100":1}}],["innovate",{"2":{"100":1}}],["invalidargument",{"2":{"203":2,"231":2}}],["invalid",{"2":{"140":4,"203":2,"231":2,"287":2}}],["involved",{"2":{"76":1}}],["involves",{"2":{"50":1}}],["invite",{"2":{"18":1}}],["initiate",{"2":{"167":1,"170":1}}],["initialization",{"2":{"264":1}}],["initialized",{"2":{"240":1}}],["initialize",{"0":{"160":1},"2":{"159":1,"181":3,"195":2,"197":1,"223":2,"225":1,"272":1,"283":1,"287":3}}],["initializing",{"0":{"181":1},"2":{"53":1,"182":1}}],["initial",{"2":{"27":1,"42":1,"277":2,"283":1}}],["initially",{"2":{"15":1}}],["init",{"2":{"27":1,"36":1,"37":1,"39":2,"40":1,"45":2,"48":3,"52":1,"62":2,"81":2,"83":1,"121":1,"159":1,"160":1,"164":3,"169":2,"181":4,"187":1,"190":1,"195":4,"197":1,"198":1,"204":1,"217":4,"218":1,"223":4,"225":1,"226":1,"232":1,"240":1,"287":4}}],["insights",{"2":{"264":1}}],["inside",{"0":{"182":1},"2":{"25":2,"30":2,"37":1,"181":1,"195":1,"217":1,"223":1,"272":2,"274":1,"282":1,"284":1,"287":1}}],["inspired",{"2":{"124":1}}],["inscriptions",{"2":{"14":2}}],["inscribe",{"2":{"14":2}}],["installs",{"2":{"270":1}}],["installations",{"0":{"174":1},"1":{"175":1,"176":1,"177":1,"178":1,"179":1}}],["installation",{"0":{"177":1,"178":1},"2":{"90":1,"150":1,"176":1,"263":2,"270":1}}],["installing",{"0":{"90":1,"274":1},"2":{"161":1,"176":4,"177":1}}],["installed",{"2":{"81":1,"88":1,"90":1,"149":1,"160":1,"161":1,"175":1,"176":2,"207":1,"208":1,"237":1,"246":1,"270":1,"286":1}}],["installer",{"2":{"79":1}}],["install",{"0":{"47":1,"51":1,"151":1,"249":1,"263":1},"2":{"45":2,"47":1,"51":1,"79":2,"80":1,"81":4,"83":2,"90":1,"145":2,"148":2,"149":4,"150":1,"151":2,"159":1,"175":2,"176":2,"177":1,"178":2,"179":1,"194":2,"208":2,"209":1,"215":2,"222":2,"237":1,"238":1,"239":1,"259":2,"263":2,"270":1,"286":1}}],["instantiating",{"2":{"190":1}}],["instantiation",{"0":{"190":1}}],["instantiated",{"2":{"189":1,"191":2}}],["instantiatemsg",{"2":{"21":1,"25":2,"27":2}}],["instantiate",{"2":{"21":1,"25":1,"27":1,"190":1}}],["instance",{"2":{"29":1,"45":1,"95":1,"184":1,"201":1,"229":1,"247":1}}],["instead",{"2":{"7":1,"8":2,"50":1,"96":1,"120":1,"187":1}}],["instructions",{"2":{"3":1,"18":1,"83":1,"90":1,"177":1,"194":2,"215":2,"222":2,"245":1,"259":2}}],["inherits",{"2":{"18":1}}],["inherit",{"2":{"12":1,"104":1,"146":1}}],["inflationary",{"2":{"103":1}}],["inflating",{"2":{"8":1}}],["inference",{"2":{"87":3}}],["inform",{"2":{"245":1}}],["information",{"2":{"88":1,"126":5,"203":1,"231":1,"277":1}}],["infos",{"2":{"242":1,"287":1}}],["info",{"2":{"54":13,"83":1,"126":1,"171":1,"176":3,"191":2,"210":1,"242":1,"287":2}}],["inf",{"2":{"39":10,"64":1,"82":24,"241":24,"251":10}}],["infrastructure",{"2":{"9":1,"94":1}}],["incorporates",{"2":{"87":1}}],["incredibly",{"2":{"265":1}}],["increase",{"0":{"67":1},"2":{"63":3,"67":1,"243":1}}],["increasing",{"2":{"41":1}}],["incrementcounter",{"2":{"161":3,"163":1,"164":1}}],["increment",{"2":{"21":1,"26":2,"27":1,"283":2,"287":1}}],["incurring",{"2":{"103":1}}],["incur",{"2":{"18":1,"104":1}}],["includes",{"2":{"42":1,"81":1,"104":1,"120":1,"121":1}}],["included",{"2":{"14":1,"140":2,"161":1,"268":1,"287":3}}],["include",{"2":{"14":2,"29":1,"93":1,"161":1,"176":1}}],["including",{"2":{"7":1,"17":1,"103":1,"104":1,"116":1}}],["incentive",{"2":{"8":1}}],["int",{"2":{"161":9,"163":1,"164":1,"283":1}}],["introduction",{"0":{"21":1,"78":1,"87":1,"115":1,"166":1,"236":1},"2":{"22":1}}],["introduced",{"2":{"58":1}}],["introduce",{"2":{"8":1}}],["integers",{"2":{"282":1,"287":1}}],["integrated",{"2":{"74":1,"75":1}}],["integrate",{"0":{"70":1,"73":1},"1":{"71":1,"72":1,"73":1,"74":2,"75":1,"76":1},"2":{"21":2,"30":1,"31":1,"59":1,"71":1,"73":1,"78":1,"146":1,"173":1}}],["integrating",{"0":{"15":1,"31":1},"2":{"14":1,"22":1}}],["integrations",{"2":{"122":1}}],["integration",{"0":{"23":1,"27":1,"28":1},"1":{"24":1,"25":1,"26":1,"27":1,"29":1,"30":1,"31":1},"2":{"12":1,"13":1,"17":1,"18":1,"21":2,"22":3,"27":1,"28":2,"30":1,"71":1,"121":1,"122":1,"146":2,"245":2}}],["interested",{"2":{"206":1,"219":1,"234":1}}],["interwasm",{"2":{"184":1}}],["intermediate",{"0":{"112":1},"2":{"134":1}}],["intermediaries",{"2":{"8":1}}],["interpreted",{"2":{"89":1}}],["inter",{"2":{"42":1}}],["interacted",{"2":{"191":1}}],["interactive",{"2":{"81":1}}],["interacting",{"2":{"32":1,"125":1}}],["interactions",{"2":{"27":1,"32":1,"281":2}}],["interaction",{"0":{"26":1,"188":1,"191":1},"1":{"189":1,"190":1,"191":1},"2":{"22":1,"26":1,"29":1,"276":1}}],["interact",{"0":{"97":1,"255":1,"257":1},"2":{"9":1,"21":2,"23":1,"96":1,"97":1,"188":1,"191":1,"256":2,"257":1,"281":1}}],["interchain",{"2":{"9":1}}],["interoperability",{"2":{"8":1}}],["interoperate",{"2":{"7":2}}],["internal",{"2":{"8":1}}],["interfaces",{"2":{"16":2,"30":1,"121":1,"126":1,"276":1}}],["interface",{"0":{"25":1,"30":1,"119":1},"1":{"120":1},"2":{"7":1,"9":1,"10":1,"16":6,"22":2,"25":9,"26":1,"30":7,"100":2,"109":1,"119":1,"120":1,"121":2,"122":1,"207":1,"284":2,"288":1}}],["into",{"0":{"15":1},"2":{"7":1,"21":1,"45":1,"59":1,"60":1,"71":1,"73":1,"75":1,"87":1,"114":1,"117":1,"131":1,"146":1,"160":1,"187":1,"201":1,"211":1,"229":1,"256":1,"257":1,"261":1,"264":1}}],["in",{"0":{"28":1,"64":1,"77":1,"130":1,"134":1,"288":1},"1":{"29":1,"30":1,"31":1,"78":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1},"2":{"3":1,"4":2,"8":4,"9":1,"14":1,"15":2,"16":3,"18":1,"19":2,"21":3,"22":1,"24":2,"25":4,"26":5,"27":2,"28":1,"29":1,"30":3,"32":1,"34":1,"35":2,"39":3,"41":1,"42":4,"45":2,"48":2,"50":2,"54":5,"56":3,"58":2,"59":2,"60":2,"62":1,"63":7,"66":1,"67":1,"69":2,"70":1,"71":1,"73":1,"74":5,"75":1,"76":4,"81":1,"82":3,"83":1,"87":1,"90":1,"91":1,"93":1,"94":2,"95":1,"96":2,"97":3,"99":1,"100":1,"103":2,"104":2,"105":2,"109":1,"114":3,"117":1,"121":2,"124":1,"125":3,"127":1,"128":1,"131":2,"133":2,"134":4,"136":1,"140":9,"142":2,"145":2,"154":1,"158":1,"160":1,"161":4,"164":1,"166":1,"167":1,"170":1,"171":1,"173":1,"177":1,"178":2,"179":1,"181":1,"184":1,"185":1,"186":2,"187":5,"188":2,"189":1,"191":1,"193":1,"195":2,"198":3,"200":1,"201":4,"202":1,"203":3,"205":1,"206":2,"207":1,"210":1,"211":1,"212":1,"213":1,"217":2,"218":2,"219":1,"221":1,"223":2,"226":3,"228":1,"229":4,"230":1,"231":3,"233":1,"234":2,"240":2,"241":3,"245":1,"247":1,"250":1,"254":1,"256":1,"257":4,"258":3,"260":1,"261":2,"263":1,"266":1,"267":4,"268":5,"270":2,"271":1,"272":1,"275":2,"277":2,"278":1,"282":5,"283":3,"284":2,"287":6,"288":1}}],["image",{"2":{"14":1}}],["images",{"2":{"3":1}}],["impl=indexerservice",{"2":{"82":1,"241":1}}],["impl=pubsub",{"2":{"82":1,"241":1}}],["impl=eventbus",{"2":{"82":1,"241":1}}],["impl=localclient",{"2":{"82":4,"241":4}}],["impl=multiappconn",{"2":{"82":1,"241":1}}],["impl=node",{"2":{"39":1,"82":1,"241":1}}],["impl=rpc",{"2":{"39":1,"82":1,"241":1}}],["impl",{"2":{"25":1}}],["implementing",{"2":{"16":1,"109":1}}],["implementers",{"2":{"16":1}}],["implemented",{"2":{"16":1,"100":1,"122":1,"124":1,"127":1,"128":1,"131":1,"275":1,"284":1,"287":1}}],["implements",{"2":{"14":1,"26":1,"126":1,"203":1,"231":1}}],["implementations",{"2":{"121":1,"266":1}}],["implementation",{"0":{"268":1},"2":{"12":1,"13":1,"15":1,"18":1,"104":1,"131":2,"266":1}}],["implement",{"2":{"10":1,"16":2,"268":2,"281":1}}],["import",{"2":{"93":1,"96":2,"161":2,"162":2,"282":1,"283":1}}],["importing",{"2":{"27":1,"30":1}}],["important",{"2":{"16":1,"99":1,"121":1,"182":1,"272":1}}],["imposed",{"2":{"10":1}}],["improve",{"2":{"288":3}}],["improves",{"2":{"287":1}}],["improvements",{"2":{"4":1}}],["improving",{"2":{"2":1}}],["itoa",{"2":{"283":2}}],["its",{"2":{"7":2,"9":1,"16":1,"91":1,"127":1,"133":1,"140":1,"189":1,"263":1,"275":2,"283":1}}],["it",{"2":{"2":2,"8":1,"9":2,"12":1,"14":2,"16":3,"18":3,"19":2,"21":3,"24":1,"25":2,"26":1,"39":1,"42":1,"51":1,"54":3,"62":1,"78":1,"79":1,"81":2,"87":1,"92":1,"93":2,"94":5,"96":2,"97":2,"99":1,"100":1,"103":2,"104":4,"107":1,"109":1,"114":1,"115":1,"116":1,"119":1,"121":1,"122":1,"124":1,"125":1,"127":1,"134":1,"140":1,"142":1,"146":3,"149":2,"154":2,"161":1,"162":1,"163":1,"164":1,"166":1,"167":1,"170":1,"176":1,"177":1,"178":1,"179":1,"181":1,"182":1,"184":1,"186":1,"189":1,"191":1,"193":1,"195":1,"202":1,"203":1,"206":1,"207":2,"208":2,"213":1,"221":1,"223":1,"230":1,"231":1,"234":1,"236":1,"239":1,"244":1,"257":1,"265":2,"266":1,"268":2,"270":2,"272":3,"276":1,"277":3,"280":1,"281":2,"282":1,"283":2,"284":1,"287":4,"288":3}}],["isfound",{"2":{"282":2,"283":4}}],["isletter",{"2":{"282":3,"283":1}}],["isn",{"2":{"268":1}}],["isrs",{"2":{"134":1}}],["issues",{"2":{"211":1,"245":2}}],["issue",{"2":{"4":1,"42":3,"60":1,"114":1}}],["is",{"0":{"100":1,"101":1},"1":{"102":1,"103":1},"2":{"1":1,"7":1,"8":2,"9":1,"10":1,"12":3,"15":2,"18":4,"19":2,"21":1,"26":1,"27":1,"30":1,"31":1,"34":2,"36":1,"39":3,"41":2,"48":2,"50":1,"54":3,"55":1,"56":1,"57":1,"60":1,"62":1,"63":4,"64":1,"66":1,"71":1,"75":2,"76":1,"78":1,"81":1,"83":2,"90":1,"92":1,"93":1,"94":1,"95":1,"96":1,"99":1,"100":3,"102":2,"104":3,"107":1,"109":1,"114":2,"115":3,"116":1,"119":1,"121":1,"122":1,"124":3,"125":2,"127":2,"131":1,"133":1,"134":1,"140":6,"141":1,"142":1,"146":1,"159":1,"161":1,"162":1,"164":1,"170":6,"171":3,"173":3,"176":1,"178":3,"180":1,"182":2,"184":1,"189":1,"190":2,"193":3,"200":2,"201":3,"202":2,"203":1,"210":1,"211":2,"213":2,"215":1,"217":1,"221":3,"222":1,"228":2,"229":3,"230":2,"231":1,"236":1,"240":1,"245":4,"256":1,"259":1,"261":1,"262":1,"265":3,"267":1,"268":1,"270":1,"271":2,"272":3,"275":3,"276":2,"277":2,"280":3,"281":3,"282":5,"283":3,"284":2,"287":2,"288":1}}],["luck",{"2":{"172":1,"198":1,"226":1,"244":1,"265":1}}],["lunaroasis",{"2":{"170":1}}],["luxor",{"2":{"14":1}}],["l",{"2":{"150":1,"249":1}}],["l3s",{"2":{"105":1}}],["lt",{"2":{"25":4,"27":1,"36":1,"62":1,"65":1,"94":1,"163":2,"164":1,"257":1}}],["l2",{"2":{"8":2}}],["len",{"2":{"282":1,"283":1}}],["level",{"2":{"83":1,"90":1,"124":1,"242":1}}],["leverages",{"2":{"87":1,"104":1}}],["leverage",{"2":{"70":1,"107":1,"116":1}}],["left",{"2":{"41":1}}],["less",{"2":{"16":1,"70":1,"74":1}}],["letters",{"2":{"282":3,"283":2}}],["letter",{"2":{"268":6,"282":1,"283":1,"287":1}}],["let",{"2":{"8":1,"21":1,"27":5,"60":1,"81":1,"96":1,"114":1,"161":2,"162":1,"170":3,"171":1,"187":1,"189":1,"191":1,"239":1,"242":1,"274":1,"287":2}}],["leader",{"2":{"287":1}}],["leading",{"2":{"7":1}}],["least",{"2":{"134":1,"287":1}}],["leaf",{"2":{"83":2}}],["learning",{"2":{"87":2}}],["learn",{"2":{"3":1,"25":1,"32":1,"42":2,"80":1,"100":1,"107":1,"109":1,"170":1,"195":1,"206":1,"217":1,"223":1,"234":1,"238":1,"252":1,"259":1}}],["lies",{"2":{"167":1}}],["license",{"2":{"96":1,"161":2,"162":1}}],["limited",{"2":{"102":2}}],["limitations",{"2":{"102":1}}],["limit",{"2":{"83":1,"242":1,"287":1}}],["listed",{"2":{"103":1}}],["listen=0",{"2":{"259":1}}],["listening",{"2":{"39":3,"80":1,"82":3,"238":1,"241":3,"286":1}}],["listen",{"2":{"39":1,"52":1,"82":1,"83":1,"241":1}}],["list",{"2":{"65":1,"83":1,"176":1,"189":1,"191":2,"201":2,"229":2,"242":2,"277":1,"287":2}}],["lifecycle",{"2":{"121":1}}],["life",{"2":{"59":1,"106":1}}],["lines",{"2":{"93":1,"178":1}}],["line",{"2":{"81":1,"187":2}}],["link",{"2":{"54":1,"210":1}}],["linux",{"2":{"45":1,"79":1,"149":3,"176":1,"177":1,"178":1,"186":1,"208":1,"247":1}}],["libraries",{"2":{"270":1}}],["library",{"2":{"32":1,"161":1}}],["libssl",{"2":{"148":1}}],["libp2p",{"2":{"34":1,"127":1}}],["lib",{"2":{"25":2,"26":1,"30":1}}],["live",{"2":{"16":1,"21":1,"32":1,"41":1,"162":1}}],["liquidity",{"2":{"8":1,"108":1}}],["light",{"0":{"130":1,"167":1,"171":1,"194":1,"215":1,"222":1,"258":1,"259":1},"1":{"259":1,"260":1,"261":1},"2":{"7":2,"8":1,"52":1,"63":1,"65":1,"83":1,"104":2,"109":1,"117":1,"122":1,"130":4,"131":1,"134":4,"136":2,"140":2,"167":2,"169":1,"170":3,"194":2,"215":3,"217":1,"218":1,"222":3,"258":2,"259":7,"261":1}}],["like",{"2":{"7":2,"8":1,"9":1,"25":1,"26":1,"50":2,"54":1,"56":1,"57":2,"58":1,"64":1,"92":1,"97":1,"103":1,"104":1,"119":1,"120":1,"136":1,"148":1,"153":1,"170":3,"198":1,"226":1,"240":1,"242":2,"244":1,"252":1,"287":1,"289":1}}],["larger",{"2":{"287":1}}],["largest",{"2":{"14":1}}],["label",{"2":{"190":1,"191":1}}],["labs",{"2":{"47":1,"92":1,"170":1}}],["laddr",{"2":{"62":2,"67":2,"69":2}}],["later",{"2":{"62":2,"177":1,"188":1}}],["latest",{"2":{"24":1,"156":1,"280":1,"283":1}}],["lazy",{"0":{"58":1},"2":{"58":4,"59":1}}],["lastly",{"2":{"145":1}}],["last",{"2":{"57":1,"125":1,"142":4,"170":1,"195":1,"217":1,"223":1}}],["language",{"2":{"79":1}}],["land",{"2":{"25":1}}],["lanes",{"2":{"9":1}}],["layers",{"2":{"10":1,"15":2,"17":1,"18":1,"100":1,"104":2,"105":1,"108":2,"145":1,"146":2}}],["layer",{"0":{"15":1,"108":1,"127":1},"2":{"7":5,"8":3,"10":1,"14":1,"16":2,"18":2,"39":1,"63":1,"64":4,"103":2,"104":5,"107":2,"108":2,"109":1,"110":1,"117":1,"121":4,"122":1,"125":2,"127":2,"131":1,"133":1,"134":2,"140":4,"145":1,"146":1,"159":1,"170":1,"173":1,"194":1,"215":1,"222":1,"245":1,"251":2,"259":1,"260":1}}],["launching",{"2":{"7":1,"8":1,"11":1}}],["launch",{"2":{"7":2,"8":1,"10":1,"99":1,"115":2,"262":1,"286":1}}],["l1",{"2":{"7":2,"8":1,"131":1}}],["l1s",{"2":{"7":1}}],["lots",{"2":{"270":1}}],["long",{"2":{"134":1,"282":1,"283":1,"287":1}}],["low",{"2":{"130":1}}],["looks",{"2":{"125":1,"136":1}}],["look",{"2":{"58":1,"64":1,"96":1,"97":1,"145":1,"153":1,"155":1,"170":1,"176":1,"189":1,"191":2,"240":1,"251":1,"254":1,"282":1}}],["looking",{"2":{"21":1,"75":1,"103":1,"116":1}}],["loop",{"2":{"52":2,"83":2}}],["login",{"2":{"257":1}}],["logic",{"2":{"212":1,"275":1,"281":1,"287":1}}],["logging",{"2":{"161":1}}],["logger",{"2":{"27":1}}],["logsbloom",{"2":{"97":1}}],["logs",{"2":{"82":1,"96":1,"97":1,"161":3,"191":1,"241":1,"251":1,"254":1,"287":1}}],["log",{"2":{"27":1,"83":1,"161":3,"163":1,"191":1,"264":1,"287":2}}],["loading",{"2":{"118":1,"137":1,"138":1,"139":1,"140":1}}],["loads",{"2":{"93":1}}],["loaded",{"2":{"83":1}}],["load",{"2":{"27":1}}],["location",{"2":{"158":1}}],["located",{"2":{"95":1,"160":1}}],["localwasm",{"2":{"187":4,"190":2,"191":2}}],["locally",{"0":{"163":1},"2":{"162":1,"163":2,"164":1}}],["localclient",{"2":{"82":4,"241":4}}],["localdalatesttag",{"2":{"80":1,"238":1,"286":1}}],["localhost",{"2":{"39":1,"52":2,"56":2,"57":3,"82":1,"83":1,"96":1,"210":1,"211":1,"241":1,"254":1}}],["local",{"0":{"46":1,"48":1,"56":1,"57":1,"80":1,"152":1,"158":1,"179":1,"180":1,"238":1,"247":1,"286":1},"1":{"47":1,"48":1,"153":1,"154":1,"155":1,"156":1,"157":1,"158":1,"181":1,"182":1},"2":{"2":1,"17":1,"27":4,"35":1,"36":1,"42":1,"45":4,"48":5,"52":2,"53":3,"54":6,"56":1,"62":8,"80":3,"81":1,"82":1,"85":2,"87":1,"145":1,"149":4,"151":1,"152":1,"160":1,"163":3,"166":2,"172":1,"173":1,"179":2,"180":1,"186":2,"189":1,"191":1,"193":1,"211":1,"213":1,"221":1,"238":3,"239":1,"241":1,"242":3,"244":2,"245":1,"247":2,"260":2,"270":2,"271":1,"282":1,"283":1,"286":3,"288":1}}],["lock",{"2":{"27":1}}],["love",{"2":{"2":1,"11":1}}],["ll",{"2":{"0":1,"5":1,"35":2,"39":1,"42":1,"48":1,"58":1,"59":2,"63":1,"65":1,"71":1,"72":1,"73":1,"91":1,"145":1,"154":1,"191":2,"201":1,"203":1,"206":1,"229":1,"231":1,"234":1,"242":1,"256":1,"257":1,"258":2,"260":1}}],["w1",{"2":{"153":2}}],["w",{"2":{"93":2}}],["won",{"2":{"176":1}}],["would",{"2":{"58":1,"114":1,"120":1,"170":1,"176":2}}],["worry",{"2":{"242":1}}],["word",{"2":{"268":7,"277":1,"278":4,"280":3,"282":6,"283":8,"287":4,"288":2}}],["wordled",{"2":{"287":1}}],["wordle",{"0":{"266":1,"269":1,"271":1,"272":1,"275":1,"279":1,"280":1,"285":1,"287":1},"1":{"267":1,"268":1,"269":1,"270":2,"271":2,"272":2,"273":1,"274":1,"275":1,"276":2,"277":1,"278":1,"279":1,"280":2,"281":1,"282":1,"283":1,"284":1,"285":1,"286":2,"287":2,"288":2,"289":1},"2":{"112":1,"212":1,"266":1,"267":1,"268":7,"271":3,"272":1,"273":1,"274":2,"275":1,"276":3,"277":3,"278":2,"280":3,"282":24,"283":17,"284":3,"287":31,"288":2,"289":1}}],["words",{"2":{"53":1}}],["working",{"2":{"82":1,"90":1,"91":1,"109":1,"241":1}}],["work",{"0":{"130":1,"134":1},"2":{"42":1,"134":2,"136":1,"142":1,"145":1,"241":1,"270":1,"272":1,"276":1,"284":1}}],["workspace",{"0":{"28":1},"1":{"29":1,"30":1,"31":1},"2":{"22":1,"25":1,"30":4,"31":1,"75":1}}],["workspaces",{"2":{"21":1,"29":1}}],["works",{"2":{"16":1,"93":1,"145":1}}],["world",{"0":{"165":1,"192":1,"199":1,"200":1,"207":1,"213":1,"220":1,"227":1,"228":1,"235":1},"1":{"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"193":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"200":2,"201":3,"202":3,"203":3,"204":3,"205":3,"206":1,"208":1,"209":1,"210":1,"211":1,"212":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":1,"221":1,"222":1,"223":1,"224":1,"225":1,"226":1,"227":1,"228":2,"229":3,"230":3,"231":3,"232":3,"233":3,"234":1,"236":1,"237":1,"238":1,"239":1,"240":1,"241":1,"242":1,"243":1,"244":1},"2":{"19":1,"33":1,"35":1,"42":1,"45":1,"62":2,"63":1,"72":1,"78":1,"81":2,"111":2,"166":3,"168":1,"193":1,"200":1,"203":1,"205":1,"208":1,"213":1,"221":1,"228":1,"231":1,"233":1,"236":1,"239":1,"267":1,"271":1}}],["wget",{"2":{"37":1,"148":1,"149":1,"181":1,"195":1,"217":1,"223":1,"287":1}}],["wrap",{"2":{"282":3,"283":4}}],["wrapper",{"2":{"25":2}}],["wrong",{"2":{"268":1,"283":2}}],["written",{"2":{"93":2}}],["writing",{"2":{"16":1,"21":1,"24":1,"190":1}}],["writer",{"2":{"16":2}}],["write",{"2":{"16":3,"21":2,"60":1,"93":2,"114":1,"170":1,"173":1,"200":1,"228":1,"271":1,"282":1}}],["watch",{"2":{"217":1}}],["walkthrough",{"2":{"89":1,"90":1}}],["wall",{"2":{"14":1}}],["wallet",{"0":{"153":1,"211":1},"2":{"9":1,"53":1,"143":2,"153":1,"167":1,"191":1,"207":2,"211":5,"257":3}}],["warning",{"2":{"45":1,"81":1,"136":1,"142":1,"153":1}}],["waiting",{"2":{"96":1,"254":1}}],["wait",{"2":{"42":1,"58":1,"287":1}}],["wanted",{"2":{"191":2,"287":1}}],["want",{"2":{"21":1,"28":1,"75":1,"99":1,"108":1,"185":1,"186":1,"242":1,"260":1}}],["wants",{"2":{"16":1,"283":1}}],["ways",{"2":{"105":1,"268":1,"288":1}}],["way",{"2":{"21":1,"34":1,"262":1,"283":1,"287":4}}],["waste",{"2":{"27":1}}],["wasm1y9ceqvnsnm9xtcdmhrjvv4rslgwfzmrzky2c5z",{"2":{"191":2}}],["wasm14hj2tavq8fpesdwxxcu44rty3hh90vhujrvcmstl4zr3txmfvw9s0phg4d",{"2":{"191":3}}],["wasm1lysztpn74kl40w6ghfhy7xr0v44r658szuysl5",{"2":{"142":4}}],["wasmd",{"0":{"178":1},"2":{"141":1,"142":1,"178":4,"180":2,"181":1,"186":1,"187":2,"189":1,"190":1,"191":6}}],["wasmpath",{"2":{"25":1}}],["wasm32",{"2":{"25":2,"176":4,"184":1}}],["wasm",{"2":{"25":4,"142":2,"173":1,"184":2,"186":2,"187":4,"189":1,"190":1,"191":7}}],["was",{"2":{"13":1,"14":2,"16":1,"58":1,"62":1,"97":1,"149":1,"270":1,"282":1,"283":1,"287":3}}],["wire",{"2":{"272":1}}],["window",{"2":{"205":1,"233":1,"287":1}}],["windows",{"2":{"79":1,"270":3}}],["win",{"2":{"83":2}}],["widespread",{"2":{"103":1}}],["widely",{"2":{"90":1}}],["wide",{"2":{"59":1}}],["witnesses",{"2":{"14":2}}],["without",{"2":{"7":1,"8":1,"14":1,"64":1,"121":1,"131":1,"245":1}}],["within",{"2":{"7":1,"78":1,"92":1,"283":1}}],["with",{"0":{"9":1,"12":1,"14":1,"20":1,"70":1,"86":1,"97":1,"106":1,"107":1,"181":1,"183":1,"255":1,"257":1,"258":1},"1":{"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"87":1,"88":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"95":1,"96":1,"97":1,"98":1,"184":1,"185":1,"186":1,"187":1,"259":1,"260":1,"261":1},"2":{"1":1,"2":1,"3":1,"6":1,"7":5,"8":4,"9":4,"11":2,"12":2,"13":2,"14":2,"16":1,"18":3,"19":1,"21":2,"22":1,"23":1,"25":2,"28":1,"31":1,"32":1,"39":1,"40":1,"41":1,"45":2,"48":1,"51":1,"52":2,"53":1,"54":1,"55":1,"59":3,"60":1,"69":1,"71":1,"78":1,"81":3,"82":2,"83":2,"90":2,"91":1,"93":4,"94":1,"96":2,"97":1,"99":2,"100":2,"102":1,"103":2,"104":4,"107":1,"110":1,"113":1,"114":1,"120":3,"121":1,"125":5,"126":1,"131":1,"136":1,"140":1,"145":2,"146":2,"147":1,"149":1,"157":1,"161":3,"162":1,"163":4,"164":1,"170":2,"171":1,"173":1,"176":1,"178":1,"181":3,"185":1,"187":2,"188":1,"191":4,"193":1,"195":2,"197":2,"201":1,"209":1,"213":1,"217":1,"221":1,"223":2,"225":2,"229":1,"239":2,"241":2,"245":1,"253":1,"254":1,"256":3,"257":2,"258":1,"266":1,"267":1,"270":1,"271":2,"273":1,"274":1,"276":5,"277":2,"278":1,"280":1,"281":2,"282":2,"283":5,"284":2,"287":11,"288":1}}],["wizards",{"2":{"14":1}}],["will",{"2":{"10":1,"18":1,"19":1,"21":3,"23":1,"28":1,"33":1,"36":2,"39":2,"40":1,"41":2,"45":1,"48":1,"49":2,"53":2,"56":2,"59":2,"60":1,"61":1,"62":1,"63":3,"64":1,"67":1,"76":1,"78":2,"81":1,"82":1,"83":1,"87":4,"90":1,"92":2,"93":1,"94":5,"95":1,"96":2,"97":3,"103":1,"110":1,"114":1,"117":2,"134":3,"140":5,"145":5,"148":1,"149":1,"153":1,"155":1,"156":1,"160":1,"161":1,"163":2,"164":1,"170":2,"173":2,"175":1,"176":1,"177":1,"178":1,"179":1,"184":1,"186":1,"187":1,"188":1,"189":1,"191":2,"202":1,"205":1,"208":2,"211":1,"217":1,"230":1,"233":1,"236":2,"239":1,"245":1,"251":1,"253":1,"254":2,"256":2,"258":3,"263":1,"264":1,"266":3,"268":5,"271":2,"272":2,"276":2,"277":1,"279":1,"281":1,"282":2,"283":2,"287":7}}],["whoever",{"2":{"268":1}}],["who",{"2":{"108":1,"267":1}}],["why",{"0":{"104":1}}],["whatever",{"2":{"92":1}}],["what",{"0":{"100":1,"101":1,"182":1},"1":{"102":1,"103":1},"2":{"64":1,"109":1,"136":1,"170":1,"201":1,"229":1,"265":1}}],["whammy",{"2":{"54":1}}],["whitelist",{"2":{"30":1}}],["while",{"2":{"9":1,"14":1,"15":1,"103":1,"114":1,"140":1,"154":1,"194":1,"275":1}}],["whichever",{"2":{"109":1}}],["which",{"2":{"7":1,"8":1,"16":2,"34":1,"39":1,"41":1,"42":1,"45":1,"48":1,"50":1,"57":1,"60":1,"71":1,"78":1,"88":1,"100":2,"103":1,"104":2,"114":1,"120":2,"125":3,"140":2,"166":1,"168":1,"171":1,"186":1,"258":1,"265":1,"268":1,"271":1,"276":2,"282":2,"283":2}}],["where",{"2":{"8":1,"15":1,"18":1,"19":1,"29":2,"42":1,"62":1,"63":1,"66":1,"94":1,"104":1,"114":1,"154":2}}],["when",{"0":{"109":1},"2":{"7":1,"10":1,"25":1,"29":1,"30":2,"36":1,"41":2,"50":1,"53":1,"54":1,"59":1,"93":1,"117":1,"125":1,"134":1,"140":1,"198":1,"218":1,"226":1,"259":1,"283":1,"288":2}}],["whether",{"2":{"2":1,"134":1,"287":1}}],["web",{"2":{"208":1,"272":1}}],["webassembly",{"2":{"173":1}}],["websockets",{"2":{"126":1}}],["weight",{"2":{"130":1}}],["well",{"2":{"29":1,"88":1,"121":1,"127":1,"163":1,"172":1,"266":1}}],["welcome",{"2":{"0":1,"5":1,"59":1,"115":1,"262":1}}],["we",{"2":{"2":1,"4":1,"11":1,"12":1,"16":3,"17":1,"18":2,"19":1,"21":3,"23":1,"25":1,"28":1,"30":2,"35":1,"39":1,"42":1,"48":2,"58":1,"63":2,"69":1,"71":1,"73":1,"76":1,"78":1,"81":1,"82":4,"83":2,"87":2,"90":2,"91":1,"92":1,"93":1,"95":1,"97":2,"109":1,"110":1,"115":2,"124":1,"145":4,"148":1,"149":1,"154":1,"160":1,"161":2,"162":2,"163":3,"164":6,"169":2,"170":1,"173":2,"175":1,"177":2,"178":1,"180":1,"181":4,"184":1,"185":2,"186":2,"188":1,"189":2,"190":2,"191":3,"195":3,"196":1,"197":1,"200":1,"202":1,"205":1,"216":1,"223":3,"224":1,"225":1,"228":1,"230":1,"233":1,"236":1,"239":1,"241":3,"242":2,"245":2,"253":1,"256":1,"258":1,"267":1,"268":5,"271":4,"272":1,"273":2,"274":1,"275":1,"276":2,"277":2,"278":3,"279":2,"280":1,"281":1,"282":9,"283":12,"284":2,"287":8}}],["dl",{"2":{"149":1}}],["d7d4c5a2ac271061512789bee3718305beaa519b",{"2":{"142":2}}],["d7e7e6ec0299c120c0e32167c11f0b60921ef88cc6524345bceb3b266ef727aa",{"2":{"54":1}}],["dht",{"2":{"127":3}}],["dst",{"2":{"54":3,"83":2}}],["dyn",{"2":{"25":1}}],["dumps",{"2":{"93":1}}],["duplicate",{"2":{"63":1}}],["duplication",{"2":{"21":1}}],["duration",{"2":{"52":2,"83":2}}],["during",{"2":{"41":1,"104":1}}],["due",{"2":{"13":1,"63":1}}],["dramatically",{"2":{"287":1}}],["drive",{"2":{"284":1}}],["drop",{"2":{"178":1}}],["dr",{"0":{"13":1}}],["d",{"2":{"11":1,"62":1,"154":1,"198":1,"226":1,"252":1,"259":1}}],["date",{"2":{"282":1,"287":1,"288":1}}],["dataavailabilitylayerclient",{"2":{"16":1,"121":1}}],["data",{"0":{"14":1,"15":1,"16":1,"121":1},"1":{"122":1},"2":{"8":1,"10":2,"12":2,"13":2,"14":8,"15":4,"16":7,"18":3,"39":1,"78":2,"87":1,"99":1,"100":1,"104":4,"109":1,"110":1,"115":2,"116":1,"117":1,"121":3,"122":1,"125":3,"131":1,"133":1,"140":1,"142":2,"145":2,"146":6,"166":1,"167":1,"168":1,"178":1,"191":2,"194":1,"200":1,"203":1,"206":1,"215":1,"222":1,"228":1,"231":1,"234":1,"236":2,"245":2,"258":2,"259":1,"260":1,"261":1,"264":1,"272":1,"286":2,"287":2}}],["das",{"2":{"258":1}}],["dastartheight",{"2":{"125":1}}],["danger",{"2":{"159":1,"187":1,"245":1}}],["daemon",{"2":{"152":1}}],["daemonbuilder",{"2":{"27":1}}],["daheight=30",{"2":{"251":1}}],["daheight",{"2":{"125":1}}],["dablocktime",{"2":{"125":2}}],["dapp",{"2":{"113":1}}],["dappsys",{"2":{"161":1}}],["dapps",{"2":{"14":1}}],["darwin",{"2":{"51":1,"176":4}}],["days",{"2":{"265":1}}],["day",{"2":{"9":1,"16":1,"268":2,"277":1,"282":9,"283":15,"287":1,"288":1}}],["da",{"0":{"38":1,"80":1,"170":1,"179":1,"180":1,"238":1,"286":1},"1":{"181":1,"182":1},"2":{"7":1,"8":2,"10":2,"16":4,"36":2,"38":2,"39":1,"41":5,"62":5,"63":3,"64":5,"67":3,"69":3,"78":1,"80":3,"81":1,"82":2,"85":1,"100":2,"104":1,"110":1,"117":1,"121":4,"122":3,"125":1,"134":2,"140":4,"142":1,"159":4,"166":2,"170":9,"171":6,"173":1,"178":1,"179":2,"191":1,"198":1,"226":1,"236":1,"238":3,"239":1,"241":4,"244":1,"251":2,"259":7,"260":3,"286":1,"287":1,"289":1}}],["doing",{"2":{"194":1,"267":1,"282":1,"283":2}}],["do",{"2":{"29":1,"30":1,"81":1,"154":1,"162":1,"164":1,"185":1,"198":1,"200":1,"218":1,"226":1,"228":1,"267":2}}],["dotenv",{"2":{"27":2}}],["door",{"2":{"12":1}}],["done",{"2":{"27":1,"72":1,"154":1,"172":1,"256":1}}],["don",{"2":{"8":1,"63":1,"120":1,"129":1,"143":1,"176":1,"208":1,"242":1}}],["doesn",{"2":{"98":1}}],["does",{"2":{"8":1,"106":1,"114":1,"202":1,"230":1,"259":1,"287":1}}],["downloading",{"2":{"48":1,"148":1,"176":1}}],["download",{"2":{"45":2,"79":1,"81":2,"104":1,"140":1,"178":1,"217":1,"239":1,"274":1}}],["down",{"2":{"7":1,"19":1,"109":1,"178":1,"184":1}}],["docker",{"0":{"177":1},"2":{"39":3,"44":1,"177":2,"186":3,"246":1,"260":2}}],["docs",{"2":{"1":1,"115":1,"270":1,"272":1,"275":1,"276":1,"277":1,"281":1}}],["documentation",{"0":{"0":1},"1":{"1":1,"2":1,"3":1,"4":1},"2":{"0":1,"1":1,"3":1,"4":1,"21":1,"25":1,"26":1,"32":1,"99":1,"107":1,"116":1,"272":1}}],["did",{"2":{"283":1,"287":4}}],["didn",{"2":{"65":1,"287":1}}],["display",{"2":{"256":1,"263":1,"287":1}}],["displayed",{"2":{"211":1}}],["disputes",{"2":{"108":1}}],["distros",{"2":{"208":1}}],["disable",{"2":{"159":1}}],["discover",{"2":{"265":1}}],["discovery",{"2":{"127":1}}],["disclaimer",{"2":{"42":1}}],["discrepancies",{"2":{"4":1}}],["diving",{"2":{"244":1}}],["divided",{"2":{"71":1}}],["dive",{"2":{"59":1}}],["dir",{"2":{"25":1,"240":3}}],["directories",{"2":{"272":1}}],["directory",{"0":{"3":1,"272":1},"2":{"24":1,"25":1,"37":1,"40":1,"45":1,"52":2,"81":1,"83":2,"92":2,"94":1,"95":2,"96":1,"154":1,"160":2,"161":1,"168":1,"169":1,"176":1,"181":2,"185":1,"186":1,"187":1,"195":2,"198":1,"201":1,"217":1,"218":1,"223":2,"226":1,"229":1,"240":2,"256":1,"261":1,"271":2,"272":4,"274":2,"287":2}}],["direct",{"2":{"52":2,"83":2,"89":1,"121":1,"127":1}}],["directly",{"2":{"7":1,"8":1,"14":1,"32":1,"50":1,"104":1}}],["difference",{"2":{"166":1,"167":1}}],["differently",{"2":{"276":1}}],["different",{"2":{"10":1,"18":2,"50":1,"56":1,"96":1,"100":1,"105":1,"131":1,"145":1,"146":1,"257":1,"267":1}}],["diff",{"2":{"28":1}}],["difficult",{"2":{"8":1}}],["diagrams",{"2":{"3":1}}],["delegating",{"2":{"276":1}}],["delegate",{"2":{"10":2}}],["deloyment",{"2":{"162":1}}],["dedicated",{"2":{"104":1,"127":1}}],["desc",{"2":{"191":2}}],["describing",{"2":{"272":1}}],["described",{"2":{"187":1}}],["description",{"2":{"91":1}}],["designs",{"2":{"277":1}}],["design",{"0":{"268":1},"2":{"91":1,"121":1,"134":2,"146":1,"266":1,"268":2,"277":1}}],["designed",{"2":{"59":1,"80":1,"238":1,"245":1,"271":2}}],["designate",{"2":{"10":1}}],["decrementcounter",{"2":{"161":2}}],["decreasing",{"2":{"41":1}}],["decision",{"2":{"134":1}}],["decide",{"2":{"127":1,"140":1}}],["decoded",{"2":{"97":1}}],["decentralized",{"2":{"87":1,"102":1,"103":1,"131":2,"140":1}}],["deep",{"2":{"87":1}}],["deeper",{"2":{"59":1,"78":1,"244":1}}],["determine",{"2":{"170":1}}],["detect",{"2":{"134":1}}],["detected",{"2":{"76":1}}],["detail",{"2":{"59":1}}],["details",{"0":{"142":1},"1":{"143":1},"2":{"3":1,"16":1,"18":1,"29":1,"171":1,"191":1}}],["detailed",{"2":{"2":1,"134":1}}],["denom",{"2":{"56":5,"57":3,"82":1,"83":2,"190":2,"242":1,"243":2}}],["de5f15d2ceb85278fa916185a01fba5da604563462893288ec7a8745fb597b96",{"2":{"54":1}}],["defer",{"2":{"131":1}}],["defaults",{"2":{"41":1}}],["default",{"2":{"27":1,"41":1,"52":2,"53":2,"69":1,"82":1,"124":1,"133":1,"142":1,"170":1,"176":2,"195":1,"217":1,"223":1,"241":1,"259":1,"261":1,"272":1}}],["definition",{"2":{"272":1}}],["definitions",{"2":{"26":1}}],["defining",{"2":{"30":1}}],["defined",{"2":{"29":2,"63":1,"275":1,"276":1,"281":1}}],["defines",{"2":{"16":2,"63":1,"201":1,"203":1,"229":1,"231":1,"277":1}}],["define",{"2":{"7":2,"8":1,"25":1,"200":2,"228":2}}],["derive",{"2":{"26":4,"29":1}}],["dep",{"2":{"276":1}}],["dependency",{"0":{"148":1,"174":1},"1":{"149":1,"150":1,"151":1,"175":1,"176":1,"177":1,"178":1,"179":1},"2":{"120":2,"276":2}}],["dependencies",{"0":{"29":1,"79":1,"237":1},"2":{"22":1,"24":1,"27":2,"148":1,"209":1,"275":1}}],["depth",{"2":{"21":1,"83":1,"91":1}}],["deployed",{"2":{"93":1,"94":1,"104":1,"141":1,"163":1,"164":2,"189":2}}],["deployment",{"0":{"110":1,"162":1,"183":1,"187":1},"1":{"111":1,"112":1,"113":1,"114":1,"184":1,"185":1,"186":1,"187":1},"2":{"21":1,"96":2,"104":1,"187":1,"254":2}}],["deploy",{"0":{"94":1,"95":1,"96":1,"254":1},"1":{"96":1},"2":{"7":1,"18":1,"87":2,"95":1,"96":1,"100":1,"104":2,"122":1,"131":1,"145":1,"146":1,"159":1,"162":1,"163":1,"164":1,"187":3,"188":1,"245":1,"252":2,"254":2}}],["deploying",{"0":{"91":1,"163":1,"164":1,"165":1,"193":1,"214":1,"221":1},"1":{"92":1,"93":1,"94":1,"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"200":1,"201":1,"202":1,"203":1,"204":1,"205":1,"215":1,"216":1,"217":1,"218":1,"222":1,"223":1,"224":1,"225":1,"226":1,"227":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1},"2":{"7":2,"10":1,"18":1,"59":1,"100":2,"102":1,"103":3,"104":2,"107":1,"108":1,"162":1,"164":1,"166":1,"186":1,"217":1}}],["demonstrated",{"2":{"212":1}}],["demonstrate",{"2":{"207":1}}],["demonstrates",{"2":{"78":1}}],["demo",{"0":{"17":1},"2":{"13":1,"17":1,"35":1}}],["demand",{"2":{"10":1}}],["debug",{"2":{"9":1,"52":2,"83":2,"119":1}}],["degree",{"2":{"8":1}}],["devices",{"2":{"130":1}}],["devnet",{"0":{"193":1,"247":1},"1":{"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"200":1,"201":1,"202":1,"203":1,"204":1,"205":1},"2":{"35":1,"45":2,"87":1,"110":1,"167":1,"193":2,"194":1,"197":1,"213":1,"221":1,"225":1,"245":1,"247":2,"258":1,"260":1}}],["developing",{"2":{"59":1,"60":1,"114":1}}],["development",{"0":{"20":1,"160":1},"1":{"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1},"2":{"8":1,"22":1,"78":1,"90":1,"130":1,"160":1,"198":1,"208":1,"210":1,"226":1,"236":1,"268":1,"271":1,"272":1}}],["developers",{"2":{"7":2,"8":3,"9":3,"10":1,"12":1,"15":1,"16":1,"70":1,"100":2,"103":3,"104":3,"106":2,"107":2,"108":1,"115":1,"116":1,"146":2,"267":1}}],["developer",{"2":{"7":1,"9":1,"102":1}}],["dev",{"2":{"1":1,"27":1,"37":1,"45":1,"48":1,"79":1,"80":1,"81":1,"142":6,"148":1,"175":1,"179":1,"181":1,"195":1,"208":1,"210":1,"217":1,"223":1,"237":1,"238":1,"239":1,"256":1,"263":1,"286":1,"287":1}}],["b",{"2":{"287":5}}],["b๏ฟฝ",{"2":{"251":1}}],["b917289ec7566b57b2d0ec759f2e703dbd652f9044362e78c05c4f6df8fd7ac7",{"2":{"54":1}}],["blank",{"2":{"54":1}}],["blob",{"2":{"41":2}}],["blobs",{"2":{"14":1}}],["blockinch",{"2":{"125":1}}],["blockmanager",{"2":{"125":3}}],["blocktime",{"2":{"125":1}}],["blocknumber",{"2":{"97":1}}],["blockhash",{"2":{"97":1}}],["blockretriever",{"2":{"16":1,"121":1}}],["blockspace",{"2":{"12":1,"14":1}}],["blocks",{"0":{"154":1},"1":{"155":1,"156":1,"157":1,"158":1},"2":{"10":1,"16":2,"19":1,"34":2,"39":1,"58":2,"63":2,"73":1,"104":3,"117":3,"121":1,"126":1,"127":1,"129":2,"131":1,"134":3,"154":2,"166":1,"167":1,"170":1,"171":1,"217":1}}],["blocksdk",{"2":{"7":1,"9":1}}],["block",{"0":{"19":1,"125":1,"139":1,"155":1,"156":1,"157":1},"2":{"9":2,"10":1,"14":1,"19":7,"36":1,"38":3,"39":1,"52":2,"59":1,"62":3,"63":1,"64":1,"67":1,"69":1,"82":6,"83":2,"96":1,"97":1,"121":2,"125":10,"126":1,"130":1,"131":1,"134":3,"140":7,"142":10,"154":4,"155":1,"156":3,"157":2,"170":8,"171":1,"241":6,"251":10,"254":1,"260":5,"264":3,"287":7}}],["blockchain",{"2":{"8":3,"9":1,"10":1,"14":1,"18":1,"42":1,"50":1,"78":2,"81":1,"99":1,"100":1,"102":2,"103":1,"104":1,"115":2,"119":1,"126":2,"145":1,"200":2,"207":1,"228":2,"236":2,"239":1,"265":1,"271":5,"272":4,"275":1,"281":1,"284":1}}],["blockchains",{"2":{"7":2,"9":1,"50":6,"270":1,"271":1}}],["blog",{"0":{"5":1},"1":{"6":1},"2":{"3":3,"5":1,"98":1,"100":1,"145":1}}],["bit",{"2":{"282":1,"283":1}}],["bitcoin",{"0":{"12":1,"14":1,"15":1,"16":1,"17":1,"144":1,"151":1,"152":1},"1":{"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"145":1,"146":1,"147":1,"148":1,"149":1,"150":1,"151":1,"152":1,"153":2,"154":2,"155":2,"156":2,"157":2,"158":2,"159":1,"160":1,"161":1,"162":1,"163":1,"164":1},"2":{"6":1,"7":1,"12":6,"13":4,"14":9,"15":3,"16":7,"17":1,"18":3,"133":1,"145":5,"146":7,"151":3,"154":3,"158":1,"159":3,"160":3}}],["bid",{"2":{"83":2}}],["bin",{"2":{"81":2,"149":3,"154":1,"176":2,"196":1,"216":1,"224":1,"270":1}}],["binary",{"0":{"47":1},"2":{"62":1,"168":1,"169":1,"178":1,"180":1,"272":1}}],["binded",{"2":{"39":1}}],["big",{"2":{"14":1}}],["bool",{"2":{"282":1}}],["boogas",{"2":{"255":1}}],["booga",{"0":{"254":1},"2":{"252":1,"253":1,"255":2,"257":2}}],["bootstrapping",{"2":{"8":1}}],["bootstrap",{"2":{"7":1,"12":1,"103":1,"104":1,"127":2}}],["body",{"2":{"242":1,"283":2,"284":1,"287":1}}],["bodies",{"2":{"125":1}}],["bonus",{"2":{"120":1}}],["bot",{"2":{"288":1}}],["bottom",{"2":{"93":1}}],["both",{"2":{"10":1,"19":1,"76":1}}],["box",{"2":{"25":2}}],["bar",{"2":{"115":1}}],["barrier",{"2":{"103":1}}],["back",{"0":{"57":1},"2":{"69":1,"189":1}}],["backend",{"2":{"52":2,"56":1,"65":1,"76":1,"83":5,"84":2,"164":1,"187":2,"190":1,"191":2,"242":2,"287":5}}],["bankkeeper",{"2":{"282":1,"283":1,"284":2}}],["bank",{"2":{"56":1,"57":2,"76":1,"83":2,"84":1,"191":2,"242":2,"243":2,"276":5}}],["balances",{"0":{"243":1},"2":{"56":2,"57":5,"83":2,"191":3,"243":3,"276":1}}],["balance",{"2":{"56":1,"57":1,"63":1,"83":4,"243":2}}],["batches",{"2":{"167":1,"171":1}}],["batch",{"2":{"52":2,"83":2}}],["battle",{"2":{"9":1}}],["basic",{"2":{"161":2,"203":1,"231":1,"264":1,"287":1}}],["basename",{"2":{"186":2}}],["baseaccount",{"2":{"142":1}}],["baseurl=http",{"2":{"39":1}}],["base",{"2":{"29":2,"30":3,"287":1}}],["based",{"2":{"10":1,"127":1}}],["bash7",{"2":{"251":1}}],["bashtext",{"2":{"205":1,"233":1}}],["bashtx",{"2":{"187":2}}],["bashmodify",{"2":{"201":1,"229":1}}],["bashmake",{"2":{"178":1}}],["bashname",{"2":{"191":1}}],["bashwordled",{"2":{"287":7}}],["bashwasmd",{"2":{"189":1,"191":1}}],["bashwget",{"2":{"45":1,"48":1}}],["bashopenssl",{"2":{"170":1,"195":1,"217":1,"223":1,"259":1}}],["bashosmosisd",{"2":{"56":1,"57":1}}],["bashosmo",{"2":{"56":1}}],["bashyour",{"2":{"170":2}}],["bashyarn",{"2":{"1":1,"209":1,"210":1}}],["bashaddress",{"2":{"252":1}}],["bashauth",{"2":{"170":1,"242":1}}],["bashanvil",{"2":{"163":1}}],["bashaccount",{"2":{"83":1,"84":1}}],["bashforge",{"2":{"160":1,"161":1,"163":1,"164":1,"254":1}}],["bashfoundryup",{"2":{"150":1}}],["bashentrypoint",{"2":{"240":1}}],["basherror",{"2":{"191":1}}],["bashethermintd",{"2":{"159":1}}],["bashexport",{"2":{"94":1,"96":2,"154":1,"155":1,"156":1,"159":1,"163":3,"164":1,"242":1,"254":2,"257":1}}],["bash1d7e98aec3085b615c7c71659768fa42e774a87ab5981597e99794d240fb3db5",{"2":{"156":1}}],["bash12",{"2":{"82":1,"241":1}}],["bashbitcoin",{"2":{"151":1,"152":1,"153":1,"155":1,"156":1,"157":2}}],["bashbalances",{"2":{"56":1,"243":2}}],["bashbash",{"2":{"45":1,"48":1,"154":1,"159":1,"181":1,"197":1,"198":1,"217":1,"218":1,"225":1,"226":1,"287":1}}],["bashsource",{"2":{"150":1}}],["bashsudo",{"2":{"148":2,"151":1,"186":2}}],["bashrollkit",{"2":{"240":1,"241":1,"242":2,"243":2,"263":1,"264":1}}],["bashready",{"2":{"210":1}}],["bashregister=",{"2":{"191":1}}],["bashrustup",{"2":{"176":1}}],["bashrust",{"2":{"176":1}}],["bashrm",{"2":{"158":1,"168":1,"196":1,"216":1,"224":1}}],["bashrc",{"2":{"149":3,"150":1}}],["bashrly",{"2":{"51":1,"52":1,"53":1,"54":3,"55":1,"83":7}}],["bashver=",{"2":{"149":1}}],["bashversion",{"2":{"51":1}}],["bashprivate",{"2":{"164":1}}],["bashpython3",{"2":{"94":1}}],["bashpip",{"2":{"90":1}}],["bashgo",{"2":{"274":1}}],["bashgit",{"2":{"83":1,"159":1,"178":1,"184":1,"209":1}}],["bashgmd",{"2":{"41":2,"56":1,"57":2,"67":1,"69":1,"76":1,"82":1,"83":2,"171":1,"205":1,"233":1}}],["bash4980",{"2":{"155":1}}],["bash4",{"2":{"64":1}}],["bashi",{"2":{"264":1}}],["bashignite",{"2":{"201":1,"229":1,"270":1,"271":1,"276":1,"278":2,"280":2}}],["bashinit=",{"2":{"190":1}}],["bashinfo",{"2":{"176":1}}],["bashinterface",{"2":{"30":1}}],["bashibc",{"2":{"57":1}}],["bash2024",{"2":{"54":1}}],["bashkeyname",{"2":{"49":2}}],["bashconfirm",{"2":{"287":1}}],["bashcode",{"2":{"189":1,"287":1}}],["bashcargo",{"2":{"185":1}}],["bashcast",{"2":{"97":2,"163":2,"164":2,"255":2}}],["bashcalldata=$",{"2":{"97":1}}],["bashcd",{"2":{"45":2,"47":1,"51":1,"65":1,"92":2,"96":3,"169":1,"239":1,"248":1,"250":1,"253":1,"254":1,"256":2,"260":1,"261":1,"272":1}}],["bashcurl",{"2":{"45":1,"79":1,"150":1,"175":1,"176":1,"179":1,"208":1,"237":1,"238":1,"249":1,"263":1,"270":1,"286":1}}],["bashdeip",{"2":{"191":1}}],["bashdocker",{"2":{"45":1,"247":1,"259":1}}],["bashda",{"2":{"39":1,"170":2}}],["bash3",{"2":{"39":1}}],["bash",{"0":{"181":1},"2":{"19":4,"37":1,"39":1,"40":2,"45":1,"58":2,"62":1,"79":1,"80":2,"81":2,"149":3,"150":1,"154":1,"161":1,"169":1,"175":1,"179":1,"181":1,"191":2,"195":1,"208":1,"217":1,"223":1,"238":1,"239":1,"242":2,"249":1,"260":1,"270":1,"287":1}}],["begin",{"2":{"251":1}}],["beginner",{"0":{"111":1}}],["beginning",{"2":{"39":1}}],["berachain",{"2":{"245":1,"248":1}}],["being",{"2":{"155":1,"287":1}}],["benefit",{"2":{"104":1}}],["below",{"2":{"17":1,"23":1,"24":2,"26":1,"88":1,"155":1,"176":2,"187":1,"191":2,"259":1}}],["behavior",{"2":{"16":1,"91":1}}],["because",{"2":{"63":1,"83":1,"90":2,"127":1,"186":1,"202":1,"230":1,"271":1,"287":2}}],["became",{"2":{"14":1}}],["become",{"2":{"14":2}}],["becoming",{"2":{"8":1}}],["beta",{"0":{"214":1},"1":{"215":1,"216":1,"217":1,"218":1},"2":{"166":1,"167":2,"170":3,"171":1,"172":1,"206":1,"215":1,"217":1,"219":1,"234":1,"258":1}}],["better",{"2":{"14":1,"187":1,"267":1}}],["between",{"2":{"8":1,"10":3,"42":1,"48":1,"50":3,"54":1,"55":1,"108":1,"121":1,"127":1,"134":2,"180":1,"276":1}}],["best",{"0":{"9":1}}],["been",{"2":{"8":1,"41":1,"56":1,"57":1,"140":1,"163":1,"164":1,"191":1,"201":1,"229":1,"245":1,"282":1,"283":1,"287":2}}],["be",{"0":{"11":1},"2":{"7":1,"9":2,"10":1,"16":2,"18":1,"19":1,"21":1,"23":1,"25":1,"26":1,"35":1,"36":1,"41":4,"54":1,"56":1,"74":1,"82":2,"83":1,"88":1,"89":1,"91":1,"96":1,"97":1,"98":1,"100":2,"103":4,"105":1,"107":1,"109":1,"117":1,"119":1,"120":1,"121":2,"122":1,"124":1,"130":1,"134":1,"140":3,"142":2,"156":1,"157":1,"160":1,"170":1,"173":1,"176":1,"177":1,"186":1,"208":1,"211":1,"240":1,"242":1,"245":1,"256":1,"258":3,"259":1,"268":2,"271":1,"276":1,"279":2,"282":3,"283":3,"284":1,"288":1}}],["before",{"2":{"2":1,"21":1,"36":1,"45":1,"67":1,"81":1,"140":1,"166":1,"167":1,"176":1,"196":1,"208":1,"216":1,"224":1,"242":1,"246":1,"247":1,"256":1,"258":1,"260":1,"267":1,"268":1,"273":1,"287":2}}],["buffer",{"2":{"200":2,"228":2,"272":1}}],["business",{"2":{"103":1}}],["budget",{"2":{"12":1,"27":1}}],["button",{"2":{"74":1,"211":1}}],["but",{"2":{"10":1,"12":1,"48":1,"87":1,"90":1,"103":1,"120":1,"127":1,"135":1,"164":1,"182":1,"267":1,"268":1,"270":1,"271":1,"272":1}}],["bugs",{"2":{"7":1,"8":1,"60":1,"114":1}}],["builds",{"2":{"80":1,"238":1,"286":1}}],["build",{"0":{"9":1,"108":1},"2":{"3":1,"7":1,"18":2,"27":1,"58":1,"78":1,"81":1,"87":1,"90":1,"103":1,"107":1,"114":1,"146":2,"148":1,"149":1,"172":1,"173":1,"178":1,"236":1,"265":1,"266":1,"271":3,"274":1,"276":1,"286":1}}],["building",{"0":{"1":1,"81":1,"110":1,"169":1,"239":1,"287":1},"1":{"111":1,"112":1,"113":1,"114":1},"2":{"7":1,"8":1,"11":1,"58":1,"78":2,"109":1,"110":1,"236":2,"266":1,"270":1,"273":1}}],["built",{"2":{"1":1,"16":1,"85":1,"91":2,"94":1,"104":1,"107":1,"172":1,"173":1,"180":1,"193":1,"206":1,"221":1,"234":1,"244":1,"289":1}}],["briefly",{"2":{"105":1}}],["bring",{"2":{"104":1,"106":1}}],["bridge",{"2":{"8":1,"39":2}}],["bridging",{"2":{"8":1}}],["brew",{"2":{"81":1}}],["break",{"0":{"11":1}}],["broadcasting",{"2":{"126":1,"242":1,"287":1}}],["broadcast",{"2":{"52":2,"83":2,"96":2,"163":1,"164":1,"254":2}}],["broccoli",{"2":{"27":1}}],["browser",{"2":{"143":1,"207":1,"211":1}}],["browse",{"2":{"21":1}}],["brought",{"2":{"7":1}}],["branches",{"2":{"9":1,"120":1}}],["branch",{"2":{"2":3,"83":1,"248":1,"253":1,"260":1}}],["byte",{"2":{"282":3,"283":4}}],["bytecode",{"2":{"186":1}}],["bytes",{"2":{"170":2}}],["by",{"2":{"3":1,"7":5,"8":1,"9":1,"12":1,"14":3,"16":1,"18":1,"26":1,"27":1,"30":1,"39":1,"41":4,"48":1,"54":1,"62":2,"63":1,"66":1,"81":1,"87":1,"91":1,"93":1,"94":1,"99":2,"100":1,"104":5,"115":2,"122":1,"124":3,"125":1,"130":1,"131":1,"133":1,"134":2,"135":1,"141":1,"145":1,"151":1,"154":1,"163":1,"164":1,"169":1,"170":3,"171":1,"173":2,"175":1,"189":2,"190":1,"191":2,"195":1,"197":1,"201":1,"204":1,"217":2,"223":1,"225":1,"229":1,"232":1,"240":1,"245":1,"258":2,"259":1,"262":1,"263":1,"271":1,"272":1,"275":1,"279":1,"283":1,"287":1,"288":1}}],["cmd",{"2":{"240":3,"272":1}}],["ctx",{"2":{"203":3,"231":3,"282":4,"283":6,"284":1}}],["ctrl+c",{"2":{"154":1}}],["c147257485b72e7ffa5fdb943c94ce951a37817554339586ffd645ad2aa397c3",{"2":{"191":1}}],["csrjjpfudtnftzgho69v0d",{"2":{"170":1}}],["certain",{"2":{"268":1}}],["censorship",{"2":{"131":1}}],["centralized",{"2":{"109":1,"131":1}}],["celenium",{"2":{"142":1,"217":2,"261":1}}],["celestiaorg",{"2":{"159":1}}],["celestia1jqevcsld0dqpjp3csfg7alkv3lehvn8u04ymsu",{"2":{"83":2}}],["celestia",{"0":{"83":1,"122":1,"165":1,"167":1,"171":1,"193":1,"194":1,"214":1,"215":1,"221":1,"222":1,"247":1,"258":1},"1":{"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"200":1,"201":1,"202":1,"203":1,"204":1,"205":1,"215":1,"216":1,"217":1,"218":1,"222":1,"223":1,"224":1,"225":1,"226":1,"227":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1,"259":1,"260":1,"261":1},"2":{"15":1,"34":1,"35":1,"39":8,"45":2,"63":4,"65":2,"82":2,"83":4,"87":2,"98":1,"100":2,"104":1,"110":2,"113":1,"114":1,"117":1,"122":5,"166":2,"167":1,"169":1,"170":3,"171":1,"172":1,"193":1,"194":1,"198":1,"206":1,"213":1,"215":2,"217":2,"218":1,"219":1,"221":1,"222":1,"226":1,"234":1,"245":2,"247":2,"258":2,"259":10,"260":2,"261":1,"289":1}}],["cel",{"2":{"65":1}}],["cpu",{"2":{"147":1}}],["cp",{"2":{"96":2,"256":1}}],["circom",{"2":{"92":1,"96":1,"97":1}}],["circuit",{"0":{"91":1,"94":1},"1":{"92":1,"93":1,"94":1},"2":{"87":3,"91":2,"92":6,"93":6,"94":6,"96":1,"97":2,"98":1}}],["c3e53d20bc7a4cc993b17c7971f8ecd06a433c10b6a96f4c4c3714f0624c56da",{"2":{"82":1,"83":1,"84":1}}],["c",{"2":{"66":1,"69":1,"81":1,"149":1,"217":1,"239":1}}],["c053d637cca2a2ba030e2c5ee1b28a16f71ccb0e45e8be52766dc1b241b77878",{"2":{"56":1}}],["cb1fa1d3309513fc6c8599606defe75164f4cae2abd101d78133b287862a5aca",{"2":{"54":1}}],["cd",{"2":{"37":1,"47":1,"51":1,"65":1,"80":1,"81":1,"83":1,"149":1,"159":1,"160":1,"178":1,"184":2,"201":1,"209":1,"229":1,"248":1,"253":1}}],["cutting",{"2":{"104":1}}],["cumulativegasused",{"2":{"97":1}}],["curl",{"2":{"80":1,"81":1,"148":1,"170":1,"208":1,"239":1,"260":1}}],["currentcount",{"2":{"283":2}}],["currenttimeguesserhashstring",{"2":{"283":4}}],["currenttimeguesserhash",{"2":{"283":2}}],["currenttimeguesserbytes",{"2":{"283":2}}],["currenttimehashstring",{"2":{"282":3,"283":2}}],["currenttimehash",{"2":{"282":2,"283":2}}],["currenttimebytes",{"2":{"282":2,"283":2}}],["currenttime",{"2":{"282":2,"283":3}}],["currently",{"2":{"109":2,"114":2,"124":1,"126":1,"130":1,"135":1,"159":1,"203":1,"231":1,"282":1,"287":1}}],["current",{"2":{"26":2,"134":2,"155":1,"176":2,"240":1,"245":1,"268":1,"282":4,"283":7,"287":1,"288":1}}],["customizing",{"2":{"272":1}}],["customizability",{"0":{"102":1},"2":{"104":1}}],["customizable",{"2":{"99":1,"104":1,"115":2}}],["customize",{"2":{"10":1,"18":2,"75":1,"104":1,"115":1,"145":1,"146":2}}],["custom",{"2":{"9":1,"15":1,"17":1,"26":1,"48":1,"74":1,"94":1,"106":1,"145":1,"272":1}}],["cfg",{"2":{"25":2}}],["cw1",{"2":{"30":2}}],["cw20",{"2":{"29":3,"30":6}}],["cwenv",{"2":{"25":1}}],["cw",{"0":{"20":1,"24":1},"1":{"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1},"2":{"21":6,"22":2,"23":1,"24":4,"25":2,"26":7,"27":1,"28":2,"29":1,"30":2,"32":2,"59":1,"184":3,"185":1,"186":2,"187":4,"188":1}}],["cast",{"2":{"163":2,"164":2,"257":1}}],["cases",{"2":{"41":1,"104":1,"140":1}}],["case",{"2":{"15":1,"62":1,"63":1,"69":1,"104":1,"117":1,"140":2,"158":1,"189":1,"276":1}}],["capabilities",{"2":{"116":1,"126":1,"276":1}}],["capability=2",{"2":{"39":1}}],["capability",{"2":{"39":1}}],["capital",{"2":{"103":1}}],["calculate",{"2":{"82":1}}],["calldata=true",{"2":{"93":1}}],["calldata",{"2":{"93":15,"94":3,"97":3}}],["calls",{"2":{"26":1,"200":2,"228":2}}],["call",{"2":{"16":1,"97":2,"110":1,"163":2,"164":2,"255":1}}],["called",{"2":{"16":1,"186":1,"198":1,"218":1,"226":1,"271":1,"280":1,"281":1}}],["cache",{"2":{"52":1,"83":1,"186":4}}],["cat",{"2":{"97":1}}],["catalog",{"2":{"27":1}}],["catch",{"2":{"21":1}}],["cargo",{"0":{"24":1},"2":{"22":1,"24":1,"30":4,"176":5,"184":1,"186":2}}],["canary",{"2":{"142":1}}],["candidate",{"2":{"54":2,"210":1}}],["canonical",{"2":{"7":1}}],["can",{"0":{"105":1,"109":1},"1":{"106":1,"107":1,"108":1},"2":{"7":2,"8":1,"9":2,"14":2,"15":1,"16":3,"19":1,"24":1,"25":2,"26":1,"27":2,"28":1,"30":1,"31":1,"32":1,"36":1,"38":1,"41":2,"45":2,"48":1,"50":2,"54":1,"55":1,"62":2,"65":1,"66":1,"70":1,"75":2,"76":2,"81":1,"82":1,"88":1,"92":1,"97":2,"99":1,"100":3,"103":2,"104":4,"107":2,"109":1,"110":1,"119":2,"120":1,"121":2,"122":1,"124":1,"130":2,"131":1,"134":4,"140":2,"142":3,"151":1,"158":1,"161":2,"162":1,"163":4,"164":5,"167":1,"170":1,"171":1,"173":1,"175":1,"181":3,"182":1,"185":1,"187":2,"188":1,"189":1,"191":1,"194":1,"195":3,"197":1,"210":1,"215":1,"217":1,"222":1,"223":3,"225":1,"240":1,"241":1,"246":1,"247":1,"252":1,"256":2,"258":3,"259":2,"265":1,"268":1,"270":2,"275":1,"277":1,"282":2,"283":3,"287":5,"288":7}}],["checked",{"2":{"283":1}}],["checking",{"0":{"243":1},"2":{"263":1}}],["checks",{"2":{"125":1,"140":1,"283":1}}],["checktx",{"2":{"124":1}}],["check",{"2":{"56":1,"57":1,"97":1,"98":1,"114":1,"133":1,"149":1,"151":1,"155":1,"156":1,"173":1,"203":1,"231":1,"253":1,"258":1,"270":1,"282":4,"283":5,"287":1}}],["checkout",{"2":{"47":1,"51":1,"159":1,"178":1,"248":1,"253":1,"260":1}}],["cheaper",{"2":{"14":1}}],["choosing",{"2":{"19":1}}],["choose",{"2":{"10":3,"27":1,"74":1,"109":1}}],["choice",{"2":{"10":2,"131":3}}],["characters",{"2":{"170":1,"195":2,"217":2,"223":2,"282":1,"283":3,"287":1}}],["challenging",{"2":{"103":1}}],["challenges",{"2":{"103":1,"104":1}}],["changing",{"2":{"64":1,"69":1}}],["changed",{"2":{"19":1,"50":1,"256":1}}],["change",{"0":{"19":1},"2":{"21":1,"45":1,"48":1,"59":1,"120":1,"160":1,"164":1,"256":2,"258":1,"260":1,"261":1,"270":1,"281":1}}],["changes",{"2":{"2":4,"200":1,"228":1,"274":1}}],["channel",{"0":{"54":1},"2":{"54":17,"56":3,"57":1,"82":3,"83":6,"125":2}}],["channels",{"2":{"50":2,"83":1,"125":1}}],["chain=regtest",{"2":{"152":1}}],["chains",{"2":{"8":1,"32":1,"42":1,"48":1,"52":1,"54":1,"83":1,"103":2,"104":1,"110":1}}],["chain",{"0":{"45":1,"56":1,"57":1,"97":1,"153":1,"168":1,"196":1,"197":1,"216":1,"224":1,"225":1,"269":1,"271":1,"285":1,"287":1},"1":{"270":1,"271":1,"272":1,"286":1,"287":1,"288":1},"2":{"7":3,"10":1,"11":2,"14":1,"18":2,"19":1,"25":2,"27":4,"36":1,"45":3,"48":1,"49":2,"52":2,"53":1,"54":20,"56":4,"57":1,"58":1,"62":2,"63":1,"64":1,"66":1,"67":1,"69":2,"76":1,"83":5,"84":1,"87":1,"94":1,"95":1,"97":1,"100":1,"103":2,"104":1,"107":2,"114":1,"140":3,"142":2,"158":1,"159":3,"164":2,"187":2,"190":1,"191":1,"201":1,"202":1,"229":1,"230":1,"239":1,"240":3,"242":1,"250":1,"252":1,"271":2,"272":1,"276":1,"287":6,"288":2}}],["critical",{"2":{"103":1,"242":1,"287":1}}],["creator",{"2":{"191":1,"282":2,"283":3,"287":1}}],["creative",{"2":{"170":1,"195":1,"217":1,"223":1,"259":1}}],["creation",{"2":{"25":1}}],["creating",{"0":{"25":1,"30":1,"76":1,"275":1},"1":{"276":1},"2":{"22":2,"25":1,"50":1,"82":1,"145":1,"241":1,"251":1,"264":1,"271":3,"277":1,"279":1}}],["createwallet",{"2":{"153":1}}],["created",{"2":{"54":2,"127":1,"140":1,"160":1,"191":1,"201":1,"229":1,"279":1,"283":1}}],["creates",{"2":{"54":1,"169":1,"278":1}}],["create",{"0":{"50":1,"53":1,"54":1,"153":1,"201":1,"229":1},"1":{"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"57":1},"2":{"2":3,"12":1,"30":1,"42":1,"45":1,"48":1,"54":3,"62":1,"71":1,"74":1,"76":1,"83":3,"87":1,"100":1,"106":1,"107":1,"145":3,"146":1,"153":1,"160":1,"161":1,"200":1,"201":3,"228":1,"229":3,"272":1,"278":2,"281":1,"282":2,"283":2,"288":2}}],["crates",{"2":{"29":1,"30":1}}],["crater",{"2":{"27":1}}],["crate",{"0":{"30":1},"2":{"21":1,"22":1,"25":6,"26":1,"27":1,"30":2}}],["cross",{"2":{"21":1,"187":1,"281":1}}],["crypto",{"2":{"7":1,"242":3,"282":3,"283":3}}],["clang",{"2":{"148":1}}],["classes",{"2":{"100":1}}],["clay",{"2":{"49":2,"53":2}}],["claimed",{"2":{"39":1}}],["clarity",{"2":{"2":1}}],["cleaning",{"0":{"168":1}}],["clean",{"2":{"21":1,"178":1}}],["clear",{"0":{"196":1,"216":1,"224":1},"2":{"2":1,"14":1,"158":1,"168":1}}],["cloning",{"0":{"209":1}}],["clone",{"0":{"37":1,"92":1,"248":1},"2":{"1":1,"2":2,"37":1,"47":1,"51":1,"83":1,"92":2,"159":2,"178":1,"184":1,"209":2,"248":2,"253":2}}],["cloud",{"2":{"142":2}}],["close",{"2":{"14":1,"57":1}}],["clip",{"2":{"27":1}}],["cli",{"0":{"263":1},"2":{"9":1,"45":1,"119":1,"142":1,"151":1,"153":1,"154":4,"155":1,"156":1,"157":2,"188":1,"201":2,"203":3,"229":2,"231":3,"237":1,"258":2,"262":1,"264":1,"266":1,"270":3,"271":2,"272":1,"283":1,"286":1}}],["clients",{"2":{"7":1,"8":1,"42":2,"50":1,"54":1,"83":1,"104":1,"117":1,"131":1}}],["client",{"2":{"7":1,"9":1,"16":1,"27":1,"39":3,"54":14,"82":5,"83":2,"100":2,"119":1,"120":1,"201":2,"203":2,"210":1,"229":2,"231":2,"241":5}}],["click",{"2":{"7":1,"74":1,"131":1,"143":1,"211":1}}],["copies",{"2":{"181":1,"195":1,"223":1,"287":1}}],["copy",{"2":{"96":2,"181":1,"195":1,"223":1,"287":1}}],["collect",{"2":{"117":1,"142":1}}],["collection",{"2":{"30":1}}],["cool",{"0":{"91":1},"1":{"92":1,"93":1,"94":1}}],["coins",{"2":{"242":1,"282":1,"283":1,"284":1}}],["coinbase=$",{"2":{"154":1}}],["coin",{"2":{"52":2,"83":2,"276":1}}],["covers",{"2":{"62":1,"63":1,"166":1}}],["cover",{"2":{"33":1,"78":1,"117":1,"236":1}}],["coyote",{"2":{"27":1}}],["correctly",{"2":{"268":1,"283":2}}],["correct",{"2":{"260":1,"268":2,"283":2,"287":1,"288":1}}],["correlation",{"2":{"121":1}}],["corresponding",{"2":{"25":1,"56":1,"91":1,"125":1}}],["corner",{"2":{"74":1}}],["core",{"2":{"8":1,"16":1,"41":2,"54":8,"145":1,"147":1,"151":3,"152":1,"153":1,"154":4,"155":1,"156":1,"157":2,"259":1,"281":2}}],["codebase",{"2":{"266":1,"268":1,"273":1,"288":1}}],["codes",{"2":{"203":2,"231":2}}],["codespace",{"2":{"64":3,"191":1,"287":1}}],["codecs",{"2":{"52":2,"83":2}}],["code",{"0":{"87":1},"2":{"21":3,"25":1,"28":1,"54":1,"63":2,"64":3,"67":1,"84":1,"92":1,"93":7,"94":2,"141":1,"161":2,"162":1,"186":4,"187":1,"189":4,"191":6,"271":1,"275":1,"282":2,"283":2,"284":1,"287":1}}],["counts",{"2":{"283":1}}],["count",{"2":{"21":5,"26":8,"27":5,"161":7,"280":3,"283":12,"287":1}}],["counterscript",{"2":{"162":1,"163":1,"164":1}}],["countertest",{"2":{"161":1}}],["counterparty",{"2":{"54":4}}],["counterquerymsgfns",{"2":{"26":1,"27":1}}],["counterexecutemsgfns",{"2":{"26":1,"27":1}}],["countercontract",{"2":{"25":3,"27":2}}],["counter",{"2":{"21":3,"23":1,"25":2,"26":2,"27":7,"32":1,"160":1,"161":16,"162":4,"163":1,"164":1}}],["council",{"2":{"8":1}}],["could",{"2":{"14":1,"19":1,"105":1,"107":1,"170":1,"195":1,"217":1,"223":1,"240":1,"259":1}}],["couple",{"2":{"10":1}}],["cost",{"2":{"18":1,"97":1}}],["costs",{"2":{"8":1,"104":1}}],["cosmwasm",{"0":{"141":1,"173":1,"174":1,"180":1,"181":1,"183":1,"188":1},"1":{"142":1,"143":1,"174":1,"175":2,"176":2,"177":2,"178":2,"179":2,"180":1,"181":2,"182":2,"183":1,"184":2,"185":2,"186":2,"187":2,"188":1,"189":2,"190":2,"191":2},"2":{"9":1,"17":1,"21":1,"25":1,"112":1,"141":2,"142":1,"173":3,"178":2,"181":3,"182":1,"186":3,"191":2}}],["cosmos17lk3fgutf00pd5s8zwz5fmefjsdv4wvzyg7d74",{"2":{"287":1}}],["cosmossdk",{"2":{"282":1,"283":1}}],["cosmos",{"0":{"107":1,"120":1},"2":{"7":4,"9":4,"10":1,"17":1,"45":3,"51":2,"52":2,"54":4,"63":1,"78":2,"83":3,"99":2,"107":4,"109":1,"110":1,"120":5,"142":2,"173":2,"178":4,"200":3,"212":1,"228":3,"236":2,"242":4,"266":1,"267":3,"270":2,"271":2,"272":2,"274":3,"275":4,"276":1,"277":3,"281":3,"282":4,"283":4,"287":2,"289":1}}],["convert",{"2":{"283":1}}],["convenience",{"2":{"242":1}}],["convincing",{"2":{"8":1}}],["connected",{"0":{"171":1},"2":{"211":1}}],["connects",{"2":{"127":1,"209":1}}],["connect",{"2":{"110":1,"169":1,"178":1,"208":1,"211":3,"259":1}}],["connecting",{"0":{"83":1,"211":1},"2":{"166":1,"207":2,"212":1,"289":1}}],["connection=consensus",{"2":{"82":1,"241":1}}],["connection=mempool",{"2":{"82":1,"241":1}}],["connection=snapshot",{"2":{"82":1,"241":1}}],["connection=query",{"2":{"82":1,"241":1}}],["connection",{"0":{"42":1,"50":1},"1":{"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":2,"52":2,"53":2,"54":2,"55":2,"56":2,"57":2},"2":{"42":1,"45":1,"48":1,"54":9,"59":1,"82":1,"83":3,"109":1,"170":1,"211":1}}],["connections",{"2":{"39":1,"50":1,"82":1,"241":1}}],["condition",{"2":{"54":2}}],["conditional",{"2":{"42":2}}],["confirm",{"2":{"242":2,"287":3}}],["confirming",{"2":{"211":1,"287":4}}],["confirmations",{"2":{"131":1}}],["config=",{"2":{"159":1}}],["config",{"0":{"52":1},"2":{"52":4,"83":3,"148":1,"152":1,"239":1,"240":4,"264":3,"272":1}}],["configurable",{"2":{"125":1}}],["configuration",{"2":{"3":1,"52":1,"170":1,"272":1}}],["configuring",{"0":{"170":1,"240":1},"2":{"78":1,"171":1,"236":1}}],["configures",{"2":{"41":2}}],["configured",{"2":{"41":2,"127":1}}],["configure",{"0":{"41":1},"2":{"10":1,"59":1,"83":1,"176":1}}],["conflicts",{"2":{"48":1}}],["congrats",{"2":{"69":1,"74":1,"76":1}}],["congratulations",{"0":{"98":1,"251":1},"2":{"40":1,"85":1,"94":1,"98":1,"159":1,"172":1,"206":1,"212":1,"219":1,"234":1,"244":1,"261":1,"289":1}}],["congestion",{"2":{"41":1}}],["console",{"2":{"153":1}}],["consist",{"2":{"282":1,"283":1}}],["consists",{"2":{"134":1}}],["consider",{"2":{"140":1,"212":1,"268":1}}],["constructor",{"2":{"161":1}}],["constants",{"2":{"79":1,"80":1,"208":2,"237":1,"238":1,"263":1,"270":1,"274":1,"286":1}}],["const",{"2":{"25":1,"27":1}}],["consensus",{"2":{"7":1,"8":1,"15":2,"18":1,"63":1,"87":1,"103":1,"104":1,"140":1,"142":1,"245":1}}],["conclude",{"2":{"266":1}}],["conclusion",{"0":{"18":1,"265":1}}],["concept",{"2":{"100":1}}],["concise",{"2":{"2":1}}],["context",{"2":{"203":5,"231":5,"282":3,"283":3,"284":1}}],["contents",{"0":{"6":1},"2":{"97":1,"181":1,"195":1,"223":1,"283":1,"287":1}}],["content",{"2":{"2":1,"5":1,"6":1,"25":1,"52":1}}],["continue",{"2":{"176":1,"273":1,"283":1}}],["continuation",{"2":{"89":1}}],["contained",{"2":{"277":1}}],["contain",{"2":{"121":1,"200":1,"228":1}}],["contains",{"2":{"90":1,"92":1,"125":1,"134":1,"141":1,"202":1,"203":2,"230":1,"231":2,"272":1,"275":1,"281":1,"282":1,"283":1}}],["contribute",{"2":{"116":1}}],["contributions",{"2":{"2":1}}],["contribution",{"0":{"2":1},"2":{"2":2}}],["contract=$",{"2":{"191":1}}],["contracting",{"2":{"173":1}}],["contracttest",{"2":{"161":1}}],["contractaddress",{"2":{"97":1}}],["contractwrapper",{"2":{"25":1}}],["contracts",{"0":{"31":1,"75":1},"2":{"9":1,"21":4,"22":1,"25":1,"29":1,"30":3,"31":1,"32":1,"71":1,"75":1,"96":4,"159":1,"161":1,"173":1,"184":3,"185":2,"186":2,"187":3,"189":2,"191":2,"254":1,"256":2}}],["contract",{"0":{"23":1,"95":1,"97":1,"161":1,"183":1,"184":1,"186":1,"187":1,"188":1,"189":1,"190":1,"191":1,"254":1,"255":1},"1":{"24":1,"25":1,"26":1,"27":1,"96":1,"184":1,"185":1,"186":1,"187":1,"189":1,"190":1,"191":1},"2":{"8":1,"21":2,"22":1,"23":2,"24":2,"25":13,"26":2,"27":5,"29":2,"30":1,"32":1,"59":1,"87":1,"93":10,"94":3,"95":1,"96":10,"97":4,"99":1,"100":1,"102":2,"104":2,"115":2,"160":1,"161":4,"162":3,"163":5,"164":6,"173":3,"177":1,"184":2,"186":1,"187":3,"188":2,"189":3,"190":2,"191":11,"252":1,"253":1,"254":7,"255":1,"256":5,"257":1}}],["controls",{"2":{"125":1}}],["control",{"0":{"8":1},"2":{"66":1,"69":1,"131":1,"217":1}}],["coming",{"2":{"109":1,"271":1}}],["com",{"2":{"45":3,"47":1,"51":1,"83":2,"92":1,"159":1,"178":3,"184":1,"209":1,"245":1,"248":1,"253":1,"270":1,"274":2,"282":3,"283":3}}],["combination",{"2":{"10":1}}],["combine",{"2":{"7":1}}],["come",{"2":{"8":1,"49":2,"53":2,"104":1,"124":1,"131":1}}],["comes",{"2":{"7":1,"8":1,"9":1,"271":2}}],["cometbft",{"2":{"7":1,"9":2,"82":1,"100":1,"119":1,"120":3,"124":1,"126":1,"178":2,"241":1,"266":1,"282":2,"283":2,"287":1}}],["computational",{"2":{"102":1,"104":2}}],["compiling",{"2":{"96":2,"148":1,"161":2,"177":1,"254":2}}],["compiled",{"2":{"184":1,"186":1,"210":1,"272":1}}],["compiler",{"2":{"96":1,"161":1,"254":1}}],["compile",{"0":{"184":1},"2":{"93":1,"94":3,"184":1,"186":1,"284":1}}],["compat=1",{"2":{"178":1}}],["compatibility",{"2":{"9":1,"45":1,"119":1}}],["compatible",{"2":{"7":1,"10":1,"21":1,"97":1,"100":2,"106":1,"107":1}}],["comparing",{"2":{"134":1}}],["compare",{"2":{"97":1}}],["compact",{"2":{"87":1}}],["complex",{"2":{"103":1}}],["complexity",{"2":{"23":1}}],["completions",{"2":{"149":1}}],["completion",{"2":{"134":1}}],["completing",{"2":{"55":1}}],["completed",{"2":{"166":1,"193":1,"208":1,"213":1,"221":1}}],["complete",{"2":{"28":1,"35":1,"72":1,"179":1}}],["component",{"2":{"176":2}}],["components",{"0":{"123":1},"1":{"124":1,"125":1,"126":1,"127":1},"2":{"10":1,"104":3,"116":1,"117":1,"267":1}}],["composability",{"2":{"8":1,"131":1}}],["compelled",{"2":{"8":1}}],["comprehensive",{"2":{"0":1,"116":1,"166":1}}],["comma",{"2":{"201":1,"229":1}}],["commands",{"2":{"54":1,"149":1,"151":1,"160":1,"176":2,"181":1,"184":1,"187":1,"195":1,"223":1,"270":1,"271":1,"283":1,"287":1}}],["command",{"2":{"19":1,"24":1,"30":1,"52":1,"53":1,"54":2,"56":1,"57":1,"58":2,"62":2,"81":1,"94":1,"142":1,"157":1,"158":1,"161":1,"170":2,"181":1,"185":1,"186":1,"187":4,"195":1,"197":1,"201":1,"203":2,"205":1,"208":1,"210":1,"217":1,"223":1,"225":1,"229":1,"231":2,"233":1,"257":1,"259":2,"263":1,"270":1,"271":3,"274":1,"276":1,"278":1,"287":1}}],["comment",{"2":{"178":1}}],["common",{"2":{"155":1}}],["communicates",{"2":{"180":1}}],["communicate",{"2":{"50":1,"125":1,"136":1}}],["communication",{"2":{"42":1,"50":1,"127":1}}],["communities",{"2":{"18":1,"104":1}}],["community",{"2":{"2":1,"4":1,"7":1,"8":1,"103":1}}],["commit",{"2":{"2":3,"51":1,"142":2,"263":1}}],["switch",{"2":{"248":1}}],["swcmin",{"2":{"210":1}}],["swc",{"2":{"210":1}}],["sweet",{"2":{"27":1}}],["snap",{"2":{"151":1}}],["snapd",{"2":{"148":1}}],["ssf",{"2":{"176":1}}],["ssd",{"2":{"147":1}}],["ssl",{"2":{"79":1,"80":1,"81":1,"175":1,"179":1,"208":1,"237":1,"238":1,"239":1,"263":1,"286":1}}],["skills",{"2":{"145":1}}],["skip",{"2":{"7":1,"9":1,"99":1,"109":1,"182":1}}],["system",{"2":{"134":1}}],["systems",{"2":{"104":1,"176":1}}],["symbol",{"2":{"83":2}}],["syncloop",{"2":{"125":3}}],["syncing",{"2":{"121":1}}],["sync",{"2":{"54":2,"167":1,"194":1,"215":1,"222":1,"259":1,"287":1}}],["syncs",{"2":{"34":2}}],["synced",{"2":{"16":1,"215":1,"222":1,"258":1,"259":1}}],["small",{"2":{"177":1,"186":1}}],["smart",{"0":{"95":1,"184":1,"186":1},"1":{"96":1},"2":{"9":1,"21":2,"23":1,"25":1,"59":1,"87":1,"93":10,"94":3,"95":1,"96":2,"97":1,"99":1,"100":1,"102":2,"104":2,"115":2,"159":1,"160":1,"162":1,"164":1,"173":4,"177":1,"184":1,"186":1,"187":2,"191":2,"252":1,"253":1,"254":2,"256":1}}],["smoothly",{"2":{"50":1}}],["src",{"2":{"30":1,"54":3,"83":3,"96":3,"160":1,"161":2,"162":1,"256":1}}],["sleep",{"2":{"154":1}}],["slashing",{"2":{"140":1,"275":1}}],["slow",{"2":{"19":1}}],["slightly",{"2":{"14":1}}],["slinky",{"2":{"7":1,"9":1}}],["say",{"0":{"200":1,"228":1},"1":{"201":1,"202":1,"203":1,"204":1,"205":1,"229":1,"230":1,"231":1,"232":1,"233":1},"2":{"200":1,"228":1}}],["save",{"2":{"62":1,"69":1,"93":3,"94":2,"97":1}}],["satisfy",{"2":{"16":1}}],["sample",{"2":{"71":1,"76":1}}],["samplingstats",{"2":{"258":1}}],["sampling",{"2":{"8":1}}],["same",{"2":{"7":1,"8":1,"34":1,"39":1,"41":1,"63":1,"83":1,"108":1,"127":1,"141":1,"191":1,"201":1,"202":1,"229":1,"230":1,"287":4}}],["side",{"2":{"212":1}}],["similarly",{"2":{"107":1}}],["similar",{"2":{"62":1,"96":1,"133":1,"155":1,"161":1,"170":1,"176":2,"191":2,"195":1,"217":1,"223":1,"240":1,"251":1,"254":1,"259":1}}],["simplicity",{"2":{"268":1}}],["simplify",{"2":{"21":1,"25":1,"26":2}}],["simpler",{"2":{"50":1}}],["simple",{"2":{"21":1,"23":1,"81":1,"209":1,"212":1,"239":1,"265":1,"266":1,"268":1}}],["simply",{"2":{"16":1,"169":1,"170":2,"211":1}}],["size",{"2":{"52":1,"83":2}}],["signer",{"2":{"242":1,"287":1}}],["signaled",{"2":{"125":1}}],["signal",{"2":{"125":1}}],["signatures",{"2":{"142":1,"242":1,"287":1}}],["signature",{"2":{"42":1,"142":1}}],["significant",{"2":{"103":1}}],["significantly",{"2":{"21":1}}],["signing",{"2":{"52":2,"83":2,"242":1,"287":1}}],["sign",{"2":{"52":2,"83":2,"242":1}}],["sister",{"2":{"27":1}}],["sindri",{"0":{"86":1,"90":1,"91":1,"94":1},"1":{"87":1,"88":1,"89":1,"90":1,"91":1,"92":2,"93":2,"94":2,"95":1,"96":1,"97":1,"98":1},"2":{"87":4,"88":2,"90":3,"91":1,"92":7,"93":3,"94":7,"96":1,"97":1,"98":2}}],["single",{"0":{"23":1,"31":1},"1":{"24":1,"25":1,"26":1,"27":1},"2":{"22":2,"25":1,"31":1,"42":1,"94":1,"114":1,"134":1,"287":1}}],["since",{"2":{"14":1,"129":1,"189":1,"208":1}}],["site",{"0":{"0":1,"1":1},"1":{"1":1,"2":1,"3":1,"4":1},"2":{"1":1}}],["shell",{"2":{"154":1,"176":2}}],["shellcargo",{"2":{"24":1,"30":2}}],["sharing",{"2":{"104":1,"108":1}}],["share",{"2":{"8":1,"102":1,"104":1,"108":1}}],["shared",{"2":{"7":1,"10":1,"99":1,"102":2,"104":1,"115":2,"131":1}}],["sha256",{"2":{"82":1,"282":3,"283":4}}],["shda",{"2":{"38":1}}],["sh",{"2":{"36":1,"37":1,"39":2,"40":1,"45":2,"48":3,"62":8,"79":1,"80":1,"81":3,"154":2,"159":1,"164":3,"169":2,"175":1,"176":2,"179":1,"181":4,"187":1,"195":4,"197":1,"198":3,"204":1,"208":1,"217":4,"218":3,"223":4,"225":1,"226":3,"232":1,"237":2,"238":1,"239":1,"260":1,"263":2,"286":2,"287":4}}],["should",{"2":{"51":1,"54":1,"56":1,"57":1,"74":1,"82":1,"83":1,"89":1,"168":1,"176":1,"210":1,"237":1,"240":2,"241":1,"242":1,"243":1,"270":2,"287":1}}],["showcasing",{"2":{"207":1}}],["showcase",{"2":{"32":1}}],["show",{"2":{"32":1,"39":1,"83":2,"84":1,"87":1,"188":1,"243":1,"268":1}}],["shows",{"2":{"28":1,"268":1,"287":2}}],["shown",{"2":{"24":1,"287":1}}],["short",{"2":{"14":1}}],["spinning",{"2":{"131":2}}],["spikes",{"2":{"41":1}}],["spoiler",{"2":{"109":1}}],["spots",{"2":{"28":1}}],["spdx",{"2":{"96":1,"161":2,"162":1}}],["split",{"2":{"10":1}}],["speed",{"0":{"19":1,"20":1},"1":{"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1},"2":{"19":2,"22":1,"59":1,"99":1}}],["spec",{"2":{"272":1}}],["special",{"2":{"108":1,"276":1}}],["specialized",{"2":{"104":1}}],["specified",{"2":{"82":1,"241":1}}],["specifically",{"2":{"134":1,"171":1,"271":1}}],["specifications",{"0":{"116":1},"2":{"116":1}}],["specifics",{"2":{"25":1}}],["specific",{"2":{"16":1,"56":1,"59":1,"76":1,"78":1,"106":1,"127":1,"177":1,"236":1,"272":1,"275":1,"277":1,"288":2}}],["specifying",{"2":{"190":1}}],["specify",{"2":{"54":1}}],["specs",{"2":{"16":1}}],["speak",{"2":{"9":1}}],["spending",{"2":{"8":1}}],["scope",{"2":{"173":1,"272":1}}],["scheme",{"2":{"140":1}}],["schemes",{"2":{"10":1,"104":1,"131":1}}],["scalability",{"0":{"102":1},"2":{"87":1,"102":1,"104":2}}],["scalable",{"2":{"7":1,"145":1}}],["scaffolds",{"2":{"271":1}}],["scaffoldings",{"2":{"270":1}}],["scaffolding",{"0":{"269":1,"271":1,"276":1,"278":1,"280":1},"1":{"270":1,"271":1,"272":1},"2":{"271":1}}],["scaffolded",{"2":{"203":1,"231":1}}],["scaffold",{"2":{"45":2,"201":1,"229":1,"271":1,"276":2,"278":2,"280":2}}],["script",{"0":{"37":1,"162":1,"181":1,"182":1,"260":1},"2":{"36":1,"37":1,"38":1,"39":3,"40":1,"45":1,"48":3,"62":3,"79":1,"80":1,"81":3,"93":1,"94":1,"96":9,"154":4,"162":5,"163":2,"164":4,"169":1,"175":1,"181":3,"182":1,"187":2,"193":1,"195":3,"197":1,"198":2,"204":1,"217":3,"218":2,"221":1,"223":3,"225":1,"226":2,"232":1,"237":1,"238":1,"254":5,"286":1,"287":3}}],["scripts",{"0":{"32":1},"2":{"22":1,"27":1}}],["scripting",{"2":{"21":1,"162":1,"188":1}}],["s",{"0":{"182":1},"2":{"7":1,"9":1,"12":1,"13":2,"14":1,"24":2,"25":1,"26":1,"30":1,"42":1,"48":1,"50":1,"63":1,"79":2,"80":1,"81":1,"82":1,"87":1,"90":1,"91":1,"92":1,"93":4,"94":3,"96":8,"97":1,"98":1,"99":1,"103":2,"104":1,"109":2,"110":2,"116":1,"121":1,"122":1,"126":2,"127":2,"130":1,"131":2,"134":1,"136":1,"140":1,"146":1,"154":1,"161":3,"162":2,"163":1,"164":1,"166":3,"167":2,"170":3,"171":1,"172":1,"175":1,"176":1,"179":1,"187":1,"188":1,"189":2,"191":2,"193":1,"203":1,"206":1,"207":1,"208":1,"217":2,"219":1,"221":1,"231":1,"234":1,"237":2,"238":1,"239":1,"242":1,"243":2,"254":3,"258":1,"259":1,"260":1,"261":2,"263":1,"264":1,"265":2,"268":3,"272":1,"274":1,"281":1,"282":4,"283":4,"287":4,"288":2}}],["soon",{"2":{"245":1}}],["soft",{"2":{"131":1}}],["software",{"0":{"44":1},"2":{"119":1,"246":1}}],["sound",{"2":{"103":1}}],["source=registry",{"2":{"186":2}}],["source=",{"2":{"186":2}}],["source",{"2":{"100":1,"104":1,"149":2,"176":1,"270":1,"288":1}}],["solves",{"2":{"104":1}}],["solving",{"0":{"101":1},"1":{"102":1,"103":1}}],["solution",{"2":{"103":1,"127":1,"280":1}}],["solc",{"2":{"96":1,"161":3,"254":1}}],["solidity",{"2":{"96":1,"161":4,"162":3}}],["sol",{"2":{"93":1,"94":1,"96":14,"160":1,"161":5,"162":3,"163":1,"164":1,"254":2,"256":2}}],["somewhat",{"2":{"103":1}}],["something",{"2":{"50":1,"54":1,"56":1,"57":1,"62":1,"172":1}}],["some",{"2":{"32":2,"57":1,"59":2,"94":1,"99":1,"103":1,"159":1,"288":1}}],["so",{"2":{"16":1,"25":1,"50":1,"72":1,"93":1,"102":2,"104":1,"162":1,"164":1,"185":1,"198":1,"200":1,"218":1,"226":1,"228":1,"241":1,"244":2,"267":1,"287":1,"288":1}}],["social",{"2":{"7":1,"8":1,"140":1}}],["sovereignty",{"2":{"7":1,"104":2}}],["sovereign",{"0":{"7":1,"11":1,"12":1,"81":1,"107":1,"164":1,"195":1,"223":1,"239":1,"264":1},"1":{"8":1,"9":1,"10":1,"11":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"196":1,"197":1,"224":1,"225":1},"2":{"6":2,"7":10,"8":5,"10":1,"11":2,"12":3,"13":2,"14":1,"15":1,"17":1,"18":5,"59":1,"78":2,"99":1,"100":2,"104":1,"105":1,"107":1,"108":1,"110":1,"114":1,"115":3,"145":3,"146":3,"166":1,"236":2,"262":2,"264":1,"265":1,"266":1,"272":1,"286":1}}],["session",{"2":{"270":1}}],["selection",{"2":{"287":1}}],["selecting",{"2":{"140":1,"194":1,"215":1,"222":1,"259":1}}],["self",{"2":{"7":1,"25":2}}],["seal",{"2":{"251":1}}],["search",{"2":{"126":1,"261":1}}],["seamless",{"2":{"121":1}}],["sendcoins",{"2":{"282":1,"283":1,"284":2}}],["sender",{"2":{"243":1}}],["sender=",{"2":{"142":1}}],["sends",{"2":{"242":1}}],["sending",{"2":{"163":1,"164":1,"284":1}}],["send",{"2":{"65":1,"76":1,"83":1,"84":3,"97":3,"163":2,"164":2,"242":1,"255":2,"257":1,"283":1}}],["sent",{"2":{"50":1}}],["serve",{"2":{"131":1}}],["served",{"2":{"124":1}}],["serves",{"2":{"121":1,"166":1}}],["server",{"2":{"82":2,"210":3,"241":2,"282":1,"283":1}}],["serving",{"2":{"39":1,"82":1,"241":1}}],["service",{"2":{"39":2,"82":20,"190":1,"191":1,"201":2,"229":2,"241":20}}],["serde",{"2":{"26":3}}],["separated",{"2":{"201":1,"229":1}}],["separate",{"2":{"30":1,"39":2,"45":1,"48":1,"171":1,"205":1,"233":1,"247":1,"275":1}}],["seed",{"2":{"39":1,"82":1,"241":1}}],["see",{"0":{"182":1},"2":{"16":1,"17":1,"18":1,"41":1,"45":1,"56":1,"57":1,"82":1,"88":1,"91":1,"97":1,"115":1,"170":1,"171":1,"176":1,"181":1,"191":3,"195":1,"201":1,"206":1,"210":1,"219":1,"223":1,"229":1,"234":1,"240":1,"241":1,"242":2,"270":1,"272":1,"282":2,"287":3}}],["seeking",{"2":{"10":1}}],["segwit",{"2":{"14":2}}],["sequence",{"2":{"142":1}}],["sequencers",{"2":{"104":1,"131":2,"134":1}}],["sequencer",{"0":{"33":1,"131":1},"1":{"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1},"2":{"10":2,"19":1,"33":1,"39":4,"40":1,"59":1,"104":2,"109":1,"114":1,"117":1,"125":1,"131":7,"134":1,"140":6,"206":2,"219":2,"234":2}}],["sequencing",{"0":{"58":1},"2":{"10":3,"58":2,"59":1}}],["several",{"2":{"9":1,"271":1,"272":1,"276":1}}],["setguess",{"2":{"283":1}}],["setwordle",{"2":{"282":1}}],["setting",{"0":{"89":1,"180":1,"273":1},"1":{"181":1,"182":1,"274":1},"2":{"115":1,"166":1,"170":1,"171":1,"206":1,"219":1,"234":1,"268":1}}],["settings",{"2":{"74":1}}],["settle",{"2":{"8":1}}],["settled",{"2":{"8":1}}],["settlement",{"0":{"108":1},"2":{"7":3,"8":3,"15":1,"105":1,"108":3}}],["setup",{"0":{"33":1,"50":1,"52":1,"148":1,"260":1},"1":{"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"57":1,"149":1,"150":1,"151":1},"2":{"19":1,"27":1,"31":1,"35":1,"45":1,"59":1,"81":1,"96":1,"161":1,"162":1,"176":1,"180":1,"206":1,"219":1,"234":1,"266":1,"271":1,"283":2}}],["set",{"0":{"38":1},"2":{"7":1,"8":1,"10":1,"27":1,"33":1,"38":1,"39":1,"50":1,"56":1,"57":1,"76":1,"80":1,"103":3,"104":1,"131":1,"145":1,"149":1,"150":1,"151":1,"152":1,"155":1,"156":1,"159":1,"163":3,"164":1,"170":2,"176":1,"195":1,"211":1,"217":1,"223":1,"238":1,"239":1,"240":1,"245":1,"257":2,"258":1,"259":1,"260":1,"273":1,"282":1,"286":1}}],["secp256k1",{"2":{"242":3}}],["sections",{"2":{"71":1}}],["section",{"2":{"31":1,"59":2,"62":1,"63":1,"68":1,"70":1,"74":1,"75":1,"76":1,"95":1,"99":1,"109":2,"182":1,"240":1}}],["second",{"2":{"19":2,"154":3,"197":1,"225":1,"277":1,"280":1}}],["seconds",{"2":{"7":1,"19":1,"74":1}}],["security",{"0":{"103":1},"2":{"7":2,"12":1,"87":1,"99":1,"104":3,"115":2,"129":1,"146":1}}],["secured",{"2":{"130":1}}],["secures",{"2":{"87":1}}],["secure",{"2":{"7":1,"8":1,"103":4,"276":1}}],["sdkerrors",{"2":{"282":4,"283":5}}],["sdk=github",{"2":{"45":1,"178":1,"274":1}}],["sdk",{"0":{"90":1,"107":1,"120":1},"2":{"7":3,"9":4,"10":1,"17":1,"45":1,"51":1,"63":1,"64":3,"78":2,"88":1,"90":2,"99":2,"107":4,"109":1,"110":1,"120":5,"173":1,"178":2,"200":3,"203":2,"212":1,"228":3,"231":2,"236":2,"266":1,"267":3,"270":2,"271":2,"272":2,"274":1,"275":4,"276":1,"277":3,"281":2,"282":8,"283":8,"284":4,"287":2,"289":1}}],["sum256",{"2":{"282":2,"283":3}}],["summary",{"0":{"22":1},"2":{"22":1}}],["sustainably",{"2":{"103":1}}],["sustainable",{"2":{"12":1,"18":1}}],["sustainability",{"2":{"103":1}}],["sufficiently",{"2":{"103":2}}],["suffice",{"2":{"90":1}}],["sudo",{"2":{"81":1,"148":1,"149":2,"270":1}}],["sure",{"2":{"50":2,"74":1,"148":1,"157":1,"160":1,"211":1}}],["suit",{"2":{"49":2,"53":2}}],["success",{"2":{"84":1,"96":1,"103":1,"254":1}}],["successfully",{"2":{"54":2,"69":1,"96":1,"161":1,"167":1,"206":1,"210":1,"211":1,"234":1,"251":1,"254":1,"258":1,"270":1}}],["successful",{"2":{"54":4,"76":1,"96":2,"140":1,"161":2,"254":2,"263":1}}],["succeeds",{"2":{"41":1}}],["such",{"2":{"3":1,"18":1,"21":1,"41":1,"100":1,"109":1,"117":1,"126":2,"140":2}}],["suggest",{"2":{"21":1}}],["suggestions",{"0":{"4":1},"2":{"4":1}}],["subsequent",{"2":{"282":1}}],["substitute",{"2":{"100":1}}],["submits",{"2":{"288":1}}],["submitguess",{"0":{"283":1},"2":{"277":1,"278":1,"283":1}}],["submitwordle",{"0":{"282":1},"2":{"277":1,"278":1,"282":3}}],["submitteraddress",{"2":{"282":2}}],["submitter",{"2":{"280":4,"282":1,"283":8,"287":1}}],["submittedsolutionhashstring",{"2":{"282":2,"283":3}}],["submittedsolutionhash",{"2":{"282":2,"283":2}}],["submitted",{"2":{"140":3,"251":1,"268":1,"277":1,"280":3,"282":10,"283":1,"287":5,"288":1}}],["submitting",{"2":{"64":1,"136":1,"241":1,"251":1,"287":3,"288":1}}],["submit",{"2":{"140":2,"242":2,"277":1,"278":4,"282":1,"283":2,"287":9}}],["submitblocks",{"2":{"121":1}}],["submitblock",{"2":{"16":2}}],["submission",{"0":{"137":1},"2":{"41":2,"64":3}}],["subkeys",{"2":{"30":1}}],["sub",{"2":{"19":1}}],["subordinate",{"2":{"8":1}}],["supports",{"2":{"17":1,"114":1,"133":2}}],["supported",{"2":{"15":1,"126":1,"135":1,"159":1}}],["support",{"0":{"60":1,"114":1},"2":{"12":1,"42":1,"114":1,"124":1,"131":1,"245":1}}],["supporting",{"2":{"9":1}}],["supply",{"2":{"8":1}}],["stick",{"2":{"288":1}}],["still",{"2":{"9":1,"14":1,"60":1,"63":1,"82":1,"109":1,"114":1,"130":1,"134":1,"136":1}}],["storing",{"2":{"280":1}}],["storage",{"2":{"116":1}}],["stores",{"2":{"203":1,"231":1}}],["stored",{"2":{"188":1}}],["store",{"2":{"39":1,"187":2,"280":1,"281":2,"282":2,"283":1}}],["stopbroadcast",{"2":{"96":1,"162":1}}],["stop",{"2":{"66":1,"121":1,"154":1,"198":1,"215":1,"217":1,"222":1,"226":1,"259":1}}],["stopping",{"0":{"66":1},"2":{"69":1}}],["stuck",{"2":{"63":1}}],["std",{"2":{"27":1,"96":1,"161":1,"162":1,"176":2}}],["steak",{"2":{"27":2}}],["steps",{"0":{"74":1,"85":1,"172":1,"206":1,"212":1,"219":1,"234":1,"244":1,"289":1},"2":{"21":2,"23":1,"29":1,"55":1,"71":1,"188":1,"194":1,"258":1,"279":1}}],["step",{"2":{"3":2,"48":1,"54":1,"57":1,"75":1,"83":1,"88":1,"94":1,"245":2}}],["strconv",{"2":{"283":4}}],["strong",{"2":{"103":1}}],["str+",{"2":{"93":1}}],["string",{"2":{"57":1,"201":1,"202":1,"229":1,"230":1,"255":1,"258":1,"282":3,"283":3,"284":2,"288":1}}],["string=youribc",{"2":{"57":1}}],["straightforward",{"2":{"26":1,"207":1,"212":1,"271":2}}],["struct",{"2":{"25":2,"26":1}}],["structure",{"0":{"3":1,"118":1},"1":{"119":1,"120":1,"121":1,"122":1},"2":{"30":1,"272":1}}],["str",{"2":{"25":1,"27":1,"93":6}}],["stands",{"2":{"236":1}}],["standard",{"2":{"14":2,"161":1}}],["stable",{"2":{"176":4}}],["status",{"2":{"97":1,"126":1,"131":1,"203":2,"231":2,"258":1}}],["statefile=",{"2":{"264":1}}],["state",{"0":{"132":1},"1":{"133":1,"134":1,"135":1},"2":{"8":1,"9":1,"10":1,"26":1,"42":2,"106":2,"109":1,"117":1,"120":1,"127":1,"130":1,"131":1,"134":11,"140":2,"191":1,"200":2,"228":2,"264":1,"277":1,"281":1,"283":1}}],["stage",{"2":{"60":1,"109":1,"114":1}}],["stake",{"2":{"56":1,"57":1,"83":1,"242":1,"243":2}}],["starship",{"2":{"21":1}}],["startbroadcast",{"2":{"96":1,"162":1}}],["starting",{"0":{"82":1,"241":1},"2":{"39":2,"54":1,"82":14,"127":1,"158":1,"159":1,"167":1,"196":1,"216":1,"224":1,"241":14,"260":1}}],["starts",{"2":{"36":1,"39":1,"125":1}}],["start",{"0":{"40":1,"50":1,"55":1,"154":1,"195":1,"197":1,"217":1,"223":1,"225":1,"250":1,"256":1,"259":1,"261":1,"262":1},"1":{"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"57":1,"155":1,"156":1,"157":1,"158":1,"196":1,"197":1,"218":1,"224":1,"225":1,"263":1,"264":1,"265":1},"2":{"7":1,"9":1,"19":4,"21":2,"27":1,"39":2,"41":2,"45":1,"48":2,"53":1,"55":2,"58":4,"62":6,"67":2,"69":2,"71":1,"73":1,"75":1,"78":1,"82":12,"83":2,"109":1,"121":1,"125":1,"154":3,"159":3,"163":1,"164":1,"167":2,"170":3,"171":2,"179":1,"190":1,"194":1,"208":1,"215":1,"222":1,"236":1,"237":1,"241":13,"247":2,"250":2,"251":1,"259":4,"260":1,"261":1,"264":2,"265":1,"277":1,"282":1}}],["started",{"0":{"36":1},"1":{"37":1,"38":1,"39":1},"2":{"1":1,"11":1,"89":1,"110":2,"163":1,"176":1,"201":1,"210":1,"229":1,"248":1,"252":1,"264":1,"268":1,"270":1}}],["stay",{"2":{"6":1}}],["stack",{"0":{"117":1,"146":1},"1":{"118":1,"119":1,"120":1,"121":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1,"128":1,"129":1,"130":1,"131":1,"132":1,"133":1,"134":1,"135":1},"2":{"3":1,"100":1,"104":1,"113":1}}],["gcc",{"2":{"178":1}}],["gz",{"2":{"149":3}}],["gb",{"2":{"147":1}}],["g",{"2":{"131":1,"142":1,"149":1}}],["gateway",{"2":{"259":1}}],["game",{"2":{"112":1,"266":2}}],["gain",{"2":{"103":1}}],["gasused",{"2":{"97":1}}],["gas",{"0":{"41":1,"67":1,"69":1,"77":1},"1":{"78":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1},"2":{"10":1,"41":15,"52":8,"54":4,"57":1,"59":2,"63":3,"64":1,"67":1,"69":1,"78":4,"82":2,"83":9,"84":2,"85":1,"96":1,"161":3,"171":4,"187":6,"190":3,"191":8,"242":1,"254":1,"287":3}}],["giant",{"2":{"287":2}}],["given",{"2":{"267":1,"277":1,"287":5}}],["give",{"2":{"163":1,"189":1}}],["gives",{"2":{"100":1,"106":1}}],["git",{"2":{"47":2,"51":2,"83":1,"92":2,"148":1,"159":2,"178":2,"209":1,"248":3,"253":3,"260":1,"263":1}}],["github",{"2":{"45":1,"47":1,"51":1,"60":1,"83":1,"92":2,"114":1,"159":1,"178":2,"184":1,"209":1,"245":1,"248":1,"253":1,"274":1,"282":3,"283":3}}],["gwei",{"2":{"96":1,"254":1}}],["gpu",{"2":{"94":1}}],["global",{"2":{"83":1}}],["ghcr",{"2":{"45":1,"247":1,"259":1}}],["grey",{"2":{"268":1}}],["green",{"2":{"268":1}}],["great",{"2":{"107":2,"109":1,"172":1,"176":1}}],["greater",{"2":{"41":1}}],["growth",{"2":{"107":1}}],["granter",{"2":{"242":1,"287":1}}],["grab",{"2":{"97":1}}],["gradually",{"2":{"41":1}}],["grpc",{"2":{"62":1,"67":1,"69":1,"82":1,"201":1,"229":1,"241":1,"259":2}}],["gt",{"2":{"25":6,"27":2,"62":9,"65":1,"83":6,"84":1,"94":1,"149":2,"163":2,"164":1,"246":1,"257":1}}],["gms",{"2":{"255":1}}],["gmportalscript",{"2":{"254":2}}],["gmportal",{"2":{"96":3,"254":2,"256":5}}],["gm1e4fqspwdsy0dzkmzsdhkadfcrd0udngw0f88pw",{"2":{"242":2}}],["gm18k57hn42ujcccyn0n5v7r6ydpacycn2wkt7uh9",{"2":{"242":2}}],["gm1jqevcsld0dqpjp3csfg7alkv3lehvn8uswknrc",{"2":{"83":3}}],["gm1vvl79phavqruppr6f5zy4ypxy7znshrqam48qy",{"2":{"49":1,"54":2,"242":1}}],["gmd",{"2":{"19":3,"58":2,"62":2,"81":1,"83":2,"84":3,"168":2,"169":1,"170":1,"196":1,"197":1,"216":1,"224":1,"225":1,"240":3}}],["gm",{"0":{"45":1,"165":1,"192":1,"199":1,"200":1,"203":1,"207":1,"213":1,"220":1,"227":1,"228":1,"231":1,"235":1},"1":{"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"193":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"200":2,"201":3,"202":3,"203":3,"204":3,"205":3,"206":1,"208":1,"209":1,"210":1,"211":1,"212":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":1,"221":1,"222":1,"223":1,"224":1,"225":1,"226":1,"227":1,"228":2,"229":3,"230":3,"231":3,"232":3,"233":3,"234":1,"236":1,"237":1,"238":1,"239":1,"240":1,"241":1,"242":1,"243":1,"244":1},"2":{"19":1,"33":1,"35":1,"37":2,"40":1,"42":1,"45":9,"48":1,"49":2,"52":3,"53":1,"54":22,"55":1,"56":5,"62":2,"63":1,"66":1,"71":1,"72":1,"73":1,"76":4,"78":1,"81":3,"83":24,"84":2,"95":1,"96":5,"111":2,"166":3,"168":3,"169":2,"193":1,"195":3,"196":1,"198":1,"200":1,"201":22,"203":15,"205":3,"208":1,"209":2,"213":1,"216":1,"217":1,"218":1,"221":1,"223":3,"224":1,"226":1,"228":1,"229":22,"231":15,"233":3,"236":2,"239":2,"240":5,"242":4,"252":1,"253":3,"254":1,"255":1,"256":6,"267":1}}],["gui",{"2":{"268":1}}],["guidance",{"2":{"176":1}}],["guide",{"0":{"262":1},"1":{"263":1,"264":1,"265":1},"2":{"21":1,"33":1,"34":1,"58":1,"61":1,"71":1,"78":2,"87":2,"89":1,"90":1,"166":1,"171":1,"188":1,"236":2,"237":1,"266":1,"268":1,"272":1}}],["guidelines",{"0":{"2":1},"2":{"2":1,"45":1}}],["guides",{"0":{"59":1},"1":{"60":1},"2":{"0":1,"59":3,"60":1,"267":1}}],["guessing",{"2":{"283":1}}],["guessed",{"2":{"283":2}}],["guesseraddress",{"2":{"283":2}}],["guesser",{"2":{"283":2,"284":1}}],["guesses",{"2":{"268":2,"280":1,"282":2,"283":2}}],["guess",{"2":{"268":2,"277":2,"278":3,"280":3,"282":1,"283":19,"287":8,"288":1}}],["guarantees",{"2":{"12":1,"104":1,"146":2}}],["gotype",{"2":{"284":1}}],["gomessage",{"2":{"284":1}}],["gopackage",{"2":{"282":1,"283":1}}],["goctx",{"2":{"203":4,"231":4,"282":2,"283":2}}],["gofunc",{"2":{"203":2,"231":2}}],["google",{"2":{"201":2,"229":2}}],["good",{"2":{"145":1,"172":1,"236":1,"241":1,"244":2,"265":1}}],["goif",{"2":{"178":1}}],["going",{"2":{"90":1,"109":1,"178":1,"200":1,"228":1,"272":1}}],["go$ver",{"2":{"149":3}}],["golang",{"0":{"149":1,"175":1},"2":{"149":2,"237":1}}],["golangversion",{"2":{"79":1}}],["gossips",{"2":{"140":1}}],["gossipping",{"2":{"136":1}}],["gossiped",{"2":{"134":1}}],["gossip",{"0":{"140":1},"2":{"127":1,"134":2,"140":1}}],["go1",{"2":{"51":1,"175":1}}],["gone",{"2":{"19":1,"59":1}}],["goal",{"2":{"18":1,"78":1,"100":1,"104":1,"146":1,"236":1}}],["go",{"2":{"10":2,"16":1,"21":1,"28":1,"34":1,"42":1,"44":1,"45":3,"51":1,"58":1,"59":1,"63":1,"71":1,"74":1,"79":2,"81":2,"120":1,"122":1,"125":2,"149":4,"172":1,"175":2,"178":4,"191":1,"196":1,"201":3,"203":4,"211":1,"216":1,"224":1,"229":3,"231":4,"240":3,"246":1,"258":1,"266":3,"267":1,"268":1,"272":1,"274":2,"282":3,"283":1,"284":1,"286":1}}],["governance",{"2":{"7":1,"8":1}}],["genesis",{"2":{"264":2}}],["generating",{"0":{"154":1},"1":{"155":1,"156":1,"157":1,"158":1},"2":{"54":1,"154":2}}],["generation",{"2":{"26":2}}],["generates",{"2":{"167":1}}],["generatetoaddress",{"2":{"154":2}}],["generatefraudproof",{"2":{"134":1}}],["generate",{"2":{"52":1,"104":1,"134":2,"140":1,"154":3,"201":1,"229":1,"240":1,"259":1}}],["generated",{"2":{"26":1,"62":1,"87":2,"93":1,"94":1,"163":1,"164":1,"170":1,"195":1,"198":1,"217":1,"218":1,"223":1,"226":1,"272":1}}],["generic",{"2":{"7":1,"121":1}}],["getguess",{"2":{"283":1}}],["getwordle",{"2":{"282":1,"283":1}}],["gettotalgms",{"2":{"255":1}}],["getting",{"0":{"36":1},"1":{"37":1,"38":1,"39":1},"2":{"126":2,"283":1}}],["geth",{"2":{"251":2}}],["getblockheader",{"2":{"157":2}}],["getblockhash",{"2":{"156":1}}],["getblockcount",{"2":{"155":1}}],["getnewaddress`",{"2":{"154":1}}],["getnewaddress",{"2":{"154":1}}],["getapphash",{"2":{"134":1}}],["gets",{"2":{"50":1,"268":1}}],["getcountresponse",{"2":{"26":2}}],["getcount",{"2":{"26":2,"161":4,"163":1,"164":1}}],["get",{"2":{"1":1,"8":1,"11":1,"21":2,"26":1,"27":1,"30":1,"45":1,"63":2,"65":1,"81":2,"83":1,"93":2,"99":1,"110":2,"157":1,"170":1,"176":1,"187":1,"189":1,"195":1,"200":1,"201":2,"205":1,"217":1,"223":1,"228":1,"229":2,"233":1,"248":1,"252":1,"255":1,"259":1,"268":1,"270":2,"282":1,"283":3,"287":2}}],["ooga",{"0":{"254":1},"2":{"252":1,"253":1,"255":3,"257":2}}],["o5crnimdwh",{"2":{"242":1}}],["omit",{"2":{"170":1}}],["omnilayer",{"2":{"133":1}}],["old",{"2":{"158":1,"168":1,"196":1,"216":1,"224":1}}],["os",{"2":{"148":1,"177":1}}],["osmo",{"2":{"52":2,"53":1,"54":12}}],["osmo1vvl79phavqruppr6f5zy4ypxy7znshrqm390ll",{"2":{"49":1,"54":2}}],["osmosis",{"0":{"46":1,"47":1,"48":1,"56":1,"57":1},"1":{"47":1,"48":1},"2":{"42":1,"47":3,"48":6,"49":2,"52":2,"54":6,"55":1,"56":3,"57":2}}],["occurred",{"2":{"134":1}}],["occasional",{"2":{"41":1}}],["objects",{"2":{"93":3,"277":1,"287":1}}],["obtained",{"2":{"88":1}}],["obtain",{"2":{"87":1,"93":2,"170":1,"258":1}}],["observed",{"2":{"54":4}}],["obvious",{"2":{"27":1}}],["ok",{"2":{"27":2,"161":1}}],["opportunity",{"2":{"107":1}}],["operation",{"2":{"264":1}}],["operations",{"2":{"125":1,"163":1,"164":1,"171":1}}],["operational",{"2":{"8":1,"72":1,"88":1,"95":1}}],["operators",{"2":{"58":1,"98":1}}],["openapi",{"2":{"272":1}}],["openssl",{"2":{"159":1}}],["opens",{"2":{"146":1}}],["open",{"2":{"38":1,"50":1,"93":3,"96":1,"100":1,"104":1,"153":1,"161":2,"201":1,"211":1,"229":1,"240":1,"270":1,"282":1,"283":1,"288":1}}],["opening",{"2":{"12":1,"100":1,"145":1}}],["optional",{"0":{"182":1,"198":1,"199":1,"226":1,"227":1},"1":{"200":1,"201":1,"202":1,"203":1,"204":1,"205":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1},"2":{"134":1,"149":1,"201":2,"229":2}}],["option",{"2":{"15":2,"201":3,"229":3}}],["options",{"2":{"3":1,"52":2,"83":2,"140":1,"242":2,"287":2}}],["optimistic",{"0":{"134":1},"2":{"10":2,"104":1,"117":1,"129":1,"140":1}}],["optimizer",{"2":{"186":3}}],["optimized",{"0":{"186":1},"2":{"186":1}}],["optimize",{"0":{"10":1},"2":{"10":1}}],["overall",{"2":{"134":1}}],["override",{"2":{"63":1,"83":2}}],["over",{"2":{"9":1,"34":2,"58":1,"71":1,"126":3,"131":1,"134":2,"181":2,"195":2,"223":2,"258":1,"266":3,"267":1,"268":2,"272":1,"282":2,"287":2}}],["overhead",{"2":{"7":2,"8":1,"10":1,"18":1,"103":1}}],["overview",{"0":{"71":1},"2":{"5":1,"76":1}}],["onstart",{"2":{"125":1}}],["onto",{"2":{"117":1}}],["once",{"0":{"87":1},"2":{"39":1,"75":1,"124":1,"134":1,"163":2,"164":1,"211":1}}],["onchain",{"2":{"8":1}}],["only",{"0":{"133":1},"2":{"10":2,"12":1,"15":1,"16":1,"39":1,"41":1,"42":1,"82":1,"87":1,"114":1,"125":1,"133":1,"241":1,"256":1,"277":1,"282":6,"283":3}}],["ones",{"2":{"140":1}}],["one",{"2":{"7":1,"9":1,"19":1,"26":1,"54":3,"63":1,"75":1,"131":1,"134":1,"163":2,"167":1,"170":2,"173":1,"242":1,"257":1,"259":2,"260":1,"272":1,"277":2,"282":2,"283":1,"287":1}}],["on",{"0":{"12":1,"14":1,"17":1,"94":1,"97":1,"180":1,"183":1,"188":1,"217":1},"1":{"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"181":1,"182":1,"184":1,"185":1,"186":1,"187":1,"189":1,"190":1,"191":1,"218":1},"2":{"5":1,"6":1,"7":3,"8":4,"10":2,"12":5,"13":1,"14":6,"16":2,"17":1,"18":2,"26":1,"29":4,"32":1,"39":2,"44":1,"49":2,"50":2,"58":1,"59":1,"63":1,"74":1,"80":2,"81":2,"82":2,"83":8,"84":4,"87":7,"93":1,"94":2,"95":2,"96":1,"97":1,"98":1,"99":1,"100":1,"102":1,"104":2,"109":1,"114":1,"116":1,"122":1,"124":2,"129":1,"130":1,"134":1,"142":1,"145":3,"146":3,"160":1,"166":1,"167":1,"171":2,"175":1,"176":1,"177":3,"178":1,"187":1,"189":1,"191":1,"194":1,"203":1,"208":1,"210":1,"211":1,"215":1,"217":1,"219":1,"222":1,"231":1,"238":2,"241":2,"246":2,"252":1,"253":1,"254":1,"256":3,"257":2,"259":1,"260":1,"261":1,"265":1,"268":1,"270":1,"273":1,"281":1,"283":1,"286":2,"287":1,"288":1}}],["our",{"2":{"5":2,"18":1,"26":1,"32":1,"60":1,"63":1,"69":1,"71":1,"73":1,"76":1,"82":1,"83":4,"84":1,"93":4,"95":1,"99":1,"100":1,"104":1,"114":1,"115":2,"141":1,"145":1,"149":1,"162":1,"164":2,"169":2,"170":2,"171":2,"175":1,"181":4,"187":1,"189":3,"191":2,"195":3,"197":1,"200":1,"203":1,"212":1,"223":3,"225":1,"228":1,"231":1,"242":1,"253":1,"256":2,"268":1,"270":1,"271":2,"273":2,"276":1,"277":3,"284":1,"287":4}}],["outline",{"2":{"281":1}}],["outside",{"2":{"173":1,"272":1}}],["outputs",{"2":{"287":1}}],["outputted",{"2":{"184":1}}],["output",{"2":{"36":1,"52":2,"83":2,"84":2,"96":2,"97":2,"153":1,"155":1,"156":1,"161":1,"164":1,"170":2,"176":1,"187":2,"189":3,"191":5,"210":1,"240":2,"242":2,"243":1,"254":2,"264":1,"270":1,"287":3}}],["out",{"0":{"63":1},"1":{"64":1,"65":1,"66":1,"67":1,"68":1,"69":1},"2":{"0":1,"11":1,"26":1,"63":2,"64":1,"69":1,"74":1,"98":1,"163":1,"173":1,"178":1,"188":1,"253":1,"256":2,"270":1,"284":1,"287":1}}],["others",{"2":{"288":1}}],["other",{"2":{"3":1,"7":2,"32":1,"48":1,"50":3,"63":1,"66":1,"102":1,"104":2,"131":1,"140":1,"207":1,"276":1,"281":1}}],["owner",{"2":{"191":2}}],["own",{"2":{"3":1,"7":3,"8":1,"11":1,"15":1,"99":1,"104":1,"115":2,"170":1,"195":1,"217":1,"223":1,"252":1,"259":1,"261":1,"270":1,"275":1,"286":1}}],["original",{"2":{"57":1,"62":1}}],["originally",{"2":{"12":1,"257":1}}],["orch",{"0":{"24":1},"2":{"21":3,"22":1,"23":1,"24":3,"25":2,"26":3,"27":1,"28":1,"29":1,"30":1,"32":1,"59":1}}],["orchestrator",{"0":{"20":1},"1":{"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1},"2":{"21":2,"22":1,"24":1,"26":1,"32":1,"187":1,"188":1}}],["ordinals",{"2":{"13":1,"14":2,"146":1}}],["ordering",{"2":{"124":1,"131":2}}],["ordered",{"2":{"117":1}}],["order",{"2":{"8":1,"21":1,"25":1,"30":1,"54":1,"62":1,"63":2,"67":1,"69":1,"99":1,"103":1,"133":1,"179":1,"186":1,"187":1,"198":1,"200":1,"218":1,"226":1,"228":1,"257":1,"258":1,"267":1,"284":1}}],["org",{"2":{"12":1,"149":1}}],["organize",{"2":{"8":1}}],["oracles",{"2":{"9":1}}],["or",{"2":{"2":1,"4":1,"7":5,"8":1,"10":5,"16":1,"17":1,"18":1,"19":1,"27":2,"50":1,"56":1,"57":1,"60":1,"64":1,"66":1,"75":1,"76":1,"79":1,"81":1,"94":1,"98":1,"104":4,"106":1,"109":1,"110":1,"114":1,"129":1,"130":1,"134":1,"140":2,"142":1,"146":1,"162":1,"166":1,"167":1,"170":1,"171":2,"172":1,"187":1,"195":1,"197":1,"200":1,"208":1,"213":2,"217":2,"223":1,"225":1,"228":1,"257":1,"259":2,"261":1,"270":1,"271":1,"282":1,"283":1,"287":1}}],["offered",{"2":{"275":1}}],["offs",{"2":{"100":1,"103":1,"104":1}}],["offset",{"2":{"8":1}}],["offloading",{"2":{"15":1}}],["off",{"2":{"14":1,"104":1}}],["offchain",{"2":{"8":1}}],["official",{"2":{"0":1,"99":1}}],["of",{"0":{"6":1,"19":1,"63":1,"142":1},"1":{"64":1,"65":1,"66":1,"67":1,"68":1,"69":1,"143":1},"2":{"0":1,"2":1,"5":2,"7":6,"8":5,"9":2,"10":6,"11":1,"13":2,"14":8,"15":1,"16":3,"18":2,"19":1,"21":3,"24":1,"25":1,"26":1,"30":1,"41":4,"42":2,"48":1,"50":1,"52":1,"55":1,"56":1,"57":1,"59":3,"62":1,"63":3,"64":1,"65":1,"69":1,"71":2,"74":1,"78":2,"81":1,"82":1,"83":1,"87":3,"89":1,"90":2,"91":1,"92":1,"94":1,"95":1,"96":2,"97":3,"99":1,"100":2,"103":6,"104":5,"106":1,"108":2,"109":1,"114":1,"115":2,"116":2,"117":2,"120":3,"121":2,"122":1,"124":1,"125":2,"127":1,"131":1,"134":2,"140":3,"145":2,"146":4,"150":1,"154":1,"156":1,"158":1,"160":1,"161":1,"163":3,"164":1,"167":3,"170":1,"173":2,"181":1,"187":2,"189":1,"190":1,"191":1,"193":2,"195":1,"200":1,"201":4,"203":3,"207":1,"213":2,"217":1,"221":2,"223":1,"228":1,"229":4,"231":3,"236":1,"241":1,"242":1,"245":1,"252":1,"258":1,"260":1,"266":1,"267":1,"268":5,"270":3,"271":3,"272":4,"276":1,"277":2,"280":2,"281":4,"282":7,"283":11,"287":3}}],["md",{"2":{"272":1}}],["mv",{"2":{"270":1}}],["m",{"2":{"154":2}}],["my",{"2":{"154":1}}],["mykey",{"2":{"48":1,"164":2}}],["ml",{"2":{"87":2,"90":2,"91":1,"92":2,"96":1,"97":1,"98":1}}],["mkdir",{"2":{"83":1}}],["mnemonics",{"2":{"53":1,"83":1}}],["mnemonic",{"2":{"27":3,"49":2,"53":1}}],["msgsubmitguessresponse",{"2":{"283":3,"284":2}}],["msgsubmitguess",{"2":{"283":1}}],["msgsubmitwordleresponse",{"2":{"282":2}}],["msgsubmitwordle",{"2":{"282":1,"287":1}}],["msgserver",{"2":{"282":1,"283":1}}],["msgsend",{"2":{"242":1}}],["msgchannelopenconfirm",{"2":{"54":1}}],["msgchannelopenack",{"2":{"54":1}}],["msgchannelopentry",{"2":{"54":1}}],["msgchannelopeninit",{"2":{"54":1}}],["msgupdateclient",{"2":{"54":4}}],["msg=",{"2":{"39":2,"82":10,"241":10}}],["msg",{"2":{"25":1,"26":2,"27":1,"54":4,"282":7,"283":8}}],["much",{"2":{"271":1}}],["multiappconn",{"2":{"82":1,"241":1}}],["multiplier=1",{"2":{"41":1}}],["multiplier",{"2":{"41":2}}],["multiple",{"2":{"21":1,"75":1,"97":1,"127":1,"131":1,"134":1}}],["multi",{"2":{"21":1,"33":1,"276":1}}],["must",{"2":{"7":1,"103":2,"140":1,"268":1,"271":1,"276":2,"282":2,"283":2}}],["mb",{"2":{"14":1}}],["might",{"2":{"103":1,"127":1,"212":1}}],["migrate",{"2":{"25":2}}],["migratemsg",{"2":{"25":2}}],["mission",{"2":{"99":1,"115":2}}],["missing",{"2":{"14":1}}],["mit",{"2":{"96":1,"161":2,"162":1}}],["middleman",{"2":{"50":1}}],["millions",{"2":{"103":1}}],["milliseconds",{"2":{"10":1,"19":1}}],["milk",{"2":{"49":2,"53":2}}],["minutes",{"2":{"70":1,"104":1}}],["minus",{"2":{"57":1}}],["min",{"2":{"52":4,"83":4}}],["mind",{"2":{"18":1,"97":1,"121":1}}],["mine",{"2":{"154":2}}],["miner",{"2":{"14":1}}],["mined",{"2":{"14":1}}],["minify",{"2":{"210":1}}],["minimizes",{"2":{"271":1}}],["minimized",{"2":{"8":1,"42":1,"108":1,"117":1,"130":1}}],["minimization",{"2":{"134":1}}],["minimizing",{"2":{"104":1}}],["minimal",{"2":{"100":1}}],["minimum",{"2":{"41":1,"82":1,"171":2}}],["mining",{"2":{"14":1}}],["morning",{"2":{"236":1}}],["more",{"0":{"32":1},"2":{"6":1,"7":1,"9":1,"12":1,"19":1,"21":1,"22":1,"25":1,"26":1,"29":1,"32":2,"42":1,"65":1,"88":1,"91":1,"100":2,"109":1,"116":1,"140":1,"145":1,"170":1,"195":1,"212":1,"217":1,"223":1,"236":1,"259":1,"270":1,"271":1}}],["mounted",{"2":{"203":1,"231":1}}],["mount",{"2":{"186":4}}],["monitoring",{"2":{"148":1,"288":1}}],["monitored",{"2":{"76":1}}],["monitor",{"2":{"70":1,"75":1,"76":1}}],["months",{"2":{"7":1,"104":1}}],["mock",{"2":{"166":1}}],["mockcontract",{"2":{"25":1}}],["mocha=",{"2":{"83":1}}],["mocha",{"0":{"83":1},"2":{"63":2,"82":1,"83":24,"110":1,"142":1,"167":1,"170":6,"171":1,"221":1,"222":3,"223":4,"225":2,"226":1,"232":1,"258":2,"259":6,"260":1,"261":1}}],["moment",{"2":{"27":1,"282":1}}],["moving",{"2":{"21":1,"287":1}}],["move",{"2":{"8":1,"18":1}}],["modified",{"2":{"245":1,"284":1}}],["modifying",{"2":{"200":1,"228":1}}],["modify",{"0":{"93":1},"2":{"48":1,"92":1,"96":2,"164":1,"200":1,"201":1,"203":1,"228":1,"229":1,"231":1}}],["mod",{"2":{"25":1,"45":3,"178":3,"274":3}}],["modulename",{"2":{"282":1,"283":1}}],["moduleacct",{"2":{"282":2,"283":2}}],["modules",{"2":{"210":1,"270":1,"272":2,"275":3,"276":1}}],["module=main",{"2":{"264":4}}],["module=grpc",{"2":{"82":1,"241":1}}],["module=txindex",{"2":{"82":2,"241":2,"251":1}}],["module=events",{"2":{"82":1,"241":1}}],["module=abci",{"2":{"82":4,"241":4}}],["module=polaris",{"2":{"251":2}}],["module=pubsub",{"2":{"82":1,"241":1}}],["module=proxy",{"2":{"82":1,"241":1}}],["module=p2p",{"2":{"39":3,"82":3,"241":3}}],["module=blockmanager",{"2":{"64":4,"82":4,"241":4,"251":5,"264":2}}],["module=da",{"2":{"39":1}}],["module=server",{"2":{"39":4,"82":7,"241":7,"251":2}}],["module=icahost",{"2":{"39":1}}],["module=x",{"2":{"39":1}}],["module",{"0":{"275":1,"276":1},"1":{"276":1},"2":{"15":1,"16":1,"18":1,"25":1,"146":1,"200":1,"228":1,"271":3,"275":4,"276":6,"277":2,"281":3}}],["modularism",{"2":{"18":1}}],["modularity",{"2":{"16":1}}],["modular",{"2":{"10":1,"15":1,"99":1,"100":2,"104":1,"113":1,"115":2,"142":2,"146":1}}],["mode",{"2":{"52":4,"82":1,"83":4,"114":1,"159":1,"241":1}}],["models",{"2":{"87":1}}],["model",{"2":{"10":1,"87":1,"91":1}}],["modes",{"0":{"132":1},"1":{"133":1,"134":1,"135":1},"2":{"10":1}}],["mostly",{"2":{"16":1}}],["most",{"2":{"0":1,"14":1,"16":1,"21":1,"41":1,"208":1,"272":2,"281":1}}],["messaging",{"2":{"288":1}}],["messages",{"0":{"277":1},"1":{"278":1},"2":{"30":1,"50":1,"200":1,"228":1,"242":1,"270":1,"277":7,"279":1,"287":1}}],["message",{"0":{"278":1},"2":{"2":1,"50":1,"64":3,"142":1,"190":1,"191":2,"200":1,"202":1,"228":1,"230":1,"275":2,"278":5,"280":2,"281":2,"287":2}}],["meter",{"2":{"287":1}}],["method",{"2":{"258":1,"284":1}}],["methods",{"2":{"16":3,"26":2,"120":1,"121":2,"134":1,"258":1}}],["mean",{"2":{"287":1}}],["meaning",{"2":{"270":1}}],["meanwhile",{"2":{"142":1}}],["means",{"2":{"7":1,"98":1,"104":1,"268":3,"282":2}}],["mentioned",{"2":{"105":1}}],["memo",{"2":{"52":1,"83":2,"242":1,"287":1}}],["members",{"2":{"30":1}}],["mempoolttl=25",{"2":{"82":1,"241":1}}],["mempool",{"0":{"124":1},"2":{"14":2,"41":1,"63":3,"82":1,"124":3,"140":3,"241":1}}],["mev",{"2":{"9":1}}],["media",{"2":{"3":1}}],["map",{"2":{"280":3}}],["maple",{"2":{"49":2,"53":2}}],["maliciously",{"2":{"140":1}}],["made",{"2":{"82":1,"115":1,"146":2}}],["maximum",{"2":{"283":1}}],["maximalism",{"2":{"18":1}}],["max",{"2":{"52":2,"83":3,"283":1}}],["maid",{"2":{"27":1}}],["mainnet",{"0":{"214":1,"217":1},"1":{"215":1,"216":1,"217":1,"218":2},"2":{"166":1,"167":2,"170":3,"171":1,"172":1,"206":1,"215":1,"217":5,"218":3,"219":1,"234":1,"258":1}}],["maintaining",{"2":{"10":1}}],["maintain",{"2":{"8":1}}],["main",{"2":{"2":1,"27":1,"104":1,"117":1,"167":1,"240":3,"272":1,"281":1}}],["mac",{"2":{"176":1}}],["macos",{"2":{"79":1,"81":1,"208":1,"270":1}}],["macro",{"2":{"26":1}}],["macros",{"2":{"26":2}}],["machinesarm",{"2":{"186":1,"187":1}}],["machines",{"2":{"106":1,"186":1,"187":1,"270":1}}],["machine",{"2":{"2":1,"9":1,"10":1,"44":1,"80":1,"87":2,"95":1,"106":2,"147":1,"175":1,"177":1,"238":1,"245":1,"246":2,"270":1,"286":1}}],["manner",{"2":{"124":1}}],["managing",{"2":{"103":1}}],["manager",{"0":{"125":1},"2":{"125":1}}],["manage",{"2":{"15":1,"104":1}}],["many",{"2":{"102":1,"105":1,"109":1,"148":1,"275":1,"280":1,"288":1}}],["manifest",{"2":{"92":1}}],["manually",{"2":{"24":1,"36":1,"41":2,"81":1,"240":1}}],["matter",{"2":{"23":1}}],["materials",{"2":{"0":1,"3":1}}],["market",{"0":{"103":1},"2":{"12":1,"83":2,"104":2}}],["march",{"2":{"12":1}}],["maybe",{"2":{"131":2}}],["may",{"2":{"8":2,"41":2,"54":1,"81":1,"99":1,"121":1,"127":1,"140":1,"149":1,"176":1,"257":1}}],["making",{"2":{"2":1,"18":1,"146":1,"173":1}}],["makes",{"2":{"7":1,"21":1,"50":2,"203":1,"231":1}}],["make",{"2":{"0":1,"2":1,"16":1,"18":1,"21":1,"47":1,"51":1,"54":1,"56":1,"57":1,"59":1,"62":1,"74":1,"81":1,"83":1,"96":1,"100":1,"104":2,"130":1,"146":1,"148":2,"159":1,"200":1,"211":1,"228":1,"239":1,"250":1,"253":1,"260":1,"261":1,"271":1,"277":1}}],["f159e11116ec9505fc2c0d97e605357fec0f3dae06b57bfb17ea6a548905043e",{"2":{"287":2}}],["fc0kermqylp8voivw8qfywgeldflbaufcmpm7tb7ptlb4opwzjaost6hbo",{"2":{"142":1}}],["fcfs",{"2":{"124":1}}],["fwsrxeovry",{"2":{"142":1}}],["flow",{"0":{"136":1},"1":{"137":1,"138":1,"139":1,"140":1},"2":{"136":1,"140":1}}],["flexible",{"2":{"127":1}}],["flexibility",{"2":{"102":1,"106":1,"115":1}}],["flags=",{"2":{"155":1}}],["flags",{"0":{"170":1},"2":{"19":2,"41":1,"58":2,"155":1,"170":1,"171":1,"242":1}}],["flag",{"2":{"19":2,"25":1,"41":2,"48":1,"58":1,"142":1,"170":1,"201":1,"229":1,"258":1,"271":1}}],["f",{"2":{"93":6}}],["fn",{"2":{"25":2,"27":1}}],["far",{"2":{"241":1,"244":1,"287":1}}],["fallbackfee=0",{"2":{"152":1}}],["false",{"2":{"83":2,"282":1}}],["familiar",{"2":{"99":1,"193":1,"213":1,"221":1}}],["familiarity",{"2":{"99":1}}],["faucet",{"2":{"83":1,"142":2,"258":1}}],["failed",{"2":{"64":3,"161":1,"191":2}}],["failures",{"2":{"41":1}}],["face",{"2":{"104":1,"283":1}}],["factor",{"2":{"41":2}}],["facilitate",{"2":{"8":1,"16":1,"108":1}}],["fast",{"2":{"28":1}}],["faster",{"2":{"19":1,"104":1,"131":1}}],["further",{"2":{"98":1,"191":1,"265":1,"268":1}}],["furthermore",{"2":{"94":1,"114":2}}],["func",{"2":{"282":2,"283":1}}],["functional",{"2":{"119":1,"245":1}}],["functionality",{"2":{"26":1,"90":1,"161":1,"281":1}}],["function",{"0":{"203":1,"231":1,"282":1,"283":1},"2":{"26":2,"96":2,"161":7,"162":2,"200":1,"203":4,"228":1,"231":4,"282":3,"283":1}}],["functions",{"0":{"281":1},"1":{"282":1,"283":1,"284":1},"2":{"16":1,"26":1,"161":1,"200":1,"228":1,"272":2,"281":1,"284":1}}],["fun",{"2":{"271":1,"287":1}}],["funded",{"2":{"83":2,"217":1,"254":1,"257":1,"258":1}}],["funding",{"2":{"64":1}}],["fund",{"0":{"65":1},"2":{"63":1,"83":2,"167":2,"194":1,"215":1,"222":1,"257":1,"259":1}}],["funds",{"0":{"49":1,"63":1,"252":1},"1":{"64":1,"65":1,"66":1,"67":1,"68":1,"69":1},"2":{"49":2,"63":1,"252":1}}],["future",{"0":{"288":1},"2":{"18":1,"103":1,"105":1,"140":1,"266":1,"283":1,"287":1}}],["fully",{"2":{"8":2,"119":1,"126":1,"129":1,"194":1,"215":1,"222":1,"245":1,"258":1,"259":1}}],["full",{"0":{"33":1,"40":1,"129":1,"133":1},"1":{"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1},"2":{"7":1,"19":1,"21":1,"28":1,"32":1,"33":1,"36":1,"37":2,"39":4,"40":3,"59":1,"103":1,"104":2,"113":1,"114":1,"116":1,"117":1,"121":1,"129":1,"133":1,"134":7,"140":6,"206":2,"219":2,"234":2}}],["few",{"2":{"268":1,"282":1,"284":1,"287":1}}],["fetiklj3cwvhuf6b",{"2":{"242":1}}],["fetch",{"2":{"93":1,"134":1}}],["fetched",{"2":{"39":1}}],["feature",{"2":{"34":1,"58":1}}],["features",{"0":{"29":1},"2":{"22":1,"100":1,"109":1}}],["feb",{"2":{"14":1}}],["feel",{"2":{"283":1}}],["feegrants",{"2":{"52":2,"83":2}}],["fee",{"0":{"67":1,"69":1},"2":{"12":1,"54":4,"63":3,"64":1,"67":1,"69":1,"242":1,"287":1}}],["fees",{"2":{"10":1,"54":4,"56":1,"57":2,"76":1,"83":1,"242":1}}],["feedback",{"0":{"4":1},"2":{"4":1}}],["fresh",{"2":{"271":1}}],["fred",{"2":{"191":3}}],["frequency",{"2":{"125":1}}],["free",{"0":{"11":1},"2":{"9":1,"283":1}}],["freedom",{"2":{"7":1,"100":1}}],["front",{"2":{"288":2}}],["frontend",{"0":{"253":1,"256":1,"257":1},"1":{"254":1,"255":1,"256":1,"257":1},"2":{"111":1,"209":3,"253":1,"256":8,"257":1}}],["fromaddr",{"2":{"284":1}}],["from",{"0":{"56":1,"57":1},"2":{"2":1,"4":1,"9":2,"11":1,"25":1,"26":1,"36":2,"37":1,"38":1,"39":2,"40":1,"48":1,"50":1,"56":2,"57":2,"58":1,"62":1,"83":1,"96":2,"97":1,"104":3,"105":1,"117":1,"121":1,"134":1,"154":1,"157":1,"162":1,"164":1,"166":1,"168":1,"171":1,"181":1,"187":2,"190":1,"191":1,"195":1,"202":1,"212":1,"217":2,"223":1,"230":1,"240":1,"242":3,"254":1,"256":2,"257":1,"258":1,"260":1,"271":2,"275":1,"276":1,"277":1,"281":1,"282":2,"287":7}}],["fraudulent",{"2":{"104":1,"134":2}}],["fraud",{"0":{"134":1,"140":1},"2":{"7":1,"45":1,"104":1,"109":1,"114":1,"117":2,"120":1,"127":1,"129":2,"130":1,"134":7,"136":1,"140":1,"178":1}}],["framework",{"0":{"7":1},"1":{"8":1,"9":1,"10":1,"11":1},"2":{"6":1,"7":1,"12":1,"14":1,"15":1,"21":1,"59":1,"100":2,"104":1,"109":1,"115":1,"262":1}}],["five",{"2":{"268":2,"287":1}}],["field",{"2":{"201":1,"229":1}}],["fit",{"2":{"115":1}}],["finish",{"2":{"150":1,"157":1}}],["finished",{"2":{"96":1,"161":2,"254":1}}],["finalizing",{"2":{"251":1}}],["finalized",{"2":{"82":1,"117":1,"241":1,"251":1,"264":1}}],["finally",{"2":{"84":1,"94":1}}],["final",{"2":{"32":1,"278":1}}],["finding",{"2":{"171":1,"197":1,"217":1,"225":1}}],["find",{"2":{"0":1,"4":1,"5":1,"25":1,"26":2,"32":1,"59":2,"92":1,"134":1,"140":1,"177":1,"194":1,"202":1,"215":1,"222":1,"230":1,"240":1,"259":1,"261":1}}],["fixed",{"2":{"41":1}}],["fix",{"2":{"18":1,"93":1,"178":1}}],["fixing",{"2":{"2":1}}],["filter",{"2":{"83":1}}],["file",{"0":{"24":1,"284":1},"2":{"22":1,"24":2,"25":4,"27":1,"30":1,"52":2,"62":1,"92":1,"93":8,"94":1,"161":1,"200":1,"201":1,"202":1,"203":2,"228":1,"229":1,"230":1,"231":2,"240":5,"264":1,"272":4,"282":1,"283":1,"284":2}}],["files",{"2":{"3":1,"30":1,"92":1,"93":1,"96":1,"148":1,"161":1,"200":1,"228":1,"254":1,"272":2,"284":1}}],["fill",{"2":{"11":1,"74":1,"284":1}}],["firstly",{"2":{"52":1}}],["first",{"0":{"7":1,"76":1,"201":1,"229":1},"1":{"8":1,"9":1,"10":1,"11":1},"2":{"6":1,"12":1,"35":1,"59":1,"65":1,"71":1,"72":1,"75":1,"76":1,"82":1,"97":1,"115":1,"124":2,"131":2,"145":1,"148":1,"156":1,"160":1,"164":1,"170":1,"176":1,"189":1,"206":1,"209":1,"234":1,"242":1,"250":1,"253":1,"256":1,"260":1,"271":2,"277":1,"282":2,"284":1}}],["footprint",{"2":{"177":1}}],["food",{"2":{"92":2,"96":1,"97":1}}],["four",{"2":{"104":1}}],["foundation",{"2":{"271":1}}],["foundryup",{"2":{"250":1}}],["foundry",{"0":{"150":1,"249":1},"2":{"150":3,"160":3,"161":1,"249":1,"254":1,"271":1}}],["found",{"2":{"14":1,"54":2,"81":1,"120":1,"177":1,"181":1,"195":1,"223":1,"240":1,"264":3,"287":1}}],["folders",{"2":{"196":1,"216":1,"224":1}}],["folder",{"2":{"30":1,"154":1,"158":1}}],["followed",{"2":{"237":1}}],["follows",{"2":{"120":1,"170":1}}],["follow",{"2":{"13":1,"68":1,"176":2,"194":1,"215":1,"222":1,"252":1,"259":1,"267":1}}],["following",{"2":{"1":1,"9":1,"21":1,"30":1,"49":2,"52":1,"58":1,"65":1,"90":1,"93":2,"96":1,"97":1,"110":2,"125":1,"126":1,"141":1,"142":1,"151":1,"153":1,"154":1,"157":1,"158":1,"161":4,"162":1,"164":1,"181":2,"184":1,"185":1,"186":1,"187":1,"188":1,"189":1,"190":1,"195":1,"197":1,"200":1,"203":1,"205":2,"210":2,"223":1,"225":1,"228":1,"231":1,"233":2,"242":1,"246":1,"252":1,"263":1,"267":1,"268":1,"270":1,"271":1,"274":1,"275":1,"276":2,"278":1,"281":1,"282":3,"283":3,"284":1,"287":5}}],["foam",{"2":{"27":1}}],["focus",{"2":{"8":1,"54":1,"87":1}}],["forth",{"2":{"172":1}}],["forget",{"2":{"120":1}}],["forge",{"2":{"96":3,"161":3,"162":1,"254":1}}],["formula",{"2":{"82":1}}],["formatting",{"2":{"93":1}}],["formatted",{"2":{"93":2,"94":1}}],["format",{"2":{"52":2,"83":2,"282":1,"283":2}}],["form",{"2":{"11":1,"18":1,"74":1}}],["forward",{"2":{"8":1,"287":1}}],["forking",{"0":{"140":1}}],["forks",{"2":{"8":1}}],["fork",{"2":{"2":3,"7":1,"10":1,"121":1,"131":3,"140":1,"163":1}}],["for",{"0":{"10":1,"153":1,"170":1,"180":1},"1":{"181":1,"182":1},"2":{"0":1,"2":1,"3":1,"4":1,"6":1,"7":3,"8":2,"9":1,"10":2,"12":3,"13":2,"14":2,"15":3,"16":5,"17":1,"18":1,"19":1,"21":2,"25":3,"26":4,"29":3,"30":2,"32":1,"36":1,"37":1,"39":4,"42":3,"45":1,"50":1,"53":1,"54":3,"56":1,"58":1,"62":4,"75":1,"78":2,"80":1,"81":1,"82":1,"83":1,"87":2,"91":2,"92":1,"93":3,"94":3,"96":2,"98":2,"100":3,"103":4,"104":4,"107":1,"108":3,"109":1,"115":1,"116":1,"119":1,"120":1,"121":1,"122":1,"125":4,"126":1,"129":2,"130":1,"131":3,"136":1,"140":1,"141":1,"142":2,"145":1,"146":4,"149":1,"152":1,"155":1,"159":1,"160":1,"161":2,"166":1,"167":1,"170":9,"171":3,"173":5,"175":1,"176":4,"177":2,"178":1,"187":2,"188":2,"189":1,"190":1,"191":1,"193":2,"198":2,"200":3,"201":2,"208":1,"217":3,"218":1,"221":2,"226":2,"228":3,"229":2,"236":2,"237":1,"238":1,"239":1,"241":1,"242":2,"243":1,"245":1,"254":1,"258":1,"261":1,"266":2,"267":1,"268":5,"270":6,"271":1,"272":6,"275":3,"276":4,"277":2,"279":1,"280":1,"281":3,"282":6,"283":10,"284":2,"287":4,"288":1}}],["rf",{"2":{"149":1,"158":1,"168":1,"196":1,"216":1,"224":1}}],["r",{"2":{"83":1,"84":1,"168":1,"170":1,"187":2,"189":1,"191":1,"196":1,"216":1,"224":1,"260":2,"282":2,"287":1}}],["rm",{"2":{"62":1,"149":2,"168":1,"186":2,"196":1,"216":1,"224":1}}],["routing",{"2":{"275":1}}],["routines",{"2":{"125":2}}],["round",{"2":{"142":1}}],["rosm",{"0":{"142":1,"143":1},"1":{"143":1},"2":{"142":9,"143":1}}],["roadmap",{"2":{"104":1}}],["roots",{"2":{"134":1}}],["rootcodespace",{"2":{"63":1}}],["root",{"2":{"52":2,"97":1,"131":1,"150":1,"154":2,"240":1,"264":4}}],["rollup=",{"2":{"83":1,"84":1}}],["rollup",{"0":{"7":1,"33":1,"45":1,"56":1,"57":1,"61":1,"62":1,"63":1,"66":1,"68":1,"70":1,"73":1,"77":1,"81":1,"82":1,"86":1,"106":1,"107":1,"110":1,"144":1,"159":1,"164":1,"165":1,"169":1,"171":1,"173":1,"181":1,"192":1,"195":1,"198":1,"204":1,"205":1,"213":1,"217":1,"218":1,"220":1,"223":1,"226":1,"232":1,"233":1,"235":1,"239":1,"240":1,"241":1,"261":1,"264":1},"1":{"8":1,"9":1,"10":1,"11":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"62":1,"63":1,"64":2,"65":2,"66":2,"67":2,"68":2,"69":2,"71":1,"72":1,"73":1,"74":2,"75":1,"76":1,"78":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"87":1,"88":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"95":1,"96":1,"97":1,"98":1,"111":1,"112":1,"113":1,"114":1,"145":1,"146":1,"147":1,"148":1,"149":1,"150":1,"151":1,"152":1,"153":1,"154":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":2,"161":2,"162":2,"163":2,"164":2,"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"174":1,"175":1,"176":1,"177":1,"178":1,"179":1,"180":1,"181":1,"182":1,"183":1,"184":1,"185":1,"186":1,"187":1,"188":1,"189":1,"190":1,"191":1,"193":1,"194":1,"195":1,"196":2,"197":2,"198":1,"199":1,"200":1,"201":1,"202":1,"203":1,"204":1,"205":1,"206":1,"214":1,"215":1,"216":1,"217":1,"218":2,"219":1,"221":1,"222":1,"223":1,"224":2,"225":2,"226":1,"227":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1,"234":1,"236":1,"237":1,"238":1,"239":1,"240":1,"241":1,"242":1,"243":1,"244":1},"2":{"6":1,"7":2,"8":1,"12":2,"13":1,"14":1,"17":1,"19":2,"33":1,"41":3,"42":2,"45":2,"49":1,"58":2,"59":6,"61":1,"62":4,"63":2,"66":1,"68":1,"69":1,"70":1,"71":2,"72":1,"73":1,"74":2,"75":1,"76":2,"78":6,"81":4,"82":1,"83":13,"84":3,"85":1,"87":2,"100":1,"104":4,"106":1,"107":2,"111":1,"112":1,"115":1,"117":3,"119":1,"120":1,"121":2,"122":1,"125":2,"126":5,"127":3,"129":1,"130":2,"131":3,"133":3,"136":2,"140":5,"142":1,"145":1,"151":1,"159":1,"164":1,"166":3,"167":2,"168":2,"169":2,"170":1,"171":4,"172":1,"181":2,"182":1,"193":2,"195":2,"196":1,"197":2,"198":2,"204":1,"206":2,"207":1,"208":1,"209":1,"212":2,"213":2,"216":1,"217":4,"218":1,"219":2,"221":2,"223":2,"224":1,"225":2,"226":2,"232":1,"234":2,"236":4,"239":3,"240":3,"241":2,"244":1,"245":1,"251":2,"253":1,"260":1,"261":1,"262":2,"264":1,"265":2,"266":1,"286":1,"287":2,"289":1}}],["rollups",{"0":{"12":1},"1":{"13":1,"14":1,"15":1,"16":1,"17":1,"18":1},"2":{"3":1,"6":1,"7":6,"8":4,"9":2,"10":3,"12":5,"13":1,"14":1,"15":2,"18":3,"63":1,"100":4,"104":8,"105":1,"108":4,"110":1,"114":1,"115":1,"129":1,"131":3,"133":2,"135":1,"145":2,"146":6}}],["rollkitcosmossdkversion",{"2":{"274":1}}],["rollkitheight=11",{"2":{"251":1}}],["rollkitlatesttag",{"2":{"237":1,"263":1}}],["rollkit",{"0":{"0":1,"7":1,"12":1,"15":1,"16":1,"89":1,"95":1,"99":1,"100":1,"101":1,"104":1,"105":1,"109":1,"117":1,"128":1,"183":1,"245":1,"250":1,"263":1,"273":1,"274":1},"1":{"1":1,"2":1,"3":1,"4":1,"8":1,"9":1,"10":1,"11":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"96":1,"100":1,"101":1,"102":2,"103":2,"104":1,"105":1,"106":2,"107":2,"108":2,"109":1,"118":1,"119":1,"120":1,"121":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1,"128":1,"129":2,"130":2,"131":2,"132":1,"133":1,"134":1,"135":1,"184":1,"185":1,"186":1,"187":1,"246":1,"247":1,"248":1,"249":1,"250":1,"251":1,"252":1,"253":1,"254":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"261":1,"274":1},"2":{"0":2,"3":3,"6":2,"7":5,"9":3,"10":5,"11":1,"12":5,"13":2,"15":3,"16":3,"17":2,"18":4,"19":4,"37":1,"40":1,"41":5,"42":1,"45":5,"48":1,"58":3,"59":3,"60":1,"61":1,"62":4,"63":1,"66":1,"67":4,"69":5,"70":1,"72":1,"74":2,"78":1,"79":2,"80":1,"81":1,"82":3,"87":2,"88":1,"89":2,"93":4,"95":2,"96":3,"98":2,"99":2,"100":3,"104":8,"105":1,"106":2,"107":2,"109":2,"110":1,"114":3,"115":2,"116":3,"117":1,"119":1,"120":6,"121":1,"122":3,"125":3,"126":1,"127":2,"128":1,"130":1,"131":1,"133":1,"134":6,"135":1,"141":1,"142":8,"145":6,"146":5,"159":5,"166":1,"170":3,"171":4,"173":1,"175":1,"178":4,"179":1,"180":1,"181":1,"182":1,"191":1,"195":1,"208":1,"209":1,"217":1,"219":1,"223":1,"236":1,"237":2,"238":1,"239":1,"240":6,"241":3,"245":6,"246":1,"247":1,"248":2,"251":2,"254":1,"258":1,"259":2,"260":1,"262":2,"263":3,"264":4,"265":2,"266":2,"273":1,"274":2,"286":1,"287":4,"289":1}}],["rly",{"2":{"51":2,"53":1,"54":2,"83":8}}],["rpcuser",{"2":{"159":1}}],["rpcuser=rpcuser",{"2":{"152":1,"153":1,"154":4,"155":2}}],["rpcpass",{"2":{"159":1}}],["rpcpassword=rpcpass",{"2":{"152":1,"153":1,"154":4,"155":2}}],["rpcport=18332",{"2":{"152":1,"153":1,"154":4,"155":2}}],["rpc",{"0":{"126":1},"2":{"48":1,"52":2,"62":1,"67":1,"69":1,"74":1,"82":1,"83":3,"96":4,"97":2,"126":5,"142":4,"163":6,"164":3,"170":4,"191":2,"200":2,"201":4,"208":1,"228":2,"229":4,"241":1,"254":4,"255":2,"257":1,"258":2,"259":1,"260":1}}],["rpcs",{"2":{"9":1}}],["rt",{"2":{"27":2}}],["rs",{"2":{"25":4,"26":2,"30":4,"176":1}}],["risk",{"2":{"103":1}}],["right",{"2":{"50":1,"74":1,"177":1,"260":1,"268":1,"284":1}}],["rich",{"2":{"9":1}}],["rid",{"2":{"8":1}}],["rustc",{"2":{"176":1}}],["rustcounter",{"2":{"21":1}}],["rustup",{"2":{"176":4}}],["rustuse",{"2":{"25":1,"27":1}}],["rustpub",{"2":{"26":1}}],["rust",{"0":{"176":1},"2":{"21":1,"25":2,"26":1,"173":1,"176":5,"186":3,"187":1,"188":1}}],["rule",{"0":{"76":1},"2":{"10":1,"83":1,"131":3}}],["rules",{"2":{"8":1,"268":2}}],["runs",{"2":{"63":1,"64":1,"80":1,"238":1,"286":1}}],["runtime",{"2":{"27":3}}],["running",{"0":{"63":1,"80":1,"152":1,"159":1,"167":1,"171":1,"210":1,"238":1,"258":1,"287":1},"1":{"64":1,"65":1,"66":1,"67":1,"68":1,"69":1,"153":1,"154":1,"155":1,"156":1,"157":1,"158":1,"160":1,"161":1,"162":1,"163":1,"164":1,"259":1,"260":1,"261":1},"2":{"13":1,"36":1,"39":3,"40":1,"41":1,"44":1,"48":2,"62":1,"63":1,"65":1,"66":1,"69":1,"81":3,"82":1,"95":1,"114":1,"130":1,"151":2,"154":1,"159":1,"161":1,"163":1,"169":2,"171":1,"175":1,"179":1,"193":1,"194":1,"204":1,"208":1,"210":1,"213":1,"217":1,"219":1,"221":1,"232":1,"239":1,"240":1,"241":1,"245":1,"246":1,"251":1,"256":1,"258":1,"259":1,"265":1,"286":1,"288":1}}],["run",{"0":{"45":1,"46":1,"48":1,"194":1,"215":1,"222":1,"247":1,"264":1,"285":1,"286":1},"1":{"47":1,"48":1,"286":1,"287":1,"288":1},"2":{"1":2,"8":1,"12":1,"17":1,"18":1,"24":1,"40":1,"45":3,"48":1,"60":1,"62":1,"65":1,"79":1,"80":1,"93":1,"94":3,"96":2,"100":1,"114":1,"122":1,"125":3,"145":1,"149":1,"150":1,"153":1,"154":1,"157":1,"160":1,"161":1,"162":1,"164":1,"171":1,"176":1,"179":1,"184":1,"185":1,"186":3,"187":2,"194":1,"198":1,"201":1,"205":1,"208":1,"210":1,"211":1,"215":1,"217":1,"218":1,"222":1,"226":1,"229":1,"233":1,"238":1,"245":1,"246":1,"247":1,"254":1,"259":3,"263":1,"270":2,"271":1,"274":1,"278":1,"286":1,"287":1}}],["ram",{"2":{"147":1}}],["raw",{"2":{"126":1,"191":1,"287":2}}],["rabbit",{"2":{"109":1}}],["rather",{"2":{"104":2}}],["ratio",{"2":{"14":1}}],["rapid",{"2":{"100":1}}],["rand",{"2":{"159":1,"170":1,"195":1,"217":1,"223":1,"259":1}}],["ran",{"2":{"36":1,"63":1,"96":1,"125":1,"198":1,"218":1,"226":1,"254":1,"271":1}}],["range",{"0":{"70":1},"1":{"71":1,"72":1,"73":1,"74":1,"75":1,"76":1},"2":{"5":1,"59":2,"70":1,"71":1,"73":1,"74":2,"75":1,"282":1}}],["raise",{"2":{"4":1}}],["revealed",{"2":{"288":1}}],["review",{"2":{"2":1,"21":3,"28":1}}],["reward",{"2":{"282":3,"283":4,"284":1}}],["req",{"2":{"203":4,"231":4}}],["requisites",{"0":{"43":1,"267":1},"1":{"44":1}}],["require",{"2":{"104":1,"134":1,"202":1,"230":1}}],["requirements",{"0":{"44":1}}],["required",{"2":{"10":1,"78":1,"200":1,"228":1,"236":1}}],["requires",{"2":{"8":1,"103":2,"131":2,"151":1,"170":1,"186":1}}],["request",{"0":{"202":1,"230":1},"2":{"2":2,"142":1,"191":1,"201":2,"203":4,"211":1,"229":2,"231":4}}],["rebuild",{"2":{"169":1}}],["remainder",{"2":{"187":1,"252":1}}],["remaining",{"2":{"134":1,"148":1}}],["remember",{"2":{"154":1,"282":1}}],["removeguess",{"2":{"283":1}}],["remove",{"2":{"7":1,"8":1,"196":1,"216":1,"224":1,"283":1}}],["reuse",{"2":{"104":1,"127":1,"275":1}}],["registry",{"2":{"186":2}}],["register",{"2":{"63":1,"191":3}}],["regtest",{"2":{"151":1,"152":1,"153":1,"154":4,"155":2,"158":1}}],["regret",{"2":{"83":2,"245":1}}],["reiterate",{"2":{"67":1}}],["replay",{"2":{"133":1}}],["replacement",{"2":{"119":1,"178":1,"287":1}}],["replace",{"2":{"45":1,"52":1,"93":2,"120":2,"157":1,"170":2,"178":2,"195":1,"217":1,"223":1,"274":1,"282":1,"283":1}}],["repositories",{"2":{"288":1}}],["repository",{"2":{"0":1,"1":1,"2":2,"4":1,"28":1,"81":1,"120":2,"178":1,"239":1,"248":1,"253":1}}],["repo",{"0":{"209":1,"248":1},"2":{"32":1,"92":1,"181":1,"195":1,"209":1,"223":1,"287":1}}],["record",{"2":{"134":1,"191":2}}],["recommend",{"2":{"69":1,"177":1,"267":1}}],["recommended",{"2":{"42":1,"130":1}}],["receipts",{"2":{"96":2,"254":2}}],["receive",{"2":{"104":1,"117":1,"125":2}}],["receiver=",{"2":{"257":1}}],["receiver",{"2":{"56":2,"57":1,"83":1,"243":1,"257":1}}],["received",{"2":{"53":1,"125":2}}],["receiving",{"2":{"42":1}}],["recruit",{"2":{"7":1}}],["reducing",{"2":{"21":1}}],["reduce",{"0":{"69":1},"2":{"10":1,"104":1}}],["retrieving",{"2":{"258":1}}],["retrieveloop",{"2":{"125":3}}],["retrieve",{"2":{"36":1,"125":1,"258":1}}],["retrieveblocks",{"2":{"16":1,"121":1}}],["retrieveblock",{"2":{"16":1}}],["returned",{"2":{"202":1,"230":1}}],["returning",{"2":{"124":1,"201":1,"229":1}}],["returns",{"2":{"25":1,"26":2,"161":1,"200":1,"201":3,"203":2,"228":1,"229":3,"231":2}}],["return",{"2":{"25":1,"41":1,"51":1,"54":1,"56":1,"57":1,"161":1,"282":7,"283":7}}],["retain",{"2":{"7":1}}],["reach",{"2":{"283":1}}],["reached",{"2":{"283":1}}],["reasons",{"2":{"136":1}}],["real",{"2":{"73":1,"75":1,"131":2}}],["reality",{"2":{"13":1,"14":1}}],["readme",{"2":{"272":2}}],["ready",{"2":{"18":1,"19":1,"21":1,"59":1,"109":1,"159":1,"286":1}}],["reading",{"2":{"16":1,"98":1}}],["reader",{"2":{"16":2}}],["read",{"2":{"16":3,"100":1,"140":1,"145":1,"163":1,"164":1,"270":1,"272":1,"287":1}}],["resource",{"2":{"116":1,"130":1}}],["resources",{"2":{"8":1,"9":1,"92":3,"96":1,"97":1,"102":1,"103":1,"104":2}}],["resolved",{"2":{"178":1}}],["resolve",{"2":{"108":1,"191":1}}],["resist",{"2":{"83":2}}],["resistance",{"2":{"12":1,"131":1}}],["res=0",{"2":{"82":1,"241":1,"251":1,"264":1}}],["responsible",{"2":{"125":1,"131":1,"200":1,"201":1,"228":1,"229":1,"272":1,"275":1,"276":1}}],["response",{"0":{"202":1,"230":1},"2":{"26":2,"191":1,"201":5,"203":3,"205":1,"229":5,"231":3,"233":1,"287":3}}],["respective",{"2":{"62":1,"275":1}}],["restrict",{"2":{"106":1}}],["restricted",{"2":{"102":1}}],["rest",{"2":{"62":1,"104":1}}],["restarted",{"2":{"69":1}}],["restarting",{"0":{"68":1,"158":1,"198":1,"218":1,"226":1},"2":{"67":1,"69":1}}],["restart",{"0":{"61":1,"62":1,"63":1,"69":1,"204":1,"232":1},"1":{"62":1,"63":1,"64":2,"65":2,"66":2,"67":2,"68":2,"69":2},"2":{"59":1,"61":1,"62":11,"63":2,"64":1,"68":1,"111":1,"176":1,"198":5,"204":1,"218":4,"226":5,"232":1}}],["restore",{"2":{"53":2,"83":3}}],["results",{"2":{"140":1,"142":1}}],["result",{"2":{"27":1,"140":1,"142":1,"161":1,"170":1,"260":2}}],["reset",{"2":{"26":3}}],["research",{"2":{"12":1,"13":1,"15":1,"18":1}}],["rent",{"2":{"10":1}}],["refactored",{"2":{"283":1}}],["refresh",{"2":{"270":1}}],["refused",{"2":{"140":1}}],["refers",{"2":{"131":1}}],["refer",{"2":{"29":1}}],["references",{"2":{"281":1}}],["reference",{"2":{"0":1,"3":1,"30":1,"96":1,"187":1}}],["refined",{"2":{"9":1}}],["reload",{"2":{"176":1}}],["rely",{"2":{"87":1,"129":1}}],["relying",{"2":{"8":1}}],["relayed",{"2":{"56":1,"57":1}}],["relayers",{"2":{"50":2}}],["relayer",{"0":{"50":1,"51":1,"52":1,"53":1},"1":{"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"57":1},"2":{"42":1,"50":4,"51":2,"52":3,"83":14}}],["relaying",{"0":{"50":1,"55":1},"1":{"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"57":1},"2":{"53":1,"55":1}}],["relay",{"2":{"48":1,"49":2,"57":1,"242":1}}],["related",{"2":{"9":1}}],["relevant",{"2":{"70":1}}],["relevantly",{"2":{"2":1}}],["released",{"2":{"34":1}}],["release",{"2":{"9":1,"120":1,"184":1,"210":1,"245":1}}],["re",{"0":{"65":1},"2":{"2":1,"7":1,"8":1,"11":1,"12":1,"16":1,"19":1,"21":1,"25":1,"26":1,"48":1,"63":2,"90":2,"99":1,"102":1,"109":2,"114":1,"115":2,"130":1,"159":1,"170":1,"198":1,"200":1,"206":1,"219":1,"226":1,"228":1,"234":1,"260":1,"286":1}}],["tsx",{"2":{"256":1}}],["ttl",{"2":{"82":1,"241":1}}],["tmp",{"2":{"80":1,"81":1,"83":2}}],["txindex=1",{"2":{"152":1}}],["txhash",{"2":{"84":1,"187":2,"191":1,"242":1,"287":5}}],["txs=0",{"2":{"251":1}}],["txs",{"2":{"82":1,"142":2,"241":1,"251":1,"264":1}}],["tx",{"2":{"54":4,"56":2,"57":1,"63":2,"76":1,"83":6,"84":3,"187":2,"188":1,"189":1,"190":1,"191":2,"242":1,"284":1,"287":7}}],["txt",{"2":{"36":1,"93":1,"94":1,"97":1}}],["two",{"2":{"54":1,"136":1,"242":1,"280":1}}],["tweet",{"2":{"14":1}}],["title",{"2":{"283":2,"284":1}}],["tia",{"0":{"77":1},"1":{"78":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1},"2":{"59":1,"63":1,"69":2,"78":3,"82":1,"83":3,"84":1,"85":1,"167":2,"258":1}}],["tip",{"2":{"45":1,"48":1,"54":1,"56":1,"78":1,"81":1,"97":1,"99":1,"160":1,"170":1,"173":1,"176":1,"178":1,"193":1,"195":1,"207":1,"208":1,"211":1,"213":1,"217":1,"221":1,"223":1,"236":1,"242":1,"245":1,"256":1,"258":1,"259":1,"266":1}}],["tidy",{"2":{"45":1,"178":1,"274":1}}],["timezone",{"2":{"288":1}}],["timer",{"2":{"125":3}}],["time=1000",{"2":{"82":1,"241":1}}],["timeout",{"2":{"52":5,"83":5,"242":1,"287":2}}],["timestamp",{"2":{"142":1,"191":1,"287":1}}],["times",{"2":{"19":2,"283":2}}],["time",{"0":{"103":1},"2":{"7":1,"10":1,"14":1,"19":5,"21":1,"24":1,"73":1,"75":1,"76":1,"103":1,"104":2,"131":2,"142":3,"167":1,"272":1,"281":1,"282":2,"283":2,"284":1,"288":1}}],["tcp",{"2":{"39":2,"56":2,"57":3,"62":1,"67":1,"69":1,"76":1,"82":2,"241":2}}],["trigger",{"2":{"277":1}}],["tries",{"2":{"268":2,"283":2}}],["triple",{"2":{"54":1}}],["trying",{"2":{"178":1,"287":1}}],["try",{"2":{"162":1,"191":1,"282":1,"283":2,"287":3}}],["true",{"2":{"52":2,"103":1,"159":2,"282":1}}],["trusted",{"2":{"8":1}}],["trust",{"2":{"8":2,"42":2,"49":2,"53":2,"104":1,"108":1,"117":1,"130":1,"134":1}}],["tradeoffs",{"2":{"104":1}}],["trade",{"2":{"100":1,"103":1,"104":1}}],["tracked",{"2":{"245":1}}],["track",{"2":{"65":1}}],["tracking",{"2":{"42":1,"276":1}}],["transitions",{"2":{"277":1}}],["transition",{"2":{"134":2}}],["transient",{"2":{"41":1}}],["transfers",{"2":{"83":1,"108":1,"276":2}}],["transfer",{"0":{"56":1,"57":1},"2":{"54":11,"55":1,"56":5,"57":4,"82":2,"83":4,"190":2,"257":1}}],["transact",{"2":{"54":4,"140":1}}],["transactionindex",{"2":{"97":1}}],["transactionhash",{"2":{"97":1}}],["transaction",{"0":{"136":1,"137":1,"138":1},"1":{"137":1,"138":1,"139":1,"140":1},"2":{"14":2,"41":2,"54":5,"56":1,"57":1,"63":2,"76":3,"84":2,"116":1,"126":1,"131":1,"136":1,"140":6,"187":1,"189":1,"242":6,"243":1,"275":1,"287":9}}],["transactions",{"0":{"84":1,"242":1},"2":{"14":1,"16":1,"58":1,"70":1,"71":1,"73":1,"75":2,"76":1,"78":1,"104":2,"114":1,"117":1,"124":2,"126":2,"127":1,"131":2,"133":1,"134":2,"136":1,"140":2,"142":1,"163":1,"164":1,"236":1,"241":1,"276":1,"277":1,"287":2}}],["traits",{"2":{"26":1}}],["tlsv1",{"2":{"176":1}}],["tls",{"2":{"159":1}}],["tl",{"0":{"13":1}}],["template",{"2":{"272":1}}],["temporary",{"2":{"178":1}}],["team",{"2":{"173":1,"186":1}}],["teach",{"2":{"61":1}}],["tether",{"2":{"133":1}}],["techniques",{"2":{"94":1}}],["technical",{"0":{"116":1},"2":{"3":1}}],["telegram",{"2":{"60":1,"114":1}}],["tendermint",{"2":{"54":8,"142":1}}],["text",{"2":{"52":1,"201":3,"202":2,"203":3,"229":3,"230":2,"231":3}}],["termination",{"2":{"54":8}}],["terminal",{"2":{"36":1,"45":1,"48":1,"66":1,"81":1,"153":1,"184":1,"201":2,"217":1,"229":2,"247":1,"250":1,"257":1,"261":1,"263":1,"270":3,"288":1}}],["terms",{"2":{"50":1}}],["testutil",{"2":{"272":1}}],["testapp",{"2":{"260":1}}],["testdecrement",{"2":{"161":2}}],["testincrement",{"2":{"161":2}}],["testing",{"2":{"21":1,"32":1,"59":1,"272":1}}],["testgetcount",{"2":{"161":2}}],["testnets",{"2":{"166":1,"172":1}}],["testnet",{"0":{"46":1,"48":1,"83":1,"110":1,"141":1,"142":1,"221":1},"1":{"47":1,"48":1,"111":1,"112":1,"113":1,"114":1,"142":1,"143":2,"222":1,"223":1,"224":1,"225":1,"226":1,"227":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1},"2":{"42":1,"48":3,"52":2,"54":6,"55":1,"56":2,"57":1,"63":2,"82":1,"83":4,"110":1,"141":1,"143":1,"145":1,"163":1,"167":2,"170":3,"171":1,"195":4,"197":1,"198":3,"204":1,"213":1,"221":1,"222":1,"223":4,"225":1,"226":3,"232":1,"258":3,"259":1,"261":1}}],["tests",{"0":{"161":1,"185":1},"2":{"27":2,"161":1,"185":1}}],["test",{"2":{"9":1,"17":2,"21":3,"52":3,"56":1,"65":1,"76":1,"83":5,"84":2,"119":1,"149":1,"161":10,"162":1,"163":1,"164":2,"185":1,"187":3,"190":1,"191":2,"242":2,"284":1,"286":1,"287":6}}],["tested",{"2":{"9":1,"162":1,"164":1}}],["t",{"2":{"8":1,"45":1,"63":1,"65":1,"72":1,"82":1,"98":1,"120":1,"129":1,"143":1,"161":2,"176":2,"208":1,"242":1,"247":1,"268":1,"283":2,"287":1}}],["tags",{"2":{"178":1}}],["tar",{"2":{"148":1,"149":4}}],["targeted",{"2":{"267":1}}],["target=",{"2":{"186":4}}],["target",{"2":{"25":3,"176":2,"184":1,"186":2}}],["tasks",{"2":{"148":1}}],["taking",{"2":{"107":1}}],["taken",{"2":{"191":1}}],["takes",{"2":{"104":1,"278":1}}],["take",{"0":{"8":1},"2":{"189":1,"270":1,"284":1}}],["tailored",{"2":{"106":1}}],["tail",{"2":{"83":1}}],["tab",{"2":{"74":1,"75":1,"76":1}}],["table",{"0":{"6":1}}],["talk",{"2":{"50":1}}],["talking",{"2":{"50":1}}],["taproot",{"0":{"14":1},"2":{"13":1,"14":5,"16":3,"146":1}}],["tap",{"2":{"7":1}}],["typical",{"2":{"136":1}}],["typically",{"2":{"131":1}}],["typing",{"2":{"7":1}}],["type=light",{"2":{"259":1}}],["type=hash",{"2":{"189":1,"287":1}}],["type=volume",{"2":{"186":4}}],["typed",{"2":{"63":1}}],["type",{"2":{"52":4,"54":4,"65":1,"83":4,"97":1,"108":1,"142":1,"201":1,"203":1,"229":1,"231":1,"242":7,"272":1,"280":3,"282":1,"283":3,"287":2}}],["types",{"0":{"128":1,"202":1,"230":1,"279":1,"280":1},"1":{"129":1,"130":1,"131":1,"280":1},"2":{"30":1,"54":4,"200":1,"203":6,"228":1,"231":6,"270":1,"279":1,"282":8,"283":9,"284":1}}],["typos",{"2":{"2":1}}],["tutorial",{"0":{"42":1,"86":1,"144":1},"1":{"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"57":1,"87":1,"88":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"95":1,"96":1,"97":1,"98":1,"145":1,"146":1,"147":1,"148":1,"149":1,"150":1,"151":1,"152":1,"153":1,"154":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"161":1,"162":1,"163":1,"164":1},"2":{"35":1,"42":1,"62":2,"72":1,"78":2,"91":1,"92":1,"141":1,"145":2,"159":1,"160":1,"166":2,"168":1,"173":3,"175":1,"176":1,"177":1,"179":1,"187":1,"193":4,"201":2,"206":2,"207":1,"208":1,"212":1,"213":3,"217":1,"219":1,"221":4,"229":2,"234":2,"236":2,"245":2,"252":1,"258":1,"261":1,"266":3,"267":3,"270":1,"272":1}}],["tutorials",{"2":{"0":1,"3":1,"59":1,"92":1,"96":1,"97":1,"99":1,"109":1,"110":2,"114":1,"193":1,"213":1,"221":1,"267":1}}],["tube",{"2":{"21":1}}],["turn",{"2":{"8":1,"58":1}}],["tuned",{"2":{"6":1}}],["thus",{"2":{"97":1}}],["throws",{"2":{"203":1,"231":1}}],["throughout",{"2":{"23":1,"100":1}}],["through",{"2":{"5":1,"8":1,"14":2,"19":1,"50":1,"59":1,"78":1,"104":1,"125":3,"140":1,"146":1,"236":1,"258":1}}],["three",{"2":{"71":1,"170":1}}],["though",{"2":{"287":1}}],["thousands",{"2":{"14":1}}],["those",{"2":{"29":1,"103":1,"110":1,"267":1,"268":1}}],["thanks",{"2":{"15":1,"119":1}}],["than",{"2":{"14":2,"16":1,"21":2,"41":1,"56":1,"70":1,"74":1,"104":2,"131":1,"257":1,"287":1}}],["that",{"2":{"7":3,"8":4,"9":1,"10":1,"12":2,"14":4,"16":3,"18":2,"25":1,"26":1,"27":1,"28":1,"29":2,"30":1,"31":1,"34":3,"39":2,"41":1,"50":1,"53":1,"59":1,"62":1,"63":5,"75":3,"76":1,"78":1,"81":1,"82":1,"83":1,"85":1,"87":2,"92":1,"93":1,"94":3,"96":1,"97":1,"100":2,"102":1,"104":2,"107":1,"108":1,"110":1,"120":1,"121":1,"125":2,"130":1,"133":2,"134":4,"140":1,"146":2,"148":1,"149":1,"158":1,"159":1,"162":1,"163":1,"164":1,"166":1,"167":1,"172":1,"178":1,"180":1,"181":1,"190":1,"191":2,"193":1,"197":1,"200":3,"201":4,"202":1,"203":4,"207":1,"209":1,"210":1,"211":1,"213":1,"217":2,"221":1,"225":1,"228":3,"229":4,"230":1,"231":4,"236":1,"239":1,"240":1,"242":1,"244":1,"245":2,"257":2,"264":1,"265":1,"268":2,"271":2,"272":2,"274":1,"277":1,"278":1,"280":2,"281":1,"282":2,"283":6,"284":1,"287":3,"288":2}}],["things",{"2":{"282":1,"283":1,"287":1}}],["think",{"2":{"108":1,"271":1}}],["thinking",{"2":{"11":1}}],["this",{"0":{"64":1},"2":{"1":1,"2":2,"4":1,"5":1,"7":3,"8":6,"9":2,"11":1,"15":1,"16":1,"18":1,"21":4,"23":1,"25":3,"26":1,"28":1,"30":1,"33":1,"34":2,"35":1,"41":2,"42":2,"48":4,"50":1,"52":1,"53":1,"54":3,"56":3,"57":2,"58":4,"59":1,"61":1,"62":2,"63":7,"64":1,"70":1,"71":1,"78":2,"80":1,"81":1,"82":1,"87":3,"89":2,"90":1,"91":2,"94":1,"95":2,"103":1,"104":1,"107":1,"117":1,"119":1,"121":1,"124":1,"127":1,"131":1,"134":2,"140":1,"145":2,"146":1,"150":1,"151":1,"154":2,"160":1,"161":1,"162":1,"166":1,"169":1,"170":4,"171":1,"173":3,"175":1,"176":1,"177":1,"178":1,"179":1,"181":2,"182":1,"186":1,"187":1,"189":2,"191":1,"193":3,"195":3,"201":3,"203":1,"207":1,"208":1,"213":2,"217":2,"221":3,"223":3,"229":3,"231":1,"236":2,"238":1,"240":2,"242":1,"245":3,"251":1,"252":1,"256":1,"257":1,"258":1,"259":2,"266":3,"267":3,"268":3,"270":3,"271":2,"272":1,"276":1,"278":1,"280":2,"282":5,"283":4,"284":2,"286":1,"287":7,"288":1}}],["these",{"2":{"16":2,"26":1,"50":1,"54":1,"55":1,"59":1,"83":1,"93":1,"104":2,"125":1,"134":2,"148":1,"149":1,"258":1,"265":1,"277":1}}],["therefore",{"2":{"114":1}}],["there",{"2":{"10":2,"14":1,"50":1,"63":1,"121":1,"134":1,"140":1,"166":1,"268":2,"282":1,"287":1,"288":1}}],["they",{"2":{"7":3,"8":3,"36":1,"104":1,"108":2,"115":1,"129":2,"130":1,"140":2,"283":1}}],["then",{"2":{"7":1,"14":1,"19":1,"25":2,"54":1,"56":1,"57":1,"81":1,"94":1,"96":1,"97":1,"134":2,"140":1,"145":1,"163":2,"164":1,"198":1,"218":1,"226":1,"250":1,"282":2,"283":3,"287":1}}],["their",{"2":{"3":1,"7":3,"8":3,"15":1,"70":1,"99":2,"104":2,"106":1,"115":2,"134":1,"140":2,"268":1}}],["themselves",{"2":{"134":1}}],["them",{"2":{"2":1,"7":1,"8":1,"18":1,"26":1,"29":1,"54":1,"117":1,"140":1,"170":1,"175":1,"277":1}}],["the",{"0":{"1":1,"7":1,"9":1,"27":1,"37":1,"39":1,"40":1,"67":1,"89":1,"90":1,"97":1,"146":1,"153":1,"158":1,"159":1,"161":1,"162":1,"164":1,"182":1,"184":1,"197":1,"209":1,"210":1,"217":1,"225":1,"248":1,"250":1,"254":1,"255":1,"256":1,"257":1,"261":1,"269":1,"271":1,"275":1,"285":1,"288":1},"1":{"8":1,"9":1,"10":1,"11":1,"160":1,"161":1,"162":1,"163":1,"164":1,"218":1,"270":1,"271":1,"272":1,"276":1,"286":1,"287":1,"288":1},"2":{"0":2,"1":2,"2":3,"3":3,"4":2,"6":1,"7":11,"8":8,"9":5,"10":10,"12":6,"13":2,"14":10,"16":13,"17":3,"18":5,"19":7,"21":8,"22":1,"23":2,"24":1,"25":7,"26":9,"27":2,"28":3,"29":6,"30":6,"31":1,"32":3,"33":1,"34":1,"35":2,"36":1,"37":3,"38":1,"39":11,"40":2,"41":22,"42":2,"45":6,"48":6,"49":2,"50":7,"52":3,"53":3,"54":2,"56":4,"57":6,"58":3,"59":3,"60":1,"62":11,"63":12,"64":3,"65":2,"66":1,"67":2,"68":1,"69":4,"70":1,"71":3,"72":1,"74":5,"75":4,"76":4,"78":8,"79":3,"80":1,"81":5,"82":6,"83":13,"84":2,"85":1,"87":5,"88":1,"89":1,"90":3,"92":7,"93":7,"94":8,"95":1,"96":7,"97":11,"99":2,"100":4,"102":2,"103":7,"104":18,"105":1,"106":2,"107":3,"108":1,"109":4,"110":2,"114":4,"115":5,"116":2,"117":4,"120":7,"121":5,"122":3,"124":4,"125":14,"126":6,"127":3,"128":1,"130":1,"131":2,"133":2,"134":6,"136":2,"140":31,"141":4,"142":5,"143":1,"145":2,"146":3,"148":3,"149":1,"150":2,"151":2,"152":1,"153":1,"154":2,"155":2,"156":4,"157":7,"158":3,"159":5,"160":4,"161":11,"162":3,"163":8,"164":12,"166":2,"167":2,"168":3,"169":2,"170":9,"171":3,"173":6,"176":4,"177":1,"178":2,"180":1,"181":7,"182":2,"184":3,"185":2,"186":5,"187":13,"188":2,"189":6,"190":2,"191":8,"193":3,"194":4,"195":7,"196":2,"197":2,"198":2,"200":6,"201":12,"202":2,"203":14,"204":1,"205":2,"206":2,"207":2,"208":2,"209":3,"210":4,"211":5,"212":2,"213":2,"215":4,"216":2,"217":10,"218":2,"219":1,"221":3,"222":4,"223":7,"224":2,"225":2,"226":2,"228":6,"229":12,"230":2,"231":14,"232":1,"233":2,"234":2,"236":4,"237":3,"238":1,"239":1,"240":9,"241":5,"242":6,"243":3,"245":3,"246":1,"248":2,"250":1,"251":1,"252":2,"253":2,"254":4,"255":1,"256":6,"257":5,"258":7,"259":5,"260":3,"261":3,"262":2,"263":4,"264":2,"266":6,"267":3,"268":19,"270":3,"271":8,"272":10,"274":4,"275":4,"276":9,"277":7,"278":4,"279":2,"280":6,"281":12,"282":24,"283":35,"284":8,"286":1,"287":45,"288":6}}],["toaddr",{"2":{"284":1}}],["tomorrow",{"2":{"283":1}}],["tomlcounter",{"2":{"27":1}}],["toml",{"0":{"24":1},"2":{"22":1,"24":3,"30":3,"240":7}}],["together",{"2":{"272":1}}],["touppercase",{"2":{"82":1}}],["toutf8",{"2":{"82":1}}],["tohex",{"2":{"82":1}}],["top",{"2":{"63":1,"74":1,"134":1}}],["topics",{"2":{"2":1,"5":1,"59":1}}],["total",{"2":{"56":1,"57":1,"83":1,"142":3,"189":1,"191":2,"243":2,"255":1}}],["tokio",{"2":{"27":2}}],["token=",{"2":{"62":1}}],["token=$auth",{"2":{"62":1,"67":1,"69":1}}],["token=$",{"2":{"39":1,"170":1}}],["tokens",{"2":{"8":1,"53":1,"55":1,"63":1,"65":1,"103":1,"268":1}}],["token",{"0":{"56":1,"57":1,"77":2},"1":{"78":2,"79":2,"80":2,"81":2,"82":2,"83":2,"84":2,"85":2},"2":{"7":1,"8":3,"10":3,"39":4,"56":1,"57":1,"59":2,"62":3,"67":1,"69":1,"78":5,"82":2,"84":1,"85":1,"108":1,"170":5,"171":2,"258":1,"260":2,"282":1,"283":1}}],["towards",{"2":{"18":1,"134":1}}],["today",{"2":{"12":1,"109":1,"282":1,"283":3,"287":1}}],["too",{"2":{"258":1}}],["toolchain",{"2":{"176":1}}],["tool",{"2":{"81":1,"186":1,"270":1}}],["tools",{"2":{"9":1,"119":1}}],["toolings",{"2":{"270":1}}],["tooling",{"2":{"7":1,"9":1,"107":1}}],["took",{"2":{"7":2,"16":1}}],["to",{"0":{"16":1,"19":1,"24":1,"41":1,"56":1,"57":1,"58":1,"59":1,"61":1,"70":1,"77":1,"83":1,"91":1,"95":1,"103":1,"143":1,"164":1,"165":1,"171":1,"193":1,"214":1,"221":1},"1":{"60":1,"62":1,"63":1,"64":1,"65":1,"66":1,"67":1,"68":1,"69":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"78":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"92":1,"93":1,"94":1,"96":1,"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"200":1,"201":1,"202":1,"203":1,"204":1,"205":1,"215":1,"216":1,"217":1,"218":1,"222":1,"223":1,"224":1,"225":1,"226":1,"227":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1},"2":{"0":2,"1":1,"2":4,"3":1,"5":2,"7":13,"8":13,"9":6,"10":8,"11":1,"12":6,"13":1,"14":7,"15":2,"16":9,"17":2,"18":7,"19":6,"21":9,"22":1,"23":2,"24":3,"25":8,"26":3,"27":2,"28":1,"29":5,"30":5,"32":1,"33":1,"34":1,"35":1,"36":1,"39":2,"41":5,"42":3,"45":3,"48":5,"50":3,"53":1,"54":2,"56":3,"57":2,"58":5,"59":9,"61":1,"62":7,"63":12,"64":1,"65":3,"67":3,"69":2,"70":1,"72":2,"74":1,"75":2,"76":1,"78":2,"79":1,"80":2,"81":4,"82":4,"83":2,"85":1,"87":2,"90":1,"92":3,"93":8,"94":6,"95":1,"96":5,"97":5,"98":1,"99":6,"100":5,"102":2,"103":6,"104":13,"105":2,"106":4,"107":4,"108":3,"109":6,"110":2,"114":3,"115":5,"116":2,"117":1,"119":2,"120":4,"121":3,"122":2,"125":3,"127":3,"131":4,"133":2,"134":7,"136":1,"140":10,"142":2,"143":2,"145":8,"146":7,"148":2,"149":2,"150":1,"153":1,"154":2,"155":1,"157":3,"158":1,"159":2,"161":4,"162":3,"163":2,"164":8,"166":2,"167":2,"168":1,"169":3,"170":3,"171":1,"172":1,"173":3,"176":10,"177":2,"178":4,"179":2,"180":1,"181":3,"182":1,"184":2,"185":1,"186":3,"187":3,"188":1,"191":6,"194":2,"195":4,"196":1,"198":4,"200":6,"201":4,"203":2,"206":2,"207":3,"208":3,"209":1,"211":5,"212":3,"213":1,"215":2,"216":1,"217":4,"218":3,"222":2,"223":4,"224":1,"226":4,"228":6,"229":4,"231":2,"234":2,"236":2,"238":2,"239":1,"240":3,"241":1,"242":4,"244":1,"245":5,"246":1,"247":1,"248":2,"251":4,"252":3,"253":1,"254":3,"255":1,"256":3,"257":5,"258":8,"259":8,"260":3,"261":2,"262":2,"263":1,"264":1,"265":1,"266":3,"267":3,"268":6,"270":3,"271":5,"272":3,"273":1,"274":1,"275":2,"276":1,"277":5,"278":1,"279":1,"280":2,"281":3,"282":9,"283":11,"284":7,"286":2,"287":17,"288":4,"289":1}}]],"serializationVersion":2}';export{e as default}; diff --git a/pr-383/assets/chunks/VPLocalSearchBox.a5b12170.js b/pr-383/assets/chunks/VPLocalSearchBox.151d2161.js similarity index 99% rename from pr-383/assets/chunks/VPLocalSearchBox.a5b12170.js rename to pr-383/assets/chunks/VPLocalSearchBox.151d2161.js index e751c7d24..40d866496 100644 --- a/pr-383/assets/chunks/VPLocalSearchBox.a5b12170.js +++ b/pr-383/assets/chunks/VPLocalSearchBox.151d2161.js @@ -1,4 +1,4 @@ -import{$ as mt,h as ie,z as Ve,d as Dt,C as de,g as _e,A as Ot,j as De,E as he,al as Rt,am as Mt,o as X,b as Pt,k as A,a3 as Lt,l as W,an as zt,ao as Bt,B as Vt,c as te,n as tt,e as we,M as rt,L as at,a as ve,t as pe,ap as $t,p as jt,m as Wt,aq as nt,ar as Kt,ab as Jt,ah as Ut,_ as Ht}from"./framework.be0a7370.js";import{u as Gt,a as qt,b as Qt,c as it,d as Yt,e as Zt,w as Xt,o as xe,f as er,g as tr,h as rr}from"./theme.e11407bf.js";const ar={root:()=>mt(()=>import("./@localSearchIndexroot.b693d4d8.js"),[])};/*! +import{$ as mt,h as ie,z as Ve,d as Dt,C as de,g as _e,A as Ot,j as De,E as he,al as Rt,am as Mt,o as X,b as Pt,k as A,a3 as Lt,l as W,an as zt,ao as Bt,B as Vt,c as te,n as tt,e as we,M as rt,L as at,a as ve,t as pe,ap as $t,p as jt,m as Wt,aq as nt,ar as Kt,ab as Jt,ah as Ut,_ as Ht}from"./framework.be0a7370.js";import{u as Gt,a as qt,b as Qt,c as it,d as Yt,e as Zt,w as Xt,o as xe,f as er,g as tr,h as rr}from"./theme.71fa6e36.js";const ar={root:()=>mt(()=>import("./@localSearchIndexroot.3fd80146.js"),[])};/*! * tabbable 6.2.0 * @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE */var gt=["input:not([inert])","select:not([inert])","textarea:not([inert])","a[href]:not([inert])","button:not([inert])","[tabindex]:not(slot):not([inert])","audio[controls]:not([inert])","video[controls]:not([inert])",'[contenteditable]:not([contenteditable="false"]):not([inert])',"details>summary:first-of-type:not([inert])","details:not([inert])"],Se=gt.join(","),bt=typeof Element>"u",se=bt?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,Ae=!bt&&Element.prototype.getRootNode?function(o){var e;return o==null||(e=o.getRootNode)===null||e===void 0?void 0:e.call(o)}:function(o){return o==null?void 0:o.ownerDocument},Ce=function o(e,t){var r;t===void 0&&(t=!0);var n=e==null||(r=e.getAttribute)===null||r===void 0?void 0:r.call(e,"inert"),a=n===""||n==="true",i=a||t&&e&&o(e.parentNode);return i},nr=function(e){var t,r=e==null||(t=e.getAttribute)===null||t===void 0?void 0:t.call(e,"contenteditable");return r===""||r==="true"},wt=function(e,t,r){if(Ce(e))return[];var n=Array.prototype.slice.apply(e.querySelectorAll(Se));return t&&se.call(e,Se)&&n.unshift(e),n=n.filter(r),n},xt=function o(e,t,r){for(var n=[],a=Array.from(e);a.length;){var i=a.shift();if(!Ce(i,!1))if(i.tagName==="SLOT"){var s=i.assignedElements(),l=s.length?s:i.children,u=o(l,!0,r);r.flatten?n.push.apply(n,u):n.push({scopeParent:i,candidates:u})}else{var d=se.call(i,Se);d&&r.filter(i)&&(t||!e.includes(i))&&n.push(i);var h=i.shadowRoot||typeof r.getShadowRoot=="function"&&r.getShadowRoot(i),v=!Ce(h,!1)&&(!r.shadowRootFilter||r.shadowRootFilter(i));if(h&&v){var p=o(h===!0?i.children:h.children,!0,r);r.flatten?n.push.apply(n,p):n.push({scopeParent:i,candidates:p})}else a.unshift.apply(a,i.children)}}return n},Ft=function(e){return!isNaN(parseInt(e.getAttribute("tabindex"),10))},oe=function(e){if(!e)throw new Error("No node provided");return e.tabIndex<0&&(/^(AUDIO|VIDEO|DETAILS)$/.test(e.tagName)||nr(e))&&!Ft(e)?0:e.tabIndex},ir=function(e,t){var r=oe(e);return r<0&&t&&!Ft(e)?0:r},or=function(e,t){return e.tabIndex===t.tabIndex?e.documentOrder-t.documentOrder:e.tabIndex-t.tabIndex},Et=function(e){return e.tagName==="INPUT"},sr=function(e){return Et(e)&&e.type==="hidden"},lr=function(e){var t=e.tagName==="DETAILS"&&Array.prototype.slice.apply(e.children).some(function(r){return r.tagName==="SUMMARY"});return t},ur=function(e,t){for(var r=0;rsummary:first-of-type"),i=a?e.parentElement:e;if(se.call(i,"details:not([open]) *"))return!0;if(!r||r==="full"||r==="legacy-full"){if(typeof n=="function"){for(var s=e;e;){var l=e.parentElement,u=Ae(e);if(l&&!l.shadowRoot&&n(l)===!0)return ot(e);e.assignedSlot?e=e.assignedSlot:!l&&u!==e.ownerDocument?e=u.host:e=l}e=s}if(hr(e))return!e.getClientRects().length;if(r!=="legacy-full")return!0}else if(r==="non-zero-area")return ot(e);return!1},pr=function(e){if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(e.tagName))for(var t=e.parentElement;t;){if(t.tagName==="FIELDSET"&&t.disabled){for(var r=0;r=0)},mr=function o(e){var t=[],r=[];return e.forEach(function(n,a){var i=!!n.scopeParent,s=i?n.scopeParent:n,l=ir(s,i),u=i?o(n.candidates):s;l===0?i?t.push.apply(t,u):t.push(s):r.push({documentOrder:a,tabIndex:l,item:n,isScope:i,content:u})}),r.sort(or).reduce(function(n,a){return a.isScope?n.push.apply(n,a.content):n.push(a.content),n},[]).concat(t)},gr=function(e,t){t=t||{};var r;return t.getShadowRoot?r=xt([e],t.includeContainer,{filter:$e.bind(null,t),flatten:!1,getShadowRoot:t.getShadowRoot,shadowRootFilter:yr}):r=wt(e,t.includeContainer,$e.bind(null,t)),mr(r)},br=function(e,t){t=t||{};var r;return t.getShadowRoot?r=xt([e],t.includeContainer,{filter:Ne.bind(null,t),flatten:!0,getShadowRoot:t.getShadowRoot}):r=wt(e,t.includeContainer,Ne.bind(null,t)),r},le=function(e,t){if(t=t||{},!e)throw new Error("No node provided");return se.call(e,Se)===!1?!1:$e(t,e)},wr=gt.concat("iframe").join(","),Oe=function(e,t){if(t=t||{},!e)throw new Error("No node provided");return se.call(e,wr)===!1?!1:Ne(t,e)};/*! diff --git a/pr-383/assets/chunks/arc.acf4fa71.js b/pr-383/assets/chunks/arc.60bf6bcc.js similarity index 98% rename from pr-383/assets/chunks/arc.acf4fa71.js rename to pr-383/assets/chunks/arc.60bf6bcc.js index c89f2b6e9..5816c544e 100644 --- a/pr-383/assets/chunks/arc.acf4fa71.js +++ b/pr-383/assets/chunks/arc.60bf6bcc.js @@ -1 +1 @@ -import{w as ln,c as S}from"./path.53f90ab3.js";import{ar as an,as as H,at as q,au as rn,av as y,ap as tn,aw as L,ax as _,ay as un,az as o,aA as sn,aB as on,aC as fn}from"../app.34e6398e.js";function cn(l){return l.innerRadius}function yn(l){return l.outerRadius}function gn(l){return l.startAngle}function mn(l){return l.endAngle}function pn(l){return l&&l.padAngle}function xn(l,h,C,z,v,A,j,a){var D=C-l,i=z-h,n=j-v,m=a-A,r=m*D-n*i;if(!(r*ru*u+G*G&&(I=P,O=x),{cx:I,cy:O,x01:-n,y01:-m,x11:I*(v/T-1),y11:O*(v/T-1)}}function vn(){var l=cn,h=yn,C=S(0),z=null,v=gn,A=mn,j=pn,a=null,D=ln(i);function i(){var n,m,r=+l.apply(this,arguments),s=+h.apply(this,arguments),f=v.apply(this,arguments)-rn,c=A.apply(this,arguments)-rn,F=un(c-f),t=c>f;if(a||(a=n=D()),sy))a.moveTo(0,0);else if(F>tn-y)a.moveTo(s*H(f),s*q(f)),a.arc(0,0,s,f,c,!t),r>y&&(a.moveTo(r*H(c),r*q(c)),a.arc(0,0,r,c,f,t));else{var p=f,g=c,R=f,T=c,w=F,E=F,I=j.apply(this,arguments)/2,O=I>y&&(z?+z.apply(this,arguments):L(r*r+s*s)),P=_(un(s-r)/2,+C.apply(this,arguments)),x=P,d=P,e,u;if(O>y){var G=sn(O/r*q(I)),M=sn(O/s*q(I));(w-=G*2)>y?(G*=t?1:-1,R+=G,T-=G):(w=0,R=T=(f+c)/2),(E-=M*2)>y?(M*=t?1:-1,p+=M,g-=M):(E=0,p=g=(f+c)/2)}var J=s*H(p),K=s*q(p),N=r*H(T),Q=r*q(T);if(P>y){var U=s*H(g),V=s*q(g),X=r*H(R),Y=r*q(R),B;if(Fy?d>y?(e=W(X,Y,J,K,s,d,t),u=W(U,V,N,Q,s,d,t),a.moveTo(e.cx+e.x01,e.cy+e.y01),dy)||!(w>y)?a.lineTo(N,Q):x>y?(e=W(N,Q,U,V,r,-x,t),u=W(J,K,X,Y,r,-x,t),a.lineTo(e.cx+e.x01,e.cy+e.y01),xu*u+G*G&&(I=P,O=x),{cx:I,cy:O,x01:-n,y01:-m,x11:I*(v/T-1),y11:O*(v/T-1)}}function vn(){var l=cn,h=yn,C=S(0),z=null,v=gn,A=mn,j=pn,a=null,D=ln(i);function i(){var n,m,r=+l.apply(this,arguments),s=+h.apply(this,arguments),f=v.apply(this,arguments)-rn,c=A.apply(this,arguments)-rn,F=un(c-f),t=c>f;if(a||(a=n=D()),sy))a.moveTo(0,0);else if(F>tn-y)a.moveTo(s*H(f),s*q(f)),a.arc(0,0,s,f,c,!t),r>y&&(a.moveTo(r*H(c),r*q(c)),a.arc(0,0,r,c,f,t));else{var p=f,g=c,R=f,T=c,w=F,E=F,I=j.apply(this,arguments)/2,O=I>y&&(z?+z.apply(this,arguments):L(r*r+s*s)),P=_(un(s-r)/2,+C.apply(this,arguments)),x=P,d=P,e,u;if(O>y){var G=sn(O/r*q(I)),M=sn(O/s*q(I));(w-=G*2)>y?(G*=t?1:-1,R+=G,T-=G):(w=0,R=T=(f+c)/2),(E-=M*2)>y?(M*=t?1:-1,p+=M,g-=M):(E=0,p=g=(f+c)/2)}var J=s*H(p),K=s*q(p),N=r*H(T),Q=r*q(T);if(P>y){var U=s*H(g),V=s*q(g),X=r*H(R),Y=r*q(R),B;if(Fy?d>y?(e=W(X,Y,J,K,s,d,t),u=W(U,V,N,Q,s,d,t),a.moveTo(e.cx+e.x01,e.cy+e.y01),dy)||!(w>y)?a.lineTo(N,Q):x>y?(e=W(N,Q,U,V,r,-x,t),u=W(J,K,X,Y,r,-x,t),a.lineTo(e.cx+e.x01,e.cy+e.y01),x"u"&&(D.yylloc={});var se=D.yylloc;h.push(se);var Ne=D.options&&D.options.ranges;typeof Mt.yy.parseError=="function"?this.parseError=Mt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Be(){var z;return z=g.pop()||D.lex()||ge,typeof z!="number"&&(z instanceof Array&&(g=z,z=g.pop()),z=x.symbols_[z]||z),z}for(var M,Lt,N,ae,Bt={},zt,X,be,Wt;;){if(Lt=m[m.length-1],this.defaultActions[Lt]?N=this.defaultActions[Lt]:((M===null||typeof M>"u")&&(M=Be()),N=Vt[Lt]&&Vt[Lt][M]),typeof N>"u"||!N.length||!N[0]){var re="";Wt=[];for(zt in Vt[Lt])this.terminals_[zt]&&zt>Me&&Wt.push("'"+this.terminals_[zt]+"'");D.showPosition?re="Parse error on line "+(Pt+1)+`: +import{s as Ye,g as Ie,a as Ve,b as je,c as Ut,d as Ee,m as Ue,e as Fe,f as Yt,h as Qt,l as _e,i as Xe,w as ze,j as le,k as xe,n as We}from"../app.3c4fe3d0.js";import{d as Qe,g as He}from"./svgDrawCommon-f26cad39.398614f4.js";import"./framework.be0a7370.js";import"./theme.71fa6e36.js";var qt=function(){var e=function(Ot,_,x,m){for(x=x||{},m=Ot.length;m--;x[Ot[m]]=_);return x},t=[1,6],a=[1,7],o=[1,8],l=[1,9],i=[1,16],s=[1,11],r=[1,12],n=[1,13],u=[1,14],y=[1,15],d=[1,27],p=[1,33],C=[1,34],T=[1,35],R=[1,36],S=[1,37],L=[1,72],Y=[1,73],Q=[1,74],H=[1,75],q=[1,76],G=[1,77],K=[1,78],J=[1,38],Z=[1,39],$=[1,40],tt=[1,41],et=[1,42],it=[1,43],nt=[1,44],st=[1,45],at=[1,46],rt=[1,47],lt=[1,48],ot=[1,49],ct=[1,50],ht=[1,51],ut=[1,52],dt=[1,53],ft=[1,54],pt=[1,55],yt=[1,56],gt=[1,57],bt=[1,59],_t=[1,60],xt=[1,61],mt=[1,62],vt=[1,63],Et=[1,64],kt=[1,65],At=[1,66],Ct=[1,67],wt=[1,68],Tt=[1,69],Nt=[24,52],$t=[24,44,46,47,48,49,50,51,52,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],It=[15,24,44,46,47,48,49,50,51,52,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],v=[1,94],E=[1,95],k=[1,96],A=[1,97],w=[15,24,52],fe=[7,8,9,10,18,22,25,26,27,28],pe=[15,24,43,52],Xt=[15,24,43,52,86,87,89,90],St=[15,43],te=[44,46,47,48,49,50,51,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],ee={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,directive:6,direction_tb:7,direction_bt:8,direction_rl:9,direction_lr:10,graphConfig:11,openDirective:12,typeDirective:13,closeDirective:14,NEWLINE:15,":":16,argDirective:17,open_directive:18,type_directive:19,arg_directive:20,close_directive:21,C4_CONTEXT:22,statements:23,EOF:24,C4_CONTAINER:25,C4_COMPONENT:26,C4_DYNAMIC:27,C4_DEPLOYMENT:28,otherStatements:29,diagramStatements:30,otherStatement:31,title:32,accDescription:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,boundaryStatement:39,boundaryStartStatement:40,boundaryStopStatement:41,boundaryStart:42,LBRACE:43,ENTERPRISE_BOUNDARY:44,attributes:45,SYSTEM_BOUNDARY:46,BOUNDARY:47,CONTAINER_BOUNDARY:48,NODE:49,NODE_L:50,NODE_R:51,RBRACE:52,diagramStatement:53,PERSON:54,PERSON_EXT:55,SYSTEM:56,SYSTEM_DB:57,SYSTEM_QUEUE:58,SYSTEM_EXT:59,SYSTEM_EXT_DB:60,SYSTEM_EXT_QUEUE:61,CONTAINER:62,CONTAINER_DB:63,CONTAINER_QUEUE:64,CONTAINER_EXT:65,CONTAINER_EXT_DB:66,CONTAINER_EXT_QUEUE:67,COMPONENT:68,COMPONENT_DB:69,COMPONENT_QUEUE:70,COMPONENT_EXT:71,COMPONENT_EXT_DB:72,COMPONENT_EXT_QUEUE:73,REL:74,BIREL:75,REL_U:76,REL_D:77,REL_L:78,REL_R:79,REL_B:80,REL_INDEX:81,UPDATE_EL_STYLE:82,UPDATE_REL_STYLE:83,UPDATE_LAYOUT_CONFIG:84,attribute:85,STR:86,STR_KEY:87,STR_VALUE:88,ATTRIBUTE:89,ATTRIBUTE_EMPTY:90,$accept:0,$end:1},terminals_:{2:"error",7:"direction_tb",8:"direction_bt",9:"direction_rl",10:"direction_lr",15:"NEWLINE",16:":",18:"open_directive",19:"type_directive",20:"arg_directive",21:"close_directive",22:"C4_CONTEXT",24:"EOF",25:"C4_CONTAINER",26:"C4_COMPONENT",27:"C4_DYNAMIC",28:"C4_DEPLOYMENT",32:"title",33:"accDescription",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",43:"LBRACE",44:"ENTERPRISE_BOUNDARY",46:"SYSTEM_BOUNDARY",47:"BOUNDARY",48:"CONTAINER_BOUNDARY",49:"NODE",50:"NODE_L",51:"NODE_R",52:"RBRACE",54:"PERSON",55:"PERSON_EXT",56:"SYSTEM",57:"SYSTEM_DB",58:"SYSTEM_QUEUE",59:"SYSTEM_EXT",60:"SYSTEM_EXT_DB",61:"SYSTEM_EXT_QUEUE",62:"CONTAINER",63:"CONTAINER_DB",64:"CONTAINER_QUEUE",65:"CONTAINER_EXT",66:"CONTAINER_EXT_DB",67:"CONTAINER_EXT_QUEUE",68:"COMPONENT",69:"COMPONENT_DB",70:"COMPONENT_QUEUE",71:"COMPONENT_EXT",72:"COMPONENT_EXT_DB",73:"COMPONENT_EXT_QUEUE",74:"REL",75:"BIREL",76:"REL_U",77:"REL_D",78:"REL_L",79:"REL_R",80:"REL_B",81:"REL_INDEX",82:"UPDATE_EL_STYLE",83:"UPDATE_REL_STYLE",84:"UPDATE_LAYOUT_CONFIG",86:"STR",87:"STR_KEY",88:"STR_VALUE",89:"ATTRIBUTE",90:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[3,2],[5,1],[5,1],[5,1],[5,1],[4,1],[6,4],[6,6],[12,1],[13,1],[17,1],[14,1],[11,4],[11,4],[11,4],[11,4],[11,4],[23,1],[23,1],[23,2],[29,1],[29,2],[29,3],[31,1],[31,1],[31,2],[31,2],[31,1],[39,3],[40,3],[40,3],[40,4],[42,2],[42,2],[42,2],[42,2],[42,2],[42,2],[42,2],[41,1],[30,1],[30,2],[30,3],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,1],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[45,1],[45,2],[85,1],[85,2],[85,1],[85,1]],performAction:function(_,x,m,g,O,h,Vt){var f=h.length-1;switch(O){case 4:g.setDirection("TB");break;case 5:g.setDirection("BT");break;case 6:g.setDirection("RL");break;case 7:g.setDirection("LR");break;case 11:g.parseDirective("%%{","open_directive");break;case 12:break;case 13:h[f]=h[f].trim().replace(/'/g,'"'),g.parseDirective(h[f],"arg_directive");break;case 14:g.parseDirective("}%%","close_directive","c4Context");break;case 15:case 16:case 17:case 18:case 19:g.setC4Type(h[f-3]);break;case 26:g.setTitle(h[f].substring(6)),this.$=h[f].substring(6);break;case 27:g.setAccDescription(h[f].substring(15)),this.$=h[f].substring(15);break;case 28:this.$=h[f].trim(),g.setTitle(this.$);break;case 29:case 30:this.$=h[f].trim(),g.setAccDescription(this.$);break;case 35:case 36:h[f].splice(2,0,"ENTERPRISE"),g.addPersonOrSystemBoundary(...h[f]),this.$=h[f];break;case 37:g.addPersonOrSystemBoundary(...h[f]),this.$=h[f];break;case 38:h[f].splice(2,0,"CONTAINER"),g.addContainerBoundary(...h[f]),this.$=h[f];break;case 39:g.addDeploymentNode("node",...h[f]),this.$=h[f];break;case 40:g.addDeploymentNode("nodeL",...h[f]),this.$=h[f];break;case 41:g.addDeploymentNode("nodeR",...h[f]),this.$=h[f];break;case 42:g.popBoundaryParseStack();break;case 46:g.addPersonOrSystem("person",...h[f]),this.$=h[f];break;case 47:g.addPersonOrSystem("external_person",...h[f]),this.$=h[f];break;case 48:g.addPersonOrSystem("system",...h[f]),this.$=h[f];break;case 49:g.addPersonOrSystem("system_db",...h[f]),this.$=h[f];break;case 50:g.addPersonOrSystem("system_queue",...h[f]),this.$=h[f];break;case 51:g.addPersonOrSystem("external_system",...h[f]),this.$=h[f];break;case 52:g.addPersonOrSystem("external_system_db",...h[f]),this.$=h[f];break;case 53:g.addPersonOrSystem("external_system_queue",...h[f]),this.$=h[f];break;case 54:g.addContainer("container",...h[f]),this.$=h[f];break;case 55:g.addContainer("container_db",...h[f]),this.$=h[f];break;case 56:g.addContainer("container_queue",...h[f]),this.$=h[f];break;case 57:g.addContainer("external_container",...h[f]),this.$=h[f];break;case 58:g.addContainer("external_container_db",...h[f]),this.$=h[f];break;case 59:g.addContainer("external_container_queue",...h[f]),this.$=h[f];break;case 60:g.addComponent("component",...h[f]),this.$=h[f];break;case 61:g.addComponent("component_db",...h[f]),this.$=h[f];break;case 62:g.addComponent("component_queue",...h[f]),this.$=h[f];break;case 63:g.addComponent("external_component",...h[f]),this.$=h[f];break;case 64:g.addComponent("external_component_db",...h[f]),this.$=h[f];break;case 65:g.addComponent("external_component_queue",...h[f]),this.$=h[f];break;case 67:g.addRel("rel",...h[f]),this.$=h[f];break;case 68:g.addRel("birel",...h[f]),this.$=h[f];break;case 69:g.addRel("rel_u",...h[f]),this.$=h[f];break;case 70:g.addRel("rel_d",...h[f]),this.$=h[f];break;case 71:g.addRel("rel_l",...h[f]),this.$=h[f];break;case 72:g.addRel("rel_r",...h[f]),this.$=h[f];break;case 73:g.addRel("rel_b",...h[f]),this.$=h[f];break;case 74:h[f].splice(0,1),g.addRel("rel",...h[f]),this.$=h[f];break;case 75:g.updateElStyle("update_el_style",...h[f]),this.$=h[f];break;case 76:g.updateRelStyle("update_rel_style",...h[f]),this.$=h[f];break;case 77:g.updateLayoutConfig("update_layout_config",...h[f]),this.$=h[f];break;case 78:this.$=[h[f]];break;case 79:h[f].unshift(h[f-1]),this.$=h[f];break;case 80:case 82:this.$=h[f].trim();break;case 81:let Pt={};Pt[h[f-1].trim()]=h[f].trim(),this.$=Pt;break;case 83:this.$="";break}},table:[{3:1,4:2,5:3,6:4,7:t,8:a,9:o,10:l,11:5,12:10,18:i,22:s,25:r,26:n,27:u,28:y},{1:[3]},{1:[2,1]},{1:[2,2]},{3:17,4:2,5:3,6:4,7:t,8:a,9:o,10:l,11:5,12:10,18:i,22:s,25:r,26:n,27:u,28:y},{1:[2,8]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{1:[2,7]},{13:18,19:[1,19]},{15:[1,20]},{15:[1,21]},{15:[1,22]},{15:[1,23]},{15:[1,24]},{19:[2,11]},{1:[2,3]},{14:25,16:[1,26],21:d},e([16,21],[2,12]),{23:28,29:29,30:30,31:31,32:p,33:C,34:T,36:R,38:S,39:58,40:70,42:71,44:L,46:Y,47:Q,48:H,49:q,50:G,51:K,53:32,54:J,55:Z,56:$,57:tt,58:et,59:it,60:nt,61:st,62:at,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt,75:_t,76:xt,77:mt,78:vt,79:Et,80:kt,81:At,82:Ct,83:wt,84:Tt},{23:79,29:29,30:30,31:31,32:p,33:C,34:T,36:R,38:S,39:58,40:70,42:71,44:L,46:Y,47:Q,48:H,49:q,50:G,51:K,53:32,54:J,55:Z,56:$,57:tt,58:et,59:it,60:nt,61:st,62:at,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt,75:_t,76:xt,77:mt,78:vt,79:Et,80:kt,81:At,82:Ct,83:wt,84:Tt},{23:80,29:29,30:30,31:31,32:p,33:C,34:T,36:R,38:S,39:58,40:70,42:71,44:L,46:Y,47:Q,48:H,49:q,50:G,51:K,53:32,54:J,55:Z,56:$,57:tt,58:et,59:it,60:nt,61:st,62:at,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt,75:_t,76:xt,77:mt,78:vt,79:Et,80:kt,81:At,82:Ct,83:wt,84:Tt},{23:81,29:29,30:30,31:31,32:p,33:C,34:T,36:R,38:S,39:58,40:70,42:71,44:L,46:Y,47:Q,48:H,49:q,50:G,51:K,53:32,54:J,55:Z,56:$,57:tt,58:et,59:it,60:nt,61:st,62:at,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt,75:_t,76:xt,77:mt,78:vt,79:Et,80:kt,81:At,82:Ct,83:wt,84:Tt},{23:82,29:29,30:30,31:31,32:p,33:C,34:T,36:R,38:S,39:58,40:70,42:71,44:L,46:Y,47:Q,48:H,49:q,50:G,51:K,53:32,54:J,55:Z,56:$,57:tt,58:et,59:it,60:nt,61:st,62:at,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt,75:_t,76:xt,77:mt,78:vt,79:Et,80:kt,81:At,82:Ct,83:wt,84:Tt},{15:[1,83]},{17:84,20:[1,85]},{15:[2,14]},{24:[1,86]},e(Nt,[2,20],{53:32,39:58,40:70,42:71,30:87,44:L,46:Y,47:Q,48:H,49:q,50:G,51:K,54:J,55:Z,56:$,57:tt,58:et,59:it,60:nt,61:st,62:at,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt,75:_t,76:xt,77:mt,78:vt,79:Et,80:kt,81:At,82:Ct,83:wt,84:Tt}),e(Nt,[2,21]),e($t,[2,23],{15:[1,88]}),e(Nt,[2,43],{15:[1,89]}),e(It,[2,26]),e(It,[2,27]),{35:[1,90]},{37:[1,91]},e(It,[2,30]),{45:92,85:93,86:v,87:E,89:k,90:A},{45:98,85:93,86:v,87:E,89:k,90:A},{45:99,85:93,86:v,87:E,89:k,90:A},{45:100,85:93,86:v,87:E,89:k,90:A},{45:101,85:93,86:v,87:E,89:k,90:A},{45:102,85:93,86:v,87:E,89:k,90:A},{45:103,85:93,86:v,87:E,89:k,90:A},{45:104,85:93,86:v,87:E,89:k,90:A},{45:105,85:93,86:v,87:E,89:k,90:A},{45:106,85:93,86:v,87:E,89:k,90:A},{45:107,85:93,86:v,87:E,89:k,90:A},{45:108,85:93,86:v,87:E,89:k,90:A},{45:109,85:93,86:v,87:E,89:k,90:A},{45:110,85:93,86:v,87:E,89:k,90:A},{45:111,85:93,86:v,87:E,89:k,90:A},{45:112,85:93,86:v,87:E,89:k,90:A},{45:113,85:93,86:v,87:E,89:k,90:A},{45:114,85:93,86:v,87:E,89:k,90:A},{45:115,85:93,86:v,87:E,89:k,90:A},{45:116,85:93,86:v,87:E,89:k,90:A},e(w,[2,66]),{45:117,85:93,86:v,87:E,89:k,90:A},{45:118,85:93,86:v,87:E,89:k,90:A},{45:119,85:93,86:v,87:E,89:k,90:A},{45:120,85:93,86:v,87:E,89:k,90:A},{45:121,85:93,86:v,87:E,89:k,90:A},{45:122,85:93,86:v,87:E,89:k,90:A},{45:123,85:93,86:v,87:E,89:k,90:A},{45:124,85:93,86:v,87:E,89:k,90:A},{45:125,85:93,86:v,87:E,89:k,90:A},{45:126,85:93,86:v,87:E,89:k,90:A},{45:127,85:93,86:v,87:E,89:k,90:A},{30:128,39:58,40:70,42:71,44:L,46:Y,47:Q,48:H,49:q,50:G,51:K,53:32,54:J,55:Z,56:$,57:tt,58:et,59:it,60:nt,61:st,62:at,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt,75:_t,76:xt,77:mt,78:vt,79:Et,80:kt,81:At,82:Ct,83:wt,84:Tt},{15:[1,130],43:[1,129]},{45:131,85:93,86:v,87:E,89:k,90:A},{45:132,85:93,86:v,87:E,89:k,90:A},{45:133,85:93,86:v,87:E,89:k,90:A},{45:134,85:93,86:v,87:E,89:k,90:A},{45:135,85:93,86:v,87:E,89:k,90:A},{45:136,85:93,86:v,87:E,89:k,90:A},{45:137,85:93,86:v,87:E,89:k,90:A},{24:[1,138]},{24:[1,139]},{24:[1,140]},{24:[1,141]},e(fe,[2,9]),{14:142,21:d},{21:[2,13]},{1:[2,15]},e(Nt,[2,22]),e($t,[2,24],{31:31,29:143,32:p,33:C,34:T,36:R,38:S}),e(Nt,[2,44],{29:29,30:30,31:31,53:32,39:58,40:70,42:71,23:144,32:p,33:C,34:T,36:R,38:S,44:L,46:Y,47:Q,48:H,49:q,50:G,51:K,54:J,55:Z,56:$,57:tt,58:et,59:it,60:nt,61:st,62:at,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt,75:_t,76:xt,77:mt,78:vt,79:Et,80:kt,81:At,82:Ct,83:wt,84:Tt}),e(It,[2,28]),e(It,[2,29]),e(w,[2,46]),e(pe,[2,78],{85:93,45:145,86:v,87:E,89:k,90:A}),e(Xt,[2,80]),{88:[1,146]},e(Xt,[2,82]),e(Xt,[2,83]),e(w,[2,47]),e(w,[2,48]),e(w,[2,49]),e(w,[2,50]),e(w,[2,51]),e(w,[2,52]),e(w,[2,53]),e(w,[2,54]),e(w,[2,55]),e(w,[2,56]),e(w,[2,57]),e(w,[2,58]),e(w,[2,59]),e(w,[2,60]),e(w,[2,61]),e(w,[2,62]),e(w,[2,63]),e(w,[2,64]),e(w,[2,65]),e(w,[2,67]),e(w,[2,68]),e(w,[2,69]),e(w,[2,70]),e(w,[2,71]),e(w,[2,72]),e(w,[2,73]),e(w,[2,74]),e(w,[2,75]),e(w,[2,76]),e(w,[2,77]),{41:147,52:[1,148]},{15:[1,149]},{43:[1,150]},e(St,[2,35]),e(St,[2,36]),e(St,[2,37]),e(St,[2,38]),e(St,[2,39]),e(St,[2,40]),e(St,[2,41]),{1:[2,16]},{1:[2,17]},{1:[2,18]},{1:[2,19]},{15:[1,151]},e($t,[2,25]),e(Nt,[2,45]),e(pe,[2,79]),e(Xt,[2,81]),e(w,[2,31]),e(w,[2,42]),e(te,[2,32]),e(te,[2,33],{15:[1,152]}),e(fe,[2,10]),e(te,[2,34])],defaultActions:{2:[2,1],3:[2,2],5:[2,8],6:[2,4],7:[2,5],8:[2,6],9:[2,7],16:[2,11],17:[2,3],27:[2,14],85:[2,13],86:[2,15],138:[2,16],139:[2,17],140:[2,18],141:[2,19]},parseError:function(_,x){if(x.recoverable)this.trace(_);else{var m=new Error(_);throw m.hash=x,m}},parse:function(_){var x=this,m=[0],g=[],O=[null],h=[],Vt=this.table,f="",Pt=0,ye=0,Me=2,ge=1,Le=h.slice.call(arguments,1),D=Object.create(this.lexer),Mt={yy:{}};for(var ne in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ne)&&(Mt.yy[ne]=this.yy[ne]);D.setInput(_,Mt.yy),Mt.yy.lexer=D,Mt.yy.parser=this,typeof D.yylloc>"u"&&(D.yylloc={});var se=D.yylloc;h.push(se);var Ne=D.options&&D.options.ranges;typeof Mt.yy.parseError=="function"?this.parseError=Mt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Be(){var z;return z=g.pop()||D.lex()||ge,typeof z!="number"&&(z instanceof Array&&(g=z,z=g.pop()),z=x.symbols_[z]||z),z}for(var M,Lt,N,ae,Bt={},zt,X,be,Wt;;){if(Lt=m[m.length-1],this.defaultActions[Lt]?N=this.defaultActions[Lt]:((M===null||typeof M>"u")&&(M=Be()),N=Vt[Lt]&&Vt[Lt][M]),typeof N>"u"||!N.length||!N[0]){var re="";Wt=[];for(zt in Vt[Lt])this.terminals_[zt]&&zt>Me&&Wt.push("'"+this.terminals_[zt]+"'");D.showPosition?re="Parse error on line "+(Pt+1)+`: `+D.showPosition()+` Expecting `+Wt.join(", ")+", got '"+(this.terminals_[M]||M)+"'":re="Parse error on line "+(Pt+1)+": Unexpected "+(M==ge?"end of input":"'"+(this.terminals_[M]||M)+"'"),this.parseError(re,{text:D.match,token:this.terminals_[M]||M,line:D.yylineno,loc:se,expected:Wt})}if(N[0]instanceof Array&&N.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Lt+", token: "+M);switch(N[0]){case 1:m.push(M),O.push(D.yytext),h.push(D.yylloc),m.push(N[1]),M=null,ye=D.yyleng,f=D.yytext,Pt=D.yylineno,se=D.yylloc;break;case 2:if(X=this.productions_[N[1]][1],Bt.$=O[O.length-X],Bt._$={first_line:h[h.length-(X||1)].first_line,last_line:h[h.length-1].last_line,first_column:h[h.length-(X||1)].first_column,last_column:h[h.length-1].last_column},Ne&&(Bt._$.range=[h[h.length-(X||1)].range[0],h[h.length-1].range[1]]),ae=this.performAction.apply(Bt,[f,ye,Pt,Mt.yy,N[1],O,h].concat(Le)),typeof ae<"u")return ae;X&&(m=m.slice(0,-1*X*2),O=O.slice(0,-1*X),h=h.slice(0,-1*X)),m.push(this.productions_[N[1]][0]),O.push(Bt.$),h.push(Bt._$),be=Vt[m[m.length-2]][m[m.length-1]],m.push(be);break;case 3:return!0}}return!0}},Pe=function(){var Ot={EOF:1,parseError:function(x,m){if(this.yy.parser)this.yy.parser.parseError(x,m);else throw new Error(x)},setInput:function(_,x){return this.yy=x||this.yy||{},this._input=_,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var _=this._input[0];this.yytext+=_,this.yyleng++,this.offset++,this.match+=_,this.matched+=_;var x=_.match(/(?:\r\n?|\n).*/g);return x?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),_},unput:function(_){var x=_.length,m=_.split(/(?:\r\n?|\n)/g);this._input=_+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-x),this.offset-=x;var g=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),m.length-1&&(this.yylineno-=m.length-1);var O=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:m?(m.length===g.length?this.yylloc.first_column:0)+g[g.length-m.length].length-m[0].length:this.yylloc.first_column-x},this.options.ranges&&(this.yylloc.range=[O[0],O[0]+this.yyleng-x]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(_){this.unput(this.match.slice(_))},pastInput:function(){var _=this.matched.substr(0,this.matched.length-this.match.length);return(_.length>20?"...":"")+_.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var _=this.match;return _.length<20&&(_+=this._input.substr(0,20-_.length)),(_.substr(0,20)+(_.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var _=this.pastInput(),x=new Array(_.length+1).join("-");return _+this.upcomingInput()+` diff --git a/pr-383/assets/chunks/classDiagram-5e843ae7.7a63d6c7.js b/pr-383/assets/chunks/classDiagram-5e843ae7.86956ecb.js similarity index 91% rename from pr-383/assets/chunks/classDiagram-5e843ae7.7a63d6c7.js rename to pr-383/assets/chunks/classDiagram-5e843ae7.86956ecb.js index c94564f14..5465a2862 100644 --- a/pr-383/assets/chunks/classDiagram-5e843ae7.7a63d6c7.js +++ b/pr-383/assets/chunks/classDiagram-5e843ae7.86956ecb.js @@ -1 +1 @@ -import{p as N,d as M,s as W}from"./styles-88ad4441.f35605f9.js";import{c as S,l as d,h as u,i as H}from"../app.34e6398e.js";import{G as X,l as Y}from"./layout.ca521a87.js";import{s as l}from"./svgDraw-5d8a058e.ea5389d7.js";import"./framework.be0a7370.js";import"./theme.e11407bf.js";import"./line.075f786d.js";import"./array.9f3ba611.js";import"./path.53f90ab3.js";let h={};const g=20,p=function(e){const s=Object.entries(h).find(k=>k[1].label===e);if(s)return s[0]},Z=function(e){e.append("defs").append("marker").attr("id","extensionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),e.append("defs").append("marker").attr("id","extensionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z"),e.append("defs").append("marker").attr("id","compositionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id","compositionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id","aggregationStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id","aggregationEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id","dependencyStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},D=function(e,s,k,a){const c=S().class;h={},d.info("Rendering diagram "+e);const L=S().securityLevel;let y;L==="sandbox"&&(y=u("#i"+s));const x=L==="sandbox"?u(y.nodes()[0].contentDocument.body):u("body"),n=x.select(`[id='${s}']`);Z(n);const r=new X({multigraph:!0});r.setGraph({isMultiGraph:!0}),r.setDefaultEdgeLabel(function(){return{}});const m=a.db.getClasses(),$=Object.keys(m);for(const t of $){const o=m[t],i=l.drawClass(n,o,c,a);h[i.id]=i,r.setNode(i.id,i),d.info("Org height: "+i.height)}a.db.getRelations().forEach(function(t){d.info("tjoho"+p(t.id1)+p(t.id2)+JSON.stringify(t)),r.setEdge(p(t.id1),p(t.id2),{relation:t},t.title||"DEFAULT")}),a.db.getNotes().forEach(function(t){d.debug(`Adding note: ${JSON.stringify(t)}`);const o=l.drawNote(n,t,c,a);h[o.id]=o,r.setNode(o.id,o),t.class&&t.class in m&&r.setEdge(t.id,p(t.class),{relation:{id1:t.id,id2:t.class,relation:{type1:"none",type2:"none",lineType:10}}},"DEFAULT")}),Y(r),r.nodes().forEach(function(t){t!==void 0&&r.node(t)!==void 0&&(d.debug("Node "+t+": "+JSON.stringify(r.node(t))),x.select("#"+(a.db.lookUpDomId(t)||t)).attr("transform","translate("+(r.node(t).x-r.node(t).width/2)+","+(r.node(t).y-r.node(t).height/2)+" )"))}),r.edges().forEach(function(t){t!==void 0&&r.edge(t)!==void 0&&(d.debug("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(r.edge(t))),l.drawEdge(n,r.edge(t),r.edge(t).relation,c,a))});const f=n.node().getBBox(),E=f.width+g*2,b=f.height+g*2;H(n,b,E,c.useMaxWidth);const w=`${f.x-g} ${f.y-g} ${E} ${b}`;d.debug(`viewBox ${w}`),n.attr("viewBox",w)},B={draw:D},z={parser:N,db:M,renderer:B,styles:W,init:e=>{e.class||(e.class={}),e.class.arrowMarkerAbsolute=e.arrowMarkerAbsolute,M.clear()}};export{z as diagram}; +import{p as N,d as M,s as W}from"./styles-88ad4441.aa2ac1f2.js";import{c as S,l as d,h as u,i as H}from"../app.3c4fe3d0.js";import{G as X,l as Y}from"./layout.66644227.js";import{s as l}from"./svgDraw-5d8a058e.38485a41.js";import"./framework.be0a7370.js";import"./theme.71fa6e36.js";import"./line.809d7f74.js";import"./array.9f3ba611.js";import"./path.53f90ab3.js";let h={};const g=20,p=function(e){const s=Object.entries(h).find(k=>k[1].label===e);if(s)return s[0]},Z=function(e){e.append("defs").append("marker").attr("id","extensionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),e.append("defs").append("marker").attr("id","extensionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z"),e.append("defs").append("marker").attr("id","compositionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id","compositionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id","aggregationStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id","aggregationEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id","dependencyStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},D=function(e,s,k,a){const c=S().class;h={},d.info("Rendering diagram "+e);const L=S().securityLevel;let y;L==="sandbox"&&(y=u("#i"+s));const x=L==="sandbox"?u(y.nodes()[0].contentDocument.body):u("body"),n=x.select(`[id='${s}']`);Z(n);const r=new X({multigraph:!0});r.setGraph({isMultiGraph:!0}),r.setDefaultEdgeLabel(function(){return{}});const m=a.db.getClasses(),$=Object.keys(m);for(const t of $){const o=m[t],i=l.drawClass(n,o,c,a);h[i.id]=i,r.setNode(i.id,i),d.info("Org height: "+i.height)}a.db.getRelations().forEach(function(t){d.info("tjoho"+p(t.id1)+p(t.id2)+JSON.stringify(t)),r.setEdge(p(t.id1),p(t.id2),{relation:t},t.title||"DEFAULT")}),a.db.getNotes().forEach(function(t){d.debug(`Adding note: ${JSON.stringify(t)}`);const o=l.drawNote(n,t,c,a);h[o.id]=o,r.setNode(o.id,o),t.class&&t.class in m&&r.setEdge(t.id,p(t.class),{relation:{id1:t.id,id2:t.class,relation:{type1:"none",type2:"none",lineType:10}}},"DEFAULT")}),Y(r),r.nodes().forEach(function(t){t!==void 0&&r.node(t)!==void 0&&(d.debug("Node "+t+": "+JSON.stringify(r.node(t))),x.select("#"+(a.db.lookUpDomId(t)||t)).attr("transform","translate("+(r.node(t).x-r.node(t).width/2)+","+(r.node(t).y-r.node(t).height/2)+" )"))}),r.edges().forEach(function(t){t!==void 0&&r.edge(t)!==void 0&&(d.debug("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(r.edge(t))),l.drawEdge(n,r.edge(t),r.edge(t).relation,c,a))});const f=n.node().getBBox(),E=f.width+g*2,b=f.height+g*2;H(n,b,E,c.useMaxWidth);const w=`${f.x-g} ${f.y-g} ${E} ${b}`;d.debug(`viewBox ${w}`),n.attr("viewBox",w)},B={draw:D},z={parser:N,db:M,renderer:B,styles:W,init:e=>{e.class||(e.class={}),e.class.arrowMarkerAbsolute=e.arrowMarkerAbsolute,M.clear()}};export{z as diagram}; diff --git a/pr-383/assets/chunks/classDiagram-v2-8c3b3e6a.276e10f7.js b/pr-383/assets/chunks/classDiagram-v2-8c3b3e6a.76bb871a.js similarity index 92% rename from pr-383/assets/chunks/classDiagram-v2-8c3b3e6a.276e10f7.js rename to pr-383/assets/chunks/classDiagram-v2-8c3b3e6a.76bb871a.js index daa48bbbe..4261068b9 100644 --- a/pr-383/assets/chunks/classDiagram-v2-8c3b3e6a.276e10f7.js +++ b/pr-383/assets/chunks/classDiagram-v2-8c3b3e6a.76bb871a.js @@ -1,2 +1,2 @@ -import{p as I,d as N,s as M}from"./styles-88ad4441.f35605f9.js";import{l as d,c,h as w,y as R,t as B,r as E,o as _,p as G,j as C}from"../app.34e6398e.js";import{G as z}from"./layout.ca521a87.js";import{r as P}from"./index-4c4adb72.5e4d3745.js";import"./framework.be0a7370.js";import"./theme.e11407bf.js";import"./edges-b00f0ec2.14be9f5e.js";import"./createText-285e50b4.f886ce05.js";import"./svgDraw-5d8a058e.ea5389d7.js";import"./line.075f786d.js";import"./array.9f3ba611.js";import"./path.53f90ab3.js";const S=s=>C.sanitizeText(s,c());let k={dividerMargin:10,padding:5,textHeight:10,curve:void 0};const q=function(s,t,y,n){const e=Object.keys(s);d.info("keys:",e),d.info(s),e.forEach(function(i){var o,r;const l=s[i],p={shape:"rect",id:l.id,domId:l.domId,labelText:S(l.id),labelStyle:"",style:"fill: none; stroke: black",padding:((o=c().flowchart)==null?void 0:o.padding)??((r=c().class)==null?void 0:r.padding)};t.setNode(l.id,p),A(l.classes,t,y,n,l.id),d.info("setNode",p)})},A=function(s,t,y,n,e){const i=Object.keys(s);d.info("keys:",i),d.info(s),i.filter(o=>s[o].parent==e).forEach(function(o){var r,l;const a=s[o],p=a.cssClasses.join(" "),f={labelStyle:"",style:""},h=a.label??a.id,b=0,m="class_box",u={labelStyle:f.labelStyle,shape:m,labelText:S(h),classData:a,rx:b,ry:b,class:p,style:f.style,id:a.id,domId:a.domId,tooltip:n.db.getTooltip(a.id,e)||"",haveCallback:a.haveCallback,link:a.link,width:a.type==="group"?500:void 0,type:a.type,padding:((r=c().flowchart)==null?void 0:r.padding)??((l=c().class)==null?void 0:l.padding)};t.setNode(a.id,u),e&&t.setParent(a.id,e),d.info("setNode",u)})},F=function(s,t,y,n){d.info(s),s.forEach(function(e,i){var o,r;const l=e,a="",p={labelStyle:"",style:""},f=l.text,h=0,b="note",m={labelStyle:p.labelStyle,shape:b,labelText:S(f),noteData:l,rx:h,ry:h,class:a,style:p.style,id:l.id,domId:l.id,tooltip:"",type:"note",padding:((o=c().flowchart)==null?void 0:o.padding)??((r=c().class)==null?void 0:r.padding)};if(t.setNode(l.id,m),d.info("setNode",m),!l.class||!(l.class in n))return;const u=y+i,g={id:`edgeNote${u}`,classes:"relation",pattern:"dotted",arrowhead:"none",startLabelRight:"",endLabelLeft:"",arrowTypeStart:"none",arrowTypeEnd:"none",style:"fill:none",labelStyle:"",curve:E(k.curve,_)};t.setEdge(l.id,l.class,g,u)})},H=function(s,t){const y=c().flowchart;let n=0;s.forEach(function(e){var i;n++;const o={classes:"relation",pattern:e.relation.lineType==1?"dashed":"solid",id:"id"+n,arrowhead:e.type==="arrow_open"?"none":"normal",startLabelRight:e.relationTitle1==="none"?"":e.relationTitle1,endLabelLeft:e.relationTitle2==="none"?"":e.relationTitle2,arrowTypeStart:D(e.relation.type1),arrowTypeEnd:D(e.relation.type2),style:"fill:none",labelStyle:"",curve:E(y==null?void 0:y.curve,_)};if(d.info(o,e),e.style!==void 0){const r=G(e.style);o.style=r.style,o.labelStyle=r.labelStyle}e.text=e.title,e.text===void 0?e.style!==void 0&&(o.arrowheadStyle="fill: #333"):(o.arrowheadStyle="fill: #333",o.labelpos="c",((i=c().flowchart)==null?void 0:i.htmlLabels)??c().htmlLabels?(o.labelType="html",o.label=''+e.text+""):(o.labelType="text",o.label=e.text.replace(C.lineBreakRegex,` +import{p as I,d as N,s as M}from"./styles-88ad4441.aa2ac1f2.js";import{l as d,c,h as w,y as R,t as B,r as E,o as _,p as G,j as C}from"../app.3c4fe3d0.js";import{G as z}from"./layout.66644227.js";import{r as P}from"./index-4c4adb72.3f6562ef.js";import"./framework.be0a7370.js";import"./theme.71fa6e36.js";import"./edges-b00f0ec2.d6f18c62.js";import"./createText-285e50b4.661aa36f.js";import"./svgDraw-5d8a058e.38485a41.js";import"./line.809d7f74.js";import"./array.9f3ba611.js";import"./path.53f90ab3.js";const S=s=>C.sanitizeText(s,c());let k={dividerMargin:10,padding:5,textHeight:10,curve:void 0};const q=function(s,t,y,n){const e=Object.keys(s);d.info("keys:",e),d.info(s),e.forEach(function(i){var o,r;const l=s[i],p={shape:"rect",id:l.id,domId:l.domId,labelText:S(l.id),labelStyle:"",style:"fill: none; stroke: black",padding:((o=c().flowchart)==null?void 0:o.padding)??((r=c().class)==null?void 0:r.padding)};t.setNode(l.id,p),A(l.classes,t,y,n,l.id),d.info("setNode",p)})},A=function(s,t,y,n,e){const i=Object.keys(s);d.info("keys:",i),d.info(s),i.filter(o=>s[o].parent==e).forEach(function(o){var r,l;const a=s[o],p=a.cssClasses.join(" "),f={labelStyle:"",style:""},h=a.label??a.id,b=0,m="class_box",u={labelStyle:f.labelStyle,shape:m,labelText:S(h),classData:a,rx:b,ry:b,class:p,style:f.style,id:a.id,domId:a.domId,tooltip:n.db.getTooltip(a.id,e)||"",haveCallback:a.haveCallback,link:a.link,width:a.type==="group"?500:void 0,type:a.type,padding:((r=c().flowchart)==null?void 0:r.padding)??((l=c().class)==null?void 0:l.padding)};t.setNode(a.id,u),e&&t.setParent(a.id,e),d.info("setNode",u)})},F=function(s,t,y,n){d.info(s),s.forEach(function(e,i){var o,r;const l=e,a="",p={labelStyle:"",style:""},f=l.text,h=0,b="note",m={labelStyle:p.labelStyle,shape:b,labelText:S(f),noteData:l,rx:h,ry:h,class:a,style:p.style,id:l.id,domId:l.id,tooltip:"",type:"note",padding:((o=c().flowchart)==null?void 0:o.padding)??((r=c().class)==null?void 0:r.padding)};if(t.setNode(l.id,m),d.info("setNode",m),!l.class||!(l.class in n))return;const u=y+i,g={id:`edgeNote${u}`,classes:"relation",pattern:"dotted",arrowhead:"none",startLabelRight:"",endLabelLeft:"",arrowTypeStart:"none",arrowTypeEnd:"none",style:"fill:none",labelStyle:"",curve:E(k.curve,_)};t.setEdge(l.id,l.class,g,u)})},H=function(s,t){const y=c().flowchart;let n=0;s.forEach(function(e){var i;n++;const o={classes:"relation",pattern:e.relation.lineType==1?"dashed":"solid",id:"id"+n,arrowhead:e.type==="arrow_open"?"none":"normal",startLabelRight:e.relationTitle1==="none"?"":e.relationTitle1,endLabelLeft:e.relationTitle2==="none"?"":e.relationTitle2,arrowTypeStart:D(e.relation.type1),arrowTypeEnd:D(e.relation.type2),style:"fill:none",labelStyle:"",curve:E(y==null?void 0:y.curve,_)};if(d.info(o,e),e.style!==void 0){const r=G(e.style);o.style=r.style,o.labelStyle=r.labelStyle}e.text=e.title,e.text===void 0?e.style!==void 0&&(o.arrowheadStyle="fill: #333"):(o.arrowheadStyle="fill: #333",o.labelpos="c",((i=c().flowchart)==null?void 0:i.htmlLabels)??c().htmlLabels?(o.labelType="html",o.label=''+e.text+""):(o.labelType="text",o.label=e.text.replace(C.lineBreakRegex,` `),e.style===void 0&&(o.style=o.style||"stroke: #333; stroke-width: 1.5px;fill:none"),o.labelStyle=o.labelStyle.replace("color:","fill:"))),t.setEdge(e.id1,e.id2,o,n)})},V=function(s){k={...k,...s}},W=async function(s,t,y,n){d.info("Drawing class - ",t);const e=c().flowchart??c().class,i=c().securityLevel;d.info("config:",e);const o=(e==null?void 0:e.nodeSpacing)??50,r=(e==null?void 0:e.rankSpacing)??50,l=new z({multigraph:!0,compound:!0}).setGraph({rankdir:n.db.getDirection(),nodesep:o,ranksep:r,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),a=n.db.getNamespaces(),p=n.db.getClasses(),f=n.db.getRelations(),h=n.db.getNotes();d.info(f),q(a,l,t,n),A(p,l,t,n),H(f,l),F(h,l,f.length+1,p);let b;i==="sandbox"&&(b=w("#i"+t));const m=i==="sandbox"?w(b.nodes()[0].contentDocument.body):w("body"),u=m.select(`[id="${t}"]`),g=m.select("#"+t+" g");if(await P(g,l,["aggregation","extension","composition","dependency","lollipop"],"classDiagram",t),R.insertTitle(u,"classTitleText",(e==null?void 0:e.titleTopMargin)??5,n.db.getDiagramTitle()),B(l,u,e==null?void 0:e.diagramPadding,e==null?void 0:e.useMaxWidth),!(e!=null&&e.htmlLabels)){const T=i==="sandbox"?b.nodes()[0].contentDocument:document,$=T.querySelectorAll('[id="'+t+'"] .edgeLabel .label');for(const x of $){const L=x.getBBox(),v=T.createElementNS("http://www.w3.org/2000/svg","rect");v.setAttribute("rx",0),v.setAttribute("ry",0),v.setAttribute("width",L.width),v.setAttribute("height",L.height),x.insertBefore(v,x.firstChild)}}};function D(s){let t;switch(s){case 0:t="aggregation";break;case 1:t="extension";break;case 2:t="composition";break;case 3:t="dependency";break;case 4:t="lollipop";break;default:t="none"}return t}const J={setConf:V,draw:W},se={parser:I,db:N,renderer:J,styles:M,init:s=>{s.class||(s.class={}),s.class.arrowMarkerAbsolute=s.arrowMarkerAbsolute,N.clear()}};export{se as diagram}; diff --git a/pr-383/assets/chunks/constants.3fbf9100.js b/pr-383/assets/chunks/constants.6a6fd4fb.js similarity index 90% rename from pr-383/assets/chunks/constants.3fbf9100.js rename to pr-383/assets/chunks/constants.6a6fd4fb.js index 663524088..d1a783e9c 100644 --- a/pr-383/assets/chunks/constants.3fbf9100.js +++ b/pr-383/assets/chunks/constants.6a6fd4fb.js @@ -1 +1 @@ -const o=Object.freeze({golangVersion:"go1.22.3",nodeVersion:"21.7.2",yarnVersion:"1.22.19",rollkitLatestTag:"v0.13.3",rollkitLatestSha:"45b1573",rollkitCosmosSDKVersion:"v0.50.6-rollkit-v0.13.3-no-fraud-proofs",localDALatestTag:"v0.2.0",igniteVersionTag:"v28.3.0"});export{o as c}; +const o=Object.freeze({golangVersion:"go1.22.3",nodeVersion:"21.7.2",yarnVersion:"1.22.19",rollkitLatestTag:"v0.13.3",rollkitLatestSha:"45b1573",rollkitCosmosSDKVersion:"v0.50.6-rollkit-v0.13.3-no-fraud-proofs",localDALatestTag:"v0.2.0",igniteVersionTag:"v28.4.0"});export{o as c}; diff --git a/pr-383/assets/chunks/createText-285e50b4.f886ce05.js b/pr-383/assets/chunks/createText-285e50b4.661aa36f.js similarity index 99% rename from pr-383/assets/chunks/createText-285e50b4.f886ce05.js rename to pr-383/assets/chunks/createText-285e50b4.661aa36f.js index 762fb1c17..05c0ff0ac 100644 --- a/pr-383/assets/chunks/createText-285e50b4.f886ce05.js +++ b/pr-383/assets/chunks/createText-285e50b4.661aa36f.js @@ -1,4 +1,4 @@ -import{l as At,a4 as zt,a6 as It}from"../app.34e6398e.js";const Tt={};function Bt(n,r){const t=r||Tt,e=typeof t.includeImageAlt=="boolean"?t.includeImageAlt:!0,u=typeof t.includeHtml=="boolean"?t.includeHtml:!0;return nt(n,e,u)}function nt(n,r,t){if(Lt(n)){if("value"in n)return n.type==="html"&&!t?"":n.value;if(r&&"alt"in n&&n.alt)return n.alt;if("children"in n)return Hn(n.children,r,t)}return Array.isArray(n)?Hn(n,r,t):""}function Hn(n,r,t){const e=[];let u=-1;for(;++uu?0:u+r:r=r>u?u:r,t=t>0?t:0,e.length<1e4)l=Array.from(e),l.unshift(r,t),n.splice(...l);else for(t&&n.splice(r,t);i0?(tn(n,n.length,0,r),n):r}const Nn={}.hasOwnProperty;function Ot(n){const r={};let t=-1;for(;++tl))return;const T=r.events.length;let H=T,N,V;for(;H--;)if(r.events[H][0]==="exit"&&r.events[H][1].type==="chunkFlow"){if(N){V=r.events[H][1].end;break}N=!0}for(b(e),k=T;kF;){const _=t[D];r.containerState=_[1],_[0].exit.call(r,n)}t.length=F}function j(){u.write([null]),i=void 0,u=void 0,r.containerState._closeFlow=void 0}}function Ut(n,r,t){return O(n,n.attempt(this.parser.constructs.document,r,t),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function Wn(n){if(n===null||Z(n)||Ht(n))return 1;if(qt(n))return 2}function Ln(n,r,t){const e=[];let u=-1;for(;++u1&&n[t][1].end.offset-n[t][1].start.offset>1?2:1;const f=Object.assign({},n[e][1].end),x=Object.assign({},n[t][1].start);Qn(f,-m),Qn(x,m),l={type:m>1?"strongSequence":"emphasisSequence",start:f,end:Object.assign({},n[e][1].end)},a={type:m>1?"strongSequence":"emphasisSequence",start:Object.assign({},n[t][1].start),end:x},i={type:m>1?"strongText":"emphasisText",start:Object.assign({},n[e][1].end),end:Object.assign({},n[t][1].start)},u={type:m>1?"strong":"emphasis",start:Object.assign({},l.start),end:Object.assign({},a.end)},n[e][1].end=Object.assign({},l.start),n[t][1].start=Object.assign({},a.end),c=[],n[e][1].end.offset-n[e][1].start.offset&&(c=Y(c,[["enter",n[e][1],r],["exit",n[e][1],r]])),c=Y(c,[["enter",u,r],["enter",l,r],["exit",l,r],["enter",i,r]]),c=Y(c,Ln(r.parser.constructs.insideSpan.null,n.slice(e+1,t),r)),c=Y(c,[["exit",i,r],["enter",a,r],["exit",a,r],["exit",u,r]]),n[t][1].end.offset-n[t][1].start.offset?(p=2,c=Y(c,[["enter",n[t][1],r],["exit",n[t][1],r]])):p=0,tn(n,e-1,t-e+3,c),t=e+c.length-p-2;break}}for(t=-1;++t0&&z(k)?O(n,j,"linePrefix",i+1)(k):j(k)}function j(k){return k===null||C(k)?n.check($n,I,D)(k):(n.enter("codeFlowValue"),F(k))}function F(k){return k===null||C(k)?(n.exit("codeFlowValue"),j(k)):(n.consume(k),F)}function D(k){return n.exit("codeFenced"),r(k)}function _(k,T,H){let N=0;return V;function V(w){return k.enter("lineEnding"),k.consume(w),k.exit("lineEnding"),y}function y(w){return k.enter("codeFencedFence"),z(w)?O(k,S,"linePrefix",e.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(w):S(w)}function S(w){return w===a?(k.enter("codeFencedFenceSequence"),P(w)):H(w)}function P(w){return w===a?(N++,k.consume(w),P):N>=l?(k.exit("codeFencedFenceSequence"),z(w)?O(k,R,"whitespace")(w):R(w)):H(w)}function R(w){return w===null||C(w)?(k.exit("codeFencedFence"),T(w)):H(w)}}}function re(n,r,t){const e=this;return u;function u(l){return l===null?t(l):(n.enter("lineEnding"),n.consume(l),n.exit("lineEnding"),i)}function i(l){return e.parser.lazy[e.now().line]?t(l):r(l)}}const Cn={name:"codeIndented",tokenize:ue},ie={tokenize:le,partial:!0};function ue(n,r,t){const e=this;return u;function u(c){return n.enter("codeIndented"),O(n,i,"linePrefix",4+1)(c)}function i(c){const p=e.events[e.events.length-1];return p&&p[1].type==="linePrefix"&&p[2].sliceSerialize(p[1],!0).length>=4?l(c):t(c)}function l(c){return c===null?m(c):C(c)?n.attempt(ie,l,m)(c):(n.enter("codeFlowValue"),a(c))}function a(c){return c===null||C(c)?(n.exit("codeFlowValue"),l(c)):(n.consume(c),a)}function m(c){return n.exit("codeIndented"),r(c)}}function le(n,r,t){const e=this;return u;function u(l){return e.parser.lazy[e.now().line]?t(l):C(l)?(n.enter("lineEnding"),n.consume(l),n.exit("lineEnding"),u):O(n,i,"linePrefix",4+1)(l)}function i(l){const a=e.events[e.events.length-1];return a&&a[1].type==="linePrefix"&&a[2].sliceSerialize(a[1],!0).length>=4?r(l):C(l)?u(l):t(l)}}const ae={name:"codeText",tokenize:ce,resolve:oe,previous:se};function oe(n){let r=n.length-4,t=3,e,u;if((n[t][1].type==="lineEnding"||n[t][1].type==="space")&&(n[r][1].type==="lineEnding"||n[r][1].type==="space")){for(e=t;++e=4?r(l):n.interrupt(e.parser.constructs.flow,t,r)(l)}}function ut(n,r,t,e,u,i,l,a,m){const c=m||Number.POSITIVE_INFINITY;let p=0;return f;function f(b){return b===60?(n.enter(e),n.enter(u),n.enter(i),n.consume(b),n.exit(i),x):b===null||b===32||b===41||An(b)?t(b):(n.enter(e),n.enter(l),n.enter(a),n.enter("chunkString",{contentType:"string"}),I(b))}function x(b){return b===62?(n.enter(i),n.consume(b),n.exit(i),n.exit(u),n.exit(e),r):(n.enter(a),n.enter("chunkString",{contentType:"string"}),h(b))}function h(b){return b===62?(n.exit("chunkString"),n.exit(a),x(b)):b===null||b===60||C(b)?t(b):(n.consume(b),b===92?A:h)}function A(b){return b===60||b===62||b===92?(n.consume(b),h):h(b)}function I(b){return!p&&(b===null||b===41||Z(b))?(n.exit("chunkString"),n.exit(a),n.exit(l),n.exit(e),r(b)):p999||h===null||h===91||h===93&&!m||h===94&&!a&&"_hiddenFootnoteSupport"in l.parser.constructs?t(h):h===93?(n.exit(i),n.enter(u),n.consume(h),n.exit(u),n.exit(e),r):C(h)?(n.enter("lineEnding"),n.consume(h),n.exit("lineEnding"),p):(n.enter("chunkString",{contentType:"string"}),f(h))}function f(h){return h===null||h===91||h===93||C(h)||a++>999?(n.exit("chunkString"),p(h)):(n.consume(h),m||(m=!z(h)),h===92?x:f)}function x(h){return h===91||h===92||h===93?(n.consume(h),a++,f):f(h)}}function at(n,r,t,e,u,i){let l;return a;function a(x){return x===34||x===39||x===40?(n.enter(e),n.enter(u),n.consume(x),n.exit(u),l=x===40?41:x,m):t(x)}function m(x){return x===l?(n.enter(u),n.consume(x),n.exit(u),n.exit(e),r):(n.enter(i),c(x))}function c(x){return x===l?(n.exit(i),m(l)):x===null?t(x):C(x)?(n.enter("lineEnding"),n.consume(x),n.exit("lineEnding"),O(n,c,"linePrefix")):(n.enter("chunkString",{contentType:"string"}),p(x))}function p(x){return x===l||x===null||C(x)?(n.exit("chunkString"),c(x)):(n.consume(x),x===92?f:p)}function f(x){return x===l||x===92?(n.consume(x),p):p(x)}}function dn(n,r){let t;return e;function e(u){return C(u)?(n.enter("lineEnding"),n.consume(u),n.exit("lineEnding"),t=!0,e):z(u)?O(n,e,t?"linePrefix":"lineSuffix")(u):r(u)}}function xn(n){return n.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const ke={name:"definition",tokenize:be},de={tokenize:ye,partial:!0};function be(n,r,t){const e=this;let u;return i;function i(h){return n.enter("definition"),l(h)}function l(h){return lt.call(e,n,a,t,"definitionLabel","definitionLabelMarker","definitionLabelString")(h)}function a(h){return u=xn(e.sliceSerialize(e.events[e.events.length-1][1]).slice(1,-1)),h===58?(n.enter("definitionMarker"),n.consume(h),n.exit("definitionMarker"),m):t(h)}function m(h){return Z(h)?dn(n,c)(h):c(h)}function c(h){return ut(n,p,t,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(h)}function p(h){return n.attempt(de,f,f)(h)}function f(h){return z(h)?O(n,x,"whitespace")(h):x(h)}function x(h){return h===null||C(h)?(n.exit("definition"),e.parser.defined.push(u),r(h)):t(h)}}function ye(n,r,t){return e;function e(a){return Z(a)?dn(n,u)(a):t(a)}function u(a){return at(n,i,t,"definitionTitle","definitionTitleMarker","definitionTitleString")(a)}function i(a){return z(a)?O(n,l,"whitespace")(a):l(a)}function l(a){return a===null||C(a)?r(a):t(a)}}const Se={name:"hardBreakEscape",tokenize:Fe};function Fe(n,r,t){return e;function e(i){return n.enter("hardBreakEscape"),n.consume(i),u}function u(i){return C(i)?(n.exit("hardBreakEscape"),r(i)):t(i)}}const Ee={name:"headingAtx",tokenize:we,resolve:Ce};function Ce(n,r){let t=n.length-2,e=3,u,i;return n[e][1].type==="whitespace"&&(e+=2),t-2>e&&n[t][1].type==="whitespace"&&(t-=2),n[t][1].type==="atxHeadingSequence"&&(e===t-1||t-4>e&&n[t-2][1].type==="whitespace")&&(t-=e+1===t?2:4),t>e&&(u={type:"atxHeadingText",start:n[e][1].start,end:n[t][1].end},i={type:"chunkText",start:n[e][1].start,end:n[t][1].end,contentType:"text"},tn(n,e,t-e+1,[["enter",u,r],["enter",i,r],["exit",i,r],["exit",u,r]])),n}function we(n,r,t){let e=0;return u;function u(p){return n.enter("atxHeading"),i(p)}function i(p){return n.enter("atxHeadingSequence"),l(p)}function l(p){return p===35&&e++<6?(n.consume(p),l):p===null||Z(p)?(n.exit("atxHeadingSequence"),a(p)):t(p)}function a(p){return p===35?(n.enter("atxHeadingSequence"),m(p)):p===null||C(p)?(n.exit("atxHeading"),r(p)):z(p)?O(n,a,"whitespace")(p):(n.enter("atxHeadingText"),c(p))}function m(p){return p===35?(n.consume(p),m):(n.exit("atxHeadingSequence"),a(p))}function c(p){return p===null||p===35||Z(p)?(n.exit("atxHeadingText"),a(p)):(n.consume(p),c)}}const Ae=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],Yn=["pre","script","style","textarea"],ze={name:"htmlFlow",tokenize:Le,resolveTo:Be,concrete:!0},Ie={tokenize:De,partial:!0},Te={tokenize:Oe,partial:!0};function Be(n){let r=n.length;for(;r--&&!(n[r][0]==="enter"&&n[r][1].type==="htmlFlow"););return r>1&&n[r-2][1].type==="linePrefix"&&(n[r][1].start=n[r-2][1].start,n[r+1][1].start=n[r-2][1].start,n.splice(r-2,2)),n}function Le(n,r,t){const e=this;let u,i,l,a,m;return c;function c(s){return p(s)}function p(s){return n.enter("htmlFlow"),n.enter("htmlFlowData"),n.consume(s),f}function f(s){return s===33?(n.consume(s),x):s===47?(n.consume(s),i=!0,I):s===63?(n.consume(s),u=3,e.interrupt?r:o):nn(s)?(n.consume(s),l=String.fromCharCode(s),M):t(s)}function x(s){return s===45?(n.consume(s),u=2,h):s===91?(n.consume(s),u=5,a=0,A):nn(s)?(n.consume(s),u=4,e.interrupt?r:o):t(s)}function h(s){return s===45?(n.consume(s),e.interrupt?r:o):t(s)}function A(s){const K="CDATA[";return s===K.charCodeAt(a++)?(n.consume(s),a===K.length?e.interrupt?r:S:A):t(s)}function I(s){return nn(s)?(n.consume(s),l=String.fromCharCode(s),M):t(s)}function M(s){if(s===null||s===47||s===62||Z(s)){const K=s===47,hn=l.toLowerCase();return!K&&!i&&Yn.includes(hn)?(u=1,e.interrupt?r(s):S(s)):Ae.includes(l.toLowerCase())?(u=6,K?(n.consume(s),b):e.interrupt?r(s):S(s)):(u=7,e.interrupt&&!e.parser.lazy[e.now().line]?t(s):i?j(s):F(s))}return s===45||v(s)?(n.consume(s),l+=String.fromCharCode(s),M):t(s)}function b(s){return s===62?(n.consume(s),e.interrupt?r:S):t(s)}function j(s){return z(s)?(n.consume(s),j):V(s)}function F(s){return s===47?(n.consume(s),V):s===58||s===95||nn(s)?(n.consume(s),D):z(s)?(n.consume(s),F):V(s)}function D(s){return s===45||s===46||s===58||s===95||v(s)?(n.consume(s),D):_(s)}function _(s){return s===61?(n.consume(s),k):z(s)?(n.consume(s),_):F(s)}function k(s){return s===null||s===60||s===61||s===62||s===96?t(s):s===34||s===39?(n.consume(s),m=s,T):z(s)?(n.consume(s),k):H(s)}function T(s){return s===m?(n.consume(s),m=null,N):s===null||C(s)?t(s):(n.consume(s),T)}function H(s){return s===null||s===34||s===39||s===47||s===60||s===61||s===62||s===96||Z(s)?_(s):(n.consume(s),H)}function N(s){return s===47||s===62||z(s)?F(s):t(s)}function V(s){return s===62?(n.consume(s),y):t(s)}function y(s){return s===null||C(s)?S(s):z(s)?(n.consume(s),y):t(s)}function S(s){return s===45&&u===2?(n.consume(s),U):s===60&&u===1?(n.consume(s),W):s===62&&u===4?(n.consume(s),J):s===63&&u===3?(n.consume(s),o):s===93&&u===5?(n.consume(s),en):C(s)&&(u===6||u===7)?(n.exit("htmlFlowData"),n.check(Ie,rn,P)(s)):s===null||C(s)?(n.exit("htmlFlowData"),P(s)):(n.consume(s),S)}function P(s){return n.check(Te,R,rn)(s)}function R(s){return n.enter("lineEnding"),n.consume(s),n.exit("lineEnding"),w}function w(s){return s===null||C(s)?P(s):(n.enter("htmlFlowData"),S(s))}function U(s){return s===45?(n.consume(s),o):S(s)}function W(s){return s===47?(n.consume(s),l="",G):S(s)}function G(s){if(s===62){const K=l.toLowerCase();return Yn.includes(K)?(n.consume(s),J):S(s)}return nn(s)&&l.length<8?(n.consume(s),l+=String.fromCharCode(s),G):S(s)}function en(s){return s===93?(n.consume(s),o):S(s)}function o(s){return s===62?(n.consume(s),J):s===45&&u===2?(n.consume(s),o):S(s)}function J(s){return s===null||C(s)?(n.exit("htmlFlowData"),rn(s)):(n.consume(s),J)}function rn(s){return n.exit("htmlFlow"),r(s)}}function Oe(n,r,t){const e=this;return u;function u(l){return C(l)?(n.enter("lineEnding"),n.consume(l),n.exit("lineEnding"),i):t(l)}function i(l){return e.parser.lazy[e.now().line]?t(l):r(l)}}function De(n,r,t){return e;function e(u){return n.enter("lineEnding"),n.consume(u),n.exit("lineEnding"),n.attempt(Sn,r,t)}}const Pe={name:"htmlText",tokenize:_e};function _e(n,r,t){const e=this;let u,i,l;return a;function a(o){return n.enter("htmlText"),n.enter("htmlTextData"),n.consume(o),m}function m(o){return o===33?(n.consume(o),c):o===47?(n.consume(o),_):o===63?(n.consume(o),F):nn(o)?(n.consume(o),H):t(o)}function c(o){return o===45?(n.consume(o),p):o===91?(n.consume(o),i=0,A):nn(o)?(n.consume(o),j):t(o)}function p(o){return o===45?(n.consume(o),h):t(o)}function f(o){return o===null?t(o):o===45?(n.consume(o),x):C(o)?(l=f,W(o)):(n.consume(o),f)}function x(o){return o===45?(n.consume(o),h):f(o)}function h(o){return o===62?U(o):o===45?x(o):f(o)}function A(o){const J="CDATA[";return o===J.charCodeAt(i++)?(n.consume(o),i===J.length?I:A):t(o)}function I(o){return o===null?t(o):o===93?(n.consume(o),M):C(o)?(l=I,W(o)):(n.consume(o),I)}function M(o){return o===93?(n.consume(o),b):I(o)}function b(o){return o===62?U(o):o===93?(n.consume(o),b):I(o)}function j(o){return o===null||o===62?U(o):C(o)?(l=j,W(o)):(n.consume(o),j)}function F(o){return o===null?t(o):o===63?(n.consume(o),D):C(o)?(l=F,W(o)):(n.consume(o),F)}function D(o){return o===62?U(o):F(o)}function _(o){return nn(o)?(n.consume(o),k):t(o)}function k(o){return o===45||v(o)?(n.consume(o),k):T(o)}function T(o){return C(o)?(l=T,W(o)):z(o)?(n.consume(o),T):U(o)}function H(o){return o===45||v(o)?(n.consume(o),H):o===47||o===62||Z(o)?N(o):t(o)}function N(o){return o===47?(n.consume(o),U):o===58||o===95||nn(o)?(n.consume(o),V):C(o)?(l=N,W(o)):z(o)?(n.consume(o),N):U(o)}function V(o){return o===45||o===46||o===58||o===95||v(o)?(n.consume(o),V):y(o)}function y(o){return o===61?(n.consume(o),S):C(o)?(l=y,W(o)):z(o)?(n.consume(o),y):N(o)}function S(o){return o===null||o===60||o===61||o===62||o===96?t(o):o===34||o===39?(n.consume(o),u=o,P):C(o)?(l=S,W(o)):z(o)?(n.consume(o),S):(n.consume(o),R)}function P(o){return o===u?(n.consume(o),u=void 0,w):o===null?t(o):C(o)?(l=P,W(o)):(n.consume(o),P)}function R(o){return o===null||o===34||o===39||o===60||o===61||o===96?t(o):o===47||o===62||Z(o)?N(o):(n.consume(o),R)}function w(o){return o===47||o===62||Z(o)?N(o):t(o)}function U(o){return o===62?(n.consume(o),n.exit("htmlTextData"),n.exit("htmlText"),r):t(o)}function W(o){return n.exit("htmlTextData"),n.enter("lineEnding"),n.consume(o),n.exit("lineEnding"),G}function G(o){return z(o)?O(n,en,"linePrefix",e.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(o):en(o)}function en(o){return n.enter("htmlTextData"),l(o)}}const Dn={name:"labelEnd",tokenize:Ne,resolveTo:He,resolveAll:qe},Me={tokenize:Ve},je={tokenize:We},Re={tokenize:Qe};function qe(n){let r=-1;for(;++r=3&&(c===null||C(c))?(n.exit("thematicBreak"),r(c)):t(c)}function m(c){return c===u?(n.consume(c),e++,m):(n.exit("thematicBreakSequence"),z(c)?O(n,a,"whitespace")(c):a(c))}}const $={name:"list",tokenize:ve,continuation:{tokenize:nr},exit:er},Ke={tokenize:rr,partial:!0},Xe={tokenize:tr,partial:!0};function ve(n,r,t){const e=this,u=e.events[e.events.length-1];let i=u&&u[1].type==="linePrefix"?u[2].sliceSerialize(u[1],!0).length:0,l=0;return a;function a(h){const A=e.containerState.type||(h===42||h===43||h===45?"listUnordered":"listOrdered");if(A==="listUnordered"?!e.containerState.marker||h===e.containerState.marker:zn(h)){if(e.containerState.type||(e.containerState.type=A,n.enter(A,{_container:!0})),A==="listUnordered")return n.enter("listItemPrefix"),h===42||h===45?n.check(bn,t,c)(h):c(h);if(!e.interrupt||h===49)return n.enter("listItemPrefix"),n.enter("listItemValue"),m(h)}return t(h)}function m(h){return zn(h)&&++l<10?(n.consume(h),m):(!e.interrupt||l<2)&&(e.containerState.marker?h===e.containerState.marker:h===41||h===46)?(n.exit("listItemValue"),c(h)):t(h)}function c(h){return n.enter("listItemMarker"),n.consume(h),n.exit("listItemMarker"),e.containerState.marker=e.containerState.marker||h,n.check(Sn,e.interrupt?t:p,n.attempt(Ke,x,f))}function p(h){return e.containerState.initialBlankLine=!0,i++,x(h)}function f(h){return z(h)?(n.enter("listItemPrefixWhitespace"),n.consume(h),n.exit("listItemPrefixWhitespace"),x):t(h)}function x(h){return e.containerState.size=i+e.sliceSerialize(n.exit("listItemPrefix"),!0).length,r(h)}}function nr(n,r,t){const e=this;return e.containerState._closeFlow=void 0,n.check(Sn,u,i);function u(a){return e.containerState.furtherBlankLines=e.containerState.furtherBlankLines||e.containerState.initialBlankLine,O(n,r,"listItemIndent",e.containerState.size+1)(a)}function i(a){return e.containerState.furtherBlankLines||!z(a)?(e.containerState.furtherBlankLines=void 0,e.containerState.initialBlankLine=void 0,l(a)):(e.containerState.furtherBlankLines=void 0,e.containerState.initialBlankLine=void 0,n.attempt(Xe,r,l)(a))}function l(a){return e.containerState._closeFlow=!0,e.interrupt=void 0,O(n,n.attempt($,r,t),"linePrefix",e.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(a)}}function tr(n,r,t){const e=this;return O(n,u,"listItemIndent",e.containerState.size+1);function u(i){const l=e.events[e.events.length-1];return l&&l[1].type==="listItemIndent"&&l[2].sliceSerialize(l[1],!0).length===e.containerState.size?r(i):t(i)}}function er(n){n.exit(this.containerState.type)}function rr(n,r,t){const e=this;return O(n,u,"listItemPrefixWhitespace",e.parser.constructs.disable.null.includes("codeIndented")?void 0:4+1);function u(i){const l=e.events[e.events.length-1];return!z(i)&&l&&l[1].type==="listItemPrefixWhitespace"?r(i):t(i)}}const Gn={name:"setextUnderline",tokenize:ur,resolveTo:ir};function ir(n,r){let t=n.length,e,u,i;for(;t--;)if(n[t][0]==="enter"){if(n[t][1].type==="content"){e=t;break}n[t][1].type==="paragraph"&&(u=t)}else n[t][1].type==="content"&&n.splice(t,1),!i&&n[t][1].type==="definition"&&(i=t);const l={type:"setextHeading",start:Object.assign({},n[u][1].start),end:Object.assign({},n[n.length-1][1].end)};return n[u][1].type="setextHeadingText",i?(n.splice(u,0,["enter",l,r]),n.splice(i+1,0,["exit",n[e][1],r]),n[e][1].end=Object.assign({},n[i][1].end)):n[e][1]=l,n.push(["exit",l,r]),n}function ur(n,r,t){const e=this;let u;return i;function i(c){let p=e.events.length,f;for(;p--;)if(e.events[p][1].type!=="lineEnding"&&e.events[p][1].type!=="linePrefix"&&e.events[p][1].type!=="content"){f=e.events[p][1].type==="paragraph";break}return!e.parser.lazy[e.now().line]&&(e.interrupt||f)?(n.enter("setextHeadingLine"),u=c,l(c)):t(c)}function l(c){return n.enter("setextHeadingLineSequence"),a(c)}function a(c){return c===u?(n.consume(c),a):(n.exit("setextHeadingLineSequence"),z(c)?O(n,m,"lineSuffix")(c):m(c))}function m(c){return c===null||C(c)?(n.exit("setextHeadingLine"),r(c)):t(c)}}const lr={tokenize:ar};function ar(n){const r=this,t=n.attempt(Sn,e,n.attempt(this.parser.constructs.flowInitial,u,O(n,n.attempt(this.parser.constructs.flow,u,n.attempt(pe,u)),"linePrefix")));return t;function e(i){if(i===null){n.consume(i);return}return n.enter("lineEndingBlank"),n.consume(i),n.exit("lineEndingBlank"),r.currentConstruct=void 0,t}function u(i){if(i===null){n.consume(i);return}return n.enter("lineEnding"),n.consume(i),n.exit("lineEnding"),r.currentConstruct=void 0,t}}const or={resolveAll:st()},sr=ot("string"),cr=ot("text");function ot(n){return{tokenize:r,resolveAll:st(n==="text"?hr:void 0)};function r(t){const e=this,u=this.parser.constructs[n],i=t.attempt(u,l,a);return l;function l(p){return c(p)?i(p):a(p)}function a(p){if(p===null){t.consume(p);return}return t.enter("data"),t.consume(p),m}function m(p){return c(p)?(t.exit("data"),i(p)):(t.consume(p),m)}function c(p){if(p===null)return!0;const f=u[p];let x=-1;if(f)for(;++x-1){const a=l[0];typeof a=="string"?l[0]=a.slice(e):l.shift()}i>0&&l.push(n[u].slice(0,i))}return l}function mr(n,r){let t=-1;const e=[];let u;for(;++tu?0:u+r:r=r>u?u:r,t=t>0?t:0,e.length<1e4)l=Array.from(e),l.unshift(r,t),n.splice(...l);else for(t&&n.splice(r,t);i0?(tn(n,n.length,0,r),n):r}const Nn={}.hasOwnProperty;function Ot(n){const r={};let t=-1;for(;++tl))return;const T=r.events.length;let H=T,N,V;for(;H--;)if(r.events[H][0]==="exit"&&r.events[H][1].type==="chunkFlow"){if(N){V=r.events[H][1].end;break}N=!0}for(b(e),k=T;kF;){const _=t[D];r.containerState=_[1],_[0].exit.call(r,n)}t.length=F}function j(){u.write([null]),i=void 0,u=void 0,r.containerState._closeFlow=void 0}}function Ut(n,r,t){return O(n,n.attempt(this.parser.constructs.document,r,t),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function Wn(n){if(n===null||Z(n)||Ht(n))return 1;if(qt(n))return 2}function Ln(n,r,t){const e=[];let u=-1;for(;++u1&&n[t][1].end.offset-n[t][1].start.offset>1?2:1;const f=Object.assign({},n[e][1].end),x=Object.assign({},n[t][1].start);Qn(f,-m),Qn(x,m),l={type:m>1?"strongSequence":"emphasisSequence",start:f,end:Object.assign({},n[e][1].end)},a={type:m>1?"strongSequence":"emphasisSequence",start:Object.assign({},n[t][1].start),end:x},i={type:m>1?"strongText":"emphasisText",start:Object.assign({},n[e][1].end),end:Object.assign({},n[t][1].start)},u={type:m>1?"strong":"emphasis",start:Object.assign({},l.start),end:Object.assign({},a.end)},n[e][1].end=Object.assign({},l.start),n[t][1].start=Object.assign({},a.end),c=[],n[e][1].end.offset-n[e][1].start.offset&&(c=Y(c,[["enter",n[e][1],r],["exit",n[e][1],r]])),c=Y(c,[["enter",u,r],["enter",l,r],["exit",l,r],["enter",i,r]]),c=Y(c,Ln(r.parser.constructs.insideSpan.null,n.slice(e+1,t),r)),c=Y(c,[["exit",i,r],["enter",a,r],["exit",a,r],["exit",u,r]]),n[t][1].end.offset-n[t][1].start.offset?(p=2,c=Y(c,[["enter",n[t][1],r],["exit",n[t][1],r]])):p=0,tn(n,e-1,t-e+3,c),t=e+c.length-p-2;break}}for(t=-1;++t0&&z(k)?O(n,j,"linePrefix",i+1)(k):j(k)}function j(k){return k===null||C(k)?n.check($n,I,D)(k):(n.enter("codeFlowValue"),F(k))}function F(k){return k===null||C(k)?(n.exit("codeFlowValue"),j(k)):(n.consume(k),F)}function D(k){return n.exit("codeFenced"),r(k)}function _(k,T,H){let N=0;return V;function V(w){return k.enter("lineEnding"),k.consume(w),k.exit("lineEnding"),y}function y(w){return k.enter("codeFencedFence"),z(w)?O(k,S,"linePrefix",e.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(w):S(w)}function S(w){return w===a?(k.enter("codeFencedFenceSequence"),P(w)):H(w)}function P(w){return w===a?(N++,k.consume(w),P):N>=l?(k.exit("codeFencedFenceSequence"),z(w)?O(k,R,"whitespace")(w):R(w)):H(w)}function R(w){return w===null||C(w)?(k.exit("codeFencedFence"),T(w)):H(w)}}}function re(n,r,t){const e=this;return u;function u(l){return l===null?t(l):(n.enter("lineEnding"),n.consume(l),n.exit("lineEnding"),i)}function i(l){return e.parser.lazy[e.now().line]?t(l):r(l)}}const Cn={name:"codeIndented",tokenize:ue},ie={tokenize:le,partial:!0};function ue(n,r,t){const e=this;return u;function u(c){return n.enter("codeIndented"),O(n,i,"linePrefix",4+1)(c)}function i(c){const p=e.events[e.events.length-1];return p&&p[1].type==="linePrefix"&&p[2].sliceSerialize(p[1],!0).length>=4?l(c):t(c)}function l(c){return c===null?m(c):C(c)?n.attempt(ie,l,m)(c):(n.enter("codeFlowValue"),a(c))}function a(c){return c===null||C(c)?(n.exit("codeFlowValue"),l(c)):(n.consume(c),a)}function m(c){return n.exit("codeIndented"),r(c)}}function le(n,r,t){const e=this;return u;function u(l){return e.parser.lazy[e.now().line]?t(l):C(l)?(n.enter("lineEnding"),n.consume(l),n.exit("lineEnding"),u):O(n,i,"linePrefix",4+1)(l)}function i(l){const a=e.events[e.events.length-1];return a&&a[1].type==="linePrefix"&&a[2].sliceSerialize(a[1],!0).length>=4?r(l):C(l)?u(l):t(l)}}const ae={name:"codeText",tokenize:ce,resolve:oe,previous:se};function oe(n){let r=n.length-4,t=3,e,u;if((n[t][1].type==="lineEnding"||n[t][1].type==="space")&&(n[r][1].type==="lineEnding"||n[r][1].type==="space")){for(e=t;++e=4?r(l):n.interrupt(e.parser.constructs.flow,t,r)(l)}}function ut(n,r,t,e,u,i,l,a,m){const c=m||Number.POSITIVE_INFINITY;let p=0;return f;function f(b){return b===60?(n.enter(e),n.enter(u),n.enter(i),n.consume(b),n.exit(i),x):b===null||b===32||b===41||An(b)?t(b):(n.enter(e),n.enter(l),n.enter(a),n.enter("chunkString",{contentType:"string"}),I(b))}function x(b){return b===62?(n.enter(i),n.consume(b),n.exit(i),n.exit(u),n.exit(e),r):(n.enter(a),n.enter("chunkString",{contentType:"string"}),h(b))}function h(b){return b===62?(n.exit("chunkString"),n.exit(a),x(b)):b===null||b===60||C(b)?t(b):(n.consume(b),b===92?A:h)}function A(b){return b===60||b===62||b===92?(n.consume(b),h):h(b)}function I(b){return!p&&(b===null||b===41||Z(b))?(n.exit("chunkString"),n.exit(a),n.exit(l),n.exit(e),r(b)):p999||h===null||h===91||h===93&&!m||h===94&&!a&&"_hiddenFootnoteSupport"in l.parser.constructs?t(h):h===93?(n.exit(i),n.enter(u),n.consume(h),n.exit(u),n.exit(e),r):C(h)?(n.enter("lineEnding"),n.consume(h),n.exit("lineEnding"),p):(n.enter("chunkString",{contentType:"string"}),f(h))}function f(h){return h===null||h===91||h===93||C(h)||a++>999?(n.exit("chunkString"),p(h)):(n.consume(h),m||(m=!z(h)),h===92?x:f)}function x(h){return h===91||h===92||h===93?(n.consume(h),a++,f):f(h)}}function at(n,r,t,e,u,i){let l;return a;function a(x){return x===34||x===39||x===40?(n.enter(e),n.enter(u),n.consume(x),n.exit(u),l=x===40?41:x,m):t(x)}function m(x){return x===l?(n.enter(u),n.consume(x),n.exit(u),n.exit(e),r):(n.enter(i),c(x))}function c(x){return x===l?(n.exit(i),m(l)):x===null?t(x):C(x)?(n.enter("lineEnding"),n.consume(x),n.exit("lineEnding"),O(n,c,"linePrefix")):(n.enter("chunkString",{contentType:"string"}),p(x))}function p(x){return x===l||x===null||C(x)?(n.exit("chunkString"),c(x)):(n.consume(x),x===92?f:p)}function f(x){return x===l||x===92?(n.consume(x),p):p(x)}}function dn(n,r){let t;return e;function e(u){return C(u)?(n.enter("lineEnding"),n.consume(u),n.exit("lineEnding"),t=!0,e):z(u)?O(n,e,t?"linePrefix":"lineSuffix")(u):r(u)}}function xn(n){return n.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const ke={name:"definition",tokenize:be},de={tokenize:ye,partial:!0};function be(n,r,t){const e=this;let u;return i;function i(h){return n.enter("definition"),l(h)}function l(h){return lt.call(e,n,a,t,"definitionLabel","definitionLabelMarker","definitionLabelString")(h)}function a(h){return u=xn(e.sliceSerialize(e.events[e.events.length-1][1]).slice(1,-1)),h===58?(n.enter("definitionMarker"),n.consume(h),n.exit("definitionMarker"),m):t(h)}function m(h){return Z(h)?dn(n,c)(h):c(h)}function c(h){return ut(n,p,t,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(h)}function p(h){return n.attempt(de,f,f)(h)}function f(h){return z(h)?O(n,x,"whitespace")(h):x(h)}function x(h){return h===null||C(h)?(n.exit("definition"),e.parser.defined.push(u),r(h)):t(h)}}function ye(n,r,t){return e;function e(a){return Z(a)?dn(n,u)(a):t(a)}function u(a){return at(n,i,t,"definitionTitle","definitionTitleMarker","definitionTitleString")(a)}function i(a){return z(a)?O(n,l,"whitespace")(a):l(a)}function l(a){return a===null||C(a)?r(a):t(a)}}const Se={name:"hardBreakEscape",tokenize:Fe};function Fe(n,r,t){return e;function e(i){return n.enter("hardBreakEscape"),n.consume(i),u}function u(i){return C(i)?(n.exit("hardBreakEscape"),r(i)):t(i)}}const Ee={name:"headingAtx",tokenize:we,resolve:Ce};function Ce(n,r){let t=n.length-2,e=3,u,i;return n[e][1].type==="whitespace"&&(e+=2),t-2>e&&n[t][1].type==="whitespace"&&(t-=2),n[t][1].type==="atxHeadingSequence"&&(e===t-1||t-4>e&&n[t-2][1].type==="whitespace")&&(t-=e+1===t?2:4),t>e&&(u={type:"atxHeadingText",start:n[e][1].start,end:n[t][1].end},i={type:"chunkText",start:n[e][1].start,end:n[t][1].end,contentType:"text"},tn(n,e,t-e+1,[["enter",u,r],["enter",i,r],["exit",i,r],["exit",u,r]])),n}function we(n,r,t){let e=0;return u;function u(p){return n.enter("atxHeading"),i(p)}function i(p){return n.enter("atxHeadingSequence"),l(p)}function l(p){return p===35&&e++<6?(n.consume(p),l):p===null||Z(p)?(n.exit("atxHeadingSequence"),a(p)):t(p)}function a(p){return p===35?(n.enter("atxHeadingSequence"),m(p)):p===null||C(p)?(n.exit("atxHeading"),r(p)):z(p)?O(n,a,"whitespace")(p):(n.enter("atxHeadingText"),c(p))}function m(p){return p===35?(n.consume(p),m):(n.exit("atxHeadingSequence"),a(p))}function c(p){return p===null||p===35||Z(p)?(n.exit("atxHeadingText"),a(p)):(n.consume(p),c)}}const Ae=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],Yn=["pre","script","style","textarea"],ze={name:"htmlFlow",tokenize:Le,resolveTo:Be,concrete:!0},Ie={tokenize:De,partial:!0},Te={tokenize:Oe,partial:!0};function Be(n){let r=n.length;for(;r--&&!(n[r][0]==="enter"&&n[r][1].type==="htmlFlow"););return r>1&&n[r-2][1].type==="linePrefix"&&(n[r][1].start=n[r-2][1].start,n[r+1][1].start=n[r-2][1].start,n.splice(r-2,2)),n}function Le(n,r,t){const e=this;let u,i,l,a,m;return c;function c(s){return p(s)}function p(s){return n.enter("htmlFlow"),n.enter("htmlFlowData"),n.consume(s),f}function f(s){return s===33?(n.consume(s),x):s===47?(n.consume(s),i=!0,I):s===63?(n.consume(s),u=3,e.interrupt?r:o):nn(s)?(n.consume(s),l=String.fromCharCode(s),M):t(s)}function x(s){return s===45?(n.consume(s),u=2,h):s===91?(n.consume(s),u=5,a=0,A):nn(s)?(n.consume(s),u=4,e.interrupt?r:o):t(s)}function h(s){return s===45?(n.consume(s),e.interrupt?r:o):t(s)}function A(s){const K="CDATA[";return s===K.charCodeAt(a++)?(n.consume(s),a===K.length?e.interrupt?r:S:A):t(s)}function I(s){return nn(s)?(n.consume(s),l=String.fromCharCode(s),M):t(s)}function M(s){if(s===null||s===47||s===62||Z(s)){const K=s===47,hn=l.toLowerCase();return!K&&!i&&Yn.includes(hn)?(u=1,e.interrupt?r(s):S(s)):Ae.includes(l.toLowerCase())?(u=6,K?(n.consume(s),b):e.interrupt?r(s):S(s)):(u=7,e.interrupt&&!e.parser.lazy[e.now().line]?t(s):i?j(s):F(s))}return s===45||v(s)?(n.consume(s),l+=String.fromCharCode(s),M):t(s)}function b(s){return s===62?(n.consume(s),e.interrupt?r:S):t(s)}function j(s){return z(s)?(n.consume(s),j):V(s)}function F(s){return s===47?(n.consume(s),V):s===58||s===95||nn(s)?(n.consume(s),D):z(s)?(n.consume(s),F):V(s)}function D(s){return s===45||s===46||s===58||s===95||v(s)?(n.consume(s),D):_(s)}function _(s){return s===61?(n.consume(s),k):z(s)?(n.consume(s),_):F(s)}function k(s){return s===null||s===60||s===61||s===62||s===96?t(s):s===34||s===39?(n.consume(s),m=s,T):z(s)?(n.consume(s),k):H(s)}function T(s){return s===m?(n.consume(s),m=null,N):s===null||C(s)?t(s):(n.consume(s),T)}function H(s){return s===null||s===34||s===39||s===47||s===60||s===61||s===62||s===96||Z(s)?_(s):(n.consume(s),H)}function N(s){return s===47||s===62||z(s)?F(s):t(s)}function V(s){return s===62?(n.consume(s),y):t(s)}function y(s){return s===null||C(s)?S(s):z(s)?(n.consume(s),y):t(s)}function S(s){return s===45&&u===2?(n.consume(s),U):s===60&&u===1?(n.consume(s),W):s===62&&u===4?(n.consume(s),J):s===63&&u===3?(n.consume(s),o):s===93&&u===5?(n.consume(s),en):C(s)&&(u===6||u===7)?(n.exit("htmlFlowData"),n.check(Ie,rn,P)(s)):s===null||C(s)?(n.exit("htmlFlowData"),P(s)):(n.consume(s),S)}function P(s){return n.check(Te,R,rn)(s)}function R(s){return n.enter("lineEnding"),n.consume(s),n.exit("lineEnding"),w}function w(s){return s===null||C(s)?P(s):(n.enter("htmlFlowData"),S(s))}function U(s){return s===45?(n.consume(s),o):S(s)}function W(s){return s===47?(n.consume(s),l="",G):S(s)}function G(s){if(s===62){const K=l.toLowerCase();return Yn.includes(K)?(n.consume(s),J):S(s)}return nn(s)&&l.length<8?(n.consume(s),l+=String.fromCharCode(s),G):S(s)}function en(s){return s===93?(n.consume(s),o):S(s)}function o(s){return s===62?(n.consume(s),J):s===45&&u===2?(n.consume(s),o):S(s)}function J(s){return s===null||C(s)?(n.exit("htmlFlowData"),rn(s)):(n.consume(s),J)}function rn(s){return n.exit("htmlFlow"),r(s)}}function Oe(n,r,t){const e=this;return u;function u(l){return C(l)?(n.enter("lineEnding"),n.consume(l),n.exit("lineEnding"),i):t(l)}function i(l){return e.parser.lazy[e.now().line]?t(l):r(l)}}function De(n,r,t){return e;function e(u){return n.enter("lineEnding"),n.consume(u),n.exit("lineEnding"),n.attempt(Sn,r,t)}}const Pe={name:"htmlText",tokenize:_e};function _e(n,r,t){const e=this;let u,i,l;return a;function a(o){return n.enter("htmlText"),n.enter("htmlTextData"),n.consume(o),m}function m(o){return o===33?(n.consume(o),c):o===47?(n.consume(o),_):o===63?(n.consume(o),F):nn(o)?(n.consume(o),H):t(o)}function c(o){return o===45?(n.consume(o),p):o===91?(n.consume(o),i=0,A):nn(o)?(n.consume(o),j):t(o)}function p(o){return o===45?(n.consume(o),h):t(o)}function f(o){return o===null?t(o):o===45?(n.consume(o),x):C(o)?(l=f,W(o)):(n.consume(o),f)}function x(o){return o===45?(n.consume(o),h):f(o)}function h(o){return o===62?U(o):o===45?x(o):f(o)}function A(o){const J="CDATA[";return o===J.charCodeAt(i++)?(n.consume(o),i===J.length?I:A):t(o)}function I(o){return o===null?t(o):o===93?(n.consume(o),M):C(o)?(l=I,W(o)):(n.consume(o),I)}function M(o){return o===93?(n.consume(o),b):I(o)}function b(o){return o===62?U(o):o===93?(n.consume(o),b):I(o)}function j(o){return o===null||o===62?U(o):C(o)?(l=j,W(o)):(n.consume(o),j)}function F(o){return o===null?t(o):o===63?(n.consume(o),D):C(o)?(l=F,W(o)):(n.consume(o),F)}function D(o){return o===62?U(o):F(o)}function _(o){return nn(o)?(n.consume(o),k):t(o)}function k(o){return o===45||v(o)?(n.consume(o),k):T(o)}function T(o){return C(o)?(l=T,W(o)):z(o)?(n.consume(o),T):U(o)}function H(o){return o===45||v(o)?(n.consume(o),H):o===47||o===62||Z(o)?N(o):t(o)}function N(o){return o===47?(n.consume(o),U):o===58||o===95||nn(o)?(n.consume(o),V):C(o)?(l=N,W(o)):z(o)?(n.consume(o),N):U(o)}function V(o){return o===45||o===46||o===58||o===95||v(o)?(n.consume(o),V):y(o)}function y(o){return o===61?(n.consume(o),S):C(o)?(l=y,W(o)):z(o)?(n.consume(o),y):N(o)}function S(o){return o===null||o===60||o===61||o===62||o===96?t(o):o===34||o===39?(n.consume(o),u=o,P):C(o)?(l=S,W(o)):z(o)?(n.consume(o),S):(n.consume(o),R)}function P(o){return o===u?(n.consume(o),u=void 0,w):o===null?t(o):C(o)?(l=P,W(o)):(n.consume(o),P)}function R(o){return o===null||o===34||o===39||o===60||o===61||o===96?t(o):o===47||o===62||Z(o)?N(o):(n.consume(o),R)}function w(o){return o===47||o===62||Z(o)?N(o):t(o)}function U(o){return o===62?(n.consume(o),n.exit("htmlTextData"),n.exit("htmlText"),r):t(o)}function W(o){return n.exit("htmlTextData"),n.enter("lineEnding"),n.consume(o),n.exit("lineEnding"),G}function G(o){return z(o)?O(n,en,"linePrefix",e.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(o):en(o)}function en(o){return n.enter("htmlTextData"),l(o)}}const Dn={name:"labelEnd",tokenize:Ne,resolveTo:He,resolveAll:qe},Me={tokenize:Ve},je={tokenize:We},Re={tokenize:Qe};function qe(n){let r=-1;for(;++r=3&&(c===null||C(c))?(n.exit("thematicBreak"),r(c)):t(c)}function m(c){return c===u?(n.consume(c),e++,m):(n.exit("thematicBreakSequence"),z(c)?O(n,a,"whitespace")(c):a(c))}}const $={name:"list",tokenize:ve,continuation:{tokenize:nr},exit:er},Ke={tokenize:rr,partial:!0},Xe={tokenize:tr,partial:!0};function ve(n,r,t){const e=this,u=e.events[e.events.length-1];let i=u&&u[1].type==="linePrefix"?u[2].sliceSerialize(u[1],!0).length:0,l=0;return a;function a(h){const A=e.containerState.type||(h===42||h===43||h===45?"listUnordered":"listOrdered");if(A==="listUnordered"?!e.containerState.marker||h===e.containerState.marker:zn(h)){if(e.containerState.type||(e.containerState.type=A,n.enter(A,{_container:!0})),A==="listUnordered")return n.enter("listItemPrefix"),h===42||h===45?n.check(bn,t,c)(h):c(h);if(!e.interrupt||h===49)return n.enter("listItemPrefix"),n.enter("listItemValue"),m(h)}return t(h)}function m(h){return zn(h)&&++l<10?(n.consume(h),m):(!e.interrupt||l<2)&&(e.containerState.marker?h===e.containerState.marker:h===41||h===46)?(n.exit("listItemValue"),c(h)):t(h)}function c(h){return n.enter("listItemMarker"),n.consume(h),n.exit("listItemMarker"),e.containerState.marker=e.containerState.marker||h,n.check(Sn,e.interrupt?t:p,n.attempt(Ke,x,f))}function p(h){return e.containerState.initialBlankLine=!0,i++,x(h)}function f(h){return z(h)?(n.enter("listItemPrefixWhitespace"),n.consume(h),n.exit("listItemPrefixWhitespace"),x):t(h)}function x(h){return e.containerState.size=i+e.sliceSerialize(n.exit("listItemPrefix"),!0).length,r(h)}}function nr(n,r,t){const e=this;return e.containerState._closeFlow=void 0,n.check(Sn,u,i);function u(a){return e.containerState.furtherBlankLines=e.containerState.furtherBlankLines||e.containerState.initialBlankLine,O(n,r,"listItemIndent",e.containerState.size+1)(a)}function i(a){return e.containerState.furtherBlankLines||!z(a)?(e.containerState.furtherBlankLines=void 0,e.containerState.initialBlankLine=void 0,l(a)):(e.containerState.furtherBlankLines=void 0,e.containerState.initialBlankLine=void 0,n.attempt(Xe,r,l)(a))}function l(a){return e.containerState._closeFlow=!0,e.interrupt=void 0,O(n,n.attempt($,r,t),"linePrefix",e.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(a)}}function tr(n,r,t){const e=this;return O(n,u,"listItemIndent",e.containerState.size+1);function u(i){const l=e.events[e.events.length-1];return l&&l[1].type==="listItemIndent"&&l[2].sliceSerialize(l[1],!0).length===e.containerState.size?r(i):t(i)}}function er(n){n.exit(this.containerState.type)}function rr(n,r,t){const e=this;return O(n,u,"listItemPrefixWhitespace",e.parser.constructs.disable.null.includes("codeIndented")?void 0:4+1);function u(i){const l=e.events[e.events.length-1];return!z(i)&&l&&l[1].type==="listItemPrefixWhitespace"?r(i):t(i)}}const Gn={name:"setextUnderline",tokenize:ur,resolveTo:ir};function ir(n,r){let t=n.length,e,u,i;for(;t--;)if(n[t][0]==="enter"){if(n[t][1].type==="content"){e=t;break}n[t][1].type==="paragraph"&&(u=t)}else n[t][1].type==="content"&&n.splice(t,1),!i&&n[t][1].type==="definition"&&(i=t);const l={type:"setextHeading",start:Object.assign({},n[u][1].start),end:Object.assign({},n[n.length-1][1].end)};return n[u][1].type="setextHeadingText",i?(n.splice(u,0,["enter",l,r]),n.splice(i+1,0,["exit",n[e][1],r]),n[e][1].end=Object.assign({},n[i][1].end)):n[e][1]=l,n.push(["exit",l,r]),n}function ur(n,r,t){const e=this;let u;return i;function i(c){let p=e.events.length,f;for(;p--;)if(e.events[p][1].type!=="lineEnding"&&e.events[p][1].type!=="linePrefix"&&e.events[p][1].type!=="content"){f=e.events[p][1].type==="paragraph";break}return!e.parser.lazy[e.now().line]&&(e.interrupt||f)?(n.enter("setextHeadingLine"),u=c,l(c)):t(c)}function l(c){return n.enter("setextHeadingLineSequence"),a(c)}function a(c){return c===u?(n.consume(c),a):(n.exit("setextHeadingLineSequence"),z(c)?O(n,m,"lineSuffix")(c):m(c))}function m(c){return c===null||C(c)?(n.exit("setextHeadingLine"),r(c)):t(c)}}const lr={tokenize:ar};function ar(n){const r=this,t=n.attempt(Sn,e,n.attempt(this.parser.constructs.flowInitial,u,O(n,n.attempt(this.parser.constructs.flow,u,n.attempt(pe,u)),"linePrefix")));return t;function e(i){if(i===null){n.consume(i);return}return n.enter("lineEndingBlank"),n.consume(i),n.exit("lineEndingBlank"),r.currentConstruct=void 0,t}function u(i){if(i===null){n.consume(i);return}return n.enter("lineEnding"),n.consume(i),n.exit("lineEnding"),r.currentConstruct=void 0,t}}const or={resolveAll:st()},sr=ot("string"),cr=ot("text");function ot(n){return{tokenize:r,resolveAll:st(n==="text"?hr:void 0)};function r(t){const e=this,u=this.parser.constructs[n],i=t.attempt(u,l,a);return l;function l(p){return c(p)?i(p):a(p)}function a(p){if(p===null){t.consume(p);return}return t.enter("data"),t.consume(p),m}function m(p){return c(p)?(t.exit("data"),i(p)):(t.consume(p),m)}function c(p){if(p===null)return!0;const f=u[p];let x=-1;if(f)for(;++x-1){const a=l[0];typeof a=="string"?l[0]=a.slice(e):l.shift()}i>0&&l.push(n[u].slice(0,i))}return l}function mr(n,r){let t=-1;const e=[];let u;for(;++t13&&t<32||t>126&&t<160||t>55295&&t<57344||t>64975&&t<65008||(t&65535)===65535||(t&65535)===65534||t>1114111?"๏ฟฝ":String.fromCharCode(t)}const Ir=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function Tr(n){return n.replace(Ir,Br)}function Br(n,r,t){if(r)return r;if(t.charCodeAt(0)===35){const u=t.charCodeAt(1),i=u===120||u===88;return ct(t.slice(i?2:1),i?16:10)}return On(t)||n}function yn(n){return!n||typeof n!="object"?"":"position"in n||"type"in n?Kn(n.position):"start"in n||"end"in n?Kn(n):"line"in n||"column"in n?Tn(n):""}function Tn(n){return Xn(n&&n.line)+":"+Xn(n&&n.column)}function Kn(n){return Tn(n&&n.start)+"-"+Tn(n&&n.end)}function Xn(n){return n&&typeof n=="number"?n:1}const ht={}.hasOwnProperty,pt=function(n,r,t){return typeof r!="string"&&(t=r,r=void 0),Lr(t)(zr(wr(t).document().write(Ar()(n,r,!0))))};function Lr(n){const r={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:a(Rn),autolinkProtocol:y,autolinkEmail:y,atxHeading:a(_n),blockQuote:a(Fn),characterEscape:y,characterReference:y,codeFenced:a(Pn),codeFencedFenceInfo:m,codeFencedFenceMeta:m,codeIndented:a(Pn,m),codeText:a(kt,m),codeTextData:y,data:y,codeFlowValue:y,definition:a(dt),definitionDestinationString:m,definitionLabelString:m,definitionTitleString:m,emphasis:a(bt),hardBreakEscape:a(Mn),hardBreakTrailing:a(Mn),htmlFlow:a(jn,m),htmlFlowData:y,htmlText:a(jn,m),htmlTextData:y,image:a(yt),label:m,link:a(Rn),listItem:a(St),listItemValue:A,listOrdered:a(qn,h),listUnordered:a(qn),paragraph:a(Ft),reference:hn,referenceString:m,resourceDestinationString:m,resourceTitleString:m,setextHeading:a(_n),strong:a(Et),thematicBreak:a(wt)},exit:{atxHeading:p(),atxHeadingSequence:T,autolink:p(),autolinkEmail:mn,autolinkProtocol:fn,blockQuote:p(),characterEscapeValue:S,characterReferenceMarkerHexadecimal:pn,characterReferenceMarkerNumeric:pn,characterReferenceValue:an,codeFenced:p(j),codeFencedFence:b,codeFencedFenceInfo:I,codeFencedFenceMeta:M,codeFlowValue:S,codeIndented:p(F),codeText:p(W),codeTextData:S,data:S,definition:p(),definitionDestinationString:k,definitionLabelString:D,definitionTitleString:_,emphasis:p(),hardBreakEscape:p(R),hardBreakTrailing:p(R),htmlFlow:p(w),htmlFlowData:S,htmlText:p(U),htmlTextData:S,image:p(en),label:J,labelText:o,lineEnding:P,link:p(G),listItem:p(),listOrdered:p(),listUnordered:p(),paragraph:p(),referenceString:Q,resourceDestinationString:rn,resourceTitleString:s,resource:K,setextHeading:p(V),setextHeadingLineSequence:N,setextHeadingText:H,strong:p(),thematicBreak:p()}};ft(r,(n||{}).mdastExtensions||[]);const t={};return e;function e(g){let d={type:"root",children:[]};const E={stack:[d],tokenStack:[],config:r,enter:c,exit:f,buffer:m,resume:x,setData:i,getData:l},B=[];let L=-1;for(;++L0){const X=E.tokenStack[E.tokenStack.length-1];(X[1]||vn).call(E,void 0,X[0])}for(d.position={start:sn(g.length>0?g[0][1].start:{line:1,column:1,offset:0}),end:sn(g.length>0?g[g.length-2][1].end:{line:1,column:1,offset:0})},L=-1;++L{t.forEach(a=>{yt[a](r,e,n)})},it=(r,t,e)=>{x.trace("Making markers for ",e),r.append("defs").append("marker").attr("id",t+"-extensionStart").attr("class","marker extension "+t).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),r.append("defs").append("marker").attr("id",t+"-extensionEnd").attr("class","marker extension "+t).attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},nt=(r,t)=>{r.append("defs").append("marker").attr("id",t+"-compositionStart").attr("class","marker composition "+t).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",t+"-compositionEnd").attr("class","marker composition "+t).attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},lt=(r,t)=>{r.append("defs").append("marker").attr("id",t+"-aggregationStart").attr("class","marker aggregation "+t).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",t+"-aggregationEnd").attr("class","marker aggregation "+t).attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},ct=(r,t)=>{r.append("defs").append("marker").attr("id",t+"-dependencyStart").attr("class","marker dependency "+t).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",t+"-dependencyEnd").attr("class","marker dependency "+t).attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},ht=(r,t)=>{r.append("defs").append("marker").attr("id",t+"-lollipopStart").attr("class","marker lollipop "+t).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","white").attr("cx",6).attr("cy",7).attr("r",6)},ot=(r,t)=>{r.append("marker").attr("id",t+"-pointEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",10).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),r.append("marker").attr("id",t+"-pointStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",0).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},ft=(r,t)=>{r.append("marker").attr("id",t+"-circleEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),r.append("marker").attr("id",t+"-circleStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},dt=(r,t)=>{r.append("marker").attr("id",t+"-crossEnd").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),r.append("marker").attr("id",t+"-crossStart").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},pt=(r,t)=>{r.append("defs").append("marker").attr("id",t+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},yt={extension:it,composition:nt,aggregation:lt,dependency:ct,lollipop:ht,point:ot,circle:ft,cross:dt,barb:pt},Kt=st;function bt(r,t){t&&r.attr("style",t)}function xt(r){const t=B(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),e=t.append("xhtml:div"),n=r.label,a=r.isNode?"nodeLabel":"edgeLabel";return e.html('"+n+""),bt(e,r.labelStyle),e.style("display","inline-block"),e.style("white-space","nowrap"),e.attr("xmlns","http://www.w3.org/1999/xhtml"),t.node()}const gt=(r,t,e,n)=>{let a=r||"";if(typeof a=="object"&&(a=a[0]),H(w().flowchart.htmlLabels)){a=a.replace(/\\n|\n/g,"
"),x.info("vertexText"+a);const s={isNode:n,label:j(a).replace(/fa[blrs]?:fa-[\w-]+/g,l=>``),labelStyle:t.replace("fill:","color:")};return xt(s)}else{const s=document.createElementNS("http://www.w3.org/2000/svg","text");s.setAttribute("style",t.replace("color:","fill:"));let i=[];typeof a=="string"?i=a.split(/\\n|\n|/gi):Array.isArray(a)?i=a:i=[];for(const l of i){const c=document.createElementNS("http://www.w3.org/2000/svg","tspan");c.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),c.setAttribute("dy","1em"),c.setAttribute("x","0"),e?c.setAttribute("class","title-row"):c.setAttribute("class","row"),c.textContent=l.trim(),s.appendChild(c)}return s}},R=gt,E=async(r,t,e,n)=>{let a;const s=t.useHtmlLabels||H(w().flowchart.htmlLabels);e?a=e:a="node default";const i=r.insert("g").attr("class",a).attr("id",t.domId||t.id),l=i.insert("g").attr("class","label").attr("style",t.labelStyle);let c;t.labelText===void 0?c="":c=typeof t.labelText=="string"?t.labelText:t.labelText[0];const o=l.node();let h;t.labelType==="markdown"?h=P(l,Z(j(c),w()),{useHtmlLabels:s,width:t.width||w().flowchart.wrappingWidth,classes:"markdown-node-label"}):h=o.appendChild(R(Z(j(c),w()),t.labelStyle,!1,n));let f=h.getBBox();const b=t.padding/2;if(H(w().flowchart.htmlLabels)){const d=h.children[0],p=B(h),y=d.getElementsByTagName("img");if(y){const g=c.replace(/]*>/g,"").trim()==="";await Promise.all([...y].map(u=>new Promise(I=>{function T(){if(u.style.display="flex",u.style.flexDirection="column",g){const M=w().fontSize?w().fontSize:window.getComputedStyle(document.body).fontSize,_=5;u.style.width=parseInt(M,10)*_+"px"}else u.style.width="100%";I(u)}setTimeout(()=>{u.complete&&T()}),u.addEventListener("error",T),u.addEventListener("load",T)})))}f=d.getBoundingClientRect(),p.attr("width",f.width),p.attr("height",f.height)}return s?l.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"):l.attr("transform","translate(0, "+-f.height/2+")"),t.centerLabel&&l.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"),l.insert("rect",":first-child"),{shapeSvg:i,bbox:f,halfPadding:b,label:l}},k=(r,t)=>{const e=t.node().getBBox();r.width=e.width,r.height=e.height};function N(r,t,e,n){return r.insert("polygon",":first-child").attr("points",n.map(function(a){return a.x+","+a.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-t/2+","+e/2+")")}function ut(r,t){return r.intersect(t)}function tt(r,t,e,n){var a=r.x,s=r.y,i=a-n.x,l=s-n.y,c=Math.sqrt(t*t*l*l+e*e*i*i),o=Math.abs(t*e*i/c);n.x0}function kt(r,t,e){var n=r.x,a=r.y,s=[],i=Number.POSITIVE_INFINITY,l=Number.POSITIVE_INFINITY;typeof t.forEach=="function"?t.forEach(function(p){i=Math.min(i,p.x),l=Math.min(l,p.y)}):(i=Math.min(i,t.x),l=Math.min(l,t.y));for(var c=n-r.width/2-i,o=a-r.height/2-l,h=0;h1&&s.sort(function(p,y){var g=p.x-e.x,u=p.y-e.y,I=Math.sqrt(g*g+u*u),T=y.x-e.x,M=y.y-e.y,_=Math.sqrt(T*T+M*M);return I<_?-1:I===_?0:1}),s[0]):r}const vt=(r,t)=>{var e=r.x,n=r.y,a=t.x-e,s=t.y-n,i=r.width/2,l=r.height/2,c,o;return Math.abs(s)*i>Math.abs(a)*l?(s<0&&(l=-l),c=s===0?0:l*a/s,o=l):(a<0&&(i=-i),c=i,o=a===0?0:i*s/a),{x:e+c,y:n+o}},Lt=vt,m={node:ut,circle:wt,ellipse:tt,polygon:kt,rect:Lt},St=async(r,t)=>{t.useHtmlLabels||w().flowchart.htmlLabels||(t.centerLabel=!0);const{shapeSvg:n,bbox:a,halfPadding:s}=await E(r,t,"node "+t.classes,!0);x.info("Classes = ",t.classes);const i=n.insert("rect",":first-child");return i.attr("rx",t.rx).attr("ry",t.ry).attr("x",-a.width/2-s).attr("y",-a.height/2-s).attr("width",a.width+t.padding).attr("height",a.height+t.padding),k(t,i),t.intersect=function(l){return m.rect(t,l)},n},Bt=St,q=async(r,t)=>{const{shapeSvg:e,bbox:n}=await E(r,t,void 0,!0),a=n.width+t.padding,s=n.height+t.padding,i=a+s,l=[{x:i/2,y:0},{x:i,y:-i/2},{x:i/2,y:-i},{x:0,y:-i/2}];x.info("Question main (Circle)");const c=N(e,i,i,l);return c.attr("style",t.style),k(t,c),t.intersect=function(o){return x.warn("Intersect called"),m.polygon(t,l,o)},e},Et=(r,t)=>{const e=r.insert("g").attr("class","node default").attr("id",t.domId||t.id),n=28,a=[{x:0,y:n/2},{x:n/2,y:0},{x:0,y:-n/2},{x:-n/2,y:0}];return e.insert("polygon",":first-child").attr("points",a.map(function(i){return i.x+","+i.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),t.width=28,t.height=28,t.intersect=function(i){return m.circle(t,14,i)},e},Mt=async(r,t)=>{const{shapeSvg:e,bbox:n}=await E(r,t,void 0,!0),a=4,s=n.height+t.padding,i=s/a,l=n.width+2*i+t.padding,c=[{x:i,y:0},{x:l-i,y:0},{x:l,y:-s/2},{x:l-i,y:-s},{x:i,y:-s},{x:0,y:-s/2}],o=N(e,l,s,c);return o.attr("style",t.style),k(t,o),t.intersect=function(h){return m.polygon(t,c,h)},e},Ct=async(r,t)=>{const{shapeSvg:e,bbox:n}=await E(r,t,void 0,!0),a=n.width+t.padding,s=n.height+t.padding,i=[{x:-s/2,y:0},{x:a,y:0},{x:a,y:-s},{x:-s/2,y:-s},{x:0,y:-s/2}];return N(e,a,s,i).attr("style",t.style),t.width=a+s,t.height=s,t.intersect=function(c){return m.polygon(t,i,c)},e},Tt=async(r,t)=>{const{shapeSvg:e,bbox:n}=await E(r,t,void 0,!0),a=n.width+t.padding,s=n.height+t.padding,i=[{x:-2*s/6,y:0},{x:a-s/6,y:0},{x:a+2*s/6,y:-s},{x:s/6,y:-s}],l=N(e,a,s,i);return l.attr("style",t.style),k(t,l),t.intersect=function(c){return m.polygon(t,i,c)},e},Rt=async(r,t)=>{const{shapeSvg:e,bbox:n}=await E(r,t,void 0,!0),a=n.width+t.padding,s=n.height+t.padding,i=[{x:2*s/6,y:0},{x:a+s/6,y:0},{x:a-2*s/6,y:-s},{x:-s/6,y:-s}],l=N(e,a,s,i);return l.attr("style",t.style),k(t,l),t.intersect=function(c){return m.polygon(t,i,c)},e},It=async(r,t)=>{const{shapeSvg:e,bbox:n}=await E(r,t,void 0,!0),a=n.width+t.padding,s=n.height+t.padding,i=[{x:-2*s/6,y:0},{x:a+2*s/6,y:0},{x:a-s/6,y:-s},{x:s/6,y:-s}],l=N(e,a,s,i);return l.attr("style",t.style),k(t,l),t.intersect=function(c){return m.polygon(t,i,c)},e},Ht=async(r,t)=>{const{shapeSvg:e,bbox:n}=await E(r,t,void 0,!0),a=n.width+t.padding,s=n.height+t.padding,i=[{x:s/6,y:0},{x:a-s/6,y:0},{x:a+2*s/6,y:-s},{x:-2*s/6,y:-s}],l=N(e,a,s,i);return l.attr("style",t.style),k(t,l),t.intersect=function(c){return m.polygon(t,i,c)},e},$t=async(r,t)=>{const{shapeSvg:e,bbox:n}=await E(r,t,void 0,!0),a=n.width+t.padding,s=n.height+t.padding,i=[{x:0,y:0},{x:a+s/2,y:0},{x:a,y:-s/2},{x:a+s/2,y:-s},{x:0,y:-s}],l=N(e,a,s,i);return l.attr("style",t.style),k(t,l),t.intersect=function(c){return m.polygon(t,i,c)},e},Nt=async(r,t)=>{const{shapeSvg:e,bbox:n}=await E(r,t,void 0,!0),a=n.width+t.padding,s=a/2,i=s/(2.5+a/50),l=n.height+i+t.padding,c="M 0,"+i+" a "+s+","+i+" 0,0,0 "+a+" 0 a "+s+","+i+" 0,0,0 "+-a+" 0 l 0,"+l+" a "+s+","+i+" 0,0,0 "+a+" 0 l 0,"+-l,o=e.attr("label-offset-y",i).insert("path",":first-child").attr("style",t.style).attr("d",c).attr("transform","translate("+-a/2+","+-(l/2+i)+")");return k(t,o),t.intersect=function(h){const f=m.rect(t,h),b=f.x-t.x;if(s!=0&&(Math.abs(b)t.height/2-i)){let d=i*i*(1-b*b/(s*s));d!=0&&(d=Math.sqrt(d)),d=i-d,h.y-t.y>0&&(d=-d),f.y+=d}return f},e},_t=async(r,t)=>{const{shapeSvg:e,bbox:n,halfPadding:a}=await E(r,t,"node "+t.classes,!0),s=e.insert("rect",":first-child"),i=n.width+t.padding,l=n.height+t.padding;if(s.attr("class","basic label-container").attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",-n.width/2-a).attr("y",-n.height/2-a).attr("width",i).attr("height",l),t.props){const c=new Set(Object.keys(t.props));t.props.borders&&(rt(s,t.props.borders,i,l),c.delete("borders")),c.forEach(o=>{x.warn(`Unknown node property ${o}`)})}return k(t,s),t.intersect=function(c){return m.rect(t,c)},e},Wt=async(r,t)=>{const{shapeSvg:e}=await E(r,t,"label",!0);x.trace("Classes = ",t.classes);const n=e.insert("rect",":first-child"),a=0,s=0;if(n.attr("width",a).attr("height",s),e.attr("class","label edgeLabel"),t.props){const i=new Set(Object.keys(t.props));t.props.borders&&(rt(n,t.props.borders,a,s),i.delete("borders")),i.forEach(l=>{x.warn(`Unknown node property ${l}`)})}return k(t,n),t.intersect=function(i){return m.rect(t,i)},e};function rt(r,t,e,n){const a=[],s=l=>{a.push(l,0)},i=l=>{a.push(0,l)};t.includes("t")?(x.debug("add top border"),s(e)):i(e),t.includes("r")?(x.debug("add right border"),s(n)):i(n),t.includes("b")?(x.debug("add bottom border"),s(e)):i(e),t.includes("l")?(x.debug("add left border"),s(n)):i(n),r.attr("stroke-dasharray",a.join(" "))}const Xt=(r,t)=>{let e;t.classes?e="node "+t.classes:e="node default";const n=r.insert("g").attr("class",e).attr("id",t.domId||t.id),a=n.insert("rect",":first-child"),s=n.insert("line"),i=n.insert("g").attr("class","label"),l=t.labelText.flat?t.labelText.flat():t.labelText;let c="";typeof l=="object"?c=l[0]:c=l,x.info("Label text abc79",c,l,typeof l=="object");const o=i.node().appendChild(R(c,t.labelStyle,!0,!0));let h={width:0,height:0};if(H(w().flowchart.htmlLabels)){const y=o.children[0],g=B(o);h=y.getBoundingClientRect(),g.attr("width",h.width),g.attr("height",h.height)}x.info("Text 2",l);const f=l.slice(1,l.length);let b=o.getBBox();const d=i.node().appendChild(R(f.join?f.join("
"):f,t.labelStyle,!0,!0));if(H(w().flowchart.htmlLabels)){const y=d.children[0],g=B(d);h=y.getBoundingClientRect(),g.attr("width",h.width),g.attr("height",h.height)}const p=t.padding/2;return B(d).attr("transform","translate( "+(h.width>b.width?0:(b.width-h.width)/2)+", "+(b.height+p+5)+")"),B(o).attr("transform","translate( "+(h.width{const{shapeSvg:e,bbox:n}=await E(r,t,void 0,!0),a=n.height+t.padding,s=n.width+a/4+t.padding,i=e.insert("rect",":first-child").attr("style",t.style).attr("rx",a/2).attr("ry",a/2).attr("x",-s/2).attr("y",-a/2).attr("width",s).attr("height",a);return k(t,i),t.intersect=function(l){return m.rect(t,l)},e},Ut=async(r,t)=>{const{shapeSvg:e,bbox:n,halfPadding:a}=await E(r,t,void 0,!0),s=e.insert("circle",":first-child");return s.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",n.width/2+a).attr("width",n.width+t.padding).attr("height",n.height+t.padding),x.info("Circle main"),k(t,s),t.intersect=function(i){return x.info("Circle intersect",t,n.width/2+a,i),m.circle(t,n.width/2+a,i)},e},At=async(r,t)=>{const{shapeSvg:e,bbox:n,halfPadding:a}=await E(r,t,void 0,!0),s=5,i=e.insert("g",":first-child"),l=i.insert("circle"),c=i.insert("circle");return i.attr("class",t.class),l.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",n.width/2+a+s).attr("width",n.width+t.padding+s*2).attr("height",n.height+t.padding+s*2),c.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",n.width/2+a).attr("width",n.width+t.padding).attr("height",n.height+t.padding),x.info("DoubleCircle main"),k(t,l),t.intersect=function(o){return x.info("DoubleCircle intersect",t,n.width/2+a+s,o),m.circle(t,n.width/2+a+s,o)},e},Dt=async(r,t)=>{const{shapeSvg:e,bbox:n}=await E(r,t,void 0,!0),a=n.width+t.padding,s=n.height+t.padding,i=[{x:0,y:0},{x:a,y:0},{x:a,y:-s},{x:0,y:-s},{x:0,y:0},{x:-8,y:0},{x:a+8,y:0},{x:a+8,y:-s},{x:-8,y:-s},{x:-8,y:0}],l=N(e,a,s,i);return l.attr("style",t.style),k(t,l),t.intersect=function(c){return m.polygon(t,i,c)},e},Ot=(r,t)=>{const e=r.insert("g").attr("class","node default").attr("id",t.domId||t.id),n=e.insert("circle",":first-child");return n.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),k(t,n),t.intersect=function(a){return m.circle(t,7,a)},e},J=(r,t,e)=>{const n=r.insert("g").attr("class","node default").attr("id",t.domId||t.id);let a=70,s=10;e==="LR"&&(a=10,s=70);const i=n.append("rect").attr("x",-1*a/2).attr("y",-1*s/2).attr("width",a).attr("height",s).attr("class","fork-join");return k(t,i),t.height=t.height+t.padding/2,t.width=t.width+t.padding/2,t.intersect=function(l){return m.rect(t,l)},n},jt=(r,t)=>{const e=r.insert("g").attr("class","node default").attr("id",t.domId||t.id),n=e.insert("circle",":first-child"),a=e.insert("circle",":first-child");return a.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),n.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),k(t,a),t.intersect=function(s){return m.circle(t,7,s)},e},zt=(r,t)=>{const e=t.padding/2,n=4,a=8;let s;t.classes?s="node "+t.classes:s="node default";const i=r.insert("g").attr("class",s).attr("id",t.domId||t.id),l=i.insert("rect",":first-child"),c=i.insert("line"),o=i.insert("line");let h=0,f=n;const b=i.insert("g").attr("class","label");let d=0;const p=t.classData.annotations&&t.classData.annotations[0],y=t.classData.annotations[0]?"ยซ"+t.classData.annotations[0]+"ยป":"",g=b.node().appendChild(R(y,t.labelStyle,!0,!0));let u=g.getBBox();if(H(w().flowchart.htmlLabels)){const v=g.children[0],L=B(g);u=v.getBoundingClientRect(),L.attr("width",u.width),L.attr("height",u.height)}t.classData.annotations[0]&&(f+=u.height+n,h+=u.width);let I=t.classData.label;t.classData.type!==void 0&&t.classData.type!==""&&(w().flowchart.htmlLabels?I+="<"+t.classData.type+">":I+="<"+t.classData.type+">");const T=b.node().appendChild(R(I,t.labelStyle,!0,!0));B(T).attr("class","classTitle");let M=T.getBBox();if(H(w().flowchart.htmlLabels)){const v=T.children[0],L=B(T);M=v.getBoundingClientRect(),L.attr("width",M.width),L.attr("height",M.height)}f+=M.height+n,M.width>h&&(h=M.width);const _=[];t.classData.members.forEach(v=>{const L=Q(v);let W=L.displayText;w().flowchart.htmlLabels&&(W=W.replace(//g,">"));const $=b.node().appendChild(R(W,L.cssStyle?L.cssStyle:t.labelStyle,!0,!0));let C=$.getBBox();if(H(w().flowchart.htmlLabels)){const O=$.children[0],Y=B($);C=O.getBoundingClientRect(),Y.attr("width",C.width),Y.attr("height",C.height)}C.width>h&&(h=C.width),f+=C.height+n,_.push($)}),f+=a;const z=[];if(t.classData.methods.forEach(v=>{const L=Q(v);let W=L.displayText;w().flowchart.htmlLabels&&(W=W.replace(//g,">"));const $=b.node().appendChild(R(W,L.cssStyle?L.cssStyle:t.labelStyle,!0,!0));let C=$.getBBox();if(H(w().flowchart.htmlLabels)){const O=$.children[0],Y=B($);C=O.getBoundingClientRect(),Y.attr("width",C.width),Y.attr("height",C.height)}C.width>h&&(h=C.width),f+=C.height+n,z.push($)}),f+=a,p){let v=(h-u.width)/2;B(g).attr("transform","translate( "+(-1*h/2+v)+", "+-1*f/2+")"),d=u.height+n}let at=(h-M.width)/2;return B(T).attr("transform","translate( "+(-1*h/2+at)+", "+(-1*f/2+d)+")"),d+=M.height+n,c.attr("class","divider").attr("x1",-h/2-e).attr("x2",h/2+e).attr("y1",-f/2-e+a+d).attr("y2",-f/2-e+a+d),d+=a,_.forEach(v=>{B(v).attr("transform","translate( "+-h/2+", "+(-1*f/2+d+a/2)+")");const L=v==null?void 0:v.getBBox();d+=((L==null?void 0:L.height)??0)+n}),d+=a,o.attr("class","divider").attr("x1",-h/2-e).attr("x2",h/2+e).attr("y1",-f/2-e+a+d).attr("y2",-f/2-e+a+d),d+=a,z.forEach(v=>{B(v).attr("transform","translate( "+-h/2+", "+(-1*f/2+d)+")");const L=v==null?void 0:v.getBBox();d+=((L==null?void 0:L.height)??0)+n}),l.attr("class","outer title-state").attr("x",-h/2-e).attr("y",-(f/2)-e).attr("width",h+t.padding).attr("height",f+t.padding),k(t,l),t.intersect=function(v){return m.rect(t,v)},i},K={rhombus:q,question:q,rect:_t,labelRect:Wt,rectWithTitle:Xt,choice:Et,circle:Ut,doublecircle:At,stadium:Yt,hexagon:Mt,rect_left_inv_arrow:Ct,lean_right:Tt,lean_left:Rt,trapezoid:It,inv_trapezoid:Ht,rect_right_inv_arrow:$t,cylinder:Nt,start:Ot,end:jt,note:Bt,subroutine:Dt,fork:J,join:J,class_box:zt};let X={};const Gt=async(r,t,e)=>{let n,a;if(t.link){let s;w().securityLevel==="sandbox"?s="_top":t.linkTarget&&(s=t.linkTarget||"_blank"),n=r.insert("svg:a").attr("xlink:href",t.link).attr("target",s),a=await K[t.shape](n,t,e)}else a=await K[t.shape](r,t,e),n=a;return t.tooltip&&a.attr("title",t.tooltip),t.class&&a.attr("class","node default "+t.class),X[t.id]=n,t.haveCallback&&X[t.id].attr("class",X[t.id].attr("class")+" clickable"),n},Pt=(r,t)=>{X[t.id]=r},tr=()=>{X={}},rr=r=>{const t=X[r.id];x.trace("Transforming node",r.diff,r,"translate("+(r.x-r.width/2-5)+", "+r.width/2+")");const e=8,n=r.diff||0;return r.clusterNode?t.attr("transform","translate("+(r.x+n-r.width/2)+", "+(r.y-r.height/2-e)+")"):t.attr("transform","translate("+r.x+", "+r.y+")"),n};let D={},S={};const ar=()=>{D={},S={}},er=(r,t)=>{const e=H(w().flowchart.htmlLabels),n=t.labelType==="markdown"?P(r,t.label,{style:t.labelStyle,useHtmlLabels:e,addSvgBackground:!0}):R(t.label,t.labelStyle);x.info("abc82",t,t.labelType);const a=r.insert("g").attr("class","edgeLabel"),s=a.insert("g").attr("class","label");s.node().appendChild(n);let i=n.getBBox();if(e){const c=n.children[0],o=B(n);i=c.getBoundingClientRect(),o.attr("width",i.width),o.attr("height",i.height)}s.attr("transform","translate("+-i.width/2+", "+-i.height/2+")"),D[t.id]=a,t.width=i.width,t.height=i.height;let l;if(t.startLabelLeft){const c=R(t.startLabelLeft,t.labelStyle),o=r.insert("g").attr("class","edgeTerminals"),h=o.insert("g").attr("class","inner");l=h.node().appendChild(c);const f=c.getBBox();h.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"),S[t.id]||(S[t.id]={}),S[t.id].startLeft=o,A(l,t.startLabelLeft)}if(t.startLabelRight){const c=R(t.startLabelRight,t.labelStyle),o=r.insert("g").attr("class","edgeTerminals"),h=o.insert("g").attr("class","inner");l=o.node().appendChild(c),h.node().appendChild(c);const f=c.getBBox();h.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"),S[t.id]||(S[t.id]={}),S[t.id].startRight=o,A(l,t.startLabelRight)}if(t.endLabelLeft){const c=R(t.endLabelLeft,t.labelStyle),o=r.insert("g").attr("class","edgeTerminals"),h=o.insert("g").attr("class","inner");l=h.node().appendChild(c);const f=c.getBBox();h.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"),o.node().appendChild(c),S[t.id]||(S[t.id]={}),S[t.id].endLeft=o,A(l,t.endLabelLeft)}if(t.endLabelRight){const c=R(t.endLabelRight,t.labelStyle),o=r.insert("g").attr("class","edgeTerminals"),h=o.insert("g").attr("class","inner");l=h.node().appendChild(c);const f=c.getBBox();h.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"),o.node().appendChild(c),S[t.id]||(S[t.id]={}),S[t.id].endRight=o,A(l,t.endLabelRight)}return n};function A(r,t){w().flowchart.htmlLabels&&r&&(r.style.width=t.length*9+"px",r.style.height="12px")}const sr=(r,t)=>{x.info("Moving label abc78 ",r.id,r.label,D[r.id]);let e=t.updatedPath?t.updatedPath:t.originalPath;if(r.label){const n=D[r.id];let a=r.x,s=r.y;if(e){const i=U.calcLabelPosition(e);x.info("Moving label "+r.label+" from (",a,",",s,") to (",i.x,",",i.y,") abc78"),t.updatedPath&&(a=i.x,s=i.y)}n.attr("transform","translate("+a+", "+s+")")}if(r.startLabelLeft){const n=S[r.id].startLeft;let a=r.x,s=r.y;if(e){const i=U.calcTerminalLabelPosition(r.arrowTypeStart?10:0,"start_left",e);a=i.x,s=i.y}n.attr("transform","translate("+a+", "+s+")")}if(r.startLabelRight){const n=S[r.id].startRight;let a=r.x,s=r.y;if(e){const i=U.calcTerminalLabelPosition(r.arrowTypeStart?10:0,"start_right",e);a=i.x,s=i.y}n.attr("transform","translate("+a+", "+s+")")}if(r.endLabelLeft){const n=S[r.id].endLeft;let a=r.x,s=r.y;if(e){const i=U.calcTerminalLabelPosition(r.arrowTypeEnd?10:0,"end_left",e);a=i.x,s=i.y}n.attr("transform","translate("+a+", "+s+")")}if(r.endLabelRight){const n=S[r.id].endRight;let a=r.x,s=r.y;if(e){const i=U.calcTerminalLabelPosition(r.arrowTypeEnd?10:0,"end_right",e);a=i.x,s=i.y}n.attr("transform","translate("+a+", "+s+")")}},Zt=(r,t)=>{const e=r.x,n=r.y,a=Math.abs(t.x-e),s=Math.abs(t.y-n),i=r.width/2,l=r.height/2;return a>=i||s>=l},Ft=(r,t,e)=>{x.warn(`intersection calc abc89: +import{q as H,c as w,d as Z,a4 as j,h as B,l as x,y as U,a5 as F}from"../app.3c4fe3d0.js";import{c as P}from"./createText-285e50b4.661aa36f.js";import{p as Q}from"./svgDraw-5d8a058e.38485a41.js";import{l as et}from"./line.809d7f74.js";const st=(r,t,e,n)=>{t.forEach(a=>{yt[a](r,e,n)})},it=(r,t,e)=>{x.trace("Making markers for ",e),r.append("defs").append("marker").attr("id",t+"-extensionStart").attr("class","marker extension "+t).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),r.append("defs").append("marker").attr("id",t+"-extensionEnd").attr("class","marker extension "+t).attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},nt=(r,t)=>{r.append("defs").append("marker").attr("id",t+"-compositionStart").attr("class","marker composition "+t).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",t+"-compositionEnd").attr("class","marker composition "+t).attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},lt=(r,t)=>{r.append("defs").append("marker").attr("id",t+"-aggregationStart").attr("class","marker aggregation "+t).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",t+"-aggregationEnd").attr("class","marker aggregation "+t).attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},ct=(r,t)=>{r.append("defs").append("marker").attr("id",t+"-dependencyStart").attr("class","marker dependency "+t).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",t+"-dependencyEnd").attr("class","marker dependency "+t).attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},ht=(r,t)=>{r.append("defs").append("marker").attr("id",t+"-lollipopStart").attr("class","marker lollipop "+t).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","white").attr("cx",6).attr("cy",7).attr("r",6)},ot=(r,t)=>{r.append("marker").attr("id",t+"-pointEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",10).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),r.append("marker").attr("id",t+"-pointStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",0).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},ft=(r,t)=>{r.append("marker").attr("id",t+"-circleEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),r.append("marker").attr("id",t+"-circleStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},dt=(r,t)=>{r.append("marker").attr("id",t+"-crossEnd").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),r.append("marker").attr("id",t+"-crossStart").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},pt=(r,t)=>{r.append("defs").append("marker").attr("id",t+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},yt={extension:it,composition:nt,aggregation:lt,dependency:ct,lollipop:ht,point:ot,circle:ft,cross:dt,barb:pt},Kt=st;function bt(r,t){t&&r.attr("style",t)}function xt(r){const t=B(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),e=t.append("xhtml:div"),n=r.label,a=r.isNode?"nodeLabel":"edgeLabel";return e.html('"+n+""),bt(e,r.labelStyle),e.style("display","inline-block"),e.style("white-space","nowrap"),e.attr("xmlns","http://www.w3.org/1999/xhtml"),t.node()}const gt=(r,t,e,n)=>{let a=r||"";if(typeof a=="object"&&(a=a[0]),H(w().flowchart.htmlLabels)){a=a.replace(/\\n|\n/g,"
"),x.info("vertexText"+a);const s={isNode:n,label:j(a).replace(/fa[blrs]?:fa-[\w-]+/g,l=>``),labelStyle:t.replace("fill:","color:")};return xt(s)}else{const s=document.createElementNS("http://www.w3.org/2000/svg","text");s.setAttribute("style",t.replace("color:","fill:"));let i=[];typeof a=="string"?i=a.split(/\\n|\n|/gi):Array.isArray(a)?i=a:i=[];for(const l of i){const c=document.createElementNS("http://www.w3.org/2000/svg","tspan");c.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),c.setAttribute("dy","1em"),c.setAttribute("x","0"),e?c.setAttribute("class","title-row"):c.setAttribute("class","row"),c.textContent=l.trim(),s.appendChild(c)}return s}},R=gt,E=async(r,t,e,n)=>{let a;const s=t.useHtmlLabels||H(w().flowchart.htmlLabels);e?a=e:a="node default";const i=r.insert("g").attr("class",a).attr("id",t.domId||t.id),l=i.insert("g").attr("class","label").attr("style",t.labelStyle);let c;t.labelText===void 0?c="":c=typeof t.labelText=="string"?t.labelText:t.labelText[0];const o=l.node();let h;t.labelType==="markdown"?h=P(l,Z(j(c),w()),{useHtmlLabels:s,width:t.width||w().flowchart.wrappingWidth,classes:"markdown-node-label"}):h=o.appendChild(R(Z(j(c),w()),t.labelStyle,!1,n));let f=h.getBBox();const b=t.padding/2;if(H(w().flowchart.htmlLabels)){const d=h.children[0],p=B(h),y=d.getElementsByTagName("img");if(y){const g=c.replace(/]*>/g,"").trim()==="";await Promise.all([...y].map(u=>new Promise(I=>{function T(){if(u.style.display="flex",u.style.flexDirection="column",g){const M=w().fontSize?w().fontSize:window.getComputedStyle(document.body).fontSize,_=5;u.style.width=parseInt(M,10)*_+"px"}else u.style.width="100%";I(u)}setTimeout(()=>{u.complete&&T()}),u.addEventListener("error",T),u.addEventListener("load",T)})))}f=d.getBoundingClientRect(),p.attr("width",f.width),p.attr("height",f.height)}return s?l.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"):l.attr("transform","translate(0, "+-f.height/2+")"),t.centerLabel&&l.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"),l.insert("rect",":first-child"),{shapeSvg:i,bbox:f,halfPadding:b,label:l}},k=(r,t)=>{const e=t.node().getBBox();r.width=e.width,r.height=e.height};function N(r,t,e,n){return r.insert("polygon",":first-child").attr("points",n.map(function(a){return a.x+","+a.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-t/2+","+e/2+")")}function ut(r,t){return r.intersect(t)}function tt(r,t,e,n){var a=r.x,s=r.y,i=a-n.x,l=s-n.y,c=Math.sqrt(t*t*l*l+e*e*i*i),o=Math.abs(t*e*i/c);n.x0}function kt(r,t,e){var n=r.x,a=r.y,s=[],i=Number.POSITIVE_INFINITY,l=Number.POSITIVE_INFINITY;typeof t.forEach=="function"?t.forEach(function(p){i=Math.min(i,p.x),l=Math.min(l,p.y)}):(i=Math.min(i,t.x),l=Math.min(l,t.y));for(var c=n-r.width/2-i,o=a-r.height/2-l,h=0;h1&&s.sort(function(p,y){var g=p.x-e.x,u=p.y-e.y,I=Math.sqrt(g*g+u*u),T=y.x-e.x,M=y.y-e.y,_=Math.sqrt(T*T+M*M);return I<_?-1:I===_?0:1}),s[0]):r}const vt=(r,t)=>{var e=r.x,n=r.y,a=t.x-e,s=t.y-n,i=r.width/2,l=r.height/2,c,o;return Math.abs(s)*i>Math.abs(a)*l?(s<0&&(l=-l),c=s===0?0:l*a/s,o=l):(a<0&&(i=-i),c=i,o=a===0?0:i*s/a),{x:e+c,y:n+o}},Lt=vt,m={node:ut,circle:wt,ellipse:tt,polygon:kt,rect:Lt},St=async(r,t)=>{t.useHtmlLabels||w().flowchart.htmlLabels||(t.centerLabel=!0);const{shapeSvg:n,bbox:a,halfPadding:s}=await E(r,t,"node "+t.classes,!0);x.info("Classes = ",t.classes);const i=n.insert("rect",":first-child");return i.attr("rx",t.rx).attr("ry",t.ry).attr("x",-a.width/2-s).attr("y",-a.height/2-s).attr("width",a.width+t.padding).attr("height",a.height+t.padding),k(t,i),t.intersect=function(l){return m.rect(t,l)},n},Bt=St,q=async(r,t)=>{const{shapeSvg:e,bbox:n}=await E(r,t,void 0,!0),a=n.width+t.padding,s=n.height+t.padding,i=a+s,l=[{x:i/2,y:0},{x:i,y:-i/2},{x:i/2,y:-i},{x:0,y:-i/2}];x.info("Question main (Circle)");const c=N(e,i,i,l);return c.attr("style",t.style),k(t,c),t.intersect=function(o){return x.warn("Intersect called"),m.polygon(t,l,o)},e},Et=(r,t)=>{const e=r.insert("g").attr("class","node default").attr("id",t.domId||t.id),n=28,a=[{x:0,y:n/2},{x:n/2,y:0},{x:0,y:-n/2},{x:-n/2,y:0}];return e.insert("polygon",":first-child").attr("points",a.map(function(i){return i.x+","+i.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),t.width=28,t.height=28,t.intersect=function(i){return m.circle(t,14,i)},e},Mt=async(r,t)=>{const{shapeSvg:e,bbox:n}=await E(r,t,void 0,!0),a=4,s=n.height+t.padding,i=s/a,l=n.width+2*i+t.padding,c=[{x:i,y:0},{x:l-i,y:0},{x:l,y:-s/2},{x:l-i,y:-s},{x:i,y:-s},{x:0,y:-s/2}],o=N(e,l,s,c);return o.attr("style",t.style),k(t,o),t.intersect=function(h){return m.polygon(t,c,h)},e},Ct=async(r,t)=>{const{shapeSvg:e,bbox:n}=await E(r,t,void 0,!0),a=n.width+t.padding,s=n.height+t.padding,i=[{x:-s/2,y:0},{x:a,y:0},{x:a,y:-s},{x:-s/2,y:-s},{x:0,y:-s/2}];return N(e,a,s,i).attr("style",t.style),t.width=a+s,t.height=s,t.intersect=function(c){return m.polygon(t,i,c)},e},Tt=async(r,t)=>{const{shapeSvg:e,bbox:n}=await E(r,t,void 0,!0),a=n.width+t.padding,s=n.height+t.padding,i=[{x:-2*s/6,y:0},{x:a-s/6,y:0},{x:a+2*s/6,y:-s},{x:s/6,y:-s}],l=N(e,a,s,i);return l.attr("style",t.style),k(t,l),t.intersect=function(c){return m.polygon(t,i,c)},e},Rt=async(r,t)=>{const{shapeSvg:e,bbox:n}=await E(r,t,void 0,!0),a=n.width+t.padding,s=n.height+t.padding,i=[{x:2*s/6,y:0},{x:a+s/6,y:0},{x:a-2*s/6,y:-s},{x:-s/6,y:-s}],l=N(e,a,s,i);return l.attr("style",t.style),k(t,l),t.intersect=function(c){return m.polygon(t,i,c)},e},It=async(r,t)=>{const{shapeSvg:e,bbox:n}=await E(r,t,void 0,!0),a=n.width+t.padding,s=n.height+t.padding,i=[{x:-2*s/6,y:0},{x:a+2*s/6,y:0},{x:a-s/6,y:-s},{x:s/6,y:-s}],l=N(e,a,s,i);return l.attr("style",t.style),k(t,l),t.intersect=function(c){return m.polygon(t,i,c)},e},Ht=async(r,t)=>{const{shapeSvg:e,bbox:n}=await E(r,t,void 0,!0),a=n.width+t.padding,s=n.height+t.padding,i=[{x:s/6,y:0},{x:a-s/6,y:0},{x:a+2*s/6,y:-s},{x:-2*s/6,y:-s}],l=N(e,a,s,i);return l.attr("style",t.style),k(t,l),t.intersect=function(c){return m.polygon(t,i,c)},e},$t=async(r,t)=>{const{shapeSvg:e,bbox:n}=await E(r,t,void 0,!0),a=n.width+t.padding,s=n.height+t.padding,i=[{x:0,y:0},{x:a+s/2,y:0},{x:a,y:-s/2},{x:a+s/2,y:-s},{x:0,y:-s}],l=N(e,a,s,i);return l.attr("style",t.style),k(t,l),t.intersect=function(c){return m.polygon(t,i,c)},e},Nt=async(r,t)=>{const{shapeSvg:e,bbox:n}=await E(r,t,void 0,!0),a=n.width+t.padding,s=a/2,i=s/(2.5+a/50),l=n.height+i+t.padding,c="M 0,"+i+" a "+s+","+i+" 0,0,0 "+a+" 0 a "+s+","+i+" 0,0,0 "+-a+" 0 l 0,"+l+" a "+s+","+i+" 0,0,0 "+a+" 0 l 0,"+-l,o=e.attr("label-offset-y",i).insert("path",":first-child").attr("style",t.style).attr("d",c).attr("transform","translate("+-a/2+","+-(l/2+i)+")");return k(t,o),t.intersect=function(h){const f=m.rect(t,h),b=f.x-t.x;if(s!=0&&(Math.abs(b)t.height/2-i)){let d=i*i*(1-b*b/(s*s));d!=0&&(d=Math.sqrt(d)),d=i-d,h.y-t.y>0&&(d=-d),f.y+=d}return f},e},_t=async(r,t)=>{const{shapeSvg:e,bbox:n,halfPadding:a}=await E(r,t,"node "+t.classes,!0),s=e.insert("rect",":first-child"),i=n.width+t.padding,l=n.height+t.padding;if(s.attr("class","basic label-container").attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",-n.width/2-a).attr("y",-n.height/2-a).attr("width",i).attr("height",l),t.props){const c=new Set(Object.keys(t.props));t.props.borders&&(rt(s,t.props.borders,i,l),c.delete("borders")),c.forEach(o=>{x.warn(`Unknown node property ${o}`)})}return k(t,s),t.intersect=function(c){return m.rect(t,c)},e},Wt=async(r,t)=>{const{shapeSvg:e}=await E(r,t,"label",!0);x.trace("Classes = ",t.classes);const n=e.insert("rect",":first-child"),a=0,s=0;if(n.attr("width",a).attr("height",s),e.attr("class","label edgeLabel"),t.props){const i=new Set(Object.keys(t.props));t.props.borders&&(rt(n,t.props.borders,a,s),i.delete("borders")),i.forEach(l=>{x.warn(`Unknown node property ${l}`)})}return k(t,n),t.intersect=function(i){return m.rect(t,i)},e};function rt(r,t,e,n){const a=[],s=l=>{a.push(l,0)},i=l=>{a.push(0,l)};t.includes("t")?(x.debug("add top border"),s(e)):i(e),t.includes("r")?(x.debug("add right border"),s(n)):i(n),t.includes("b")?(x.debug("add bottom border"),s(e)):i(e),t.includes("l")?(x.debug("add left border"),s(n)):i(n),r.attr("stroke-dasharray",a.join(" "))}const Xt=(r,t)=>{let e;t.classes?e="node "+t.classes:e="node default";const n=r.insert("g").attr("class",e).attr("id",t.domId||t.id),a=n.insert("rect",":first-child"),s=n.insert("line"),i=n.insert("g").attr("class","label"),l=t.labelText.flat?t.labelText.flat():t.labelText;let c="";typeof l=="object"?c=l[0]:c=l,x.info("Label text abc79",c,l,typeof l=="object");const o=i.node().appendChild(R(c,t.labelStyle,!0,!0));let h={width:0,height:0};if(H(w().flowchart.htmlLabels)){const y=o.children[0],g=B(o);h=y.getBoundingClientRect(),g.attr("width",h.width),g.attr("height",h.height)}x.info("Text 2",l);const f=l.slice(1,l.length);let b=o.getBBox();const d=i.node().appendChild(R(f.join?f.join("
"):f,t.labelStyle,!0,!0));if(H(w().flowchart.htmlLabels)){const y=d.children[0],g=B(d);h=y.getBoundingClientRect(),g.attr("width",h.width),g.attr("height",h.height)}const p=t.padding/2;return B(d).attr("transform","translate( "+(h.width>b.width?0:(b.width-h.width)/2)+", "+(b.height+p+5)+")"),B(o).attr("transform","translate( "+(h.width{const{shapeSvg:e,bbox:n}=await E(r,t,void 0,!0),a=n.height+t.padding,s=n.width+a/4+t.padding,i=e.insert("rect",":first-child").attr("style",t.style).attr("rx",a/2).attr("ry",a/2).attr("x",-s/2).attr("y",-a/2).attr("width",s).attr("height",a);return k(t,i),t.intersect=function(l){return m.rect(t,l)},e},Ut=async(r,t)=>{const{shapeSvg:e,bbox:n,halfPadding:a}=await E(r,t,void 0,!0),s=e.insert("circle",":first-child");return s.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",n.width/2+a).attr("width",n.width+t.padding).attr("height",n.height+t.padding),x.info("Circle main"),k(t,s),t.intersect=function(i){return x.info("Circle intersect",t,n.width/2+a,i),m.circle(t,n.width/2+a,i)},e},At=async(r,t)=>{const{shapeSvg:e,bbox:n,halfPadding:a}=await E(r,t,void 0,!0),s=5,i=e.insert("g",":first-child"),l=i.insert("circle"),c=i.insert("circle");return i.attr("class",t.class),l.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",n.width/2+a+s).attr("width",n.width+t.padding+s*2).attr("height",n.height+t.padding+s*2),c.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",n.width/2+a).attr("width",n.width+t.padding).attr("height",n.height+t.padding),x.info("DoubleCircle main"),k(t,l),t.intersect=function(o){return x.info("DoubleCircle intersect",t,n.width/2+a+s,o),m.circle(t,n.width/2+a+s,o)},e},Dt=async(r,t)=>{const{shapeSvg:e,bbox:n}=await E(r,t,void 0,!0),a=n.width+t.padding,s=n.height+t.padding,i=[{x:0,y:0},{x:a,y:0},{x:a,y:-s},{x:0,y:-s},{x:0,y:0},{x:-8,y:0},{x:a+8,y:0},{x:a+8,y:-s},{x:-8,y:-s},{x:-8,y:0}],l=N(e,a,s,i);return l.attr("style",t.style),k(t,l),t.intersect=function(c){return m.polygon(t,i,c)},e},Ot=(r,t)=>{const e=r.insert("g").attr("class","node default").attr("id",t.domId||t.id),n=e.insert("circle",":first-child");return n.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),k(t,n),t.intersect=function(a){return m.circle(t,7,a)},e},J=(r,t,e)=>{const n=r.insert("g").attr("class","node default").attr("id",t.domId||t.id);let a=70,s=10;e==="LR"&&(a=10,s=70);const i=n.append("rect").attr("x",-1*a/2).attr("y",-1*s/2).attr("width",a).attr("height",s).attr("class","fork-join");return k(t,i),t.height=t.height+t.padding/2,t.width=t.width+t.padding/2,t.intersect=function(l){return m.rect(t,l)},n},jt=(r,t)=>{const e=r.insert("g").attr("class","node default").attr("id",t.domId||t.id),n=e.insert("circle",":first-child"),a=e.insert("circle",":first-child");return a.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),n.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),k(t,a),t.intersect=function(s){return m.circle(t,7,s)},e},zt=(r,t)=>{const e=t.padding/2,n=4,a=8;let s;t.classes?s="node "+t.classes:s="node default";const i=r.insert("g").attr("class",s).attr("id",t.domId||t.id),l=i.insert("rect",":first-child"),c=i.insert("line"),o=i.insert("line");let h=0,f=n;const b=i.insert("g").attr("class","label");let d=0;const p=t.classData.annotations&&t.classData.annotations[0],y=t.classData.annotations[0]?"ยซ"+t.classData.annotations[0]+"ยป":"",g=b.node().appendChild(R(y,t.labelStyle,!0,!0));let u=g.getBBox();if(H(w().flowchart.htmlLabels)){const v=g.children[0],L=B(g);u=v.getBoundingClientRect(),L.attr("width",u.width),L.attr("height",u.height)}t.classData.annotations[0]&&(f+=u.height+n,h+=u.width);let I=t.classData.label;t.classData.type!==void 0&&t.classData.type!==""&&(w().flowchart.htmlLabels?I+="<"+t.classData.type+">":I+="<"+t.classData.type+">");const T=b.node().appendChild(R(I,t.labelStyle,!0,!0));B(T).attr("class","classTitle");let M=T.getBBox();if(H(w().flowchart.htmlLabels)){const v=T.children[0],L=B(T);M=v.getBoundingClientRect(),L.attr("width",M.width),L.attr("height",M.height)}f+=M.height+n,M.width>h&&(h=M.width);const _=[];t.classData.members.forEach(v=>{const L=Q(v);let W=L.displayText;w().flowchart.htmlLabels&&(W=W.replace(//g,">"));const $=b.node().appendChild(R(W,L.cssStyle?L.cssStyle:t.labelStyle,!0,!0));let C=$.getBBox();if(H(w().flowchart.htmlLabels)){const O=$.children[0],Y=B($);C=O.getBoundingClientRect(),Y.attr("width",C.width),Y.attr("height",C.height)}C.width>h&&(h=C.width),f+=C.height+n,_.push($)}),f+=a;const z=[];if(t.classData.methods.forEach(v=>{const L=Q(v);let W=L.displayText;w().flowchart.htmlLabels&&(W=W.replace(//g,">"));const $=b.node().appendChild(R(W,L.cssStyle?L.cssStyle:t.labelStyle,!0,!0));let C=$.getBBox();if(H(w().flowchart.htmlLabels)){const O=$.children[0],Y=B($);C=O.getBoundingClientRect(),Y.attr("width",C.width),Y.attr("height",C.height)}C.width>h&&(h=C.width),f+=C.height+n,z.push($)}),f+=a,p){let v=(h-u.width)/2;B(g).attr("transform","translate( "+(-1*h/2+v)+", "+-1*f/2+")"),d=u.height+n}let at=(h-M.width)/2;return B(T).attr("transform","translate( "+(-1*h/2+at)+", "+(-1*f/2+d)+")"),d+=M.height+n,c.attr("class","divider").attr("x1",-h/2-e).attr("x2",h/2+e).attr("y1",-f/2-e+a+d).attr("y2",-f/2-e+a+d),d+=a,_.forEach(v=>{B(v).attr("transform","translate( "+-h/2+", "+(-1*f/2+d+a/2)+")");const L=v==null?void 0:v.getBBox();d+=((L==null?void 0:L.height)??0)+n}),d+=a,o.attr("class","divider").attr("x1",-h/2-e).attr("x2",h/2+e).attr("y1",-f/2-e+a+d).attr("y2",-f/2-e+a+d),d+=a,z.forEach(v=>{B(v).attr("transform","translate( "+-h/2+", "+(-1*f/2+d)+")");const L=v==null?void 0:v.getBBox();d+=((L==null?void 0:L.height)??0)+n}),l.attr("class","outer title-state").attr("x",-h/2-e).attr("y",-(f/2)-e).attr("width",h+t.padding).attr("height",f+t.padding),k(t,l),t.intersect=function(v){return m.rect(t,v)},i},K={rhombus:q,question:q,rect:_t,labelRect:Wt,rectWithTitle:Xt,choice:Et,circle:Ut,doublecircle:At,stadium:Yt,hexagon:Mt,rect_left_inv_arrow:Ct,lean_right:Tt,lean_left:Rt,trapezoid:It,inv_trapezoid:Ht,rect_right_inv_arrow:$t,cylinder:Nt,start:Ot,end:jt,note:Bt,subroutine:Dt,fork:J,join:J,class_box:zt};let X={};const Gt=async(r,t,e)=>{let n,a;if(t.link){let s;w().securityLevel==="sandbox"?s="_top":t.linkTarget&&(s=t.linkTarget||"_blank"),n=r.insert("svg:a").attr("xlink:href",t.link).attr("target",s),a=await K[t.shape](n,t,e)}else a=await K[t.shape](r,t,e),n=a;return t.tooltip&&a.attr("title",t.tooltip),t.class&&a.attr("class","node default "+t.class),X[t.id]=n,t.haveCallback&&X[t.id].attr("class",X[t.id].attr("class")+" clickable"),n},Pt=(r,t)=>{X[t.id]=r},tr=()=>{X={}},rr=r=>{const t=X[r.id];x.trace("Transforming node",r.diff,r,"translate("+(r.x-r.width/2-5)+", "+r.width/2+")");const e=8,n=r.diff||0;return r.clusterNode?t.attr("transform","translate("+(r.x+n-r.width/2)+", "+(r.y-r.height/2-e)+")"):t.attr("transform","translate("+r.x+", "+r.y+")"),n};let D={},S={};const ar=()=>{D={},S={}},er=(r,t)=>{const e=H(w().flowchart.htmlLabels),n=t.labelType==="markdown"?P(r,t.label,{style:t.labelStyle,useHtmlLabels:e,addSvgBackground:!0}):R(t.label,t.labelStyle);x.info("abc82",t,t.labelType);const a=r.insert("g").attr("class","edgeLabel"),s=a.insert("g").attr("class","label");s.node().appendChild(n);let i=n.getBBox();if(e){const c=n.children[0],o=B(n);i=c.getBoundingClientRect(),o.attr("width",i.width),o.attr("height",i.height)}s.attr("transform","translate("+-i.width/2+", "+-i.height/2+")"),D[t.id]=a,t.width=i.width,t.height=i.height;let l;if(t.startLabelLeft){const c=R(t.startLabelLeft,t.labelStyle),o=r.insert("g").attr("class","edgeTerminals"),h=o.insert("g").attr("class","inner");l=h.node().appendChild(c);const f=c.getBBox();h.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"),S[t.id]||(S[t.id]={}),S[t.id].startLeft=o,A(l,t.startLabelLeft)}if(t.startLabelRight){const c=R(t.startLabelRight,t.labelStyle),o=r.insert("g").attr("class","edgeTerminals"),h=o.insert("g").attr("class","inner");l=o.node().appendChild(c),h.node().appendChild(c);const f=c.getBBox();h.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"),S[t.id]||(S[t.id]={}),S[t.id].startRight=o,A(l,t.startLabelRight)}if(t.endLabelLeft){const c=R(t.endLabelLeft,t.labelStyle),o=r.insert("g").attr("class","edgeTerminals"),h=o.insert("g").attr("class","inner");l=h.node().appendChild(c);const f=c.getBBox();h.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"),o.node().appendChild(c),S[t.id]||(S[t.id]={}),S[t.id].endLeft=o,A(l,t.endLabelLeft)}if(t.endLabelRight){const c=R(t.endLabelRight,t.labelStyle),o=r.insert("g").attr("class","edgeTerminals"),h=o.insert("g").attr("class","inner");l=h.node().appendChild(c);const f=c.getBBox();h.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"),o.node().appendChild(c),S[t.id]||(S[t.id]={}),S[t.id].endRight=o,A(l,t.endLabelRight)}return n};function A(r,t){w().flowchart.htmlLabels&&r&&(r.style.width=t.length*9+"px",r.style.height="12px")}const sr=(r,t)=>{x.info("Moving label abc78 ",r.id,r.label,D[r.id]);let e=t.updatedPath?t.updatedPath:t.originalPath;if(r.label){const n=D[r.id];let a=r.x,s=r.y;if(e){const i=U.calcLabelPosition(e);x.info("Moving label "+r.label+" from (",a,",",s,") to (",i.x,",",i.y,") abc78"),t.updatedPath&&(a=i.x,s=i.y)}n.attr("transform","translate("+a+", "+s+")")}if(r.startLabelLeft){const n=S[r.id].startLeft;let a=r.x,s=r.y;if(e){const i=U.calcTerminalLabelPosition(r.arrowTypeStart?10:0,"start_left",e);a=i.x,s=i.y}n.attr("transform","translate("+a+", "+s+")")}if(r.startLabelRight){const n=S[r.id].startRight;let a=r.x,s=r.y;if(e){const i=U.calcTerminalLabelPosition(r.arrowTypeStart?10:0,"start_right",e);a=i.x,s=i.y}n.attr("transform","translate("+a+", "+s+")")}if(r.endLabelLeft){const n=S[r.id].endLeft;let a=r.x,s=r.y;if(e){const i=U.calcTerminalLabelPosition(r.arrowTypeEnd?10:0,"end_left",e);a=i.x,s=i.y}n.attr("transform","translate("+a+", "+s+")")}if(r.endLabelRight){const n=S[r.id].endRight;let a=r.x,s=r.y;if(e){const i=U.calcTerminalLabelPosition(r.arrowTypeEnd?10:0,"end_right",e);a=i.x,s=i.y}n.attr("transform","translate("+a+", "+s+")")}},Zt=(r,t)=>{const e=r.x,n=r.y,a=Math.abs(t.x-e),s=Math.abs(t.y-n),i=r.width/2,l=r.height/2;return a>=i||s>=l},Ft=(r,t,e)=>{x.warn(`intersection calc abc89: outsidePoint: ${JSON.stringify(t)} insidePoint : ${JSON.stringify(e)} node : x:${r.x} y:${r.y} w:${r.width} h:${r.height}`);const n=r.x,a=r.y,s=Math.abs(n-e.x),i=r.width/2;let l=e.xMath.abs(n-t.x)*c){let f=e.y{x.warn("abc88 cutPathAtIntersect",r,t);let e=[],n=r[0],a=!1;return r.forEach(s=>{if(x.info("abc88 checking point",s,t),!Zt(t,s)&&!a){const i=Ft(t,n,s);x.warn("abc88 inside",s,n,i),x.warn("abc88 intersection",i);let l=!1;e.forEach(c=>{l=l||c.x===i.x&&c.y===i.y}),e.some(c=>c.x===i.x&&c.y===i.y)?x.warn("abc88 no intersect",i,e):e.push(i),a=!0}else x.warn("abc88 outside",s,n),n=s,a||e.push(s)}),x.warn("abc88 returning points",e),e},ir=function(r,t,e,n,a,s){let i=e.points,l=!1;const c=s.node(t.v);var o=s.node(t.w);x.info("abc88 InsertEdge: ",e),o.intersect&&c.intersect&&(i=i.slice(1,e.points.length-1),i.unshift(c.intersect(i[0])),x.info("Last point",i[i.length-1],o,o.intersect(i[i.length-1])),i.push(o.intersect(i[i.length-1]))),e.toCluster&&(x.info("to cluster abc88",n[e.toCluster]),i=G(e.points,n[e.toCluster].node),l=!0),e.fromCluster&&(x.info("from cluster abc88",n[e.fromCluster]),i=G(i.reverse(),n[e.fromCluster].node).reverse(),l=!0);const h=i.filter(u=>!Number.isNaN(u.y));let f;a==="graph"||a==="flowchart"?f=e.curve||F:f=F;const b=et().x(function(u){return u.x}).y(function(u){return u.y}).curve(f);let d;switch(e.thickness){case"normal":d="edge-thickness-normal";break;case"thick":d="edge-thickness-thick";break;case"invisible":d="edge-thickness-thick";break;default:d=""}switch(e.pattern){case"solid":d+=" edge-pattern-solid";break;case"dotted":d+=" edge-pattern-dotted";break;case"dashed":d+=" edge-pattern-dashed";break}const p=r.append("path").attr("d",b(h)).attr("id",e.id).attr("class"," "+d+(e.classes?" "+e.classes:"")).attr("style",e.style);let y="";switch((w().flowchart.arrowMarkerAbsolute||w().state.arrowMarkerAbsolute)&&(y=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,y=y.replace(/\(/g,"\\("),y=y.replace(/\)/g,"\\)")),x.info("arrowTypeStart",e.arrowTypeStart),x.info("arrowTypeEnd",e.arrowTypeEnd),e.arrowTypeStart){case"arrow_cross":p.attr("marker-start","url("+y+"#"+a+"-crossStart)");break;case"arrow_point":p.attr("marker-start","url("+y+"#"+a+"-pointStart)");break;case"arrow_barb":p.attr("marker-start","url("+y+"#"+a+"-barbStart)");break;case"arrow_circle":p.attr("marker-start","url("+y+"#"+a+"-circleStart)");break;case"aggregation":p.attr("marker-start","url("+y+"#"+a+"-aggregationStart)");break;case"extension":p.attr("marker-start","url("+y+"#"+a+"-extensionStart)");break;case"composition":p.attr("marker-start","url("+y+"#"+a+"-compositionStart)");break;case"dependency":p.attr("marker-start","url("+y+"#"+a+"-dependencyStart)");break;case"lollipop":p.attr("marker-start","url("+y+"#"+a+"-lollipopStart)");break}switch(e.arrowTypeEnd){case"arrow_cross":p.attr("marker-end","url("+y+"#"+a+"-crossEnd)");break;case"arrow_point":p.attr("marker-end","url("+y+"#"+a+"-pointEnd)");break;case"arrow_barb":p.attr("marker-end","url("+y+"#"+a+"-barbEnd)");break;case"arrow_circle":p.attr("marker-end","url("+y+"#"+a+"-circleEnd)");break;case"aggregation":p.attr("marker-end","url("+y+"#"+a+"-aggregationEnd)");break;case"extension":p.attr("marker-end","url("+y+"#"+a+"-extensionEnd)");break;case"composition":p.attr("marker-end","url("+y+"#"+a+"-compositionEnd)");break;case"dependency":p.attr("marker-end","url("+y+"#"+a+"-dependencyEnd)");break;case"lollipop":p.attr("marker-end","url("+y+"#"+a+"-lollipopEnd)");break}let g={};return l&&(g.updatedPath=i),g.originalPath=e.points,g};export{Gt as a,er as b,ir as c,sr as d,tr as e,ar as f,R as g,Lt as h,Kt as i,E as l,rr as p,Pt as s,k as u}; diff --git a/pr-383/assets/chunks/erDiagram-0ccc0425.a2587ab1.js b/pr-383/assets/chunks/erDiagram-0ccc0425.ab98041e.js similarity index 99% rename from pr-383/assets/chunks/erDiagram-0ccc0425.a2587ab1.js rename to pr-383/assets/chunks/erDiagram-0ccc0425.ab98041e.js index 3c6a16348..950662b00 100644 --- a/pr-383/assets/chunks/erDiagram-0ccc0425.a2587ab1.js +++ b/pr-383/assets/chunks/erDiagram-0ccc0425.ab98041e.js @@ -1,4 +1,4 @@ -import{c as V,s as xt,g as Rt,b as Ot,a as bt,v as Nt,x as Tt,m as At,l as et,z as Mt,h as st,y as vt,i as Dt,a5 as wt,a7 as It}from"../app.34e6398e.js";import{G as St,l as Lt}from"./layout.ca521a87.js";import{l as Bt}from"./line.075f786d.js";import"./framework.be0a7370.js";import"./theme.e11407bf.js";import"./array.9f3ba611.js";import"./path.53f90ab3.js";const Ct=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function Pt(t){return typeof t=="string"&&Ct.test(t)}const T=[];for(let t=0;t<256;++t)T.push((t+256).toString(16).slice(1));function Yt(t,r=0){return(T[t[r+0]]+T[t[r+1]]+T[t[r+2]]+T[t[r+3]]+"-"+T[t[r+4]]+T[t[r+5]]+"-"+T[t[r+6]]+T[t[r+7]]+"-"+T[t[r+8]]+T[t[r+9]]+"-"+T[t[r+10]]+T[t[r+11]]+T[t[r+12]]+T[t[r+13]]+T[t[r+14]]+T[t[r+15]]).toLowerCase()}function Zt(t){if(!Pt(t))throw TypeError("Invalid UUID");let r;const e=new Uint8Array(16);return e[0]=(r=parseInt(t.slice(0,8),16))>>>24,e[1]=r>>>16&255,e[2]=r>>>8&255,e[3]=r&255,e[4]=(r=parseInt(t.slice(9,13),16))>>>8,e[5]=r&255,e[6]=(r=parseInt(t.slice(14,18),16))>>>8,e[7]=r&255,e[8]=(r=parseInt(t.slice(19,23),16))>>>8,e[9]=r&255,e[10]=(r=parseInt(t.slice(24,36),16))/1099511627776&255,e[11]=r/4294967296&255,e[12]=r>>>24&255,e[13]=r>>>16&255,e[14]=r>>>8&255,e[15]=r&255,e}function Ft(t){t=unescape(encodeURIComponent(t));const r=[];for(let e=0;e>>32-r}function Ht(t){const r=[1518500249,1859775393,2400959708,3395469782],e=[1732584193,4023233417,2562383102,271733878,3285377520];if(typeof t=="string"){const f=unescape(encodeURIComponent(t));t=[];for(let o=0;o>>0;O=g,g=E,E=ot(_,30)>>>0,_=c,c=Y}e[0]=e[0]+c>>>0,e[1]=e[1]+_>>>0,e[2]=e[2]+E>>>0,e[3]=e[3]+g>>>0,e[4]=e[4]+O>>>0}return[e[0]>>24&255,e[0]>>16&255,e[0]>>8&255,e[0]&255,e[1]>>24&255,e[1]>>16&255,e[1]>>8&255,e[1]&255,e[2]>>24&255,e[2]>>16&255,e[2]>>8&255,e[2]&255,e[3]>>24&255,e[3]>>16&255,e[3]>>8&255,e[3]&255,e[4]>>24&255,e[4]>>16&255,e[4]>>8&255,e[4]&255]}const Gt=Ut("v5",80,Ht),Kt=Gt;var ct=function(){var t=function(M,a,l,d){for(l=l||{},d=M.length;d--;l[M[d]]=a);return l},r=[1,2],e=[1,5],n=[6,9,11,23,25,27,29,30,31,52],s=[1,17],p=[1,18],f=[1,19],o=[1,20],c=[1,21],_=[1,22],E=[1,25],g=[1,30],O=[1,31],y=[1,32],A=[1,33],Y=[1,34],U=[6,9,11,15,20,23,25,27,29,30,31,44,45,46,47,48,52],X=[1,46],I=[30,31,49,50],N=[4,6,9,11,23,25,27,29,30,31,52],v=[44,45,46,47,48],k=[22,37],x=[1,66],P=[1,65],Z=[22,37,39,41],w={trace:function(){},yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,directive:7,line:8,SPACE:9,statement:10,NEWLINE:11,openDirective:12,typeDirective:13,closeDirective:14,":":15,argDirective:16,entityName:17,relSpec:18,role:19,BLOCK_START:20,attributes:21,BLOCK_STOP:22,title:23,title_value:24,acc_title:25,acc_title_value:26,acc_descr:27,acc_descr_value:28,acc_descr_multiline_value:29,ALPHANUM:30,ENTITY_NAME:31,attribute:32,attributeType:33,attributeName:34,attributeKeyTypeList:35,attributeComment:36,ATTRIBUTE_WORD:37,attributeKeyType:38,COMMA:39,ATTRIBUTE_KEY:40,COMMENT:41,cardinality:42,relType:43,ZERO_OR_ONE:44,ZERO_OR_MORE:45,ONE_OR_MORE:46,ONLY_ONE:47,MD_PARENT:48,NON_IDENTIFYING:49,IDENTIFYING:50,WORD:51,open_directive:52,type_directive:53,arg_directive:54,close_directive:55,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",9:"SPACE",11:"NEWLINE",15:":",20:"BLOCK_START",22:"BLOCK_STOP",23:"title",24:"title_value",25:"acc_title",26:"acc_title_value",27:"acc_descr",28:"acc_descr_value",29:"acc_descr_multiline_value",30:"ALPHANUM",31:"ENTITY_NAME",37:"ATTRIBUTE_WORD",39:"COMMA",40:"ATTRIBUTE_KEY",41:"COMMENT",44:"ZERO_OR_ONE",45:"ZERO_OR_MORE",46:"ONE_OR_MORE",47:"ONLY_ONE",48:"MD_PARENT",49:"NON_IDENTIFYING",50:"IDENTIFYING",51:"WORD",52:"open_directive",53:"type_directive",54:"arg_directive",55:"close_directive"},productions_:[0,[3,3],[3,2],[5,0],[5,2],[8,2],[8,1],[8,1],[8,1],[7,4],[7,6],[10,1],[10,5],[10,4],[10,3],[10,1],[10,2],[10,2],[10,2],[10,1],[17,1],[17,1],[21,1],[21,2],[32,2],[32,3],[32,3],[32,4],[33,1],[34,1],[35,1],[35,3],[38,1],[36,1],[18,3],[42,1],[42,1],[42,1],[42,1],[42,1],[43,1],[43,1],[19,1],[19,1],[19,1],[12,1],[13,1],[16,1],[14,1]],performAction:function(a,l,d,u,m,i,Q){var h=i.length-1;switch(m){case 1:break;case 3:this.$=[];break;case 4:i[h-1].push(i[h]),this.$=i[h-1];break;case 5:case 6:this.$=i[h];break;case 7:case 8:this.$=[];break;case 12:u.addEntity(i[h-4]),u.addEntity(i[h-2]),u.addRelationship(i[h-4],i[h],i[h-2],i[h-3]);break;case 13:u.addEntity(i[h-3]),u.addAttributes(i[h-3],i[h-1]);break;case 14:u.addEntity(i[h-2]);break;case 15:u.addEntity(i[h]);break;case 16:case 17:this.$=i[h].trim(),u.setAccTitle(this.$);break;case 18:case 19:this.$=i[h].trim(),u.setAccDescription(this.$);break;case 20:case 44:this.$=i[h];break;case 21:case 42:case 43:this.$=i[h].replace(/"/g,"");break;case 22:case 30:this.$=[i[h]];break;case 23:i[h].push(i[h-1]),this.$=i[h];break;case 24:this.$={attributeType:i[h-1],attributeName:i[h]};break;case 25:this.$={attributeType:i[h-2],attributeName:i[h-1],attributeKeyTypeList:i[h]};break;case 26:this.$={attributeType:i[h-2],attributeName:i[h-1],attributeComment:i[h]};break;case 27:this.$={attributeType:i[h-3],attributeName:i[h-2],attributeKeyTypeList:i[h-1],attributeComment:i[h]};break;case 28:case 29:case 32:this.$=i[h];break;case 31:i[h-2].push(i[h]),this.$=i[h-2];break;case 33:this.$=i[h].replace(/"/g,"");break;case 34:this.$={cardA:i[h],relType:i[h-1],cardB:i[h-2]};break;case 35:this.$=u.Cardinality.ZERO_OR_ONE;break;case 36:this.$=u.Cardinality.ZERO_OR_MORE;break;case 37:this.$=u.Cardinality.ONE_OR_MORE;break;case 38:this.$=u.Cardinality.ONLY_ONE;break;case 39:this.$=u.Cardinality.MD_PARENT;break;case 40:this.$=u.Identification.NON_IDENTIFYING;break;case 41:this.$=u.Identification.IDENTIFYING;break;case 45:u.parseDirective("%%{","open_directive");break;case 46:u.parseDirective(i[h],"type_directive");break;case 47:i[h]=i[h].trim().replace(/'/g,'"'),u.parseDirective(i[h],"arg_directive");break;case 48:u.parseDirective("}%%","close_directive","er");break}},table:[{3:1,4:r,7:3,12:4,52:e},{1:[3]},t(n,[2,3],{5:6}),{3:7,4:r,7:3,12:4,52:e},{13:8,53:[1,9]},{53:[2,45]},{6:[1,10],7:15,8:11,9:[1,12],10:13,11:[1,14],12:4,17:16,23:s,25:p,27:f,29:o,30:c,31:_,52:e},{1:[2,2]},{14:23,15:[1,24],55:E},t([15,55],[2,46]),t(n,[2,8],{1:[2,1]}),t(n,[2,4]),{7:15,10:26,12:4,17:16,23:s,25:p,27:f,29:o,30:c,31:_,52:e},t(n,[2,6]),t(n,[2,7]),t(n,[2,11]),t(n,[2,15],{18:27,42:29,20:[1,28],44:g,45:O,46:y,47:A,48:Y}),{24:[1,35]},{26:[1,36]},{28:[1,37]},t(n,[2,19]),t(U,[2,20]),t(U,[2,21]),{11:[1,38]},{16:39,54:[1,40]},{11:[2,48]},t(n,[2,5]),{17:41,30:c,31:_},{21:42,22:[1,43],32:44,33:45,37:X},{43:47,49:[1,48],50:[1,49]},t(I,[2,35]),t(I,[2,36]),t(I,[2,37]),t(I,[2,38]),t(I,[2,39]),t(n,[2,16]),t(n,[2,17]),t(n,[2,18]),t(N,[2,9]),{14:50,55:E},{55:[2,47]},{15:[1,51]},{22:[1,52]},t(n,[2,14]),{21:53,22:[2,22],32:44,33:45,37:X},{34:54,37:[1,55]},{37:[2,28]},{42:56,44:g,45:O,46:y,47:A,48:Y},t(v,[2,40]),t(v,[2,41]),{11:[1,57]},{19:58,30:[1,61],31:[1,60],51:[1,59]},t(n,[2,13]),{22:[2,23]},t(k,[2,24],{35:62,36:63,38:64,40:x,41:P}),t([22,37,40,41],[2,29]),t([30,31],[2,34]),t(N,[2,10]),t(n,[2,12]),t(n,[2,42]),t(n,[2,43]),t(n,[2,44]),t(k,[2,25],{36:67,39:[1,68],41:P}),t(k,[2,26]),t(Z,[2,30]),t(k,[2,33]),t(Z,[2,32]),t(k,[2,27]),{38:69,40:x},t(Z,[2,31])],defaultActions:{5:[2,45],7:[2,2],25:[2,48],40:[2,47],46:[2,28],53:[2,23]},parseError:function(a,l){if(l.recoverable)this.trace(a);else{var d=new Error(a);throw d.hash=l,d}},parse:function(a){var l=this,d=[0],u=[],m=[null],i=[],Q=this.table,h="",q=0,ht=0,Et=2,dt=1,mt=i.slice.call(arguments,1),b=Object.create(this.lexer),H={yy:{}};for(var rt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,rt)&&(H.yy[rt]=this.yy[rt]);b.setInput(a,H.yy),H.yy.lexer=b,H.yy.parser=this,typeof b.yylloc>"u"&&(b.yylloc={});var it=b.yylloc;i.push(it);var gt=b.options&&b.options.ranges;typeof H.yy.parseError=="function"?this.parseError=H.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function kt(){var W;return W=u.pop()||b.lex()||dt,typeof W!="number"&&(W instanceof Array&&(u=W,W=u.pop()),W=l.symbols_[W]||W),W}for(var D,G,L,at,K={},J,F,ut,tt;;){if(G=d[d.length-1],this.defaultActions[G]?L=this.defaultActions[G]:((D===null||typeof D>"u")&&(D=kt()),L=Q[G]&&Q[G][D]),typeof L>"u"||!L.length||!L[0]){var nt="";tt=[];for(J in Q[G])this.terminals_[J]&&J>Et&&tt.push("'"+this.terminals_[J]+"'");b.showPosition?nt="Parse error on line "+(q+1)+`: +import{c as V,s as xt,g as Rt,b as Ot,a as bt,v as Nt,x as Tt,m as At,l as et,z as Mt,h as st,y as vt,i as Dt,a5 as wt,a7 as It}from"../app.3c4fe3d0.js";import{G as St,l as Lt}from"./layout.66644227.js";import{l as Bt}from"./line.809d7f74.js";import"./framework.be0a7370.js";import"./theme.71fa6e36.js";import"./array.9f3ba611.js";import"./path.53f90ab3.js";const Ct=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function Pt(t){return typeof t=="string"&&Ct.test(t)}const T=[];for(let t=0;t<256;++t)T.push((t+256).toString(16).slice(1));function Yt(t,r=0){return(T[t[r+0]]+T[t[r+1]]+T[t[r+2]]+T[t[r+3]]+"-"+T[t[r+4]]+T[t[r+5]]+"-"+T[t[r+6]]+T[t[r+7]]+"-"+T[t[r+8]]+T[t[r+9]]+"-"+T[t[r+10]]+T[t[r+11]]+T[t[r+12]]+T[t[r+13]]+T[t[r+14]]+T[t[r+15]]).toLowerCase()}function Zt(t){if(!Pt(t))throw TypeError("Invalid UUID");let r;const e=new Uint8Array(16);return e[0]=(r=parseInt(t.slice(0,8),16))>>>24,e[1]=r>>>16&255,e[2]=r>>>8&255,e[3]=r&255,e[4]=(r=parseInt(t.slice(9,13),16))>>>8,e[5]=r&255,e[6]=(r=parseInt(t.slice(14,18),16))>>>8,e[7]=r&255,e[8]=(r=parseInt(t.slice(19,23),16))>>>8,e[9]=r&255,e[10]=(r=parseInt(t.slice(24,36),16))/1099511627776&255,e[11]=r/4294967296&255,e[12]=r>>>24&255,e[13]=r>>>16&255,e[14]=r>>>8&255,e[15]=r&255,e}function Ft(t){t=unescape(encodeURIComponent(t));const r=[];for(let e=0;e>>32-r}function Ht(t){const r=[1518500249,1859775393,2400959708,3395469782],e=[1732584193,4023233417,2562383102,271733878,3285377520];if(typeof t=="string"){const f=unescape(encodeURIComponent(t));t=[];for(let o=0;o>>0;O=g,g=E,E=ot(_,30)>>>0,_=c,c=Y}e[0]=e[0]+c>>>0,e[1]=e[1]+_>>>0,e[2]=e[2]+E>>>0,e[3]=e[3]+g>>>0,e[4]=e[4]+O>>>0}return[e[0]>>24&255,e[0]>>16&255,e[0]>>8&255,e[0]&255,e[1]>>24&255,e[1]>>16&255,e[1]>>8&255,e[1]&255,e[2]>>24&255,e[2]>>16&255,e[2]>>8&255,e[2]&255,e[3]>>24&255,e[3]>>16&255,e[3]>>8&255,e[3]&255,e[4]>>24&255,e[4]>>16&255,e[4]>>8&255,e[4]&255]}const Gt=Ut("v5",80,Ht),Kt=Gt;var ct=function(){var t=function(M,a,l,d){for(l=l||{},d=M.length;d--;l[M[d]]=a);return l},r=[1,2],e=[1,5],n=[6,9,11,23,25,27,29,30,31,52],s=[1,17],p=[1,18],f=[1,19],o=[1,20],c=[1,21],_=[1,22],E=[1,25],g=[1,30],O=[1,31],y=[1,32],A=[1,33],Y=[1,34],U=[6,9,11,15,20,23,25,27,29,30,31,44,45,46,47,48,52],X=[1,46],I=[30,31,49,50],N=[4,6,9,11,23,25,27,29,30,31,52],v=[44,45,46,47,48],k=[22,37],x=[1,66],P=[1,65],Z=[22,37,39,41],w={trace:function(){},yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,directive:7,line:8,SPACE:9,statement:10,NEWLINE:11,openDirective:12,typeDirective:13,closeDirective:14,":":15,argDirective:16,entityName:17,relSpec:18,role:19,BLOCK_START:20,attributes:21,BLOCK_STOP:22,title:23,title_value:24,acc_title:25,acc_title_value:26,acc_descr:27,acc_descr_value:28,acc_descr_multiline_value:29,ALPHANUM:30,ENTITY_NAME:31,attribute:32,attributeType:33,attributeName:34,attributeKeyTypeList:35,attributeComment:36,ATTRIBUTE_WORD:37,attributeKeyType:38,COMMA:39,ATTRIBUTE_KEY:40,COMMENT:41,cardinality:42,relType:43,ZERO_OR_ONE:44,ZERO_OR_MORE:45,ONE_OR_MORE:46,ONLY_ONE:47,MD_PARENT:48,NON_IDENTIFYING:49,IDENTIFYING:50,WORD:51,open_directive:52,type_directive:53,arg_directive:54,close_directive:55,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",9:"SPACE",11:"NEWLINE",15:":",20:"BLOCK_START",22:"BLOCK_STOP",23:"title",24:"title_value",25:"acc_title",26:"acc_title_value",27:"acc_descr",28:"acc_descr_value",29:"acc_descr_multiline_value",30:"ALPHANUM",31:"ENTITY_NAME",37:"ATTRIBUTE_WORD",39:"COMMA",40:"ATTRIBUTE_KEY",41:"COMMENT",44:"ZERO_OR_ONE",45:"ZERO_OR_MORE",46:"ONE_OR_MORE",47:"ONLY_ONE",48:"MD_PARENT",49:"NON_IDENTIFYING",50:"IDENTIFYING",51:"WORD",52:"open_directive",53:"type_directive",54:"arg_directive",55:"close_directive"},productions_:[0,[3,3],[3,2],[5,0],[5,2],[8,2],[8,1],[8,1],[8,1],[7,4],[7,6],[10,1],[10,5],[10,4],[10,3],[10,1],[10,2],[10,2],[10,2],[10,1],[17,1],[17,1],[21,1],[21,2],[32,2],[32,3],[32,3],[32,4],[33,1],[34,1],[35,1],[35,3],[38,1],[36,1],[18,3],[42,1],[42,1],[42,1],[42,1],[42,1],[43,1],[43,1],[19,1],[19,1],[19,1],[12,1],[13,1],[16,1],[14,1]],performAction:function(a,l,d,u,m,i,Q){var h=i.length-1;switch(m){case 1:break;case 3:this.$=[];break;case 4:i[h-1].push(i[h]),this.$=i[h-1];break;case 5:case 6:this.$=i[h];break;case 7:case 8:this.$=[];break;case 12:u.addEntity(i[h-4]),u.addEntity(i[h-2]),u.addRelationship(i[h-4],i[h],i[h-2],i[h-3]);break;case 13:u.addEntity(i[h-3]),u.addAttributes(i[h-3],i[h-1]);break;case 14:u.addEntity(i[h-2]);break;case 15:u.addEntity(i[h]);break;case 16:case 17:this.$=i[h].trim(),u.setAccTitle(this.$);break;case 18:case 19:this.$=i[h].trim(),u.setAccDescription(this.$);break;case 20:case 44:this.$=i[h];break;case 21:case 42:case 43:this.$=i[h].replace(/"/g,"");break;case 22:case 30:this.$=[i[h]];break;case 23:i[h].push(i[h-1]),this.$=i[h];break;case 24:this.$={attributeType:i[h-1],attributeName:i[h]};break;case 25:this.$={attributeType:i[h-2],attributeName:i[h-1],attributeKeyTypeList:i[h]};break;case 26:this.$={attributeType:i[h-2],attributeName:i[h-1],attributeComment:i[h]};break;case 27:this.$={attributeType:i[h-3],attributeName:i[h-2],attributeKeyTypeList:i[h-1],attributeComment:i[h]};break;case 28:case 29:case 32:this.$=i[h];break;case 31:i[h-2].push(i[h]),this.$=i[h-2];break;case 33:this.$=i[h].replace(/"/g,"");break;case 34:this.$={cardA:i[h],relType:i[h-1],cardB:i[h-2]};break;case 35:this.$=u.Cardinality.ZERO_OR_ONE;break;case 36:this.$=u.Cardinality.ZERO_OR_MORE;break;case 37:this.$=u.Cardinality.ONE_OR_MORE;break;case 38:this.$=u.Cardinality.ONLY_ONE;break;case 39:this.$=u.Cardinality.MD_PARENT;break;case 40:this.$=u.Identification.NON_IDENTIFYING;break;case 41:this.$=u.Identification.IDENTIFYING;break;case 45:u.parseDirective("%%{","open_directive");break;case 46:u.parseDirective(i[h],"type_directive");break;case 47:i[h]=i[h].trim().replace(/'/g,'"'),u.parseDirective(i[h],"arg_directive");break;case 48:u.parseDirective("}%%","close_directive","er");break}},table:[{3:1,4:r,7:3,12:4,52:e},{1:[3]},t(n,[2,3],{5:6}),{3:7,4:r,7:3,12:4,52:e},{13:8,53:[1,9]},{53:[2,45]},{6:[1,10],7:15,8:11,9:[1,12],10:13,11:[1,14],12:4,17:16,23:s,25:p,27:f,29:o,30:c,31:_,52:e},{1:[2,2]},{14:23,15:[1,24],55:E},t([15,55],[2,46]),t(n,[2,8],{1:[2,1]}),t(n,[2,4]),{7:15,10:26,12:4,17:16,23:s,25:p,27:f,29:o,30:c,31:_,52:e},t(n,[2,6]),t(n,[2,7]),t(n,[2,11]),t(n,[2,15],{18:27,42:29,20:[1,28],44:g,45:O,46:y,47:A,48:Y}),{24:[1,35]},{26:[1,36]},{28:[1,37]},t(n,[2,19]),t(U,[2,20]),t(U,[2,21]),{11:[1,38]},{16:39,54:[1,40]},{11:[2,48]},t(n,[2,5]),{17:41,30:c,31:_},{21:42,22:[1,43],32:44,33:45,37:X},{43:47,49:[1,48],50:[1,49]},t(I,[2,35]),t(I,[2,36]),t(I,[2,37]),t(I,[2,38]),t(I,[2,39]),t(n,[2,16]),t(n,[2,17]),t(n,[2,18]),t(N,[2,9]),{14:50,55:E},{55:[2,47]},{15:[1,51]},{22:[1,52]},t(n,[2,14]),{21:53,22:[2,22],32:44,33:45,37:X},{34:54,37:[1,55]},{37:[2,28]},{42:56,44:g,45:O,46:y,47:A,48:Y},t(v,[2,40]),t(v,[2,41]),{11:[1,57]},{19:58,30:[1,61],31:[1,60],51:[1,59]},t(n,[2,13]),{22:[2,23]},t(k,[2,24],{35:62,36:63,38:64,40:x,41:P}),t([22,37,40,41],[2,29]),t([30,31],[2,34]),t(N,[2,10]),t(n,[2,12]),t(n,[2,42]),t(n,[2,43]),t(n,[2,44]),t(k,[2,25],{36:67,39:[1,68],41:P}),t(k,[2,26]),t(Z,[2,30]),t(k,[2,33]),t(Z,[2,32]),t(k,[2,27]),{38:69,40:x},t(Z,[2,31])],defaultActions:{5:[2,45],7:[2,2],25:[2,48],40:[2,47],46:[2,28],53:[2,23]},parseError:function(a,l){if(l.recoverable)this.trace(a);else{var d=new Error(a);throw d.hash=l,d}},parse:function(a){var l=this,d=[0],u=[],m=[null],i=[],Q=this.table,h="",q=0,ht=0,Et=2,dt=1,mt=i.slice.call(arguments,1),b=Object.create(this.lexer),H={yy:{}};for(var rt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,rt)&&(H.yy[rt]=this.yy[rt]);b.setInput(a,H.yy),H.yy.lexer=b,H.yy.parser=this,typeof b.yylloc>"u"&&(b.yylloc={});var it=b.yylloc;i.push(it);var gt=b.options&&b.options.ranges;typeof H.yy.parseError=="function"?this.parseError=H.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function kt(){var W;return W=u.pop()||b.lex()||dt,typeof W!="number"&&(W instanceof Array&&(u=W,W=u.pop()),W=l.symbols_[W]||W),W}for(var D,G,L,at,K={},J,F,ut,tt;;){if(G=d[d.length-1],this.defaultActions[G]?L=this.defaultActions[G]:((D===null||typeof D>"u")&&(D=kt()),L=Q[G]&&Q[G][D]),typeof L>"u"||!L.length||!L[0]){var nt="";tt=[];for(J in Q[G])this.terminals_[J]&&J>Et&&tt.push("'"+this.terminals_[J]+"'");b.showPosition?nt="Parse error on line "+(q+1)+`: `+b.showPosition()+` Expecting `+tt.join(", ")+", got '"+(this.terminals_[D]||D)+"'":nt="Parse error on line "+(q+1)+": Unexpected "+(D==dt?"end of input":"'"+(this.terminals_[D]||D)+"'"),this.parseError(nt,{text:b.match,token:this.terminals_[D]||D,line:b.yylineno,loc:it,expected:tt})}if(L[0]instanceof Array&&L.length>1)throw new Error("Parse Error: multiple actions possible at state: "+G+", token: "+D);switch(L[0]){case 1:d.push(D),m.push(b.yytext),i.push(b.yylloc),d.push(L[1]),D=null,ht=b.yyleng,h=b.yytext,q=b.yylineno,it=b.yylloc;break;case 2:if(F=this.productions_[L[1]][1],K.$=m[m.length-F],K._$={first_line:i[i.length-(F||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(F||1)].first_column,last_column:i[i.length-1].last_column},gt&&(K._$.range=[i[i.length-(F||1)].range[0],i[i.length-1].range[1]]),at=this.performAction.apply(K,[h,ht,q,H.yy,L[1],m,i].concat(mt)),typeof at<"u")return at;F&&(d=d.slice(0,-1*F*2),m=m.slice(0,-1*F),i=i.slice(0,-1*F)),d.push(this.productions_[L[1]][0]),m.push(K.$),i.push(K._$),ut=Q[d[d.length-2]][d[d.length-1]],d.push(ut);break;case 3:return!0}}return!0}},z=function(){var M={EOF:1,parseError:function(l,d){if(this.yy.parser)this.yy.parser.parseError(l,d);else throw new Error(l)},setInput:function(a,l){return this.yy=l||this.yy||{},this._input=a,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var a=this._input[0];this.yytext+=a,this.yyleng++,this.offset++,this.match+=a,this.matched+=a;var l=a.match(/(?:\r\n?|\n).*/g);return l?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),a},unput:function(a){var l=a.length,d=a.split(/(?:\r\n?|\n)/g);this._input=a+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-l),this.offset-=l;var u=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),d.length-1&&(this.yylineno-=d.length-1);var m=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:d?(d.length===u.length?this.yylloc.first_column:0)+u[u.length-d.length].length-d[0].length:this.yylloc.first_column-l},this.options.ranges&&(this.yylloc.range=[m[0],m[0]+this.yyleng-l]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(a){this.unput(this.match.slice(a))},pastInput:function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var a=this.pastInput(),l=new Array(a.length+1).join("-");return a+this.upcomingInput()+` diff --git a/pr-383/assets/chunks/flowDb-8f9fc471.d59257b5.js b/pr-383/assets/chunks/flowDb-8f9fc471.70dad437.js similarity index 99% rename from pr-383/assets/chunks/flowDb-8f9fc471.d59257b5.js rename to pr-383/assets/chunks/flowDb-8f9fc471.70dad437.js index 8a6ac9176..56c47e8b1 100644 --- a/pr-383/assets/chunks/flowDb-8f9fc471.d59257b5.js +++ b/pr-383/assets/chunks/flowDb-8f9fc471.70dad437.js @@ -1,4 +1,4 @@ -import{c as U2,u as Ne,s as Oe,g as Pe,a as we,b as Ue,v as Me,x as Ge,m as Ke,l as M2,y as G2,z as je,j as We,h as n2}from"../app.34e6398e.js";var P2=function(){var e=function(H1,a,o,T){for(o=o||{},T=H1.length;T--;o[H1[T]]=a);return o},u=[1,9],r=[1,7],i=[1,6],c=[1,8],_=[1,20,21,22,23,38,44,46,48,52,67,68,88,89,90,91,92,93,97,107,108,111,113,114,120,121,122,123,124,125,126,127,128,129],B=[2,10],u1=[1,20],H=[1,21],s1=[1,22],f1=[1,23],Y1=[1,30],Q1=[1,32],X1=[1,33],s2=[1,34],q=[1,63],c1=[1,49],m1=[1,53],o2=[1,36],l2=[1,37],h2=[1,38],A2=[1,39],f2=[1,40],v1=[1,57],V1=[1,64],x1=[1,52],R1=[1,54],L1=[1,56],I1=[1,60],N1=[1,61],p2=[1,41],d2=[1,42],E2=[1,43],b2=[1,44],O1=[1,62],P1=[1,51],w1=[1,55],U1=[1,58],M1=[1,59],G1=[1,50],j2=[1,67],u2=[1,72],Q=[1,20,21,22,23,38,42,44,46,48,52,67,68,88,89,90,91,92,93,97,107,108,111,113,114,120,121,122,123,124,125,126,127,128,129],p1=[1,76],d1=[1,75],E1=[1,77],k2=[20,21,23,82,83],r1=[1,100],l=[1,105],h=[1,108],A=[1,109],i1=[1,102],f=[1,107],p=[1,110],n1=[1,103],d=[1,115],E=[1,114],b=[1,104],k=[1,106],D=[1,111],g=[1,112],F=[1,113],C=[1,116],D2=[20,21,22,23,82,83],t1=[20,21,22,23,54,82,83],Z=[20,21,22,23,40,52,54,56,58,60,62,64,66,67,68,70,72,74,75,77,82,83,93,97,107,108,111,113,114,124,125,126,127,128,129],Y=[20,21,23],W2=[20,21,23,52,67,68,82,83,93,97,107,108,111,113,114,124,125,126,127,128,129],v2=[1,12,20,21,22,23,24,38,42,44,46,48,52,67,68,88,89,90,91,92,93,97,107,108,111,113,114,120,121,122,123,124,125,126,127,128,129],r2=[52,67,68,93,97,107,108,111,113,114,124,125,126,127,128,129],S=[1,151],m=[1,159],v=[1,160],V=[1,161],x=[1,162],R=[1,146],L=[1,147],J=[1,142],$=[1,143],I=[1,154],N=[1,155],O=[1,156],P=[1,157],w=[1,158],U=[1,163],M=[1,164],G=[1,149],K=[1,152],j=[1,148],W=[1,145],V2=[20,21,22,23,38,42,44,46,48,52,67,68,88,89,90,91,92,93,97,107,108,111,113,114,120,121,122,123,124,125,126,127,128,129],Y2=[1,167],$1=[20,21,22,23,26,52,67,68,93,107,108,111,113,114,124,125,126,127,128,129],y=[20,21,22,23,24,26,38,40,41,42,52,57,59,61,63,65,67,68,69,71,73,74,76,78,82,83,88,89,90,91,92,93,94,97,107,108,111,113,114,115,116,124,125,126,127,128,129],z2=[12,21,22,24],H2=[22,108],b1=[1,252],k1=[1,247],D1=[1,248],g1=[1,256],F1=[1,253],C1=[1,250],_1=[1,249],B1=[1,251],T1=[1,254],y1=[1,255],S1=[1,257],z1=[1,275],Q2=[20,21,23,108],o1=[20,21,22,23,67,68,88,104,107,108,111,112,113,114,115],x2={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,directive:5,openDirective:6,typeDirective:7,closeDirective:8,separator:9,":":10,argDirective:11,open_directive:12,type_directive:13,arg_directive:14,close_directive:15,graphConfig:16,document:17,line:18,statement:19,SEMI:20,NEWLINE:21,SPACE:22,EOF:23,GRAPH:24,NODIR:25,DIR:26,FirstStmtSeperator:27,ending:28,endToken:29,spaceList:30,spaceListNewline:31,verticeStatement:32,styleStatement:33,linkStyleStatement:34,classDefStatement:35,classStatement:36,clickStatement:37,subgraph:38,text:39,SQS:40,SQE:41,end:42,direction:43,acc_title:44,acc_title_value:45,acc_descr:46,acc_descr_value:47,acc_descr_multiline_value:48,link:49,node:50,styledVertex:51,AMP:52,vertex:53,STYLE_SEPARATOR:54,idString:55,DOUBLECIRCLESTART:56,DOUBLECIRCLEEND:57,PS:58,PE:59,"(-":60,"-)":61,STADIUMSTART:62,STADIUMEND:63,SUBROUTINESTART:64,SUBROUTINEEND:65,VERTEX_WITH_PROPS_START:66,ALPHA:67,COLON:68,PIPE:69,CYLINDERSTART:70,CYLINDEREND:71,DIAMOND_START:72,DIAMOND_STOP:73,TAGEND:74,TRAPSTART:75,TRAPEND:76,INVTRAPSTART:77,INVTRAPEND:78,linkStatement:79,arrowText:80,TESTSTR:81,START_LINK:82,LINK:83,textToken:84,STR:85,MD_STR:86,keywords:87,STYLE:88,LINKSTYLE:89,CLASSDEF:90,CLASS:91,CLICK:92,DOWN:93,UP:94,textNoTags:95,textNoTagsToken:96,DEFAULT:97,stylesOpt:98,alphaNum:99,CALLBACKNAME:100,CALLBACKARGS:101,HREF:102,LINK_TARGET:103,HEX:104,numList:105,INTERPOLATE:106,NUM:107,COMMA:108,style:109,styleComponent:110,MINUS:111,UNIT:112,BRKT:113,DOT:114,PCT:115,TAGSTART:116,alphaNumToken:117,idStringToken:118,alphaNumStatement:119,direction_tb:120,direction_bt:121,direction_rl:122,direction_lr:123,PUNCTUATION:124,UNICODE_TEXT:125,PLUS:126,EQUALS:127,MULT:128,UNDERSCORE:129,graphCodeTokens:130,ARROW_CROSS:131,ARROW_POINT:132,ARROW_CIRCLE:133,ARROW_OPEN:134,QUOTE:135,$accept:0,$end:1},terminals_:{2:"error",10:":",12:"open_directive",13:"type_directive",14:"arg_directive",15:"close_directive",20:"SEMI",21:"NEWLINE",22:"SPACE",23:"EOF",24:"GRAPH",25:"NODIR",26:"DIR",38:"subgraph",40:"SQS",41:"SQE",42:"end",44:"acc_title",45:"acc_title_value",46:"acc_descr",47:"acc_descr_value",48:"acc_descr_multiline_value",52:"AMP",54:"STYLE_SEPARATOR",56:"DOUBLECIRCLESTART",57:"DOUBLECIRCLEEND",58:"PS",59:"PE",60:"(-",61:"-)",62:"STADIUMSTART",63:"STADIUMEND",64:"SUBROUTINESTART",65:"SUBROUTINEEND",66:"VERTEX_WITH_PROPS_START",67:"ALPHA",68:"COLON",69:"PIPE",70:"CYLINDERSTART",71:"CYLINDEREND",72:"DIAMOND_START",73:"DIAMOND_STOP",74:"TAGEND",75:"TRAPSTART",76:"TRAPEND",77:"INVTRAPSTART",78:"INVTRAPEND",81:"TESTSTR",82:"START_LINK",83:"LINK",85:"STR",86:"MD_STR",88:"STYLE",89:"LINKSTYLE",90:"CLASSDEF",91:"CLASS",92:"CLICK",93:"DOWN",94:"UP",97:"DEFAULT",100:"CALLBACKNAME",101:"CALLBACKARGS",102:"HREF",103:"LINK_TARGET",104:"HEX",106:"INTERPOLATE",107:"NUM",108:"COMMA",111:"MINUS",112:"UNIT",113:"BRKT",114:"DOT",115:"PCT",116:"TAGSTART",120:"direction_tb",121:"direction_bt",122:"direction_rl",123:"direction_lr",124:"PUNCTUATION",125:"UNICODE_TEXT",126:"PLUS",127:"EQUALS",128:"MULT",129:"UNDERSCORE",131:"ARROW_CROSS",132:"ARROW_POINT",133:"ARROW_CIRCLE",134:"ARROW_OPEN",135:"QUOTE"},productions_:[0,[3,1],[3,2],[5,4],[5,6],[6,1],[7,1],[11,1],[8,1],[4,2],[17,0],[17,2],[18,1],[18,1],[18,1],[18,1],[18,1],[16,2],[16,2],[16,2],[16,3],[28,2],[28,1],[29,1],[29,1],[29,1],[27,1],[27,1],[27,2],[31,2],[31,2],[31,1],[31,1],[30,2],[30,1],[19,2],[19,2],[19,2],[19,2],[19,2],[19,2],[19,9],[19,6],[19,4],[19,1],[19,2],[19,2],[19,1],[9,1],[9,1],[9,1],[32,3],[32,4],[32,2],[32,1],[50,1],[50,5],[51,1],[51,3],[53,4],[53,4],[53,6],[53,4],[53,4],[53,4],[53,8],[53,4],[53,4],[53,4],[53,6],[53,4],[53,4],[53,4],[53,4],[53,4],[53,1],[49,2],[49,3],[49,3],[49,1],[49,3],[79,1],[80,3],[39,1],[39,2],[39,1],[39,1],[87,1],[87,1],[87,1],[87,1],[87,1],[87,1],[87,1],[87,1],[87,1],[87,1],[87,1],[95,1],[95,2],[35,5],[35,5],[36,5],[37,2],[37,4],[37,3],[37,5],[37,2],[37,4],[37,4],[37,6],[37,2],[37,4],[37,2],[37,4],[37,4],[37,6],[33,5],[33,5],[34,5],[34,5],[34,9],[34,9],[34,7],[34,7],[105,1],[105,3],[98,1],[98,3],[109,1],[109,2],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[84,1],[84,1],[84,1],[84,1],[84,1],[84,1],[96,1],[96,1],[96,1],[96,1],[55,1],[55,2],[99,1],[99,2],[119,1],[119,1],[119,1],[119,1],[43,1],[43,1],[43,1],[43,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[118,1],[118,1],[118,1],[118,1],[118,1],[118,1],[118,1],[118,1],[118,1],[118,1],[118,1],[118,1],[118,1],[118,1],[118,1],[118,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1]],performAction:function(a,o,T,n,X,t,i2){var s=t.length-1;switch(X){case 5:n.parseDirective("%%{","open_directive");break;case 6:n.parseDirective(t[s],"type_directive");break;case 7:t[s]=t[s].trim().replace(/'/g,'"'),n.parseDirective(t[s],"arg_directive");break;case 8:n.parseDirective("}%%","close_directive","flowchart");break;case 10:this.$=[];break;case 11:(!Array.isArray(t[s])||t[s].length>0)&&t[s-1].push(t[s]),this.$=t[s-1];break;case 12:case 98:case 154:case 156:case 157:this.$=t[s];break;case 19:n.setDirection("TB"),this.$="TB";break;case 20:n.setDirection(t[s-1]),this.$=t[s-1];break;case 35:this.$=t[s-1].nodes;break;case 36:case 37:case 38:case 39:case 40:this.$=[];break;case 41:this.$=n.addSubGraph(t[s-6],t[s-1],t[s-4]);break;case 42:this.$=n.addSubGraph(t[s-3],t[s-1],t[s-3]);break;case 43:this.$=n.addSubGraph(void 0,t[s-1],void 0);break;case 45:this.$=t[s].trim(),n.setAccTitle(this.$);break;case 46:case 47:this.$=t[s].trim(),n.setAccDescription(this.$);break;case 51:n.addLink(t[s-2].stmt,t[s],t[s-1]),this.$={stmt:t[s],nodes:t[s].concat(t[s-2].nodes)};break;case 52:n.addLink(t[s-3].stmt,t[s-1],t[s-2]),this.$={stmt:t[s-1],nodes:t[s-1].concat(t[s-3].nodes)};break;case 53:this.$={stmt:t[s-1],nodes:t[s-1]};break;case 54:this.$={stmt:t[s],nodes:t[s]};break;case 55:this.$=[t[s]];break;case 56:this.$=t[s-4].concat(t[s]);break;case 57:this.$=t[s];break;case 58:this.$=t[s-2],n.setClass(t[s-2],t[s]);break;case 59:this.$=t[s-3],n.addVertex(t[s-3],t[s-1],"square");break;case 60:this.$=t[s-3],n.addVertex(t[s-3],t[s-1],"doublecircle");break;case 61:this.$=t[s-5],n.addVertex(t[s-5],t[s-2],"circle");break;case 62:this.$=t[s-3],n.addVertex(t[s-3],t[s-1],"ellipse");break;case 63:this.$=t[s-3],n.addVertex(t[s-3],t[s-1],"stadium");break;case 64:this.$=t[s-3],n.addVertex(t[s-3],t[s-1],"subroutine");break;case 65:this.$=t[s-7],n.addVertex(t[s-7],t[s-1],"rect",void 0,void 0,void 0,Object.fromEntries([[t[s-5],t[s-3]]]));break;case 66:this.$=t[s-3],n.addVertex(t[s-3],t[s-1],"cylinder");break;case 67:this.$=t[s-3],n.addVertex(t[s-3],t[s-1],"round");break;case 68:this.$=t[s-3],n.addVertex(t[s-3],t[s-1],"diamond");break;case 69:this.$=t[s-5],n.addVertex(t[s-5],t[s-2],"hexagon");break;case 70:this.$=t[s-3],n.addVertex(t[s-3],t[s-1],"odd");break;case 71:this.$=t[s-3],n.addVertex(t[s-3],t[s-1],"trapezoid");break;case 72:this.$=t[s-3],n.addVertex(t[s-3],t[s-1],"inv_trapezoid");break;case 73:this.$=t[s-3],n.addVertex(t[s-3],t[s-1],"lean_right");break;case 74:this.$=t[s-3],n.addVertex(t[s-3],t[s-1],"lean_left");break;case 75:this.$=t[s],n.addVertex(t[s]);break;case 76:t[s-1].text=t[s],this.$=t[s-1];break;case 77:case 78:t[s-2].text=t[s-1],this.$=t[s-2];break;case 79:this.$=t[s];break;case 80:var l1=n.destructLink(t[s],t[s-2]);this.$={type:l1.type,stroke:l1.stroke,length:l1.length,text:t[s-1]};break;case 81:var l1=n.destructLink(t[s]);this.$={type:l1.type,stroke:l1.stroke,length:l1.length};break;case 82:this.$=t[s-1];break;case 83:this.$={text:t[s],type:"text"};break;case 84:this.$={text:t[s-1].text+""+t[s],type:t[s-1].type};break;case 85:this.$={text:t[s],type:"text"};break;case 86:this.$={text:t[s],type:"markdown"};break;case 99:case 155:this.$=t[s-1]+""+t[s];break;case 100:case 101:this.$=t[s-4],n.addClass(t[s-2],t[s]);break;case 102:this.$=t[s-4],n.setClass(t[s-2],t[s]);break;case 103:case 111:this.$=t[s-1],n.setClickEvent(t[s-1],t[s]);break;case 104:case 112:this.$=t[s-3],n.setClickEvent(t[s-3],t[s-2]),n.setTooltip(t[s-3],t[s]);break;case 105:this.$=t[s-2],n.setClickEvent(t[s-2],t[s-1],t[s]);break;case 106:this.$=t[s-4],n.setClickEvent(t[s-4],t[s-3],t[s-2]),n.setTooltip(t[s-4],t[s]);break;case 107:case 113:this.$=t[s-1],n.setLink(t[s-1],t[s]);break;case 108:case 114:this.$=t[s-3],n.setLink(t[s-3],t[s-2]),n.setTooltip(t[s-3],t[s]);break;case 109:case 115:this.$=t[s-3],n.setLink(t[s-3],t[s-2],t[s]);break;case 110:case 116:this.$=t[s-5],n.setLink(t[s-5],t[s-4],t[s]),n.setTooltip(t[s-5],t[s-2]);break;case 117:this.$=t[s-4],n.addVertex(t[s-2],void 0,void 0,t[s]);break;case 118:case 120:this.$=t[s-4],n.updateLink(t[s-2],t[s]);break;case 119:this.$=t[s-4],n.updateLink([t[s-2]],t[s]);break;case 121:this.$=t[s-8],n.updateLinkInterpolate([t[s-6]],t[s-2]),n.updateLink([t[s-6]],t[s]);break;case 122:this.$=t[s-8],n.updateLinkInterpolate(t[s-6],t[s-2]),n.updateLink(t[s-6],t[s]);break;case 123:this.$=t[s-6],n.updateLinkInterpolate([t[s-4]],t[s]);break;case 124:this.$=t[s-6],n.updateLinkInterpolate(t[s-4],t[s]);break;case 125:case 127:this.$=[t[s]];break;case 126:case 128:t[s-2].push(t[s]),this.$=t[s-2];break;case 130:this.$=t[s-1]+t[s];break;case 152:this.$=t[s];break;case 153:this.$=t[s-1]+""+t[s];break;case 158:this.$="v";break;case 159:this.$="-";break;case 160:this.$={stmt:"dir",value:"TB"};break;case 161:this.$={stmt:"dir",value:"BT"};break;case 162:this.$={stmt:"dir",value:"RL"};break;case 163:this.$={stmt:"dir",value:"LR"};break}},table:[{3:1,4:2,5:3,6:5,12:u,16:4,21:r,22:i,24:c},{1:[3]},{1:[2,1]},{3:10,4:2,5:3,6:5,12:u,16:4,21:r,22:i,24:c},e(_,B,{17:11}),{7:12,13:[1,13]},{16:14,21:r,22:i,24:c},{16:15,21:r,22:i,24:c},{25:[1,16],26:[1,17]},{13:[2,5]},{1:[2,2]},{1:[2,9],18:18,19:19,20:u1,21:H,22:s1,23:f1,32:24,33:25,34:26,35:27,36:28,37:29,38:Y1,43:31,44:Q1,46:X1,48:s2,50:35,51:45,52:q,53:46,55:47,67:c1,68:m1,88:o2,89:l2,90:h2,91:A2,92:f2,93:v1,97:V1,107:x1,108:R1,111:L1,113:I1,114:N1,118:48,120:p2,121:d2,122:E2,123:b2,124:O1,125:P1,126:w1,127:U1,128:M1,129:G1},{8:65,10:[1,66],15:j2},e([10,15],[2,6]),e(_,[2,17]),e(_,[2,18]),e(_,[2,19]),{20:[1,69],21:[1,70],22:u2,27:68,30:71},e(Q,[2,11]),e(Q,[2,12]),e(Q,[2,13]),e(Q,[2,14]),e(Q,[2,15]),e(Q,[2,16]),{9:73,20:p1,21:d1,23:E1,49:74,79:78,82:[1,79],83:[1,80]},{9:81,20:p1,21:d1,23:E1},{9:82,20:p1,21:d1,23:E1},{9:83,20:p1,21:d1,23:E1},{9:84,20:p1,21:d1,23:E1},{9:85,20:p1,21:d1,23:E1},{9:87,20:p1,21:d1,22:[1,86],23:E1},e(Q,[2,44]),{45:[1,88]},{47:[1,89]},e(Q,[2,47]),e(k2,[2,54],{30:90,22:u2}),{22:[1,91]},{22:[1,92]},{22:[1,93]},{22:[1,94]},{26:r1,52:l,67:h,68:A,85:[1,98],93:i1,99:97,100:[1,95],102:[1,96],107:f,108:p,111:n1,113:d,114:E,117:101,119:99,124:b,125:k,126:D,127:g,128:F,129:C},e(Q,[2,160]),e(Q,[2,161]),e(Q,[2,162]),e(Q,[2,163]),e(D2,[2,55]),e(D2,[2,57],{54:[1,117]}),e(t1,[2,75],{118:130,40:[1,118],52:q,56:[1,119],58:[1,120],60:[1,121],62:[1,122],64:[1,123],66:[1,124],67:c1,68:m1,70:[1,125],72:[1,126],74:[1,127],75:[1,128],77:[1,129],93:v1,97:V1,107:x1,108:R1,111:L1,113:I1,114:N1,124:O1,125:P1,126:w1,127:U1,128:M1,129:G1}),e(Z,[2,152]),e(Z,[2,177]),e(Z,[2,178]),e(Z,[2,179]),e(Z,[2,180]),e(Z,[2,181]),e(Z,[2,182]),e(Z,[2,183]),e(Z,[2,184]),e(Z,[2,185]),e(Z,[2,186]),e(Z,[2,187]),e(Z,[2,188]),e(Z,[2,189]),e(Z,[2,190]),e(Z,[2,191]),e(Z,[2,192]),{9:131,20:p1,21:d1,23:E1},{11:132,14:[1,133]},e(Y,[2,8]),e(_,[2,20]),e(_,[2,26]),e(_,[2,27]),{21:[1,134]},e(W2,[2,34],{30:135,22:u2}),e(Q,[2,35]),{50:136,51:45,52:q,53:46,55:47,67:c1,68:m1,93:v1,97:V1,107:x1,108:R1,111:L1,113:I1,114:N1,118:48,124:O1,125:P1,126:w1,127:U1,128:M1,129:G1},e(v2,[2,48]),e(v2,[2,49]),e(v2,[2,50]),e(r2,[2,79],{80:137,69:[1,139],81:[1,138]}),{22:S,24:m,26:v,38:V,39:140,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},e([52,67,68,69,81,93,97,107,108,111,113,114,124,125,126,127,128,129],[2,81]),e(Q,[2,36]),e(Q,[2,37]),e(Q,[2,38]),e(Q,[2,39]),e(Q,[2,40]),{22:S,24:m,26:v,38:V,39:165,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},e(V2,B,{17:166}),e(Q,[2,45]),e(Q,[2,46]),e(k2,[2,53],{52:Y2}),{26:r1,52:l,67:h,68:A,93:i1,99:168,104:[1,169],107:f,108:p,111:n1,113:d,114:E,117:101,119:99,124:b,125:k,126:D,127:g,128:F,129:C},{97:[1,170],105:171,107:[1,172]},{26:r1,52:l,67:h,68:A,93:i1,97:[1,173],99:174,107:f,108:p,111:n1,113:d,114:E,117:101,119:99,124:b,125:k,126:D,127:g,128:F,129:C},{26:r1,52:l,67:h,68:A,93:i1,99:175,107:f,108:p,111:n1,113:d,114:E,117:101,119:99,124:b,125:k,126:D,127:g,128:F,129:C},e(Y,[2,103],{22:[1,176],101:[1,177]}),e(Y,[2,107],{22:[1,178]}),e(Y,[2,111],{117:101,119:180,22:[1,179],26:r1,52:l,67:h,68:A,93:i1,107:f,108:p,111:n1,113:d,114:E,124:b,125:k,126:D,127:g,128:F,129:C}),e(Y,[2,113],{22:[1,181]}),e($1,[2,154]),e($1,[2,156]),e($1,[2,157]),e($1,[2,158]),e($1,[2,159]),e(y,[2,164]),e(y,[2,165]),e(y,[2,166]),e(y,[2,167]),e(y,[2,168]),e(y,[2,169]),e(y,[2,170]),e(y,[2,171]),e(y,[2,172]),e(y,[2,173]),e(y,[2,174]),e(y,[2,175]),e(y,[2,176]),{52:q,55:182,67:c1,68:m1,93:v1,97:V1,107:x1,108:R1,111:L1,113:I1,114:N1,118:48,124:O1,125:P1,126:w1,127:U1,128:M1,129:G1},{22:S,24:m,26:v,38:V,39:183,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,39:184,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,39:186,42:x,52:l,58:[1,185],67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,39:187,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,39:188,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,39:189,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{67:[1,190]},{22:S,24:m,26:v,38:V,39:191,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,39:192,42:x,52:l,67:h,68:A,72:[1,193],74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,39:194,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,39:195,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,39:196,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},e(Z,[2,153]),e(z2,[2,3]),{8:197,15:j2},{15:[2,7]},e(_,[2,28]),e(W2,[2,33]),e(k2,[2,51],{30:198,22:u2}),e(r2,[2,76],{22:[1,199]}),{22:[1,200]},{22:S,24:m,26:v,38:V,39:201,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,42:x,52:l,67:h,68:A,74:R,82:L,83:[1,202],84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},e(y,[2,83]),e(y,[2,85]),e(y,[2,86]),e(y,[2,142]),e(y,[2,143]),e(y,[2,144]),e(y,[2,145]),e(y,[2,146]),e(y,[2,147]),e(y,[2,148]),e(y,[2,149]),e(y,[2,150]),e(y,[2,151]),e(y,[2,87]),e(y,[2,88]),e(y,[2,89]),e(y,[2,90]),e(y,[2,91]),e(y,[2,92]),e(y,[2,93]),e(y,[2,94]),e(y,[2,95]),e(y,[2,96]),e(y,[2,97]),{9:205,20:p1,21:d1,22:S,23:E1,24:m,26:v,38:V,40:[1,204],42:x,52:l,67:h,68:A,74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{18:18,19:19,20:u1,21:H,22:s1,23:f1,32:24,33:25,34:26,35:27,36:28,37:29,38:Y1,42:[1,206],43:31,44:Q1,46:X1,48:s2,50:35,51:45,52:q,53:46,55:47,67:c1,68:m1,88:o2,89:l2,90:h2,91:A2,92:f2,93:v1,97:V1,107:x1,108:R1,111:L1,113:I1,114:N1,118:48,120:p2,121:d2,122:E2,123:b2,124:O1,125:P1,126:w1,127:U1,128:M1,129:G1},{22:u2,30:207},{22:[1,208],26:r1,52:l,67:h,68:A,93:i1,107:f,108:p,111:n1,113:d,114:E,117:101,119:180,124:b,125:k,126:D,127:g,128:F,129:C},{22:[1,209]},{22:[1,210]},{22:[1,211],108:[1,212]},e(H2,[2,125]),{22:[1,213]},{22:[1,214],26:r1,52:l,67:h,68:A,93:i1,107:f,108:p,111:n1,113:d,114:E,117:101,119:180,124:b,125:k,126:D,127:g,128:F,129:C},{22:[1,215],26:r1,52:l,67:h,68:A,93:i1,107:f,108:p,111:n1,113:d,114:E,117:101,119:180,124:b,125:k,126:D,127:g,128:F,129:C},{85:[1,216]},e(Y,[2,105],{22:[1,217]}),{85:[1,218],103:[1,219]},{85:[1,220]},e($1,[2,155]),{85:[1,221],103:[1,222]},e(D2,[2,58],{118:130,52:q,67:c1,68:m1,93:v1,97:V1,107:x1,108:R1,111:L1,113:I1,114:N1,124:O1,125:P1,126:w1,127:U1,128:M1,129:G1}),{22:S,24:m,26:v,38:V,41:[1,223],42:x,52:l,67:h,68:A,74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,42:x,52:l,57:[1,224],67:h,68:A,74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,39:225,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,42:x,52:l,59:[1,226],67:h,68:A,74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,42:x,52:l,61:[1,227],67:h,68:A,74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,42:x,52:l,63:[1,228],67:h,68:A,74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,42:x,52:l,65:[1,229],67:h,68:A,74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{68:[1,230]},{22:S,24:m,26:v,38:V,42:x,52:l,67:h,68:A,71:[1,231],74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,42:x,52:l,67:h,68:A,73:[1,232],74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,39:233,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,41:[1,234],42:x,52:l,67:h,68:A,74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,42:x,52:l,67:h,68:A,74:R,76:[1,235],78:[1,236],82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,42:x,52:l,67:h,68:A,74:R,76:[1,238],78:[1,237],82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{9:239,20:p1,21:d1,23:E1},e(k2,[2,52],{52:Y2}),e(r2,[2,78]),e(r2,[2,77]),{22:S,24:m,26:v,38:V,42:x,52:l,67:h,68:A,69:[1,240],74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},e(r2,[2,80]),e(y,[2,84]),{22:S,24:m,26:v,38:V,39:241,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},e(V2,B,{17:242}),e(Q,[2,43]),{51:243,52:q,53:46,55:47,67:c1,68:m1,93:v1,97:V1,107:x1,108:R1,111:L1,113:I1,114:N1,118:48,124:O1,125:P1,126:w1,127:U1,128:M1,129:G1},{22:b1,67:k1,68:D1,88:g1,98:244,104:F1,107:C1,109:245,110:246,111:_1,112:B1,113:T1,114:y1,115:S1},{22:b1,67:k1,68:D1,88:g1,98:258,104:F1,107:C1,109:245,110:246,111:_1,112:B1,113:T1,114:y1,115:S1},{22:b1,67:k1,68:D1,88:g1,98:259,104:F1,106:[1,260],107:C1,109:245,110:246,111:_1,112:B1,113:T1,114:y1,115:S1},{22:b1,67:k1,68:D1,88:g1,98:261,104:F1,106:[1,262],107:C1,109:245,110:246,111:_1,112:B1,113:T1,114:y1,115:S1},{107:[1,263]},{22:b1,67:k1,68:D1,88:g1,98:264,104:F1,107:C1,109:245,110:246,111:_1,112:B1,113:T1,114:y1,115:S1},{22:b1,67:k1,68:D1,88:g1,98:265,104:F1,107:C1,109:245,110:246,111:_1,112:B1,113:T1,114:y1,115:S1},{26:r1,52:l,67:h,68:A,93:i1,99:266,107:f,108:p,111:n1,113:d,114:E,117:101,119:99,124:b,125:k,126:D,127:g,128:F,129:C},e(Y,[2,104]),{85:[1,267]},e(Y,[2,108],{22:[1,268]}),e(Y,[2,109]),e(Y,[2,112]),e(Y,[2,114],{22:[1,269]}),e(Y,[2,115]),e(t1,[2,59]),e(t1,[2,60]),{22:S,24:m,26:v,38:V,42:x,52:l,59:[1,270],67:h,68:A,74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},e(t1,[2,67]),e(t1,[2,62]),e(t1,[2,63]),e(t1,[2,64]),{67:[1,271]},e(t1,[2,66]),e(t1,[2,68]),{22:S,24:m,26:v,38:V,42:x,52:l,67:h,68:A,73:[1,272],74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},e(t1,[2,70]),e(t1,[2,71]),e(t1,[2,73]),e(t1,[2,72]),e(t1,[2,74]),e(z2,[2,4]),e([22,52,67,68,93,97,107,108,111,113,114,124,125,126,127,128,129],[2,82]),{22:S,24:m,26:v,38:V,41:[1,273],42:x,52:l,67:h,68:A,74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{18:18,19:19,20:u1,21:H,22:s1,23:f1,32:24,33:25,34:26,35:27,36:28,37:29,38:Y1,42:[1,274],43:31,44:Q1,46:X1,48:s2,50:35,51:45,52:q,53:46,55:47,67:c1,68:m1,88:o2,89:l2,90:h2,91:A2,92:f2,93:v1,97:V1,107:x1,108:R1,111:L1,113:I1,114:N1,118:48,120:p2,121:d2,122:E2,123:b2,124:O1,125:P1,126:w1,127:U1,128:M1,129:G1},e(D2,[2,56]),e(Y,[2,117],{108:z1}),e(Q2,[2,127],{110:276,22:b1,67:k1,68:D1,88:g1,104:F1,107:C1,111:_1,112:B1,113:T1,114:y1,115:S1}),e(o1,[2,129]),e(o1,[2,131]),e(o1,[2,132]),e(o1,[2,133]),e(o1,[2,134]),e(o1,[2,135]),e(o1,[2,136]),e(o1,[2,137]),e(o1,[2,138]),e(o1,[2,139]),e(o1,[2,140]),e(o1,[2,141]),e(Y,[2,118],{108:z1}),e(Y,[2,119],{108:z1}),{22:[1,277]},e(Y,[2,120],{108:z1}),{22:[1,278]},e(H2,[2,126]),e(Y,[2,100],{108:z1}),e(Y,[2,101],{108:z1}),e(Y,[2,102],{117:101,119:180,26:r1,52:l,67:h,68:A,93:i1,107:f,108:p,111:n1,113:d,114:E,124:b,125:k,126:D,127:g,128:F,129:C}),e(Y,[2,106]),{103:[1,279]},{103:[1,280]},{59:[1,281]},{69:[1,282]},{73:[1,283]},{9:284,20:p1,21:d1,23:E1},e(Q,[2,42]),{22:b1,67:k1,68:D1,88:g1,104:F1,107:C1,109:285,110:246,111:_1,112:B1,113:T1,114:y1,115:S1},e(o1,[2,130]),{26:r1,52:l,67:h,68:A,93:i1,99:286,107:f,108:p,111:n1,113:d,114:E,117:101,119:99,124:b,125:k,126:D,127:g,128:F,129:C},{26:r1,52:l,67:h,68:A,93:i1,99:287,107:f,108:p,111:n1,113:d,114:E,117:101,119:99,124:b,125:k,126:D,127:g,128:F,129:C},e(Y,[2,110]),e(Y,[2,116]),e(t1,[2,61]),{22:S,24:m,26:v,38:V,39:288,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},e(t1,[2,69]),e(V2,B,{17:289}),e(Q2,[2,128],{110:276,22:b1,67:k1,68:D1,88:g1,104:F1,107:C1,111:_1,112:B1,113:T1,114:y1,115:S1}),e(Y,[2,123],{117:101,119:180,22:[1,290],26:r1,52:l,67:h,68:A,93:i1,107:f,108:p,111:n1,113:d,114:E,124:b,125:k,126:D,127:g,128:F,129:C}),e(Y,[2,124],{117:101,119:180,22:[1,291],26:r1,52:l,67:h,68:A,93:i1,107:f,108:p,111:n1,113:d,114:E,124:b,125:k,126:D,127:g,128:F,129:C}),{22:S,24:m,26:v,38:V,41:[1,292],42:x,52:l,67:h,68:A,74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{18:18,19:19,20:u1,21:H,22:s1,23:f1,32:24,33:25,34:26,35:27,36:28,37:29,38:Y1,42:[1,293],43:31,44:Q1,46:X1,48:s2,50:35,51:45,52:q,53:46,55:47,67:c1,68:m1,88:o2,89:l2,90:h2,91:A2,92:f2,93:v1,97:V1,107:x1,108:R1,111:L1,113:I1,114:N1,118:48,120:p2,121:d2,122:E2,123:b2,124:O1,125:P1,126:w1,127:U1,128:M1,129:G1},{22:b1,67:k1,68:D1,88:g1,98:294,104:F1,107:C1,109:245,110:246,111:_1,112:B1,113:T1,114:y1,115:S1},{22:b1,67:k1,68:D1,88:g1,98:295,104:F1,107:C1,109:245,110:246,111:_1,112:B1,113:T1,114:y1,115:S1},e(t1,[2,65]),e(Q,[2,41]),e(Y,[2,121],{108:z1}),e(Y,[2,122],{108:z1})],defaultActions:{2:[2,1],9:[2,5],10:[2,2],133:[2,7]},parseError:function(a,o){if(o.recoverable)this.trace(a);else{var T=new Error(a);throw T.hash=o,T}},parse:function(a){var o=this,T=[0],n=[],X=[null],t=[],i2=this.table,s="",l1=0,X2=0,xe=2,q2=1,Re=t.slice.call(arguments,1),e1=Object.create(this.lexer),q1={yy:{}};for(var L2 in this.yy)Object.prototype.hasOwnProperty.call(this.yy,L2)&&(q1.yy[L2]=this.yy[L2]);e1.setInput(a,q1.yy),q1.yy.lexer=e1,q1.yy.parser=this,typeof e1.yylloc>"u"&&(e1.yylloc={});var I2=e1.yylloc;t.push(I2);var Le=e1.options&&e1.options.ranges;typeof q1.yy.parseError=="function"?this.parseError=q1.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ie(){var j1;return j1=n.pop()||e1.lex()||q2,typeof j1!="number"&&(j1 instanceof Array&&(n=j1,j1=n.pop()),j1=o.symbols_[j1]||j1),j1}for(var a1,Z1,h1,N2,e2={},g2,K1,Z2,F2;;){if(Z1=T[T.length-1],this.defaultActions[Z1]?h1=this.defaultActions[Z1]:((a1===null||typeof a1>"u")&&(a1=Ie()),h1=i2[Z1]&&i2[Z1][a1]),typeof h1>"u"||!h1.length||!h1[0]){var O2="";F2=[];for(g2 in i2[Z1])this.terminals_[g2]&&g2>xe&&F2.push("'"+this.terminals_[g2]+"'");e1.showPosition?O2="Parse error on line "+(l1+1)+`: +import{c as U2,u as Ne,s as Oe,g as Pe,a as we,b as Ue,v as Me,x as Ge,m as Ke,l as M2,y as G2,z as je,j as We,h as n2}from"../app.3c4fe3d0.js";var P2=function(){var e=function(H1,a,o,T){for(o=o||{},T=H1.length;T--;o[H1[T]]=a);return o},u=[1,9],r=[1,7],i=[1,6],c=[1,8],_=[1,20,21,22,23,38,44,46,48,52,67,68,88,89,90,91,92,93,97,107,108,111,113,114,120,121,122,123,124,125,126,127,128,129],B=[2,10],u1=[1,20],H=[1,21],s1=[1,22],f1=[1,23],Y1=[1,30],Q1=[1,32],X1=[1,33],s2=[1,34],q=[1,63],c1=[1,49],m1=[1,53],o2=[1,36],l2=[1,37],h2=[1,38],A2=[1,39],f2=[1,40],v1=[1,57],V1=[1,64],x1=[1,52],R1=[1,54],L1=[1,56],I1=[1,60],N1=[1,61],p2=[1,41],d2=[1,42],E2=[1,43],b2=[1,44],O1=[1,62],P1=[1,51],w1=[1,55],U1=[1,58],M1=[1,59],G1=[1,50],j2=[1,67],u2=[1,72],Q=[1,20,21,22,23,38,42,44,46,48,52,67,68,88,89,90,91,92,93,97,107,108,111,113,114,120,121,122,123,124,125,126,127,128,129],p1=[1,76],d1=[1,75],E1=[1,77],k2=[20,21,23,82,83],r1=[1,100],l=[1,105],h=[1,108],A=[1,109],i1=[1,102],f=[1,107],p=[1,110],n1=[1,103],d=[1,115],E=[1,114],b=[1,104],k=[1,106],D=[1,111],g=[1,112],F=[1,113],C=[1,116],D2=[20,21,22,23,82,83],t1=[20,21,22,23,54,82,83],Z=[20,21,22,23,40,52,54,56,58,60,62,64,66,67,68,70,72,74,75,77,82,83,93,97,107,108,111,113,114,124,125,126,127,128,129],Y=[20,21,23],W2=[20,21,23,52,67,68,82,83,93,97,107,108,111,113,114,124,125,126,127,128,129],v2=[1,12,20,21,22,23,24,38,42,44,46,48,52,67,68,88,89,90,91,92,93,97,107,108,111,113,114,120,121,122,123,124,125,126,127,128,129],r2=[52,67,68,93,97,107,108,111,113,114,124,125,126,127,128,129],S=[1,151],m=[1,159],v=[1,160],V=[1,161],x=[1,162],R=[1,146],L=[1,147],J=[1,142],$=[1,143],I=[1,154],N=[1,155],O=[1,156],P=[1,157],w=[1,158],U=[1,163],M=[1,164],G=[1,149],K=[1,152],j=[1,148],W=[1,145],V2=[20,21,22,23,38,42,44,46,48,52,67,68,88,89,90,91,92,93,97,107,108,111,113,114,120,121,122,123,124,125,126,127,128,129],Y2=[1,167],$1=[20,21,22,23,26,52,67,68,93,107,108,111,113,114,124,125,126,127,128,129],y=[20,21,22,23,24,26,38,40,41,42,52,57,59,61,63,65,67,68,69,71,73,74,76,78,82,83,88,89,90,91,92,93,94,97,107,108,111,113,114,115,116,124,125,126,127,128,129],z2=[12,21,22,24],H2=[22,108],b1=[1,252],k1=[1,247],D1=[1,248],g1=[1,256],F1=[1,253],C1=[1,250],_1=[1,249],B1=[1,251],T1=[1,254],y1=[1,255],S1=[1,257],z1=[1,275],Q2=[20,21,23,108],o1=[20,21,22,23,67,68,88,104,107,108,111,112,113,114,115],x2={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,directive:5,openDirective:6,typeDirective:7,closeDirective:8,separator:9,":":10,argDirective:11,open_directive:12,type_directive:13,arg_directive:14,close_directive:15,graphConfig:16,document:17,line:18,statement:19,SEMI:20,NEWLINE:21,SPACE:22,EOF:23,GRAPH:24,NODIR:25,DIR:26,FirstStmtSeperator:27,ending:28,endToken:29,spaceList:30,spaceListNewline:31,verticeStatement:32,styleStatement:33,linkStyleStatement:34,classDefStatement:35,classStatement:36,clickStatement:37,subgraph:38,text:39,SQS:40,SQE:41,end:42,direction:43,acc_title:44,acc_title_value:45,acc_descr:46,acc_descr_value:47,acc_descr_multiline_value:48,link:49,node:50,styledVertex:51,AMP:52,vertex:53,STYLE_SEPARATOR:54,idString:55,DOUBLECIRCLESTART:56,DOUBLECIRCLEEND:57,PS:58,PE:59,"(-":60,"-)":61,STADIUMSTART:62,STADIUMEND:63,SUBROUTINESTART:64,SUBROUTINEEND:65,VERTEX_WITH_PROPS_START:66,ALPHA:67,COLON:68,PIPE:69,CYLINDERSTART:70,CYLINDEREND:71,DIAMOND_START:72,DIAMOND_STOP:73,TAGEND:74,TRAPSTART:75,TRAPEND:76,INVTRAPSTART:77,INVTRAPEND:78,linkStatement:79,arrowText:80,TESTSTR:81,START_LINK:82,LINK:83,textToken:84,STR:85,MD_STR:86,keywords:87,STYLE:88,LINKSTYLE:89,CLASSDEF:90,CLASS:91,CLICK:92,DOWN:93,UP:94,textNoTags:95,textNoTagsToken:96,DEFAULT:97,stylesOpt:98,alphaNum:99,CALLBACKNAME:100,CALLBACKARGS:101,HREF:102,LINK_TARGET:103,HEX:104,numList:105,INTERPOLATE:106,NUM:107,COMMA:108,style:109,styleComponent:110,MINUS:111,UNIT:112,BRKT:113,DOT:114,PCT:115,TAGSTART:116,alphaNumToken:117,idStringToken:118,alphaNumStatement:119,direction_tb:120,direction_bt:121,direction_rl:122,direction_lr:123,PUNCTUATION:124,UNICODE_TEXT:125,PLUS:126,EQUALS:127,MULT:128,UNDERSCORE:129,graphCodeTokens:130,ARROW_CROSS:131,ARROW_POINT:132,ARROW_CIRCLE:133,ARROW_OPEN:134,QUOTE:135,$accept:0,$end:1},terminals_:{2:"error",10:":",12:"open_directive",13:"type_directive",14:"arg_directive",15:"close_directive",20:"SEMI",21:"NEWLINE",22:"SPACE",23:"EOF",24:"GRAPH",25:"NODIR",26:"DIR",38:"subgraph",40:"SQS",41:"SQE",42:"end",44:"acc_title",45:"acc_title_value",46:"acc_descr",47:"acc_descr_value",48:"acc_descr_multiline_value",52:"AMP",54:"STYLE_SEPARATOR",56:"DOUBLECIRCLESTART",57:"DOUBLECIRCLEEND",58:"PS",59:"PE",60:"(-",61:"-)",62:"STADIUMSTART",63:"STADIUMEND",64:"SUBROUTINESTART",65:"SUBROUTINEEND",66:"VERTEX_WITH_PROPS_START",67:"ALPHA",68:"COLON",69:"PIPE",70:"CYLINDERSTART",71:"CYLINDEREND",72:"DIAMOND_START",73:"DIAMOND_STOP",74:"TAGEND",75:"TRAPSTART",76:"TRAPEND",77:"INVTRAPSTART",78:"INVTRAPEND",81:"TESTSTR",82:"START_LINK",83:"LINK",85:"STR",86:"MD_STR",88:"STYLE",89:"LINKSTYLE",90:"CLASSDEF",91:"CLASS",92:"CLICK",93:"DOWN",94:"UP",97:"DEFAULT",100:"CALLBACKNAME",101:"CALLBACKARGS",102:"HREF",103:"LINK_TARGET",104:"HEX",106:"INTERPOLATE",107:"NUM",108:"COMMA",111:"MINUS",112:"UNIT",113:"BRKT",114:"DOT",115:"PCT",116:"TAGSTART",120:"direction_tb",121:"direction_bt",122:"direction_rl",123:"direction_lr",124:"PUNCTUATION",125:"UNICODE_TEXT",126:"PLUS",127:"EQUALS",128:"MULT",129:"UNDERSCORE",131:"ARROW_CROSS",132:"ARROW_POINT",133:"ARROW_CIRCLE",134:"ARROW_OPEN",135:"QUOTE"},productions_:[0,[3,1],[3,2],[5,4],[5,6],[6,1],[7,1],[11,1],[8,1],[4,2],[17,0],[17,2],[18,1],[18,1],[18,1],[18,1],[18,1],[16,2],[16,2],[16,2],[16,3],[28,2],[28,1],[29,1],[29,1],[29,1],[27,1],[27,1],[27,2],[31,2],[31,2],[31,1],[31,1],[30,2],[30,1],[19,2],[19,2],[19,2],[19,2],[19,2],[19,2],[19,9],[19,6],[19,4],[19,1],[19,2],[19,2],[19,1],[9,1],[9,1],[9,1],[32,3],[32,4],[32,2],[32,1],[50,1],[50,5],[51,1],[51,3],[53,4],[53,4],[53,6],[53,4],[53,4],[53,4],[53,8],[53,4],[53,4],[53,4],[53,6],[53,4],[53,4],[53,4],[53,4],[53,4],[53,1],[49,2],[49,3],[49,3],[49,1],[49,3],[79,1],[80,3],[39,1],[39,2],[39,1],[39,1],[87,1],[87,1],[87,1],[87,1],[87,1],[87,1],[87,1],[87,1],[87,1],[87,1],[87,1],[95,1],[95,2],[35,5],[35,5],[36,5],[37,2],[37,4],[37,3],[37,5],[37,2],[37,4],[37,4],[37,6],[37,2],[37,4],[37,2],[37,4],[37,4],[37,6],[33,5],[33,5],[34,5],[34,5],[34,9],[34,9],[34,7],[34,7],[105,1],[105,3],[98,1],[98,3],[109,1],[109,2],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[84,1],[84,1],[84,1],[84,1],[84,1],[84,1],[96,1],[96,1],[96,1],[96,1],[55,1],[55,2],[99,1],[99,2],[119,1],[119,1],[119,1],[119,1],[43,1],[43,1],[43,1],[43,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[118,1],[118,1],[118,1],[118,1],[118,1],[118,1],[118,1],[118,1],[118,1],[118,1],[118,1],[118,1],[118,1],[118,1],[118,1],[118,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1],[130,1]],performAction:function(a,o,T,n,X,t,i2){var s=t.length-1;switch(X){case 5:n.parseDirective("%%{","open_directive");break;case 6:n.parseDirective(t[s],"type_directive");break;case 7:t[s]=t[s].trim().replace(/'/g,'"'),n.parseDirective(t[s],"arg_directive");break;case 8:n.parseDirective("}%%","close_directive","flowchart");break;case 10:this.$=[];break;case 11:(!Array.isArray(t[s])||t[s].length>0)&&t[s-1].push(t[s]),this.$=t[s-1];break;case 12:case 98:case 154:case 156:case 157:this.$=t[s];break;case 19:n.setDirection("TB"),this.$="TB";break;case 20:n.setDirection(t[s-1]),this.$=t[s-1];break;case 35:this.$=t[s-1].nodes;break;case 36:case 37:case 38:case 39:case 40:this.$=[];break;case 41:this.$=n.addSubGraph(t[s-6],t[s-1],t[s-4]);break;case 42:this.$=n.addSubGraph(t[s-3],t[s-1],t[s-3]);break;case 43:this.$=n.addSubGraph(void 0,t[s-1],void 0);break;case 45:this.$=t[s].trim(),n.setAccTitle(this.$);break;case 46:case 47:this.$=t[s].trim(),n.setAccDescription(this.$);break;case 51:n.addLink(t[s-2].stmt,t[s],t[s-1]),this.$={stmt:t[s],nodes:t[s].concat(t[s-2].nodes)};break;case 52:n.addLink(t[s-3].stmt,t[s-1],t[s-2]),this.$={stmt:t[s-1],nodes:t[s-1].concat(t[s-3].nodes)};break;case 53:this.$={stmt:t[s-1],nodes:t[s-1]};break;case 54:this.$={stmt:t[s],nodes:t[s]};break;case 55:this.$=[t[s]];break;case 56:this.$=t[s-4].concat(t[s]);break;case 57:this.$=t[s];break;case 58:this.$=t[s-2],n.setClass(t[s-2],t[s]);break;case 59:this.$=t[s-3],n.addVertex(t[s-3],t[s-1],"square");break;case 60:this.$=t[s-3],n.addVertex(t[s-3],t[s-1],"doublecircle");break;case 61:this.$=t[s-5],n.addVertex(t[s-5],t[s-2],"circle");break;case 62:this.$=t[s-3],n.addVertex(t[s-3],t[s-1],"ellipse");break;case 63:this.$=t[s-3],n.addVertex(t[s-3],t[s-1],"stadium");break;case 64:this.$=t[s-3],n.addVertex(t[s-3],t[s-1],"subroutine");break;case 65:this.$=t[s-7],n.addVertex(t[s-7],t[s-1],"rect",void 0,void 0,void 0,Object.fromEntries([[t[s-5],t[s-3]]]));break;case 66:this.$=t[s-3],n.addVertex(t[s-3],t[s-1],"cylinder");break;case 67:this.$=t[s-3],n.addVertex(t[s-3],t[s-1],"round");break;case 68:this.$=t[s-3],n.addVertex(t[s-3],t[s-1],"diamond");break;case 69:this.$=t[s-5],n.addVertex(t[s-5],t[s-2],"hexagon");break;case 70:this.$=t[s-3],n.addVertex(t[s-3],t[s-1],"odd");break;case 71:this.$=t[s-3],n.addVertex(t[s-3],t[s-1],"trapezoid");break;case 72:this.$=t[s-3],n.addVertex(t[s-3],t[s-1],"inv_trapezoid");break;case 73:this.$=t[s-3],n.addVertex(t[s-3],t[s-1],"lean_right");break;case 74:this.$=t[s-3],n.addVertex(t[s-3],t[s-1],"lean_left");break;case 75:this.$=t[s],n.addVertex(t[s]);break;case 76:t[s-1].text=t[s],this.$=t[s-1];break;case 77:case 78:t[s-2].text=t[s-1],this.$=t[s-2];break;case 79:this.$=t[s];break;case 80:var l1=n.destructLink(t[s],t[s-2]);this.$={type:l1.type,stroke:l1.stroke,length:l1.length,text:t[s-1]};break;case 81:var l1=n.destructLink(t[s]);this.$={type:l1.type,stroke:l1.stroke,length:l1.length};break;case 82:this.$=t[s-1];break;case 83:this.$={text:t[s],type:"text"};break;case 84:this.$={text:t[s-1].text+""+t[s],type:t[s-1].type};break;case 85:this.$={text:t[s],type:"text"};break;case 86:this.$={text:t[s],type:"markdown"};break;case 99:case 155:this.$=t[s-1]+""+t[s];break;case 100:case 101:this.$=t[s-4],n.addClass(t[s-2],t[s]);break;case 102:this.$=t[s-4],n.setClass(t[s-2],t[s]);break;case 103:case 111:this.$=t[s-1],n.setClickEvent(t[s-1],t[s]);break;case 104:case 112:this.$=t[s-3],n.setClickEvent(t[s-3],t[s-2]),n.setTooltip(t[s-3],t[s]);break;case 105:this.$=t[s-2],n.setClickEvent(t[s-2],t[s-1],t[s]);break;case 106:this.$=t[s-4],n.setClickEvent(t[s-4],t[s-3],t[s-2]),n.setTooltip(t[s-4],t[s]);break;case 107:case 113:this.$=t[s-1],n.setLink(t[s-1],t[s]);break;case 108:case 114:this.$=t[s-3],n.setLink(t[s-3],t[s-2]),n.setTooltip(t[s-3],t[s]);break;case 109:case 115:this.$=t[s-3],n.setLink(t[s-3],t[s-2],t[s]);break;case 110:case 116:this.$=t[s-5],n.setLink(t[s-5],t[s-4],t[s]),n.setTooltip(t[s-5],t[s-2]);break;case 117:this.$=t[s-4],n.addVertex(t[s-2],void 0,void 0,t[s]);break;case 118:case 120:this.$=t[s-4],n.updateLink(t[s-2],t[s]);break;case 119:this.$=t[s-4],n.updateLink([t[s-2]],t[s]);break;case 121:this.$=t[s-8],n.updateLinkInterpolate([t[s-6]],t[s-2]),n.updateLink([t[s-6]],t[s]);break;case 122:this.$=t[s-8],n.updateLinkInterpolate(t[s-6],t[s-2]),n.updateLink(t[s-6],t[s]);break;case 123:this.$=t[s-6],n.updateLinkInterpolate([t[s-4]],t[s]);break;case 124:this.$=t[s-6],n.updateLinkInterpolate(t[s-4],t[s]);break;case 125:case 127:this.$=[t[s]];break;case 126:case 128:t[s-2].push(t[s]),this.$=t[s-2];break;case 130:this.$=t[s-1]+t[s];break;case 152:this.$=t[s];break;case 153:this.$=t[s-1]+""+t[s];break;case 158:this.$="v";break;case 159:this.$="-";break;case 160:this.$={stmt:"dir",value:"TB"};break;case 161:this.$={stmt:"dir",value:"BT"};break;case 162:this.$={stmt:"dir",value:"RL"};break;case 163:this.$={stmt:"dir",value:"LR"};break}},table:[{3:1,4:2,5:3,6:5,12:u,16:4,21:r,22:i,24:c},{1:[3]},{1:[2,1]},{3:10,4:2,5:3,6:5,12:u,16:4,21:r,22:i,24:c},e(_,B,{17:11}),{7:12,13:[1,13]},{16:14,21:r,22:i,24:c},{16:15,21:r,22:i,24:c},{25:[1,16],26:[1,17]},{13:[2,5]},{1:[2,2]},{1:[2,9],18:18,19:19,20:u1,21:H,22:s1,23:f1,32:24,33:25,34:26,35:27,36:28,37:29,38:Y1,43:31,44:Q1,46:X1,48:s2,50:35,51:45,52:q,53:46,55:47,67:c1,68:m1,88:o2,89:l2,90:h2,91:A2,92:f2,93:v1,97:V1,107:x1,108:R1,111:L1,113:I1,114:N1,118:48,120:p2,121:d2,122:E2,123:b2,124:O1,125:P1,126:w1,127:U1,128:M1,129:G1},{8:65,10:[1,66],15:j2},e([10,15],[2,6]),e(_,[2,17]),e(_,[2,18]),e(_,[2,19]),{20:[1,69],21:[1,70],22:u2,27:68,30:71},e(Q,[2,11]),e(Q,[2,12]),e(Q,[2,13]),e(Q,[2,14]),e(Q,[2,15]),e(Q,[2,16]),{9:73,20:p1,21:d1,23:E1,49:74,79:78,82:[1,79],83:[1,80]},{9:81,20:p1,21:d1,23:E1},{9:82,20:p1,21:d1,23:E1},{9:83,20:p1,21:d1,23:E1},{9:84,20:p1,21:d1,23:E1},{9:85,20:p1,21:d1,23:E1},{9:87,20:p1,21:d1,22:[1,86],23:E1},e(Q,[2,44]),{45:[1,88]},{47:[1,89]},e(Q,[2,47]),e(k2,[2,54],{30:90,22:u2}),{22:[1,91]},{22:[1,92]},{22:[1,93]},{22:[1,94]},{26:r1,52:l,67:h,68:A,85:[1,98],93:i1,99:97,100:[1,95],102:[1,96],107:f,108:p,111:n1,113:d,114:E,117:101,119:99,124:b,125:k,126:D,127:g,128:F,129:C},e(Q,[2,160]),e(Q,[2,161]),e(Q,[2,162]),e(Q,[2,163]),e(D2,[2,55]),e(D2,[2,57],{54:[1,117]}),e(t1,[2,75],{118:130,40:[1,118],52:q,56:[1,119],58:[1,120],60:[1,121],62:[1,122],64:[1,123],66:[1,124],67:c1,68:m1,70:[1,125],72:[1,126],74:[1,127],75:[1,128],77:[1,129],93:v1,97:V1,107:x1,108:R1,111:L1,113:I1,114:N1,124:O1,125:P1,126:w1,127:U1,128:M1,129:G1}),e(Z,[2,152]),e(Z,[2,177]),e(Z,[2,178]),e(Z,[2,179]),e(Z,[2,180]),e(Z,[2,181]),e(Z,[2,182]),e(Z,[2,183]),e(Z,[2,184]),e(Z,[2,185]),e(Z,[2,186]),e(Z,[2,187]),e(Z,[2,188]),e(Z,[2,189]),e(Z,[2,190]),e(Z,[2,191]),e(Z,[2,192]),{9:131,20:p1,21:d1,23:E1},{11:132,14:[1,133]},e(Y,[2,8]),e(_,[2,20]),e(_,[2,26]),e(_,[2,27]),{21:[1,134]},e(W2,[2,34],{30:135,22:u2}),e(Q,[2,35]),{50:136,51:45,52:q,53:46,55:47,67:c1,68:m1,93:v1,97:V1,107:x1,108:R1,111:L1,113:I1,114:N1,118:48,124:O1,125:P1,126:w1,127:U1,128:M1,129:G1},e(v2,[2,48]),e(v2,[2,49]),e(v2,[2,50]),e(r2,[2,79],{80:137,69:[1,139],81:[1,138]}),{22:S,24:m,26:v,38:V,39:140,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},e([52,67,68,69,81,93,97,107,108,111,113,114,124,125,126,127,128,129],[2,81]),e(Q,[2,36]),e(Q,[2,37]),e(Q,[2,38]),e(Q,[2,39]),e(Q,[2,40]),{22:S,24:m,26:v,38:V,39:165,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},e(V2,B,{17:166}),e(Q,[2,45]),e(Q,[2,46]),e(k2,[2,53],{52:Y2}),{26:r1,52:l,67:h,68:A,93:i1,99:168,104:[1,169],107:f,108:p,111:n1,113:d,114:E,117:101,119:99,124:b,125:k,126:D,127:g,128:F,129:C},{97:[1,170],105:171,107:[1,172]},{26:r1,52:l,67:h,68:A,93:i1,97:[1,173],99:174,107:f,108:p,111:n1,113:d,114:E,117:101,119:99,124:b,125:k,126:D,127:g,128:F,129:C},{26:r1,52:l,67:h,68:A,93:i1,99:175,107:f,108:p,111:n1,113:d,114:E,117:101,119:99,124:b,125:k,126:D,127:g,128:F,129:C},e(Y,[2,103],{22:[1,176],101:[1,177]}),e(Y,[2,107],{22:[1,178]}),e(Y,[2,111],{117:101,119:180,22:[1,179],26:r1,52:l,67:h,68:A,93:i1,107:f,108:p,111:n1,113:d,114:E,124:b,125:k,126:D,127:g,128:F,129:C}),e(Y,[2,113],{22:[1,181]}),e($1,[2,154]),e($1,[2,156]),e($1,[2,157]),e($1,[2,158]),e($1,[2,159]),e(y,[2,164]),e(y,[2,165]),e(y,[2,166]),e(y,[2,167]),e(y,[2,168]),e(y,[2,169]),e(y,[2,170]),e(y,[2,171]),e(y,[2,172]),e(y,[2,173]),e(y,[2,174]),e(y,[2,175]),e(y,[2,176]),{52:q,55:182,67:c1,68:m1,93:v1,97:V1,107:x1,108:R1,111:L1,113:I1,114:N1,118:48,124:O1,125:P1,126:w1,127:U1,128:M1,129:G1},{22:S,24:m,26:v,38:V,39:183,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,39:184,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,39:186,42:x,52:l,58:[1,185],67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,39:187,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,39:188,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,39:189,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{67:[1,190]},{22:S,24:m,26:v,38:V,39:191,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,39:192,42:x,52:l,67:h,68:A,72:[1,193],74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,39:194,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,39:195,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,39:196,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},e(Z,[2,153]),e(z2,[2,3]),{8:197,15:j2},{15:[2,7]},e(_,[2,28]),e(W2,[2,33]),e(k2,[2,51],{30:198,22:u2}),e(r2,[2,76],{22:[1,199]}),{22:[1,200]},{22:S,24:m,26:v,38:V,39:201,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,42:x,52:l,67:h,68:A,74:R,82:L,83:[1,202],84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},e(y,[2,83]),e(y,[2,85]),e(y,[2,86]),e(y,[2,142]),e(y,[2,143]),e(y,[2,144]),e(y,[2,145]),e(y,[2,146]),e(y,[2,147]),e(y,[2,148]),e(y,[2,149]),e(y,[2,150]),e(y,[2,151]),e(y,[2,87]),e(y,[2,88]),e(y,[2,89]),e(y,[2,90]),e(y,[2,91]),e(y,[2,92]),e(y,[2,93]),e(y,[2,94]),e(y,[2,95]),e(y,[2,96]),e(y,[2,97]),{9:205,20:p1,21:d1,22:S,23:E1,24:m,26:v,38:V,40:[1,204],42:x,52:l,67:h,68:A,74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{18:18,19:19,20:u1,21:H,22:s1,23:f1,32:24,33:25,34:26,35:27,36:28,37:29,38:Y1,42:[1,206],43:31,44:Q1,46:X1,48:s2,50:35,51:45,52:q,53:46,55:47,67:c1,68:m1,88:o2,89:l2,90:h2,91:A2,92:f2,93:v1,97:V1,107:x1,108:R1,111:L1,113:I1,114:N1,118:48,120:p2,121:d2,122:E2,123:b2,124:O1,125:P1,126:w1,127:U1,128:M1,129:G1},{22:u2,30:207},{22:[1,208],26:r1,52:l,67:h,68:A,93:i1,107:f,108:p,111:n1,113:d,114:E,117:101,119:180,124:b,125:k,126:D,127:g,128:F,129:C},{22:[1,209]},{22:[1,210]},{22:[1,211],108:[1,212]},e(H2,[2,125]),{22:[1,213]},{22:[1,214],26:r1,52:l,67:h,68:A,93:i1,107:f,108:p,111:n1,113:d,114:E,117:101,119:180,124:b,125:k,126:D,127:g,128:F,129:C},{22:[1,215],26:r1,52:l,67:h,68:A,93:i1,107:f,108:p,111:n1,113:d,114:E,117:101,119:180,124:b,125:k,126:D,127:g,128:F,129:C},{85:[1,216]},e(Y,[2,105],{22:[1,217]}),{85:[1,218],103:[1,219]},{85:[1,220]},e($1,[2,155]),{85:[1,221],103:[1,222]},e(D2,[2,58],{118:130,52:q,67:c1,68:m1,93:v1,97:V1,107:x1,108:R1,111:L1,113:I1,114:N1,124:O1,125:P1,126:w1,127:U1,128:M1,129:G1}),{22:S,24:m,26:v,38:V,41:[1,223],42:x,52:l,67:h,68:A,74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,42:x,52:l,57:[1,224],67:h,68:A,74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,39:225,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,42:x,52:l,59:[1,226],67:h,68:A,74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,42:x,52:l,61:[1,227],67:h,68:A,74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,42:x,52:l,63:[1,228],67:h,68:A,74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,42:x,52:l,65:[1,229],67:h,68:A,74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{68:[1,230]},{22:S,24:m,26:v,38:V,42:x,52:l,67:h,68:A,71:[1,231],74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,42:x,52:l,67:h,68:A,73:[1,232],74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,39:233,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,41:[1,234],42:x,52:l,67:h,68:A,74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,42:x,52:l,67:h,68:A,74:R,76:[1,235],78:[1,236],82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{22:S,24:m,26:v,38:V,42:x,52:l,67:h,68:A,74:R,76:[1,238],78:[1,237],82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{9:239,20:p1,21:d1,23:E1},e(k2,[2,52],{52:Y2}),e(r2,[2,78]),e(r2,[2,77]),{22:S,24:m,26:v,38:V,42:x,52:l,67:h,68:A,69:[1,240],74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},e(r2,[2,80]),e(y,[2,84]),{22:S,24:m,26:v,38:V,39:241,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},e(V2,B,{17:242}),e(Q,[2,43]),{51:243,52:q,53:46,55:47,67:c1,68:m1,93:v1,97:V1,107:x1,108:R1,111:L1,113:I1,114:N1,118:48,124:O1,125:P1,126:w1,127:U1,128:M1,129:G1},{22:b1,67:k1,68:D1,88:g1,98:244,104:F1,107:C1,109:245,110:246,111:_1,112:B1,113:T1,114:y1,115:S1},{22:b1,67:k1,68:D1,88:g1,98:258,104:F1,107:C1,109:245,110:246,111:_1,112:B1,113:T1,114:y1,115:S1},{22:b1,67:k1,68:D1,88:g1,98:259,104:F1,106:[1,260],107:C1,109:245,110:246,111:_1,112:B1,113:T1,114:y1,115:S1},{22:b1,67:k1,68:D1,88:g1,98:261,104:F1,106:[1,262],107:C1,109:245,110:246,111:_1,112:B1,113:T1,114:y1,115:S1},{107:[1,263]},{22:b1,67:k1,68:D1,88:g1,98:264,104:F1,107:C1,109:245,110:246,111:_1,112:B1,113:T1,114:y1,115:S1},{22:b1,67:k1,68:D1,88:g1,98:265,104:F1,107:C1,109:245,110:246,111:_1,112:B1,113:T1,114:y1,115:S1},{26:r1,52:l,67:h,68:A,93:i1,99:266,107:f,108:p,111:n1,113:d,114:E,117:101,119:99,124:b,125:k,126:D,127:g,128:F,129:C},e(Y,[2,104]),{85:[1,267]},e(Y,[2,108],{22:[1,268]}),e(Y,[2,109]),e(Y,[2,112]),e(Y,[2,114],{22:[1,269]}),e(Y,[2,115]),e(t1,[2,59]),e(t1,[2,60]),{22:S,24:m,26:v,38:V,42:x,52:l,59:[1,270],67:h,68:A,74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},e(t1,[2,67]),e(t1,[2,62]),e(t1,[2,63]),e(t1,[2,64]),{67:[1,271]},e(t1,[2,66]),e(t1,[2,68]),{22:S,24:m,26:v,38:V,42:x,52:l,67:h,68:A,73:[1,272],74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},e(t1,[2,70]),e(t1,[2,71]),e(t1,[2,73]),e(t1,[2,72]),e(t1,[2,74]),e(z2,[2,4]),e([22,52,67,68,93,97,107,108,111,113,114,124,125,126,127,128,129],[2,82]),{22:S,24:m,26:v,38:V,41:[1,273],42:x,52:l,67:h,68:A,74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{18:18,19:19,20:u1,21:H,22:s1,23:f1,32:24,33:25,34:26,35:27,36:28,37:29,38:Y1,42:[1,274],43:31,44:Q1,46:X1,48:s2,50:35,51:45,52:q,53:46,55:47,67:c1,68:m1,88:o2,89:l2,90:h2,91:A2,92:f2,93:v1,97:V1,107:x1,108:R1,111:L1,113:I1,114:N1,118:48,120:p2,121:d2,122:E2,123:b2,124:O1,125:P1,126:w1,127:U1,128:M1,129:G1},e(D2,[2,56]),e(Y,[2,117],{108:z1}),e(Q2,[2,127],{110:276,22:b1,67:k1,68:D1,88:g1,104:F1,107:C1,111:_1,112:B1,113:T1,114:y1,115:S1}),e(o1,[2,129]),e(o1,[2,131]),e(o1,[2,132]),e(o1,[2,133]),e(o1,[2,134]),e(o1,[2,135]),e(o1,[2,136]),e(o1,[2,137]),e(o1,[2,138]),e(o1,[2,139]),e(o1,[2,140]),e(o1,[2,141]),e(Y,[2,118],{108:z1}),e(Y,[2,119],{108:z1}),{22:[1,277]},e(Y,[2,120],{108:z1}),{22:[1,278]},e(H2,[2,126]),e(Y,[2,100],{108:z1}),e(Y,[2,101],{108:z1}),e(Y,[2,102],{117:101,119:180,26:r1,52:l,67:h,68:A,93:i1,107:f,108:p,111:n1,113:d,114:E,124:b,125:k,126:D,127:g,128:F,129:C}),e(Y,[2,106]),{103:[1,279]},{103:[1,280]},{59:[1,281]},{69:[1,282]},{73:[1,283]},{9:284,20:p1,21:d1,23:E1},e(Q,[2,42]),{22:b1,67:k1,68:D1,88:g1,104:F1,107:C1,109:285,110:246,111:_1,112:B1,113:T1,114:y1,115:S1},e(o1,[2,130]),{26:r1,52:l,67:h,68:A,93:i1,99:286,107:f,108:p,111:n1,113:d,114:E,117:101,119:99,124:b,125:k,126:D,127:g,128:F,129:C},{26:r1,52:l,67:h,68:A,93:i1,99:287,107:f,108:p,111:n1,113:d,114:E,117:101,119:99,124:b,125:k,126:D,127:g,128:F,129:C},e(Y,[2,110]),e(Y,[2,116]),e(t1,[2,61]),{22:S,24:m,26:v,38:V,39:288,42:x,52:l,67:h,68:A,74:R,82:L,84:141,85:J,86:$,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},e(t1,[2,69]),e(V2,B,{17:289}),e(Q2,[2,128],{110:276,22:b1,67:k1,68:D1,88:g1,104:F1,107:C1,111:_1,112:B1,113:T1,114:y1,115:S1}),e(Y,[2,123],{117:101,119:180,22:[1,290],26:r1,52:l,67:h,68:A,93:i1,107:f,108:p,111:n1,113:d,114:E,124:b,125:k,126:D,127:g,128:F,129:C}),e(Y,[2,124],{117:101,119:180,22:[1,291],26:r1,52:l,67:h,68:A,93:i1,107:f,108:p,111:n1,113:d,114:E,124:b,125:k,126:D,127:g,128:F,129:C}),{22:S,24:m,26:v,38:V,41:[1,292],42:x,52:l,67:h,68:A,74:R,82:L,84:203,87:153,88:I,89:N,90:O,91:P,92:w,93:U,94:M,96:144,97:G,107:f,108:p,111:K,113:d,114:E,115:j,116:W,117:150,124:b,125:k,126:D,127:g,128:F,129:C},{18:18,19:19,20:u1,21:H,22:s1,23:f1,32:24,33:25,34:26,35:27,36:28,37:29,38:Y1,42:[1,293],43:31,44:Q1,46:X1,48:s2,50:35,51:45,52:q,53:46,55:47,67:c1,68:m1,88:o2,89:l2,90:h2,91:A2,92:f2,93:v1,97:V1,107:x1,108:R1,111:L1,113:I1,114:N1,118:48,120:p2,121:d2,122:E2,123:b2,124:O1,125:P1,126:w1,127:U1,128:M1,129:G1},{22:b1,67:k1,68:D1,88:g1,98:294,104:F1,107:C1,109:245,110:246,111:_1,112:B1,113:T1,114:y1,115:S1},{22:b1,67:k1,68:D1,88:g1,98:295,104:F1,107:C1,109:245,110:246,111:_1,112:B1,113:T1,114:y1,115:S1},e(t1,[2,65]),e(Q,[2,41]),e(Y,[2,121],{108:z1}),e(Y,[2,122],{108:z1})],defaultActions:{2:[2,1],9:[2,5],10:[2,2],133:[2,7]},parseError:function(a,o){if(o.recoverable)this.trace(a);else{var T=new Error(a);throw T.hash=o,T}},parse:function(a){var o=this,T=[0],n=[],X=[null],t=[],i2=this.table,s="",l1=0,X2=0,xe=2,q2=1,Re=t.slice.call(arguments,1),e1=Object.create(this.lexer),q1={yy:{}};for(var L2 in this.yy)Object.prototype.hasOwnProperty.call(this.yy,L2)&&(q1.yy[L2]=this.yy[L2]);e1.setInput(a,q1.yy),q1.yy.lexer=e1,q1.yy.parser=this,typeof e1.yylloc>"u"&&(e1.yylloc={});var I2=e1.yylloc;t.push(I2);var Le=e1.options&&e1.options.ranges;typeof q1.yy.parseError=="function"?this.parseError=q1.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ie(){var j1;return j1=n.pop()||e1.lex()||q2,typeof j1!="number"&&(j1 instanceof Array&&(n=j1,j1=n.pop()),j1=o.symbols_[j1]||j1),j1}for(var a1,Z1,h1,N2,e2={},g2,K1,Z2,F2;;){if(Z1=T[T.length-1],this.defaultActions[Z1]?h1=this.defaultActions[Z1]:((a1===null||typeof a1>"u")&&(a1=Ie()),h1=i2[Z1]&&i2[Z1][a1]),typeof h1>"u"||!h1.length||!h1[0]){var O2="";F2=[];for(g2 in i2[Z1])this.terminals_[g2]&&g2>xe&&F2.push("'"+this.terminals_[g2]+"'");e1.showPosition?O2="Parse error on line "+(l1+1)+`: `+e1.showPosition()+` Expecting `+F2.join(", ")+", got '"+(this.terminals_[a1]||a1)+"'":O2="Parse error on line "+(l1+1)+": Unexpected "+(a1==q2?"end of input":"'"+(this.terminals_[a1]||a1)+"'"),this.parseError(O2,{text:e1.match,token:this.terminals_[a1]||a1,line:e1.yylineno,loc:I2,expected:F2})}if(h1[0]instanceof Array&&h1.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Z1+", token: "+a1);switch(h1[0]){case 1:T.push(a1),X.push(e1.yytext),t.push(e1.yylloc),T.push(h1[1]),a1=null,X2=e1.yyleng,s=e1.yytext,l1=e1.yylineno,I2=e1.yylloc;break;case 2:if(K1=this.productions_[h1[1]][1],e2.$=X[X.length-K1],e2._$={first_line:t[t.length-(K1||1)].first_line,last_line:t[t.length-1].last_line,first_column:t[t.length-(K1||1)].first_column,last_column:t[t.length-1].last_column},Le&&(e2._$.range=[t[t.length-(K1||1)].range[0],t[t.length-1].range[1]]),N2=this.performAction.apply(e2,[s,X2,l1,q1.yy,h1[1],X,t].concat(Re)),typeof N2<"u")return N2;K1&&(T=T.slice(0,-1*K1*2),X=X.slice(0,-1*K1),t=t.slice(0,-1*K1)),T.push(this.productions_[h1[1]][0]),X.push(e2.$),t.push(e2._$),Z2=i2[T[T.length-2]][T[T.length-1]],T.push(Z2);break;case 3:return!0}}return!0}},Ve=function(){var H1={EOF:1,parseError:function(o,T){if(this.yy.parser)this.yy.parser.parseError(o,T);else throw new Error(o)},setInput:function(a,o){return this.yy=o||this.yy||{},this._input=a,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var a=this._input[0];this.yytext+=a,this.yyleng++,this.offset++,this.match+=a,this.matched+=a;var o=a.match(/(?:\r\n?|\n).*/g);return o?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),a},unput:function(a){var o=a.length,T=a.split(/(?:\r\n?|\n)/g);this._input=a+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-o),this.offset-=o;var n=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),T.length-1&&(this.yylineno-=T.length-1);var X=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:T?(T.length===n.length?this.yylloc.first_column:0)+n[n.length-T.length].length-T[0].length:this.yylloc.first_column-o},this.options.ranges&&(this.yylloc.range=[X[0],X[0]+this.yyleng-o]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(a){this.unput(this.match.slice(a))},pastInput:function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var a=this.pastInput(),o=new Array(a.length+1).join("-");return a+this.upcomingInput()+` diff --git a/pr-383/assets/chunks/flowDiagram-698c8d5d.d6bb1fae.js b/pr-383/assets/chunks/flowDiagram-698c8d5d.30b27acf.js similarity index 97% rename from pr-383/assets/chunks/flowDiagram-698c8d5d.d6bb1fae.js rename to pr-383/assets/chunks/flowDiagram-698c8d5d.30b27acf.js index 9c172ba44..d03bedf05 100644 --- a/pr-383/assets/chunks/flowDiagram-698c8d5d.d6bb1fae.js +++ b/pr-383/assets/chunks/flowDiagram-698c8d5d.30b27acf.js @@ -1,4 +1,4 @@ -import{p as St,f as W}from"./flowDb-8f9fc471.d59257b5.js";import{h as S,u as Lt,r as Et,p as _t,l as Tt,d as D,f as tt,G as Nt}from"./layout.ca521a87.js";import{h as x,o as P,p as z,q as et,c as J,j as rt,l as M,r as V,t as At}from"../app.34e6398e.js";import{a as N,b as at,i as nt,c as _,e as st,d as it,f as Ct,g as It,s as Bt}from"./styles-ff678862.a55da03b.js";import{l as Mt}from"./line.075f786d.js";import"./framework.be0a7370.js";import"./theme.e11407bf.js";import"./index-4c4adb72.5e4d3745.js";import"./edges-b00f0ec2.14be9f5e.js";import"./createText-285e50b4.f886ce05.js";import"./svgDraw-5d8a058e.ea5389d7.js";import"./array.9f3ba611.js";import"./path.53f90ab3.js";function Dt(r){if(!r.ok)throw new Error(r.status+" "+r.statusText);return r.text()}function Rt(r,e){return fetch(r,e).then(Dt)}function Gt(r){return(e,t)=>Rt(e,t).then(n=>new DOMParser().parseFromString(n,r))}var Pt=Gt("image/svg+xml"),Y={normal:$t,vee:Wt,undirected:Vt};function Ut(r){Y=r}function $t(r,e,t,n){var a=r.append("marker").attr("id",e).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto"),s=a.append("path").attr("d","M 0 0 L 10 5 L 0 10 z").style("stroke-width",1).style("stroke-dasharray","1,0");N(s,t[n+"Style"]),t[n+"Class"]&&s.attr("class",t[n+"Class"])}function Wt(r,e,t,n){var a=r.append("marker").attr("id",e).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto"),s=a.append("path").attr("d","M 0 0 L 10 5 L 0 10 L 4 5 z").style("stroke-width",1).style("stroke-dasharray","1,0");N(s,t[n+"Style"]),t[n+"Class"]&&s.attr("class",t[n+"Class"])}function Vt(r,e,t,n){var a=r.append("marker").attr("id",e).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto"),s=a.append("path").attr("d","M 0 5 L 10 5").style("stroke-width",1).style("stroke-dasharray","1,0");N(s,t[n+"Style"]),t[n+"Class"]&&s.attr("class",t[n+"Class"])}function zt(r,e){var t=r;return t.node().appendChild(e.label),N(t,e.labelStyle),t}function Yt(r,e){for(var t=r.append("text"),n=Ht(e.label).split(` +import{p as St,f as W}from"./flowDb-8f9fc471.70dad437.js";import{h as S,u as Lt,r as Et,p as _t,l as Tt,d as D,f as tt,G as Nt}from"./layout.66644227.js";import{h as x,o as P,p as z,q as et,c as J,j as rt,l as M,r as V,t as At}from"../app.3c4fe3d0.js";import{a as N,b as at,i as nt,c as _,e as st,d as it,f as Ct,g as It,s as Bt}from"./styles-ff678862.621533d1.js";import{l as Mt}from"./line.809d7f74.js";import"./framework.be0a7370.js";import"./theme.71fa6e36.js";import"./index-4c4adb72.3f6562ef.js";import"./edges-b00f0ec2.d6f18c62.js";import"./createText-285e50b4.661aa36f.js";import"./svgDraw-5d8a058e.38485a41.js";import"./array.9f3ba611.js";import"./path.53f90ab3.js";function Dt(r){if(!r.ok)throw new Error(r.status+" "+r.statusText);return r.text()}function Rt(r,e){return fetch(r,e).then(Dt)}function Gt(r){return(e,t)=>Rt(e,t).then(n=>new DOMParser().parseFromString(n,r))}var Pt=Gt("image/svg+xml"),Y={normal:$t,vee:Wt,undirected:Vt};function Ut(r){Y=r}function $t(r,e,t,n){var a=r.append("marker").attr("id",e).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto"),s=a.append("path").attr("d","M 0 0 L 10 5 L 0 10 z").style("stroke-width",1).style("stroke-dasharray","1,0");N(s,t[n+"Style"]),t[n+"Class"]&&s.attr("class",t[n+"Class"])}function Wt(r,e,t,n){var a=r.append("marker").attr("id",e).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto"),s=a.append("path").attr("d","M 0 0 L 10 5 L 0 10 L 4 5 z").style("stroke-width",1).style("stroke-dasharray","1,0");N(s,t[n+"Style"]),t[n+"Class"]&&s.attr("class",t[n+"Class"])}function Vt(r,e,t,n){var a=r.append("marker").attr("id",e).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto"),s=a.append("path").attr("d","M 0 5 L 10 5").style("stroke-width",1).style("stroke-dasharray","1,0");N(s,t[n+"Style"]),t[n+"Class"]&&s.attr("class",t[n+"Class"])}function zt(r,e){var t=r;return t.node().appendChild(e.label),N(t,e.labelStyle),t}function Yt(r,e){for(var t=r.append("text"),n=Ht(e.label).split(` `),a=0;a0}function T(r,e,t){var n=r.x,a=r.y,s=[],i=Number.POSITIVE_INFINITY,o=Number.POSITIVE_INFINITY;e.forEach(function(p){i=Math.min(i,p.x),o=Math.min(o,p.y)});for(var c=n-r.width/2-i,d=a-r.height/2-o,l=0;l1&&s.sort(function(p,g){var f=p.x-t.x,y=p.y-t.y,k=Math.sqrt(f*f+y*y),I=g.x-t.x,E=g.y-t.y,U=Math.sqrt(I*I+E*E);return kMath.abs(a)*o?(s<0&&(o=-o),c=s===0?0:o*a/s,d=o):(a<0&&(i=-i),c=i,d=a===0?0:i*s/a),{x:t+c,y:n+d}}var Q={rect:ie,ellipse:oe,circle:le,diamond:ce};function se(r){Q=r}function ie(r,e,t){var n=r.insert("rect",":first-child").attr("rx",t.rx).attr("ry",t.ry).attr("x",-e.width/2).attr("y",-e.height/2).attr("width",e.width).attr("height",e.height);return t.intersect=function(a){return Z(t,a)},n}function oe(r,e,t){var n=e.width/2,a=e.height/2,s=r.insert("ellipse",":first-child").attr("x",-e.width/2).attr("y",-e.height/2).attr("rx",n).attr("ry",a);return t.intersect=function(i){return lt(t,n,a,i)},s}function le(r,e,t){var n=Math.max(e.width,e.height)/2,a=r.insert("circle",":first-child").attr("x",-e.width/2).attr("y",-e.height/2).attr("r",n);return t.intersect=function(s){return ae(t,n,s)},a}function ce(r,e,t){var n=e.width*Math.SQRT2/2,a=e.height*Math.SQRT2/2,s=[{x:0,y:-a},{x:-n,y:0},{x:0,y:a},{x:n,y:0}],i=r.insert("polygon",":first-child").attr("points",s.map(function(o){return o.x+","+o.y}).join(" "));return t.intersect=function(o){return T(t,s,o)},i}function de(){var r=function(e,t){fe(t);var n=R(e,"output"),a=R(n,"clusters"),s=R(n,"edgePaths"),i=X(R(n,"edgeLabels"),t),o=q(R(n,"nodes"),t,Q);Tt(t),re(o,t),ee(i,t),F(s,t,Y);var c=H(a,t);te(c,t),pe(t)};return r.createNodes=function(e){return arguments.length?(jt(e),r):q},r.createClusters=function(e){return arguments.length?(Xt(e),r):H},r.createEdgeLabels=function(e){return arguments.length?(Ft(e),r):X},r.createEdgePaths=function(e){return arguments.length?(qt(e),r):F},r.shapes=function(e){return arguments.length?(se(e),r):Q},r.arrows=function(e){return arguments.length?(Ut(e),r):Y},r}var he={paddingLeft:10,paddingRight:10,paddingTop:10,paddingBottom:10,rx:0,ry:0,shape:"rect"},ue={arrowhead:"normal",curve:P};function fe(r){r.nodes().forEach(function(e){var t=r.node(e);!S(t,"label")&&!r.children(e).length&&(t.label=e),S(t,"paddingX")&&D(t,{paddingLeft:t.paddingX,paddingRight:t.paddingX}),S(t,"paddingY")&&D(t,{paddingTop:t.paddingY,paddingBottom:t.paddingY}),S(t,"padding")&&D(t,{paddingLeft:t.padding,paddingRight:t.padding,paddingTop:t.padding,paddingBottom:t.padding}),D(t,he),tt(["paddingLeft","paddingRight","paddingTop","paddingBottom"],function(n){t[n]=Number(t[n])}),S(t,"width")&&(t._prevWidth=t.width),S(t,"height")&&(t._prevHeight=t.height)}),r.edges().forEach(function(e){var t=r.edge(e);S(t,"label")||(t.label=""),D(t,ue)})}function pe(r){tt(r.nodes(),function(e){var t=r.node(e);S(t,"_prevWidth")?t.width=t._prevWidth:delete t.width,S(t,"_prevHeight")?t.height=t._prevHeight:delete t.height,delete t._prevWidth,delete t._prevHeight})}function R(r,e){var t=r.select("g."+e);return t.empty()&&(t=r.append("g").attr("class",e)),t}function ct(r,e,t){const n=e.width,a=e.height,s=(n+a)*.9,i=[{x:s/2,y:0},{x:s,y:-s/2},{x:s/2,y:-s},{x:0,y:-s/2}],o=A(r,s,s,i);return t.intersect=function(c){return T(t,i,c)},o}function dt(r,e,t){const a=e.height,s=a/4,i=e.width+2*s,o=[{x:s,y:0},{x:i-s,y:0},{x:i,y:-a/2},{x:i-s,y:-a},{x:s,y:-a},{x:0,y:-a/2}],c=A(r,i,a,o);return t.intersect=function(d){return T(t,o,d)},c}function ht(r,e,t){const n=e.width,a=e.height,s=[{x:-a/2,y:0},{x:n,y:0},{x:n,y:-a},{x:-a/2,y:-a},{x:0,y:-a/2}],i=A(r,n,a,s);return t.intersect=function(o){return T(t,s,o)},i}function ut(r,e,t){const n=e.width,a=e.height,s=[{x:-2*a/6,y:0},{x:n-a/6,y:0},{x:n+2*a/6,y:-a},{x:a/6,y:-a}],i=A(r,n,a,s);return t.intersect=function(o){return T(t,s,o)},i}function ft(r,e,t){const n=e.width,a=e.height,s=[{x:2*a/6,y:0},{x:n+a/6,y:0},{x:n-2*a/6,y:-a},{x:-a/6,y:-a}],i=A(r,n,a,s);return t.intersect=function(o){return T(t,s,o)},i}function pt(r,e,t){const n=e.width,a=e.height,s=[{x:-2*a/6,y:0},{x:n+2*a/6,y:0},{x:n-a/6,y:-a},{x:a/6,y:-a}],i=A(r,n,a,s);return t.intersect=function(o){return T(t,s,o)},i}function vt(r,e,t){const n=e.width,a=e.height,s=[{x:a/6,y:0},{x:n-a/6,y:0},{x:n+2*a/6,y:-a},{x:-2*a/6,y:-a}],i=A(r,n,a,s);return t.intersect=function(o){return T(t,s,o)},i}function yt(r,e,t){const n=e.width,a=e.height,s=[{x:0,y:0},{x:n+a/2,y:0},{x:n,y:-a/2},{x:n+a/2,y:-a},{x:0,y:-a}],i=A(r,n,a,s);return t.intersect=function(o){return T(t,s,o)},i}function gt(r,e,t){const n=e.height,a=e.width+n/4,s=r.insert("rect",":first-child").attr("rx",n/2).attr("ry",n/2).attr("x",-a/2).attr("y",-n/2).attr("width",a).attr("height",n);return t.intersect=function(i){return Z(t,i)},s}function mt(r,e,t){const n=e.width,a=e.height,s=[{x:0,y:0},{x:n,y:0},{x:n,y:-a},{x:0,y:-a},{x:0,y:0},{x:-8,y:0},{x:n+8,y:0},{x:n+8,y:-a},{x:-8,y:-a},{x:-8,y:0}],i=A(r,n,a,s);return t.intersect=function(o){return T(t,s,o)},i}function wt(r,e,t){const n=e.width,a=n/2,s=a/(2.5+n/50),i=e.height+s,o="M 0,"+s+" a "+a+","+s+" 0,0,0 "+n+" 0 a "+a+","+s+" 0,0,0 "+-n+" 0 l 0,"+i+" a "+a+","+s+" 0,0,0 "+n+" 0 l 0,"+-i,c=r.attr("label-offset-y",s).insert("path",":first-child").attr("d",o).attr("transform","translate("+-n/2+","+-(i/2+s)+")");return t.intersect=function(d){const l=Z(t,d),v=l.x-t.x;if(a!=0&&(Math.abs(v)t.height/2-s)){let h=s*s*(1-v*v/(a*a));h!=0&&(h=Math.sqrt(h)),h=s-h,d.y-t.y>0&&(h=-h),l.y+=h}return l},c}function ve(r){r.shapes().question=ct,r.shapes().hexagon=dt,r.shapes().stadium=gt,r.shapes().subroutine=mt,r.shapes().cylinder=wt,r.shapes().rect_left_inv_arrow=ht,r.shapes().lean_right=ut,r.shapes().lean_left=ft,r.shapes().trapezoid=pt,r.shapes().inv_trapezoid=vt,r.shapes().rect_right_inv_arrow=yt}function ye(r){r({question:ct}),r({hexagon:dt}),r({stadium:gt}),r({subroutine:mt}),r({cylinder:wt}),r({rect_left_inv_arrow:ht}),r({lean_right:ut}),r({lean_left:ft}),r({trapezoid:pt}),r({inv_trapezoid:vt}),r({rect_right_inv_arrow:yt})}function A(r,e,t,n){return r.insert("polygon",":first-child").attr("points",n.map(function(a){return a.x+","+a.y}).join(" ")).attr("transform","translate("+-e/2+","+t/2+")")}const ge={addToRender:ve,addToRenderV2:ye},xt={},me=function(r){const e=Object.keys(r);for(const t of e)xt[t]=r[t]},bt=function(r,e,t,n,a,s){const i=n?n.select(`[id="${t}"]`):x(`[id="${t}"]`),o=a||document;Object.keys(r).forEach(function(d){const l=r[d];let v="default";l.classes.length>0&&(v=l.classes.join(" "));const h=z(l.styles);let u=l.text!==void 0?l.text:l.id,p;if(et(J().flowchart.htmlLabels)){const y={label:u.replace(/fa[blrs]?:fa-[\w-]+/g,k=>``)};p=at(i,y).node(),p.parentNode.removeChild(p)}else{const y=o.createElementNS("http://www.w3.org/2000/svg","text");y.setAttribute("style",h.labelStyle.replace("color:","fill:"));const k=u.split(rt.lineBreakRegex);for(const I of k){const E=o.createElementNS("http://www.w3.org/2000/svg","tspan");E.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),E.setAttribute("dy","1em"),E.setAttribute("x","1"),E.textContent=I,y.appendChild(E)}p=y}let g=0,f="";switch(l.type){case"round":g=5,f="rect";break;case"square":f="rect";break;case"diamond":f="question";break;case"hexagon":f="hexagon";break;case"odd":f="rect_left_inv_arrow";break;case"lean_right":f="lean_right";break;case"lean_left":f="lean_left";break;case"trapezoid":f="trapezoid";break;case"inv_trapezoid":f="inv_trapezoid";break;case"odd_right":f="rect_left_inv_arrow";break;case"circle":f="circle";break;case"ellipse":f="ellipse";break;case"stadium":f="stadium";break;case"subroutine":f="subroutine";break;case"cylinder":f="cylinder";break;case"group":f="rect";break;default:f="rect"}M.warn("Adding node",l.id,l.domId),e.setNode(s.db.lookUpDomId(l.id),{labelType:"svg",labelStyle:h.labelStyle,shape:f,label:p,rx:g,ry:g,class:v,style:h.style,id:s.db.lookUpDomId(l.id)})})},kt=function(r,e,t){let n=0,a,s;if(r.defaultStyle!==void 0){const i=z(r.defaultStyle);a=i.style,s=i.labelStyle}r.forEach(function(i){n++;const o="L-"+i.start+"-"+i.end,c="LS-"+i.start,d="LE-"+i.end,l={};i.type==="arrow_open"?l.arrowhead="none":l.arrowhead="normal";let v="",h="";if(i.style!==void 0){const u=z(i.style);v=u.style,h=u.labelStyle}else switch(i.stroke){case"normal":v="fill:none",a!==void 0&&(v=a),s!==void 0&&(h=s);break;case"dotted":v="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":v=" stroke-width: 3.5px;fill:none";break}l.style=v,l.labelStyle=h,i.interpolate!==void 0?l.curve=V(i.interpolate,P):r.defaultInterpolate!==void 0?l.curve=V(r.defaultInterpolate,P):l.curve=V(xt.curve,P),i.text===void 0?i.style!==void 0&&(l.arrowheadStyle="fill: #333"):(l.arrowheadStyle="fill: #333",l.labelpos="c",et(J().flowchart.htmlLabels)?(l.labelType="html",l.label=`${i.text.replace(/fa[blrs]?:fa-[\w-]+/g,u=>``)}`):(l.labelType="text",l.label=i.text.replace(rt.lineBreakRegex,` `),i.style===void 0&&(l.style=l.style||"stroke: #333; stroke-width: 1.5px;fill:none"),l.labelStyle=l.labelStyle.replace("color:","fill:"))),l.id=o,l.class=c+" "+d,l.minlen=i.length||1,e.setEdge(t.db.lookUpDomId(i.start),t.db.lookUpDomId(i.end),l,n)})},we=function(r,e){M.info("Extracting classes"),e.db.clear();try{return e.parse(r),e.db.getClasses()}catch(t){return M.error(t),{}}},xe=function(r,e,t,n){M.info("Drawing flowchart"),n.db.clear();const{securityLevel:a,flowchart:s}=J();let i;a==="sandbox"&&(i=x("#i"+e));const o=a==="sandbox"?x(i.nodes()[0].contentDocument.body):x("body"),c=a==="sandbox"?i.nodes()[0].contentDocument:document;let d=n.db.getDirection();d===void 0&&(d="TD");const l=s.nodeSpacing||50,v=s.rankSpacing||50,h=new Nt({multigraph:!0,compound:!0}).setGraph({rankdir:d,nodesep:l,ranksep:v,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});let u;const p=n.db.getSubGraphs();for(let m=p.length-1;m>=0;m--)u=p[m],n.db.addVertex(u.id,u.title,"group",void 0,u.classes);const g=n.db.getVertices();M.warn("Get vertices",g);const f=n.db.getEdges();let y=0;for(y=p.length-1;y>=0;y--){u=p[y],Bt("cluster").append("text");for(let m=0;m{r.flowchart||(r.flowchart={}),r.flowchart.arrowMarkerAbsolute=r.arrowMarkerAbsolute,be.setConf(r.flowchart),W.clear(),W.setGen("gen-1")}};export{Re as diagram}; diff --git a/pr-383/assets/chunks/flowDiagram-v2-d6437390.14ee101d.js b/pr-383/assets/chunks/flowDiagram-v2-d6437390.14ee101d.js new file mode 100644 index 000000000..1fa02f68c --- /dev/null +++ b/pr-383/assets/chunks/flowDiagram-v2-d6437390.14ee101d.js @@ -0,0 +1 @@ +import{p as e,f as o}from"./flowDb-8f9fc471.70dad437.js";import{f as t,g as a}from"./styles-ff678862.621533d1.js";import{a8 as i}from"../app.3c4fe3d0.js";import"./layout.66644227.js";import"./index-4c4adb72.3f6562ef.js";import"./edges-b00f0ec2.d6f18c62.js";import"./createText-285e50b4.661aa36f.js";import"./svgDraw-5d8a058e.38485a41.js";import"./line.809d7f74.js";import"./array.9f3ba611.js";import"./path.53f90ab3.js";import"./framework.be0a7370.js";import"./theme.71fa6e36.js";const M={parser:e,db:o,renderer:t,styles:a,init:r=>{r.flowchart||(r.flowchart={}),r.flowchart.arrowMarkerAbsolute=r.arrowMarkerAbsolute,i({flowchart:{arrowMarkerAbsolute:r.arrowMarkerAbsolute}}),t.setConf(r.flowchart),o.clear(),o.setGen("gen-2")}};export{M as diagram}; diff --git a/pr-383/assets/chunks/flowDiagram-v2-d6437390.acd2e861.js b/pr-383/assets/chunks/flowDiagram-v2-d6437390.acd2e861.js deleted file mode 100644 index 154481259..000000000 --- a/pr-383/assets/chunks/flowDiagram-v2-d6437390.acd2e861.js +++ /dev/null @@ -1 +0,0 @@ -import{p as e,f as o}from"./flowDb-8f9fc471.d59257b5.js";import{f as t,g as a}from"./styles-ff678862.a55da03b.js";import{a8 as i}from"../app.34e6398e.js";import"./layout.ca521a87.js";import"./index-4c4adb72.5e4d3745.js";import"./edges-b00f0ec2.14be9f5e.js";import"./createText-285e50b4.f886ce05.js";import"./svgDraw-5d8a058e.ea5389d7.js";import"./line.075f786d.js";import"./array.9f3ba611.js";import"./path.53f90ab3.js";import"./framework.be0a7370.js";import"./theme.e11407bf.js";const M={parser:e,db:o,renderer:t,styles:a,init:r=>{r.flowchart||(r.flowchart={}),r.flowchart.arrowMarkerAbsolute=r.arrowMarkerAbsolute,i({flowchart:{arrowMarkerAbsolute:r.arrowMarkerAbsolute}}),t.setConf(r.flowchart),o.clear(),o.setGen("gen-2")}};export{M as diagram}; diff --git a/pr-383/assets/chunks/flowchart-elk-definition-6f4e6aa0.fe34683e.js b/pr-383/assets/chunks/flowchart-elk-definition-6f4e6aa0.e5ef11f4.js similarity index 99% rename from pr-383/assets/chunks/flowchart-elk-definition-6f4e6aa0.fe34683e.js rename to pr-383/assets/chunks/flowchart-elk-definition-6f4e6aa0.e5ef11f4.js index c4eaef0ef..b0f185c3c 100644 --- a/pr-383/assets/chunks/flowchart-elk-definition-6f4e6aa0.fe34683e.js +++ b/pr-383/assets/chunks/flowchart-elk-definition-6f4e6aa0.e5ef11f4.js @@ -1,4 +1,4 @@ -import{d as bMe,p as wMe}from"./flowDb-8f9fc471.d59257b5.js";import{aI as Hee,aJ as gMe,l as K1,h as lI,c as OH,t as pMe,p as V1n,r as X1n,o as IH,j as vMe}from"../app.34e6398e.js";import{i as mMe,a as kMe,l as yMe,b as jMe}from"./edges-b00f0ec2.14be9f5e.js";import{l as EMe}from"./line.075f786d.js";import"./framework.be0a7370.js";import"./theme.e11407bf.js";import"./createText-285e50b4.f886ce05.js";import"./svgDraw-5d8a058e.ea5389d7.js";import"./array.9f3ba611.js";import"./path.53f90ab3.js";function PH(Ee){throw new Error('Could not dynamically require "'+Ee+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var Uee={exports:{}};(function(Ee,It){(function(ut){Ee.exports=ut()})(function(){return function(){function ut(dt,Bt,Ai){function j(Ot,qt){if(!Bt[Ot]){if(!dt[Ot]){var Ge=typeof PH=="function"&&PH;if(!qt&&Ge)return Ge(Ot,!0);if(Ht)return Ht(Ot,!0);var Ki=new Error("Cannot find module '"+Ot+"'");throw Ki.code="MODULE_NOT_FOUND",Ki}var Si=Bt[Ot]={exports:{}};dt[Ot][0].call(Si.exports,function(Mn){var Lc=dt[Ot][1][Mn];return j(Lc||Mn)},Si,Si.exports,ut,dt,Bt,Ai)}return Bt[Ot].exports}for(var Ht=typeof PH=="function"&&PH,ou=0;ou0&&arguments[0]!==void 0?arguments[0]:{},Ki=Ge.defaultLayoutOptions,Si=Ki===void 0?{}:Ki,Mn=Ge.algorithms,Lc=Mn===void 0?["layered","stress","mrtree","radial","force","disco","sporeOverlap","sporeCompaction","rectpacking"]:Mn,Nc=Ge.workerFactory,ps=Ge.workerUrl;if(j(this,Ot),this.defaultLayoutOptions=Si,this.initialized=!1,typeof ps>"u"&&typeof Nc>"u")throw new Error("Cannot construct an ELK without both 'workerUrl' and 'workerFactory'.");var Rr=Nc;typeof ps<"u"&&typeof Nc>"u"&&(Rr=function(q1){return new Worker(q1)});var Ch=Rr(ps);if(typeof Ch.postMessage!="function")throw new TypeError("Created worker does not provide the required 'postMessage' function.");this.worker=new ou(Ch),this.worker.postMessage({cmd:"register",algorithms:Lc}).then(function(H1){return qt.initialized=!0}).catch(console.err)}return Ai(Ot,[{key:"layout",value:function(Ge){var Ki=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},Si=Ki.layoutOptions,Mn=Si===void 0?this.defaultLayoutOptions:Si,Lc=Ki.logging,Nc=Lc===void 0?!1:Lc,ps=Ki.measureExecutionTime,Rr=ps===void 0?!1:ps;return Ge?this.worker.postMessage({cmd:"layout",graph:Ge,layoutOptions:Mn,options:{logging:Nc,measureExecutionTime:Rr}}):Promise.reject(new Error("Missing mandatory parameter 'graph'."))}},{key:"knownLayoutAlgorithms",value:function(){return this.worker.postMessage({cmd:"algorithms"})}},{key:"knownLayoutOptions",value:function(){return this.worker.postMessage({cmd:"options"})}},{key:"knownLayoutCategories",value:function(){return this.worker.postMessage({cmd:"categories"})}},{key:"terminateWorker",value:function(){this.worker.terminate()}}]),Ot}();Bt.default=Ht;var ou=function(){function Ot(qt){var Ge=this;if(j(this,Ot),qt===void 0)throw new Error("Missing mandatory parameter 'worker'.");this.resolvers={},this.worker=qt,this.worker.onmessage=function(Ki){setTimeout(function(){Ge.receive(Ge,Ki)},0)}}return Ai(Ot,[{key:"postMessage",value:function(Ge){var Ki=this.id||0;this.id=Ki+1,Ge.id=Ki;var Si=this;return new Promise(function(Mn,Lc){Si.resolvers[Ki]=function(Nc,ps){Nc?(Si.convertGwtStyleError(Nc),Lc(Nc)):Mn(ps)},Si.worker.postMessage(Ge)})}},{key:"receive",value:function(Ge,Ki){var Si=Ki.data,Mn=Ge.resolvers[Si.id];Mn&&(delete Ge.resolvers[Si.id],Si.error?Mn(Si.error):Mn(null,Si.data))}},{key:"terminate",value:function(){this.worker.terminate&&this.worker.terminate()}},{key:"convertGwtStyleError",value:function(Ge){if(Ge){var Ki=Ge.__java$exception;Ki&&(Ki.cause&&Ki.cause.backingJsObject&&(Ge.cause=Ki.cause.backingJsObject,this.convertGwtStyleError(Ge.cause)),delete Ge.__java$exception)}}}]),Ot}()},{}],2:[function(ut,dt,Bt){(function(Ai){(function(){var j;typeof window<"u"?j=window:typeof Ai<"u"?j=Ai:typeof self<"u"&&(j=self);var Ht;function ou(){}function Ot(){}function qt(){}function Ge(){}function Ki(){}function Si(){}function Mn(){}function Lc(){}function Nc(){}function ps(){}function Rr(){}function Ch(){}function H1(){}function q1(){}function ww(){}function Np(){}function G1(){}function Th(){}function Q1n(){}function J1n(){}function zy(){}function Y1n(){}function Z1n(){}function nln(){}function eln(){}function Xg(){}function N(){}function tln(){}function aI(){}function iln(){}function rln(){}function cln(){}function uln(){}function DH(){}function sln(){}function oln(){}function fln(){}function z1(){}function U1(){}function dI(){}function hln(){}function lln(){}function aln(){}function $H(){}function dln(){}function bln(){}function Vg(){}function Qg(){}function wln(){}function gln(){}function pln(){}function vln(){}function FH(){}function W1(){}function Jg(){}function Yg(){}function mln(){}function Vee(){}function bI(){}function kln(){}function yln(){}function jln(){}function Eln(){}function Cln(){}function Tln(){}function Mln(){}function Aln(){}function Sln(){}function Pln(){}function Iln(){}function Oln(){}function Dln(){}function $ln(){}function Fln(){}function xln(){}function Lln(){}function Nln(){}function Bln(){}function Rln(){}function _ln(){}function Kln(){}function Hln(){}function qln(){}function Gln(){}function zln(){}function Uln(){}function Wln(){}function Xln(){}function Vln(){}function Qln(){}function Jln(){}function Yln(){}function xH(){}function Zln(){}function nan(){}function ean(){}function tan(){}function wI(){}function gI(){}function Uy(){}function ian(){}function ran(){}function pI(){}function can(){}function uan(){}function san(){}function Wy(){}function oan(){}function fan(){}function han(){}function lan(){}function aan(){}function dan(){}function ban(){}function wan(){}function gan(){}function LH(){}function pan(){}function van(){}function man(){}function kan(){}function yan(){}function NH(){}function jan(){}function Ean(){}function Can(){}function Tan(){}function Man(){}function Aan(){}function San(){}function Pan(){}function Ian(){}function Oan(){}function Dan(){}function $an(){}function Fan(){}function xan(){}function vI(){}function Lan(){}function Nan(){}function Ban(){}function Ran(){}function _an(){}function BH(){}function Kan(){}function Han(){}function qan(){}function Gan(){}function zan(){}function Uan(){}function Wan(){}function Xan(){}function Van(){}function Qan(){}function Jan(){}function Yan(){}function Zan(){}function ndn(){}function edn(){}function tdn(){}function idn(){}function rdn(){}function cdn(){}function udn(){}function sdn(){}function odn(){}function fdn(){}function hdn(){}function ldn(){}function adn(){}function ddn(){}function bdn(){}function wdn(){}function gdn(){}function pdn(){}function vdn(){}function mdn(){}function kdn(){}function ydn(){}function jdn(){}function Edn(){}function Cdn(){}function Tdn(){}function Mdn(){}function Adn(){}function Sdn(){}function Pdn(){}function Idn(){}function Odn(){}function Ddn(){}function $dn(){}function Fdn(){}function xdn(){}function Ldn(){}function Ndn(){}function Bdn(){}function Rdn(){}function _dn(){}function Kdn(){}function Hdn(){}function qdn(){}function Gdn(){}function zdn(){}function Udn(){}function Wdn(){}function Xdn(){}function Vdn(){}function Qdn(){}function Jdn(){}function Ydn(){}function Zdn(){}function n0n(){}function e0n(){}function t0n(){}function i0n(){}function r0n(){}function c0n(){}function u0n(){}function s0n(){}function o0n(){}function f0n(){}function h0n(){}function l0n(){}function a0n(){}function d0n(){}function b0n(){}function w0n(){}function g0n(){}function p0n(){}function v0n(){}function m0n(){}function k0n(){}function y0n(){}function j0n(){}function E0n(){}function C0n(){}function T0n(){}function M0n(){}function A0n(){}function S0n(){}function P0n(){}function I0n(){}function O0n(){}function D0n(){}function RH(){}function $0n(){}function F0n(){}function x0n(){}function L0n(){}function N0n(){}function B0n(){}function R0n(){}function _0n(){}function K0n(){}function H0n(){}function q0n(){}function G0n(){}function z0n(){}function U0n(){}function W0n(){}function X0n(){}function V0n(){}function Q0n(){}function J0n(){}function Y0n(){}function Z0n(){}function nbn(){}function ebn(){}function tbn(){}function ibn(){}function rbn(){}function cbn(){}function ubn(){}function sbn(){}function obn(){}function fbn(){}function hbn(){}function lbn(){}function abn(){}function dbn(){}function bbn(){}function wbn(){}function gbn(){}function pbn(){}function vbn(){}function mbn(){}function kbn(){}function ybn(){}function jbn(){}function Ebn(){}function Cbn(){}function Tbn(){}function Mbn(){}function Abn(){}function Sbn(){}function Pbn(){}function Ibn(){}function Obn(){}function Dbn(){}function $bn(){}function Fbn(){}function xbn(){}function Lbn(){}function Nbn(){}function Bbn(){}function Rbn(){}function _bn(){}function Kbn(){}function Hbn(){}function qbn(){}function Gbn(){}function zbn(){}function _H(){}function Ubn(){}function Wbn(){}function Xbn(){}function Vbn(){}function Qbn(){}function Jbn(){}function Ybn(){}function Zbn(){}function nwn(){}function ewn(){}function twn(){}function iwn(){}function rwn(){}function cwn(){}function uwn(){}function swn(){}function own(){}function fwn(){}function hwn(){}function lwn(){}function KH(){}function awn(){}function dwn(){}function bwn(){}function wwn(){}function gwn(){}function pwn(){}function HH(){}function qH(){}function vwn(){}function GH(){}function zH(){}function mwn(){}function kwn(){}function ywn(){}function jwn(){}function Ewn(){}function Cwn(){}function Twn(){}function Mwn(){}function Awn(){}function UH(){}function Swn(){}function Pwn(){}function Iwn(){}function Own(){}function Dwn(){}function $wn(){}function Fwn(){}function xwn(){}function Lwn(){}function Nwn(){}function Bwn(){}function Rwn(){}function _wn(){}function Kwn(){}function Hwn(){}function qwn(){}function Gwn(){}function zwn(){}function Uwn(){}function Wwn(){}function Xwn(){}function Vwn(){}function Qwn(){}function Jwn(){}function Ywn(){}function Zwn(){}function ngn(){}function egn(){}function tgn(){}function ign(){}function rgn(){}function cgn(){}function ugn(){}function sgn(){}function ogn(){}function fgn(){}function hgn(){}function lgn(){}function agn(){}function dgn(){}function bgn(){}function wgn(){}function ggn(){}function pgn(){}function vgn(){}function mgn(){}function kgn(){}function ygn(){}function jgn(){}function Egn(){}function Cgn(){}function Tgn(){}function Mgn(){}function Agn(){}function Sgn(){}function Pgn(){}function Ign(){}function Ogn(){}function Dgn(){}function $gn(){}function Fgn(){}function xgn(){}function Lgn(){}function Ngn(){}function Bgn(){}function Rgn(){}function _gn(){}function Kgn(){}function mI(){}function kI(){}function yI(){}function Hgn(){}function qgn(){}function Ggn(){}function zgn(){}function Ugn(){}function WH(){}function Wgn(){}function Xgn(){}function Qee(){}function Vgn(){}function Qgn(){}function Jgn(){}function Ygn(){}function Zgn(){}function n2n(){}function e2n(){}function Zl(){}function t2n(){}function Zg(){}function XH(){}function i2n(){}function r2n(){}function c2n(){}function u2n(){}function s2n(){}function o2n(){}function f2n(){}function h2n(){}function l2n(){}function a2n(){}function d2n(){}function b2n(){}function w2n(){}function g2n(){}function p2n(){}function v2n(){}function m2n(){}function k2n(){}function y2n(){}function j2n(){}function E2n(){}function dn(){}function C2n(){}function T2n(){}function M2n(){}function A2n(){}function S2n(){}function P2n(){}function I2n(){}function O2n(){}function D2n(){}function $2n(){}function jI(){}function F2n(){}function x2n(){}function L2n(){}function N2n(){}function B2n(){}function VH(){}function Xy(){}function Vy(){}function R2n(){}function QH(){}function Qy(){}function _2n(){}function K2n(){}function H2n(){}function q2n(){}function G2n(){}function z2n(){}function Jy(){}function U2n(){}function W2n(){}function X2n(){}function Yy(){}function V2n(){}function JH(){}function Q2n(){}function EI(){}function YH(){}function J2n(){}function Y2n(){}function Z2n(){}function npn(){}function Jee(){}function epn(){}function tpn(){}function ipn(){}function rpn(){}function cpn(){}function upn(){}function spn(){}function opn(){}function fpn(){}function hpn(){}function Bp(){}function CI(){}function lpn(){}function apn(){}function dpn(){}function bpn(){}function wpn(){}function gpn(){}function ppn(){}function vpn(){}function mpn(){}function kpn(){}function ypn(){}function jpn(){}function Epn(){}function Cpn(){}function Tpn(){}function Mpn(){}function Apn(){}function Spn(){}function Ppn(){}function Ipn(){}function Opn(){}function Dpn(){}function $pn(){}function Fpn(){}function xpn(){}function Lpn(){}function Npn(){}function Bpn(){}function Rpn(){}function _pn(){}function Kpn(){}function Hpn(){}function qpn(){}function Gpn(){}function zpn(){}function Upn(){}function Wpn(){}function Xpn(){}function Vpn(){}function Qpn(){}function Jpn(){}function Ypn(){}function Zpn(){}function n3n(){}function e3n(){}function t3n(){}function i3n(){}function r3n(){}function c3n(){}function u3n(){}function s3n(){}function o3n(){}function f3n(){}function h3n(){}function l3n(){}function a3n(){}function d3n(){}function b3n(){}function w3n(){}function g3n(){}function p3n(){}function v3n(){}function m3n(){}function k3n(){}function y3n(){}function j3n(){}function E3n(){}function C3n(){}function T3n(){}function M3n(){}function A3n(){}function S3n(){}function P3n(){}function I3n(){}function O3n(){}function D3n(){}function $3n(){}function F3n(){}function x3n(){}function L3n(){}function N3n(){}function B3n(){}function R3n(){}function _3n(){}function K3n(){}function H3n(){}function q3n(){}function G3n(){}function z3n(){}function U3n(){}function W3n(){}function X3n(){}function V3n(){}function Q3n(){}function J3n(){}function Y3n(){}function Z3n(){}function n4n(){}function e4n(){}function t4n(){}function i4n(){}function ZH(){}function r4n(){}function c4n(){}function TI(){Rv()}function u4n(){pF()}function s4n(){a6()}function o4n(){WT()}function f4n(){YJ()}function h4n(){Go()}function l4n(){fJ()}function a4n(){C7()}function d4n(){q9()}function b4n(){H9()}function w4n(){w8()}function g4n(){v7n()}function p4n(){x2()}function v4n(){Sj()}function m4n(){PSn()}function k4n(){HIn()}function y4n(){sPn()}function j4n(){CMn()}function E4n(){V3()}function C4n(){yl()}function T4n(){qIn()}function M4n(){pAn()}function A4n(){zZ()}function S4n(){IFn()}function P4n(){TMn()}function I4n(){nn()}function O4n(){EMn()}function D4n(){GIn()}function $4n(){WOn()}function F4n(){AMn()}function x4n(){aPn()}function L4n(){m7n()}function N4n(){$Y()}function B4n(){gb()}function R4n(){pOn()}function _4n(){S7()}function K4n(){Ux()}function H4n(){ZF()}function q4n(){Zd()}function G4n(){PV()}function z4n(){MMn()}function U4n(){BBn()}function W4n(){IY()}function X4n(){Bx()}function V4n(){DC()}function Q4n(){nM()}function nq(){Xe()}function J4n(){wT()}function Y4n(){NQ()}function eq(){mM()}function Fo(){dEn()}function tq(){eF()}function Z4n(){pZ()}function iq(n){_n(n)}function nvn(n){this.a=n}function Zy(n){this.a=n}function evn(n){this.a=n}function tvn(n){this.a=n}function ivn(n){this.a=n}function rvn(n){this.a=n}function cvn(n){this.a=n}function uvn(n){this.a=n}function rq(n){this.a=n}function cq(n){this.a=n}function svn(n){this.a=n}function MI(n){this.a=n}function ovn(n){this.a=n}function AI(n){this.a=n}function fvn(n){this.a=n}function SI(n){this.a=n}function hvn(n){this.a=n}function PI(n){this.a=n}function lvn(n){this.a=n}function avn(n){this.a=n}function dvn(n){this.a=n}function uq(n){this.b=n}function bvn(n){this.c=n}function wvn(n){this.a=n}function gvn(n){this.a=n}function pvn(n){this.a=n}function vvn(n){this.a=n}function mvn(n){this.a=n}function kvn(n){this.a=n}function yvn(n){this.a=n}function jvn(n){this.a=n}function Evn(n){this.a=n}function Cvn(n){this.a=n}function Tvn(n){this.a=n}function Mvn(n){this.a=n}function Avn(n){this.a=n}function sq(n){this.a=n}function oq(n){this.a=n}function nj(n){this.a=n}function M9(n){this.a=n}function na(){this.a=[]}function Svn(n,e){n.a=e}function Yee(n,e){n.a=e}function Zee(n,e){n.b=e}function nte(n,e){n.b=e}function ete(n,e){n.b=e}function fq(n,e){n.j=e}function tte(n,e){n.g=e}function ite(n,e){n.i=e}function rte(n,e){n.c=e}function cte(n,e){n.d=e}function ute(n,e){n.d=e}function ste(n,e){n.c=e}function ea(n,e){n.k=e}function ote(n,e){n.c=e}function hq(n,e){n.c=e}function lq(n,e){n.a=e}function fte(n,e){n.a=e}function hte(n,e){n.f=e}function lte(n,e){n.a=e}function ate(n,e){n.b=e}function II(n,e){n.d=e}function ej(n,e){n.i=e}function aq(n,e){n.o=e}function dte(n,e){n.r=e}function bte(n,e){n.a=e}function wte(n,e){n.b=e}function Pvn(n,e){n.e=e}function gte(n,e){n.f=e}function dq(n,e){n.g=e}function pte(n,e){n.e=e}function vte(n,e){n.f=e}function mte(n,e){n.f=e}function kte(n,e){n.n=e}function yte(n,e){n.a=e}function jte(n,e){n.a=e}function Ete(n,e){n.c=e}function Cte(n,e){n.c=e}function Tte(n,e){n.d=e}function Mte(n,e){n.e=e}function Ate(n,e){n.g=e}function Ste(n,e){n.a=e}function Pte(n,e){n.c=e}function Ite(n,e){n.d=e}function Ote(n,e){n.e=e}function Dte(n,e){n.f=e}function $te(n,e){n.j=e}function Fte(n,e){n.a=e}function xte(n,e){n.b=e}function Lte(n,e){n.a=e}function Ivn(n){n.b=n.a}function Ovn(n){n.c=n.d.d}function $v(n){this.d=n}function ta(n){this.a=n}function Rp(n){this.a=n}function bq(n){this.a=n}function Mh(n){this.a=n}function A9(n){this.a=n}function Dvn(n){this.a=n}function wq(n){this.a=n}function S9(n){this.a=n}function gq(n){this.a=n}function pq(n){this.a=n}function vq(n){this.a=n}function L0(n){this.a=n}function P9(n){this.a=n}function I9(n){this.a=n}function mq(n){this.b=n}function _p(n){this.b=n}function Kp(n){this.b=n}function OI(n){this.a=n}function $vn(n){this.a=n}function kq(n){this.a=n}function DI(n){this.c=n}function E(n){this.c=n}function Fvn(n){this.c=n}function yq(n){this.a=n}function jq(n){this.a=n}function Eq(n){this.a=n}function Cq(n){this.a=n}function st(n){this.a=n}function xvn(n){this.a=n}function Tq(n){this.a=n}function Mq(n){this.a=n}function Lvn(n){this.a=n}function Nvn(n){this.a=n}function Fv(n){this.a=n}function Bvn(n){this.a=n}function Rvn(n){this.a=n}function _vn(n){this.a=n}function Kvn(n){this.a=n}function Hvn(n){this.a=n}function qvn(n){this.a=n}function Gvn(n){this.a=n}function zvn(n){this.a=n}function Uvn(n){this.a=n}function Wvn(n){this.a=n}function Xvn(n){this.a=n}function Vvn(n){this.a=n}function Qvn(n){this.a=n}function Jvn(n){this.a=n}function Yvn(n){this.a=n}function Zvn(n){this.a=n}function n5n(n){this.a=n}function O9(n){this.a=n}function e5n(n){this.a=n}function t5n(n){this.a=n}function tj(n){this.a=n}function i5n(n){this.a=n}function r5n(n){this.a=n}function Hp(n){this.a=n}function Aq(n){this.a=n}function c5n(n){this.a=n}function u5n(n){this.a=n}function s5n(n){this.a=n}function o5n(n){this.a=n}function f5n(n){this.a=n}function Sq(n){this.a=n}function Pq(n){this.a=n}function Iq(n){this.a=n}function ij(n){this.a=n}function rj(n){this.e=n}function qp(n){this.a=n}function h5n(n){this.a=n}function n2(n){this.a=n}function Oq(n){this.a=n}function l5n(n){this.a=n}function a5n(n){this.a=n}function d5n(n){this.a=n}function b5n(n){this.a=n}function w5n(n){this.a=n}function g5n(n){this.a=n}function p5n(n){this.a=n}function v5n(n){this.a=n}function m5n(n){this.a=n}function k5n(n){this.a=n}function y5n(n){this.a=n}function Dq(n){this.a=n}function j5n(n){this.a=n}function E5n(n){this.a=n}function C5n(n){this.a=n}function T5n(n){this.a=n}function M5n(n){this.a=n}function A5n(n){this.a=n}function S5n(n){this.a=n}function P5n(n){this.a=n}function I5n(n){this.a=n}function O5n(n){this.a=n}function D5n(n){this.a=n}function $5n(n){this.a=n}function F5n(n){this.a=n}function x5n(n){this.a=n}function L5n(n){this.a=n}function N5n(n){this.a=n}function B5n(n){this.a=n}function R5n(n){this.a=n}function _5n(n){this.a=n}function K5n(n){this.a=n}function H5n(n){this.a=n}function q5n(n){this.a=n}function G5n(n){this.a=n}function z5n(n){this.a=n}function U5n(n){this.a=n}function W5n(n){this.a=n}function X5n(n){this.a=n}function V5n(n){this.a=n}function Q5n(n){this.a=n}function J5n(n){this.a=n}function Y5n(n){this.a=n}function Z5n(n){this.a=n}function n6n(n){this.a=n}function e6n(n){this.a=n}function t6n(n){this.a=n}function i6n(n){this.a=n}function r6n(n){this.a=n}function c6n(n){this.c=n}function u6n(n){this.b=n}function s6n(n){this.a=n}function o6n(n){this.a=n}function f6n(n){this.a=n}function h6n(n){this.a=n}function l6n(n){this.a=n}function a6n(n){this.a=n}function d6n(n){this.a=n}function b6n(n){this.a=n}function w6n(n){this.a=n}function g6n(n){this.a=n}function p6n(n){this.a=n}function v6n(n){this.a=n}function m6n(n){this.a=n}function k6n(n){this.a=n}function y6n(n){this.a=n}function j6n(n){this.a=n}function E6n(n){this.a=n}function C6n(n){this.a=n}function T6n(n){this.a=n}function M6n(n){this.a=n}function A6n(n){this.a=n}function S6n(n){this.a=n}function P6n(n){this.a=n}function I6n(n){this.a=n}function X1(n){this.a=n}function e2(n){this.a=n}function O6n(n){this.a=n}function D6n(n){this.a=n}function $6n(n){this.a=n}function F6n(n){this.a=n}function x6n(n){this.a=n}function L6n(n){this.a=n}function N6n(n){this.a=n}function B6n(n){this.a=n}function R6n(n){this.a=n}function _6n(n){this.a=n}function K6n(n){this.a=n}function H6n(n){this.a=n}function q6n(n){this.a=n}function G6n(n){this.a=n}function z6n(n){this.a=n}function U6n(n){this.a=n}function cj(n){this.a=n}function W6n(n){this.a=n}function X6n(n){this.a=n}function V6n(n){this.a=n}function Q6n(n){this.a=n}function J6n(n){this.a=n}function Y6n(n){this.a=n}function Z6n(n){this.a=n}function nmn(n){this.a=n}function emn(n){this.a=n}function tmn(n){this.a=n}function imn(n){this.a=n}function rmn(n){this.a=n}function cmn(n){this.a=n}function umn(n){this.a=n}function smn(n){this.a=n}function omn(n){this.a=n}function fmn(n){this.a=n}function hmn(n){this.a=n}function lmn(n){this.a=n}function amn(n){this.a=n}function dmn(n){this.a=n}function bmn(n){this.a=n}function wmn(n){this.a=n}function gmn(n){this.a=n}function pmn(n){this.a=n}function vmn(n){this.a=n}function mmn(n){this.a=n}function kmn(n){this.a=n}function $q(n){this.a=n}function kt(n){this.b=n}function ymn(n){this.f=n}function Fq(n){this.a=n}function jmn(n){this.a=n}function Emn(n){this.a=n}function Cmn(n){this.a=n}function Tmn(n){this.a=n}function Mmn(n){this.a=n}function Amn(n){this.a=n}function Smn(n){this.a=n}function Pmn(n){this.a=n}function D9(n){this.a=n}function Imn(n){this.a=n}function Omn(n){this.b=n}function xq(n){this.c=n}function uj(n){this.e=n}function Dmn(n){this.a=n}function sj(n){this.a=n}function oj(n){this.a=n}function $I(n){this.a=n}function $mn(n){this.a=n}function Fmn(n){this.d=n}function Lq(n){this.a=n}function Nq(n){this.a=n}function cd(n){this.e=n}function Nte(){this.a=0}function gw(){dyn(this)}function X(){RO(this)}function we(){Eu(this)}function FI(){pTn(this)}function xmn(){}function ud(){this.c=p1n}function Bte(n,e){e.Wb(n)}function Lmn(n,e){n.b+=e}function Nmn(n){n.b=new JI}function T(n){return n.e}function Rte(n){return n.a}function _te(n){return n.a}function Kte(n){return n.a}function Hte(n){return n.a}function qte(n){return n.a}function Gte(){return null}function zte(){return null}function Ute(){EG(),iTe()}function Wte(n){n.b.tf(n.e)}function xv(n,e){n.b=e-n.b}function Lv(n,e){n.a=e-n.a}function Bmn(n,e){e.ad(n.a)}function Xte(n,e){ui(e,n)}function Vte(n,e,t){n.Od(t,e)}function $9(n,e){n.e=e,e.b=n}function Bq(n){Df(),this.a=n}function Rmn(n){Df(),this.a=n}function _mn(n){Df(),this.a=n}function Rq(n){nb(),this.a=n}function Kmn(n){k3(),aR.be(n)}function ia(){Qyn.call(this)}function _q(){Qyn.call(this)}function Kq(){ia.call(this)}function xI(){ia.call(this)}function Hmn(){ia.call(this)}function F9(){ia.call(this)}function fu(){ia.call(this)}function Nv(){ia.call(this)}function ye(){ia.call(this)}function vs(){ia.call(this)}function qmn(){ia.call(this)}function ic(){ia.call(this)}function Gmn(){ia.call(this)}function zmn(){this.a=this}function fj(){this.Bb|=256}function Umn(){this.b=new Xkn}function Hq(){Hq=N,new we}function qq(){Kq.call(this)}function Wmn(n,e){n.length=e}function hj(n,e){W(n.a,e)}function Qte(n,e){nY(n.c,e)}function Jte(n,e){ri(n.b,e)}function Yte(n,e){KT(n.a,e)}function Zte(n,e){MF(n.a,e)}function Gp(n,e){et(n.e,e)}function t2(n){iM(n.c,n.b)}function nie(n,e){n.kc().Nb(e)}function Gq(n){this.a=Yge(n)}function fi(){this.a=new we}function Xmn(){this.a=new we}function lj(){this.a=new X}function LI(){this.a=new X}function zq(){this.a=new X}function Ns(){this.a=new Oln}function ra(){this.a=new TSn}function Uq(){this.a=new LH}function Wq(){this.a=new h7n}function Vmn(){this.a=new YMn}function Xq(){this.a=new bMn}function Vq(){this.a=new Bjn}function Qmn(){this.a=new X}function Qq(){this.a=new X}function Jmn(){this.a=new X}function Ymn(){this.a=new X}function Zmn(){this.d=new X}function n9n(){this.a=new fi}function e9n(){this.a=new we}function t9n(){this.b=new we}function i9n(){this.b=new X}function Jq(){this.e=new X}function r9n(){this.d=new X}function c9n(){this.a=new C4n}function u9n(){X.call(this)}function Yq(){lj.call(this)}function s9n(){kE.call(this)}function o9n(){Qq.call(this)}function NI(){Bv.call(this)}function Bv(){xmn.call(this)}function i2(){xmn.call(this)}function Zq(){i2.call(this)}function f9n(){zTn.call(this)}function h9n(){zTn.call(this)}function l9n(){uG.call(this)}function a9n(){uG.call(this)}function d9n(){uG.call(this)}function b9n(){sG.call(this)}function hu(){Ct.call(this)}function nG(){B2n.call(this)}function eG(){B2n.call(this)}function w9n(){O9n.call(this)}function g9n(){O9n.call(this)}function p9n(){we.call(this)}function v9n(){we.call(this)}function m9n(){we.call(this)}function k9n(){fi.call(this)}function BI(){RIn.call(this)}function y9n(){fj.call(this)}function RI(){Oz.call(this)}function _I(){Oz.call(this)}function tG(){we.call(this)}function KI(){we.call(this)}function j9n(){we.call(this)}function iG(){Yy.call(this)}function E9n(){Yy.call(this)}function C9n(){iG.call(this)}function T9n(){ZH.call(this)}function M9n(n){hIn.call(this,n)}function A9n(n){hIn.call(this,n)}function rG(n){rq.call(this,n)}function cG(n){n7n.call(this,n)}function eie(n){cG.call(this,n)}function tie(n){n7n.call(this,n)}function zp(){this.a=new Ct}function uG(){this.a=new fi}function sG(){this.a=new we}function S9n(){this.a=new X}function P9n(){this.j=new X}function oG(){this.a=new Rgn}function I9n(){this.a=new T8n}function O9n(){this.a=new X2n}function HI(){HI=N,uR=new V9n}function qI(){qI=N,cR=new X9n}function Rv(){Rv=N,rR=new Ot}function aj(){aj=N,fR=new Xyn}function iie(n){cG.call(this,n)}function rie(n){cG.call(this,n)}function D9n(n){m$.call(this,n)}function $9n(n){m$.call(this,n)}function F9n(n){uEn.call(this,n)}function GI(n){C5e.call(this,n)}function sd(n){_0.call(this,n)}function _v(n){Cj.call(this,n)}function fG(n){Cj.call(this,n)}function x9n(n){Cj.call(this,n)}function _r(n){kCn.call(this,n)}function L9n(n){_r.call(this,n)}function r2(){M9.call(this,{})}function dj(n){c3(),this.a=n}function Kv(n){n.b=null,n.c=0}function cie(n,e){n.e=e,NNn(n,e)}function uie(n,e){n.a=e,h6e(n)}function zI(n,e,t){n.a[e.g]=t}function sie(n,e,t){M4e(t,n,e)}function oie(n,e){$ue(e.i,n.n)}function N9n(n,e){Fwe(n).td(e)}function fie(n,e){return n*n/e}function B9n(n,e){return n.g-e.g}function hie(n){return new nj(n)}function lie(n){return new Z0(n)}function bj(n){_r.call(this,n)}function vr(n){_r.call(this,n)}function R9n(n){_r.call(this,n)}function UI(n){kCn.call(this,n)}function WI(n){AV(),this.a=n}function _9n(n){aEn(),this.a=n}function N0(n){ED(),this.f=n}function XI(n){ED(),this.f=n}function Up(n){_r.call(this,n)}function Hn(n){_r.call(this,n)}function Dr(n){_r.call(this,n)}function K9n(n){_r.call(this,n)}function c2(n){_r.call(this,n)}function on(n){return _n(n),n}function K(n){return _n(n),n}function x9(n){return _n(n),n}function hG(n){return _n(n),n}function aie(n){return _n(n),n}function Hv(n){return n.b==n.c}function B0(n){return!!n&&n.b}function die(n){return!!n&&n.k}function bie(n){return!!n&&n.j}function Ku(n){_n(n),this.a=n}function lG(n){return ja(n),n}function qv(n){EW(n,n.length)}function t1(n){_r.call(this,n)}function Af(n){_r.call(this,n)}function VI(n){_r.call(this,n)}function pw(n){_r.call(this,n)}function Gv(n){_r.call(this,n)}function Ce(n){_r.call(this,n)}function QI(n){Vz.call(this,n,0)}function JI(){iX.call(this,12,3)}function aG(){aG=N,din=new Q1n}function H9n(){H9n=N,ain=new ou}function wj(){wj=N,dm=new H1}function q9n(){q9n=N,vzn=new ww}function G9n(){throw T(new ye)}function dG(){throw T(new ye)}function z9n(){throw T(new ye)}function wie(){throw T(new ye)}function gie(){throw T(new ye)}function pie(){throw T(new ye)}function YI(){this.a=Te(pe(Ji))}function u2(n){Df(),this.a=pe(n)}function U9n(n,e){n.Td(e),e.Sd(n)}function vie(n,e){n.a.ec().Mc(e)}function mie(n,e,t){n.c.lf(e,t)}function bG(n){vr.call(this,n)}function Sf(n){Hn.call(this,n)}function i1(){A9.call(this,"")}function zv(){A9.call(this,"")}function V1(){A9.call(this,"")}function R0(){A9.call(this,"")}function wG(n){vr.call(this,n)}function Wp(n){_p.call(this,n)}function ZI(n){lE.call(this,n)}function W9n(n){Wp.call(this,n)}function X9n(){AI.call(this,null)}function V9n(){AI.call(this,null)}function gj(){gj=N,k3()}function Q9n(){Q9n=N,Szn=Z4e()}function J9n(n){return n.a?n.b:0}function kie(n){return n.a?n.b:0}function yie(n,e){return n.a-e.a}function jie(n,e){return n.a-e.a}function Eie(n,e){return n.a-e.a}function pj(n,e){return WX(n,e)}function M(n,e){return pMn(n,e)}function Cie(n,e){return e in n.a}function Y9n(n,e){return n.f=e,n}function Tie(n,e){return n.b=e,n}function Z9n(n,e){return n.c=e,n}function Mie(n,e){return n.g=e,n}function gG(n,e){return n.a=e,n}function pG(n,e){return n.f=e,n}function Aie(n,e){return n.k=e,n}function vG(n,e){return n.a=e,n}function Sie(n,e){return n.e=e,n}function mG(n,e){return n.e=e,n}function Pie(n,e){return n.f=e,n}function Iie(n,e){n.b=!0,n.d=e}function Oie(n,e){n.b=new mr(e)}function Die(n,e,t){e.td(n.a[t])}function $ie(n,e,t){e.we(n.a[t])}function Fie(n,e){return n.b-e.b}function xie(n,e){return n.g-e.g}function Lie(n,e){return n.s-e.s}function Nie(n,e){return n?0:e-1}function n8n(n,e){return n?0:e-1}function Bie(n,e){return n?e-1:0}function Rie(n,e){return e.Yf(n)}function od(n,e){return n.b=e,n}function vj(n,e){return n.a=e,n}function fd(n,e){return n.c=e,n}function hd(n,e){return n.d=e,n}function ld(n,e){return n.e=e,n}function kG(n,e){return n.f=e,n}function Uv(n,e){return n.a=e,n}function Xp(n,e){return n.b=e,n}function Vp(n,e){return n.c=e,n}function gn(n,e){return n.c=e,n}function Dn(n,e){return n.b=e,n}function pn(n,e){return n.d=e,n}function vn(n,e){return n.e=e,n}function _ie(n,e){return n.f=e,n}function mn(n,e){return n.g=e,n}function kn(n,e){return n.a=e,n}function yn(n,e){return n.i=e,n}function jn(n,e){return n.j=e,n}function e8n(n,e){return n.k=e,n}function Kie(n,e){return n.j=e,n}function Hie(n,e){yl(),Hr(e,n)}function qie(n,e,t){Nfe(n.a,e,t)}function t8n(n){mTn.call(this,n)}function yG(n){mTn.call(this,n)}function mj(n){uD.call(this,n)}function i8n(n){u2e.call(this,n)}function Q1(n){Ld.call(this,n)}function r8n(n){XD.call(this,n)}function c8n(n){XD.call(this,n)}function u8n(){Mz.call(this,"")}function Li(){this.a=0,this.b=0}function s8n(){this.b=0,this.a=0}function o8n(n,e){n.b=0,hb(n,e)}function Gie(n,e){n.c=e,n.b=!0}function f8n(n,e){return n.c._b(e)}function xo(n){return n.e&&n.e()}function nO(n){return n?n.d:null}function h8n(n,e){return LDn(n.b,e)}function zie(n){return n?n.g:null}function Uie(n){return n?n.i:null}function J1(n){return Ph(n),n.o}function ad(){ad=N,Mne=h4e()}function l8n(){l8n=N,vi=jve()}function Qp(){Qp=N,g1n=a4e()}function a8n(){a8n=N,hee=l4e()}function jG(){jG=N,oc=s6e()}function EG(){EG=N,Wl=N3()}function d8n(){throw T(new ye)}function b8n(){throw T(new ye)}function w8n(){throw T(new ye)}function g8n(){throw T(new ye)}function p8n(){throw T(new ye)}function v8n(){throw T(new ye)}function kj(n){this.a=new s2(n)}function CG(n){d_n(),gTe(this,n)}function Y1(n){this.a=new AD(n)}function vw(n,e){for(;n.ye(e););}function TG(n,e){for(;n.sd(e););}function mw(n,e){return n.a+=e,n}function eO(n,e){return n.a+=e,n}function r1(n,e){return n.a+=e,n}function dd(n,e){return n.a+=e,n}function Wv(n){return fl(n),n.a}function yj(n){return n.b!=n.d.c}function m8n(n){return n.l|n.m<<22}function MG(n,e){return n.d[e.p]}function k8n(n,e){return Q8e(n,e)}function AG(n,e,t){n.splice(e,t)}function y8n(n){n.c?rBn(n):cBn(n)}function jj(n){this.a=0,this.b=n}function j8n(){this.a=new B7(Pon)}function E8n(){this.b=new B7(won)}function C8n(){this.b=new B7(OK)}function T8n(){this.b=new B7(OK)}function M8n(){throw T(new ye)}function A8n(){throw T(new ye)}function S8n(){throw T(new ye)}function P8n(){throw T(new ye)}function I8n(){throw T(new ye)}function O8n(){throw T(new ye)}function D8n(){throw T(new ye)}function $8n(){throw T(new ye)}function F8n(){throw T(new ye)}function x8n(){throw T(new ye)}function Wie(){throw T(new ic)}function Xie(){throw T(new ic)}function L9(n){this.a=new L8n(n)}function L8n(n){cbe(this,n,cve())}function N9(n){return!n||iTn(n)}function B9(n){return Tf[n]!=-1}function Vie(){_A!=0&&(_A=0),KA=-1}function N8n(){iR==null&&(iR=[])}function Qie(n,e){$x(R(n.a),e)}function Jie(n,e){$x(R(n.a),e)}function R9(n,e){Sw.call(this,n,e)}function Jp(n,e){R9.call(this,n,e)}function SG(n,e){this.b=n,this.c=e}function B8n(n,e){this.b=n,this.a=e}function R8n(n,e){this.a=n,this.b=e}function _8n(n,e){this.a=n,this.b=e}function K8n(n,e){this.a=n,this.b=e}function H8n(n,e){this.a=n,this.b=e}function q8n(n,e){this.a=n,this.b=e}function G8n(n,e){this.a=n,this.b=e}function z8n(n,e){this.a=n,this.b=e}function U8n(n,e){this.a=n,this.b=e}function W8n(n,e){this.b=n,this.a=e}function X8n(n,e){this.b=n,this.a=e}function V8n(n,e){this.b=n,this.a=e}function Q8n(n,e){this.b=n,this.a=e}function Oe(n,e){this.f=n,this.g=e}function Yp(n,e){this.e=n,this.d=e}function bd(n,e){this.g=n,this.i=e}function tO(n,e){this.a=n,this.b=e}function J8n(n,e){this.a=n,this.f=e}function Y8n(n,e){this.b=n,this.c=e}function Yie(n,e){this.a=n,this.b=e}function Z8n(n,e){this.a=n,this.b=e}function iO(n,e){this.a=n,this.b=e}function n7n(n){Bz(n.dc()),this.c=n}function Ej(n){this.b=u(pe(n),83)}function e7n(n){this.a=u(pe(n),83)}function _0(n){this.a=u(pe(n),15)}function t7n(n){this.a=u(pe(n),15)}function Cj(n){this.b=u(pe(n),47)}function Tj(){this.q=new j.Date}function Zf(){Zf=N,Sin=new tln}function Zp(){Zp=N,X4=new nln}function Xv(n){return n.f.c+n.g.c}function _9(n,e){return n.b.Hc(e)}function i7n(n,e){return n.b.Ic(e)}function r7n(n,e){return n.b.Qc(e)}function c7n(n,e){return n.b.Hc(e)}function u7n(n,e){return n.c.uc(e)}function Ah(n,e){return n.a._b(e)}function s7n(n,e){return tt(n.c,e)}function o7n(n,e){return zu(n.b,e)}function f7n(n,e){return n>e&&e0}function cO(n,e){return fc(n,e)<0}function n5(n,e){return n.a.get(e)}function lre(n,e){return e.split(n)}function S7n(n,e){return zu(n.e,e)}function LG(n){return _n(n),!1}function xj(n){xn.call(this,n,21)}function are(n,e){cMn.call(this,n,e)}function Lj(n,e){Oe.call(this,n,e)}function uO(n,e){Oe.call(this,n,e)}function NG(n){_D(),uEn.call(this,n)}function BG(n,e){fCn(n,n.length,e)}function z9(n,e){BCn(n,n.length,e)}function dre(n,e,t){e.ud(n.a.Ge(t))}function bre(n,e,t){e.we(n.a.Fe(t))}function wre(n,e,t){e.td(n.a.Kb(t))}function gre(n,e,t){n.Mb(t)&&e.td(t)}function e5(n,e,t){n.splice(e,0,t)}function pre(n,e){return au(n.e,e)}function Nj(n,e){this.d=n,this.e=e}function P7n(n,e){this.b=n,this.a=e}function I7n(n,e){this.b=n,this.a=e}function RG(n,e){this.b=n,this.a=e}function O7n(n,e){this.a=n,this.b=e}function D7n(n,e){this.a=n,this.b=e}function $7n(n,e){this.a=n,this.b=e}function F7n(n,e){this.a=n,this.b=e}function f2(n,e){this.a=n,this.b=e}function _G(n,e){this.b=n,this.a=e}function KG(n,e){this.b=n,this.a=e}function Bj(n,e){Oe.call(this,n,e)}function Rj(n,e){Oe.call(this,n,e)}function HG(n,e){Oe.call(this,n,e)}function qG(n,e){Oe.call(this,n,e)}function kw(n,e){Oe.call(this,n,e)}function sO(n,e){Oe.call(this,n,e)}function oO(n,e){Oe.call(this,n,e)}function fO(n,e){Oe.call(this,n,e)}function _j(n,e){Oe.call(this,n,e)}function GG(n,e){Oe.call(this,n,e)}function hO(n,e){Oe.call(this,n,e)}function U9(n,e){Oe.call(this,n,e)}function Kj(n,e){Oe.call(this,n,e)}function lO(n,e){Oe.call(this,n,e)}function t5(n,e){Oe.call(this,n,e)}function zG(n,e){Oe.call(this,n,e)}function zt(n,e){Oe.call(this,n,e)}function Hj(n,e){Oe.call(this,n,e)}function x7n(n,e){this.a=n,this.b=e}function L7n(n,e){this.a=n,this.b=e}function N7n(n,e){this.a=n,this.b=e}function B7n(n,e){this.a=n,this.b=e}function R7n(n,e){this.a=n,this.b=e}function _7n(n,e){this.a=n,this.b=e}function K7n(n,e){this.a=n,this.b=e}function H7n(n,e){this.a=n,this.b=e}function q7n(n,e){this.a=n,this.b=e}function UG(n,e){this.b=n,this.a=e}function G7n(n,e){this.b=n,this.a=e}function z7n(n,e){this.b=n,this.a=e}function U7n(n,e){this.b=n,this.a=e}function t3(n,e){this.c=n,this.d=e}function W7n(n,e){this.e=n,this.d=e}function X7n(n,e){this.a=n,this.b=e}function V7n(n,e){this.b=e,this.c=n}function qj(n,e){Oe.call(this,n,e)}function W9(n,e){Oe.call(this,n,e)}function aO(n,e){Oe.call(this,n,e)}function i5(n,e){Oe.call(this,n,e)}function WG(n,e){Oe.call(this,n,e)}function dO(n,e){Oe.call(this,n,e)}function bO(n,e){Oe.call(this,n,e)}function X9(n,e){Oe.call(this,n,e)}function XG(n,e){Oe.call(this,n,e)}function wO(n,e){Oe.call(this,n,e)}function r5(n,e){Oe.call(this,n,e)}function VG(n,e){Oe.call(this,n,e)}function c5(n,e){Oe.call(this,n,e)}function u5(n,e){Oe.call(this,n,e)}function H0(n,e){Oe.call(this,n,e)}function gO(n,e){Oe.call(this,n,e)}function pO(n,e){Oe.call(this,n,e)}function QG(n,e){Oe.call(this,n,e)}function s5(n,e){Oe.call(this,n,e)}function vO(n,e){Oe.call(this,n,e)}function Gj(n,e){Oe.call(this,n,e)}function V9(n,e){Oe.call(this,n,e)}function Q9(n,e){Oe.call(this,n,e)}function h2(n,e){Oe.call(this,n,e)}function mO(n,e){Oe.call(this,n,e)}function JG(n,e){Oe.call(this,n,e)}function kO(n,e){Oe.call(this,n,e)}function yO(n,e){Oe.call(this,n,e)}function YG(n,e){Oe.call(this,n,e)}function jO(n,e){Oe.call(this,n,e)}function EO(n,e){Oe.call(this,n,e)}function CO(n,e){Oe.call(this,n,e)}function TO(n,e){Oe.call(this,n,e)}function ZG(n,e){Oe.call(this,n,e)}function Q7n(n,e){this.b=n,this.a=e}function J7n(n,e){this.a=n,this.b=e}function Y7n(n,e){this.a=n,this.b=e}function Z7n(n,e){this.a=n,this.b=e}function nkn(n,e){this.a=n,this.b=e}function nz(n,e){Oe.call(this,n,e)}function ez(n,e){Oe.call(this,n,e)}function ekn(n,e){this.b=n,this.d=e}function tz(n,e){Oe.call(this,n,e)}function iz(n,e){Oe.call(this,n,e)}function tkn(n,e){this.a=n,this.b=e}function ikn(n,e){this.a=n,this.b=e}function zj(n,e){Oe.call(this,n,e)}function o5(n,e){Oe.call(this,n,e)}function rz(n,e){Oe.call(this,n,e)}function cz(n,e){Oe.call(this,n,e)}function uz(n,e){Oe.call(this,n,e)}function MO(n,e){Oe.call(this,n,e)}function sz(n,e){Oe.call(this,n,e)}function AO(n,e){Oe.call(this,n,e)}function Uj(n,e){Oe.call(this,n,e)}function SO(n,e){Oe.call(this,n,e)}function PO(n,e){Oe.call(this,n,e)}function J9(n,e){Oe.call(this,n,e)}function IO(n,e){Oe.call(this,n,e)}function oz(n,e){Oe.call(this,n,e)}function Y9(n,e){Oe.call(this,n,e)}function fz(n,e){Oe.call(this,n,e)}function vre(n,e){return au(n.c,e)}function mre(n,e){return au(e.b,n)}function kre(n,e){return-n.b.Je(e)}function hz(n,e){return au(n.g,e)}function Z9(n,e){Oe.call(this,n,e)}function l2(n,e){Oe.call(this,n,e)}function rkn(n,e){this.a=n,this.b=e}function ckn(n,e){this.a=n,this.b=e}function fn(n,e){this.a=n,this.b=e}function f5(n,e){Oe.call(this,n,e)}function h5(n,e){Oe.call(this,n,e)}function n8(n,e){Oe.call(this,n,e)}function OO(n,e){Oe.call(this,n,e)}function Wj(n,e){Oe.call(this,n,e)}function l5(n,e){Oe.call(this,n,e)}function DO(n,e){Oe.call(this,n,e)}function Xj(n,e){Oe.call(this,n,e)}function yw(n,e){Oe.call(this,n,e)}function e8(n,e){Oe.call(this,n,e)}function a5(n,e){Oe.call(this,n,e)}function d5(n,e){Oe.call(this,n,e)}function t8(n,e){Oe.call(this,n,e)}function Vj(n,e){Oe.call(this,n,e)}function jw(n,e){Oe.call(this,n,e)}function Qj(n,e){Oe.call(this,n,e)}function ukn(n,e){this.a=n,this.b=e}function skn(n,e){this.a=n,this.b=e}function okn(n,e){this.a=n,this.b=e}function fkn(n,e){this.a=n,this.b=e}function hkn(n,e){this.a=n,this.b=e}function lkn(n,e){this.a=n,this.b=e}function Pi(n,e){this.a=n,this.b=e}function Jj(n,e){Oe.call(this,n,e)}function akn(n,e){this.a=n,this.b=e}function dkn(n,e){this.a=n,this.b=e}function bkn(n,e){this.a=n,this.b=e}function wkn(n,e){this.a=n,this.b=e}function gkn(n,e){this.a=n,this.b=e}function pkn(n,e){this.a=n,this.b=e}function vkn(n,e){this.b=n,this.a=e}function mkn(n,e){this.b=n,this.a=e}function kkn(n,e){this.b=n,this.a=e}function ykn(n,e){this.b=n,this.a=e}function jkn(n,e){this.a=n,this.b=e}function Ekn(n,e){this.a=n,this.b=e}function yre(n,e){J9e(n.a,u(e,56))}function Ckn(n,e){f0e(n.a,u(e,11))}function jre(n,e){return h3(),e!=n}function Tkn(){return Q9n(),new Szn}function Mkn(){c$(),this.b=new fi}function Akn(){hM(),this.a=new fi}function Skn(){tX(),lW.call(this)}function a2(n,e){Oe.call(this,n,e)}function Pkn(n,e){this.a=n,this.b=e}function Ikn(n,e){this.a=n,this.b=e}function Yj(n,e){this.a=n,this.b=e}function Okn(n,e){this.a=n,this.b=e}function Dkn(n,e){this.a=n,this.b=e}function $kn(n,e){this.a=n,this.b=e}function Fkn(n,e){this.d=n,this.b=e}function lz(n,e){this.d=n,this.e=e}function xkn(n,e){this.f=n,this.c=e}function i8(n,e){this.b=n,this.c=e}function az(n,e){this.i=n,this.g=e}function Lkn(n,e){this.e=n,this.a=e}function Nkn(n,e){this.a=n,this.b=e}function dz(n,e){n.i=null,nT(n,e)}function Ere(n,e){n&&it($y,n,e)}function Bkn(n,e){return NF(n.a,e)}function Zj(n){return g7(n.c,n.b)}function Vr(n){return n?n.dd():null}function B(n){return n??null}function q0(n){return typeof n===X2}function G0(n){return typeof n===UZ}function mi(n){return typeof n===EL}function el(n,e){return n.Hd().Xb(e)}function nE(n,e){return Rbe(n.Kc(),e)}function gd(n,e){return fc(n,e)==0}function Cre(n,e){return fc(n,e)>=0}function b5(n,e){return fc(n,e)!=0}function Tre(n){return""+(_n(n),n)}function r8(n,e){return n.substr(e)}function Rkn(n){return $u(n),n.d.gc()}function $O(n){return yme(n,n.c),n}function eE(n){return A5(n==null),n}function w5(n,e){return n.a+=""+e,n}function dr(n,e){return n.a+=""+e,n}function g5(n,e){return n.a+=""+e,n}function rc(n,e){return n.a+=""+e,n}function De(n,e){return n.a+=""+e,n}function bz(n,e){return n.a+=""+e,n}function _kn(n,e){Kt(n,e,n.a,n.a.a)}function ua(n,e){Kt(n,e,n.c.b,n.c)}function Mre(n,e,t){VFn(e,Mx(n,t))}function Are(n,e,t){VFn(e,Mx(n,t))}function Sre(n,e){k0e(new ie(n),e)}function Kkn(n,e){n.q.setTime($d(e))}function Hkn(n,e){kW.call(this,n,e)}function qkn(n,e){kW.call(this,n,e)}function FO(n,e){kW.call(this,n,e)}function Gkn(n){Eu(this),Z5(this,n)}function wz(n){return Ln(n,0),null}function Lo(n){return n.a=0,n.b=0,n}function zkn(n,e){return n.a=e.g+1,n}function Pre(n,e){return n.j[e.p]==2}function gz(n){return lhe(u(n,79))}function Ukn(){Ukn=N,jUn=Fe(qF())}function Wkn(){Wkn=N,RWn=Fe(PNn())}function Xkn(){this.b=new s2(sb(12))}function Vkn(){this.b=0,this.a=!1}function Qkn(){this.b=0,this.a=!1}function p5(n){this.a=n,TI.call(this)}function Jkn(n){this.a=n,TI.call(this)}function In(n,e){ii.call(this,n,e)}function xO(n,e){V0.call(this,n,e)}function Ew(n,e){az.call(this,n,e)}function LO(n,e){H3.call(this,n,e)}function Ykn(n,e){c8.call(this,n,e)}function He(n,e){$j(),it(eI,n,e)}function NO(n,e){return Yu(n.a,0,e)}function Zkn(n,e){return n.a.a.a.cc(e)}function nyn(n,e){return B(n)===B(e)}function Ire(n,e){return Zt(n.a,e.a)}function Ore(n,e){return Uc(n.a,e.a)}function Dre(n,e){return xCn(n.a,e.a)}function Pf(n,e){return n.indexOf(e)}function pd(n,e){return n==e?0:n?1:-1}function tE(n){return n<10?"0"+n:""+n}function $re(n){return pe(n),new p5(n)}function eyn(n){return Bc(n.l,n.m,n.h)}function i3(n){return Gt((_n(n),n))}function Fre(n){return Gt((_n(n),n))}function tyn(n,e){return Uc(n.g,e.g)}function $r(n){return typeof n===UZ}function xre(n){return n==b0||n==Hb}function Lre(n){return n==b0||n==Kb}function pz(n){return Fr(n.b.b,n,0)}function iyn(n){this.a=Tkn(),this.b=n}function ryn(n){this.a=Tkn(),this.b=n}function Nre(n,e){return W(n.a,e),e}function Bre(n,e){return W(n.c,e),n}function cyn(n,e){return rs(n.a,e),n}function Rre(n,e){return wo(),e.a+=n}function _re(n,e){return wo(),e.a+=n}function Kre(n,e){return wo(),e.c+=n}function vz(n,e){S3(n,0,n.length,e)}function Sh(){Tq.call(this,new ba)}function uyn(){xE.call(this,0,0,0,0)}function d2(){ys.call(this,0,0,0,0)}function mr(n){this.a=n.a,this.b=n.b}function tl(n){return n==Zs||n==Ao}function r3(n){return n==Yh||n==Jh}function syn(n){return n==xg||n==Fg}function Cw(n){return n!=jf&&n!=ql}function Hu(n){return n.Lg()&&n.Mg()}function oyn(n){return JE(u(n,118))}function iE(n){return rs(new hi,n)}function fyn(n,e){return new H3(e,n)}function Hre(n,e){return new H3(e,n)}function mz(n,e,t){UC(n,e),WC(n,t)}function rE(n,e,t){Rd(n,e),Bd(n,t)}function Jo(n,e,t){Zc(n,e),nu(n,t)}function cE(n,e,t){D3(n,e),F3(n,t)}function uE(n,e,t){$3(n,e),x3(n,t)}function BO(n,e){X3(n,e),L3(n,n.D)}function kz(n){xkn.call(this,n,!0)}function hyn(n,e,t){fU.call(this,n,e,t)}function il(n){jl(),qbe.call(this,n)}function lyn(){Lj.call(this,"Head",1)}function ayn(){Lj.call(this,"Tail",3)}function RO(n){n.c=F(Zn,rn,1,0,5,1)}function dyn(n){n.a=F(Zn,rn,1,8,5,1)}function byn(n){Yc(n.xf(),new t5n(n))}function Tw(n){return n!=null?mt(n):0}function qre(n,e){return ob(e,nf(n))}function Gre(n,e){return ob(e,nf(n))}function zre(n,e){return n[n.length]=e}function Ure(n,e){return n[n.length]=e}function yz(n){return zoe(n.b.Kc(),n.a)}function Wre(n,e){return ZC(BD(n.d),e)}function Xre(n,e){return ZC(BD(n.g),e)}function Vre(n,e){return ZC(BD(n.j),e)}function tr(n,e){ii.call(this,n.b,e)}function vd(n){xE.call(this,n,n,n,n)}function jz(n){return n.b&&uL(n),n.a}function Ez(n){return n.b&&uL(n),n.c}function Qre(n,e){pf||(n.b=e)}function _O(n,e,t){return Mt(n,e,t),t}function wyn(n,e,t){Mt(n.c[e.g],e.g,t)}function Jre(n,e,t){u(n.c,69).Xh(e,t)}function Yre(n,e,t){Jo(t,t.i+n,t.j+e)}function Zre(n,e){me(bc(n.a),PMn(e))}function nce(n,e){me(Ou(n.a),IMn(e))}function v5(n){Je(),cd.call(this,n)}function ece(n){return n==null?0:mt(n)}function gyn(){gyn=N,hK=new f6(cH)}function je(){je=N,new pyn,new X}function pyn(){new we,new we,new we}function Cz(){Cz=N,Hq(),bin=new we}function Yo(){Yo=N,j.Math.log(2)}function ms(){ms=N,Eh=(E7n(),Dne)}function tce(){throw T(new t1(izn))}function ice(){throw T(new t1(izn))}function rce(){throw T(new t1(rzn))}function cce(){throw T(new t1(rzn))}function vyn(n){this.a=n,HU.call(this,n)}function KO(n){this.a=n,Ej.call(this,n)}function HO(n){this.a=n,Ej.call(this,n)}function bi(n,e){mD(n.c,n.c.length,e)}function Kr(n){return n.ae?1:0}function kyn(n,e){return fc(n,e)>0?n:e}function Bc(n,e,t){return{l:n,m:e,h:t}}function uce(n,e){n.a!=null&&Ckn(e,n.a)}function yyn(n){n.a=new aI,n.c=new aI}function sE(n){this.b=n,this.a=new X}function jyn(n){this.b=new san,this.a=n}function Mz(n){vU.call(this),this.a=n}function Eyn(){Lj.call(this,"Range",2)}function Cyn(){kJ(),this.a=new B7(Hrn)}function sce(n,e){pe(e),Iw(n).Jc(new ps)}function oce(n,e){return Zu(),e.n.b+=n}function fce(n,e,t){return it(n.g,t,e)}function hce(n,e,t){return it(n.k,t,e)}function lce(n,e){return it(n.a,e.a,e)}function Mw(n,e,t){return _Q(e,t,n.c)}function Az(n){return new fn(n.c,n.d)}function ace(n){return new fn(n.c,n.d)}function Qr(n){return new fn(n.a,n.b)}function Tyn(n,e){return xEe(n.a,e,null)}function dce(n){Hi(n,null),Ei(n,null)}function Myn(n){s$(n,null),o$(n,null)}function Ayn(){c8.call(this,null,null)}function Syn(){wE.call(this,null,null)}function Sz(n){this.a=n,we.call(this)}function bce(n){this.b=(Pn(),new DI(n))}function oE(n){n.j=F(Ain,q,310,0,0,1)}function wce(n,e,t){n.c.Vc(e,u(t,133))}function gce(n,e,t){n.c.ji(e,u(t,133))}function Pyn(n,e){de(n),n.Gc(u(e,15))}function m5(n,e){return Jje(n.c,n.b,e)}function pce(n,e){return new Jyn(n.Kc(),e)}function qO(n,e){return gwe(n.Kc(),e)!=-1}function Pz(n,e){return n.a.Bc(e)!=null}function fE(n){return n.Ob()?n.Pb():null}function Iyn(n){return Hs(n,0,n.length)}function I(n,e){return n!=null&&WF(n,e)}function vce(n,e){n.q.setHours(e),S6(n,e)}function Oyn(n,e){n.c&&(ZU(e),iMn(e))}function mce(n,e,t){u(n.Kb(t),164).Nb(e)}function kce(n,e,t){return SEe(n,e,t),t}function Dyn(n,e,t){n.a=e^1502,n.b=t^tN}function GO(n,e,t){return n.a[e.g][t.g]}function Zo(n,e){return n.a[e.c.p][e.p]}function yce(n,e){return n.e[e.c.p][e.p]}function jce(n,e){return n.c[e.c.p][e.p]}function Ece(n,e){return n.j[e.p]=D9e(e)}function Cce(n,e){return DX(n.f,e.tg())}function Tce(n,e){return DX(n.b,e.tg())}function Mce(n,e){return n.a0?e*e/n:e*e*100}function Jce(n,e){return n>0?e/(n*n):e*100}function Yce(n,e,t){return W(e,e$n(n,t))}function Zce(n,e,t){DC(),n.Xe(e)&&t.td(n)}function s3(n,e,t){var i;i=n.Zc(e),i.Rb(t)}function U0(n,e,t){return n.a+=e,n.b+=t,n}function nue(n,e,t){return n.a*=e,n.b*=t,n}function o8(n,e,t){return n.a-=e,n.b-=t,n}function Zz(n,e){return n.a=e.a,n.b=e.b,n}function vE(n){return n.a=-n.a,n.b=-n.b,n}function fjn(n){this.c=n,this.a=1,this.b=1}function hjn(n){this.c=n,Zc(n,0),nu(n,0)}function ljn(n){Ct.call(this),V5(this,n)}function ajn(n){yL(),Nmn(this),this.mf(n)}function djn(n,e){Zv(),c8.call(this,n,e)}function nU(n,e){c1(),wE.call(this,n,e)}function bjn(n,e){c1(),wE.call(this,n,e)}function wjn(n,e){c1(),nU.call(this,n,e)}function qu(n,e,t){Wu.call(this,n,e,t,2)}function JO(n,e){ms(),FE.call(this,n,e)}function gjn(n,e){ms(),JO.call(this,n,e)}function eU(n,e){ms(),JO.call(this,n,e)}function pjn(n,e){ms(),eU.call(this,n,e)}function tU(n,e){ms(),FE.call(this,n,e)}function vjn(n,e){ms(),tU.call(this,n,e)}function mjn(n,e){ms(),FE.call(this,n,e)}function eue(n,e){return n.c.Fc(u(e,133))}function iU(n,e,t){return jM(G8(n,e),t)}function tue(n,e,t){return e.Qk(n.e,n.c,t)}function iue(n,e,t){return e.Rk(n.e,n.c,t)}function YO(n,e){return pl(n.e,u(e,49))}function rue(n,e,t){s6(Ou(n.a),e,IMn(t))}function cue(n,e,t){s6(bc(n.a),e,PMn(t))}function rU(n,e){e.$modCount=n.$modCount}function C5(){C5=N,Xm=new kt("root")}function o3(){o3=N,xy=new w9n,new g9n}function kjn(){this.a=new Od,this.b=new Od}function cU(){RIn.call(this),this.Bb|=Yi}function yjn(){Oe.call(this,"GROW_TREE",0)}function uue(n){return n==null?null:CCe(n)}function sue(n){return n==null?null:D5e(n)}function oue(n){return n==null?null:Lr(n)}function fue(n){return n==null?null:Lr(n)}function Ph(n){n.o==null&&u9e(n)}function sn(n){return A5(n==null||q0(n)),n}function Y(n){return A5(n==null||G0(n)),n}function Te(n){return A5(n==null||mi(n)),n}function uU(n){this.q=new j.Date($d(n))}function f8(n,e){this.c=n,Yp.call(this,n,e)}function mE(n,e){this.a=n,f8.call(this,n,e)}function hue(n,e){this.d=n,Ovn(this),this.b=e}function sU(n,e){P$.call(this,n),this.a=e}function oU(n,e){P$.call(this,n),this.a=e}function lue(n){xQ.call(this,0,0),this.f=n}function fU(n,e,t){IC.call(this,n,e,t,null)}function jjn(n,e,t){IC.call(this,n,e,t,null)}function aue(n,e,t){return n.ue(e,t)<=0?t:e}function due(n,e,t){return n.ue(e,t)<=0?e:t}function bue(n,e){return u(xd(n.b,e),149)}function wue(n,e){return u(xd(n.c,e),229)}function ZO(n){return u(un(n.a,n.b),287)}function Ejn(n){return new fn(n.c,n.d+n.a)}function Cjn(n){return Zu(),syn(u(n,197))}function W0(){W0=N,prn=Cn((Vu(),id))}function gue(n,e){e.a?e7e(n,e):zO(n.a,e.b)}function Tjn(n,e){pf||W(n.a,e)}function pue(n,e){return H9(),K3(e.d.i,n)}function vue(n,e){return x2(),new ABn(e,n)}function Of(n,e){return T8(e,ann),n.f=e,n}function hU(n,e,t){return t=ss(n,e,3,t),t}function lU(n,e,t){return t=ss(n,e,6,t),t}function aU(n,e,t){return t=ss(n,e,9,t),t}function h8(n,e,t){++n.j,n.Ki(),A$(n,e,t)}function Mjn(n,e,t){++n.j,n.Hi(e,n.oi(e,t))}function Ajn(n,e,t){var i;i=n.Zc(e),i.Rb(t)}function Sjn(n,e,t){return MZ(n.c,n.b,e,t)}function dU(n,e){return(e&nt)%n.d.length}function ii(n,e){kt.call(this,n),this.a=e}function bU(n,e){xq.call(this,n),this.a=e}function nD(n,e){xq.call(this,n),this.a=e}function Pjn(n,e){this.c=n,Ld.call(this,e)}function Ijn(n,e){this.a=n,Omn.call(this,e)}function l8(n,e){this.a=n,Omn.call(this,e)}function Ojn(n){this.a=(is(n,Pb),new Pc(n))}function Djn(n){this.a=(is(n,Pb),new Pc(n))}function a8(n){return!n.a&&(n.a=new Rr),n.a}function $jn(n){return n>8?0:n+1}function mue(n,e){return qn(),n==e?0:n?1:-1}function wU(n,e,t){return m2(n,u(e,22),t)}function kue(n,e,t){return n.apply(e,t)}function Fjn(n,e,t){return n.a+=Hs(e,0,t),n}function gU(n,e){var t;return t=n.e,n.e=e,t}function yue(n,e){var t;t=n[eN],t.call(n,e)}function jue(n,e){var t;t=n[eN],t.call(n,e)}function X0(n,e){n.a.Vc(n.b,e),++n.b,n.c=-1}function xjn(n){Eu(n.e),n.d.b=n.d,n.d.a=n.d}function d8(n){n.b?d8(n.b):n.f.c.zc(n.e,n.d)}function Eue(n,e,t){ca(),Svn(n,e.Ce(n.a,t))}function Cue(n,e){return nO(p$n(n.a,e,!0))}function Tue(n,e){return nO(v$n(n.a,e,!0))}function bo(n,e){return pj(new Array(e),n)}function eD(n){return String.fromCharCode(n)}function Mue(n){return n==null?null:n.message}function Ljn(){this.a=new X,this.b=new X}function Njn(){this.a=new LH,this.b=new Umn}function Bjn(){this.b=new Li,this.c=new X}function pU(){this.d=new Li,this.e=new Li}function vU(){this.n=new Li,this.o=new Li}function kE(){this.n=new i2,this.i=new d2}function Rjn(){this.a=new v4n,this.b=new cwn}function _jn(){this.a=new X,this.d=new X}function Kjn(){this.b=new fi,this.a=new fi}function Hjn(){this.b=new we,this.a=new we}function qjn(){this.b=new E8n,this.a=new sgn}function Gjn(){kE.call(this),this.a=new Li}function T5(n){Jbe.call(this,n,(FC(),vR))}function mU(n,e,t,i){xE.call(this,n,e,t,i)}function Aue(n,e,t){t!=null&&JC(e,rx(n,t))}function Sue(n,e,t){t!=null&&YC(e,rx(n,t))}function kU(n,e,t){return t=ss(n,e,11,t),t}function ot(n,e){return n.a+=e.a,n.b+=e.b,n}function ki(n,e){return n.a-=e.a,n.b-=e.b,n}function Pue(n,e){return n.n.a=(_n(e),e+10)}function Iue(n,e){return n.n.a=(_n(e),e+10)}function Oue(n,e){return e==n||o4(sM(e),n)}function zjn(n,e){return it(n.a,e,"")==null}function Due(n,e){return H9(),!K3(e.d.i,n)}function $ue(n,e){tl(n.f)?Qme(n,e):Fve(n,e)}function Fue(n,e){var t;return t=e.Hh(n.a),t}function V0(n,e){vr.call(this,rm+n+Ra+e)}function g2(n,e,t,i){V.call(this,n,e,t,i)}function yU(n,e,t,i){V.call(this,n,e,t,i)}function Ujn(n,e,t,i){yU.call(this,n,e,t,i)}function Wjn(n,e,t,i){zE.call(this,n,e,t,i)}function tD(n,e,t,i){zE.call(this,n,e,t,i)}function jU(n,e,t,i){zE.call(this,n,e,t,i)}function Xjn(n,e,t,i){tD.call(this,n,e,t,i)}function EU(n,e,t,i){tD.call(this,n,e,t,i)}function Fn(n,e,t,i){jU.call(this,n,e,t,i)}function Vjn(n,e,t,i){EU.call(this,n,e,t,i)}function Qjn(n,e,t,i){yW.call(this,n,e,t,i)}function Jjn(n,e,t){this.a=n,Vz.call(this,e,t)}function Yjn(n,e,t){this.c=e,this.b=t,this.a=n}function xue(n,e,t){return n.d=u(e.Kb(t),164)}function CU(n,e){return n.Aj().Nh().Kh(n,e)}function TU(n,e){return n.Aj().Nh().Ih(n,e)}function Zjn(n,e){return _n(n),B(n)===B(e)}function An(n,e){return _n(n),B(n)===B(e)}function iD(n,e){return nO(p$n(n.a,e,!1))}function rD(n,e){return nO(v$n(n.a,e,!1))}function Lue(n,e){return n.b.sd(new D7n(n,e))}function Nue(n,e){return n.b.sd(new $7n(n,e))}function nEn(n,e){return n.b.sd(new F7n(n,e))}function MU(n,e,t){return n.lastIndexOf(e,t)}function Bue(n,e,t){return Zt(n[e.b],n[t.b])}function Rue(n,e){return H(e,(nn(),Jk),n)}function _ue(n,e){return Uc(e.a.d.p,n.a.d.p)}function Kue(n,e){return Uc(n.a.d.p,e.a.d.p)}function Hue(n,e){return Zt(n.c-n.s,e.c-e.s)}function eEn(n){return n.c?Fr(n.c.a,n,0):-1}function que(n){return n<100?null:new Q1(n)}function p2(n){return n==td||n==jh||n==Ac}function tEn(n,e){return I(e,15)&&oBn(n.c,e)}function Gue(n,e){pf||e&&(n.d=e)}function cD(n,e){var t;return t=e,!!VV(n,t)}function AU(n,e){this.c=n,DD.call(this,n,e)}function iEn(n){this.c=n,FO.call(this,IM,0)}function rEn(n,e){Voe.call(this,n,n.length,e)}function zue(n,e,t){return u(n.c,69).lk(e,t)}function yE(n,e,t){return u(n.c,69).mk(e,t)}function Uue(n,e,t){return tue(n,u(e,332),t)}function SU(n,e,t){return iue(n,u(e,332),t)}function Wue(n,e,t){return txn(n,u(e,332),t)}function cEn(n,e,t){return zve(n,u(e,332),t)}function M5(n,e){return e==null?null:ab(n.b,e)}function PU(n){return G0(n)?(_n(n),n):n.ke()}function jE(n){return!isNaN(n)&&!isFinite(n)}function uEn(n){Df(),this.a=(Pn(),new Wp(n))}function b8(n){h3(),this.d=n,this.a=new gw}function ks(n,e,t){this.a=n,this.b=e,this.c=t}function sEn(n,e,t){this.a=n,this.b=e,this.c=t}function oEn(n,e,t){this.d=n,this.b=t,this.a=e}function uD(n){yyn(this),_s(this),Vi(this,n)}function du(n){RO(this),GU(this.c,0,n.Pc())}function fEn(n){Uu(n.a),uPn(n.c,n.b),n.b=null}function hEn(n){this.a=n,Zf(),eu(Date.now())}function lEn(){lEn=N,Xin=new ou,XA=new ou}function sD(){sD=N,Rin=new iln,Pzn=new rln}function aEn(){aEn=N,Nne=F(Zn,rn,1,0,5,1)}function dEn(){dEn=N,eee=F(Zn,rn,1,0,5,1)}function IU(){IU=N,tee=F(Zn,rn,1,0,5,1)}function Df(){Df=N,new Bq((Pn(),Pn(),cr))}function Xue(n){return FC(),$e((pPn(),Dzn),n)}function Vue(n){return hf(),$e((LSn(),Bzn),n)}function Que(n){return $T(),$e((qAn(),Gzn),n)}function Jue(n){return RC(),$e((GAn(),zzn),n)}function Yue(n){return dM(),$e((IOn(),Uzn),n)}function Zue(n){return _o(),$e(($Sn(),Vzn),n)}function nse(n){return Cu(),$e((FSn(),Jzn),n)}function ese(n){return Jc(),$e((xSn(),Zzn),n)}function tse(n){return SM(),$e((Ukn(),jUn),n)}function ise(n){return Hd(),$e((mPn(),CUn),n)}function rse(n){return K2(),$e((kPn(),MUn),n)}function cse(n){return d6(),$e((yPn(),PUn),n)}function use(n){return Aj(),$e((yAn(),IUn),n)}function sse(n){return _C(),$e((zAn(),WUn),n)}function ose(n){return W5(),$e((NSn(),bWn),n)}function fse(n){return Qi(),$e((JPn(),vWn),n)}function hse(n){return G3(),$e((vPn(),EWn),n)}function lse(n){return qd(),$e((BSn(),PWn),n)}function OU(n,e){if(!n)throw T(new Hn(e))}function ase(n){return Qn(),$e((vIn(),$Wn),n)}function DU(n){xE.call(this,n.d,n.c,n.a,n.b)}function oD(n){xE.call(this,n.d,n.c,n.a,n.b)}function $U(n,e,t){this.b=n,this.c=e,this.a=t}function EE(n,e,t){this.b=n,this.a=e,this.c=t}function bEn(n,e,t){this.a=n,this.b=e,this.c=t}function FU(n,e,t){this.a=n,this.b=e,this.c=t}function wEn(n,e,t){this.a=n,this.b=e,this.c=t}function xU(n,e,t){this.a=n,this.b=e,this.c=t}function gEn(n,e,t){this.b=n,this.a=e,this.c=t}function CE(n,e,t){this.e=e,this.b=n,this.d=t}function dse(n,e,t){return ca(),n.a.Od(e,t),e}function fD(n){var e;return e=new Dln,e.e=n,e}function LU(n){var e;return e=new Zmn,e.b=n,e}function w8(){w8=N,sS=new Fdn,oS=new xdn}function wo(){wo=N,WWn=new pbn,XWn=new vbn}function bse(n){return aT(),$e((EPn(),HWn),n)}function wse(n){return ff(),$e((TPn(),JWn),n)}function gse(n){return lM(),$e((mOn(),cXn),n)}function pse(n){return q2(),$e((yIn(),uXn),n)}function vse(n){return OC(),$e((JAn(),sXn),n)}function mse(n){return F2(),$e((RSn(),oXn),n)}function kse(n){return Vw(),$e((UPn(),ZWn),n)}function yse(n){return Kd(),$e((HSn(),rXn),n)}function jse(n){return VC(),$e((_Sn(),fXn),n)}function Ese(n){return Pa(),$e((GPn(),hXn),n)}function Cse(n){return V8(),$e((WAn(),lXn),n)}function Tse(n){return ya(),$e((KSn(),dXn),n)}function Mse(n){return eM(),$e((TIn(),bXn),n)}function Ase(n){return K8(),$e((XAn(),wXn),n)}function Sse(n){return A7(),$e((EIn(),gXn),n)}function Pse(n){return h4(),$e((jIn(),pXn),n)}function Ise(n){return or(),$e((zOn(),vXn),n)}function Ose(n){return q3(),$e((GSn(),mXn),n)}function Dse(n){return Nh(),$e((qSn(),yXn),n)}function $se(n){return kC(),$e((YAn(),jXn),n)}function Fse(n){return Ss(),$e((WPn(),EXn),n)}function xse(n){return JT(),$e((CIn(),BQn),n)}function Lse(n){return i6(),$e((zSn(),RQn),n)}function Nse(n){return wb(),$e((MPn(),_Qn),n)}function Bse(n){return ur(),$e((XSn(),UQn),n)}function Rse(n){return Zw(),$e((vOn(),HQn),n)}function _se(n){return Rh(),$e((WSn(),qQn),n)}function Kse(n){return z8(),$e((QAn(),GQn),n)}function Hse(n){return oT(),$e((USn(),WQn),n)}function qse(n){return b6(),$e((zPn(),KQn),n)}function Gse(n){return x8(),$e((VAn(),XQn),n)}function zse(n){return Q3(),$e((QSn(),VQn),n)}function Use(n){return uT(),$e((JSn(),QQn),n)}function Wse(n){return dT(),$e((VSn(),JQn),n)}function Xse(n){return _d(),$e((YSn(),hJn),n)}function Vse(n){return z5(),$e((nSn(),wJn),n)}function Qse(n){return Ff(),$e((eSn(),jJn),n)}function Jse(n){return ef(),$e((tSn(),CJn),n)}function Yse(n){return No(),$e((ZAn(),RJn),n)}function Zse(n){return Id(),$e((iSn(),UJn),n)}function noe(n){return c4(),$e((jPn(),WJn),n)}function eoe(n){return k6(),$e((MIn(),VJn),n)}function toe(n){return aC(),$e((uSn(),fYn),n)}function ioe(n){return iT(),$e((cSn(),wYn),n)}function roe(n){return gC(),$e((rSn(),hYn),n)}function coe(n){return CT(),$e((ZSn(),pYn),n)}function uoe(n){return $C(),$e((sSn(),vYn),n)}function soe(n){return f7(),$e((nPn(),mYn),n)}function ooe(n){return qT(),$e((CPn(),FYn),n)}function foe(n){return sT(),$e((tPn(),xYn),n)}function hoe(n){return ET(),$e((ePn(),LYn),n)}function loe(n){return g4(),$e((QPn(),tZn),n)}function aoe(n){return w7(),$e((iPn(),iZn),n)}function doe(n){return Pj(),$e((mAn(),rZn),n)}function boe(n){return Ij(),$e((vAn(),uZn),n)}function woe(n){return L8(),$e((fSn(),sZn),n)}function goe(n){return P7(),$e((XPn(),oZn),n)}function poe(n){return Jv(),$e((kAn(),CZn),n)}function voe(n){return c7(),$e((oSn(),TZn),n)}function moe(n){return Ho(),$e((VPn(),OZn),n)}function koe(n){return y1(),$e((kOn(),$Zn),n)}function yoe(n){return oh(),$e((kIn(),FZn),n)}function joe(n){return vb(),$e((mIn(),_Zn),n)}function Eoe(n){return rr(),$e((Wkn(),RWn),n)}function Coe(n){return B3(),$e((UAn(),BWn),n)}function Toe(n){return sr(),$e((YPn(),ene),n)}function Moe(n){return sf(),$e((cPn(),tne),n)}function Aoe(n){return Hh(),$e((PPn(),ine),n)}function Soe(n){return ZT(),$e((SIn(),rne),n)}function Poe(n){return _h(),$e((rPn(),une),n)}function Ioe(n){return cs(),$e((SPn(),one),n)}function Ooe(n){return jb(),$e((POn(),fne),n)}function Doe(n){return qw(),$e((ZPn(),hne),n)}function $oe(n){return Ti(),$e((bIn(),lne),n)}function Foe(n){return Tu(),$e((AIn(),ane),n)}function xoe(n){return Vu(),$e((OPn(),vne),n)}function Loe(n){return xu(),$e((UOn(),mne),n)}function Noe(n){return J(),$e((nIn(),dne),n)}function Boe(n){return AT(),$e((IPn(),kne),n)}function Roe(n){return Xu(),$e((APn(),Ene),n)}function _oe(n){return d4(),$e((yOn(),Lne),n)}function Koe(n,e){return _n(n),n+(_n(e),e)}function Hoe(n,e){return Zf(),me(R(n.a),e)}function qoe(n,e){return Zf(),me(R(n.a),e)}function hD(n,e){this.c=n,this.a=e,this.b=e-n}function pEn(n,e,t){this.a=n,this.b=e,this.c=t}function NU(n,e,t){this.a=n,this.b=e,this.c=t}function BU(n,e,t){this.a=n,this.b=e,this.c=t}function vEn(n,e,t){this.a=n,this.b=e,this.c=t}function mEn(n,e,t){this.a=n,this.b=e,this.c=t}function s1(n,e,t){this.e=n,this.a=e,this.c=t}function kEn(n,e,t){ms(),QW.call(this,n,e,t)}function lD(n,e,t){ms(),FW.call(this,n,e,t)}function RU(n,e,t){ms(),FW.call(this,n,e,t)}function _U(n,e,t){ms(),FW.call(this,n,e,t)}function yEn(n,e,t){ms(),lD.call(this,n,e,t)}function KU(n,e,t){ms(),lD.call(this,n,e,t)}function jEn(n,e,t){ms(),KU.call(this,n,e,t)}function EEn(n,e,t){ms(),RU.call(this,n,e,t)}function CEn(n,e,t){ms(),_U.call(this,n,e,t)}function g8(n,e){return pe(n),pe(e),new z8n(n,e)}function v2(n,e){return pe(n),pe(e),new NEn(n,e)}function Goe(n,e){return pe(n),pe(e),new BEn(n,e)}function zoe(n,e){return pe(n),pe(e),new W8n(n,e)}function u(n,e){return A5(n==null||WF(n,e)),n}function f3(n){var e;return e=new X,_$(e,n),e}function Uoe(n){var e;return e=new fi,_$(e,n),e}function TEn(n){var e;return e=new Wq,nF(e,n),e}function p8(n){var e;return e=new Ct,nF(e,n),e}function Woe(n){return!n.e&&(n.e=new X),n.e}function Xoe(n){return!n.c&&(n.c=new Bp),n.c}function W(n,e){return n.c[n.c.length]=e,!0}function MEn(n,e){this.c=n,this.b=e,this.a=!1}function HU(n){this.d=n,Ovn(this),this.b=_fe(n.d)}function AEn(){this.a=";,;",this.b="",this.c=""}function Voe(n,e,t){SCn.call(this,e,t),this.a=n}function SEn(n,e,t){this.b=n,Hkn.call(this,e,t)}function qU(n,e,t){this.c=n,Nj.call(this,e,t)}function GU(n,e,t){aY(t,0,n,e,t.length,!1)}function eh(n,e,t,i,r){n.b=e,n.c=t,n.d=i,n.a=r}function Qoe(n,e){e&&(n.b=e,n.a=(fl(e),e.a))}function zU(n,e,t,i,r){n.d=e,n.c=t,n.a=i,n.b=r}function UU(n){var e,t;e=n.b,t=n.c,n.b=t,n.c=e}function WU(n){var e,t;t=n.d,e=n.a,n.d=e,n.a=t}function XU(n){return bl(the($r(n)?Ks(n):n))}function Joe(n,e){return Uc(GEn(n.d),GEn(e.d))}function Yoe(n,e){return e==(J(),Gn)?n.c:n.d}function h3(){h3=N,don=(J(),Gn),dP=Vn}function PEn(){this.b=K(Y(cn((Go(),xR))))}function IEn(n){return ca(),F(Zn,rn,1,n,5,1)}function Zoe(n){return new fn(n.c+n.b,n.d+n.a)}function nfe(n,e){return Sj(),Uc(n.d.p,e.d.p)}function aD(n){return ne(n.b!=0),Ts(n,n.a.a)}function efe(n){return ne(n.b!=0),Ts(n,n.c.b)}function VU(n,e){if(!n)throw T(new R9n(e))}function TE(n,e){if(!n)throw T(new Hn(e))}function QU(n,e,t){t3.call(this,n,e),this.b=t}function v8(n,e,t){lz.call(this,n,e),this.c=t}function OEn(n,e,t){oIn.call(this,e,t),this.d=n}function JU(n){IU(),Yy.call(this),this.th(n)}function DEn(n,e,t){this.a=n,Ew.call(this,e,t)}function $En(n,e,t){this.a=n,Ew.call(this,e,t)}function ME(n,e,t){lz.call(this,n,e),this.c=t}function FEn(){T3(),khe.call(this,(Z1(),uo))}function xEn(n){return n!=null&&!$F(n,a9,d9)}function tfe(n,e){return(GDn(n)<<4|GDn(e))&Ut}function ife(n,e){return QE(),ex(n,e),new oTn(n,e)}function sa(n,e){var t;n.n&&(t=e,W(n.f,t))}function l3(n,e,t){var i;i=new Z0(t),Ro(n,e,i)}function rfe(n,e){var t;return t=n.c,wV(n,e),t}function YU(n,e){return e<0?n.g=-1:n.g=e,n}function AE(n,e){return H0e(n),n.a*=e,n.b*=e,n}function LEn(n,e,t,i,r){n.c=e,n.d=t,n.b=i,n.a=r}function Ke(n,e){return Kt(n,e,n.c.b,n.c),!0}function ZU(n){n.a.b=n.b,n.b.a=n.a,n.a=n.b=null}function dD(n){this.b=n,this.a=Ed(this.b.a).Ed()}function NEn(n,e){this.b=n,this.a=e,TI.call(this)}function BEn(n,e){this.a=n,this.b=e,TI.call(this)}function REn(n,e){SCn.call(this,e,1040),this.a=n}function m8(n){return n==0||isNaN(n)?n:n<0?-1:1}function cfe(n){return C2(),fh(n)==At(ml(n))}function ufe(n){return C2(),ml(n)==At(fh(n))}function jd(n,e){return v6(n,new t3(e.a,e.b))}function sfe(n){return!Xi(n)&&n.c.i.c==n.d.i.c}function SE(n){var e;return e=n.n,n.a.b+e.d+e.a}function _En(n){var e;return e=n.n,n.e.b+e.d+e.a}function nW(n){var e;return e=n.n,n.e.a+e.b+e.c}function KEn(n){return Je(),new th(0,n)}function ofe(n){return n.a?n.a:WD(n)}function A5(n){if(!n)throw T(new Up(null))}function HEn(){HEn=N,mH=(Pn(),new OI(XB))}function PE(){PE=N,new JQ((HI(),uR),(qI(),cR))}function qEn(){qEn=N,jin=F(Wi,q,19,256,0,1)}function bD(n,e,t,i){MQ.call(this,n,e,t,i,0,0)}function ffe(n,e,t){return it(n.b,u(t.b,17),e)}function hfe(n,e,t){return it(n.b,u(t.b,17),e)}function lfe(n,e){return W(n,new fn(e.a,e.b))}function afe(n,e){return n.c=e)throw T(new qq)}function Xfe(n,e,t){return Mt(e,0,rW(e[0],t[0])),e}function Vfe(n,e,t){e.Ye(t,K(Y(te(n.b,t)))*n.a)}function ACn(n,e,t){return eg(),R3(n,e)&&R3(n,t)}function D5(n){return Tu(),!n.Hc(n1)&&!n.Hc(Gl)}function qE(n){return new fn(n.c+n.b/2,n.d+n.a/2)}function MD(n,e){return e.kh()?pl(n.b,u(e,49)):e}function kW(n,e){this.e=n,this.d=e&64?e|Nf:e}function SCn(n,e){this.c=0,this.d=n,this.b=e|64|Nf}function GE(n){this.b=new Pc(11),this.a=(Ow(),n)}function AD(n){this.b=null,this.a=(Ow(),n||Lin)}function PCn(n){this.a=Y$n(n.a),this.b=new du(n.b)}function ICn(n){this.b=n,b2.call(this,n),$yn(this)}function OCn(n){this.b=n,u8.call(this,n),Fyn(this)}function Y0(n,e,t){this.a=n,g2.call(this,e,t,5,6)}function yW(n,e,t,i){this.b=n,Jt.call(this,e,t,i)}function wi(n,e,t,i,r){D$.call(this,n,e,t,i,r,-1)}function $5(n,e,t,i,r){R8.call(this,n,e,t,i,r,-1)}function V(n,e,t,i){Jt.call(this,n,e,t),this.b=i}function zE(n,e,t,i){v8.call(this,n,e,t),this.b=i}function DCn(n){xkn.call(this,n,!1),this.a=!1}function $Cn(n,e){this.b=n,bvn.call(this,n.b),this.a=e}function FCn(n,e){nb(),Yie.call(this,n,mT(new Ku(e)))}function UE(n,e){return Je(),new xW(n,e,0)}function SD(n,e){return Je(),new xW(6,n,e)}function Qfe(n,e){return An(n.substr(0,e.length),e)}function zu(n,e){return mi(e)?QD(n,e):!!Ar(n.f,e)}function Oi(n,e){for(_n(e);n.Ob();)e.td(n.Pb())}function Pw(n,e,t){jl(),this.e=n,this.d=e,this.a=t}function o1(n,e,t,i){var r;r=n.i,r.i=e,r.a=t,r.b=i}function jW(n){var e;for(e=n;e.f;)e=e.f;return e}function y2(n){var e;return e=t6(n),ne(e!=null),e}function Jfe(n){var e;return e=Lge(n),ne(e!=null),e}function d3(n,e){var t;return t=n.a.gc(),$X(e,t),t-e}function EW(n,e){var t;for(t=0;t0?j.Math.log(n/e):-100}function xCn(n,e){return fc(n,e)<0?-1:fc(n,e)>0?1:0}function SW(n,e,t){return MRn(n,u(e,46),u(t,167))}function LCn(n,e){return u(vW(Ed(n.a)).Xb(e),42).cd()}function uhe(n,e){return P0e(e,n.length),new REn(n,e)}function DD(n,e){this.d=n,ie.call(this,n),this.e=e}function Cd(n){this.d=(_n(n),n),this.a=0,this.c=IM}function PW(n,e){cd.call(this,1),this.a=n,this.b=e}function NCn(n,e){return n.c?NCn(n.c,e):W(n.b,e),n}function she(n,e,t){var i;return i=ub(n,e),g$(n,e,t),i}function IW(n,e){var t;return t=n.slice(0,e),WX(t,n)}function BCn(n,e,t){var i;for(i=0;i=n.g}function KD(n,e,t){var i;return i=Y$(n,e,t),rZ(n,i)}function j2(n,e){var t;t=n.a.length,ub(n,t),g$(n,t,e)}function ZCn(n,e){var t;t=console[n],t.call(console,e)}function nTn(n,e){var t;++n.j,t=n.Vi(),n.Ii(n.oi(t,e))}function mhe(n,e,t){u(e.b,65),Yc(e.a,new NU(n,t,e))}function FW(n,e,t){uj.call(this,e),this.a=n,this.b=t}function xW(n,e,t){cd.call(this,n),this.a=e,this.b=t}function LW(n,e,t){this.a=n,xq.call(this,e),this.b=t}function eTn(n,e,t){this.a=n,aX.call(this,8,e,null,t)}function khe(n){this.a=(_n(xe),xe),this.b=n,new tG}function tTn(n){this.c=n,this.b=this.c.a,this.a=this.c.e}function NW(n){this.c=n,this.b=n.a.d.a,rU(n.a.e,this)}function Uu(n){z0(n.c!=-1),n.d.$c(n.c),n.b=n.c,n.c=-1}function L5(n){return j.Math.sqrt(n.a*n.a+n.b*n.b)}function Md(n,e){return a3(e,n.a.c.length),un(n.a,e)}function $f(n,e){return B(n)===B(e)||n!=null&&tt(n,e)}function yhe(n){return 0>=n?new PG:sbe(n-1)}function jhe(n){return aw?QD(aw,n):!1}function iTn(n){return n?n.dc():!n.Kc().Ob()}function Gi(n){return!n.a&&n.c?n.c.b:n.a}function Ehe(n){return!n.a&&(n.a=new Jt(zl,n,4)),n.a}function Ad(n){return!n.d&&(n.d=new Jt(ar,n,1)),n.d}function _n(n){if(n==null)throw T(new Nv);return n}function N5(n){n.c?n.c.He():(n.d=!0,S8e(n))}function fl(n){n.c?fl(n.c):(Ta(n),n.d=!0)}function rTn(n){KW(n.a),n.b=F(Zn,rn,1,n.b.length,5,1)}function Che(n,e){return Uc(e.j.c.length,n.j.c.length)}function The(n,e){n.c<0||n.b.b=0?n.Bh(t):bY(n,e)}function cTn(n){var e,t;return e=n.c.i.c,t=n.d.i.c,e==t}function Ahe(n){if(n.p!=4)throw T(new fu);return n.e}function She(n){if(n.p!=3)throw T(new fu);return n.e}function Phe(n){if(n.p!=6)throw T(new fu);return n.f}function Ihe(n){if(n.p!=6)throw T(new fu);return n.k}function Ohe(n){if(n.p!=3)throw T(new fu);return n.j}function Dhe(n){if(n.p!=4)throw T(new fu);return n.j}function BW(n){return!n.b&&(n.b=new sj(new KI)),n.b}function Sd(n){return n.c==-2&&Pte(n,Qve(n.g,n.b)),n.c}function g3(n,e){var t;return t=LD("",n),t.n=e,t.i=1,t}function $he(n,e){yD(u(e.b,65),n),Yc(e.a,new Aq(n))}function Fhe(n,e){me((!n.a&&(n.a=new l8(n,n)),n.a),e)}function uTn(n,e){this.b=n,DD.call(this,n,e),$yn(this)}function sTn(n,e){this.b=n,AU.call(this,n,e),Fyn(this)}function RW(n,e,t,i){bd.call(this,n,e),this.d=t,this.a=i}function VE(n,e,t,i){bd.call(this,n,t),this.a=e,this.f=i}function oTn(n,e){bce.call(this,obe(pe(n),pe(e))),this.a=e}function fTn(){UJ.call(this,Ka,(a8n(),hee)),tEe(this)}function hTn(){UJ.call(this,Vs,(Qp(),g1n)),lje(this)}function lTn(){Oe.call(this,"DELAUNAY_TRIANGULATION",0)}function xhe(n){return String.fromCharCode.apply(null,n)}function it(n,e,t){return mi(e)?kr(n,e,t):_c(n.f,e,t)}function _W(n){return Pn(),n?n.ve():(Ow(),Ow(),Bin)}function Lhe(n,e,t){return L2(),t.pg(n,u(e.cd(),146))}function aTn(n,e){return PE(),new JQ(new Wyn(n),new Uyn(e))}function Nhe(n){return is(n,AL),KC(qi(qi(5,n),n/10|0))}function QE(){QE=N,fzn=new GI(A(M(Ha,1),OM,42,0,[]))}function dTn(n){return!n.d&&(n.d=new _p(n.c.Cc())),n.d}function p3(n){return!n.a&&(n.a=new W9n(n.c.vc())),n.a}function bTn(n){return!n.b&&(n.b=new Wp(n.c.ec())),n.b}function rh(n,e){for(;e-- >0;)n=n<<1|(n<0?1:0);return n}function pc(n,e){return B(n)===B(e)||n!=null&&tt(n,e)}function Bhe(n,e){return qn(),u(e.b,19).ai&&++i,i}function Oh(n){var e,t;return t=(e=new ud,e),O3(t,n),t}function UD(n){var e,t;return t=(e=new ud,e),VJ(t,n),t}function Zhe(n,e){var t;return t=te(n.f,e),MV(e,t),null}function WD(n){var e;return e=hbe(n),e||null}function CTn(n){return!n.b&&(n.b=new V(di,n,12,3)),n.b}function n1e(n){return n!=null&&_9(tI,n.toLowerCase())}function e1e(n,e){return Zt(bu(n)*Gu(n),bu(e)*Gu(e))}function t1e(n,e){return Zt(bu(n)*Gu(n),bu(e)*Gu(e))}function i1e(n,e){return Zt(n.d.c+n.d.b/2,e.d.c+e.d.b/2)}function r1e(n,e){return Zt(n.g.c+n.g.b/2,e.g.c+e.g.b/2)}function TTn(n,e,t){t.a?nu(n,e.b-n.f/2):Zc(n,e.a-n.g/2)}function MTn(n,e,t,i){this.a=n,this.b=e,this.c=t,this.d=i}function ATn(n,e,t,i){this.a=n,this.b=e,this.c=t,this.d=i}function ha(n,e,t,i){this.e=n,this.a=e,this.c=t,this.d=i}function STn(n,e,t,i){this.a=n,this.c=e,this.d=t,this.b=i}function PTn(n,e,t,i){ms(),ySn.call(this,e,t,i),this.a=n}function ITn(n,e,t,i){ms(),ySn.call(this,e,t,i),this.a=n}function OTn(n,e){this.a=n,hue.call(this,n,u(n.d,15).Zc(e))}function XD(n){this.f=n,this.c=this.f.e,n.f>0&&qFn(this)}function DTn(n,e,t,i){this.b=n,this.c=i,FO.call(this,e,t)}function $Tn(n){return ne(n.b=0&&An(n.substr(t,e.length),e)}function hl(n,e,t,i,r,c,o){return new v$(n.e,e,t,i,r,c,o)}function QTn(n,e,t,i,r,c){this.a=n,z$.call(this,e,t,i,r,c)}function JTn(n,e,t,i,r,c){this.a=n,z$.call(this,e,t,i,r,c)}function YTn(n,e){this.g=n,this.d=A(M(vh,1),E1,10,0,[e])}function f1(n,e){this.e=n,this.a=Zn,this.b=yBn(e),this.c=e}function ZTn(n,e){kE.call(this),eV(this),this.a=n,this.c=e}function M8(n,e,t,i){Mt(n.c[e.g],t.g,i),Mt(n.c[t.g],e.g,i)}function ZD(n,e,t,i){Mt(n.c[e.g],e.g,t),Mt(n.b[e.g],e.g,i)}function M1e(){return x8(),A(M(ron,1),z,376,0,[uK,iy])}function A1e(){return K8(),A(M(Qcn,1),z,479,0,[Vcn,xS])}function S1e(){return V8(),A(M(Wcn,1),z,419,0,[$S,Ucn])}function P1e(){return OC(),A(M(Rcn,1),z,422,0,[Bcn,s_])}function I1e(){return kC(),A(M(fun,1),z,420,0,[j_,oun])}function O1e(){return z8(),A(M(non,1),z,421,0,[iK,rK])}function D1e(){return z5(),A(M(bJn,1),z,523,0,[Hm,Km])}function $1e(){return No(),A(M(BJn,1),z,520,0,[tw,Bl])}function F1e(){return Ff(),A(M(yJn,1),z,516,0,[M0,I1])}function x1e(){return ef(),A(M(EJn,1),z,515,0,[Ja,kf])}function L1e(){return Id(),A(M(zJn,1),z,455,0,[Rl,Lg])}function N1e(){return gC(),A(M(Son,1),z,425,0,[yK,Aon])}function B1e(){return aC(),A(M(Mon,1),z,480,0,[kK,Ton])}function R1e(){return iT(),A(M(Pon,1),z,495,0,[EP,mv])}function _1e(){return $C(),A(M(Oon,1),z,426,0,[Ion,TK])}function K1e(){return c7(),A(M(Ffn,1),z,429,0,[DP,$fn])}function H1e(){return L8(),A(M(afn,1),z,430,0,[FK,IP])}function q1e(){return $T(),A(M(Jin,1),z,428,0,[yR,Qin])}function G1e(){return RC(),A(M(Zin,1),z,427,0,[Yin,jR])}function z1e(){return _C(),A(M(Arn,1),z,424,0,[$R,tS])}function U1e(){return B3(),A(M(NWn,1),z,511,0,[_k,UR])}function sC(n,e,t,i){return t>=0?n.jh(e,t,i):n.Sg(null,t,i)}function n$(n){return n.b.b==0?n.a.$e():aD(n.b)}function W1e(n){if(n.p!=5)throw T(new fu);return ge(n.f)}function X1e(n){if(n.p!=5)throw T(new fu);return ge(n.k)}function VW(n){return B(n.a)===B((eF(),gH))&&Vje(n),n.a}function nMn(n){this.a=u(pe(n),271),this.b=(Pn(),new Hz(n))}function eMn(n,e){bte(this,new fn(n.a,n.b)),wte(this,p8(e))}function Id(){Id=N,Rl=new iz(Y2,0),Lg=new iz(Z2,1)}function Ff(){Ff=N,M0=new ez(Z2,0),I1=new ez(Y2,1)}function Od(){rie.call(this,new s2(sb(12))),Bz(!0),this.a=2}function e$(n,e,t){Je(),cd.call(this,n),this.b=e,this.a=t}function QW(n,e,t){ms(),uj.call(this,e),this.a=n,this.b=t}function tMn(n){kE.call(this),eV(this),this.a=n,this.c=!0}function iMn(n){var e;e=n.c.d.b,n.b=e,n.a=n.c.d,e.a=n.c.d.b=n}function oC(n){var e;ebe(n.a),byn(n.a),e=new tj(n.a),TQ(e)}function V1e(n,e){aBn(n,!0),Yc(n.e.wf(),new $U(n,!0,e))}function fC(n,e){return LAn(e),Y0e(n,F(be,Le,25,e,15,1),e)}function Q1e(n,e){return C2(),n==At(fh(e))||n==At(ml(e))}function vc(n,e){return e==null?Vr(Ar(n.f,null)):n5(n.g,e)}function J1e(n){return n.b==0?null:(ne(n.b!=0),Ts(n,n.a.a))}function Gt(n){return Math.max(Math.min(n,nt),-2147483648)|0}function Y1e(n,e){var t=lR[n.charCodeAt(0)];return t??n}function hC(n,e){return tC(n,"set1"),tC(e,"set2"),new Z8n(n,e)}function Z1e(n,e){var t;return t=W0e(n.f,e),ot(vE(t),n.f.d)}function R5(n,e){var t,i;return t=e,i=new dI,n_n(n,t,i),i.d}function t$(n,e,t,i){var r;r=new Gjn,e.a[t.g]=r,m2(n.b,i,r)}function JW(n,e,t){var i;i=n.Yg(e),i>=0?n.sh(i,t):_Y(n,e,t)}function Dw(n,e,t){dC(),n&&it(dH,n,e),n&&it($y,n,t)}function rMn(n,e,t){this.i=new X,this.b=n,this.g=e,this.a=t}function lC(n,e,t){this.c=new X,this.e=n,this.f=e,this.b=t}function YW(n,e,t){this.a=new X,this.e=n,this.f=e,this.c=t}function cMn(n,e){oE(this),this.f=e,this.g=n,eC(this),this._d()}function A8(n,e){var t;t=n.q.getHours(),n.q.setDate(e),S6(n,t)}function uMn(n,e){var t;for(pe(e),t=n.a;t;t=t.c)e.Od(t.g,t.i)}function sMn(n){var e;return e=new kj(sb(n.length)),qV(e,n),e}function nle(n){function e(){}return e.prototype=n||{},new e}function ele(n,e){return LOn(n,e)?(FIn(n),!0):!1}function Dh(n,e){if(e==null)throw T(new Nv);return Y2e(n,e)}function tle(n){if(n.qe())return null;var e=n.n;return RA[e]}function S8(n){return n.Db>>16!=3?null:u(n.Cb,33)}function nf(n){return n.Db>>16!=9?null:u(n.Cb,33)}function oMn(n){return n.Db>>16!=6?null:u(n.Cb,79)}function fMn(n){return n.Db>>16!=7?null:u(n.Cb,235)}function hMn(n){return n.Db>>16!=7?null:u(n.Cb,160)}function At(n){return n.Db>>16!=11?null:u(n.Cb,33)}function lMn(n,e){var t;return t=n.Yg(e),t>=0?n.lh(t):Ox(n,e)}function aMn(n,e){var t;return t=new iW(e),dxn(t,n),new du(t)}function ZW(n){var e;return e=n.d,e=n.si(n.f),me(n,e),e.Ob()}function dMn(n,e){return n.b+=e.b,n.c+=e.c,n.d+=e.d,n.a+=e.a,n}function i$(n,e){return j.Math.abs(n)0}function bMn(){this.a=new Sh,this.e=new fi,this.g=0,this.i=0}function wMn(n){this.a=n,this.b=F(lJn,q,1944,n.e.length,0,2)}function r$(n,e,t){var i;i=tDn(n,e,t),n.b=new tT(i.c.length)}function ef(){ef=N,Ja=new nz(hN,0),kf=new nz("UP",1)}function aC(){aC=N,kK=new rz(PHn,0),Ton=new rz("FAN",1)}function dC(){dC=N,dH=new we,$y=new we,Ere(Azn,new z2n)}function rle(n){if(n.p!=0)throw T(new fu);return b5(n.f,0)}function cle(n){if(n.p!=0)throw T(new fu);return b5(n.k,0)}function gMn(n){return n.Db>>16!=3?null:u(n.Cb,147)}function y3(n){return n.Db>>16!=6?null:u(n.Cb,235)}function eb(n){return n.Db>>16!=17?null:u(n.Cb,26)}function pMn(n,e){var t=n.a=n.a||[];return t[e]||(t[e]=n.le(e))}function ule(n,e){var t;return t=n.a.get(e),t??new Array}function sle(n,e){var t;t=n.q.getHours(),n.q.setMonth(e),S6(n,t)}function kr(n,e,t){return e==null?_c(n.f,null,t):Gd(n.g,e,t)}function _5(n,e,t,i,r,c){return new Lh(n.e,e,n.aj(),t,i,r,c)}function P8(n,e,t){return n.a=Yu(n.a,0,e)+(""+t)+r8(n.a,e),n}function ole(n,e,t){return W(n.a,(QE(),ex(e,t),new bd(e,t))),n}function nX(n){return _z(n.c),n.e=n.a=n.c,n.c=n.c.c,++n.d,n.a.f}function vMn(n){return _z(n.e),n.c=n.a=n.e,n.e=n.e.e,--n.d,n.a.f}function Ei(n,e){n.d&&Qc(n.d.e,n),n.d=e,n.d&&W(n.d.e,n)}function Hi(n,e){n.c&&Qc(n.c.g,n),n.c=e,n.c&&W(n.c.g,n)}function yr(n,e){n.c&&Qc(n.c.a,n),n.c=e,n.c&&W(n.c.a,n)}function Hr(n,e){n.i&&Qc(n.i.j,n),n.i=e,n.i&&W(n.i.j,n)}function mMn(n,e,t){this.a=e,this.c=n,this.b=(pe(t),new du(t))}function kMn(n,e,t){this.a=e,this.c=n,this.b=(pe(t),new du(t))}function yMn(n,e){this.a=n,this.c=Qr(this.a),this.b=new uC(e)}function fle(n){var e;return Ta(n),e=new fi,gt(n,new Vvn(e))}function tb(n,e){if(n<0||n>e)throw T(new vr(cnn+n+unn+e))}function eX(n,e){return lCn(n.a,e)?TW(n,u(e,22).g,null):null}function hle(n){return yF(),qn(),u(n.a,81).d.e!=0}function jMn(){jMn=N,azn=Fe((aj(),A(M(lzn,1),z,538,0,[fR])))}function EMn(){EMn=N,YQn=ju(new hi,(Qi(),Ir),(rr(),Kk))}function tX(){tX=N,ZQn=ju(new hi,(Qi(),Ir),(rr(),Kk))}function CMn(){CMn=N,eJn=ju(new hi,(Qi(),Ir),(rr(),Kk))}function TMn(){TMn=N,gJn=Ze(new hi,(Qi(),Ir),(rr(),km))}function Zu(){Zu=N,mJn=Ze(new hi,(Qi(),Ir),(rr(),km))}function MMn(){MMn=N,kJn=Ze(new hi,(Qi(),Ir),(rr(),km))}function c$(){c$=N,TJn=Ze(new hi,(Qi(),Ir),(rr(),km))}function AMn(){AMn=N,lYn=ju(new hi,(c4(),Gm),(k6(),lK))}function aa(n,e,t,i){this.c=n,this.d=i,s$(this,e),o$(this,t)}function M2(n){this.c=new Ct,this.b=n.b,this.d=n.c,this.a=n.a}function u$(n){this.a=j.Math.cos(n),this.b=j.Math.sin(n)}function s$(n,e){n.a&&Qc(n.a.k,n),n.a=e,n.a&&W(n.a.k,n)}function o$(n,e){n.b&&Qc(n.b.f,n),n.b=e,n.b&&W(n.b.f,n)}function SMn(n,e){mhe(n,n.b,n.c),u(n.b.b,65),e&&u(e.b,65).b}function lle(n,e){vQ(n,e),I(n.Cb,88)&&yb(Iu(u(n.Cb,88)),2)}function f$(n,e){I(n.Cb,88)&&yb(Iu(u(n.Cb,88)),4),Ic(n,e)}function bC(n,e){I(n.Cb,179)&&(u(n.Cb,179).tb=null),Ic(n,e)}function mc(n,e){return er(),R$(e)?new IE(e,n):new i8(e,n)}function ale(n,e){var t,i;t=e.c,i=t!=null,i&&j2(n,new Z0(e.c))}function PMn(n){var e,t;return t=(Qp(),e=new ud,e),O3(t,n),t}function IMn(n){var e,t;return t=(Qp(),e=new ud,e),O3(t,n),t}function OMn(n,e){var t;return t=new Rs(n),e.c[e.c.length]=t,t}function DMn(n,e){var t;return t=u(ab(T2(n.a),e),14),t?t.gc():0}function $Mn(n){var e;return Ta(n),e=(Ow(),Ow(),Nin),qC(n,e)}function FMn(n){for(var e;;)if(e=n.Pb(),!n.Ob())return e}function iX(n,e){tie.call(this,new s2(sb(n))),is(e,W_n),this.a=e}function ch(n,e,t){KDn(e,t,n.gc()),this.c=n,this.a=e,this.b=t-e}function xMn(n,e,t){var i;KDn(e,t,n.c.length),i=t-e,AG(n.c,e,i)}function dle(n,e){Dyn(n,ge(ci(cl(e,24),FM)),ge(ci(e,FM)))}function Ln(n,e){if(n<0||n>=e)throw T(new vr(cnn+n+unn+e))}function Me(n,e){if(n<0||n>=e)throw T(new wG(cnn+n+unn+e))}function xn(n,e){this.b=(_n(n),n),this.a=e&Ib?e:e|64|Nf}function LMn(n){dyn(this),Wmn(this.a,KV(j.Math.max(8,n))<<1)}function tf(n){return Gr(A(M(ai,1),q,8,0,[n.i.n,n.n,n.a]))}function ble(){return hf(),A(M(Nu,1),z,132,0,[Win,hs,Rb])}function wle(){return _o(),A(M(_b,1),z,232,0,[Zr,Fc,nc])}function gle(){return Cu(),A(M(Qzn,1),z,461,0,[Xf,Ol,Co])}function ple(){return Jc(),A(M(Yzn,1),z,462,0,[Wo,Dl,To])}function vle(){return qd(),A(M(zrn,1),z,423,0,[yg,Grn,qR])}function mle(){return W5(),A(M(Krn,1),z,379,0,[NR,LR,BR])}function kle(){return i6(),A(M(Gsn,1),z,378,0,[J_,qsn,oP])}function yle(){return F2(),A(M(Kcn,1),z,314,0,[ap,qk,_cn])}function jle(){return VC(),A(M(qcn,1),z,337,0,[Hcn,DS,o_])}function Ele(){return ya(),A(M(aXn,1),z,450,0,[l_,cv,Tg])}function Cle(){return Kd(),A(M(YR,1),z,361,0,[g0,Fl,w0])}function Tle(){return Nh(),A(M(kXn,1),z,303,0,[zk,Ag,dp])}function Mle(){return q3(),A(M(y_,1),z,292,0,[m_,k_,Gk])}function Ale(){return ur(),A(M(zQn,1),z,452,0,[Bm,Au,xc])}function Sle(){return Rh(),A(M(Zsn,1),z,339,0,[Nl,Ysn,tK])}function Ple(){return oT(),A(M(ion,1),z,375,0,[eon,cK,ton])}function Ile(){return dT(),A(M(hon,1),z,377,0,[fK,pv,ew])}function Ole(){return Q3(),A(M(uon,1),z,336,0,[sK,con,Rm])}function Dle(){return uT(),A(M(fon,1),z,338,0,[oon,oK,son])}function $le(){return _d(),A(M(fJn,1),z,454,0,[ry,_m,aP])}function Fle(){return CT(),A(M(gYn,1),z,442,0,[CK,jK,EK])}function xle(){return f7(),A(M(Fon,1),z,380,0,[CP,Don,$on])}function Lle(){return ET(),A(M(Yon,1),z,381,0,[Jon,IK,Qon])}function Nle(){return sT(),A(M(Xon,1),z,293,0,[PK,Won,Uon])}function Ble(){return w7(),A(M(OK,1),z,437,0,[AP,SP,PP])}function Rle(){return _h(),A(M(Khn,1),z,334,0,[HP,F1,i9])}function _le(){return sf(),A(M(Phn,1),z,272,0,[jv,cw,Ev])}function Kle(n,e){return o9e(n,e,I(e,99)&&(u(e,18).Bb&Yi)!=0)}function Hle(n,e,t){var i;return i=O6(n,e,!1),i.b<=e&&i.a<=t}function NMn(n,e,t){var i;i=new Jwn,i.b=e,i.a=t,++e.b,W(n.d,i)}function qle(n,e){var t;return t=(_n(n),n).g,Yz(!!t),_n(e),t(e)}function rX(n,e){var t,i;return i=d3(n,e),t=n.a.Zc(i),new Y8n(n,t)}function Gle(n){return n.Db>>16!=6?null:u(Fx(n),235)}function zle(n){if(n.p!=2)throw T(new fu);return ge(n.f)&Ut}function Ule(n){if(n.p!=2)throw T(new fu);return ge(n.k)&Ut}function Wle(n){return n.a==(T3(),uI)&&Ste(n,C9e(n.g,n.b)),n.a}function A2(n){return n.d==(T3(),uI)&&Ite(n,pke(n.g,n.b)),n.d}function y(n){return ne(n.ai?1:0}function BMn(n,e){var t,i;return t=F$(e),i=t,u(te(n.c,i),19).a}function RMn(n,e){var t;for(t=n+"";t.length0&&n.a[--n.d]==0;);n.a[n.d++]==0&&(n.e=0)}function rAn(n){return n.a?n.e.length==0?n.a.a:n.a.a+(""+n.e):n.c}function rae(n){return!!n.a&&Ou(n.a.a).i!=0&&!(n.b&&YF(n.b))}function cae(n){return!!n.u&&bc(n.u.a).i!=0&&!(n.n&&JF(n.n))}function cAn(n){return gD(n.e.Hd().gc()*n.c.Hd().gc(),16,new tvn(n))}function uae(n,e){return xCn(eu(n.q.getTime()),eu(e.q.getTime()))}function xf(n){return u(lf(n,F(GR,MN,17,n.c.length,0,1)),474)}function I8(n){return u(lf(n,F(vh,E1,10,n.c.length,0,1)),193)}function sae(n){return Zu(),!Xi(n)&&!(!Xi(n)&&n.c.i.c==n.d.i.c)}function uAn(n,e,t){var i;i=(pe(n),new du(n)),N3e(new mMn(i,e,t))}function O8(n,e,t){var i;i=(pe(n),new du(n)),B3e(new kMn(i,e,t))}function sAn(n,e){var t;return t=1-e,n.a[t]=eT(n.a[t],t),eT(n,e)}function oAn(n,e){var t;n.e=new oG,t=Cb(e),bi(t,n.c),eBn(n,t,0)}function Ci(n,e,t,i){var r;r=new XH,r.a=e,r.b=t,r.c=i,Ke(n.a,r)}function Z(n,e,t,i){var r;r=new XH,r.a=e,r.b=t,r.c=i,Ke(n.b,r)}function po(n){var e,t,i;return e=new HCn,t=Zx(e,n),UEe(e),i=t,i}function hX(){var n,e,t;return e=(t=(n=new ud,n),t),W(M1n,e),e}function pC(n){return n.j.c=F(Zn,rn,1,0,5,1),KW(n.c),Khe(n.a),n}function $w(n){return Qv(),I(n.g,10)?u(n.g,10):null}function oae(n){return Iw(n).dc()?!1:(sce(n,new Np),!0)}function fae(n){if(!("stack"in n))try{throw n}catch{}return n}function D8(n,e){if(n<0||n>=e)throw T(new vr(j6e(n,e)));return n}function fAn(n,e,t){if(n<0||et)throw T(new vr(W5e(n,e,t)))}function d$(n,e){if(ri(n.a,e),e.d)throw T(new _r(wKn));e.d=n}function b$(n,e){if(e.$modCount!=n.$modCount)throw T(new vs)}function hAn(n,e){return I(e,42)?ix(n.a,u(e,42)):!1}function lAn(n,e){return I(e,42)?ix(n.a,u(e,42)):!1}function aAn(n,e){return I(e,42)?ix(n.a,u(e,42)):!1}function hae(n,e){return n.a<=n.b?(e.ud(n.a++),!0):!1}function $d(n){var e;return $r(n)?(e=n,e==-0?0:e):m0e(n)}function vC(n){var e;return fl(n),e=new fln,vw(n.a,new Wvn(e)),e}function dAn(n){var e;return fl(n),e=new oln,vw(n.a,new Uvn(e)),e}function Ii(n,e){this.a=n,$v.call(this,n),tb(e,n.gc()),this.b=e}function lX(n){this.e=n,this.b=this.e.a.entries(),this.a=new Array}function lae(n){return gD(n.e.Hd().gc()*n.c.Hd().gc(),273,new evn(n))}function mC(n){return new Pc((is(n,AL),KC(qi(qi(5,n),n/10|0))))}function bAn(n){return u(lf(n,F(FWn,UKn,11,n.c.length,0,1)),1943)}function aae(n,e,t){return t.f.c.length>0?SW(n.a,e,t):SW(n.b,e,t)}function dae(n,e,t){n.d&&Qc(n.d.e,n),n.d=e,n.d&&Q0(n.d.e,t,n)}function w$(n,e){uTe(e,n),WU(n.d),WU(u(k(n,(nn(),eP)),207))}function H5(n,e){cTe(e,n),UU(n.d),UU(u(k(n,(nn(),eP)),207))}function Fd(n,e){var t,i;return t=Dh(n,e),i=null,t&&(i=t.fe()),i}function j3(n,e){var t,i;return t=ub(n,e),i=null,t&&(i=t.ie()),i}function q5(n,e){var t,i;return t=Dh(n,e),i=null,t&&(i=t.ie()),i}function $h(n,e){var t,i;return t=Dh(n,e),i=null,t&&(i=tY(t)),i}function bae(n,e,t){var i;return i=i4(t),gM(n.g,i,e),gM(n.i,e,t),e}function wae(n,e,t){var i;i=q2e();try{return kue(n,e,t)}finally{Mae(i)}}function wAn(n){var e;e=n.Wg(),this.a=I(e,69)?u(e,69).Zh():e.Kc()}function hi(){P9n.call(this),this.j.c=F(Zn,rn,1,0,5,1),this.a=-1}function aX(n,e,t,i){this.d=n,this.n=e,this.g=t,this.o=i,this.p=-1}function gAn(n,e,t,i){this.e=i,this.d=null,this.c=n,this.a=e,this.b=t}function dX(n,e,t){this.d=new r6n(this),this.e=n,this.i=e,this.f=t}function kC(){kC=N,j_=new QG(I4,0),oun=new QG("TOP_LEFT",1)}function pAn(){pAn=N,aon=aTn(Q(1),Q(4)),lon=aTn(Q(1),Q(2))}function vAn(){vAn=N,uZn=Fe((Ij(),A(M(cZn,1),z,551,0,[$K])))}function mAn(){mAn=N,rZn=Fe((Pj(),A(M(lfn,1),z,482,0,[DK])))}function kAn(){kAn=N,CZn=Fe((Jv(),A(M(Dfn,1),z,530,0,[hy])))}function yAn(){yAn=N,IUn=Fe((Aj(),A(M(krn,1),z,481,0,[SR])))}function gae(){return Hd(),A(M(EUn,1),z,406,0,[Ok,Ik,MR,AR])}function pae(){return FC(),A(M(WA,1),z,297,0,[vR,qin,Gin,zin])}function vae(){return d6(),A(M(SUn,1),z,394,0,[Lk,YA,ZA,Nk])}function mae(){return K2(),A(M(TUn,1),z,323,0,[$k,Dk,Fk,xk])}function kae(){return G3(),A(M(jWn,1),z,405,0,[b0,Hb,Kb,kg])}function yae(){return aT(),A(M(KWn,1),z,360,0,[QR,TS,MS,Hk])}function jAn(n,e,t,i){return I(t,54)?new ojn(n,e,t,i):new pW(n,e,t,i)}function jae(){return ff(),A(M(QWn,1),z,411,0,[lp,nv,ev,JR])}function Eae(n){var e;return n.j==(J(),ae)&&(e=GLn(n),au(e,Vn))}function Cae(n,e){var t;t=e.a,Hi(t,e.c.d),Ei(t,e.d.d),fb(t.a,n.n)}function EAn(n,e){return u(yd(KE(u(ct(n.k,e),15).Oc(),jg)),113)}function CAn(n,e){return u(yd(HE(u(ct(n.k,e),15).Oc(),jg)),113)}function Tae(n){return new xn(jbe(u(n.a.dd(),14).gc(),n.a.cd()),16)}function E3(n){return I(n,14)?u(n,14).dc():!n.Kc().Ob()}function S2(n){return Qv(),I(n.g,145)?u(n.g,145):null}function TAn(n){if(n.e.g!=n.b)throw T(new vs);return!!n.c&&n.d>0}function Re(n){return ne(n.b!=n.d.c),n.c=n.b,n.b=n.b.a,++n.a,n.c.c}function bX(n,e){_n(e),Mt(n.a,n.c,e),n.c=n.c+1&n.a.length-1,MFn(n)}function ll(n,e){_n(e),n.b=n.b-1&n.a.length-1,Mt(n.a,n.b,e),MFn(n)}function MAn(n,e){var t;for(t=n.j.c.length;t0&&gc(n.g,0,e,0,n.i),e}function IAn(n,e){$j();var t;return t=u(te(eI,n),55),!t||t.wj(e)}function Bae(n){if(n.p!=1)throw T(new fu);return ge(n.f)<<24>>24}function Rae(n){if(n.p!=1)throw T(new fu);return ge(n.k)<<24>>24}function _ae(n){if(n.p!=7)throw T(new fu);return ge(n.k)<<16>>16}function Kae(n){if(n.p!=7)throw T(new fu);return ge(n.f)<<16>>16}function Fh(n){var e;for(e=0;n.Ob();)n.Pb(),e=qi(e,1);return KC(e)}function OAn(n,e){var t;return t=new R0,n.xd(t),t.a+="..",e.yd(t),t.a}function Hae(n,e,t){var i;i=u(te(n.g,t),57),W(n.a.c,new Pi(e,i))}function qae(n,e,t){return TD(Y(Vr(Ar(n.f,e))),Y(Vr(Ar(n.f,t))))}function yC(n,e,t){return vM(n,e,t,I(e,99)&&(u(e,18).Bb&Yi)!=0)}function Gae(n,e,t){return m4(n,e,t,I(e,99)&&(u(e,18).Bb&Yi)!=0)}function zae(n,e,t){return b9e(n,e,t,I(e,99)&&(u(e,18).Bb&Yi)!=0)}function pX(n,e){return n==(Qn(),ti)&&e==ti?4:n==ti||e==ti?8:32}function DAn(n,e){return B(e)===B(n)?"(this Map)":e==null?iu:Lr(e)}function Uae(n,e){return u(e==null?Vr(Ar(n.f,null)):n5(n.g,e),281)}function $An(n,e,t){var i;return i=i4(t),it(n.b,i,e),it(n.c,e,t),e}function FAn(n,e){var t;for(t=e;t;)U0(n,t.i,t.j),t=At(t);return n}function vX(n,e){var t;return t=C8(f3(new x$(n,e))),DE(new x$(n,e)),t}function uh(n,e){er();var t;return t=u(n,66).Mj(),M5e(t,e),t.Ok(e)}function Wae(n,e,t,i,r){var c;c=m9e(r,t,i),W(e,p6e(r,c)),o5e(n,r,e)}function xAn(n,e,t){n.i=0,n.e=0,e!=t&&(uDn(n,e,t),cDn(n,e,t))}function mX(n,e){var t;t=n.q.getHours(),n.q.setFullYear(e+Tl),S6(n,t)}function Xae(n,e,t){if(t){var i=t.ee();n.a[e]=i(t)}else delete n.a[e]}function g$(n,e,t){if(t){var i=t.ee();t=i(t)}else t=void 0;n.a[e]=t}function LAn(n){if(n<0)throw T(new K9n("Negative array size: "+n))}function bc(n){return n.n||(Iu(n),n.n=new wCn(n,ar,n),Mr(n)),n.n}function G5(n){return ne(n.a=0&&n.a[t]===e[t];t--);return t<0}function KAn(n,e){V3();var t;return t=n.j.g-e.j.g,t!=0?t:0}function HAn(n,e){return _n(e),n.a!=null?$fe(e.Kb(n.a)):UA}function jC(n){var e;return n?new iW(n):(e=new Sh,nF(e,n),e)}function es(n,e){var t;return e.b.Kb(FPn(n,e.c.Ee(),(t=new Jvn(e),t)))}function EC(n){_J(),Dyn(this,ge(ci(cl(n,24),FM)),ge(ci(n,FM)))}function qAn(){qAn=N,Gzn=Fe(($T(),A(M(Jin,1),z,428,0,[yR,Qin])))}function GAn(){GAn=N,zzn=Fe((RC(),A(M(Zin,1),z,427,0,[Yin,jR])))}function zAn(){zAn=N,WUn=Fe((_C(),A(M(Arn,1),z,424,0,[$R,tS])))}function UAn(){UAn=N,BWn=Fe((B3(),A(M(NWn,1),z,511,0,[_k,UR])))}function WAn(){WAn=N,lXn=Fe((V8(),A(M(Wcn,1),z,419,0,[$S,Ucn])))}function XAn(){XAn=N,wXn=Fe((K8(),A(M(Qcn,1),z,479,0,[Vcn,xS])))}function VAn(){VAn=N,XQn=Fe((x8(),A(M(ron,1),z,376,0,[uK,iy])))}function QAn(){QAn=N,GQn=Fe((z8(),A(M(non,1),z,421,0,[iK,rK])))}function JAn(){JAn=N,sXn=Fe((OC(),A(M(Rcn,1),z,422,0,[Bcn,s_])))}function YAn(){YAn=N,jXn=Fe((kC(),A(M(fun,1),z,420,0,[j_,oun])))}function ZAn(){ZAn=N,RJn=Fe((No(),A(M(BJn,1),z,520,0,[tw,Bl])))}function nSn(){nSn=N,wJn=Fe((z5(),A(M(bJn,1),z,523,0,[Hm,Km])))}function eSn(){eSn=N,jJn=Fe((Ff(),A(M(yJn,1),z,516,0,[M0,I1])))}function tSn(){tSn=N,CJn=Fe((ef(),A(M(EJn,1),z,515,0,[Ja,kf])))}function iSn(){iSn=N,UJn=Fe((Id(),A(M(zJn,1),z,455,0,[Rl,Lg])))}function rSn(){rSn=N,hYn=Fe((gC(),A(M(Son,1),z,425,0,[yK,Aon])))}function cSn(){cSn=N,wYn=Fe((iT(),A(M(Pon,1),z,495,0,[EP,mv])))}function uSn(){uSn=N,fYn=Fe((aC(),A(M(Mon,1),z,480,0,[kK,Ton])))}function sSn(){sSn=N,vYn=Fe(($C(),A(M(Oon,1),z,426,0,[Ion,TK])))}function oSn(){oSn=N,TZn=Fe((c7(),A(M(Ffn,1),z,429,0,[DP,$fn])))}function fSn(){fSn=N,sZn=Fe((L8(),A(M(afn,1),z,430,0,[FK,IP])))}function z5(){z5=N,Hm=new ZG("UPPER",0),Km=new ZG("LOWER",1)}function Yae(n,e){var t;t=new r2,la(t,"x",e.a),la(t,"y",e.b),j2(n,t)}function Zae(n,e){var t;t=new r2,la(t,"x",e.a),la(t,"y",e.b),j2(n,t)}function nde(n,e){var t,i;i=!1;do t=JOn(n,e),i=i|t;while(t);return i}function jX(n,e){var t,i;for(t=e,i=0;t>0;)i+=n.a[t],t-=t&-t;return i}function hSn(n,e){var t;for(t=e;t;)U0(n,-t.i,-t.j),t=At(t);return n}function $i(n,e){var t,i;for(_n(e),i=n.Kc();i.Ob();)t=i.Pb(),e.td(t)}function lSn(n,e){var t;return t=e.cd(),new bd(t,n.e.pc(t,u(e.dd(),14)))}function Kt(n,e,t,i){var r;r=new aI,r.c=e,r.b=t,r.a=i,i.b=t.a=r,++n.b}function Es(n,e,t){var i;return i=(Ln(e,n.c.length),n.c[e]),n.c[e]=t,i}function ede(n,e,t){return u(e==null?_c(n.f,null,t):Gd(n.g,e,t),281)}function k$(n){return n.c&&n.d?cX(n.c)+"->"+cX(n.d):"e_"+md(n)}function C3(n,e){return(Ta(n),Wv(new $n(n,new UX(e,n.a)))).sd(V4)}function tde(){return Qi(),A(M(Hrn,1),z,356,0,[Vf,$l,Hc,Cc,Ir])}function ide(){return J(),A(M(Zi,1),hc,61,0,[Xr,Kn,Vn,ae,Gn])}function rde(n){return gj(),function(){return wae(n,this,arguments)}}function cde(){return Date.now?Date.now():new Date().getTime()}function Xi(n){return!n.c||!n.d?!1:!!n.c.i&&n.c.i==n.d.i}function aSn(n){if(!n.c.Sb())throw T(new ic);return n.a=!0,n.c.Ub()}function $8(n){n.i=0,z9(n.b,null),z9(n.c,null),n.a=null,n.e=null,++n.g}function EX(n){are.call(this,n==null?iu:Lr(n),I(n,78)?u(n,78):null)}function dSn(n){B_n(),Nmn(this),this.a=new Ct,QV(this,n),Ke(this.a,n)}function bSn(){RO(this),this.b=new fn(Ft,Ft),this.a=new fn(Vt,Vt)}function wSn(n,e){this.c=0,this.b=e,qkn.call(this,n,17493),this.a=this.c}function y$(n){CC(),!pf&&(this.c=n,this.e=!0,this.a=new X)}function CC(){CC=N,pf=!0,Fzn=!1,xzn=!1,Nzn=!1,Lzn=!1}function CX(n,e){return I(e,149)?An(n.c,u(e,149).c):!1}function TX(n,e){var t;return t=0,n&&(t+=n.f.a/2),e&&(t+=e.f.a/2),t}function j$(n,e){var t;return t=u(xd(n.d,e),23),t||u(xd(n.e,e),23)}function gSn(n){this.b=n,ie.call(this,n),this.a=u(Rn(this.b.a,4),126)}function pSn(n){this.b=n,w2.call(this,n),this.a=u(Rn(this.b.a,4),126)}function Iu(n){return n.t||(n.t=new Amn(n),s6(new _9n(n),0,n.t)),n.t}function ude(){return sr(),A(M(e9,1),z,103,0,[mh,Ao,Zs,Jh,Yh])}function sde(){return qw(),A(M(c9,1),z,249,0,[Hl,Cy,Hhn,r9,qhn])}function ode(){return Ho(),A(M($1,1),z,175,0,[Xn,pi,Yf,Ya,D1])}function fde(){return P7(),A(M(gfn,1),z,316,0,[dfn,xK,wfn,LK,bfn])}function hde(){return b6(),A(M(Usn,1),z,315,0,[zsn,nK,eK,Lm,Nm])}function lde(){return Pa(),A(M(zcn,1),z,335,0,[f_,Gcn,h_,Em,jm])}function ade(){return g4(),A(M(eZn,1),z,355,0,[Ng,Ep,Qm,Vm,Jm])}function dde(){return Vw(),A(M(YWn,1),z,363,0,[SS,IS,OS,PS,AS])}function bde(){return Ss(),A(M(jun,1),z,163,0,[Qk,Sm,xl,Pm,Ub])}function T3(){T3=N;var n,e;cI=(Qp(),e=new fj,e),uI=(n=new BI,n)}function vSn(n){var e;return n.c||(e=n.r,I(e,88)&&(n.c=u(e,26))),n.c}function wde(n){return n.e=3,n.d=n.Yb(),n.e!=2?(n.e=0,!0):!1}function E$(n){var e,t,i;return e=n&Lu,t=n>>22&Lu,i=n<0?Wh:0,Bc(e,t,i)}function gde(n){var e,t,i,r;for(t=n,i=0,r=t.length;i0?g$n(n,e):BNn(n,-e)}function MX(n,e){return e==0||n.e==0?n:e>0?BNn(n,e):g$n(n,-e)}function ve(n){if(Se(n))return n.c=n.a,n.a.Pb();throw T(new ic)}function kSn(n){var e,t;return e=n.c.i,t=n.d.i,e.k==(Qn(),Xt)&&t.k==Xt}function C$(n){var e;return e=new Pd,Sr(e,n),H(e,(nn(),Tr),null),e}function T$(n,e,t){var i;return i=n.Yg(e),i>=0?n._g(i,t,!0):Yd(n,e,t)}function AX(n,e,t,i){var r;for(r=0;re)throw T(new vr(fY(n,e,"index")));return n}function M$(n,e,t,i){var r;return r=F(be,Le,25,e,15,1),Pve(r,n,e,t,i),r}function vde(n,e){var t;t=n.q.getHours()+(e/60|0),n.q.setMinutes(e),S6(n,t)}function mde(n,e){return j.Math.min(al(e.a,n.d.d.c),al(e.b,n.d.d.c))}function O2(n,e){return mi(e)?e==null?MY(n.f,null):$On(n.g,e):MY(n.f,e)}function uf(n){this.c=n,this.a=new E(this.c.a),this.b=new E(this.c.b)}function TC(){this.e=new X,this.c=new X,this.d=new X,this.b=new X}function TSn(){this.g=new zq,this.b=new zq,this.a=new X,this.k=new X}function MSn(n,e,t){this.a=n,this.c=e,this.d=t,W(e.e,this),W(t.b,this)}function ASn(n,e){Hkn.call(this,e.rd(),e.qd()&-6),_n(n),this.a=n,this.b=e}function SSn(n,e){qkn.call(this,e.rd(),e.qd()&-6),_n(n),this.a=n,this.b=e}function FX(n,e){FO.call(this,e.rd(),e.qd()&-6),_n(n),this.a=n,this.b=e}function MC(n,e,t){this.a=n,this.b=e,this.c=t,W(n.t,this),W(e.i,this)}function AC(){this.b=new Ct,this.a=new Ct,this.b=new Ct,this.a=new Ct}function SC(){SC=N,Ym=new kt("org.eclipse.elk.labels.labelManager")}function PSn(){PSn=N,$cn=new ii("separateLayerConnections",(aT(),QR))}function No(){No=N,tw=new tz("REGULAR",0),Bl=new tz("CRITICAL",1)}function x8(){x8=N,uK=new YG("STACKED",0),iy=new YG("SEQUENCED",1)}function L8(){L8=N,FK=new oz("FIXED",0),IP=new oz("CENTER_NODE",1)}function kde(n,e){var t;return t=CEe(n,e),n.b=new tT(t.c.length),Lje(n,t)}function yde(n,e,t){var i;return++n.e,--n.f,i=u(n.d[e].$c(t),133),i.dd()}function ISn(n){var e;return n.a||(e=n.r,I(e,148)&&(n.a=u(e,148))),n.a}function xX(n){if(n.a){if(n.e)return xX(n.e)}else return n;return null}function jde(n,e){return n.pe.p?-1:0}function PC(n,e){return _n(e),n.c=0,"Initial capacity must not be negative")}function $Sn(){$Sn=N,Vzn=Fe((_o(),A(M(_b,1),z,232,0,[Zr,Fc,nc])))}function FSn(){FSn=N,Jzn=Fe((Cu(),A(M(Qzn,1),z,461,0,[Xf,Ol,Co])))}function xSn(){xSn=N,Zzn=Fe((Jc(),A(M(Yzn,1),z,462,0,[Wo,Dl,To])))}function LSn(){LSn=N,Bzn=Fe((hf(),A(M(Nu,1),z,132,0,[Win,hs,Rb])))}function NSn(){NSn=N,bWn=Fe((W5(),A(M(Krn,1),z,379,0,[NR,LR,BR])))}function BSn(){BSn=N,PWn=Fe((qd(),A(M(zrn,1),z,423,0,[yg,Grn,qR])))}function RSn(){RSn=N,oXn=Fe((F2(),A(M(Kcn,1),z,314,0,[ap,qk,_cn])))}function _Sn(){_Sn=N,fXn=Fe((VC(),A(M(qcn,1),z,337,0,[Hcn,DS,o_])))}function KSn(){KSn=N,dXn=Fe((ya(),A(M(aXn,1),z,450,0,[l_,cv,Tg])))}function HSn(){HSn=N,rXn=Fe((Kd(),A(M(YR,1),z,361,0,[g0,Fl,w0])))}function qSn(){qSn=N,yXn=Fe((Nh(),A(M(kXn,1),z,303,0,[zk,Ag,dp])))}function GSn(){GSn=N,mXn=Fe((q3(),A(M(y_,1),z,292,0,[m_,k_,Gk])))}function zSn(){zSn=N,RQn=Fe((i6(),A(M(Gsn,1),z,378,0,[J_,qsn,oP])))}function USn(){USn=N,WQn=Fe((oT(),A(M(ion,1),z,375,0,[eon,cK,ton])))}function WSn(){WSn=N,qQn=Fe((Rh(),A(M(Zsn,1),z,339,0,[Nl,Ysn,tK])))}function XSn(){XSn=N,UQn=Fe((ur(),A(M(zQn,1),z,452,0,[Bm,Au,xc])))}function VSn(){VSn=N,JQn=Fe((dT(),A(M(hon,1),z,377,0,[fK,pv,ew])))}function QSn(){QSn=N,VQn=Fe((Q3(),A(M(uon,1),z,336,0,[sK,con,Rm])))}function JSn(){JSn=N,QQn=Fe((uT(),A(M(fon,1),z,338,0,[oon,oK,son])))}function YSn(){YSn=N,hJn=Fe((_d(),A(M(fJn,1),z,454,0,[ry,_m,aP])))}function ZSn(){ZSn=N,pYn=Fe((CT(),A(M(gYn,1),z,442,0,[CK,jK,EK])))}function nPn(){nPn=N,mYn=Fe((f7(),A(M(Fon,1),z,380,0,[CP,Don,$on])))}function ePn(){ePn=N,LYn=Fe((ET(),A(M(Yon,1),z,381,0,[Jon,IK,Qon])))}function tPn(){tPn=N,xYn=Fe((sT(),A(M(Xon,1),z,293,0,[PK,Won,Uon])))}function iPn(){iPn=N,iZn=Fe((w7(),A(M(OK,1),z,437,0,[AP,SP,PP])))}function rPn(){rPn=N,une=Fe((_h(),A(M(Khn,1),z,334,0,[HP,F1,i9])))}function cPn(){cPn=N,tne=Fe((sf(),A(M(Phn,1),z,272,0,[jv,cw,Ev])))}function Pde(){return Ti(),A(M(Ghn,1),z,98,0,[ql,jf,Tv,td,jh,Ac])}function wa(n,e){return!n.o&&(n.o=new Wu((Dc(),Ul),S0,n,0)),NF(n.o,e)}function Ide(n){return!n.g&&(n.g=new Qy),!n.g.d&&(n.g.d=new Cmn(n)),n.g.d}function Ode(n){return!n.g&&(n.g=new Qy),!n.g.a&&(n.g.a=new Tmn(n)),n.g.a}function Dde(n){return!n.g&&(n.g=new Qy),!n.g.b&&(n.g.b=new Emn(n)),n.g.b}function N8(n){return!n.g&&(n.g=new Qy),!n.g.c&&(n.g.c=new Mmn(n)),n.g.c}function $de(n,e,t){var i,r;for(r=new H3(e,n),i=0;it||e=0?n._g(t,!0,!0):Yd(n,e,!0)}function Qde(n,e){return Zt(K(Y(k(n,(G(),k0)))),K(Y(k(e,k0))))}function aPn(){aPn=N,aYn=Xd(Xd(Dj(new hi,(c4(),qm)),(k6(),pP)),aK)}function Jde(n,e,t){var i;return i=tDn(n,e,t),n.b=new tT(i.c.length),JY(n,i)}function Yde(n){if(n.b<=0)throw T(new ic);return--n.b,n.a-=n.c.c,Q(n.a)}function Zde(n){var e;if(!n.a)throw T(new gTn);return e=n.a,n.a=At(n.a),e}function n0e(n){for(;!n.a;)if(!nEn(n.c,new Xvn(n)))return!1;return!0}function $2(n){var e;return pe(n),I(n,198)?(e=u(n,198),e):new dvn(n)}function e0e(n){DC(),u(n.We((Xe(),rw)),174).Fc((Tu(),Ty)),n.Ye(eH,null)}function DC(){DC=N,SZn=new n2n,IZn=new e2n,PZn=Rwe((Xe(),eH),SZn,_l,IZn)}function $C(){$C=N,Ion=new sz("LEAF_NUMBER",0),TK=new sz("NODE_SIZE",1)}function t0e(n,e,t){n.a=e,n.c=t,n.b.a.$b(),_s(n.d),n.e.a.c=F(Zn,rn,1,0,5,1)}function $$(n){n.a=F(be,Le,25,n.b+1,15,1),n.c=F(be,Le,25,n.b,15,1),n.d=0}function i0e(n,e){n.a.ue(e.d,n.b)>0&&(W(n.c,new QU(e.c,e.d,n.d)),n.b=e.d)}function zX(n,e){if(n.g==null||e>=n.i)throw T(new xO(e,n.i));return n.g[e]}function dPn(n,e,t){if(W3(n,t),t!=null&&!n.wj(t))throw T(new xI);return t}function bPn(n){var e;if(n.Ek())for(e=n.i-1;e>=0;--e)D(n,e);return gX(n)}function r0e(n){var e,t;if(!n.b)return null;for(t=n.b;e=t.a[0];)t=e;return t}function c0e(n,e){var t,i;return LAn(e),t=(i=n.slice(0,e),WX(i,n)),t.length=e,t}function S3(n,e,t,i){var r;i=(Ow(),i||Lin),r=n.slice(e,t),hY(r,n,e,t,-e,i)}function Cs(n,e,t,i,r){return e<0?Yd(n,t,i):u(t,66).Nj().Pj(n,n.yh(),e,i,r)}function u0e(n){return I(n,172)?""+u(n,172).a:n==null?null:Lr(n)}function s0e(n){return I(n,172)?""+u(n,172).a:n==null?null:Lr(n)}function wPn(n,e){if(e.a)throw T(new _r(wKn));ri(n.a,e),e.a=n,!n.j&&(n.j=e)}function UX(n,e){FO.call(this,e.rd(),e.qd()&-16449),_n(n),this.a=n,this.c=e}function gPn(n,e){var t,i;return i=e/n.c.Hd().gc()|0,t=e%n.c.Hd().gc(),D2(n,i,t)}function Cu(){Cu=N,Xf=new oO(Y2,0),Ol=new oO(I4,1),Co=new oO(Z2,2)}function FC(){FC=N,vR=new Lj("All",0),qin=new lyn,Gin=new Eyn,zin=new ayn}function pPn(){pPn=N,Dzn=Fe((FC(),A(M(WA,1),z,297,0,[vR,qin,Gin,zin])))}function vPn(){vPn=N,EWn=Fe((G3(),A(M(jWn,1),z,405,0,[b0,Hb,Kb,kg])))}function mPn(){mPn=N,CUn=Fe((Hd(),A(M(EUn,1),z,406,0,[Ok,Ik,MR,AR])))}function kPn(){kPn=N,MUn=Fe((K2(),A(M(TUn,1),z,323,0,[$k,Dk,Fk,xk])))}function yPn(){yPn=N,PUn=Fe((d6(),A(M(SUn,1),z,394,0,[Lk,YA,ZA,Nk])))}function jPn(){jPn=N,WJn=Fe((c4(),A(M(won,1),z,393,0,[gP,qm,uy,Gm])))}function EPn(){EPn=N,HWn=Fe((aT(),A(M(KWn,1),z,360,0,[QR,TS,MS,Hk])))}function CPn(){CPn=N,FYn=Fe((qT(),A(M(zon,1),z,340,0,[SK,qon,Gon,Hon])))}function TPn(){TPn=N,JWn=Fe((ff(),A(M(QWn,1),z,411,0,[lp,nv,ev,JR])))}function MPn(){MPn=N,_Qn=Fe((wb(),A(M(Z_,1),z,197,0,[fP,Y_,xg,Fg])))}function APn(){APn=N,Ene=Fe((Xu(),A(M(jne,1),z,396,0,[ws,Yhn,Jhn,Zhn])))}function SPn(){SPn=N,one=Fe((cs(),A(M(sne,1),z,285,0,[Ey,kh,Kl,jy])))}function PPn(){PPn=N,ine=Fe((Hh(),A(M(cH,1),z,218,0,[rH,yy,Cv,Sp])))}function IPn(){IPn=N,kne=Fe((AT(),A(M(Qhn,1),z,311,0,[oH,Whn,Vhn,Xhn])))}function OPn(){OPn=N,vne=Fe((Vu(),A(M(o9,1),z,374,0,[Ay,id,My,uw])))}function DPn(){DPn=N,mM(),F1n=Ft,Tee=Vt,x1n=new S9(Ft),Mee=new S9(Vt)}function K8(){K8=N,Vcn=new VG(Xh,0),xS=new VG("IMPROVE_STRAIGHTNESS",1)}function o0e(n,e){return h3(),W(n,new Pi(e,Q(e.e.c.length+e.g.c.length)))}function f0e(n,e){return h3(),W(n,new Pi(e,Q(e.e.c.length+e.g.c.length)))}function WX(n,e){return U8(e)!=10&&A(Du(e),e.hm,e.__elementTypeId$,U8(e),n),n}function Qc(n,e){var t;return t=Fr(n,e,0),t==-1?!1:(h1(n,t),!0)}function $Pn(n,e){var t;return t=u(O2(n.e,e),387),t?(ZU(t),t.e):null}function P3(n){var e;return $r(n)&&(e=0-n,!isNaN(e))?e:bl(z3(n))}function Fr(n,e,t){for(;t=0?BT(n,t,!0,!0):Yd(n,e,!0)}function YX(n,e){Qv();var t,i;return t=S2(n),i=S2(e),!!t&&!!i&&!V$n(t.k,i.k)}function a0e(n,e){Zc(n,e==null||jE((_n(e),e))||isNaN((_n(e),e))?0:(_n(e),e))}function d0e(n,e){nu(n,e==null||jE((_n(e),e))||isNaN((_n(e),e))?0:(_n(e),e))}function b0e(n,e){Rd(n,e==null||jE((_n(e),e))||isNaN((_n(e),e))?0:(_n(e),e))}function w0e(n,e){Bd(n,e==null||jE((_n(e),e))||isNaN((_n(e),e))?0:(_n(e),e))}function BPn(n){(this.q?this.q:(Pn(),Pn(),ph)).Ac(n.q?n.q:(Pn(),Pn(),ph))}function g0e(n,e){return I(e,99)&&u(e,18).Bb&Yi?new LO(e,n):new H3(e,n)}function p0e(n,e){return I(e,99)&&u(e,18).Bb&Yi?new LO(e,n):new H3(e,n)}function RPn(n,e){vrn=new Wy,AUn=e,gm=n,u(gm.b,65),BX(gm,vrn,null),DRn(gm)}function B$(n,e,t){var i;return i=n.g[e],k5(n,e,n.oi(e,t)),n.gi(e,t,i),n.ci(),i}function BC(n,e){var t;return t=n.Xc(e),t>=0?(n.$c(t),!0):!1}function R$(n){var e;return n.d!=n.r&&(e=qs(n),n.e=!!e&&e.Cj()==kGn,n.d=e),n.e}function _$(n,e){var t;for(pe(n),pe(e),t=!1;e.Ob();)t=t|n.Fc(e.Pb());return t}function xd(n,e){var t;return t=u(te(n.e,e),387),t?(Oyn(n,t),t.e):null}function _Pn(n){var e,t;return e=n/60|0,t=n%60,t==0?""+e:""+e+":"+(""+t)}function qr(n,e){var t,i;return Ta(n),i=new FX(e,n.a),t=new iEn(i),new $n(n,t)}function ub(n,e){var t=n.a[e],i=(cF(),dR)[typeof t];return i?i(t):tQ(typeof t)}function v0e(n){switch(n.g){case 0:return nt;case 1:return-1;default:return 0}}function m0e(n){return mJ(n,(I3(),pin))<0?-xce(z3(n)):n.l+n.m*J2+n.h*$a}function U8(n){return n.__elementTypeCategory$==null?10:n.__elementTypeCategory$}function K$(n){var e;return e=n.b.c.length==0?null:un(n.b,0),e!=null&&J$(n,0),e}function KPn(n,e){for(;e[0]0&&arguments[0]!==void 0?arguments[0]:{},Ki=Ge.defaultLayoutOptions,Si=Ki===void 0?{}:Ki,Mn=Ge.algorithms,Lc=Mn===void 0?["layered","stress","mrtree","radial","force","disco","sporeOverlap","sporeCompaction","rectpacking"]:Mn,Nc=Ge.workerFactory,ps=Ge.workerUrl;if(j(this,Ot),this.defaultLayoutOptions=Si,this.initialized=!1,typeof ps>"u"&&typeof Nc>"u")throw new Error("Cannot construct an ELK without both 'workerUrl' and 'workerFactory'.");var Rr=Nc;typeof ps<"u"&&typeof Nc>"u"&&(Rr=function(q1){return new Worker(q1)});var Ch=Rr(ps);if(typeof Ch.postMessage!="function")throw new TypeError("Created worker does not provide the required 'postMessage' function.");this.worker=new ou(Ch),this.worker.postMessage({cmd:"register",algorithms:Lc}).then(function(H1){return qt.initialized=!0}).catch(console.err)}return Ai(Ot,[{key:"layout",value:function(Ge){var Ki=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},Si=Ki.layoutOptions,Mn=Si===void 0?this.defaultLayoutOptions:Si,Lc=Ki.logging,Nc=Lc===void 0?!1:Lc,ps=Ki.measureExecutionTime,Rr=ps===void 0?!1:ps;return Ge?this.worker.postMessage({cmd:"layout",graph:Ge,layoutOptions:Mn,options:{logging:Nc,measureExecutionTime:Rr}}):Promise.reject(new Error("Missing mandatory parameter 'graph'."))}},{key:"knownLayoutAlgorithms",value:function(){return this.worker.postMessage({cmd:"algorithms"})}},{key:"knownLayoutOptions",value:function(){return this.worker.postMessage({cmd:"options"})}},{key:"knownLayoutCategories",value:function(){return this.worker.postMessage({cmd:"categories"})}},{key:"terminateWorker",value:function(){this.worker.terminate()}}]),Ot}();Bt.default=Ht;var ou=function(){function Ot(qt){var Ge=this;if(j(this,Ot),qt===void 0)throw new Error("Missing mandatory parameter 'worker'.");this.resolvers={},this.worker=qt,this.worker.onmessage=function(Ki){setTimeout(function(){Ge.receive(Ge,Ki)},0)}}return Ai(Ot,[{key:"postMessage",value:function(Ge){var Ki=this.id||0;this.id=Ki+1,Ge.id=Ki;var Si=this;return new Promise(function(Mn,Lc){Si.resolvers[Ki]=function(Nc,ps){Nc?(Si.convertGwtStyleError(Nc),Lc(Nc)):Mn(ps)},Si.worker.postMessage(Ge)})}},{key:"receive",value:function(Ge,Ki){var Si=Ki.data,Mn=Ge.resolvers[Si.id];Mn&&(delete Ge.resolvers[Si.id],Si.error?Mn(Si.error):Mn(null,Si.data))}},{key:"terminate",value:function(){this.worker.terminate&&this.worker.terminate()}},{key:"convertGwtStyleError",value:function(Ge){if(Ge){var Ki=Ge.__java$exception;Ki&&(Ki.cause&&Ki.cause.backingJsObject&&(Ge.cause=Ki.cause.backingJsObject,this.convertGwtStyleError(Ge.cause)),delete Ge.__java$exception)}}}]),Ot}()},{}],2:[function(ut,dt,Bt){(function(Ai){(function(){var j;typeof window<"u"?j=window:typeof Ai<"u"?j=Ai:typeof self<"u"&&(j=self);var Ht;function ou(){}function Ot(){}function qt(){}function Ge(){}function Ki(){}function Si(){}function Mn(){}function Lc(){}function Nc(){}function ps(){}function Rr(){}function Ch(){}function H1(){}function q1(){}function ww(){}function Np(){}function G1(){}function Th(){}function Q1n(){}function J1n(){}function zy(){}function Y1n(){}function Z1n(){}function nln(){}function eln(){}function Xg(){}function N(){}function tln(){}function aI(){}function iln(){}function rln(){}function cln(){}function uln(){}function DH(){}function sln(){}function oln(){}function fln(){}function z1(){}function U1(){}function dI(){}function hln(){}function lln(){}function aln(){}function $H(){}function dln(){}function bln(){}function Vg(){}function Qg(){}function wln(){}function gln(){}function pln(){}function vln(){}function FH(){}function W1(){}function Jg(){}function Yg(){}function mln(){}function Vee(){}function bI(){}function kln(){}function yln(){}function jln(){}function Eln(){}function Cln(){}function Tln(){}function Mln(){}function Aln(){}function Sln(){}function Pln(){}function Iln(){}function Oln(){}function Dln(){}function $ln(){}function Fln(){}function xln(){}function Lln(){}function Nln(){}function Bln(){}function Rln(){}function _ln(){}function Kln(){}function Hln(){}function qln(){}function Gln(){}function zln(){}function Uln(){}function Wln(){}function Xln(){}function Vln(){}function Qln(){}function Jln(){}function Yln(){}function xH(){}function Zln(){}function nan(){}function ean(){}function tan(){}function wI(){}function gI(){}function Uy(){}function ian(){}function ran(){}function pI(){}function can(){}function uan(){}function san(){}function Wy(){}function oan(){}function fan(){}function han(){}function lan(){}function aan(){}function dan(){}function ban(){}function wan(){}function gan(){}function LH(){}function pan(){}function van(){}function man(){}function kan(){}function yan(){}function NH(){}function jan(){}function Ean(){}function Can(){}function Tan(){}function Man(){}function Aan(){}function San(){}function Pan(){}function Ian(){}function Oan(){}function Dan(){}function $an(){}function Fan(){}function xan(){}function vI(){}function Lan(){}function Nan(){}function Ban(){}function Ran(){}function _an(){}function BH(){}function Kan(){}function Han(){}function qan(){}function Gan(){}function zan(){}function Uan(){}function Wan(){}function Xan(){}function Van(){}function Qan(){}function Jan(){}function Yan(){}function Zan(){}function ndn(){}function edn(){}function tdn(){}function idn(){}function rdn(){}function cdn(){}function udn(){}function sdn(){}function odn(){}function fdn(){}function hdn(){}function ldn(){}function adn(){}function ddn(){}function bdn(){}function wdn(){}function gdn(){}function pdn(){}function vdn(){}function mdn(){}function kdn(){}function ydn(){}function jdn(){}function Edn(){}function Cdn(){}function Tdn(){}function Mdn(){}function Adn(){}function Sdn(){}function Pdn(){}function Idn(){}function Odn(){}function Ddn(){}function $dn(){}function Fdn(){}function xdn(){}function Ldn(){}function Ndn(){}function Bdn(){}function Rdn(){}function _dn(){}function Kdn(){}function Hdn(){}function qdn(){}function Gdn(){}function zdn(){}function Udn(){}function Wdn(){}function Xdn(){}function Vdn(){}function Qdn(){}function Jdn(){}function Ydn(){}function Zdn(){}function n0n(){}function e0n(){}function t0n(){}function i0n(){}function r0n(){}function c0n(){}function u0n(){}function s0n(){}function o0n(){}function f0n(){}function h0n(){}function l0n(){}function a0n(){}function d0n(){}function b0n(){}function w0n(){}function g0n(){}function p0n(){}function v0n(){}function m0n(){}function k0n(){}function y0n(){}function j0n(){}function E0n(){}function C0n(){}function T0n(){}function M0n(){}function A0n(){}function S0n(){}function P0n(){}function I0n(){}function O0n(){}function D0n(){}function RH(){}function $0n(){}function F0n(){}function x0n(){}function L0n(){}function N0n(){}function B0n(){}function R0n(){}function _0n(){}function K0n(){}function H0n(){}function q0n(){}function G0n(){}function z0n(){}function U0n(){}function W0n(){}function X0n(){}function V0n(){}function Q0n(){}function J0n(){}function Y0n(){}function Z0n(){}function nbn(){}function ebn(){}function tbn(){}function ibn(){}function rbn(){}function cbn(){}function ubn(){}function sbn(){}function obn(){}function fbn(){}function hbn(){}function lbn(){}function abn(){}function dbn(){}function bbn(){}function wbn(){}function gbn(){}function pbn(){}function vbn(){}function mbn(){}function kbn(){}function ybn(){}function jbn(){}function Ebn(){}function Cbn(){}function Tbn(){}function Mbn(){}function Abn(){}function Sbn(){}function Pbn(){}function Ibn(){}function Obn(){}function Dbn(){}function $bn(){}function Fbn(){}function xbn(){}function Lbn(){}function Nbn(){}function Bbn(){}function Rbn(){}function _bn(){}function Kbn(){}function Hbn(){}function qbn(){}function Gbn(){}function zbn(){}function _H(){}function Ubn(){}function Wbn(){}function Xbn(){}function Vbn(){}function Qbn(){}function Jbn(){}function Ybn(){}function Zbn(){}function nwn(){}function ewn(){}function twn(){}function iwn(){}function rwn(){}function cwn(){}function uwn(){}function swn(){}function own(){}function fwn(){}function hwn(){}function lwn(){}function KH(){}function awn(){}function dwn(){}function bwn(){}function wwn(){}function gwn(){}function pwn(){}function HH(){}function qH(){}function vwn(){}function GH(){}function zH(){}function mwn(){}function kwn(){}function ywn(){}function jwn(){}function Ewn(){}function Cwn(){}function Twn(){}function Mwn(){}function Awn(){}function UH(){}function Swn(){}function Pwn(){}function Iwn(){}function Own(){}function Dwn(){}function $wn(){}function Fwn(){}function xwn(){}function Lwn(){}function Nwn(){}function Bwn(){}function Rwn(){}function _wn(){}function Kwn(){}function Hwn(){}function qwn(){}function Gwn(){}function zwn(){}function Uwn(){}function Wwn(){}function Xwn(){}function Vwn(){}function Qwn(){}function Jwn(){}function Ywn(){}function Zwn(){}function ngn(){}function egn(){}function tgn(){}function ign(){}function rgn(){}function cgn(){}function ugn(){}function sgn(){}function ogn(){}function fgn(){}function hgn(){}function lgn(){}function agn(){}function dgn(){}function bgn(){}function wgn(){}function ggn(){}function pgn(){}function vgn(){}function mgn(){}function kgn(){}function ygn(){}function jgn(){}function Egn(){}function Cgn(){}function Tgn(){}function Mgn(){}function Agn(){}function Sgn(){}function Pgn(){}function Ign(){}function Ogn(){}function Dgn(){}function $gn(){}function Fgn(){}function xgn(){}function Lgn(){}function Ngn(){}function Bgn(){}function Rgn(){}function _gn(){}function Kgn(){}function mI(){}function kI(){}function yI(){}function Hgn(){}function qgn(){}function Ggn(){}function zgn(){}function Ugn(){}function WH(){}function Wgn(){}function Xgn(){}function Qee(){}function Vgn(){}function Qgn(){}function Jgn(){}function Ygn(){}function Zgn(){}function n2n(){}function e2n(){}function Zl(){}function t2n(){}function Zg(){}function XH(){}function i2n(){}function r2n(){}function c2n(){}function u2n(){}function s2n(){}function o2n(){}function f2n(){}function h2n(){}function l2n(){}function a2n(){}function d2n(){}function b2n(){}function w2n(){}function g2n(){}function p2n(){}function v2n(){}function m2n(){}function k2n(){}function y2n(){}function j2n(){}function E2n(){}function dn(){}function C2n(){}function T2n(){}function M2n(){}function A2n(){}function S2n(){}function P2n(){}function I2n(){}function O2n(){}function D2n(){}function $2n(){}function jI(){}function F2n(){}function x2n(){}function L2n(){}function N2n(){}function B2n(){}function VH(){}function Xy(){}function Vy(){}function R2n(){}function QH(){}function Qy(){}function _2n(){}function K2n(){}function H2n(){}function q2n(){}function G2n(){}function z2n(){}function Jy(){}function U2n(){}function W2n(){}function X2n(){}function Yy(){}function V2n(){}function JH(){}function Q2n(){}function EI(){}function YH(){}function J2n(){}function Y2n(){}function Z2n(){}function npn(){}function Jee(){}function epn(){}function tpn(){}function ipn(){}function rpn(){}function cpn(){}function upn(){}function spn(){}function opn(){}function fpn(){}function hpn(){}function Bp(){}function CI(){}function lpn(){}function apn(){}function dpn(){}function bpn(){}function wpn(){}function gpn(){}function ppn(){}function vpn(){}function mpn(){}function kpn(){}function ypn(){}function jpn(){}function Epn(){}function Cpn(){}function Tpn(){}function Mpn(){}function Apn(){}function Spn(){}function Ppn(){}function Ipn(){}function Opn(){}function Dpn(){}function $pn(){}function Fpn(){}function xpn(){}function Lpn(){}function Npn(){}function Bpn(){}function Rpn(){}function _pn(){}function Kpn(){}function Hpn(){}function qpn(){}function Gpn(){}function zpn(){}function Upn(){}function Wpn(){}function Xpn(){}function Vpn(){}function Qpn(){}function Jpn(){}function Ypn(){}function Zpn(){}function n3n(){}function e3n(){}function t3n(){}function i3n(){}function r3n(){}function c3n(){}function u3n(){}function s3n(){}function o3n(){}function f3n(){}function h3n(){}function l3n(){}function a3n(){}function d3n(){}function b3n(){}function w3n(){}function g3n(){}function p3n(){}function v3n(){}function m3n(){}function k3n(){}function y3n(){}function j3n(){}function E3n(){}function C3n(){}function T3n(){}function M3n(){}function A3n(){}function S3n(){}function P3n(){}function I3n(){}function O3n(){}function D3n(){}function $3n(){}function F3n(){}function x3n(){}function L3n(){}function N3n(){}function B3n(){}function R3n(){}function _3n(){}function K3n(){}function H3n(){}function q3n(){}function G3n(){}function z3n(){}function U3n(){}function W3n(){}function X3n(){}function V3n(){}function Q3n(){}function J3n(){}function Y3n(){}function Z3n(){}function n4n(){}function e4n(){}function t4n(){}function i4n(){}function ZH(){}function r4n(){}function c4n(){}function TI(){Rv()}function u4n(){pF()}function s4n(){a6()}function o4n(){WT()}function f4n(){YJ()}function h4n(){Go()}function l4n(){fJ()}function a4n(){C7()}function d4n(){q9()}function b4n(){H9()}function w4n(){w8()}function g4n(){v7n()}function p4n(){x2()}function v4n(){Sj()}function m4n(){PSn()}function k4n(){HIn()}function y4n(){sPn()}function j4n(){CMn()}function E4n(){V3()}function C4n(){yl()}function T4n(){qIn()}function M4n(){pAn()}function A4n(){zZ()}function S4n(){IFn()}function P4n(){TMn()}function I4n(){nn()}function O4n(){EMn()}function D4n(){GIn()}function $4n(){WOn()}function F4n(){AMn()}function x4n(){aPn()}function L4n(){m7n()}function N4n(){$Y()}function B4n(){gb()}function R4n(){pOn()}function _4n(){S7()}function K4n(){Ux()}function H4n(){ZF()}function q4n(){Zd()}function G4n(){PV()}function z4n(){MMn()}function U4n(){BBn()}function W4n(){IY()}function X4n(){Bx()}function V4n(){DC()}function Q4n(){nM()}function nq(){Xe()}function J4n(){wT()}function Y4n(){NQ()}function eq(){mM()}function Fo(){dEn()}function tq(){eF()}function Z4n(){pZ()}function iq(n){_n(n)}function nvn(n){this.a=n}function Zy(n){this.a=n}function evn(n){this.a=n}function tvn(n){this.a=n}function ivn(n){this.a=n}function rvn(n){this.a=n}function cvn(n){this.a=n}function uvn(n){this.a=n}function rq(n){this.a=n}function cq(n){this.a=n}function svn(n){this.a=n}function MI(n){this.a=n}function ovn(n){this.a=n}function AI(n){this.a=n}function fvn(n){this.a=n}function SI(n){this.a=n}function hvn(n){this.a=n}function PI(n){this.a=n}function lvn(n){this.a=n}function avn(n){this.a=n}function dvn(n){this.a=n}function uq(n){this.b=n}function bvn(n){this.c=n}function wvn(n){this.a=n}function gvn(n){this.a=n}function pvn(n){this.a=n}function vvn(n){this.a=n}function mvn(n){this.a=n}function kvn(n){this.a=n}function yvn(n){this.a=n}function jvn(n){this.a=n}function Evn(n){this.a=n}function Cvn(n){this.a=n}function Tvn(n){this.a=n}function Mvn(n){this.a=n}function Avn(n){this.a=n}function sq(n){this.a=n}function oq(n){this.a=n}function nj(n){this.a=n}function M9(n){this.a=n}function na(){this.a=[]}function Svn(n,e){n.a=e}function Yee(n,e){n.a=e}function Zee(n,e){n.b=e}function nte(n,e){n.b=e}function ete(n,e){n.b=e}function fq(n,e){n.j=e}function tte(n,e){n.g=e}function ite(n,e){n.i=e}function rte(n,e){n.c=e}function cte(n,e){n.d=e}function ute(n,e){n.d=e}function ste(n,e){n.c=e}function ea(n,e){n.k=e}function ote(n,e){n.c=e}function hq(n,e){n.c=e}function lq(n,e){n.a=e}function fte(n,e){n.a=e}function hte(n,e){n.f=e}function lte(n,e){n.a=e}function ate(n,e){n.b=e}function II(n,e){n.d=e}function ej(n,e){n.i=e}function aq(n,e){n.o=e}function dte(n,e){n.r=e}function bte(n,e){n.a=e}function wte(n,e){n.b=e}function Pvn(n,e){n.e=e}function gte(n,e){n.f=e}function dq(n,e){n.g=e}function pte(n,e){n.e=e}function vte(n,e){n.f=e}function mte(n,e){n.f=e}function kte(n,e){n.n=e}function yte(n,e){n.a=e}function jte(n,e){n.a=e}function Ete(n,e){n.c=e}function Cte(n,e){n.c=e}function Tte(n,e){n.d=e}function Mte(n,e){n.e=e}function Ate(n,e){n.g=e}function Ste(n,e){n.a=e}function Pte(n,e){n.c=e}function Ite(n,e){n.d=e}function Ote(n,e){n.e=e}function Dte(n,e){n.f=e}function $te(n,e){n.j=e}function Fte(n,e){n.a=e}function xte(n,e){n.b=e}function Lte(n,e){n.a=e}function Ivn(n){n.b=n.a}function Ovn(n){n.c=n.d.d}function $v(n){this.d=n}function ta(n){this.a=n}function Rp(n){this.a=n}function bq(n){this.a=n}function Mh(n){this.a=n}function A9(n){this.a=n}function Dvn(n){this.a=n}function wq(n){this.a=n}function S9(n){this.a=n}function gq(n){this.a=n}function pq(n){this.a=n}function vq(n){this.a=n}function L0(n){this.a=n}function P9(n){this.a=n}function I9(n){this.a=n}function mq(n){this.b=n}function _p(n){this.b=n}function Kp(n){this.b=n}function OI(n){this.a=n}function $vn(n){this.a=n}function kq(n){this.a=n}function DI(n){this.c=n}function E(n){this.c=n}function Fvn(n){this.c=n}function yq(n){this.a=n}function jq(n){this.a=n}function Eq(n){this.a=n}function Cq(n){this.a=n}function st(n){this.a=n}function xvn(n){this.a=n}function Tq(n){this.a=n}function Mq(n){this.a=n}function Lvn(n){this.a=n}function Nvn(n){this.a=n}function Fv(n){this.a=n}function Bvn(n){this.a=n}function Rvn(n){this.a=n}function _vn(n){this.a=n}function Kvn(n){this.a=n}function Hvn(n){this.a=n}function qvn(n){this.a=n}function Gvn(n){this.a=n}function zvn(n){this.a=n}function Uvn(n){this.a=n}function Wvn(n){this.a=n}function Xvn(n){this.a=n}function Vvn(n){this.a=n}function Qvn(n){this.a=n}function Jvn(n){this.a=n}function Yvn(n){this.a=n}function Zvn(n){this.a=n}function n5n(n){this.a=n}function O9(n){this.a=n}function e5n(n){this.a=n}function t5n(n){this.a=n}function tj(n){this.a=n}function i5n(n){this.a=n}function r5n(n){this.a=n}function Hp(n){this.a=n}function Aq(n){this.a=n}function c5n(n){this.a=n}function u5n(n){this.a=n}function s5n(n){this.a=n}function o5n(n){this.a=n}function f5n(n){this.a=n}function Sq(n){this.a=n}function Pq(n){this.a=n}function Iq(n){this.a=n}function ij(n){this.a=n}function rj(n){this.e=n}function qp(n){this.a=n}function h5n(n){this.a=n}function n2(n){this.a=n}function Oq(n){this.a=n}function l5n(n){this.a=n}function a5n(n){this.a=n}function d5n(n){this.a=n}function b5n(n){this.a=n}function w5n(n){this.a=n}function g5n(n){this.a=n}function p5n(n){this.a=n}function v5n(n){this.a=n}function m5n(n){this.a=n}function k5n(n){this.a=n}function y5n(n){this.a=n}function Dq(n){this.a=n}function j5n(n){this.a=n}function E5n(n){this.a=n}function C5n(n){this.a=n}function T5n(n){this.a=n}function M5n(n){this.a=n}function A5n(n){this.a=n}function S5n(n){this.a=n}function P5n(n){this.a=n}function I5n(n){this.a=n}function O5n(n){this.a=n}function D5n(n){this.a=n}function $5n(n){this.a=n}function F5n(n){this.a=n}function x5n(n){this.a=n}function L5n(n){this.a=n}function N5n(n){this.a=n}function B5n(n){this.a=n}function R5n(n){this.a=n}function _5n(n){this.a=n}function K5n(n){this.a=n}function H5n(n){this.a=n}function q5n(n){this.a=n}function G5n(n){this.a=n}function z5n(n){this.a=n}function U5n(n){this.a=n}function W5n(n){this.a=n}function X5n(n){this.a=n}function V5n(n){this.a=n}function Q5n(n){this.a=n}function J5n(n){this.a=n}function Y5n(n){this.a=n}function Z5n(n){this.a=n}function n6n(n){this.a=n}function e6n(n){this.a=n}function t6n(n){this.a=n}function i6n(n){this.a=n}function r6n(n){this.a=n}function c6n(n){this.c=n}function u6n(n){this.b=n}function s6n(n){this.a=n}function o6n(n){this.a=n}function f6n(n){this.a=n}function h6n(n){this.a=n}function l6n(n){this.a=n}function a6n(n){this.a=n}function d6n(n){this.a=n}function b6n(n){this.a=n}function w6n(n){this.a=n}function g6n(n){this.a=n}function p6n(n){this.a=n}function v6n(n){this.a=n}function m6n(n){this.a=n}function k6n(n){this.a=n}function y6n(n){this.a=n}function j6n(n){this.a=n}function E6n(n){this.a=n}function C6n(n){this.a=n}function T6n(n){this.a=n}function M6n(n){this.a=n}function A6n(n){this.a=n}function S6n(n){this.a=n}function P6n(n){this.a=n}function I6n(n){this.a=n}function X1(n){this.a=n}function e2(n){this.a=n}function O6n(n){this.a=n}function D6n(n){this.a=n}function $6n(n){this.a=n}function F6n(n){this.a=n}function x6n(n){this.a=n}function L6n(n){this.a=n}function N6n(n){this.a=n}function B6n(n){this.a=n}function R6n(n){this.a=n}function _6n(n){this.a=n}function K6n(n){this.a=n}function H6n(n){this.a=n}function q6n(n){this.a=n}function G6n(n){this.a=n}function z6n(n){this.a=n}function U6n(n){this.a=n}function cj(n){this.a=n}function W6n(n){this.a=n}function X6n(n){this.a=n}function V6n(n){this.a=n}function Q6n(n){this.a=n}function J6n(n){this.a=n}function Y6n(n){this.a=n}function Z6n(n){this.a=n}function nmn(n){this.a=n}function emn(n){this.a=n}function tmn(n){this.a=n}function imn(n){this.a=n}function rmn(n){this.a=n}function cmn(n){this.a=n}function umn(n){this.a=n}function smn(n){this.a=n}function omn(n){this.a=n}function fmn(n){this.a=n}function hmn(n){this.a=n}function lmn(n){this.a=n}function amn(n){this.a=n}function dmn(n){this.a=n}function bmn(n){this.a=n}function wmn(n){this.a=n}function gmn(n){this.a=n}function pmn(n){this.a=n}function vmn(n){this.a=n}function mmn(n){this.a=n}function kmn(n){this.a=n}function $q(n){this.a=n}function kt(n){this.b=n}function ymn(n){this.f=n}function Fq(n){this.a=n}function jmn(n){this.a=n}function Emn(n){this.a=n}function Cmn(n){this.a=n}function Tmn(n){this.a=n}function Mmn(n){this.a=n}function Amn(n){this.a=n}function Smn(n){this.a=n}function Pmn(n){this.a=n}function D9(n){this.a=n}function Imn(n){this.a=n}function Omn(n){this.b=n}function xq(n){this.c=n}function uj(n){this.e=n}function Dmn(n){this.a=n}function sj(n){this.a=n}function oj(n){this.a=n}function $I(n){this.a=n}function $mn(n){this.a=n}function Fmn(n){this.d=n}function Lq(n){this.a=n}function Nq(n){this.a=n}function cd(n){this.e=n}function Nte(){this.a=0}function gw(){dyn(this)}function X(){RO(this)}function we(){Eu(this)}function FI(){pTn(this)}function xmn(){}function ud(){this.c=p1n}function Bte(n,e){e.Wb(n)}function Lmn(n,e){n.b+=e}function Nmn(n){n.b=new JI}function T(n){return n.e}function Rte(n){return n.a}function _te(n){return n.a}function Kte(n){return n.a}function Hte(n){return n.a}function qte(n){return n.a}function Gte(){return null}function zte(){return null}function Ute(){EG(),iTe()}function Wte(n){n.b.tf(n.e)}function xv(n,e){n.b=e-n.b}function Lv(n,e){n.a=e-n.a}function Bmn(n,e){e.ad(n.a)}function Xte(n,e){ui(e,n)}function Vte(n,e,t){n.Od(t,e)}function $9(n,e){n.e=e,e.b=n}function Bq(n){Df(),this.a=n}function Rmn(n){Df(),this.a=n}function _mn(n){Df(),this.a=n}function Rq(n){nb(),this.a=n}function Kmn(n){k3(),aR.be(n)}function ia(){Qyn.call(this)}function _q(){Qyn.call(this)}function Kq(){ia.call(this)}function xI(){ia.call(this)}function Hmn(){ia.call(this)}function F9(){ia.call(this)}function fu(){ia.call(this)}function Nv(){ia.call(this)}function ye(){ia.call(this)}function vs(){ia.call(this)}function qmn(){ia.call(this)}function ic(){ia.call(this)}function Gmn(){ia.call(this)}function zmn(){this.a=this}function fj(){this.Bb|=256}function Umn(){this.b=new Xkn}function Hq(){Hq=N,new we}function qq(){Kq.call(this)}function Wmn(n,e){n.length=e}function hj(n,e){W(n.a,e)}function Qte(n,e){nY(n.c,e)}function Jte(n,e){ri(n.b,e)}function Yte(n,e){KT(n.a,e)}function Zte(n,e){MF(n.a,e)}function Gp(n,e){et(n.e,e)}function t2(n){iM(n.c,n.b)}function nie(n,e){n.kc().Nb(e)}function Gq(n){this.a=Yge(n)}function fi(){this.a=new we}function Xmn(){this.a=new we}function lj(){this.a=new X}function LI(){this.a=new X}function zq(){this.a=new X}function Ns(){this.a=new Oln}function ra(){this.a=new TSn}function Uq(){this.a=new LH}function Wq(){this.a=new h7n}function Vmn(){this.a=new YMn}function Xq(){this.a=new bMn}function Vq(){this.a=new Bjn}function Qmn(){this.a=new X}function Qq(){this.a=new X}function Jmn(){this.a=new X}function Ymn(){this.a=new X}function Zmn(){this.d=new X}function n9n(){this.a=new fi}function e9n(){this.a=new we}function t9n(){this.b=new we}function i9n(){this.b=new X}function Jq(){this.e=new X}function r9n(){this.d=new X}function c9n(){this.a=new C4n}function u9n(){X.call(this)}function Yq(){lj.call(this)}function s9n(){kE.call(this)}function o9n(){Qq.call(this)}function NI(){Bv.call(this)}function Bv(){xmn.call(this)}function i2(){xmn.call(this)}function Zq(){i2.call(this)}function f9n(){zTn.call(this)}function h9n(){zTn.call(this)}function l9n(){uG.call(this)}function a9n(){uG.call(this)}function d9n(){uG.call(this)}function b9n(){sG.call(this)}function hu(){Ct.call(this)}function nG(){B2n.call(this)}function eG(){B2n.call(this)}function w9n(){O9n.call(this)}function g9n(){O9n.call(this)}function p9n(){we.call(this)}function v9n(){we.call(this)}function m9n(){we.call(this)}function k9n(){fi.call(this)}function BI(){RIn.call(this)}function y9n(){fj.call(this)}function RI(){Oz.call(this)}function _I(){Oz.call(this)}function tG(){we.call(this)}function KI(){we.call(this)}function j9n(){we.call(this)}function iG(){Yy.call(this)}function E9n(){Yy.call(this)}function C9n(){iG.call(this)}function T9n(){ZH.call(this)}function M9n(n){hIn.call(this,n)}function A9n(n){hIn.call(this,n)}function rG(n){rq.call(this,n)}function cG(n){n7n.call(this,n)}function eie(n){cG.call(this,n)}function tie(n){n7n.call(this,n)}function zp(){this.a=new Ct}function uG(){this.a=new fi}function sG(){this.a=new we}function S9n(){this.a=new X}function P9n(){this.j=new X}function oG(){this.a=new Rgn}function I9n(){this.a=new T8n}function O9n(){this.a=new X2n}function HI(){HI=N,uR=new V9n}function qI(){qI=N,cR=new X9n}function Rv(){Rv=N,rR=new Ot}function aj(){aj=N,fR=new Xyn}function iie(n){cG.call(this,n)}function rie(n){cG.call(this,n)}function D9n(n){m$.call(this,n)}function $9n(n){m$.call(this,n)}function F9n(n){uEn.call(this,n)}function GI(n){C5e.call(this,n)}function sd(n){_0.call(this,n)}function _v(n){Cj.call(this,n)}function fG(n){Cj.call(this,n)}function x9n(n){Cj.call(this,n)}function _r(n){kCn.call(this,n)}function L9n(n){_r.call(this,n)}function r2(){M9.call(this,{})}function dj(n){c3(),this.a=n}function Kv(n){n.b=null,n.c=0}function cie(n,e){n.e=e,NNn(n,e)}function uie(n,e){n.a=e,h6e(n)}function zI(n,e,t){n.a[e.g]=t}function sie(n,e,t){M4e(t,n,e)}function oie(n,e){$ue(e.i,n.n)}function N9n(n,e){Fwe(n).td(e)}function fie(n,e){return n*n/e}function B9n(n,e){return n.g-e.g}function hie(n){return new nj(n)}function lie(n){return new Z0(n)}function bj(n){_r.call(this,n)}function vr(n){_r.call(this,n)}function R9n(n){_r.call(this,n)}function UI(n){kCn.call(this,n)}function WI(n){AV(),this.a=n}function _9n(n){aEn(),this.a=n}function N0(n){ED(),this.f=n}function XI(n){ED(),this.f=n}function Up(n){_r.call(this,n)}function Hn(n){_r.call(this,n)}function Dr(n){_r.call(this,n)}function K9n(n){_r.call(this,n)}function c2(n){_r.call(this,n)}function on(n){return _n(n),n}function K(n){return _n(n),n}function x9(n){return _n(n),n}function hG(n){return _n(n),n}function aie(n){return _n(n),n}function Hv(n){return n.b==n.c}function B0(n){return!!n&&n.b}function die(n){return!!n&&n.k}function bie(n){return!!n&&n.j}function Ku(n){_n(n),this.a=n}function lG(n){return ja(n),n}function qv(n){EW(n,n.length)}function t1(n){_r.call(this,n)}function Af(n){_r.call(this,n)}function VI(n){_r.call(this,n)}function pw(n){_r.call(this,n)}function Gv(n){_r.call(this,n)}function Ce(n){_r.call(this,n)}function QI(n){Vz.call(this,n,0)}function JI(){iX.call(this,12,3)}function aG(){aG=N,din=new Q1n}function H9n(){H9n=N,ain=new ou}function wj(){wj=N,dm=new H1}function q9n(){q9n=N,vzn=new ww}function G9n(){throw T(new ye)}function dG(){throw T(new ye)}function z9n(){throw T(new ye)}function wie(){throw T(new ye)}function gie(){throw T(new ye)}function pie(){throw T(new ye)}function YI(){this.a=Te(pe(Ji))}function u2(n){Df(),this.a=pe(n)}function U9n(n,e){n.Td(e),e.Sd(n)}function vie(n,e){n.a.ec().Mc(e)}function mie(n,e,t){n.c.lf(e,t)}function bG(n){vr.call(this,n)}function Sf(n){Hn.call(this,n)}function i1(){A9.call(this,"")}function zv(){A9.call(this,"")}function V1(){A9.call(this,"")}function R0(){A9.call(this,"")}function wG(n){vr.call(this,n)}function Wp(n){_p.call(this,n)}function ZI(n){lE.call(this,n)}function W9n(n){Wp.call(this,n)}function X9n(){AI.call(this,null)}function V9n(){AI.call(this,null)}function gj(){gj=N,k3()}function Q9n(){Q9n=N,Szn=Z4e()}function J9n(n){return n.a?n.b:0}function kie(n){return n.a?n.b:0}function yie(n,e){return n.a-e.a}function jie(n,e){return n.a-e.a}function Eie(n,e){return n.a-e.a}function pj(n,e){return WX(n,e)}function M(n,e){return pMn(n,e)}function Cie(n,e){return e in n.a}function Y9n(n,e){return n.f=e,n}function Tie(n,e){return n.b=e,n}function Z9n(n,e){return n.c=e,n}function Mie(n,e){return n.g=e,n}function gG(n,e){return n.a=e,n}function pG(n,e){return n.f=e,n}function Aie(n,e){return n.k=e,n}function vG(n,e){return n.a=e,n}function Sie(n,e){return n.e=e,n}function mG(n,e){return n.e=e,n}function Pie(n,e){return n.f=e,n}function Iie(n,e){n.b=!0,n.d=e}function Oie(n,e){n.b=new mr(e)}function Die(n,e,t){e.td(n.a[t])}function $ie(n,e,t){e.we(n.a[t])}function Fie(n,e){return n.b-e.b}function xie(n,e){return n.g-e.g}function Lie(n,e){return n.s-e.s}function Nie(n,e){return n?0:e-1}function n8n(n,e){return n?0:e-1}function Bie(n,e){return n?e-1:0}function Rie(n,e){return e.Yf(n)}function od(n,e){return n.b=e,n}function vj(n,e){return n.a=e,n}function fd(n,e){return n.c=e,n}function hd(n,e){return n.d=e,n}function ld(n,e){return n.e=e,n}function kG(n,e){return n.f=e,n}function Uv(n,e){return n.a=e,n}function Xp(n,e){return n.b=e,n}function Vp(n,e){return n.c=e,n}function gn(n,e){return n.c=e,n}function Dn(n,e){return n.b=e,n}function pn(n,e){return n.d=e,n}function vn(n,e){return n.e=e,n}function _ie(n,e){return n.f=e,n}function mn(n,e){return n.g=e,n}function kn(n,e){return n.a=e,n}function yn(n,e){return n.i=e,n}function jn(n,e){return n.j=e,n}function e8n(n,e){return n.k=e,n}function Kie(n,e){return n.j=e,n}function Hie(n,e){yl(),Hr(e,n)}function qie(n,e,t){Nfe(n.a,e,t)}function t8n(n){mTn.call(this,n)}function yG(n){mTn.call(this,n)}function mj(n){uD.call(this,n)}function i8n(n){u2e.call(this,n)}function Q1(n){Ld.call(this,n)}function r8n(n){XD.call(this,n)}function c8n(n){XD.call(this,n)}function u8n(){Mz.call(this,"")}function Li(){this.a=0,this.b=0}function s8n(){this.b=0,this.a=0}function o8n(n,e){n.b=0,hb(n,e)}function Gie(n,e){n.c=e,n.b=!0}function f8n(n,e){return n.c._b(e)}function xo(n){return n.e&&n.e()}function nO(n){return n?n.d:null}function h8n(n,e){return LDn(n.b,e)}function zie(n){return n?n.g:null}function Uie(n){return n?n.i:null}function J1(n){return Ph(n),n.o}function ad(){ad=N,Mne=h4e()}function l8n(){l8n=N,vi=jve()}function Qp(){Qp=N,g1n=a4e()}function a8n(){a8n=N,hee=l4e()}function jG(){jG=N,oc=s6e()}function EG(){EG=N,Wl=N3()}function d8n(){throw T(new ye)}function b8n(){throw T(new ye)}function w8n(){throw T(new ye)}function g8n(){throw T(new ye)}function p8n(){throw T(new ye)}function v8n(){throw T(new ye)}function kj(n){this.a=new s2(n)}function CG(n){d_n(),gTe(this,n)}function Y1(n){this.a=new AD(n)}function vw(n,e){for(;n.ye(e););}function TG(n,e){for(;n.sd(e););}function mw(n,e){return n.a+=e,n}function eO(n,e){return n.a+=e,n}function r1(n,e){return n.a+=e,n}function dd(n,e){return n.a+=e,n}function Wv(n){return fl(n),n.a}function yj(n){return n.b!=n.d.c}function m8n(n){return n.l|n.m<<22}function MG(n,e){return n.d[e.p]}function k8n(n,e){return Q8e(n,e)}function AG(n,e,t){n.splice(e,t)}function y8n(n){n.c?rBn(n):cBn(n)}function jj(n){this.a=0,this.b=n}function j8n(){this.a=new B7(Pon)}function E8n(){this.b=new B7(won)}function C8n(){this.b=new B7(OK)}function T8n(){this.b=new B7(OK)}function M8n(){throw T(new ye)}function A8n(){throw T(new ye)}function S8n(){throw T(new ye)}function P8n(){throw T(new ye)}function I8n(){throw T(new ye)}function O8n(){throw T(new ye)}function D8n(){throw T(new ye)}function $8n(){throw T(new ye)}function F8n(){throw T(new ye)}function x8n(){throw T(new ye)}function Wie(){throw T(new ic)}function Xie(){throw T(new ic)}function L9(n){this.a=new L8n(n)}function L8n(n){cbe(this,n,cve())}function N9(n){return!n||iTn(n)}function B9(n){return Tf[n]!=-1}function Vie(){_A!=0&&(_A=0),KA=-1}function N8n(){iR==null&&(iR=[])}function Qie(n,e){$x(R(n.a),e)}function Jie(n,e){$x(R(n.a),e)}function R9(n,e){Sw.call(this,n,e)}function Jp(n,e){R9.call(this,n,e)}function SG(n,e){this.b=n,this.c=e}function B8n(n,e){this.b=n,this.a=e}function R8n(n,e){this.a=n,this.b=e}function _8n(n,e){this.a=n,this.b=e}function K8n(n,e){this.a=n,this.b=e}function H8n(n,e){this.a=n,this.b=e}function q8n(n,e){this.a=n,this.b=e}function G8n(n,e){this.a=n,this.b=e}function z8n(n,e){this.a=n,this.b=e}function U8n(n,e){this.a=n,this.b=e}function W8n(n,e){this.b=n,this.a=e}function X8n(n,e){this.b=n,this.a=e}function V8n(n,e){this.b=n,this.a=e}function Q8n(n,e){this.b=n,this.a=e}function Oe(n,e){this.f=n,this.g=e}function Yp(n,e){this.e=n,this.d=e}function bd(n,e){this.g=n,this.i=e}function tO(n,e){this.a=n,this.b=e}function J8n(n,e){this.a=n,this.f=e}function Y8n(n,e){this.b=n,this.c=e}function Yie(n,e){this.a=n,this.b=e}function Z8n(n,e){this.a=n,this.b=e}function iO(n,e){this.a=n,this.b=e}function n7n(n){Bz(n.dc()),this.c=n}function Ej(n){this.b=u(pe(n),83)}function e7n(n){this.a=u(pe(n),83)}function _0(n){this.a=u(pe(n),15)}function t7n(n){this.a=u(pe(n),15)}function Cj(n){this.b=u(pe(n),47)}function Tj(){this.q=new j.Date}function Zf(){Zf=N,Sin=new tln}function Zp(){Zp=N,X4=new nln}function Xv(n){return n.f.c+n.g.c}function _9(n,e){return n.b.Hc(e)}function i7n(n,e){return n.b.Ic(e)}function r7n(n,e){return n.b.Qc(e)}function c7n(n,e){return n.b.Hc(e)}function u7n(n,e){return n.c.uc(e)}function Ah(n,e){return n.a._b(e)}function s7n(n,e){return tt(n.c,e)}function o7n(n,e){return zu(n.b,e)}function f7n(n,e){return n>e&&e0}function cO(n,e){return fc(n,e)<0}function n5(n,e){return n.a.get(e)}function lre(n,e){return e.split(n)}function S7n(n,e){return zu(n.e,e)}function LG(n){return _n(n),!1}function xj(n){xn.call(this,n,21)}function are(n,e){cMn.call(this,n,e)}function Lj(n,e){Oe.call(this,n,e)}function uO(n,e){Oe.call(this,n,e)}function NG(n){_D(),uEn.call(this,n)}function BG(n,e){fCn(n,n.length,e)}function z9(n,e){BCn(n,n.length,e)}function dre(n,e,t){e.ud(n.a.Ge(t))}function bre(n,e,t){e.we(n.a.Fe(t))}function wre(n,e,t){e.td(n.a.Kb(t))}function gre(n,e,t){n.Mb(t)&&e.td(t)}function e5(n,e,t){n.splice(e,0,t)}function pre(n,e){return au(n.e,e)}function Nj(n,e){this.d=n,this.e=e}function P7n(n,e){this.b=n,this.a=e}function I7n(n,e){this.b=n,this.a=e}function RG(n,e){this.b=n,this.a=e}function O7n(n,e){this.a=n,this.b=e}function D7n(n,e){this.a=n,this.b=e}function $7n(n,e){this.a=n,this.b=e}function F7n(n,e){this.a=n,this.b=e}function f2(n,e){this.a=n,this.b=e}function _G(n,e){this.b=n,this.a=e}function KG(n,e){this.b=n,this.a=e}function Bj(n,e){Oe.call(this,n,e)}function Rj(n,e){Oe.call(this,n,e)}function HG(n,e){Oe.call(this,n,e)}function qG(n,e){Oe.call(this,n,e)}function kw(n,e){Oe.call(this,n,e)}function sO(n,e){Oe.call(this,n,e)}function oO(n,e){Oe.call(this,n,e)}function fO(n,e){Oe.call(this,n,e)}function _j(n,e){Oe.call(this,n,e)}function GG(n,e){Oe.call(this,n,e)}function hO(n,e){Oe.call(this,n,e)}function U9(n,e){Oe.call(this,n,e)}function Kj(n,e){Oe.call(this,n,e)}function lO(n,e){Oe.call(this,n,e)}function t5(n,e){Oe.call(this,n,e)}function zG(n,e){Oe.call(this,n,e)}function zt(n,e){Oe.call(this,n,e)}function Hj(n,e){Oe.call(this,n,e)}function x7n(n,e){this.a=n,this.b=e}function L7n(n,e){this.a=n,this.b=e}function N7n(n,e){this.a=n,this.b=e}function B7n(n,e){this.a=n,this.b=e}function R7n(n,e){this.a=n,this.b=e}function _7n(n,e){this.a=n,this.b=e}function K7n(n,e){this.a=n,this.b=e}function H7n(n,e){this.a=n,this.b=e}function q7n(n,e){this.a=n,this.b=e}function UG(n,e){this.b=n,this.a=e}function G7n(n,e){this.b=n,this.a=e}function z7n(n,e){this.b=n,this.a=e}function U7n(n,e){this.b=n,this.a=e}function t3(n,e){this.c=n,this.d=e}function W7n(n,e){this.e=n,this.d=e}function X7n(n,e){this.a=n,this.b=e}function V7n(n,e){this.b=e,this.c=n}function qj(n,e){Oe.call(this,n,e)}function W9(n,e){Oe.call(this,n,e)}function aO(n,e){Oe.call(this,n,e)}function i5(n,e){Oe.call(this,n,e)}function WG(n,e){Oe.call(this,n,e)}function dO(n,e){Oe.call(this,n,e)}function bO(n,e){Oe.call(this,n,e)}function X9(n,e){Oe.call(this,n,e)}function XG(n,e){Oe.call(this,n,e)}function wO(n,e){Oe.call(this,n,e)}function r5(n,e){Oe.call(this,n,e)}function VG(n,e){Oe.call(this,n,e)}function c5(n,e){Oe.call(this,n,e)}function u5(n,e){Oe.call(this,n,e)}function H0(n,e){Oe.call(this,n,e)}function gO(n,e){Oe.call(this,n,e)}function pO(n,e){Oe.call(this,n,e)}function QG(n,e){Oe.call(this,n,e)}function s5(n,e){Oe.call(this,n,e)}function vO(n,e){Oe.call(this,n,e)}function Gj(n,e){Oe.call(this,n,e)}function V9(n,e){Oe.call(this,n,e)}function Q9(n,e){Oe.call(this,n,e)}function h2(n,e){Oe.call(this,n,e)}function mO(n,e){Oe.call(this,n,e)}function JG(n,e){Oe.call(this,n,e)}function kO(n,e){Oe.call(this,n,e)}function yO(n,e){Oe.call(this,n,e)}function YG(n,e){Oe.call(this,n,e)}function jO(n,e){Oe.call(this,n,e)}function EO(n,e){Oe.call(this,n,e)}function CO(n,e){Oe.call(this,n,e)}function TO(n,e){Oe.call(this,n,e)}function ZG(n,e){Oe.call(this,n,e)}function Q7n(n,e){this.b=n,this.a=e}function J7n(n,e){this.a=n,this.b=e}function Y7n(n,e){this.a=n,this.b=e}function Z7n(n,e){this.a=n,this.b=e}function nkn(n,e){this.a=n,this.b=e}function nz(n,e){Oe.call(this,n,e)}function ez(n,e){Oe.call(this,n,e)}function ekn(n,e){this.b=n,this.d=e}function tz(n,e){Oe.call(this,n,e)}function iz(n,e){Oe.call(this,n,e)}function tkn(n,e){this.a=n,this.b=e}function ikn(n,e){this.a=n,this.b=e}function zj(n,e){Oe.call(this,n,e)}function o5(n,e){Oe.call(this,n,e)}function rz(n,e){Oe.call(this,n,e)}function cz(n,e){Oe.call(this,n,e)}function uz(n,e){Oe.call(this,n,e)}function MO(n,e){Oe.call(this,n,e)}function sz(n,e){Oe.call(this,n,e)}function AO(n,e){Oe.call(this,n,e)}function Uj(n,e){Oe.call(this,n,e)}function SO(n,e){Oe.call(this,n,e)}function PO(n,e){Oe.call(this,n,e)}function J9(n,e){Oe.call(this,n,e)}function IO(n,e){Oe.call(this,n,e)}function oz(n,e){Oe.call(this,n,e)}function Y9(n,e){Oe.call(this,n,e)}function fz(n,e){Oe.call(this,n,e)}function vre(n,e){return au(n.c,e)}function mre(n,e){return au(e.b,n)}function kre(n,e){return-n.b.Je(e)}function hz(n,e){return au(n.g,e)}function Z9(n,e){Oe.call(this,n,e)}function l2(n,e){Oe.call(this,n,e)}function rkn(n,e){this.a=n,this.b=e}function ckn(n,e){this.a=n,this.b=e}function fn(n,e){this.a=n,this.b=e}function f5(n,e){Oe.call(this,n,e)}function h5(n,e){Oe.call(this,n,e)}function n8(n,e){Oe.call(this,n,e)}function OO(n,e){Oe.call(this,n,e)}function Wj(n,e){Oe.call(this,n,e)}function l5(n,e){Oe.call(this,n,e)}function DO(n,e){Oe.call(this,n,e)}function Xj(n,e){Oe.call(this,n,e)}function yw(n,e){Oe.call(this,n,e)}function e8(n,e){Oe.call(this,n,e)}function a5(n,e){Oe.call(this,n,e)}function d5(n,e){Oe.call(this,n,e)}function t8(n,e){Oe.call(this,n,e)}function Vj(n,e){Oe.call(this,n,e)}function jw(n,e){Oe.call(this,n,e)}function Qj(n,e){Oe.call(this,n,e)}function ukn(n,e){this.a=n,this.b=e}function skn(n,e){this.a=n,this.b=e}function okn(n,e){this.a=n,this.b=e}function fkn(n,e){this.a=n,this.b=e}function hkn(n,e){this.a=n,this.b=e}function lkn(n,e){this.a=n,this.b=e}function Pi(n,e){this.a=n,this.b=e}function Jj(n,e){Oe.call(this,n,e)}function akn(n,e){this.a=n,this.b=e}function dkn(n,e){this.a=n,this.b=e}function bkn(n,e){this.a=n,this.b=e}function wkn(n,e){this.a=n,this.b=e}function gkn(n,e){this.a=n,this.b=e}function pkn(n,e){this.a=n,this.b=e}function vkn(n,e){this.b=n,this.a=e}function mkn(n,e){this.b=n,this.a=e}function kkn(n,e){this.b=n,this.a=e}function ykn(n,e){this.b=n,this.a=e}function jkn(n,e){this.a=n,this.b=e}function Ekn(n,e){this.a=n,this.b=e}function yre(n,e){J9e(n.a,u(e,56))}function Ckn(n,e){f0e(n.a,u(e,11))}function jre(n,e){return h3(),e!=n}function Tkn(){return Q9n(),new Szn}function Mkn(){c$(),this.b=new fi}function Akn(){hM(),this.a=new fi}function Skn(){tX(),lW.call(this)}function a2(n,e){Oe.call(this,n,e)}function Pkn(n,e){this.a=n,this.b=e}function Ikn(n,e){this.a=n,this.b=e}function Yj(n,e){this.a=n,this.b=e}function Okn(n,e){this.a=n,this.b=e}function Dkn(n,e){this.a=n,this.b=e}function $kn(n,e){this.a=n,this.b=e}function Fkn(n,e){this.d=n,this.b=e}function lz(n,e){this.d=n,this.e=e}function xkn(n,e){this.f=n,this.c=e}function i8(n,e){this.b=n,this.c=e}function az(n,e){this.i=n,this.g=e}function Lkn(n,e){this.e=n,this.a=e}function Nkn(n,e){this.a=n,this.b=e}function dz(n,e){n.i=null,nT(n,e)}function Ere(n,e){n&&it($y,n,e)}function Bkn(n,e){return NF(n.a,e)}function Zj(n){return g7(n.c,n.b)}function Vr(n){return n?n.dd():null}function B(n){return n??null}function q0(n){return typeof n===X2}function G0(n){return typeof n===UZ}function mi(n){return typeof n===EL}function el(n,e){return n.Hd().Xb(e)}function nE(n,e){return Rbe(n.Kc(),e)}function gd(n,e){return fc(n,e)==0}function Cre(n,e){return fc(n,e)>=0}function b5(n,e){return fc(n,e)!=0}function Tre(n){return""+(_n(n),n)}function r8(n,e){return n.substr(e)}function Rkn(n){return $u(n),n.d.gc()}function $O(n){return yme(n,n.c),n}function eE(n){return A5(n==null),n}function w5(n,e){return n.a+=""+e,n}function dr(n,e){return n.a+=""+e,n}function g5(n,e){return n.a+=""+e,n}function rc(n,e){return n.a+=""+e,n}function De(n,e){return n.a+=""+e,n}function bz(n,e){return n.a+=""+e,n}function _kn(n,e){Kt(n,e,n.a,n.a.a)}function ua(n,e){Kt(n,e,n.c.b,n.c)}function Mre(n,e,t){VFn(e,Mx(n,t))}function Are(n,e,t){VFn(e,Mx(n,t))}function Sre(n,e){k0e(new ie(n),e)}function Kkn(n,e){n.q.setTime($d(e))}function Hkn(n,e){kW.call(this,n,e)}function qkn(n,e){kW.call(this,n,e)}function FO(n,e){kW.call(this,n,e)}function Gkn(n){Eu(this),Z5(this,n)}function wz(n){return Ln(n,0),null}function Lo(n){return n.a=0,n.b=0,n}function zkn(n,e){return n.a=e.g+1,n}function Pre(n,e){return n.j[e.p]==2}function gz(n){return lhe(u(n,79))}function Ukn(){Ukn=N,jUn=Fe(qF())}function Wkn(){Wkn=N,RWn=Fe(PNn())}function Xkn(){this.b=new s2(sb(12))}function Vkn(){this.b=0,this.a=!1}function Qkn(){this.b=0,this.a=!1}function p5(n){this.a=n,TI.call(this)}function Jkn(n){this.a=n,TI.call(this)}function In(n,e){ii.call(this,n,e)}function xO(n,e){V0.call(this,n,e)}function Ew(n,e){az.call(this,n,e)}function LO(n,e){H3.call(this,n,e)}function Ykn(n,e){c8.call(this,n,e)}function He(n,e){$j(),it(eI,n,e)}function NO(n,e){return Yu(n.a,0,e)}function Zkn(n,e){return n.a.a.a.cc(e)}function nyn(n,e){return B(n)===B(e)}function Ire(n,e){return Zt(n.a,e.a)}function Ore(n,e){return Uc(n.a,e.a)}function Dre(n,e){return xCn(n.a,e.a)}function Pf(n,e){return n.indexOf(e)}function pd(n,e){return n==e?0:n?1:-1}function tE(n){return n<10?"0"+n:""+n}function $re(n){return pe(n),new p5(n)}function eyn(n){return Bc(n.l,n.m,n.h)}function i3(n){return Gt((_n(n),n))}function Fre(n){return Gt((_n(n),n))}function tyn(n,e){return Uc(n.g,e.g)}function $r(n){return typeof n===UZ}function xre(n){return n==b0||n==Hb}function Lre(n){return n==b0||n==Kb}function pz(n){return Fr(n.b.b,n,0)}function iyn(n){this.a=Tkn(),this.b=n}function ryn(n){this.a=Tkn(),this.b=n}function Nre(n,e){return W(n.a,e),e}function Bre(n,e){return W(n.c,e),n}function cyn(n,e){return rs(n.a,e),n}function Rre(n,e){return wo(),e.a+=n}function _re(n,e){return wo(),e.a+=n}function Kre(n,e){return wo(),e.c+=n}function vz(n,e){S3(n,0,n.length,e)}function Sh(){Tq.call(this,new ba)}function uyn(){xE.call(this,0,0,0,0)}function d2(){ys.call(this,0,0,0,0)}function mr(n){this.a=n.a,this.b=n.b}function tl(n){return n==Zs||n==Ao}function r3(n){return n==Yh||n==Jh}function syn(n){return n==xg||n==Fg}function Cw(n){return n!=jf&&n!=ql}function Hu(n){return n.Lg()&&n.Mg()}function oyn(n){return JE(u(n,118))}function iE(n){return rs(new hi,n)}function fyn(n,e){return new H3(e,n)}function Hre(n,e){return new H3(e,n)}function mz(n,e,t){UC(n,e),WC(n,t)}function rE(n,e,t){Rd(n,e),Bd(n,t)}function Jo(n,e,t){Zc(n,e),nu(n,t)}function cE(n,e,t){D3(n,e),F3(n,t)}function uE(n,e,t){$3(n,e),x3(n,t)}function BO(n,e){X3(n,e),L3(n,n.D)}function kz(n){xkn.call(this,n,!0)}function hyn(n,e,t){fU.call(this,n,e,t)}function il(n){jl(),qbe.call(this,n)}function lyn(){Lj.call(this,"Head",1)}function ayn(){Lj.call(this,"Tail",3)}function RO(n){n.c=F(Zn,rn,1,0,5,1)}function dyn(n){n.a=F(Zn,rn,1,8,5,1)}function byn(n){Yc(n.xf(),new t5n(n))}function Tw(n){return n!=null?mt(n):0}function qre(n,e){return ob(e,nf(n))}function Gre(n,e){return ob(e,nf(n))}function zre(n,e){return n[n.length]=e}function Ure(n,e){return n[n.length]=e}function yz(n){return zoe(n.b.Kc(),n.a)}function Wre(n,e){return ZC(BD(n.d),e)}function Xre(n,e){return ZC(BD(n.g),e)}function Vre(n,e){return ZC(BD(n.j),e)}function tr(n,e){ii.call(this,n.b,e)}function vd(n){xE.call(this,n,n,n,n)}function jz(n){return n.b&&uL(n),n.a}function Ez(n){return n.b&&uL(n),n.c}function Qre(n,e){pf||(n.b=e)}function _O(n,e,t){return Mt(n,e,t),t}function wyn(n,e,t){Mt(n.c[e.g],e.g,t)}function Jre(n,e,t){u(n.c,69).Xh(e,t)}function Yre(n,e,t){Jo(t,t.i+n,t.j+e)}function Zre(n,e){me(bc(n.a),PMn(e))}function nce(n,e){me(Ou(n.a),IMn(e))}function v5(n){Je(),cd.call(this,n)}function ece(n){return n==null?0:mt(n)}function gyn(){gyn=N,hK=new f6(cH)}function je(){je=N,new pyn,new X}function pyn(){new we,new we,new we}function Cz(){Cz=N,Hq(),bin=new we}function Yo(){Yo=N,j.Math.log(2)}function ms(){ms=N,Eh=(E7n(),Dne)}function tce(){throw T(new t1(izn))}function ice(){throw T(new t1(izn))}function rce(){throw T(new t1(rzn))}function cce(){throw T(new t1(rzn))}function vyn(n){this.a=n,HU.call(this,n)}function KO(n){this.a=n,Ej.call(this,n)}function HO(n){this.a=n,Ej.call(this,n)}function bi(n,e){mD(n.c,n.c.length,e)}function Kr(n){return n.ae?1:0}function kyn(n,e){return fc(n,e)>0?n:e}function Bc(n,e,t){return{l:n,m:e,h:t}}function uce(n,e){n.a!=null&&Ckn(e,n.a)}function yyn(n){n.a=new aI,n.c=new aI}function sE(n){this.b=n,this.a=new X}function jyn(n){this.b=new san,this.a=n}function Mz(n){vU.call(this),this.a=n}function Eyn(){Lj.call(this,"Range",2)}function Cyn(){kJ(),this.a=new B7(Hrn)}function sce(n,e){pe(e),Iw(n).Jc(new ps)}function oce(n,e){return Zu(),e.n.b+=n}function fce(n,e,t){return it(n.g,t,e)}function hce(n,e,t){return it(n.k,t,e)}function lce(n,e){return it(n.a,e.a,e)}function Mw(n,e,t){return _Q(e,t,n.c)}function Az(n){return new fn(n.c,n.d)}function ace(n){return new fn(n.c,n.d)}function Qr(n){return new fn(n.a,n.b)}function Tyn(n,e){return xEe(n.a,e,null)}function dce(n){Hi(n,null),Ei(n,null)}function Myn(n){s$(n,null),o$(n,null)}function Ayn(){c8.call(this,null,null)}function Syn(){wE.call(this,null,null)}function Sz(n){this.a=n,we.call(this)}function bce(n){this.b=(Pn(),new DI(n))}function oE(n){n.j=F(Ain,q,310,0,0,1)}function wce(n,e,t){n.c.Vc(e,u(t,133))}function gce(n,e,t){n.c.ji(e,u(t,133))}function Pyn(n,e){de(n),n.Gc(u(e,15))}function m5(n,e){return Jje(n.c,n.b,e)}function pce(n,e){return new Jyn(n.Kc(),e)}function qO(n,e){return gwe(n.Kc(),e)!=-1}function Pz(n,e){return n.a.Bc(e)!=null}function fE(n){return n.Ob()?n.Pb():null}function Iyn(n){return Hs(n,0,n.length)}function I(n,e){return n!=null&&WF(n,e)}function vce(n,e){n.q.setHours(e),S6(n,e)}function Oyn(n,e){n.c&&(ZU(e),iMn(e))}function mce(n,e,t){u(n.Kb(t),164).Nb(e)}function kce(n,e,t){return SEe(n,e,t),t}function Dyn(n,e,t){n.a=e^1502,n.b=t^tN}function GO(n,e,t){return n.a[e.g][t.g]}function Zo(n,e){return n.a[e.c.p][e.p]}function yce(n,e){return n.e[e.c.p][e.p]}function jce(n,e){return n.c[e.c.p][e.p]}function Ece(n,e){return n.j[e.p]=D9e(e)}function Cce(n,e){return DX(n.f,e.tg())}function Tce(n,e){return DX(n.b,e.tg())}function Mce(n,e){return n.a0?e*e/n:e*e*100}function Jce(n,e){return n>0?e/(n*n):e*100}function Yce(n,e,t){return W(e,e$n(n,t))}function Zce(n,e,t){DC(),n.Xe(e)&&t.td(n)}function s3(n,e,t){var i;i=n.Zc(e),i.Rb(t)}function U0(n,e,t){return n.a+=e,n.b+=t,n}function nue(n,e,t){return n.a*=e,n.b*=t,n}function o8(n,e,t){return n.a-=e,n.b-=t,n}function Zz(n,e){return n.a=e.a,n.b=e.b,n}function vE(n){return n.a=-n.a,n.b=-n.b,n}function fjn(n){this.c=n,this.a=1,this.b=1}function hjn(n){this.c=n,Zc(n,0),nu(n,0)}function ljn(n){Ct.call(this),V5(this,n)}function ajn(n){yL(),Nmn(this),this.mf(n)}function djn(n,e){Zv(),c8.call(this,n,e)}function nU(n,e){c1(),wE.call(this,n,e)}function bjn(n,e){c1(),wE.call(this,n,e)}function wjn(n,e){c1(),nU.call(this,n,e)}function qu(n,e,t){Wu.call(this,n,e,t,2)}function JO(n,e){ms(),FE.call(this,n,e)}function gjn(n,e){ms(),JO.call(this,n,e)}function eU(n,e){ms(),JO.call(this,n,e)}function pjn(n,e){ms(),eU.call(this,n,e)}function tU(n,e){ms(),FE.call(this,n,e)}function vjn(n,e){ms(),tU.call(this,n,e)}function mjn(n,e){ms(),FE.call(this,n,e)}function eue(n,e){return n.c.Fc(u(e,133))}function iU(n,e,t){return jM(G8(n,e),t)}function tue(n,e,t){return e.Qk(n.e,n.c,t)}function iue(n,e,t){return e.Rk(n.e,n.c,t)}function YO(n,e){return pl(n.e,u(e,49))}function rue(n,e,t){s6(Ou(n.a),e,IMn(t))}function cue(n,e,t){s6(bc(n.a),e,PMn(t))}function rU(n,e){e.$modCount=n.$modCount}function C5(){C5=N,Xm=new kt("root")}function o3(){o3=N,xy=new w9n,new g9n}function kjn(){this.a=new Od,this.b=new Od}function cU(){RIn.call(this),this.Bb|=Yi}function yjn(){Oe.call(this,"GROW_TREE",0)}function uue(n){return n==null?null:CCe(n)}function sue(n){return n==null?null:D5e(n)}function oue(n){return n==null?null:Lr(n)}function fue(n){return n==null?null:Lr(n)}function Ph(n){n.o==null&&u9e(n)}function sn(n){return A5(n==null||q0(n)),n}function Y(n){return A5(n==null||G0(n)),n}function Te(n){return A5(n==null||mi(n)),n}function uU(n){this.q=new j.Date($d(n))}function f8(n,e){this.c=n,Yp.call(this,n,e)}function mE(n,e){this.a=n,f8.call(this,n,e)}function hue(n,e){this.d=n,Ovn(this),this.b=e}function sU(n,e){P$.call(this,n),this.a=e}function oU(n,e){P$.call(this,n),this.a=e}function lue(n){xQ.call(this,0,0),this.f=n}function fU(n,e,t){IC.call(this,n,e,t,null)}function jjn(n,e,t){IC.call(this,n,e,t,null)}function aue(n,e,t){return n.ue(e,t)<=0?t:e}function due(n,e,t){return n.ue(e,t)<=0?e:t}function bue(n,e){return u(xd(n.b,e),149)}function wue(n,e){return u(xd(n.c,e),229)}function ZO(n){return u(un(n.a,n.b),287)}function Ejn(n){return new fn(n.c,n.d+n.a)}function Cjn(n){return Zu(),syn(u(n,197))}function W0(){W0=N,prn=Cn((Vu(),id))}function gue(n,e){e.a?e7e(n,e):zO(n.a,e.b)}function Tjn(n,e){pf||W(n.a,e)}function pue(n,e){return H9(),K3(e.d.i,n)}function vue(n,e){return x2(),new ABn(e,n)}function Of(n,e){return T8(e,ann),n.f=e,n}function hU(n,e,t){return t=ss(n,e,3,t),t}function lU(n,e,t){return t=ss(n,e,6,t),t}function aU(n,e,t){return t=ss(n,e,9,t),t}function h8(n,e,t){++n.j,n.Ki(),A$(n,e,t)}function Mjn(n,e,t){++n.j,n.Hi(e,n.oi(e,t))}function Ajn(n,e,t){var i;i=n.Zc(e),i.Rb(t)}function Sjn(n,e,t){return MZ(n.c,n.b,e,t)}function dU(n,e){return(e&nt)%n.d.length}function ii(n,e){kt.call(this,n),this.a=e}function bU(n,e){xq.call(this,n),this.a=e}function nD(n,e){xq.call(this,n),this.a=e}function Pjn(n,e){this.c=n,Ld.call(this,e)}function Ijn(n,e){this.a=n,Omn.call(this,e)}function l8(n,e){this.a=n,Omn.call(this,e)}function Ojn(n){this.a=(is(n,Pb),new Pc(n))}function Djn(n){this.a=(is(n,Pb),new Pc(n))}function a8(n){return!n.a&&(n.a=new Rr),n.a}function $jn(n){return n>8?0:n+1}function mue(n,e){return qn(),n==e?0:n?1:-1}function wU(n,e,t){return m2(n,u(e,22),t)}function kue(n,e,t){return n.apply(e,t)}function Fjn(n,e,t){return n.a+=Hs(e,0,t),n}function gU(n,e){var t;return t=n.e,n.e=e,t}function yue(n,e){var t;t=n[eN],t.call(n,e)}function jue(n,e){var t;t=n[eN],t.call(n,e)}function X0(n,e){n.a.Vc(n.b,e),++n.b,n.c=-1}function xjn(n){Eu(n.e),n.d.b=n.d,n.d.a=n.d}function d8(n){n.b?d8(n.b):n.f.c.zc(n.e,n.d)}function Eue(n,e,t){ca(),Svn(n,e.Ce(n.a,t))}function Cue(n,e){return nO(p$n(n.a,e,!0))}function Tue(n,e){return nO(v$n(n.a,e,!0))}function bo(n,e){return pj(new Array(e),n)}function eD(n){return String.fromCharCode(n)}function Mue(n){return n==null?null:n.message}function Ljn(){this.a=new X,this.b=new X}function Njn(){this.a=new LH,this.b=new Umn}function Bjn(){this.b=new Li,this.c=new X}function pU(){this.d=new Li,this.e=new Li}function vU(){this.n=new Li,this.o=new Li}function kE(){this.n=new i2,this.i=new d2}function Rjn(){this.a=new v4n,this.b=new cwn}function _jn(){this.a=new X,this.d=new X}function Kjn(){this.b=new fi,this.a=new fi}function Hjn(){this.b=new we,this.a=new we}function qjn(){this.b=new E8n,this.a=new sgn}function Gjn(){kE.call(this),this.a=new Li}function T5(n){Jbe.call(this,n,(FC(),vR))}function mU(n,e,t,i){xE.call(this,n,e,t,i)}function Aue(n,e,t){t!=null&&JC(e,rx(n,t))}function Sue(n,e,t){t!=null&&YC(e,rx(n,t))}function kU(n,e,t){return t=ss(n,e,11,t),t}function ot(n,e){return n.a+=e.a,n.b+=e.b,n}function ki(n,e){return n.a-=e.a,n.b-=e.b,n}function Pue(n,e){return n.n.a=(_n(e),e+10)}function Iue(n,e){return n.n.a=(_n(e),e+10)}function Oue(n,e){return e==n||o4(sM(e),n)}function zjn(n,e){return it(n.a,e,"")==null}function Due(n,e){return H9(),!K3(e.d.i,n)}function $ue(n,e){tl(n.f)?Qme(n,e):Fve(n,e)}function Fue(n,e){var t;return t=e.Hh(n.a),t}function V0(n,e){vr.call(this,rm+n+Ra+e)}function g2(n,e,t,i){V.call(this,n,e,t,i)}function yU(n,e,t,i){V.call(this,n,e,t,i)}function Ujn(n,e,t,i){yU.call(this,n,e,t,i)}function Wjn(n,e,t,i){zE.call(this,n,e,t,i)}function tD(n,e,t,i){zE.call(this,n,e,t,i)}function jU(n,e,t,i){zE.call(this,n,e,t,i)}function Xjn(n,e,t,i){tD.call(this,n,e,t,i)}function EU(n,e,t,i){tD.call(this,n,e,t,i)}function Fn(n,e,t,i){jU.call(this,n,e,t,i)}function Vjn(n,e,t,i){EU.call(this,n,e,t,i)}function Qjn(n,e,t,i){yW.call(this,n,e,t,i)}function Jjn(n,e,t){this.a=n,Vz.call(this,e,t)}function Yjn(n,e,t){this.c=e,this.b=t,this.a=n}function xue(n,e,t){return n.d=u(e.Kb(t),164)}function CU(n,e){return n.Aj().Nh().Kh(n,e)}function TU(n,e){return n.Aj().Nh().Ih(n,e)}function Zjn(n,e){return _n(n),B(n)===B(e)}function An(n,e){return _n(n),B(n)===B(e)}function iD(n,e){return nO(p$n(n.a,e,!1))}function rD(n,e){return nO(v$n(n.a,e,!1))}function Lue(n,e){return n.b.sd(new D7n(n,e))}function Nue(n,e){return n.b.sd(new $7n(n,e))}function nEn(n,e){return n.b.sd(new F7n(n,e))}function MU(n,e,t){return n.lastIndexOf(e,t)}function Bue(n,e,t){return Zt(n[e.b],n[t.b])}function Rue(n,e){return H(e,(nn(),Jk),n)}function _ue(n,e){return Uc(e.a.d.p,n.a.d.p)}function Kue(n,e){return Uc(n.a.d.p,e.a.d.p)}function Hue(n,e){return Zt(n.c-n.s,e.c-e.s)}function eEn(n){return n.c?Fr(n.c.a,n,0):-1}function que(n){return n<100?null:new Q1(n)}function p2(n){return n==td||n==jh||n==Ac}function tEn(n,e){return I(e,15)&&oBn(n.c,e)}function Gue(n,e){pf||e&&(n.d=e)}function cD(n,e){var t;return t=e,!!VV(n,t)}function AU(n,e){this.c=n,DD.call(this,n,e)}function iEn(n){this.c=n,FO.call(this,IM,0)}function rEn(n,e){Voe.call(this,n,n.length,e)}function zue(n,e,t){return u(n.c,69).lk(e,t)}function yE(n,e,t){return u(n.c,69).mk(e,t)}function Uue(n,e,t){return tue(n,u(e,332),t)}function SU(n,e,t){return iue(n,u(e,332),t)}function Wue(n,e,t){return txn(n,u(e,332),t)}function cEn(n,e,t){return zve(n,u(e,332),t)}function M5(n,e){return e==null?null:ab(n.b,e)}function PU(n){return G0(n)?(_n(n),n):n.ke()}function jE(n){return!isNaN(n)&&!isFinite(n)}function uEn(n){Df(),this.a=(Pn(),new Wp(n))}function b8(n){h3(),this.d=n,this.a=new gw}function ks(n,e,t){this.a=n,this.b=e,this.c=t}function sEn(n,e,t){this.a=n,this.b=e,this.c=t}function oEn(n,e,t){this.d=n,this.b=t,this.a=e}function uD(n){yyn(this),_s(this),Vi(this,n)}function du(n){RO(this),GU(this.c,0,n.Pc())}function fEn(n){Uu(n.a),uPn(n.c,n.b),n.b=null}function hEn(n){this.a=n,Zf(),eu(Date.now())}function lEn(){lEn=N,Xin=new ou,XA=new ou}function sD(){sD=N,Rin=new iln,Pzn=new rln}function aEn(){aEn=N,Nne=F(Zn,rn,1,0,5,1)}function dEn(){dEn=N,eee=F(Zn,rn,1,0,5,1)}function IU(){IU=N,tee=F(Zn,rn,1,0,5,1)}function Df(){Df=N,new Bq((Pn(),Pn(),cr))}function Xue(n){return FC(),$e((pPn(),Dzn),n)}function Vue(n){return hf(),$e((LSn(),Bzn),n)}function Que(n){return $T(),$e((qAn(),Gzn),n)}function Jue(n){return RC(),$e((GAn(),zzn),n)}function Yue(n){return dM(),$e((IOn(),Uzn),n)}function Zue(n){return _o(),$e(($Sn(),Vzn),n)}function nse(n){return Cu(),$e((FSn(),Jzn),n)}function ese(n){return Jc(),$e((xSn(),Zzn),n)}function tse(n){return SM(),$e((Ukn(),jUn),n)}function ise(n){return Hd(),$e((mPn(),CUn),n)}function rse(n){return K2(),$e((kPn(),MUn),n)}function cse(n){return d6(),$e((yPn(),PUn),n)}function use(n){return Aj(),$e((yAn(),IUn),n)}function sse(n){return _C(),$e((zAn(),WUn),n)}function ose(n){return W5(),$e((NSn(),bWn),n)}function fse(n){return Qi(),$e((JPn(),vWn),n)}function hse(n){return G3(),$e((vPn(),EWn),n)}function lse(n){return qd(),$e((BSn(),PWn),n)}function OU(n,e){if(!n)throw T(new Hn(e))}function ase(n){return Qn(),$e((vIn(),$Wn),n)}function DU(n){xE.call(this,n.d,n.c,n.a,n.b)}function oD(n){xE.call(this,n.d,n.c,n.a,n.b)}function $U(n,e,t){this.b=n,this.c=e,this.a=t}function EE(n,e,t){this.b=n,this.a=e,this.c=t}function bEn(n,e,t){this.a=n,this.b=e,this.c=t}function FU(n,e,t){this.a=n,this.b=e,this.c=t}function wEn(n,e,t){this.a=n,this.b=e,this.c=t}function xU(n,e,t){this.a=n,this.b=e,this.c=t}function gEn(n,e,t){this.b=n,this.a=e,this.c=t}function CE(n,e,t){this.e=e,this.b=n,this.d=t}function dse(n,e,t){return ca(),n.a.Od(e,t),e}function fD(n){var e;return e=new Dln,e.e=n,e}function LU(n){var e;return e=new Zmn,e.b=n,e}function w8(){w8=N,sS=new Fdn,oS=new xdn}function wo(){wo=N,WWn=new pbn,XWn=new vbn}function bse(n){return aT(),$e((EPn(),HWn),n)}function wse(n){return ff(),$e((TPn(),JWn),n)}function gse(n){return lM(),$e((mOn(),cXn),n)}function pse(n){return q2(),$e((yIn(),uXn),n)}function vse(n){return OC(),$e((JAn(),sXn),n)}function mse(n){return F2(),$e((RSn(),oXn),n)}function kse(n){return Vw(),$e((UPn(),ZWn),n)}function yse(n){return Kd(),$e((HSn(),rXn),n)}function jse(n){return VC(),$e((_Sn(),fXn),n)}function Ese(n){return Pa(),$e((GPn(),hXn),n)}function Cse(n){return V8(),$e((WAn(),lXn),n)}function Tse(n){return ya(),$e((KSn(),dXn),n)}function Mse(n){return eM(),$e((TIn(),bXn),n)}function Ase(n){return K8(),$e((XAn(),wXn),n)}function Sse(n){return A7(),$e((EIn(),gXn),n)}function Pse(n){return h4(),$e((jIn(),pXn),n)}function Ise(n){return or(),$e((zOn(),vXn),n)}function Ose(n){return q3(),$e((GSn(),mXn),n)}function Dse(n){return Nh(),$e((qSn(),yXn),n)}function $se(n){return kC(),$e((YAn(),jXn),n)}function Fse(n){return Ss(),$e((WPn(),EXn),n)}function xse(n){return JT(),$e((CIn(),BQn),n)}function Lse(n){return i6(),$e((zSn(),RQn),n)}function Nse(n){return wb(),$e((MPn(),_Qn),n)}function Bse(n){return ur(),$e((XSn(),UQn),n)}function Rse(n){return Zw(),$e((vOn(),HQn),n)}function _se(n){return Rh(),$e((WSn(),qQn),n)}function Kse(n){return z8(),$e((QAn(),GQn),n)}function Hse(n){return oT(),$e((USn(),WQn),n)}function qse(n){return b6(),$e((zPn(),KQn),n)}function Gse(n){return x8(),$e((VAn(),XQn),n)}function zse(n){return Q3(),$e((QSn(),VQn),n)}function Use(n){return uT(),$e((JSn(),QQn),n)}function Wse(n){return dT(),$e((VSn(),JQn),n)}function Xse(n){return _d(),$e((YSn(),hJn),n)}function Vse(n){return z5(),$e((nSn(),wJn),n)}function Qse(n){return Ff(),$e((eSn(),jJn),n)}function Jse(n){return ef(),$e((tSn(),CJn),n)}function Yse(n){return No(),$e((ZAn(),RJn),n)}function Zse(n){return Id(),$e((iSn(),UJn),n)}function noe(n){return c4(),$e((jPn(),WJn),n)}function eoe(n){return k6(),$e((MIn(),VJn),n)}function toe(n){return aC(),$e((uSn(),fYn),n)}function ioe(n){return iT(),$e((cSn(),wYn),n)}function roe(n){return gC(),$e((rSn(),hYn),n)}function coe(n){return CT(),$e((ZSn(),pYn),n)}function uoe(n){return $C(),$e((sSn(),vYn),n)}function soe(n){return f7(),$e((nPn(),mYn),n)}function ooe(n){return qT(),$e((CPn(),FYn),n)}function foe(n){return sT(),$e((tPn(),xYn),n)}function hoe(n){return ET(),$e((ePn(),LYn),n)}function loe(n){return g4(),$e((QPn(),tZn),n)}function aoe(n){return w7(),$e((iPn(),iZn),n)}function doe(n){return Pj(),$e((mAn(),rZn),n)}function boe(n){return Ij(),$e((vAn(),uZn),n)}function woe(n){return L8(),$e((fSn(),sZn),n)}function goe(n){return P7(),$e((XPn(),oZn),n)}function poe(n){return Jv(),$e((kAn(),CZn),n)}function voe(n){return c7(),$e((oSn(),TZn),n)}function moe(n){return Ho(),$e((VPn(),OZn),n)}function koe(n){return y1(),$e((kOn(),$Zn),n)}function yoe(n){return oh(),$e((kIn(),FZn),n)}function joe(n){return vb(),$e((mIn(),_Zn),n)}function Eoe(n){return rr(),$e((Wkn(),RWn),n)}function Coe(n){return B3(),$e((UAn(),BWn),n)}function Toe(n){return sr(),$e((YPn(),ene),n)}function Moe(n){return sf(),$e((cPn(),tne),n)}function Aoe(n){return Hh(),$e((PPn(),ine),n)}function Soe(n){return ZT(),$e((SIn(),rne),n)}function Poe(n){return _h(),$e((rPn(),une),n)}function Ioe(n){return cs(),$e((SPn(),one),n)}function Ooe(n){return jb(),$e((POn(),fne),n)}function Doe(n){return qw(),$e((ZPn(),hne),n)}function $oe(n){return Ti(),$e((bIn(),lne),n)}function Foe(n){return Tu(),$e((AIn(),ane),n)}function xoe(n){return Vu(),$e((OPn(),vne),n)}function Loe(n){return xu(),$e((UOn(),mne),n)}function Noe(n){return J(),$e((nIn(),dne),n)}function Boe(n){return AT(),$e((IPn(),kne),n)}function Roe(n){return Xu(),$e((APn(),Ene),n)}function _oe(n){return d4(),$e((yOn(),Lne),n)}function Koe(n,e){return _n(n),n+(_n(e),e)}function Hoe(n,e){return Zf(),me(R(n.a),e)}function qoe(n,e){return Zf(),me(R(n.a),e)}function hD(n,e){this.c=n,this.a=e,this.b=e-n}function pEn(n,e,t){this.a=n,this.b=e,this.c=t}function NU(n,e,t){this.a=n,this.b=e,this.c=t}function BU(n,e,t){this.a=n,this.b=e,this.c=t}function vEn(n,e,t){this.a=n,this.b=e,this.c=t}function mEn(n,e,t){this.a=n,this.b=e,this.c=t}function s1(n,e,t){this.e=n,this.a=e,this.c=t}function kEn(n,e,t){ms(),QW.call(this,n,e,t)}function lD(n,e,t){ms(),FW.call(this,n,e,t)}function RU(n,e,t){ms(),FW.call(this,n,e,t)}function _U(n,e,t){ms(),FW.call(this,n,e,t)}function yEn(n,e,t){ms(),lD.call(this,n,e,t)}function KU(n,e,t){ms(),lD.call(this,n,e,t)}function jEn(n,e,t){ms(),KU.call(this,n,e,t)}function EEn(n,e,t){ms(),RU.call(this,n,e,t)}function CEn(n,e,t){ms(),_U.call(this,n,e,t)}function g8(n,e){return pe(n),pe(e),new z8n(n,e)}function v2(n,e){return pe(n),pe(e),new NEn(n,e)}function Goe(n,e){return pe(n),pe(e),new BEn(n,e)}function zoe(n,e){return pe(n),pe(e),new W8n(n,e)}function u(n,e){return A5(n==null||WF(n,e)),n}function f3(n){var e;return e=new X,_$(e,n),e}function Uoe(n){var e;return e=new fi,_$(e,n),e}function TEn(n){var e;return e=new Wq,nF(e,n),e}function p8(n){var e;return e=new Ct,nF(e,n),e}function Woe(n){return!n.e&&(n.e=new X),n.e}function Xoe(n){return!n.c&&(n.c=new Bp),n.c}function W(n,e){return n.c[n.c.length]=e,!0}function MEn(n,e){this.c=n,this.b=e,this.a=!1}function HU(n){this.d=n,Ovn(this),this.b=_fe(n.d)}function AEn(){this.a=";,;",this.b="",this.c=""}function Voe(n,e,t){SCn.call(this,e,t),this.a=n}function SEn(n,e,t){this.b=n,Hkn.call(this,e,t)}function qU(n,e,t){this.c=n,Nj.call(this,e,t)}function GU(n,e,t){aY(t,0,n,e,t.length,!1)}function eh(n,e,t,i,r){n.b=e,n.c=t,n.d=i,n.a=r}function Qoe(n,e){e&&(n.b=e,n.a=(fl(e),e.a))}function zU(n,e,t,i,r){n.d=e,n.c=t,n.a=i,n.b=r}function UU(n){var e,t;e=n.b,t=n.c,n.b=t,n.c=e}function WU(n){var e,t;t=n.d,e=n.a,n.d=e,n.a=t}function XU(n){return bl(the($r(n)?Ks(n):n))}function Joe(n,e){return Uc(GEn(n.d),GEn(e.d))}function Yoe(n,e){return e==(J(),Gn)?n.c:n.d}function h3(){h3=N,don=(J(),Gn),dP=Vn}function PEn(){this.b=K(Y(cn((Go(),xR))))}function IEn(n){return ca(),F(Zn,rn,1,n,5,1)}function Zoe(n){return new fn(n.c+n.b,n.d+n.a)}function nfe(n,e){return Sj(),Uc(n.d.p,e.d.p)}function aD(n){return ne(n.b!=0),Ts(n,n.a.a)}function efe(n){return ne(n.b!=0),Ts(n,n.c.b)}function VU(n,e){if(!n)throw T(new R9n(e))}function TE(n,e){if(!n)throw T(new Hn(e))}function QU(n,e,t){t3.call(this,n,e),this.b=t}function v8(n,e,t){lz.call(this,n,e),this.c=t}function OEn(n,e,t){oIn.call(this,e,t),this.d=n}function JU(n){IU(),Yy.call(this),this.th(n)}function DEn(n,e,t){this.a=n,Ew.call(this,e,t)}function $En(n,e,t){this.a=n,Ew.call(this,e,t)}function ME(n,e,t){lz.call(this,n,e),this.c=t}function FEn(){T3(),khe.call(this,(Z1(),uo))}function xEn(n){return n!=null&&!$F(n,a9,d9)}function tfe(n,e){return(GDn(n)<<4|GDn(e))&Ut}function ife(n,e){return QE(),ex(n,e),new oTn(n,e)}function sa(n,e){var t;n.n&&(t=e,W(n.f,t))}function l3(n,e,t){var i;i=new Z0(t),Ro(n,e,i)}function rfe(n,e){var t;return t=n.c,wV(n,e),t}function YU(n,e){return e<0?n.g=-1:n.g=e,n}function AE(n,e){return H0e(n),n.a*=e,n.b*=e,n}function LEn(n,e,t,i,r){n.c=e,n.d=t,n.b=i,n.a=r}function Ke(n,e){return Kt(n,e,n.c.b,n.c),!0}function ZU(n){n.a.b=n.b,n.b.a=n.a,n.a=n.b=null}function dD(n){this.b=n,this.a=Ed(this.b.a).Ed()}function NEn(n,e){this.b=n,this.a=e,TI.call(this)}function BEn(n,e){this.a=n,this.b=e,TI.call(this)}function REn(n,e){SCn.call(this,e,1040),this.a=n}function m8(n){return n==0||isNaN(n)?n:n<0?-1:1}function cfe(n){return C2(),fh(n)==At(ml(n))}function ufe(n){return C2(),ml(n)==At(fh(n))}function jd(n,e){return v6(n,new t3(e.a,e.b))}function sfe(n){return!Xi(n)&&n.c.i.c==n.d.i.c}function SE(n){var e;return e=n.n,n.a.b+e.d+e.a}function _En(n){var e;return e=n.n,n.e.b+e.d+e.a}function nW(n){var e;return e=n.n,n.e.a+e.b+e.c}function KEn(n){return Je(),new th(0,n)}function ofe(n){return n.a?n.a:WD(n)}function A5(n){if(!n)throw T(new Up(null))}function HEn(){HEn=N,mH=(Pn(),new OI(XB))}function PE(){PE=N,new JQ((HI(),uR),(qI(),cR))}function qEn(){qEn=N,jin=F(Wi,q,19,256,0,1)}function bD(n,e,t,i){MQ.call(this,n,e,t,i,0,0)}function ffe(n,e,t){return it(n.b,u(t.b,17),e)}function hfe(n,e,t){return it(n.b,u(t.b,17),e)}function lfe(n,e){return W(n,new fn(e.a,e.b))}function afe(n,e){return n.c=e)throw T(new qq)}function Xfe(n,e,t){return Mt(e,0,rW(e[0],t[0])),e}function Vfe(n,e,t){e.Ye(t,K(Y(te(n.b,t)))*n.a)}function ACn(n,e,t){return eg(),R3(n,e)&&R3(n,t)}function D5(n){return Tu(),!n.Hc(n1)&&!n.Hc(Gl)}function qE(n){return new fn(n.c+n.b/2,n.d+n.a/2)}function MD(n,e){return e.kh()?pl(n.b,u(e,49)):e}function kW(n,e){this.e=n,this.d=e&64?e|Nf:e}function SCn(n,e){this.c=0,this.d=n,this.b=e|64|Nf}function GE(n){this.b=new Pc(11),this.a=(Ow(),n)}function AD(n){this.b=null,this.a=(Ow(),n||Lin)}function PCn(n){this.a=Y$n(n.a),this.b=new du(n.b)}function ICn(n){this.b=n,b2.call(this,n),$yn(this)}function OCn(n){this.b=n,u8.call(this,n),Fyn(this)}function Y0(n,e,t){this.a=n,g2.call(this,e,t,5,6)}function yW(n,e,t,i){this.b=n,Jt.call(this,e,t,i)}function wi(n,e,t,i,r){D$.call(this,n,e,t,i,r,-1)}function $5(n,e,t,i,r){R8.call(this,n,e,t,i,r,-1)}function V(n,e,t,i){Jt.call(this,n,e,t),this.b=i}function zE(n,e,t,i){v8.call(this,n,e,t),this.b=i}function DCn(n){xkn.call(this,n,!1),this.a=!1}function $Cn(n,e){this.b=n,bvn.call(this,n.b),this.a=e}function FCn(n,e){nb(),Yie.call(this,n,mT(new Ku(e)))}function UE(n,e){return Je(),new xW(n,e,0)}function SD(n,e){return Je(),new xW(6,n,e)}function Qfe(n,e){return An(n.substr(0,e.length),e)}function zu(n,e){return mi(e)?QD(n,e):!!Ar(n.f,e)}function Oi(n,e){for(_n(e);n.Ob();)e.td(n.Pb())}function Pw(n,e,t){jl(),this.e=n,this.d=e,this.a=t}function o1(n,e,t,i){var r;r=n.i,r.i=e,r.a=t,r.b=i}function jW(n){var e;for(e=n;e.f;)e=e.f;return e}function y2(n){var e;return e=t6(n),ne(e!=null),e}function Jfe(n){var e;return e=Lge(n),ne(e!=null),e}function d3(n,e){var t;return t=n.a.gc(),$X(e,t),t-e}function EW(n,e){var t;for(t=0;t0?j.Math.log(n/e):-100}function xCn(n,e){return fc(n,e)<0?-1:fc(n,e)>0?1:0}function SW(n,e,t){return MRn(n,u(e,46),u(t,167))}function LCn(n,e){return u(vW(Ed(n.a)).Xb(e),42).cd()}function uhe(n,e){return P0e(e,n.length),new REn(n,e)}function DD(n,e){this.d=n,ie.call(this,n),this.e=e}function Cd(n){this.d=(_n(n),n),this.a=0,this.c=IM}function PW(n,e){cd.call(this,1),this.a=n,this.b=e}function NCn(n,e){return n.c?NCn(n.c,e):W(n.b,e),n}function she(n,e,t){var i;return i=ub(n,e),g$(n,e,t),i}function IW(n,e){var t;return t=n.slice(0,e),WX(t,n)}function BCn(n,e,t){var i;for(i=0;i=n.g}function KD(n,e,t){var i;return i=Y$(n,e,t),rZ(n,i)}function j2(n,e){var t;t=n.a.length,ub(n,t),g$(n,t,e)}function ZCn(n,e){var t;t=console[n],t.call(console,e)}function nTn(n,e){var t;++n.j,t=n.Vi(),n.Ii(n.oi(t,e))}function mhe(n,e,t){u(e.b,65),Yc(e.a,new NU(n,t,e))}function FW(n,e,t){uj.call(this,e),this.a=n,this.b=t}function xW(n,e,t){cd.call(this,n),this.a=e,this.b=t}function LW(n,e,t){this.a=n,xq.call(this,e),this.b=t}function eTn(n,e,t){this.a=n,aX.call(this,8,e,null,t)}function khe(n){this.a=(_n(xe),xe),this.b=n,new tG}function tTn(n){this.c=n,this.b=this.c.a,this.a=this.c.e}function NW(n){this.c=n,this.b=n.a.d.a,rU(n.a.e,this)}function Uu(n){z0(n.c!=-1),n.d.$c(n.c),n.b=n.c,n.c=-1}function L5(n){return j.Math.sqrt(n.a*n.a+n.b*n.b)}function Md(n,e){return a3(e,n.a.c.length),un(n.a,e)}function $f(n,e){return B(n)===B(e)||n!=null&&tt(n,e)}function yhe(n){return 0>=n?new PG:sbe(n-1)}function jhe(n){return aw?QD(aw,n):!1}function iTn(n){return n?n.dc():!n.Kc().Ob()}function Gi(n){return!n.a&&n.c?n.c.b:n.a}function Ehe(n){return!n.a&&(n.a=new Jt(zl,n,4)),n.a}function Ad(n){return!n.d&&(n.d=new Jt(ar,n,1)),n.d}function _n(n){if(n==null)throw T(new Nv);return n}function N5(n){n.c?n.c.He():(n.d=!0,S8e(n))}function fl(n){n.c?fl(n.c):(Ta(n),n.d=!0)}function rTn(n){KW(n.a),n.b=F(Zn,rn,1,n.b.length,5,1)}function Che(n,e){return Uc(e.j.c.length,n.j.c.length)}function The(n,e){n.c<0||n.b.b=0?n.Bh(t):bY(n,e)}function cTn(n){var e,t;return e=n.c.i.c,t=n.d.i.c,e==t}function Ahe(n){if(n.p!=4)throw T(new fu);return n.e}function She(n){if(n.p!=3)throw T(new fu);return n.e}function Phe(n){if(n.p!=6)throw T(new fu);return n.f}function Ihe(n){if(n.p!=6)throw T(new fu);return n.k}function Ohe(n){if(n.p!=3)throw T(new fu);return n.j}function Dhe(n){if(n.p!=4)throw T(new fu);return n.j}function BW(n){return!n.b&&(n.b=new sj(new KI)),n.b}function Sd(n){return n.c==-2&&Pte(n,Qve(n.g,n.b)),n.c}function g3(n,e){var t;return t=LD("",n),t.n=e,t.i=1,t}function $he(n,e){yD(u(e.b,65),n),Yc(e.a,new Aq(n))}function Fhe(n,e){me((!n.a&&(n.a=new l8(n,n)),n.a),e)}function uTn(n,e){this.b=n,DD.call(this,n,e),$yn(this)}function sTn(n,e){this.b=n,AU.call(this,n,e),Fyn(this)}function RW(n,e,t,i){bd.call(this,n,e),this.d=t,this.a=i}function VE(n,e,t,i){bd.call(this,n,t),this.a=e,this.f=i}function oTn(n,e){bce.call(this,obe(pe(n),pe(e))),this.a=e}function fTn(){UJ.call(this,Ka,(a8n(),hee)),tEe(this)}function hTn(){UJ.call(this,Vs,(Qp(),g1n)),lje(this)}function lTn(){Oe.call(this,"DELAUNAY_TRIANGULATION",0)}function xhe(n){return String.fromCharCode.apply(null,n)}function it(n,e,t){return mi(e)?kr(n,e,t):_c(n.f,e,t)}function _W(n){return Pn(),n?n.ve():(Ow(),Ow(),Bin)}function Lhe(n,e,t){return L2(),t.pg(n,u(e.cd(),146))}function aTn(n,e){return PE(),new JQ(new Wyn(n),new Uyn(e))}function Nhe(n){return is(n,AL),KC(qi(qi(5,n),n/10|0))}function QE(){QE=N,fzn=new GI(A(M(Ha,1),OM,42,0,[]))}function dTn(n){return!n.d&&(n.d=new _p(n.c.Cc())),n.d}function p3(n){return!n.a&&(n.a=new W9n(n.c.vc())),n.a}function bTn(n){return!n.b&&(n.b=new Wp(n.c.ec())),n.b}function rh(n,e){for(;e-- >0;)n=n<<1|(n<0?1:0);return n}function pc(n,e){return B(n)===B(e)||n!=null&&tt(n,e)}function Bhe(n,e){return qn(),u(e.b,19).ai&&++i,i}function Oh(n){var e,t;return t=(e=new ud,e),O3(t,n),t}function UD(n){var e,t;return t=(e=new ud,e),VJ(t,n),t}function Zhe(n,e){var t;return t=te(n.f,e),MV(e,t),null}function WD(n){var e;return e=hbe(n),e||null}function CTn(n){return!n.b&&(n.b=new V(di,n,12,3)),n.b}function n1e(n){return n!=null&&_9(tI,n.toLowerCase())}function e1e(n,e){return Zt(bu(n)*Gu(n),bu(e)*Gu(e))}function t1e(n,e){return Zt(bu(n)*Gu(n),bu(e)*Gu(e))}function i1e(n,e){return Zt(n.d.c+n.d.b/2,e.d.c+e.d.b/2)}function r1e(n,e){return Zt(n.g.c+n.g.b/2,e.g.c+e.g.b/2)}function TTn(n,e,t){t.a?nu(n,e.b-n.f/2):Zc(n,e.a-n.g/2)}function MTn(n,e,t,i){this.a=n,this.b=e,this.c=t,this.d=i}function ATn(n,e,t,i){this.a=n,this.b=e,this.c=t,this.d=i}function ha(n,e,t,i){this.e=n,this.a=e,this.c=t,this.d=i}function STn(n,e,t,i){this.a=n,this.c=e,this.d=t,this.b=i}function PTn(n,e,t,i){ms(),ySn.call(this,e,t,i),this.a=n}function ITn(n,e,t,i){ms(),ySn.call(this,e,t,i),this.a=n}function OTn(n,e){this.a=n,hue.call(this,n,u(n.d,15).Zc(e))}function XD(n){this.f=n,this.c=this.f.e,n.f>0&&qFn(this)}function DTn(n,e,t,i){this.b=n,this.c=i,FO.call(this,e,t)}function $Tn(n){return ne(n.b=0&&An(n.substr(t,e.length),e)}function hl(n,e,t,i,r,c,o){return new v$(n.e,e,t,i,r,c,o)}function QTn(n,e,t,i,r,c){this.a=n,z$.call(this,e,t,i,r,c)}function JTn(n,e,t,i,r,c){this.a=n,z$.call(this,e,t,i,r,c)}function YTn(n,e){this.g=n,this.d=A(M(vh,1),E1,10,0,[e])}function f1(n,e){this.e=n,this.a=Zn,this.b=yBn(e),this.c=e}function ZTn(n,e){kE.call(this),eV(this),this.a=n,this.c=e}function M8(n,e,t,i){Mt(n.c[e.g],t.g,i),Mt(n.c[t.g],e.g,i)}function ZD(n,e,t,i){Mt(n.c[e.g],e.g,t),Mt(n.b[e.g],e.g,i)}function M1e(){return x8(),A(M(ron,1),z,376,0,[uK,iy])}function A1e(){return K8(),A(M(Qcn,1),z,479,0,[Vcn,xS])}function S1e(){return V8(),A(M(Wcn,1),z,419,0,[$S,Ucn])}function P1e(){return OC(),A(M(Rcn,1),z,422,0,[Bcn,s_])}function I1e(){return kC(),A(M(fun,1),z,420,0,[j_,oun])}function O1e(){return z8(),A(M(non,1),z,421,0,[iK,rK])}function D1e(){return z5(),A(M(bJn,1),z,523,0,[Hm,Km])}function $1e(){return No(),A(M(BJn,1),z,520,0,[tw,Bl])}function F1e(){return Ff(),A(M(yJn,1),z,516,0,[M0,I1])}function x1e(){return ef(),A(M(EJn,1),z,515,0,[Ja,kf])}function L1e(){return Id(),A(M(zJn,1),z,455,0,[Rl,Lg])}function N1e(){return gC(),A(M(Son,1),z,425,0,[yK,Aon])}function B1e(){return aC(),A(M(Mon,1),z,480,0,[kK,Ton])}function R1e(){return iT(),A(M(Pon,1),z,495,0,[EP,mv])}function _1e(){return $C(),A(M(Oon,1),z,426,0,[Ion,TK])}function K1e(){return c7(),A(M(Ffn,1),z,429,0,[DP,$fn])}function H1e(){return L8(),A(M(afn,1),z,430,0,[FK,IP])}function q1e(){return $T(),A(M(Jin,1),z,428,0,[yR,Qin])}function G1e(){return RC(),A(M(Zin,1),z,427,0,[Yin,jR])}function z1e(){return _C(),A(M(Arn,1),z,424,0,[$R,tS])}function U1e(){return B3(),A(M(NWn,1),z,511,0,[_k,UR])}function sC(n,e,t,i){return t>=0?n.jh(e,t,i):n.Sg(null,t,i)}function n$(n){return n.b.b==0?n.a.$e():aD(n.b)}function W1e(n){if(n.p!=5)throw T(new fu);return ge(n.f)}function X1e(n){if(n.p!=5)throw T(new fu);return ge(n.k)}function VW(n){return B(n.a)===B((eF(),gH))&&Vje(n),n.a}function nMn(n){this.a=u(pe(n),271),this.b=(Pn(),new Hz(n))}function eMn(n,e){bte(this,new fn(n.a,n.b)),wte(this,p8(e))}function Id(){Id=N,Rl=new iz(Y2,0),Lg=new iz(Z2,1)}function Ff(){Ff=N,M0=new ez(Z2,0),I1=new ez(Y2,1)}function Od(){rie.call(this,new s2(sb(12))),Bz(!0),this.a=2}function e$(n,e,t){Je(),cd.call(this,n),this.b=e,this.a=t}function QW(n,e,t){ms(),uj.call(this,e),this.a=n,this.b=t}function tMn(n){kE.call(this),eV(this),this.a=n,this.c=!0}function iMn(n){var e;e=n.c.d.b,n.b=e,n.a=n.c.d,e.a=n.c.d.b=n}function oC(n){var e;ebe(n.a),byn(n.a),e=new tj(n.a),TQ(e)}function V1e(n,e){aBn(n,!0),Yc(n.e.wf(),new $U(n,!0,e))}function fC(n,e){return LAn(e),Y0e(n,F(be,Le,25,e,15,1),e)}function Q1e(n,e){return C2(),n==At(fh(e))||n==At(ml(e))}function vc(n,e){return e==null?Vr(Ar(n.f,null)):n5(n.g,e)}function J1e(n){return n.b==0?null:(ne(n.b!=0),Ts(n,n.a.a))}function Gt(n){return Math.max(Math.min(n,nt),-2147483648)|0}function Y1e(n,e){var t=lR[n.charCodeAt(0)];return t??n}function hC(n,e){return tC(n,"set1"),tC(e,"set2"),new Z8n(n,e)}function Z1e(n,e){var t;return t=W0e(n.f,e),ot(vE(t),n.f.d)}function R5(n,e){var t,i;return t=e,i=new dI,n_n(n,t,i),i.d}function t$(n,e,t,i){var r;r=new Gjn,e.a[t.g]=r,m2(n.b,i,r)}function JW(n,e,t){var i;i=n.Yg(e),i>=0?n.sh(i,t):_Y(n,e,t)}function Dw(n,e,t){dC(),n&&it(dH,n,e),n&&it($y,n,t)}function rMn(n,e,t){this.i=new X,this.b=n,this.g=e,this.a=t}function lC(n,e,t){this.c=new X,this.e=n,this.f=e,this.b=t}function YW(n,e,t){this.a=new X,this.e=n,this.f=e,this.c=t}function cMn(n,e){oE(this),this.f=e,this.g=n,eC(this),this._d()}function A8(n,e){var t;t=n.q.getHours(),n.q.setDate(e),S6(n,t)}function uMn(n,e){var t;for(pe(e),t=n.a;t;t=t.c)e.Od(t.g,t.i)}function sMn(n){var e;return e=new kj(sb(n.length)),qV(e,n),e}function nle(n){function e(){}return e.prototype=n||{},new e}function ele(n,e){return LOn(n,e)?(FIn(n),!0):!1}function Dh(n,e){if(e==null)throw T(new Nv);return Y2e(n,e)}function tle(n){if(n.qe())return null;var e=n.n;return RA[e]}function S8(n){return n.Db>>16!=3?null:u(n.Cb,33)}function nf(n){return n.Db>>16!=9?null:u(n.Cb,33)}function oMn(n){return n.Db>>16!=6?null:u(n.Cb,79)}function fMn(n){return n.Db>>16!=7?null:u(n.Cb,235)}function hMn(n){return n.Db>>16!=7?null:u(n.Cb,160)}function At(n){return n.Db>>16!=11?null:u(n.Cb,33)}function lMn(n,e){var t;return t=n.Yg(e),t>=0?n.lh(t):Ox(n,e)}function aMn(n,e){var t;return t=new iW(e),dxn(t,n),new du(t)}function ZW(n){var e;return e=n.d,e=n.si(n.f),me(n,e),e.Ob()}function dMn(n,e){return n.b+=e.b,n.c+=e.c,n.d+=e.d,n.a+=e.a,n}function i$(n,e){return j.Math.abs(n)0}function bMn(){this.a=new Sh,this.e=new fi,this.g=0,this.i=0}function wMn(n){this.a=n,this.b=F(lJn,q,1944,n.e.length,0,2)}function r$(n,e,t){var i;i=tDn(n,e,t),n.b=new tT(i.c.length)}function ef(){ef=N,Ja=new nz(hN,0),kf=new nz("UP",1)}function aC(){aC=N,kK=new rz(PHn,0),Ton=new rz("FAN",1)}function dC(){dC=N,dH=new we,$y=new we,Ere(Azn,new z2n)}function rle(n){if(n.p!=0)throw T(new fu);return b5(n.f,0)}function cle(n){if(n.p!=0)throw T(new fu);return b5(n.k,0)}function gMn(n){return n.Db>>16!=3?null:u(n.Cb,147)}function y3(n){return n.Db>>16!=6?null:u(n.Cb,235)}function eb(n){return n.Db>>16!=17?null:u(n.Cb,26)}function pMn(n,e){var t=n.a=n.a||[];return t[e]||(t[e]=n.le(e))}function ule(n,e){var t;return t=n.a.get(e),t??new Array}function sle(n,e){var t;t=n.q.getHours(),n.q.setMonth(e),S6(n,t)}function kr(n,e,t){return e==null?_c(n.f,null,t):Gd(n.g,e,t)}function _5(n,e,t,i,r,c){return new Lh(n.e,e,n.aj(),t,i,r,c)}function P8(n,e,t){return n.a=Yu(n.a,0,e)+(""+t)+r8(n.a,e),n}function ole(n,e,t){return W(n.a,(QE(),ex(e,t),new bd(e,t))),n}function nX(n){return _z(n.c),n.e=n.a=n.c,n.c=n.c.c,++n.d,n.a.f}function vMn(n){return _z(n.e),n.c=n.a=n.e,n.e=n.e.e,--n.d,n.a.f}function Ei(n,e){n.d&&Qc(n.d.e,n),n.d=e,n.d&&W(n.d.e,n)}function Hi(n,e){n.c&&Qc(n.c.g,n),n.c=e,n.c&&W(n.c.g,n)}function yr(n,e){n.c&&Qc(n.c.a,n),n.c=e,n.c&&W(n.c.a,n)}function Hr(n,e){n.i&&Qc(n.i.j,n),n.i=e,n.i&&W(n.i.j,n)}function mMn(n,e,t){this.a=e,this.c=n,this.b=(pe(t),new du(t))}function kMn(n,e,t){this.a=e,this.c=n,this.b=(pe(t),new du(t))}function yMn(n,e){this.a=n,this.c=Qr(this.a),this.b=new uC(e)}function fle(n){var e;return Ta(n),e=new fi,gt(n,new Vvn(e))}function tb(n,e){if(n<0||n>e)throw T(new vr(cnn+n+unn+e))}function eX(n,e){return lCn(n.a,e)?TW(n,u(e,22).g,null):null}function hle(n){return yF(),qn(),u(n.a,81).d.e!=0}function jMn(){jMn=N,azn=Fe((aj(),A(M(lzn,1),z,538,0,[fR])))}function EMn(){EMn=N,YQn=ju(new hi,(Qi(),Ir),(rr(),Kk))}function tX(){tX=N,ZQn=ju(new hi,(Qi(),Ir),(rr(),Kk))}function CMn(){CMn=N,eJn=ju(new hi,(Qi(),Ir),(rr(),Kk))}function TMn(){TMn=N,gJn=Ze(new hi,(Qi(),Ir),(rr(),km))}function Zu(){Zu=N,mJn=Ze(new hi,(Qi(),Ir),(rr(),km))}function MMn(){MMn=N,kJn=Ze(new hi,(Qi(),Ir),(rr(),km))}function c$(){c$=N,TJn=Ze(new hi,(Qi(),Ir),(rr(),km))}function AMn(){AMn=N,lYn=ju(new hi,(c4(),Gm),(k6(),lK))}function aa(n,e,t,i){this.c=n,this.d=i,s$(this,e),o$(this,t)}function M2(n){this.c=new Ct,this.b=n.b,this.d=n.c,this.a=n.a}function u$(n){this.a=j.Math.cos(n),this.b=j.Math.sin(n)}function s$(n,e){n.a&&Qc(n.a.k,n),n.a=e,n.a&&W(n.a.k,n)}function o$(n,e){n.b&&Qc(n.b.f,n),n.b=e,n.b&&W(n.b.f,n)}function SMn(n,e){mhe(n,n.b,n.c),u(n.b.b,65),e&&u(e.b,65).b}function lle(n,e){vQ(n,e),I(n.Cb,88)&&yb(Iu(u(n.Cb,88)),2)}function f$(n,e){I(n.Cb,88)&&yb(Iu(u(n.Cb,88)),4),Ic(n,e)}function bC(n,e){I(n.Cb,179)&&(u(n.Cb,179).tb=null),Ic(n,e)}function mc(n,e){return er(),R$(e)?new IE(e,n):new i8(e,n)}function ale(n,e){var t,i;t=e.c,i=t!=null,i&&j2(n,new Z0(e.c))}function PMn(n){var e,t;return t=(Qp(),e=new ud,e),O3(t,n),t}function IMn(n){var e,t;return t=(Qp(),e=new ud,e),O3(t,n),t}function OMn(n,e){var t;return t=new Rs(n),e.c[e.c.length]=t,t}function DMn(n,e){var t;return t=u(ab(T2(n.a),e),14),t?t.gc():0}function $Mn(n){var e;return Ta(n),e=(Ow(),Ow(),Nin),qC(n,e)}function FMn(n){for(var e;;)if(e=n.Pb(),!n.Ob())return e}function iX(n,e){tie.call(this,new s2(sb(n))),is(e,W_n),this.a=e}function ch(n,e,t){KDn(e,t,n.gc()),this.c=n,this.a=e,this.b=t-e}function xMn(n,e,t){var i;KDn(e,t,n.c.length),i=t-e,AG(n.c,e,i)}function dle(n,e){Dyn(n,ge(ci(cl(e,24),FM)),ge(ci(e,FM)))}function Ln(n,e){if(n<0||n>=e)throw T(new vr(cnn+n+unn+e))}function Me(n,e){if(n<0||n>=e)throw T(new wG(cnn+n+unn+e))}function xn(n,e){this.b=(_n(n),n),this.a=e&Ib?e:e|64|Nf}function LMn(n){dyn(this),Wmn(this.a,KV(j.Math.max(8,n))<<1)}function tf(n){return Gr(A(M(ai,1),q,8,0,[n.i.n,n.n,n.a]))}function ble(){return hf(),A(M(Nu,1),z,132,0,[Win,hs,Rb])}function wle(){return _o(),A(M(_b,1),z,232,0,[Zr,Fc,nc])}function gle(){return Cu(),A(M(Qzn,1),z,461,0,[Xf,Ol,Co])}function ple(){return Jc(),A(M(Yzn,1),z,462,0,[Wo,Dl,To])}function vle(){return qd(),A(M(zrn,1),z,423,0,[yg,Grn,qR])}function mle(){return W5(),A(M(Krn,1),z,379,0,[NR,LR,BR])}function kle(){return i6(),A(M(Gsn,1),z,378,0,[J_,qsn,oP])}function yle(){return F2(),A(M(Kcn,1),z,314,0,[ap,qk,_cn])}function jle(){return VC(),A(M(qcn,1),z,337,0,[Hcn,DS,o_])}function Ele(){return ya(),A(M(aXn,1),z,450,0,[l_,cv,Tg])}function Cle(){return Kd(),A(M(YR,1),z,361,0,[g0,Fl,w0])}function Tle(){return Nh(),A(M(kXn,1),z,303,0,[zk,Ag,dp])}function Mle(){return q3(),A(M(y_,1),z,292,0,[m_,k_,Gk])}function Ale(){return ur(),A(M(zQn,1),z,452,0,[Bm,Au,xc])}function Sle(){return Rh(),A(M(Zsn,1),z,339,0,[Nl,Ysn,tK])}function Ple(){return oT(),A(M(ion,1),z,375,0,[eon,cK,ton])}function Ile(){return dT(),A(M(hon,1),z,377,0,[fK,pv,ew])}function Ole(){return Q3(),A(M(uon,1),z,336,0,[sK,con,Rm])}function Dle(){return uT(),A(M(fon,1),z,338,0,[oon,oK,son])}function $le(){return _d(),A(M(fJn,1),z,454,0,[ry,_m,aP])}function Fle(){return CT(),A(M(gYn,1),z,442,0,[CK,jK,EK])}function xle(){return f7(),A(M(Fon,1),z,380,0,[CP,Don,$on])}function Lle(){return ET(),A(M(Yon,1),z,381,0,[Jon,IK,Qon])}function Nle(){return sT(),A(M(Xon,1),z,293,0,[PK,Won,Uon])}function Ble(){return w7(),A(M(OK,1),z,437,0,[AP,SP,PP])}function Rle(){return _h(),A(M(Khn,1),z,334,0,[HP,F1,i9])}function _le(){return sf(),A(M(Phn,1),z,272,0,[jv,cw,Ev])}function Kle(n,e){return o9e(n,e,I(e,99)&&(u(e,18).Bb&Yi)!=0)}function Hle(n,e,t){var i;return i=O6(n,e,!1),i.b<=e&&i.a<=t}function NMn(n,e,t){var i;i=new Jwn,i.b=e,i.a=t,++e.b,W(n.d,i)}function qle(n,e){var t;return t=(_n(n),n).g,Yz(!!t),_n(e),t(e)}function rX(n,e){var t,i;return i=d3(n,e),t=n.a.Zc(i),new Y8n(n,t)}function Gle(n){return n.Db>>16!=6?null:u(Fx(n),235)}function zle(n){if(n.p!=2)throw T(new fu);return ge(n.f)&Ut}function Ule(n){if(n.p!=2)throw T(new fu);return ge(n.k)&Ut}function Wle(n){return n.a==(T3(),uI)&&Ste(n,C9e(n.g,n.b)),n.a}function A2(n){return n.d==(T3(),uI)&&Ite(n,pke(n.g,n.b)),n.d}function y(n){return ne(n.ai?1:0}function BMn(n,e){var t,i;return t=F$(e),i=t,u(te(n.c,i),19).a}function RMn(n,e){var t;for(t=n+"";t.length0&&n.a[--n.d]==0;);n.a[n.d++]==0&&(n.e=0)}function rAn(n){return n.a?n.e.length==0?n.a.a:n.a.a+(""+n.e):n.c}function rae(n){return!!n.a&&Ou(n.a.a).i!=0&&!(n.b&&YF(n.b))}function cae(n){return!!n.u&&bc(n.u.a).i!=0&&!(n.n&&JF(n.n))}function cAn(n){return gD(n.e.Hd().gc()*n.c.Hd().gc(),16,new tvn(n))}function uae(n,e){return xCn(eu(n.q.getTime()),eu(e.q.getTime()))}function xf(n){return u(lf(n,F(GR,MN,17,n.c.length,0,1)),474)}function I8(n){return u(lf(n,F(vh,E1,10,n.c.length,0,1)),193)}function sae(n){return Zu(),!Xi(n)&&!(!Xi(n)&&n.c.i.c==n.d.i.c)}function uAn(n,e,t){var i;i=(pe(n),new du(n)),N3e(new mMn(i,e,t))}function O8(n,e,t){var i;i=(pe(n),new du(n)),B3e(new kMn(i,e,t))}function sAn(n,e){var t;return t=1-e,n.a[t]=eT(n.a[t],t),eT(n,e)}function oAn(n,e){var t;n.e=new oG,t=Cb(e),bi(t,n.c),eBn(n,t,0)}function Ci(n,e,t,i){var r;r=new XH,r.a=e,r.b=t,r.c=i,Ke(n.a,r)}function Z(n,e,t,i){var r;r=new XH,r.a=e,r.b=t,r.c=i,Ke(n.b,r)}function po(n){var e,t,i;return e=new HCn,t=Zx(e,n),UEe(e),i=t,i}function hX(){var n,e,t;return e=(t=(n=new ud,n),t),W(M1n,e),e}function pC(n){return n.j.c=F(Zn,rn,1,0,5,1),KW(n.c),Khe(n.a),n}function $w(n){return Qv(),I(n.g,10)?u(n.g,10):null}function oae(n){return Iw(n).dc()?!1:(sce(n,new Np),!0)}function fae(n){if(!("stack"in n))try{throw n}catch{}return n}function D8(n,e){if(n<0||n>=e)throw T(new vr(j6e(n,e)));return n}function fAn(n,e,t){if(n<0||et)throw T(new vr(W5e(n,e,t)))}function d$(n,e){if(ri(n.a,e),e.d)throw T(new _r(wKn));e.d=n}function b$(n,e){if(e.$modCount!=n.$modCount)throw T(new vs)}function hAn(n,e){return I(e,42)?ix(n.a,u(e,42)):!1}function lAn(n,e){return I(e,42)?ix(n.a,u(e,42)):!1}function aAn(n,e){return I(e,42)?ix(n.a,u(e,42)):!1}function hae(n,e){return n.a<=n.b?(e.ud(n.a++),!0):!1}function $d(n){var e;return $r(n)?(e=n,e==-0?0:e):m0e(n)}function vC(n){var e;return fl(n),e=new fln,vw(n.a,new Wvn(e)),e}function dAn(n){var e;return fl(n),e=new oln,vw(n.a,new Uvn(e)),e}function Ii(n,e){this.a=n,$v.call(this,n),tb(e,n.gc()),this.b=e}function lX(n){this.e=n,this.b=this.e.a.entries(),this.a=new Array}function lae(n){return gD(n.e.Hd().gc()*n.c.Hd().gc(),273,new evn(n))}function mC(n){return new Pc((is(n,AL),KC(qi(qi(5,n),n/10|0))))}function bAn(n){return u(lf(n,F(FWn,UKn,11,n.c.length,0,1)),1943)}function aae(n,e,t){return t.f.c.length>0?SW(n.a,e,t):SW(n.b,e,t)}function dae(n,e,t){n.d&&Qc(n.d.e,n),n.d=e,n.d&&Q0(n.d.e,t,n)}function w$(n,e){uTe(e,n),WU(n.d),WU(u(k(n,(nn(),eP)),207))}function H5(n,e){cTe(e,n),UU(n.d),UU(u(k(n,(nn(),eP)),207))}function Fd(n,e){var t,i;return t=Dh(n,e),i=null,t&&(i=t.fe()),i}function j3(n,e){var t,i;return t=ub(n,e),i=null,t&&(i=t.ie()),i}function q5(n,e){var t,i;return t=Dh(n,e),i=null,t&&(i=t.ie()),i}function $h(n,e){var t,i;return t=Dh(n,e),i=null,t&&(i=tY(t)),i}function bae(n,e,t){var i;return i=i4(t),gM(n.g,i,e),gM(n.i,e,t),e}function wae(n,e,t){var i;i=q2e();try{return kue(n,e,t)}finally{Mae(i)}}function wAn(n){var e;e=n.Wg(),this.a=I(e,69)?u(e,69).Zh():e.Kc()}function hi(){P9n.call(this),this.j.c=F(Zn,rn,1,0,5,1),this.a=-1}function aX(n,e,t,i){this.d=n,this.n=e,this.g=t,this.o=i,this.p=-1}function gAn(n,e,t,i){this.e=i,this.d=null,this.c=n,this.a=e,this.b=t}function dX(n,e,t){this.d=new r6n(this),this.e=n,this.i=e,this.f=t}function kC(){kC=N,j_=new QG(I4,0),oun=new QG("TOP_LEFT",1)}function pAn(){pAn=N,aon=aTn(Q(1),Q(4)),lon=aTn(Q(1),Q(2))}function vAn(){vAn=N,uZn=Fe((Ij(),A(M(cZn,1),z,551,0,[$K])))}function mAn(){mAn=N,rZn=Fe((Pj(),A(M(lfn,1),z,482,0,[DK])))}function kAn(){kAn=N,CZn=Fe((Jv(),A(M(Dfn,1),z,530,0,[hy])))}function yAn(){yAn=N,IUn=Fe((Aj(),A(M(krn,1),z,481,0,[SR])))}function gae(){return Hd(),A(M(EUn,1),z,406,0,[Ok,Ik,MR,AR])}function pae(){return FC(),A(M(WA,1),z,297,0,[vR,qin,Gin,zin])}function vae(){return d6(),A(M(SUn,1),z,394,0,[Lk,YA,ZA,Nk])}function mae(){return K2(),A(M(TUn,1),z,323,0,[$k,Dk,Fk,xk])}function kae(){return G3(),A(M(jWn,1),z,405,0,[b0,Hb,Kb,kg])}function yae(){return aT(),A(M(KWn,1),z,360,0,[QR,TS,MS,Hk])}function jAn(n,e,t,i){return I(t,54)?new ojn(n,e,t,i):new pW(n,e,t,i)}function jae(){return ff(),A(M(QWn,1),z,411,0,[lp,nv,ev,JR])}function Eae(n){var e;return n.j==(J(),ae)&&(e=GLn(n),au(e,Vn))}function Cae(n,e){var t;t=e.a,Hi(t,e.c.d),Ei(t,e.d.d),fb(t.a,n.n)}function EAn(n,e){return u(yd(KE(u(ct(n.k,e),15).Oc(),jg)),113)}function CAn(n,e){return u(yd(HE(u(ct(n.k,e),15).Oc(),jg)),113)}function Tae(n){return new xn(jbe(u(n.a.dd(),14).gc(),n.a.cd()),16)}function E3(n){return I(n,14)?u(n,14).dc():!n.Kc().Ob()}function S2(n){return Qv(),I(n.g,145)?u(n.g,145):null}function TAn(n){if(n.e.g!=n.b)throw T(new vs);return!!n.c&&n.d>0}function Re(n){return ne(n.b!=n.d.c),n.c=n.b,n.b=n.b.a,++n.a,n.c.c}function bX(n,e){_n(e),Mt(n.a,n.c,e),n.c=n.c+1&n.a.length-1,MFn(n)}function ll(n,e){_n(e),n.b=n.b-1&n.a.length-1,Mt(n.a,n.b,e),MFn(n)}function MAn(n,e){var t;for(t=n.j.c.length;t0&&gc(n.g,0,e,0,n.i),e}function IAn(n,e){$j();var t;return t=u(te(eI,n),55),!t||t.wj(e)}function Bae(n){if(n.p!=1)throw T(new fu);return ge(n.f)<<24>>24}function Rae(n){if(n.p!=1)throw T(new fu);return ge(n.k)<<24>>24}function _ae(n){if(n.p!=7)throw T(new fu);return ge(n.k)<<16>>16}function Kae(n){if(n.p!=7)throw T(new fu);return ge(n.f)<<16>>16}function Fh(n){var e;for(e=0;n.Ob();)n.Pb(),e=qi(e,1);return KC(e)}function OAn(n,e){var t;return t=new R0,n.xd(t),t.a+="..",e.yd(t),t.a}function Hae(n,e,t){var i;i=u(te(n.g,t),57),W(n.a.c,new Pi(e,i))}function qae(n,e,t){return TD(Y(Vr(Ar(n.f,e))),Y(Vr(Ar(n.f,t))))}function yC(n,e,t){return vM(n,e,t,I(e,99)&&(u(e,18).Bb&Yi)!=0)}function Gae(n,e,t){return m4(n,e,t,I(e,99)&&(u(e,18).Bb&Yi)!=0)}function zae(n,e,t){return b9e(n,e,t,I(e,99)&&(u(e,18).Bb&Yi)!=0)}function pX(n,e){return n==(Qn(),ti)&&e==ti?4:n==ti||e==ti?8:32}function DAn(n,e){return B(e)===B(n)?"(this Map)":e==null?iu:Lr(e)}function Uae(n,e){return u(e==null?Vr(Ar(n.f,null)):n5(n.g,e),281)}function $An(n,e,t){var i;return i=i4(t),it(n.b,i,e),it(n.c,e,t),e}function FAn(n,e){var t;for(t=e;t;)U0(n,t.i,t.j),t=At(t);return n}function vX(n,e){var t;return t=C8(f3(new x$(n,e))),DE(new x$(n,e)),t}function uh(n,e){er();var t;return t=u(n,66).Mj(),M5e(t,e),t.Ok(e)}function Wae(n,e,t,i,r){var c;c=m9e(r,t,i),W(e,p6e(r,c)),o5e(n,r,e)}function xAn(n,e,t){n.i=0,n.e=0,e!=t&&(uDn(n,e,t),cDn(n,e,t))}function mX(n,e){var t;t=n.q.getHours(),n.q.setFullYear(e+Tl),S6(n,t)}function Xae(n,e,t){if(t){var i=t.ee();n.a[e]=i(t)}else delete n.a[e]}function g$(n,e,t){if(t){var i=t.ee();t=i(t)}else t=void 0;n.a[e]=t}function LAn(n){if(n<0)throw T(new K9n("Negative array size: "+n))}function bc(n){return n.n||(Iu(n),n.n=new wCn(n,ar,n),Mr(n)),n.n}function G5(n){return ne(n.a=0&&n.a[t]===e[t];t--);return t<0}function KAn(n,e){V3();var t;return t=n.j.g-e.j.g,t!=0?t:0}function HAn(n,e){return _n(e),n.a!=null?$fe(e.Kb(n.a)):UA}function jC(n){var e;return n?new iW(n):(e=new Sh,nF(e,n),e)}function es(n,e){var t;return e.b.Kb(FPn(n,e.c.Ee(),(t=new Jvn(e),t)))}function EC(n){_J(),Dyn(this,ge(ci(cl(n,24),FM)),ge(ci(n,FM)))}function qAn(){qAn=N,Gzn=Fe(($T(),A(M(Jin,1),z,428,0,[yR,Qin])))}function GAn(){GAn=N,zzn=Fe((RC(),A(M(Zin,1),z,427,0,[Yin,jR])))}function zAn(){zAn=N,WUn=Fe((_C(),A(M(Arn,1),z,424,0,[$R,tS])))}function UAn(){UAn=N,BWn=Fe((B3(),A(M(NWn,1),z,511,0,[_k,UR])))}function WAn(){WAn=N,lXn=Fe((V8(),A(M(Wcn,1),z,419,0,[$S,Ucn])))}function XAn(){XAn=N,wXn=Fe((K8(),A(M(Qcn,1),z,479,0,[Vcn,xS])))}function VAn(){VAn=N,XQn=Fe((x8(),A(M(ron,1),z,376,0,[uK,iy])))}function QAn(){QAn=N,GQn=Fe((z8(),A(M(non,1),z,421,0,[iK,rK])))}function JAn(){JAn=N,sXn=Fe((OC(),A(M(Rcn,1),z,422,0,[Bcn,s_])))}function YAn(){YAn=N,jXn=Fe((kC(),A(M(fun,1),z,420,0,[j_,oun])))}function ZAn(){ZAn=N,RJn=Fe((No(),A(M(BJn,1),z,520,0,[tw,Bl])))}function nSn(){nSn=N,wJn=Fe((z5(),A(M(bJn,1),z,523,0,[Hm,Km])))}function eSn(){eSn=N,jJn=Fe((Ff(),A(M(yJn,1),z,516,0,[M0,I1])))}function tSn(){tSn=N,CJn=Fe((ef(),A(M(EJn,1),z,515,0,[Ja,kf])))}function iSn(){iSn=N,UJn=Fe((Id(),A(M(zJn,1),z,455,0,[Rl,Lg])))}function rSn(){rSn=N,hYn=Fe((gC(),A(M(Son,1),z,425,0,[yK,Aon])))}function cSn(){cSn=N,wYn=Fe((iT(),A(M(Pon,1),z,495,0,[EP,mv])))}function uSn(){uSn=N,fYn=Fe((aC(),A(M(Mon,1),z,480,0,[kK,Ton])))}function sSn(){sSn=N,vYn=Fe(($C(),A(M(Oon,1),z,426,0,[Ion,TK])))}function oSn(){oSn=N,TZn=Fe((c7(),A(M(Ffn,1),z,429,0,[DP,$fn])))}function fSn(){fSn=N,sZn=Fe((L8(),A(M(afn,1),z,430,0,[FK,IP])))}function z5(){z5=N,Hm=new ZG("UPPER",0),Km=new ZG("LOWER",1)}function Yae(n,e){var t;t=new r2,la(t,"x",e.a),la(t,"y",e.b),j2(n,t)}function Zae(n,e){var t;t=new r2,la(t,"x",e.a),la(t,"y",e.b),j2(n,t)}function nde(n,e){var t,i;i=!1;do t=JOn(n,e),i=i|t;while(t);return i}function jX(n,e){var t,i;for(t=e,i=0;t>0;)i+=n.a[t],t-=t&-t;return i}function hSn(n,e){var t;for(t=e;t;)U0(n,-t.i,-t.j),t=At(t);return n}function $i(n,e){var t,i;for(_n(e),i=n.Kc();i.Ob();)t=i.Pb(),e.td(t)}function lSn(n,e){var t;return t=e.cd(),new bd(t,n.e.pc(t,u(e.dd(),14)))}function Kt(n,e,t,i){var r;r=new aI,r.c=e,r.b=t,r.a=i,i.b=t.a=r,++n.b}function Es(n,e,t){var i;return i=(Ln(e,n.c.length),n.c[e]),n.c[e]=t,i}function ede(n,e,t){return u(e==null?_c(n.f,null,t):Gd(n.g,e,t),281)}function k$(n){return n.c&&n.d?cX(n.c)+"->"+cX(n.d):"e_"+md(n)}function C3(n,e){return(Ta(n),Wv(new $n(n,new UX(e,n.a)))).sd(V4)}function tde(){return Qi(),A(M(Hrn,1),z,356,0,[Vf,$l,Hc,Cc,Ir])}function ide(){return J(),A(M(Zi,1),hc,61,0,[Xr,Kn,Vn,ae,Gn])}function rde(n){return gj(),function(){return wae(n,this,arguments)}}function cde(){return Date.now?Date.now():new Date().getTime()}function Xi(n){return!n.c||!n.d?!1:!!n.c.i&&n.c.i==n.d.i}function aSn(n){if(!n.c.Sb())throw T(new ic);return n.a=!0,n.c.Ub()}function $8(n){n.i=0,z9(n.b,null),z9(n.c,null),n.a=null,n.e=null,++n.g}function EX(n){are.call(this,n==null?iu:Lr(n),I(n,78)?u(n,78):null)}function dSn(n){B_n(),Nmn(this),this.a=new Ct,QV(this,n),Ke(this.a,n)}function bSn(){RO(this),this.b=new fn(Ft,Ft),this.a=new fn(Vt,Vt)}function wSn(n,e){this.c=0,this.b=e,qkn.call(this,n,17493),this.a=this.c}function y$(n){CC(),!pf&&(this.c=n,this.e=!0,this.a=new X)}function CC(){CC=N,pf=!0,Fzn=!1,xzn=!1,Nzn=!1,Lzn=!1}function CX(n,e){return I(e,149)?An(n.c,u(e,149).c):!1}function TX(n,e){var t;return t=0,n&&(t+=n.f.a/2),e&&(t+=e.f.a/2),t}function j$(n,e){var t;return t=u(xd(n.d,e),23),t||u(xd(n.e,e),23)}function gSn(n){this.b=n,ie.call(this,n),this.a=u(Rn(this.b.a,4),126)}function pSn(n){this.b=n,w2.call(this,n),this.a=u(Rn(this.b.a,4),126)}function Iu(n){return n.t||(n.t=new Amn(n),s6(new _9n(n),0,n.t)),n.t}function ude(){return sr(),A(M(e9,1),z,103,0,[mh,Ao,Zs,Jh,Yh])}function sde(){return qw(),A(M(c9,1),z,249,0,[Hl,Cy,Hhn,r9,qhn])}function ode(){return Ho(),A(M($1,1),z,175,0,[Xn,pi,Yf,Ya,D1])}function fde(){return P7(),A(M(gfn,1),z,316,0,[dfn,xK,wfn,LK,bfn])}function hde(){return b6(),A(M(Usn,1),z,315,0,[zsn,nK,eK,Lm,Nm])}function lde(){return Pa(),A(M(zcn,1),z,335,0,[f_,Gcn,h_,Em,jm])}function ade(){return g4(),A(M(eZn,1),z,355,0,[Ng,Ep,Qm,Vm,Jm])}function dde(){return Vw(),A(M(YWn,1),z,363,0,[SS,IS,OS,PS,AS])}function bde(){return Ss(),A(M(jun,1),z,163,0,[Qk,Sm,xl,Pm,Ub])}function T3(){T3=N;var n,e;cI=(Qp(),e=new fj,e),uI=(n=new BI,n)}function vSn(n){var e;return n.c||(e=n.r,I(e,88)&&(n.c=u(e,26))),n.c}function wde(n){return n.e=3,n.d=n.Yb(),n.e!=2?(n.e=0,!0):!1}function E$(n){var e,t,i;return e=n&Lu,t=n>>22&Lu,i=n<0?Wh:0,Bc(e,t,i)}function gde(n){var e,t,i,r;for(t=n,i=0,r=t.length;i0?g$n(n,e):BNn(n,-e)}function MX(n,e){return e==0||n.e==0?n:e>0?BNn(n,e):g$n(n,-e)}function ve(n){if(Se(n))return n.c=n.a,n.a.Pb();throw T(new ic)}function kSn(n){var e,t;return e=n.c.i,t=n.d.i,e.k==(Qn(),Xt)&&t.k==Xt}function C$(n){var e;return e=new Pd,Sr(e,n),H(e,(nn(),Tr),null),e}function T$(n,e,t){var i;return i=n.Yg(e),i>=0?n._g(i,t,!0):Yd(n,e,t)}function AX(n,e,t,i){var r;for(r=0;re)throw T(new vr(fY(n,e,"index")));return n}function M$(n,e,t,i){var r;return r=F(be,Le,25,e,15,1),Pve(r,n,e,t,i),r}function vde(n,e){var t;t=n.q.getHours()+(e/60|0),n.q.setMinutes(e),S6(n,t)}function mde(n,e){return j.Math.min(al(e.a,n.d.d.c),al(e.b,n.d.d.c))}function O2(n,e){return mi(e)?e==null?MY(n.f,null):$On(n.g,e):MY(n.f,e)}function uf(n){this.c=n,this.a=new E(this.c.a),this.b=new E(this.c.b)}function TC(){this.e=new X,this.c=new X,this.d=new X,this.b=new X}function TSn(){this.g=new zq,this.b=new zq,this.a=new X,this.k=new X}function MSn(n,e,t){this.a=n,this.c=e,this.d=t,W(e.e,this),W(t.b,this)}function ASn(n,e){Hkn.call(this,e.rd(),e.qd()&-6),_n(n),this.a=n,this.b=e}function SSn(n,e){qkn.call(this,e.rd(),e.qd()&-6),_n(n),this.a=n,this.b=e}function FX(n,e){FO.call(this,e.rd(),e.qd()&-6),_n(n),this.a=n,this.b=e}function MC(n,e,t){this.a=n,this.b=e,this.c=t,W(n.t,this),W(e.i,this)}function AC(){this.b=new Ct,this.a=new Ct,this.b=new Ct,this.a=new Ct}function SC(){SC=N,Ym=new kt("org.eclipse.elk.labels.labelManager")}function PSn(){PSn=N,$cn=new ii("separateLayerConnections",(aT(),QR))}function No(){No=N,tw=new tz("REGULAR",0),Bl=new tz("CRITICAL",1)}function x8(){x8=N,uK=new YG("STACKED",0),iy=new YG("SEQUENCED",1)}function L8(){L8=N,FK=new oz("FIXED",0),IP=new oz("CENTER_NODE",1)}function kde(n,e){var t;return t=CEe(n,e),n.b=new tT(t.c.length),Lje(n,t)}function yde(n,e,t){var i;return++n.e,--n.f,i=u(n.d[e].$c(t),133),i.dd()}function ISn(n){var e;return n.a||(e=n.r,I(e,148)&&(n.a=u(e,148))),n.a}function xX(n){if(n.a){if(n.e)return xX(n.e)}else return n;return null}function jde(n,e){return n.pe.p?-1:0}function PC(n,e){return _n(e),n.c=0,"Initial capacity must not be negative")}function $Sn(){$Sn=N,Vzn=Fe((_o(),A(M(_b,1),z,232,0,[Zr,Fc,nc])))}function FSn(){FSn=N,Jzn=Fe((Cu(),A(M(Qzn,1),z,461,0,[Xf,Ol,Co])))}function xSn(){xSn=N,Zzn=Fe((Jc(),A(M(Yzn,1),z,462,0,[Wo,Dl,To])))}function LSn(){LSn=N,Bzn=Fe((hf(),A(M(Nu,1),z,132,0,[Win,hs,Rb])))}function NSn(){NSn=N,bWn=Fe((W5(),A(M(Krn,1),z,379,0,[NR,LR,BR])))}function BSn(){BSn=N,PWn=Fe((qd(),A(M(zrn,1),z,423,0,[yg,Grn,qR])))}function RSn(){RSn=N,oXn=Fe((F2(),A(M(Kcn,1),z,314,0,[ap,qk,_cn])))}function _Sn(){_Sn=N,fXn=Fe((VC(),A(M(qcn,1),z,337,0,[Hcn,DS,o_])))}function KSn(){KSn=N,dXn=Fe((ya(),A(M(aXn,1),z,450,0,[l_,cv,Tg])))}function HSn(){HSn=N,rXn=Fe((Kd(),A(M(YR,1),z,361,0,[g0,Fl,w0])))}function qSn(){qSn=N,yXn=Fe((Nh(),A(M(kXn,1),z,303,0,[zk,Ag,dp])))}function GSn(){GSn=N,mXn=Fe((q3(),A(M(y_,1),z,292,0,[m_,k_,Gk])))}function zSn(){zSn=N,RQn=Fe((i6(),A(M(Gsn,1),z,378,0,[J_,qsn,oP])))}function USn(){USn=N,WQn=Fe((oT(),A(M(ion,1),z,375,0,[eon,cK,ton])))}function WSn(){WSn=N,qQn=Fe((Rh(),A(M(Zsn,1),z,339,0,[Nl,Ysn,tK])))}function XSn(){XSn=N,UQn=Fe((ur(),A(M(zQn,1),z,452,0,[Bm,Au,xc])))}function VSn(){VSn=N,JQn=Fe((dT(),A(M(hon,1),z,377,0,[fK,pv,ew])))}function QSn(){QSn=N,VQn=Fe((Q3(),A(M(uon,1),z,336,0,[sK,con,Rm])))}function JSn(){JSn=N,QQn=Fe((uT(),A(M(fon,1),z,338,0,[oon,oK,son])))}function YSn(){YSn=N,hJn=Fe((_d(),A(M(fJn,1),z,454,0,[ry,_m,aP])))}function ZSn(){ZSn=N,pYn=Fe((CT(),A(M(gYn,1),z,442,0,[CK,jK,EK])))}function nPn(){nPn=N,mYn=Fe((f7(),A(M(Fon,1),z,380,0,[CP,Don,$on])))}function ePn(){ePn=N,LYn=Fe((ET(),A(M(Yon,1),z,381,0,[Jon,IK,Qon])))}function tPn(){tPn=N,xYn=Fe((sT(),A(M(Xon,1),z,293,0,[PK,Won,Uon])))}function iPn(){iPn=N,iZn=Fe((w7(),A(M(OK,1),z,437,0,[AP,SP,PP])))}function rPn(){rPn=N,une=Fe((_h(),A(M(Khn,1),z,334,0,[HP,F1,i9])))}function cPn(){cPn=N,tne=Fe((sf(),A(M(Phn,1),z,272,0,[jv,cw,Ev])))}function Pde(){return Ti(),A(M(Ghn,1),z,98,0,[ql,jf,Tv,td,jh,Ac])}function wa(n,e){return!n.o&&(n.o=new Wu((Dc(),Ul),S0,n,0)),NF(n.o,e)}function Ide(n){return!n.g&&(n.g=new Qy),!n.g.d&&(n.g.d=new Cmn(n)),n.g.d}function Ode(n){return!n.g&&(n.g=new Qy),!n.g.a&&(n.g.a=new Tmn(n)),n.g.a}function Dde(n){return!n.g&&(n.g=new Qy),!n.g.b&&(n.g.b=new Emn(n)),n.g.b}function N8(n){return!n.g&&(n.g=new Qy),!n.g.c&&(n.g.c=new Mmn(n)),n.g.c}function $de(n,e,t){var i,r;for(r=new H3(e,n),i=0;it||e=0?n._g(t,!0,!0):Yd(n,e,!0)}function Qde(n,e){return Zt(K(Y(k(n,(G(),k0)))),K(Y(k(e,k0))))}function aPn(){aPn=N,aYn=Xd(Xd(Dj(new hi,(c4(),qm)),(k6(),pP)),aK)}function Jde(n,e,t){var i;return i=tDn(n,e,t),n.b=new tT(i.c.length),JY(n,i)}function Yde(n){if(n.b<=0)throw T(new ic);return--n.b,n.a-=n.c.c,Q(n.a)}function Zde(n){var e;if(!n.a)throw T(new gTn);return e=n.a,n.a=At(n.a),e}function n0e(n){for(;!n.a;)if(!nEn(n.c,new Xvn(n)))return!1;return!0}function $2(n){var e;return pe(n),I(n,198)?(e=u(n,198),e):new dvn(n)}function e0e(n){DC(),u(n.We((Xe(),rw)),174).Fc((Tu(),Ty)),n.Ye(eH,null)}function DC(){DC=N,SZn=new n2n,IZn=new e2n,PZn=Rwe((Xe(),eH),SZn,_l,IZn)}function $C(){$C=N,Ion=new sz("LEAF_NUMBER",0),TK=new sz("NODE_SIZE",1)}function t0e(n,e,t){n.a=e,n.c=t,n.b.a.$b(),_s(n.d),n.e.a.c=F(Zn,rn,1,0,5,1)}function $$(n){n.a=F(be,Le,25,n.b+1,15,1),n.c=F(be,Le,25,n.b,15,1),n.d=0}function i0e(n,e){n.a.ue(e.d,n.b)>0&&(W(n.c,new QU(e.c,e.d,n.d)),n.b=e.d)}function zX(n,e){if(n.g==null||e>=n.i)throw T(new xO(e,n.i));return n.g[e]}function dPn(n,e,t){if(W3(n,t),t!=null&&!n.wj(t))throw T(new xI);return t}function bPn(n){var e;if(n.Ek())for(e=n.i-1;e>=0;--e)D(n,e);return gX(n)}function r0e(n){var e,t;if(!n.b)return null;for(t=n.b;e=t.a[0];)t=e;return t}function c0e(n,e){var t,i;return LAn(e),t=(i=n.slice(0,e),WX(i,n)),t.length=e,t}function S3(n,e,t,i){var r;i=(Ow(),i||Lin),r=n.slice(e,t),hY(r,n,e,t,-e,i)}function Cs(n,e,t,i,r){return e<0?Yd(n,t,i):u(t,66).Nj().Pj(n,n.yh(),e,i,r)}function u0e(n){return I(n,172)?""+u(n,172).a:n==null?null:Lr(n)}function s0e(n){return I(n,172)?""+u(n,172).a:n==null?null:Lr(n)}function wPn(n,e){if(e.a)throw T(new _r(wKn));ri(n.a,e),e.a=n,!n.j&&(n.j=e)}function UX(n,e){FO.call(this,e.rd(),e.qd()&-16449),_n(n),this.a=n,this.c=e}function gPn(n,e){var t,i;return i=e/n.c.Hd().gc()|0,t=e%n.c.Hd().gc(),D2(n,i,t)}function Cu(){Cu=N,Xf=new oO(Y2,0),Ol=new oO(I4,1),Co=new oO(Z2,2)}function FC(){FC=N,vR=new Lj("All",0),qin=new lyn,Gin=new Eyn,zin=new ayn}function pPn(){pPn=N,Dzn=Fe((FC(),A(M(WA,1),z,297,0,[vR,qin,Gin,zin])))}function vPn(){vPn=N,EWn=Fe((G3(),A(M(jWn,1),z,405,0,[b0,Hb,Kb,kg])))}function mPn(){mPn=N,CUn=Fe((Hd(),A(M(EUn,1),z,406,0,[Ok,Ik,MR,AR])))}function kPn(){kPn=N,MUn=Fe((K2(),A(M(TUn,1),z,323,0,[$k,Dk,Fk,xk])))}function yPn(){yPn=N,PUn=Fe((d6(),A(M(SUn,1),z,394,0,[Lk,YA,ZA,Nk])))}function jPn(){jPn=N,WJn=Fe((c4(),A(M(won,1),z,393,0,[gP,qm,uy,Gm])))}function EPn(){EPn=N,HWn=Fe((aT(),A(M(KWn,1),z,360,0,[QR,TS,MS,Hk])))}function CPn(){CPn=N,FYn=Fe((qT(),A(M(zon,1),z,340,0,[SK,qon,Gon,Hon])))}function TPn(){TPn=N,JWn=Fe((ff(),A(M(QWn,1),z,411,0,[lp,nv,ev,JR])))}function MPn(){MPn=N,_Qn=Fe((wb(),A(M(Z_,1),z,197,0,[fP,Y_,xg,Fg])))}function APn(){APn=N,Ene=Fe((Xu(),A(M(jne,1),z,396,0,[ws,Yhn,Jhn,Zhn])))}function SPn(){SPn=N,one=Fe((cs(),A(M(sne,1),z,285,0,[Ey,kh,Kl,jy])))}function PPn(){PPn=N,ine=Fe((Hh(),A(M(cH,1),z,218,0,[rH,yy,Cv,Sp])))}function IPn(){IPn=N,kne=Fe((AT(),A(M(Qhn,1),z,311,0,[oH,Whn,Vhn,Xhn])))}function OPn(){OPn=N,vne=Fe((Vu(),A(M(o9,1),z,374,0,[Ay,id,My,uw])))}function DPn(){DPn=N,mM(),F1n=Ft,Tee=Vt,x1n=new S9(Ft),Mee=new S9(Vt)}function K8(){K8=N,Vcn=new VG(Xh,0),xS=new VG("IMPROVE_STRAIGHTNESS",1)}function o0e(n,e){return h3(),W(n,new Pi(e,Q(e.e.c.length+e.g.c.length)))}function f0e(n,e){return h3(),W(n,new Pi(e,Q(e.e.c.length+e.g.c.length)))}function WX(n,e){return U8(e)!=10&&A(Du(e),e.hm,e.__elementTypeId$,U8(e),n),n}function Qc(n,e){var t;return t=Fr(n,e,0),t==-1?!1:(h1(n,t),!0)}function $Pn(n,e){var t;return t=u(O2(n.e,e),387),t?(ZU(t),t.e):null}function P3(n){var e;return $r(n)&&(e=0-n,!isNaN(e))?e:bl(z3(n))}function Fr(n,e,t){for(;t=0?BT(n,t,!0,!0):Yd(n,e,!0)}function YX(n,e){Qv();var t,i;return t=S2(n),i=S2(e),!!t&&!!i&&!V$n(t.k,i.k)}function a0e(n,e){Zc(n,e==null||jE((_n(e),e))||isNaN((_n(e),e))?0:(_n(e),e))}function d0e(n,e){nu(n,e==null||jE((_n(e),e))||isNaN((_n(e),e))?0:(_n(e),e))}function b0e(n,e){Rd(n,e==null||jE((_n(e),e))||isNaN((_n(e),e))?0:(_n(e),e))}function w0e(n,e){Bd(n,e==null||jE((_n(e),e))||isNaN((_n(e),e))?0:(_n(e),e))}function BPn(n){(this.q?this.q:(Pn(),Pn(),ph)).Ac(n.q?n.q:(Pn(),Pn(),ph))}function g0e(n,e){return I(e,99)&&u(e,18).Bb&Yi?new LO(e,n):new H3(e,n)}function p0e(n,e){return I(e,99)&&u(e,18).Bb&Yi?new LO(e,n):new H3(e,n)}function RPn(n,e){vrn=new Wy,AUn=e,gm=n,u(gm.b,65),BX(gm,vrn,null),DRn(gm)}function B$(n,e,t){var i;return i=n.g[e],k5(n,e,n.oi(e,t)),n.gi(e,t,i),n.ci(),i}function BC(n,e){var t;return t=n.Xc(e),t>=0?(n.$c(t),!0):!1}function R$(n){var e;return n.d!=n.r&&(e=qs(n),n.e=!!e&&e.Cj()==kGn,n.d=e),n.e}function _$(n,e){var t;for(pe(n),pe(e),t=!1;e.Ob();)t=t|n.Fc(e.Pb());return t}function xd(n,e){var t;return t=u(te(n.e,e),387),t?(Oyn(n,t),t.e):null}function _Pn(n){var e,t;return e=n/60|0,t=n%60,t==0?""+e:""+e+":"+(""+t)}function qr(n,e){var t,i;return Ta(n),i=new FX(e,n.a),t=new iEn(i),new $n(n,t)}function ub(n,e){var t=n.a[e],i=(cF(),dR)[typeof t];return i?i(t):tQ(typeof t)}function v0e(n){switch(n.g){case 0:return nt;case 1:return-1;default:return 0}}function m0e(n){return mJ(n,(I3(),pin))<0?-xce(z3(n)):n.l+n.m*J2+n.h*$a}function U8(n){return n.__elementTypeCategory$==null?10:n.__elementTypeCategory$}function K$(n){var e;return e=n.b.c.length==0?null:un(n.b,0),e!=null&&J$(n,0),e}function KPn(n,e){for(;e[0]=0;)++e[0]}function W8(n,e){this.e=e,this.a=FOn(n),this.a<54?this.f=$d(n):this.c=m7(n)}function HPn(n,e,t,i){Je(),cd.call(this,26),this.c=n,this.a=e,this.d=t,this.b=i}function sh(n,e,t){var i,r;for(i=10,r=0;rn.a[i]&&(i=t);return i}function T0e(n,e){var t;return t=zd(n.e.c,e.e.c),t==0?Zt(n.e.d,e.e.d):t}function Fw(n,e){return e.e==0||n.e==0?W4:(a4(),Hx(n,e))}function M0e(n,e){if(!n)throw T(new Hn(P8e("Enum constant undefined: %s",e)))}function X5(){X5=N,MWn=new San,AWn=new Man,CWn=new $an,TWn=new Fan,SWn=new xan}function RC(){RC=N,Yin=new qG("BY_SIZE",0),jR=new qG("BY_SIZE_AND_SHAPE",1)}function _C(){_C=N,$R=new GG("EADES",0),tS=new GG("FRUCHTERMAN_REINGOLD",1)}function V8(){V8=N,$S=new XG("READING_DIRECTION",0),Ucn=new XG("ROTATION",1)}function GPn(){GPn=N,hXn=Fe((Pa(),A(M(zcn,1),z,335,0,[f_,Gcn,h_,Em,jm])))}function zPn(){zPn=N,KQn=Fe((b6(),A(M(Usn,1),z,315,0,[zsn,nK,eK,Lm,Nm])))}function UPn(){UPn=N,ZWn=Fe((Vw(),A(M(YWn,1),z,363,0,[SS,IS,OS,PS,AS])))}function WPn(){WPn=N,EXn=Fe((Ss(),A(M(jun,1),z,163,0,[Qk,Sm,xl,Pm,Ub])))}function XPn(){XPn=N,oZn=Fe((P7(),A(M(gfn,1),z,316,0,[dfn,xK,wfn,LK,bfn])))}function VPn(){VPn=N,OZn=Fe((Ho(),A(M($1,1),z,175,0,[Xn,pi,Yf,Ya,D1])))}function QPn(){QPn=N,tZn=Fe((g4(),A(M(eZn,1),z,355,0,[Ng,Ep,Qm,Vm,Jm])))}function JPn(){JPn=N,vWn=Fe((Qi(),A(M(Hrn,1),z,356,0,[Vf,$l,Hc,Cc,Ir])))}function YPn(){YPn=N,ene=Fe((sr(),A(M(e9,1),z,103,0,[mh,Ao,Zs,Jh,Yh])))}function ZPn(){ZPn=N,hne=Fe((qw(),A(M(c9,1),z,249,0,[Hl,Cy,Hhn,r9,qhn])))}function nIn(){nIn=N,dne=Fe((J(),A(M(Zi,1),hc,61,0,[Xr,Kn,Vn,ae,Gn])))}function H$(n,e){var t;return t=u(te(n.a,e),134),t||(t=new pI,it(n.a,e,t)),t}function eIn(n){var e;return e=u(k(n,(G(),p0)),305),e?e.a==n:!1}function tIn(n){var e;return e=u(k(n,(G(),p0)),305),e?e.i==n:!1}function iIn(n,e){return _n(e),mW(n),n.d.Ob()?(e.td(n.d.Pb()),!0):!1}function KC(n){return fc(n,nt)>0?nt:fc(n,Bi)<0?Bi:ge(n)}function sb(n){return n<3?(is(n,J_n),n+1):n=0&&e=-.01&&n.a<=bf&&(n.a=0),n.b>=-.01&&n.b<=bf&&(n.b=0),n}function cIn(n,e){return e==(sD(),sD(),Pzn)?n.toLocaleLowerCase():n.toLowerCase()}function nV(n){return(n.i&2?"interface ":n.i&1?"":"class ")+(Ph(n),n.o)}function Er(n){var e,t;t=(e=new RI,e),me((!n.q&&(n.q=new V(co,n,11,10)),n.q),t)}function A0e(n,e){var t;return t=e>0?e-1:e,e8n(Kie(IIn(YU(new zp,t),n.n),n.j),n.k)}function S0e(n,e,t,i){var r;n.j=-1,EY(n,iY(n,e,t),(er(),r=u(e,66).Mj(),r.Ok(i)))}function uIn(n){this.g=n,this.f=new X,this.a=j.Math.min(this.g.c.c,this.g.d.c)}function sIn(n){this.b=new X,this.a=new X,this.c=new X,this.d=new X,this.e=n}function oIn(n,e){this.a=new we,this.e=new we,this.b=(i6(),oP),this.c=n,this.b=e}function fIn(n,e,t){kE.call(this),eV(this),this.a=n,this.c=t,this.b=e.d,this.f=e.e}function hIn(n){this.d=n,this.c=n.c.vc().Kc(),this.b=null,this.a=null,this.e=(aj(),fR)}function Ld(n){if(n<0)throw T(new Hn("Illegal Capacity: "+n));this.g=this.ri(n)}function P0e(n,e){if(0>n||n>e)throw T(new bG("fromIndex: 0, toIndex: "+n+tnn+e))}function I0e(n){var e;if(n.a==n.b.a)throw T(new ic);return e=n.a,n.c=e,n.a=n.a.e,e}function HC(n){var e;z0(!!n.c),e=n.c.a,Ts(n.d,n.c),n.b==n.c?n.b=e:--n.a,n.c=null}function qC(n,e){var t;return Ta(n),t=new DTn(n,n.a.rd(),n.a.qd()|4,e),new $n(n,t)}function O0e(n,e){var t,i;return t=u(ab(n.d,e),14),t?(i=e,n.e.pc(i,t)):null}function GC(n,e){var t,i;for(i=n.Kc();i.Ob();)t=u(i.Pb(),70),H(t,(G(),pp),e)}function D0e(n){var e;return e=K(Y(k(n,(nn(),S1)))),e<0&&(e=0,H(n,S1,e)),e}function $0e(n,e,t){var i;i=j.Math.max(0,n.b/2-.5),g6(t,i,1),W(e,new L7n(t,i))}function F0e(n,e,t){var i;return i=n.a.e[u(e.a,10).p]-n.a.e[u(t.a,10).p],Gt(m8(i))}function lIn(n,e,t,i,r,c){var o;o=C$(i),Hi(o,r),Ei(o,c),Tn(n.a,i,new EE(o,e,t.f))}function aIn(n,e){var t;if(t=R7(n.Tg(),e),!t)throw T(new Hn(Pl+e+MB));return t}function ob(n,e){var t;for(t=n;At(t);)if(t=At(t),t==e)return!0;return!1}function x0e(n,e){var t,i,r;for(i=e.a.cd(),t=u(e.a.dd(),14).gc(),r=0;r0&&(n.a/=e,n.b/=e),n}function ts(n){var e;return n.w?n.w:(e=Gle(n),e&&!e.kh()&&(n.w=e),e)}function q0e(n){var e;return n==null?null:(e=u(n,190),Gve(e,e.length))}function D(n,e){if(n.g==null||e>=n.i)throw T(new xO(e,n.i));return n.li(e,n.g[e])}function G0e(n){var e,t;for(e=n.a.d.j,t=n.c.d.j;e!=t;)ko(n.b,e),e=yT(e);ko(n.b,e)}function z0e(n){var e;for(e=0;e=14&&e<=16))),n}function gIn(n,e,t){var i=function(){return n.apply(i,arguments)};return e.apply(i,t),i}function pIn(n,e,t){var i,r;i=e;do r=K(n.p[i.p])+t,n.p[i.p]=r,i=n.a[i.p];while(i!=e)}function O3(n,e){var t,i;i=n.a,t=Tge(n,e,null),i!=e&&!n.e&&(t=j4(n,e,t)),t&&t.Fi()}function tV(n,e){return Yo(),mo(Cl),j.Math.abs(n-e)<=Cl||n==e||isNaN(n)&&isNaN(e)}function iV(n,e){return Yo(),mo(Cl),j.Math.abs(n-e)<=Cl||n==e||isNaN(n)&&isNaN(e)}function X0e(n,e){return yl(),Uc(n.b.c.length-n.e.c.length,e.b.c.length-e.e.c.length)}function xw(n,e){return Uie(J5(n,e,ge(Ni(ah,rh(ge(Ni(e==null?0:mt(e),dh)),15)))))}function vIn(){vIn=N,$Wn=Fe((Qn(),A(M(zR,1),z,267,0,[ti,gi,Xt,Tc,Qu,vf])))}function mIn(){mIn=N,_Zn=Fe((vb(),A(M(UK,1),z,291,0,[zK,gy,wy,GK,dy,by])))}function kIn(){kIn=N,FZn=Fe((oh(),A(M(Rfn,1),z,248,0,[HK,ly,ay,xP,$P,FP])))}function yIn(){yIn=N,uXn=Fe((q2(),A(M(rv,1),z,227,0,[iv,ym,tv,qb,Cg,Eg])))}function jIn(){jIn=N,pXn=Fe((h4(),A(M(sun,1),z,275,0,[Cm,iun,uun,cun,run,tun])))}function EIn(){EIn=N,gXn=Fe((A7(),A(M(eun,1),z,274,0,[LS,Ycn,nun,Jcn,Zcn,p_])))}function CIn(){CIn=N,BQn=Fe((JT(),A(M(Hsn,1),z,313,0,[Q_,_sn,V_,Rsn,Ksn,sP])))}function TIn(){TIn=N,bXn=Fe((eM(),A(M(Xcn,1),z,276,0,[d_,a_,w_,b_,g_,FS])))}function MIn(){MIn=N,VJn=Fe((k6(),A(M(XJn,1),z,327,0,[pP,aK,bK,dK,wK,lK])))}function AIn(){AIn=N,ane=Fe((Tu(),A(M(qP,1),z,273,0,[Gl,n1,Ty,s9,u9,Pp])))}function SIn(){SIn=N,rne=Fe((ZT(),A(M(xhn,1),z,312,0,[uH,Dhn,Fhn,Ihn,$hn,Ohn])))}function V0e(){return jb(),A(M(lr,1),z,93,0,[So,Zh,Po,Oo,yh,eo,as,Io,no])}function UC(n,e){var t;t=n.a,n.a=e,n.Db&4&&!(n.Db&1)&&et(n,new rb(n,0,t,n.a))}function WC(n,e){var t;t=n.b,n.b=e,n.Db&4&&!(n.Db&1)&&et(n,new rb(n,1,t,n.b))}function D3(n,e){var t;t=n.b,n.b=e,n.Db&4&&!(n.Db&1)&&et(n,new rb(n,3,t,n.b))}function Bd(n,e){var t;t=n.f,n.f=e,n.Db&4&&!(n.Db&1)&&et(n,new rb(n,3,t,n.f))}function Rd(n,e){var t;t=n.g,n.g=e,n.Db&4&&!(n.Db&1)&&et(n,new rb(n,4,t,n.g))}function Zc(n,e){var t;t=n.i,n.i=e,n.Db&4&&!(n.Db&1)&&et(n,new rb(n,5,t,n.i))}function nu(n,e){var t;t=n.j,n.j=e,n.Db&4&&!(n.Db&1)&&et(n,new rb(n,6,t,n.j))}function $3(n,e){var t;t=n.j,n.j=e,n.Db&4&&!(n.Db&1)&&et(n,new rb(n,1,t,n.j))}function F3(n,e){var t;t=n.c,n.c=e,n.Db&4&&!(n.Db&1)&&et(n,new rb(n,4,t,n.c))}function x3(n,e){var t;t=n.k,n.k=e,n.Db&4&&!(n.Db&1)&&et(n,new rb(n,2,t,n.k))}function G$(n,e){var t;t=n.d,n.d=e,n.Db&4&&!(n.Db&1)&&et(n,new p$(n,2,t,n.d))}function d1(n,e){var t;t=n.s,n.s=e,n.Db&4&&!(n.Db&1)&&et(n,new p$(n,4,t,n.s))}function hb(n,e){var t;t=n.t,n.t=e,n.Db&4&&!(n.Db&1)&&et(n,new p$(n,5,t,n.t))}function L3(n,e){var t;t=n.F,n.F=e,n.Db&4&&!(n.Db&1)&&et(n,new wi(n,1,5,t,e))}function Q8(n,e){var t;return t=u(te(($j(),eI),n),55),t?t.xj(e):F(Zn,rn,1,e,5,1)}function Bh(n,e){var t,i;return t=e in n.a,t&&(i=Dh(n,e).he(),i)?i.a:null}function Q0e(n,e){var t,i,r;return t=(i=(ad(),r=new QH,r),e&&zY(i,e),i),aV(t,n),t}function PIn(n,e,t){if(W3(n,t),!n.Bk()&&t!=null&&!n.wj(t))throw T(new xI);return t}function IIn(n,e){return n.n=e,n.n?(n.f=new X,n.e=new X):(n.f=null,n.e=null),n}function Ae(n,e,t,i,r,c){var o;return o=LD(n,e),DIn(t,o),o.i=r?8:0,o.f=i,o.e=r,o.g=c,o}function rV(n,e,t,i,r){this.d=e,this.k=i,this.f=r,this.o=-1,this.p=1,this.c=n,this.a=t}function cV(n,e,t,i,r){this.d=e,this.k=i,this.f=r,this.o=-1,this.p=2,this.c=n,this.a=t}function uV(n,e,t,i,r){this.d=e,this.k=i,this.f=r,this.o=-1,this.p=6,this.c=n,this.a=t}function sV(n,e,t,i,r){this.d=e,this.k=i,this.f=r,this.o=-1,this.p=7,this.c=n,this.a=t}function oV(n,e,t,i,r){this.d=e,this.j=i,this.e=r,this.o=-1,this.p=4,this.c=n,this.a=t}function OIn(n,e){var t,i,r,c;for(i=e,r=0,c=i.length;r=0),Q2e(n.d,n.c)<0&&(n.a=n.a-1&n.d.a.length-1,n.b=n.d.c),n.c=-1}function fV(n){return n.a<54?n.f<0?-1:n.f>0?1:0:(!n.c&&(n.c=h7(n.f)),n.c).e}function mo(n){if(!(n>=0))throw T(new Hn("tolerance ("+n+") must be >= 0"));return n}function N3(){return _K||(_K=new kBn,_w(_K,A(M(mg,1),rn,130,0,[new nq]))),_K}function ur(){ur=N,Bm=new kO(K6,0),Au=new kO("INPUT",1),xc=new kO("OUTPUT",2)}function VC(){VC=N,Hcn=new bO("ARD",0),DS=new bO("MSD",1),o_=new bO("MANUAL",2)}function _d(){_d=N,ry=new TO("BARYCENTER",0),_m=new TO(rHn,1),aP=new TO(cHn,2)}function J8(n,e){var t;if(t=n.gc(),e<0||e>t)throw T(new V0(e,t));return new AU(n,e)}function xIn(n,e){var t;return I(e,42)?n.c.Mc(e):(t=NF(n,e),IT(n,e),t)}function wr(n,e,t){return Ca(n,e),Ic(n,t),d1(n,0),hb(n,1),p1(n,!0),g1(n,!0),n}function is(n,e){if(n<0)throw T(new Hn(e+" cannot be negative but was: "+n));return n}function LIn(n,e){var t,i;for(t=0,i=n.gc();t0?u(un(t.a,i-1),10):null}function Q5(n,e){var t;t=n.k,n.k=e,n.Db&4&&!(n.Db&1)&&et(n,new wi(n,1,2,t,n.k))}function JC(n,e){var t;t=n.f,n.f=e,n.Db&4&&!(n.Db&1)&&et(n,new wi(n,1,8,t,n.f))}function YC(n,e){var t;t=n.i,n.i=e,n.Db&4&&!(n.Db&1)&&et(n,new wi(n,1,7,t,n.i))}function aV(n,e){var t;t=n.a,n.a=e,n.Db&4&&!(n.Db&1)&&et(n,new wi(n,1,8,t,n.a))}function dV(n,e){var t;t=n.b,n.b=e,n.Db&4&&!(n.Db&1)&&et(n,new wi(n,1,0,t,n.b))}function bV(n,e){var t;t=n.b,n.b=e,n.Db&4&&!(n.Db&1)&&et(n,new wi(n,1,0,t,n.b))}function wV(n,e){var t;t=n.c,n.c=e,n.Db&4&&!(n.Db&1)&&et(n,new wi(n,1,1,t,n.c))}function gV(n,e){var t;t=n.c,n.c=e,n.Db&4&&!(n.Db&1)&&et(n,new wi(n,1,1,t,n.c))}function U$(n,e){var t;t=n.c,n.c=e,n.Db&4&&!(n.Db&1)&&et(n,new wi(n,1,4,t,n.c))}function pV(n,e){var t;t=n.d,n.d=e,n.Db&4&&!(n.Db&1)&&et(n,new wi(n,1,1,t,n.d))}function W$(n,e){var t;t=n.D,n.D=e,n.Db&4&&!(n.Db&1)&&et(n,new wi(n,1,2,t,n.D))}function X$(n,e){n.r>0&&n.c0&&n.g!=0&&X$(n.i,e/n.r*n.i.d))}function cbe(n,e,t){var i;n.b=e,n.a=t,i=(n.a&512)==512?new T9n:new ZH,n.c=y7e(i,n.b,n.a)}function zIn(n,e){return zh(n.e,e)?(er(),R$(e)?new IE(e,n):new i8(e,n)):new Nkn(e,n)}function ZC(n,e){return zie(Y5(n.a,e,ge(Ni(ah,rh(ge(Ni(e==null?0:mt(e),dh)),15)))))}function ube(n,e,t){return cb(n,new Hvn(e),new mln,new qvn(t),A(M(Nu,1),z,132,0,[]))}function sbe(n){var e,t;return 0>n?new PG:(e=n+1,t=new wSn(e,n),new oU(null,t))}function obe(n,e){Pn();var t;return t=new s2(1),mi(n)?kr(t,n,e):_c(t.f,n,e),new DI(t)}function fbe(n,e){var t,i;return t=n.o+n.p,i=e.o+e.p,te?(e<<=1,e>0?e:L6):e}function V$(n){switch(Rz(n.e!=3),n.e){case 2:return!1;case 0:return!0}return wde(n)}function WIn(n,e){var t;return I(e,8)?(t=u(e,8),n.a==t.a&&n.b==t.b):!1}function Q$(n,e,t){var i,r,c;return c=e>>5,r=e&31,i=ci(J0(n.n[t][c],ge(Ih(r,1))),3),i}function lbe(n,e){var t,i;for(i=e.vc().Kc();i.Ob();)t=u(i.Pb(),42),XT(n,t.cd(),t.dd())}function abe(n,e){var t;t=new Wy,u(e.b,65),u(e.b,65),u(e.b,65),Yc(e.a,new BU(n,t,e))}function vV(n,e){var t;t=n.b,n.b=e,n.Db&4&&!(n.Db&1)&&et(n,new wi(n,1,21,t,n.b))}function mV(n,e){var t;t=n.d,n.d=e,n.Db&4&&!(n.Db&1)&&et(n,new wi(n,1,11,t,n.d))}function nT(n,e){var t;t=n.j,n.j=e,n.Db&4&&!(n.Db&1)&&et(n,new wi(n,1,13,t,n.j))}function XIn(n,e,t){var i,r,c;for(c=n.a.length-1,r=n.b,i=0;i>>31;i!=0&&(n[t]=i)}function jbe(n,e){Pn();var t,i;for(i=new X,t=0;t0&&(this.g=this.ri(this.i+(this.i/8|0)+1),n.Qc(this.g))}function $t(n,e){ME.call(this,ree,n,e),this.b=this,this.a=Kc(n.Tg(),On(this.e.Tg(),this.c))}function Z5(n,e){var t,i;for(_n(e),i=e.vc().Kc();i.Ob();)t=u(i.Pb(),42),n.zc(t.cd(),t.dd())}function Dbe(n,e,t){var i;for(i=t.Kc();i.Ob();)if(!yC(n,e,i.Pb()))return!1;return!0}function $be(n,e,t,i,r){var c;return t&&(c=yt(e.Tg(),n.c),r=t.gh(e,-1-(c==-1?i:c),null,r)),r}function Fbe(n,e,t,i,r){var c;return t&&(c=yt(e.Tg(),n.c),r=t.ih(e,-1-(c==-1?i:c),null,r)),r}function dOn(n){var e;if(n.b==-2){if(n.e==0)e=-1;else for(e=0;n.a[e]==0;e++);n.b=e}return n.b}function bOn(n){switch(n.g){case 2:return J(),Gn;case 4:return J(),Vn;default:return n}}function wOn(n){switch(n.g){case 1:return J(),ae;case 3:return J(),Kn;default:return n}}function xbe(n){var e,t,i;return n.j==(J(),Kn)&&(e=GLn(n),t=au(e,Vn),i=au(e,Gn),i||i&&t)}function Lbe(n){var e,t;return e=u(n.e&&n.e(),9),t=u(IW(e,e.length),9),new ks(e,t,e.length)}function Nbe(n,e){le(e,iHn,1),TQ(ire(new tj((Vv(),new GD(n,!1,!1,new BH))))),ce(e)}function Y8(n,e){return qn(),mi(n)?DX(n,Te(e)):G0(n)?TD(n,Y(e)):q0(n)?Kfe(n,sn(e)):n.wd(e)}function TV(n,e){e.q=n,n.d=j.Math.max(n.d,e.r),n.b+=e.d+(n.a.c.length==0?0:n.c),W(n.a,e)}function R3(n,e){var t,i,r,c;return r=n.c,t=n.c+n.b,c=n.d,i=n.d+n.a,e.a>r&&e.ac&&e.b1||n.Ob())return++n.a,n.g=0,e=n.i,n.Ob(),e;throw T(new ic)}function Vbe(n){gyn();var e;return M7n(hK,n)||(e=new Zwn,e.a=n,wU(hK,n,e)),u(br(hK,n),635)}function Ks(n){var e,t,i,r;return r=n,i=0,r<0&&(r+=$a,i=Wh),t=Gt(r/J2),e=Gt(r-t*J2),Bc(e,t,i)}function Z8(n){var e,t,i;for(i=0,t=new o2(n.a);t.a>22),r=n.h+e.h+(i>>22),Bc(t&Lu,i&Lu,r&Wh)}function xOn(n,e){var t,i,r;return t=n.l-e.l,i=n.m-e.m+(t>>22),r=n.h-e.h+(i>>22),Bc(t&Lu,i&Lu,r&Wh)}function i7(n){var e;return n<128?(e=(QEn(),yin)[n],!e&&(e=yin[n]=new wq(n)),e):new wq(n)}function jt(n){var e;return I(n,78)?n:(e=n&&n.__java$exception,e||(e=new CDn(n),Kmn(e)),e)}function r7(n){if(I(n,186))return u(n,118);if(n)return null;throw T(new c2(Iqn))}function LOn(n,e){if(e==null)return!1;for(;n.a!=n.b;)if(tt(e,vT(n)))return!0;return!1}function OV(n){return n.a.Ob()?!0:n.a!=n.d?!1:(n.a=new lX(n.e.f),n.a.Ob())}function Yt(n,e){var t,i;return t=e.Pc(),i=t.length,i==0?!1:(GU(n.c,n.c.length,t),!0)}function hwe(n,e,t){var i,r;for(r=e.vc().Kc();r.Ob();)i=u(r.Pb(),42),n.yc(i.cd(),i.dd(),t);return n}function NOn(n,e){var t,i;for(i=new E(n.b);i.a=0,"Negative initial capacity"),TE(e>=0,"Non-positive load factor"),Eu(this)}function uF(n,e,t){return n>=128?!1:n<64?b5(ci(Ih(1,n),t),0):b5(ci(Ih(1,n-64),e),0)}function mwe(n,e){return!n||!e||n==e?!1:zd(n.b.c,e.b.c+e.b.b)<0&&zd(e.b.c,n.b.c+n.b.b)<0}function VOn(n){var e,t,i;return t=n.n,i=n.o,e=n.d,new ys(t.a-e.b,t.b-e.d,i.a+(e.b+e.c),i.b+(e.d+e.a))}function kwe(n){var e,t,i,r;for(t=n.a,i=0,r=t.length;ii)throw T(new V0(e,i));return n.hi()&&(t=aMn(n,t)),n.Vh(e,t)}function s7(n,e,t){return t==null?(!n.q&&(n.q=new we),O2(n.q,e)):(!n.q&&(n.q=new we),it(n.q,e,t)),n}function H(n,e,t){return t==null?(!n.q&&(n.q=new we),O2(n.q,e)):(!n.q&&(n.q=new we),it(n.q,e,t)),n}function QOn(n){var e,t;return t=new TC,Sr(t,n),H(t,(dl(),hp),n),e=new we,Cye(n,t,e),QEe(n,t,e),t}function Ewe(n){eg();var e,t,i;for(t=F(ai,q,8,2,0,1),i=0,e=0;e<2;e++)i+=.5,t[e]=r3e(i,n);return t}function JOn(n,e){var t,i,r,c;for(t=!1,i=n.a[e].length,c=0;c>=1);return e}function ZOn(n){var e,t;return t=x7(n.h),t==32?(e=x7(n.m),e==32?x7(n.l)+32:e+20-10):t-12}function t6(n){var e;return e=n.a[n.b],e==null?null:(Mt(n.a,n.b,null),n.b=n.b+1&n.a.length-1,e)}function nDn(n){var e,t;return e=n.t-n.k[n.o.p]*n.d+n.j[n.o.p]>n.f,t=n.u+n.e[n.o.p]*n.d>n.f*n.s*n.d,e||t}function bT(n,e,t){var i,r;return i=new I$(e,t),r=new dI,n.b=zNn(n,n.b,i,r),r.b||++n.c,n.b.b=!1,r.d}function eDn(n,e,t){var i,r,c,o;for(o=c6(e,t),c=0,r=o.Kc();r.Ob();)i=u(r.Pb(),11),it(n.c,i,Q(c++))}function wl(n){var e,t;for(t=new E(n.a.b);t.at&&(t=n[e]);return t}function tDn(n,e,t){var i;return i=new X,XY(n,e,i,(J(),Vn),!0,!1),XY(n,t,i,Gn,!1,!1),i}function oF(n,e,t){var i,r,c,o;return c=null,o=e,r=Fd(o,"labels"),i=new jkn(n,t),c=(Hme(i.a,i.b,r),r),c}function Twe(n,e,t,i){var r;return r=xY(n,e,t,i),!r&&(r=Mge(n,t,i),r&&!rg(n,e,r))?null:r}function Mwe(n,e,t,i){var r;return r=LY(n,e,t,i),!r&&(r=TF(n,t,i),r&&!rg(n,e,r))?null:r}function iDn(n,e){var t;for(t=0;t1||e>=0&&n.b<3)}function o7(n){var e,t,i;for(e=new hu,i=_e(n,0);i.b!=i.d.c;)t=u(Re(i),8),s3(e,0,new mr(t));return e}function ja(n){var e,t;for(t=new E(n.a.b);t.ai?1:0}function QV(n,e){return ANn(n,e)?(Tn(n.b,u(k(e,(G(),Gb)),21),e),Ke(n.a,e),!0):!1}function Bwe(n){var e,t;e=u(k(n,(G(),Mu)),10),e&&(t=e.c,Qc(t.a,e),t.a.c.length==0&&Qc(Gi(e).b,t))}function fDn(n){return pf?F($zn,lKn,572,0,0,1):u(lf(n.a,F($zn,lKn,572,n.a.c.length,0,1)),842)}function Rwe(n,e,t,i){return QE(),new GI(A(M(Ha,1),OM,42,0,[(ex(n,e),new bd(n,e)),(ex(t,i),new bd(t,i))]))}function Rw(n,e,t){var i,r;return r=(i=new RI,i),wr(r,e,t),me((!n.q&&(n.q=new V(co,n,11,10)),n.q),r),r}function aF(n){var e,t,i,r;for(r=lre($ne,n),t=r.length,i=F(tn,q,2,t,6,1),e=0;e=n.b.c.length||(JV(n,2*e+1),t=2*e+2,t=0&&n[i]===e[i];i--);return i<0?0:cO(ci(n[i],fr),ci(e[i],fr))?-1:1}function _we(n,e){var t,i;for(i=_e(n,0);i.b!=i.d.c;)t=u(Re(i),214),t.e.length>0&&(e.td(t),t.i&&Fge(t))}function bF(n,e){var t,i;return i=u(Rn(n.a,4),126),t=F(bH,qB,415,e,0,1),i!=null&&gc(i,0,t,0,i.length),t}function lDn(n,e){var t;return t=new zx((n.f&256)!=0,n.i,n.a,n.d,(n.f&16)!=0,n.j,n.g,e),n.e!=null||(t.c=n),t}function Kwe(n,e){var t,i;for(i=n.Zb().Cc().Kc();i.Ob();)if(t=u(i.Pb(),14),t.Hc(e))return!0;return!1}function wF(n,e,t,i,r){var c,o;for(o=t;o<=r;o++)for(c=e;c<=i;c++)if(zw(n,c,o))return!0;return!1}function aDn(n,e,t){var i,r,c,o;for(_n(t),o=!1,c=n.Zc(e),r=t.Kc();r.Ob();)i=r.Pb(),c.Rb(i),o=!0;return o}function Hwe(n,e){var t;return n===e?!0:I(e,83)?(t=u(e,83),ZJ(Ed(n),t.vc())):!1}function dDn(n,e,t){var i,r;for(r=t.Kc();r.Ob();)if(i=u(r.Pb(),42),n.re(e,i.dd()))return!0;return!1}function bDn(n,e,t){return n.d[e.p][t.p]||(Bpe(n,e,t),n.d[e.p][t.p]=!0,n.d[t.p][e.p]=!0),n.a[e.p][t.p]}function W3(n,e){if(!n.ai()&&e==null)throw T(new Hn("The 'no null' constraint is violated"));return e}function X3(n,e){n.D==null&&n.B!=null&&(n.D=n.B,n.B=null),W$(n,e==null?null:(_n(e),e)),n.C&&n.yk(null)}function qwe(n,e){var t;return!n||n==e||!li(e,(G(),m0))?!1:(t=u(k(e,(G(),m0)),10),t!=n)}function gF(n){switch(n.i){case 2:return!0;case 1:return!1;case-1:++n.c;default:return n.pl()}}function wDn(n){switch(n.i){case-2:return!0;case-1:return!1;case 1:--n.c;default:return n.ql()}}function gDn(n){cMn.call(this,"The given string does not match the expected format for individual spacings.",n)}function Xu(){Xu=N,ws=new Jj("ELK",0),Yhn=new Jj("JSON",1),Jhn=new Jj("DOT",2),Zhn=new Jj("SVG",3)}function f7(){f7=N,CP=new AO(Xh,0),Don=new AO("RADIAL_COMPACTION",1),$on=new AO("WEDGE_COMPACTION",2)}function hf(){hf=N,Win=new uO("CONCURRENT",0),hs=new uO("IDENTITY_FINISH",1),Rb=new uO("UNORDERED",2)}function pF(){pF=N,jrn=(Aj(),SR),yrn=new In(pnn,jrn),OUn=new kt(vnn),DUn=new kt(mnn),$Un=new kt(knn)}function V3(){V3=N,xcn=new j0n,Lcn=new E0n,zWn=new C0n,GWn=new T0n,qWn=new M0n,Fcn=(_n(qWn),new uln)}function Q3(){Q3=N,sK=new jO("CONSERVATIVE",0),con=new jO("CONSERVATIVE_SOFT",1),Rm=new jO("SLOPPY",2)}function wT(){wT=N,_hn=new vd(15),cne=new tr((Xe(),nd),_hn),t9=Mp,Lhn=HZn,Nhn=Za,Rhn=Kg,Bhn=BP}function vF(n,e,t){var i,r,c;for(i=new Ct,c=_e(t,0);c.b!=c.d.c;)r=u(Re(c),8),Ke(i,new mr(r));aDn(n,e,i)}function Gwe(n){var e,t,i;for(e=0,i=F(ai,q,8,n.b,0,1),t=_e(n,0);t.b!=t.d.c;)i[e++]=u(Re(t),8);return i}function ZV(n){var e;return e=(!n.a&&(n.a=new V(e1,n,9,5)),n.a),e.i!=0?ore(u(D(e,0),678)):null}function zwe(n,e){var t;return t=qi(n,e),cO(h$(n,e),0)|Cre(h$(n,t),0)?t:qi(IM,h$(J0(t,63),1))}function Uwe(n,e){var t;t=cn((xF(),uP))!=null&&e.wg()!=null?K(Y(e.wg()))/K(Y(cn(uP))):1,it(n.b,e,t)}function Wwe(n,e){var t,i;return t=u(n.d.Bc(e),14),t?(i=n.e.hc(),i.Gc(t),n.e.d-=t.gc(),t.$b(),i):null}function nQ(n,e){var t,i;if(i=n.c[e],i!=0)for(n.c[e]=0,n.d-=i,t=e+1;t0)return a3(e-1,n.a.c.length),h1(n.a,e-1);throw T(new qmn)}function Xwe(n,e,t){if(e<0)throw T(new vr(_Hn+e));ee)throw T(new Hn(xM+n+aKn+e));if(n<0||e>t)throw T(new bG(xM+n+rnn+e+tnn+t))}function mDn(n){if(!n.a||!(n.a.i&8))throw T(new Dr("Enumeration class expected for layout option "+n.f))}function lb(n){var e;++n.j,n.i==0?n.g=null:n.ihA?n-t>hA:t-n>hA}function kF(n,e){return!n||e&&!n.j||I(n,124)&&u(n,124).a.b==0?0:n.Re()}function pT(n,e){return!n||e&&!n.k||I(n,124)&&u(n,124).a.a==0?0:n.Se()}function h7(n){return jl(),n<0?n!=-1?new VQ(-1,-n):gR:n<=10?xin[Gt(n)]:new VQ(1,n)}function tQ(n){throw cF(),T(new L9n("Unexpected typeof result '"+n+"'; please report this bug to the GWT team"))}function CDn(n){H9n(),oE(this),eC(this),this.e=n,NNn(this,n),this.g=n==null?iu:Lr(n),this.a="",this.b=n,this.a=""}function iQ(){this.a=new qgn,this.f=new O6n(this),this.b=new D6n(this),this.i=new $6n(this),this.e=new F6n(this)}function TDn(){iie.call(this,new _X(sb(16))),is(2,W_n),this.b=2,this.a=new RW(null,null,0,null),$9(this.a,this.a)}function i6(){i6=N,J_=new vO("DUMMY_NODE_OVER",0),qsn=new vO("DUMMY_NODE_UNDER",1),oP=new vO("EQUAL",2)}function yF(){yF=N,_R=sMn(A(M(e9,1),z,103,0,[(sr(),Zs),Ao])),KR=sMn(A(M(e9,1),z,103,0,[Yh,Jh]))}function jF(n){return(J(),cu).Hc(n.j)?K(Y(k(n,(G(),hv)))):Gr(A(M(ai,1),q,8,0,[n.i.n,n.n,n.a])).b}function Zwe(n){var e,t,i,r;for(i=n.b.a,t=i.a.ec().Kc();t.Ob();)e=u(t.Pb(),561),r=new pNn(e,n.e,n.f),W(n.g,r)}function Ca(n,e){var t,i,r;i=n.nk(e,null),r=null,e&&(r=(Qp(),t=new ud,t),O3(r,n.r)),i=af(n,r,i),i&&i.Fi()}function nge(n,e){var t,i;for(i=Fu(n.d,1)!=0,t=!0;t;)t=!1,t=e.c.Tf(e.e,i),t=t|_7(n,e,i,!1),i=!i;yV(n)}function rQ(n,e){var t,i,r;return i=!1,t=e.q.d,e.dr&&(JFn(e.q,r),i=t!=e.q.d)),i}function MDn(n,e){var t,i,r,c,o,f,h,l;return h=e.i,l=e.j,i=n.f,r=i.i,c=i.j,o=h-r,f=l-c,t=j.Math.sqrt(o*o+f*f),t}function cQ(n,e){var t,i;return i=OT(n),i||(t=(bL(),Yxn(e)),i=new Fmn(t),me(i.Vk(),n)),i}function l7(n,e){var t,i;return t=u(n.c.Bc(e),14),t?(i=n.hc(),i.Gc(t),n.d-=t.gc(),t.$b(),n.mc(i)):n.jc()}function ADn(n,e){var t;for(t=0;t=n.c.b:n.a<=n.c.b))throw T(new ic);return e=n.a,n.a+=n.c.c,++n.b,Q(e)}function ige(n){var e;return e=new uIn(n),O8(n.a,SWn,new Ku(A(M(Rk,1),rn,369,0,[e]))),e.d&&W(e.f,e.d),e.f}function EF(n){var e;return e=new Mz(n.a),Sr(e,n),H(e,(G(),rt),n),e.o.a=n.g,e.o.b=n.f,e.n.a=n.i,e.n.b=n.j,e}function rge(n,e,t,i){var r,c;for(c=n.Kc();c.Ob();)r=u(c.Pb(),70),r.n.a=e.a+(i.a-r.o.a)/2,r.n.b=e.b,e.b+=r.o.b+t}function cge(n,e,t){var i,r;for(r=e.a.a.ec().Kc();r.Ob();)if(i=u(r.Pb(),57),_Tn(n,i,t))return!0;return!1}function uge(n){var e,t;for(t=new E(n.r);t.a=0?e:-e;i>0;)i%2==0?(t*=t,i=i/2|0):(r*=t,i-=1);return e<0?1/r:r}function hge(n,e){var t,i,r;for(r=1,t=n,i=e>=0?e:-e;i>0;)i%2==0?(t*=t,i=i/2|0):(r*=t,i-=1);return e<0?1/r:r}function FDn(n){var e,t;if(n!=null)for(t=0;t0&&(t=u(un(n.a,n.a.c.length-1),570),QV(t,e))||W(n.a,new dSn(e))}function wge(n){wo();var e,t;e=n.d.c-n.e.c,t=u(n.g,145),Yc(t.b,new _5n(e)),Yc(t.c,new K5n(e)),$i(t.i,new H5n(e))}function BDn(n){var e;return e=new V1,e.a+="VerticalSegment ",rc(e,n.e),e.a+=" ",De(e,Lz(new YI,new E(n.k))),e.a}function gge(n){var e;return e=u(xd(n.c.c,""),229),e||(e=new M2(Vp(Xp(new Zg,""),"Other")),Aa(n.c.c,"",e)),e}function r6(n){var e;return n.Db&64?yo(n):(e=new Bs(yo(n)),e.a+=" (name: ",dr(e,n.zb),e.a+=")",e.a)}function hQ(n,e,t){var i,r;return r=n.sb,n.sb=e,n.Db&4&&!(n.Db&1)&&(i=new wi(n,1,4,r,e),t?t.Ei(i):t=i),t}function CF(n,e){var t,i,r;for(t=0,r=zr(n,e).Kc();r.Ob();)i=u(r.Pb(),11),t+=k(i,(G(),Mu))!=null?1:0;return t}function Kw(n,e,t){var i,r,c;for(i=0,c=_e(n,0);c.b!=c.d.c&&(r=K(Y(Re(c))),!(r>t));)r>=e&&++i;return i}function pge(n,e,t){var i,r;return i=new Lh(n.e,3,13,null,(r=e.c,r||(Sn(),Cf)),v1(n,e),!1),t?t.Ei(i):t=i,t}function vge(n,e,t){var i,r;return i=new Lh(n.e,4,13,(r=e.c,r||(Sn(),Cf)),null,v1(n,e),!1),t?t.Ei(i):t=i,t}function lQ(n,e,t){var i,r;return r=n.r,n.r=e,n.Db&4&&!(n.Db&1)&&(i=new wi(n,1,8,r,n.r),t?t.Ei(i):t=i),t}function w1(n,e){var t,i;return t=u(e,676),i=t.vk(),!i&&t.wk(i=I(e,88)?new Fkn(n,u(e,26)):new eAn(n,u(e,148))),i}function a7(n,e,t){var i;n.qi(n.i+1),i=n.oi(e,t),e!=n.i&&gc(n.g,e,n.g,e+1,n.i-e),Mt(n.g,e,i),++n.i,n.bi(e,t),n.ci()}function mge(n,e){var t;return e.a&&(t=e.a.a.length,n.a?De(n.a,n.b):n.a=new Ju(n.d),iAn(n.a,e.a,e.d.length,t)),n}function kge(n,e){var t,i,r,c;if(e.vi(n.a),c=u(Rn(n.a,8),1936),c!=null)for(t=c,i=0,r=t.length;it)throw T(new vr(xM+n+rnn+e+", size: "+t));if(n>e)throw T(new Hn(xM+n+aKn+e))}function As(n,e,t){if(e<0)bY(n,t);else{if(!t.Ij())throw T(new Hn(Pl+t.ne()+em));u(t,66).Nj().Vj(n,n.yh(),e)}}function Ege(n,e,t,i,r,c,o,f){var h;for(h=t;c=i||e=65&&n<=70?n-65+10:n>=97&&n<=102?n-97+10:n>=48&&n<=57?n-48:0}function zDn(n){var e;return n.Db&64?yo(n):(e=new Bs(yo(n)),e.a+=" (source: ",dr(e,n.d),e.a+=")",e.a)}function Tge(n,e,t){var i,r;return r=n.a,n.a=e,n.Db&4&&!(n.Db&1)&&(i=new wi(n,1,5,r,n.a),t?FJ(t,i):t=i),t}function g1(n,e){var t;t=(n.Bb&256)!=0,e?n.Bb|=256:n.Bb&=-257,n.Db&4&&!(n.Db&1)&&et(n,new vo(n,1,2,t,e))}function dQ(n,e){var t;t=(n.Bb&256)!=0,e?n.Bb|=256:n.Bb&=-257,n.Db&4&&!(n.Db&1)&&et(n,new vo(n,1,8,t,e))}function kT(n,e){var t;t=(n.Bb&256)!=0,e?n.Bb|=256:n.Bb&=-257,n.Db&4&&!(n.Db&1)&&et(n,new vo(n,1,8,t,e))}function p1(n,e){var t;t=(n.Bb&512)!=0,e?n.Bb|=512:n.Bb&=-513,n.Db&4&&!(n.Db&1)&&et(n,new vo(n,1,3,t,e))}function bQ(n,e){var t;t=(n.Bb&512)!=0,e?n.Bb|=512:n.Bb&=-513,n.Db&4&&!(n.Db&1)&&et(n,new vo(n,1,9,t,e))}function u6(n,e){var t;return n.b==-1&&n.a&&(t=n.a.Gj(),n.b=t?n.c.Xg(n.a.aj(),t):yt(n.c.Tg(),n.a)),n.c.Og(n.b,e)}function Q(n){var e,t;return n>-129&&n<128?(e=n+128,t=(qEn(),jin)[e],!t&&(t=jin[e]=new gq(n)),t):new gq(n)}function J3(n){var e,t;return n>-129&&n<128?(e=n+128,t=(VEn(),Min)[e],!t&&(t=Min[e]=new vq(n)),t):new vq(n)}function wQ(n){var e,t;return e=n.k,e==(Qn(),Xt)?(t=u(k(n,(G(),ec)),61),t==(J(),Kn)||t==ae):!1}function Mge(n,e,t){var i,r,c;return c=(r=b4(n.b,e),r),c&&(i=u(jM(G8(n,c),""),26),i)?xY(n,i,e,t):null}function TF(n,e,t){var i,r,c;return c=(r=b4(n.b,e),r),c&&(i=u(jM(G8(n,c),""),26),i)?LY(n,i,e,t):null}function UDn(n,e){var t,i;for(i=new ie(n);i.e!=i.i.gc();)if(t=u(oe(i),138),B(e)===B(t))return!0;return!1}function s6(n,e,t){var i;if(i=n.gc(),e>i)throw T(new V0(e,i));if(n.hi()&&n.Hc(t))throw T(new Hn(yk));n.Xh(e,t)}function Age(n,e){var t;if(t=xw(n.i,e),t==null)throw T(new Af("Node did not exist in input."));return MV(e,t),null}function Sge(n,e){var t;if(t=R7(n,e),I(t,322))return u(t,34);throw T(new Hn(Pl+e+"' is not a valid attribute"))}function Pge(n,e,t){var i,r;for(r=I(e,99)&&u(e,18).Bb&Yi?new LO(e,n):new H3(e,n),i=0;ie?1:n==e?n==0?Zt(1/n,1/e):0:isNaN(n)?isNaN(e)?0:1:-1}function Bge(n,e){le(e,"Sort end labels",1),Rt(gt(qr(new $n(null,new xn(n.b,16)),new bdn),new wdn),new gdn),ce(e)}function o6(n,e,t){var i,r;return n.ej()?(r=n.fj(),i=Dx(n,e,t),n.$i(n.Zi(7,Q(t),i,e,r)),i):Dx(n,e,t)}function MF(n,e){var t,i,r;n.d==null?(++n.e,--n.f):(r=e.cd(),t=e.Sh(),i=(t&nt)%n.d.length,yde(n,i,hNn(n,i,t,r)))}function Y3(n,e){var t;t=(n.Bb&Eo)!=0,e?n.Bb|=Eo:n.Bb&=-1025,n.Db&4&&!(n.Db&1)&&et(n,new vo(n,1,10,t,e))}function Z3(n,e){var t;t=(n.Bb&Ib)!=0,e?n.Bb|=Ib:n.Bb&=-4097,n.Db&4&&!(n.Db&1)&&et(n,new vo(n,1,12,t,e))}function n4(n,e){var t;t=(n.Bb&mu)!=0,e?n.Bb|=mu:n.Bb&=-8193,n.Db&4&&!(n.Db&1)&&et(n,new vo(n,1,15,t,e))}function e4(n,e){var t;t=(n.Bb&Bb)!=0,e?n.Bb|=Bb:n.Bb&=-2049,n.Db&4&&!(n.Db&1)&&et(n,new vo(n,1,11,t,e))}function Rge(n,e){var t;return t=Zt(n.b.c,e.b.c),t!=0||(t=Zt(n.a.a,e.a.a),t!=0)?t:Zt(n.a.b,e.a.b)}function _ge(n,e){var t;if(t=te(n.k,e),t==null)throw T(new Af("Port did not exist in input."));return MV(e,t),null}function Kge(n){var e,t;for(t=wNn(ts(n)).Kc();t.Ob();)if(e=Te(t.Pb()),A6(n,e))return Vae((C7n(),zne),e);return null}function Hge(n,e){var t,i,r,c,o;for(o=Kc(n.e.Tg(),e),c=0,t=u(n.g,119),r=0;r>10)+rk&Ut,e[1]=(n&1023)+56320&Ut,Hs(e,0,e.length)}function jT(n){var e,t;return t=u(k(n,(nn(),ls)),103),t==(sr(),mh)?(e=K(Y(k(n,zS))),e>=1?Ao:Jh):t}function zge(n){switch(u(k(n,(nn(),Qh)),218).g){case 1:return new ewn;case 3:return new uwn;default:return new nwn}}function Ta(n){if(n.c)Ta(n.c);else if(n.d)throw T(new Dr("Stream already terminated, can't be modified or used"))}function PF(n){var e;return n.Db&64?yo(n):(e=new Bs(yo(n)),e.a+=" (identifier: ",dr(e,n.k),e.a+=")",e.a)}function QDn(n,e,t){var i,r;return i=(ad(),r=new Xy,r),UC(i,e),WC(i,t),n&&me((!n.a&&(n.a=new Jt(io,n,5)),n.a),i),i}function IF(n,e,t,i){var r,c;return _n(i),_n(t),r=n.xc(e),c=r==null?t:l7n(u(r,15),u(t,14)),c==null?n.Bc(e):n.zc(e,c),c}function Cn(n){var e,t,i,r;return t=(e=u(xo((i=n.gm,r=i.f,r==Ie?i:r)),9),new ks(e,u(bo(e,e.length),9),0)),ko(t,n),t}function Uge(n,e,t){var i,r;for(r=n.a.ec().Kc();r.Ob();)if(i=u(r.Pb(),10),t7(t,u(un(e,i.p),14)))return i;return null}function Wge(n,e,t){var i;try{Awe(n,e,t)}catch(r){throw r=jt(r),I(r,597)?(i=r,T(new EX(i))):T(r)}return e}function vl(n,e){var t;return $r(n)&&$r(e)&&(t=n-e,ik>1,n.k=t-1>>1}function OF(){_J();var n,e,t;t=qTe+++Date.now(),n=Gt(j.Math.floor(t*uk))&FM,e=Gt(t-n*enn),this.a=n^1502,this.b=e^tN}function Kh(n){var e,t,i;for(e=new X,i=new E(n.j);i.a34028234663852886e22?Ft:e<-34028234663852886e22?Vt:e}function JDn(n){return n-=n>>1&1431655765,n=(n>>2&858993459)+(n&858993459),n=(n>>4)+n&252645135,n+=n>>8,n+=n>>16,n&63}function YDn(n){var e,t,i,r;for(e=new Djn(n.Hd().gc()),r=0,i=$2(n.Hd().Kc());i.Ob();)t=i.Pb(),ole(e,t,Q(r++));return $5e(e.a)}function Zge(n,e){var t,i,r;for(r=new we,i=e.vc().Kc();i.Ob();)t=u(i.Pb(),42),it(r,t.cd(),Gbe(n,u(t.dd(),15)));return r}function yQ(n,e){n.n.c.length==0&&W(n.n,new lC(n.s,n.t,n.i)),W(n.b,e),iJ(u(un(n.n,n.n.c.length-1),211),e),oRn(n,e)}function Hw(n){return(n.c!=n.b.b||n.i!=n.g.b)&&(n.a.c=F(Zn,rn,1,0,5,1),Yt(n.a,n.b),Yt(n.a,n.g),n.c=n.b.b,n.i=n.g.b),n.a}function DF(n,e){var t,i,r;for(r=0,i=u(e.Kb(n),20).Kc();i.Ob();)t=u(i.Pb(),17),on(sn(k(t,(G(),mf))))||++r;return r}function n2e(n,e){var t,i,r;i=$w(e),r=K(Y(bb(i,(nn(),Mo)))),t=j.Math.max(0,r/2-.5),g6(e,t,1),W(n,new G7n(e,t))}function Ss(){Ss=N,Qk=new Q9(Xh,0),Sm=new Q9("FIRST",1),xl=new Q9(uHn,2),Pm=new Q9("LAST",3),Ub=new Q9(sHn,4)}function Hh(){Hh=N,rH=new Wj(K6,0),yy=new Wj("POLYLINE",1),Cv=new Wj("ORTHOGONAL",2),Sp=new Wj("SPLINES",3)}function ET(){ET=N,Jon=new PO("ASPECT_RATIO_DRIVEN",0),IK=new PO("MAX_SCALE_DRIVEN",1),Qon=new PO("AREA_DRIVEN",2)}function w7(){w7=N,AP=new IO("P1_STRUCTURE",0),SP=new IO("P2_PROCESSING_ORDER",1),PP=new IO("P3_EXECUTION",2)}function CT(){CT=N,CK=new MO("OVERLAP_REMOVAL",0),jK=new MO("COMPACTION",1),EK=new MO("GRAPH_SIZE_CALCULATION",2)}function zd(n,e){return Yo(),mo(Cl),j.Math.abs(n-e)<=Cl||n==e||isNaN(n)&&isNaN(e)?0:ne?1:pd(isNaN(n),isNaN(e))}function ZDn(n,e){var t,i;for(t=_e(n,0);t.b!=t.d.c;){if(i=x9(Y(Re(t))),i==e)return;if(i>e){a$(t);break}}y8(t,e)}function En(n,e){var t,i,r,c,o;if(t=e.f,Aa(n.c.d,t,e),e.g!=null)for(r=e.g,c=0,o=r.length;ce&&i.ue(n[c-1],n[c])>0;--c)o=n[c],Mt(n,c,n[c-1]),Mt(n,c-1,o)}function Ps(n,e,t,i){if(e<0)_Y(n,t,i);else{if(!t.Ij())throw T(new Hn(Pl+t.ne()+em));u(t,66).Nj().Tj(n,n.yh(),e,i)}}function TT(n,e){if(e==n.d)return n.e;if(e==n.e)return n.d;throw T(new Hn("Node "+e+" not part of edge "+n))}function t2e(n,e){switch(e.g){case 2:return n.b;case 1:return n.c;case 4:return n.d;case 3:return n.a;default:return!1}}function n$n(n,e){switch(e.g){case 2:return n.b;case 1:return n.c;case 4:return n.d;case 3:return n.a;default:return!1}}function jQ(n,e,t,i){switch(e){case 3:return n.f;case 4:return n.g;case 5:return n.i;case 6:return n.j}return aQ(n,e,t,i)}function i2e(n){return n.k!=(Qn(),ti)?!1:C3(new $n(null,new Cd(new re(ue(ni(n).a.Kc(),new Mn)))),new Hbn)}function r2e(n){return n.e==null?n:(!n.c&&(n.c=new zx((n.f&256)!=0,n.i,n.a,n.d,(n.f&16)!=0,n.j,n.g,null)),n.c)}function c2e(n,e){return n.h==tk&&n.m==0&&n.l==0?(e&&(Il=Bc(0,0,0)),eyn((I3(),gin))):(e&&(Il=Bc(n.l,n.m,n.h)),Bc(0,0,0))}function Lr(n){var e;return Array.isArray(n)&&n.im===Xg?J1(Du(n))+"@"+(e=mt(n)>>>0,e.toString(16)):n.toString()}function f6(n){var e;this.a=(e=u(n.e&&n.e(),9),new ks(e,u(bo(e,e.length),9),0)),this.b=F(Zn,rn,1,this.a.a.length,5,1)}function u2e(n){var e,t,i;for(this.a=new Sh,i=new E(n);i.a0&&(Me(e-1,n.length),n.charCodeAt(e-1)==58)&&!$F(n,a9,d9))}function $F(n,e,t){var i,r;for(i=0,r=n.length;i=r)return e.c+t;return e.c+e.b.gc()}function l2e(n,e){o3();var t,i,r,c;for(i=bPn(n),r=e,S3(i,0,i.length,r),t=0;t0&&(i+=r,++t);return t>1&&(i+=n.d*(t-1)),i}function CQ(n){var e,t,i;for(i=new i1,i.a+="[",e=0,t=n.gc();e0&&this.b>0&&cW(this.c,this.b,this.a)}function AQ(n){xF(),this.c=cf(A(M(sMe,1),rn,831,0,[LQn])),this.b=new we,this.a=n,it(this.b,uP,1),Yc(NQn,new q6n(this))}function e$n(n,e){var t;return n.d?zu(n.b,e)?u(te(n.b,e),51):(t=e.Kf(),it(n.b,e,t),t):e.Kf()}function SQ(n,e){var t;return B(n)===B(e)?!0:I(e,91)?(t=u(e,91),n.e==t.e&&n.d==t.d&&Jae(n,t.a)):!1}function B2(n){switch(J(),n.g){case 4:return Kn;case 1:return Vn;case 3:return ae;case 2:return Gn;default:return Xr}}function PQ(n,e){switch(e){case 3:return n.f!=0;case 4:return n.g!=0;case 5:return n.i!=0;case 6:return n.j!=0}return SV(n,e)}function p2e(n){switch(n.g){case 0:return new Lgn;case 1:return new Ngn;default:throw T(new Hn(lB+(n.f!=null?n.f:""+n.g)))}}function t$n(n){switch(n.g){case 0:return new xgn;case 1:return new Bgn;default:throw T(new Hn(AN+(n.f!=null?n.f:""+n.g)))}}function i$n(n){switch(n.g){case 0:return new sG;case 1:return new b9n;default:throw T(new Hn(bA+(n.f!=null?n.f:""+n.g)))}}function v2e(n){switch(n.g){case 1:return new Pgn;case 2:return new kjn;default:throw T(new Hn(lB+(n.f!=null?n.f:""+n.g)))}}function m2e(n){var e,t;if(n.b)return n.b;for(t=pf?null:n.d;t;){if(e=pf?null:t.b,e)return e;t=pf?null:t.d}return e3(),Uin}function k2e(n){var e,t,i;return n.e==0?0:(e=n.d<<5,t=n.a[n.d-1],n.e<0&&(i=dOn(n),i==n.d-1&&(--t,t=t|0)),e-=x7(t),e)}function y2e(n){var e,t,i;return n>5,e=n&31,i=F(be,Le,25,t+1,15,1),i[t]=1<3;)r*=10,--c;n=(n+(r>>1))/r|0}return i.i=n,!0}function E2e(n){return yF(),qn(),!!(n$n(u(n.a,81).j,u(n.b,103))||u(n.a,81).d.e!=0&&n$n(u(n.a,81).j,u(n.b,103)))}function C2e(n){DC(),u(n.We((Xe(),_l)),174).Hc((xu(),UP))&&(u(n.We(rw),174).Fc((Tu(),Pp)),u(n.We(_l),174).Mc(UP))}function c$n(n,e){var t,i;if(e){for(t=0;t=0;--i)for(e=t[i],r=0;r>1,this.k=e-1>>1}function I2e(n,e){le(e,"End label post-processing",1),Rt(gt(qr(new $n(null,new xn(n.b,16)),new udn),new sdn),new odn),ce(e)}function O2e(n,e,t){var i,r;return i=K(n.p[e.i.p])+K(n.d[e.i.p])+e.n.b+e.a.b,r=K(n.p[t.i.p])+K(n.d[t.i.p])+t.n.b+t.a.b,r-i}function D2e(n,e,t){var i,r;for(i=ci(t,fr),r=0;fc(i,0)!=0&&r0&&(Me(0,e.length),e.charCodeAt(0)==43)?e.substr(1):e))}function F2e(n){var e;return n==null?null:new il((e=jc(n,!0),e.length>0&&(Me(0,e.length),e.charCodeAt(0)==43)?e.substr(1):e))}function LQ(n,e){var t;return n.i>0&&(e.lengthn.i&&Mt(e,n.i,null),e}function Oc(n,e,t){var i,r,c;return n.ej()?(i=n.i,c=n.fj(),a7(n,i,e),r=n.Zi(3,null,e,i,c),t?t.Ei(r):t=r):a7(n,n.i,e),t}function x2e(n,e,t){var i,r;return i=new Lh(n.e,4,10,(r=e.c,I(r,88)?u(r,26):(Sn(),so)),null,v1(n,e),!1),t?t.Ei(i):t=i,t}function L2e(n,e,t){var i,r;return i=new Lh(n.e,3,10,null,(r=e.c,I(r,88)?u(r,26):(Sn(),so)),v1(n,e),!1),t?t.Ei(i):t=i,t}function o$n(n){W0();var e;return e=new mr(u(n.e.We((Xe(),Kg)),8)),n.B.Hc((xu(),Mv))&&(e.a<=0&&(e.a=20),e.b<=0&&(e.b=20)),e}function f$n(n){wb();var e;return(n.q?n.q:(Pn(),Pn(),ph))._b((nn(),j0))?e=u(k(n,j0),197):e=u(k(Gi(n),$m),197),e}function bb(n,e){var t,i;return i=null,li(n,(nn(),rP))&&(t=u(k(n,rP),94),t.Xe(e)&&(i=t.We(e))),i==null&&(i=k(Gi(n),e)),i}function h$n(n,e){var t,i,r;return I(e,42)?(t=u(e,42),i=t.cd(),r=ab(n.Rc(),i),$f(r,t.dd())&&(r!=null||n.Rc()._b(i))):!1}function NF(n,e){var t,i,r;return n.f>0?(n.qj(),i=e==null?0:mt(e),r=(i&nt)%n.d.length,t=hNn(n,r,i,e),t!=-1):!1}function Ko(n,e){var t,i,r;return n.f>0&&(n.qj(),i=e==null?0:mt(e),r=(i&nt)%n.d.length,t=kY(n,r,i,e),t)?t.dd():null}function g7(n,e){var t,i,r,c;for(c=Kc(n.e.Tg(),e),t=u(n.g,119),r=0;r1?rf(Ih(e.a[1],32),ci(e.a[0],fr)):ci(e.a[0],fr),$d(Ni(e.e,t))))}function p7(n,e){var t;return $r(n)&&$r(e)&&(t=n%e,ik>5,e&=31,r=n.d+t+(e==0?0:1),i=F(be,Le,25,r,15,1),Nve(i,n.a,t,e),c=new Pw(n.e,r,i),K5(c),c}function BQ(n,e,t){var i,r;i=u(vc(Pv,e),117),r=u(vc(m9,e),117),t?(kr(Pv,n,i),kr(m9,n,r)):(kr(m9,n,i),kr(Pv,n,r))}function p$n(n,e,t){var i,r,c;for(r=null,c=n.b;c;){if(i=n.a.ue(e,c.d),t&&i==0)return c;i>=0?c=c.a[1]:(r=c,c=c.a[0])}return r}function v$n(n,e,t){var i,r,c;for(r=null,c=n.b;c;){if(i=n.a.ue(e,c.d),t&&i==0)return c;i<=0?c=c.a[0]:(r=c,c=c.a[1])}return r}function K2e(n,e,t,i){var r,c,o;return r=!1,jEe(n.f,t,i)&&(ape(n.f,n.a[e][t],n.a[e][i]),c=n.a[e],o=c[i],c[i]=c[t],c[t]=o,r=!0),r}function RQ(n,e,t,i,r){var c,o,f;for(o=r;e.b!=e.c;)c=u(y2(e),10),f=u(zr(c,i).Xb(0),11),n.d[f.p]=o++,t.c[t.c.length]=f;return o}function _Q(n,e,t){var i,r,c,o,f;return o=n.k,f=e.k,i=t[o.g][f.g],r=Y(bb(n,i)),c=Y(bb(e,i)),j.Math.max((_n(r),r),(_n(c),c))}function H2e(n,e,t){var i,r,c,o;for(i=t/n.c.length,r=0,o=new E(n);o.a2e3&&(wzn=n,KA=j.setTimeout(Vie,10))),_A++==0?(E0e((aG(),din)),!0):!1}function G2e(n,e){var t,i,r;for(i=new re(ue(ni(n).a.Kc(),new Mn));Se(i);)if(t=u(ve(i),17),r=t.d.i,r.c==e)return!1;return!0}function KQ(n,e){var t,i;if(I(e,245)){i=u(e,245);try{return t=n.vd(i),t==0}catch(r){if(r=jt(r),!I(r,205))throw T(r)}}return!1}function z2e(){return Error.stackTraceLimit>0?(j.Error.stackTraceLimit=Error.stackTraceLimit=64,!0):"stack"in new Error}function U2e(n,e){return Yo(),Yo(),mo(Cl),(j.Math.abs(n-e)<=Cl||n==e||isNaN(n)&&isNaN(e)?0:ne?1:pd(isNaN(n),isNaN(e)))>0}function HQ(n,e){return Yo(),Yo(),mo(Cl),(j.Math.abs(n-e)<=Cl||n==e||isNaN(n)&&isNaN(e)?0:ne?1:pd(isNaN(n),isNaN(e)))<0}function y$n(n,e){return Yo(),Yo(),mo(Cl),(j.Math.abs(n-e)<=Cl||n==e||isNaN(n)&&isNaN(e)?0:ne?1:pd(isNaN(n),isNaN(e)))<=0}function RF(n,e){for(var t=0;!e[t]||e[t]=="";)t++;for(var i=e[t++];tJL)return t.fh();if(i=t.Zg(),i||t==n)break}return i}function qQ(n){return dC(),I(n,156)?u(te($y,Azn),288).vg(n):zu($y,Du(n))?u(te($y,Du(n)),288).vg(n):null}function X2e(n){if(DT(B4,n))return qn(),z4;if(DT(EB,n))return qn(),qa;throw T(new Hn("Expecting true or false"))}function V2e(n,e){if(e.c==n)return e.d;if(e.d==n)return e.c;throw T(new Hn("Input edge is not connected to the input port."))}function A$n(n,e){return n.e>e.e?1:n.ee.d?n.e:n.d=48&&n<48+j.Math.min(10,10)?n-48:n>=97&&n<97?n-97+10:n>=65&&n<65?n-65+10:-1}function P$n(n,e){var t;return B(e)===B(n)?!0:!I(e,21)||(t=u(e,21),t.gc()!=n.gc())?!1:n.Ic(t)}function Q2e(n,e){var t,i,r,c;return i=n.a.length-1,t=e-n.b&i,c=n.c-e&i,r=n.c-n.b&i,cjn(t=c?(Vwe(n,e),-1):(Qwe(n,e),1)}function J2e(n,e){var t,i;for(t=(Me(e,n.length),n.charCodeAt(e)),i=e+1;ie.e?1:n.fe.f?1:mt(n)-mt(e)}function DT(n,e){return _n(n),e==null?!1:An(n,e)?!0:n.length==e.length&&An(n.toLowerCase(),e.toLowerCase())}function upe(n,e){var t,i,r,c;for(i=0,r=e.gc();i0&&fc(n,128)<0?(e=ge(n)+128,t=(XEn(),Ein)[e],!t&&(t=Ein[e]=new pq(n)),t):new pq(n)}function O$n(n,e){var t,i;return t=e.Hh(n.a),t&&(i=Te(Ko((!t.b&&(t.b=new qu((Sn(),nr),tc,t)),t.b),We)),i!=null)?i:e.ne()}function spe(n,e){var t,i;return t=e.Hh(n.a),t&&(i=Te(Ko((!t.b&&(t.b=new qu((Sn(),nr),tc,t)),t.b),We)),i!=null)?i:e.ne()}function ope(n,e){c$();var t,i;for(i=new re(ue(Kh(n).a.Kc(),new Mn));Se(i);)if(t=u(ve(i),17),t.d.i==e||t.c.i==e)return t;return null}function UQ(n,e,t){this.c=n,this.f=new X,this.e=new Li,this.j=new eW,this.n=new eW,this.b=e,this.g=new ys(e.c,e.d,e.b,e.a),this.a=t}function _F(n){var e,t,i,r;for(this.a=new Sh,this.d=new fi,this.e=0,t=n,i=0,r=t.length;i0):!1}function F$n(n){var e;B(hn(n,(Xe(),Bg)))===B((_h(),HP))&&(At(n)?(e=u(hn(At(n),Bg),334),gr(n,Bg,e)):gr(n,Bg,i9))}function ape(n,e,t){var i,r;yx(n.e,e,t,(J(),Gn)),yx(n.i,e,t,Vn),n.a&&(r=u(k(e,(G(),rt)),11),i=u(k(t,rt),11),l$(n.g,r,i))}function x$n(n,e,t){var i,r,c;i=e.c.p,c=e.p,n.b[i][c]=new YTn(n,e),t&&(n.a[i][c]=new c6n(e),r=u(k(e,(G(),m0)),10),r&&Tn(n.d,r,e))}function L$n(n,e){var t,i,r;if(W(eS,n),e.Fc(n),t=u(te(DR,n),21),t)for(r=t.Kc();r.Ob();)i=u(r.Pb(),33),Fr(eS,i,0)!=-1||L$n(i,e)}function dpe(n,e,t){var i;(Fzn?(m2e(n),!0):xzn||Nzn?(e3(),!0):Lzn&&(e3(),!1))&&(i=new hEn(e),i.b=t,g5e(n,i))}function KF(n,e){var t;t=!n.A.Hc((Vu(),id))||n.q==(Ti(),Ac),n.u.Hc((Tu(),n1))?t?xCe(n,e):a_n(n,e):n.u.Hc(Gl)&&(t?nCe(n,e):M_n(n,e))}function r4(n,e){var t,i;if(++n.j,e!=null&&(t=(i=n.a.Cb,I(i,97)?u(i,97).Jg():null),ome(e,t))){R2(n.a,4,t);return}R2(n.a,4,u(e,126))}function N$n(n,e,t){return new ys(j.Math.min(n.a,e.a)-t/2,j.Math.min(n.b,e.b)-t/2,j.Math.abs(n.a-e.a)+t,j.Math.abs(n.b-e.b)+t)}function bpe(n,e){var t,i;return t=Uc(n.a.c.p,e.a.c.p),t!=0?t:(i=Uc(n.a.d.i.p,e.a.d.i.p),i!=0?i:Uc(e.a.d.p,n.a.d.p))}function wpe(n,e,t){var i,r,c,o;return c=e.j,o=t.j,c!=o?c.g-o.g:(i=n.f[e.p],r=n.f[t.p],i==0&&r==0?0:i==0?-1:r==0?1:Zt(i,r))}function B$n(n,e,t){var i,r,c;if(!t[e.d])for(t[e.d]=!0,r=new E(Hw(e));r.a=r)return r;for(e=e>0?e:0;ei&&Mt(e,i,null),e}function _$n(n,e){var t,i;for(i=n.a.length,e.lengthi&&Mt(e,i,null),e}function Aa(n,e,t){var i,r,c;return r=u(te(n.e,e),387),r?(c=gU(r,t),Oyn(n,r),c):(i=new qU(n,e,t),it(n.e,e,i),iMn(i),null)}function vpe(n){var e;if(n==null)return null;if(e=a9e(jc(n,!0)),e==null)throw T(new VI("Invalid hexBinary value: '"+n+"'"));return e}function m7(n){return jl(),fc(n,0)<0?fc(n,-1)!=0?new OJ(-1,P3(n)):gR:fc(n,10)<=0?xin[ge(n)]:new OJ(1,n)}function qF(){return SM(),A(M(yUn,1),z,159,0,[mUn,vUn,kUn,hUn,fUn,lUn,bUn,dUn,aUn,pUn,gUn,wUn,sUn,uUn,oUn,rUn,iUn,cUn,eUn,nUn,tUn,TR])}function K$n(n){var e;this.d=new X,this.j=new Li,this.g=new Li,e=n.g.b,this.f=u(k(Gi(e),(nn(),ls)),103),this.e=K(Y(xT(e,nw)))}function H$n(n){this.b=new X,this.e=new X,this.d=n,this.a=!Wv(gt(new $n(null,new Cd(new uf(n.b))),new Fv(new qbn))).sd((ca(),V4))}function Ho(){Ho=N,Xn=new Z9("PARENTS",0),pi=new Z9("NODES",1),Yf=new Z9("EDGES",2),Ya=new Z9("PORTS",3),D1=new Z9("LABELS",4)}function qw(){qw=N,Hl=new e8("DISTRIBUTED",0),Cy=new e8("JUSTIFIED",1),Hhn=new e8("BEGIN",2),r9=new e8(I4,3),qhn=new e8("END",4)}function mpe(n){var e;switch(e=n.yi(null),e){case 10:return 0;case 15:return 1;case 14:return 2;case 11:return 3;case 21:return 4}return-1}function GF(n){switch(n.g){case 1:return sr(),Yh;case 4:return sr(),Zs;case 2:return sr(),Ao;case 3:return sr(),Jh}return sr(),mh}function kpe(n,e,t){var i;switch(i=t.q.getFullYear()-Tl+Tl,i<0&&(i=-i),e){case 1:n.a+=i;break;case 2:sh(n,i%100,2);break;default:sh(n,i,e)}}function _e(n,e){var t,i;if(tb(e,n.b),e>=n.b>>1)for(i=n.c,t=n.b;t>e;--t)i=i.b;else for(i=n.a.a,t=0;t=64&&e<128&&(r=rf(r,Ih(1,e-64)));return r}function xT(n,e){var t,i;return i=null,li(n,(Xe(),Ap))&&(t=u(k(n,Ap),94),t.Xe(e)&&(i=t.We(e))),i==null&&Gi(n)&&(i=k(Gi(n),e)),i}function z$n(n,e){var t,i,r;r=e.d.i,i=r.k,!(i==(Qn(),ti)||i==vf)&&(t=new re(ue(ni(r).a.Kc(),new Mn)),Se(t)&&it(n.k,e,u(ve(t),17)))}function zF(n,e){var t,i,r;return i=On(n.Tg(),e),t=e-n.Ah(),t<0?(r=n.Yg(i),r>=0?n.lh(r):Ox(n,i)):t<0?Ox(n,i):u(i,66).Nj().Sj(n,n.yh(),t)}function cn(n){var e;if(I(n.a,4)){if(e=qQ(n.a),e==null)throw T(new Dr(HHn+n.b+"'. "+KHn+(Ph(Fy),Fy.k)+Etn));return e}else return n.a}function Epe(n){var e;if(n==null)return null;if(e=qCe(jc(n,!0)),e==null)throw T(new VI("Invalid base64Binary value: '"+n+"'"));return e}function oe(n){var e;try{return e=n.i.Xb(n.e),n.mj(),n.g=n.e++,e}catch(t){throw t=jt(t),I(t,73)?(n.mj(),T(new ic)):T(t)}}function UF(n){var e;try{return e=n.c.ki(n.e),n.mj(),n.g=n.e++,e}catch(t){throw t=jt(t),I(t,73)?(n.mj(),T(new ic)):T(t)}}function a6(){a6=N,Trn=(Xe(),yhn),IR=Zfn,FUn=Tp,Crn=nd,BUn=(WT(),irn),NUn=ern,RUn=crn,LUn=nrn,xUn=(pF(),yrn),PR=OUn,Ern=DUn,nS=$Un}function LT(n){switch(DG(),this.c=new X,this.d=n,n.g){case 0:case 2:this.a=_W(qrn),this.b=Ft;break;case 3:case 1:this.a=qrn,this.b=Vt}}function U$n(n,e,t){var i,r;if(n.c)Zc(n.c,n.c.i+e),nu(n.c,n.c.j+t);else for(r=new E(n.b);r.a0&&(W(n.b,new MEn(e.a,t)),i=e.a.length,0i&&(e.a+=Iyn(F(Ls,Bf,25,-i,15,1))))}function W$n(n,e){var t,i,r;for(t=n.o,r=u(u(ct(n.r,e),21),84).Kc();r.Ob();)i=u(r.Pb(),111),i.e.a=M3e(i,t.a),i.e.b=t.b*K(Y(i.b.We(JA)))}function Tpe(n,e){var t,i,r,c;return r=n.k,t=K(Y(k(n,(G(),k0)))),c=e.k,i=K(Y(k(e,k0))),c!=(Qn(),Xt)?-1:r!=Xt?1:t==i?0:t=0?n.hh(e,t,i):(n.eh()&&(i=(r=n.Vg(),r>=0?n.Qg(i):n.eh().ih(n,-1-r,null,i))),n.Sg(e,t,i))}function XQ(n,e){switch(e){case 7:!n.e&&(n.e=new Fn(di,n,7,4)),de(n.e);return;case 8:!n.d&&(n.d=new Fn(di,n,8,5)),de(n.d);return}FQ(n,e)}function qo(n,e){var t;t=n.Zc(e);try{return t.Pb()}catch(i){throw i=jt(i),I(i,109)?T(new vr("Can't get element "+e)):T(i)}}function VQ(n,e){this.e=n,e=0&&(t.d=n.t);break;case 3:n.t>=0&&(t.a=n.t)}n.C&&(t.b=n.C.b,t.c=n.C.c)}function K2(){K2=N,$k=new Rj(NM,0),Dk=new Rj(lN,1),Fk=new Rj(aN,2),xk=new Rj(dN,3),$k.a=!1,Dk.a=!0,Fk.a=!1,xk.a=!0}function d6(){d6=N,Lk=new Bj(NM,0),YA=new Bj(lN,1),ZA=new Bj(aN,2),Nk=new Bj(dN,3),Lk.a=!1,YA.a=!0,ZA.a=!1,Nk.a=!0}function Ipe(n){var e;e=n.a;do e=u(ve(new re(ue(xr(e).a.Kc(),new Mn))),17).c.i,e.k==(Qn(),gi)&&n.b.Fc(e);while(e.k==(Qn(),gi));n.b=va(n.b)}function Ope(n){var e,t,i;for(i=n.c.a,n.p=(pe(i),new du(i)),t=new E(i);t.at.b)return!0}return!1}function WF(n,e){return mi(n)?!!ozn[e]:n.hm?!!n.hm[e]:G0(n)?!!szn[e]:q0(n)?!!uzn[e]:!1}function gr(n,e,t){return t==null?(!n.o&&(n.o=new Wu((Dc(),Ul),S0,n,0)),IT(n.o,e)):(!n.o&&(n.o=new Wu((Dc(),Ul),S0,n,0)),XT(n.o,e,t)),n}function xpe(n,e,t,i){var r,c;c=e.Xe((Xe(),_g))?u(e.We(_g),21):n.j,r=Cge(c),r!=(SM(),TR)&&(t&&!GQ(r)||nY(d9e(n,r,i),e))}function BT(n,e,t,i){var r,c,o;return c=On(n.Tg(),e),r=e-n.Ah(),r<0?(o=n.Yg(c),o>=0?n._g(o,t,!0):Yd(n,c,t)):u(c,66).Nj().Pj(n,n.yh(),r,t,i)}function Lpe(n,e,t,i){var r,c,o;t.mh(e)&&(er(),R$(e)?(r=u(t.ah(e),153),upe(n,r)):(c=(o=e,o?u(i,49).xh(o):null),c&&Bte(t.ah(e),c)))}function Npe(n){switch(n.g){case 1:return Hd(),Ok;case 3:return Hd(),Ik;case 2:return Hd(),AR;case 4:return Hd(),MR;default:return null}}function QQ(n){switch(typeof n){case EL:return m1(n);case UZ:return Gt(n);case X2:return qn(),n?1231:1237;default:return n==null?0:md(n)}}function Bpe(n,e,t){if(n.e)switch(n.b){case 1:d1e(n.c,e,t);break;case 0:b1e(n.c,e,t)}else xAn(n.c,e,t);n.a[e.p][t.p]=n.c.i,n.a[t.p][e.p]=n.c.e}function Y$n(n){var e,t;if(n==null)return null;for(t=F(vh,q,193,n.length,0,2),e=0;e=0)return r;if(n.Fk()){for(i=0;i=r)throw T(new V0(e,r));if(n.hi()&&(i=n.Xc(t),i>=0&&i!=e))throw T(new Hn(yk));return n.mi(e,t)}function JQ(n,e){if(this.a=u(pe(n),245),this.b=u(pe(e),245),n.vd(e)>0||n==(qI(),cR)||e==(HI(),uR))throw T(new Hn("Invalid range: "+OAn(n,e)))}function Z$n(n){var e,t;for(this.b=new X,this.c=n,this.a=!1,t=new E(n.a);t.a0),(e&-e)==e)return Gt(e*Fu(n,31)*4656612873077393e-25);do t=Fu(n,31),i=t%e;while(t-i+(e-1)<0);return Gt(i)}function m1(n){lEn();var e,t,i;return t=":"+n,i=XA[t],i!=null?Gt((_n(i),i)):(i=Xin[t],e=i==null?I8e(n):Gt((_n(i),i)),c1e(),XA[t]=e,e)}function eFn(n,e,t){le(t,"Compound graph preprocessor",1),n.a=new Od,s_n(n,e,null),pje(n,e),Z9e(n),H(e,(G(),dun),n.a),n.a=null,Eu(n.b),ce(t)}function Kpe(n,e,t){switch(t.g){case 1:n.a=e.a/2,n.b=0;break;case 2:n.a=e.a,n.b=e.b/2;break;case 3:n.a=e.a/2,n.b=e.b;break;case 4:n.a=0,n.b=e.b/2}}function Hpe(n){var e,t,i;for(i=u(ct(n.a,(Vw(),IS)),15).Kc();i.Ob();)t=u(i.Pb(),101),e=hJ(t),b3(n,t,e[0],(Kd(),w0),0),b3(n,t,e[1],g0,1)}function qpe(n){var e,t,i;for(i=u(ct(n.a,(Vw(),OS)),15).Kc();i.Ob();)t=u(i.Pb(),101),e=hJ(t),b3(n,t,e[0],(Kd(),w0),0),b3(n,t,e[1],g0,1)}function XF(n){switch(n.g){case 0:return null;case 1:return new eOn;case 2:return new oG;default:throw T(new Hn(lB+(n.f!=null?n.f:""+n.g)))}}function k7(n,e,t){var i,r;for(lwe(n,e-n.s,t-n.t),r=new E(n.n);r.a1&&(c=_pe(n,e)),c}function VF(n){var e;return n.f&&n.f.kh()&&(e=u(n.f,49),n.f=u(pl(n,e),82),n.f!=e&&n.Db&4&&!(n.Db&1)&&et(n,new wi(n,9,8,e,n.f))),n.f}function QF(n){var e;return n.i&&n.i.kh()&&(e=u(n.i,49),n.i=u(pl(n,e),82),n.i!=e&&n.Db&4&&!(n.Db&1)&&et(n,new wi(n,9,7,e,n.i))),n.i}function ir(n){var e;return n.b&&n.b.Db&64&&(e=n.b,n.b=u(pl(n,e),18),n.b!=e&&n.Db&4&&!(n.Db&1)&&et(n,new wi(n,9,21,e,n.b))),n.b}function KT(n,e){var t,i,r;n.d==null?(++n.e,++n.f):(i=e.Sh(),u8e(n,n.f+1),r=(i&nt)%n.d.length,t=n.d[r],!t&&(t=n.d[r]=n.uj()),t.Fc(e),++n.f)}function nJ(n,e,t){var i;return e.Kj()?!1:e.Zj()!=-2?(i=e.zj(),i==null?t==null:tt(i,t)):e.Hj()==n.e.Tg()&&t==null}function HT(){var n;is(16,J_n),n=UIn(16),this.b=F(oR,nk,317,n,0,1),this.c=F(oR,nk,317,n,0,1),this.a=null,this.e=null,this.i=0,this.f=n-1,this.g=0}function qh(n){vU.call(this),this.k=(Qn(),ti),this.j=(is(6,Pb),new Pc(6)),this.b=(is(2,Pb),new Pc(2)),this.d=new NI,this.f=new Zq,this.a=n}function zpe(n){var e,t;n.c.length<=1||(e=ZNn(n,(J(),ae)),Kxn(n,u(e.a,19).a,u(e.b,19).a),t=ZNn(n,Gn),Kxn(n,u(t.a,19).a,u(t.b,19).a))}function b6(){b6=N,zsn=new V9("SIMPLE",0),nK=new V9(PN,1),eK=new V9("LINEAR_SEGMENTS",2),Lm=new V9("BRANDES_KOEPF",3),Nm=new V9(EHn,4)}function eJ(n,e,t){p2(u(k(e,(nn(),Lt)),98))||(VX(n,e,k1(e,t)),VX(n,e,k1(e,(J(),ae))),VX(n,e,k1(e,Kn)),Pn(),bi(e.j,new i6n(n)))}function tFn(n,e,t,i){var r,c,o;for(r=u(ct(i?n.a:n.b,e),21),o=r.Kc();o.Ob();)if(c=u(o.Pb(),33),aM(n,t,c))return!0;return!1}function JF(n){var e,t;for(t=new ie(n);t.e!=t.i.gc();)if(e=u(oe(t),87),e.e||(!e.d&&(e.d=new Jt(ar,e,1)),e.d).i!=0)return!0;return!1}function YF(n){var e,t;for(t=new ie(n);t.e!=t.i.gc();)if(e=u(oe(t),87),e.e||(!e.d&&(e.d=new Jt(ar,e,1)),e.d).i!=0)return!0;return!1}function Upe(n){var e,t,i;for(e=0,i=new E(n.c.a);i.a102?-1:n<=57?n-48:n<65?-1:n<=70?n-65+10:n<97?-1:n-97+10}function ex(n,e){if(n==null)throw T(new c2("null key in entry: null="+e));if(e==null)throw T(new c2("null value in entry: "+n+"=null"))}function Wpe(n,e){for(var t,i;n.Ob();)if(!e.Ob()||(t=n.Pb(),i=e.Pb(),!(B(t)===B(i)||t!=null&&tt(t,i))))return!1;return!e.Ob()}function rFn(n,e){var t;return t=A(M(ji,1),pr,25,15,[kF(n.a[0],e),kF(n.a[1],e),kF(n.a[2],e)]),n.d&&(t[0]=j.Math.max(t[0],t[2]),t[2]=t[0]),t}function cFn(n,e){var t;return t=A(M(ji,1),pr,25,15,[pT(n.a[0],e),pT(n.a[1],e),pT(n.a[2],e)]),n.d&&(t[0]=j.Math.max(t[0],t[2]),t[2]=t[0]),t}function Pa(){Pa=N,f_=new X9("GREEDY",0),Gcn=new X9(fHn,1),h_=new X9(PN,2),Em=new X9("MODEL_ORDER",3),jm=new X9("GREEDY_MODEL_ORDER",4)}function uFn(n,e){var t,i,r;for(n.b[e.g]=1,i=_e(e.d,0);i.b!=i.d.c;)t=u(Re(i),188),r=t.c,n.b[r.g]==1?Ke(n.a,t):n.b[r.g]==2?n.b[r.g]=1:uFn(n,r)}function Xpe(n,e){var t,i,r;for(r=new Pc(e.gc()),i=e.Kc();i.Ob();)t=u(i.Pb(),286),t.c==t.f?l4(n,t,t.c):U5e(n,t)||(r.c[r.c.length]=t);return r}function Vpe(n,e,t){var i,r,c,o,f;for(f=n.r+e,n.r+=e,n.d+=t,i=t/n.n.c.length,r=0,o=new E(n.n);o.ac&&Mt(e,c,null),e}function f3e(n,e){var t,i;if(i=n.gc(),e==null){for(t=0;t0&&(h+=r),l[a]=o,o+=f*(h+i)}function bFn(n){var e,t,i;for(i=n.f,n.n=F(ji,pr,25,i,15,1),n.d=F(ji,pr,25,i,15,1),e=0;e0?n.c:0),++r;n.b=i,n.d=c}function g3e(n,e){var t,i,r,c,o;for(i=0,r=0,t=0,o=new E(e);o.a0?n.g:0),++t;n.c=r,n.d=i}function mFn(n,e){var t;return t=A(M(ji,1),pr,25,15,[ZQ(n,(_o(),Zr),e),ZQ(n,Fc,e),ZQ(n,nc,e)]),n.f&&(t[0]=j.Math.max(t[0],t[2]),t[2]=t[0]),t}function p3e(n,e,t){var i;try{wM(n,e+n.j,t+n.k,!1,!0)}catch(r){throw r=jt(r),I(r,73)?(i=r,T(new vr(i.g+RM+e+Ji+t+")."))):T(r)}}function v3e(n,e,t){var i;try{wM(n,e+n.j,t+n.k,!0,!1)}catch(r){throw r=jt(r),I(r,73)?(i=r,T(new vr(i.g+RM+e+Ji+t+")."))):T(r)}}function kFn(n){var e;li(n,(nn(),y0))&&(e=u(k(n,y0),21),e.Hc((jb(),So))?(e.Mc(So),e.Fc(Po)):e.Hc(Po)&&(e.Mc(Po),e.Fc(So)))}function yFn(n){var e;li(n,(nn(),y0))&&(e=u(k(n,y0),21),e.Hc((jb(),Oo))?(e.Mc(Oo),e.Fc(eo)):e.Hc(eo)&&(e.Mc(eo),e.Fc(Oo)))}function m3e(n,e,t){le(t,"Self-Loop ordering",1),Rt(Xc(gt(gt(qr(new $n(null,new xn(e.b,16)),new P0n),new I0n),new O0n),new D0n),new O5n(n)),ce(t)}function j7(n,e,t,i){var r,c;for(r=e;r0&&(r.b+=e),r}function zT(n,e){var t,i,r;for(r=new Li,i=n.Kc();i.Ob();)t=u(i.Pb(),37),M6(t,0,r.b),r.b+=t.f.b+e,r.a=j.Math.max(r.a,t.f.a);return r.a>0&&(r.a+=e),r}function EFn(n){var e,t,i;for(i=nt,t=new E(n.a);t.a>16==6?n.Cb.ih(n,5,Vo,e):(i=ir(u(On((t=u(Rn(n,16),26),t||n.zh()),n.Db>>16),18)),n.Cb.ih(n,i.n,i.f,e))}function C3e(n){k3();var e=n.e;if(e&&e.stack){var t=e.stack,i=e+` `;return t.substring(0,i.length)==i&&(t=t.substring(i.length)),t.split(` diff --git a/pr-383/assets/chunks/ganttDiagram-60845bff.9268dc5c.js b/pr-383/assets/chunks/ganttDiagram-60845bff.88fb5aac.js similarity index 99% rename from pr-383/assets/chunks/ganttDiagram-60845bff.9268dc5c.js rename to pr-383/assets/chunks/ganttDiagram-60845bff.88fb5aac.js index 970b2a00e..657f75783 100644 --- a/pr-383/assets/chunks/ganttDiagram-60845bff.9268dc5c.js +++ b/pr-383/assets/chunks/ganttDiagram-60845bff.88fb5aac.js @@ -1,4 +1,4 @@ -import{ac as en,ad as nn,ae as rn,af as an,ag as En,ah as se,ai as In,aj as rt,c as _t,s as Wn,g as On,v as Hn,x as zn,b as Nn,a as Vn,m as Pn,z as Rn,n as Bn,l as ve,h as Gt,i as Zn,j as qn,y as Xn}from"../app.34e6398e.js";import{b as Gn,t as He,c as jn,a as Qn,l as Jn}from"./linear.ae897b18.js";import{i as $n}from"./init.77b53fdd.js";import"./framework.be0a7370.js";import"./theme.e11407bf.js";function Kn(t,e){let n;if(e===void 0)for(const r of t)r!=null&&(n=r)&&(n=r);else{let r=-1;for(let i of t)(i=e(i,++r,t))!=null&&(n=i)&&(n=i)}return n}function tr(t,e){let n;if(e===void 0)for(const r of t)r!=null&&(n>r||n===void 0&&r>=r)&&(n=r);else{let r=-1;for(let i of t)(i=e(i,++r,t))!=null&&(n>i||n===void 0&&i>=i)&&(n=i)}return n}function er(t){return t}var Jt=1,oe=2,Te=3,jt=4,ze=1e-6;function nr(t){return"translate("+t+",0)"}function rr(t){return"translate(0,"+t+")"}function ir(t){return e=>+t(e)}function ar(t,e){return e=Math.max(0,t.bandwidth()-e*2)/2,t.round()&&(e=Math.round(e)),n=>+t(n)+e}function sr(){return!this.__axis}function sn(t,e){var n=[],r=null,i=null,a=6,o=6,h=3,m=typeof window<"u"&&window.devicePixelRatio>1?0:.5,p=t===Jt||t===jt?-1:1,v=t===jt||t===oe?"x":"y",S=t===Jt||t===Te?nr:rr;function x(g){var I=r??(e.ticks?e.ticks.apply(e,n):e.domain()),C=i??(e.tickFormat?e.tickFormat.apply(e,n):er),R=Math.max(a,0)+h,X=e.range(),tt=+X[0]+m,B=+X[X.length-1]+m,Z=(e.bandwidth?ar:ir)(e.copy(),m),J=g.selection?g.selection():g,w=J.selectAll(".domain").data([null]),H=J.selectAll(".tick").data(I,e).order(),D=H.exit(),F=H.enter().append("g").attr("class","tick"),Y=H.select("line"),_=H.select("text");w=w.merge(w.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),H=H.merge(F),Y=Y.merge(F.append("line").attr("stroke","currentColor").attr(v+"2",p*a)),_=_.merge(F.append("text").attr("fill","currentColor").attr(v,p*R).attr("dy",t===Jt?"0em":t===Te?"0.71em":"0.32em")),g!==J&&(w=w.transition(g),H=H.transition(g),Y=Y.transition(g),_=_.transition(g),D=D.transition(g).attr("opacity",ze).attr("transform",function(T){return isFinite(T=Z(T))?S(T+m):this.getAttribute("transform")}),F.attr("opacity",ze).attr("transform",function(T){var O=this.parentNode.__axis;return S((O&&isFinite(O=O(T))?O:Z(T))+m)})),D.remove(),w.attr("d",t===jt||t===oe?o?"M"+p*o+","+tt+"H"+m+"V"+B+"H"+p*o:"M"+m+","+tt+"V"+B:o?"M"+tt+","+p*o+"V"+m+"H"+B+"V"+p*o:"M"+tt+","+m+"H"+B),H.attr("opacity",1).attr("transform",function(T){return S(Z(T)+m)}),Y.attr(v+"2",p*a),_.attr(v,p*R).text(C),J.filter(sr).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",t===oe?"start":t===jt?"end":"middle"),J.each(function(){this.__axis=Z})}return x.scale=function(g){return arguments.length?(e=g,x):e},x.ticks=function(){return n=Array.from(arguments),x},x.tickArguments=function(g){return arguments.length?(n=g==null?[]:Array.from(g),x):n.slice()},x.tickValues=function(g){return arguments.length?(r=g==null?null:Array.from(g),x):r&&r.slice()},x.tickFormat=function(g){return arguments.length?(i=g,x):i},x.tickSize=function(g){return arguments.length?(a=o=+g,x):a},x.tickSizeInner=function(g){return arguments.length?(a=+g,x):a},x.tickSizeOuter=function(g){return arguments.length?(o=+g,x):o},x.tickPadding=function(g){return arguments.length?(h=+g,x):h},x.offset=function(g){return arguments.length?(m=+g,x):m},x}function or(t){return sn(Jt,t)}function cr(t){return sn(Te,t)}const lr=Math.PI/180,ur=180/Math.PI,te=18,on=.96422,cn=1,ln=.82521,un=4/29,St=6/29,fn=3*St*St,fr=St*St*St;function hn(t){if(t instanceof ot)return new ot(t.l,t.a,t.b,t.opacity);if(t instanceof ft)return dn(t);t instanceof rn||(t=En(t));var e=fe(t.r),n=fe(t.g),r=fe(t.b),i=ce((.2225045*e+.7168786*n+.0606169*r)/cn),a,o;return e===n&&n===r?a=o=i:(a=ce((.4360747*e+.3850649*n+.1430804*r)/on),o=ce((.0139322*e+.0971045*n+.7141733*r)/ln)),new ot(116*i-16,500*(a-i),200*(i-o),t.opacity)}function hr(t,e,n,r){return arguments.length===1?hn(t):new ot(t,e,n,r??1)}function ot(t,e,n,r){this.l=+t,this.a=+e,this.b=+n,this.opacity=+r}en(ot,hr,nn(an,{brighter(t){return new ot(this.l+te*(t??1),this.a,this.b,this.opacity)},darker(t){return new ot(this.l-te*(t??1),this.a,this.b,this.opacity)},rgb(){var t=(this.l+16)/116,e=isNaN(this.a)?t:t+this.a/500,n=isNaN(this.b)?t:t-this.b/200;return e=on*le(e),t=cn*le(t),n=ln*le(n),new rn(ue(3.1338561*e-1.6168667*t-.4906146*n),ue(-.9787684*e+1.9161415*t+.033454*n),ue(.0719453*e-.2289914*t+1.4052427*n),this.opacity)}}));function ce(t){return t>fr?Math.pow(t,1/3):t/fn+un}function le(t){return t>St?t*t*t:fn*(t-un)}function ue(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function fe(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function dr(t){if(t instanceof ft)return new ft(t.h,t.c,t.l,t.opacity);if(t instanceof ot||(t=hn(t)),t.a===0&&t.b===0)return new ft(NaN,0(t(a=new Date(+a)),a),i.ceil=a=>(t(a=new Date(a-1)),e(a,1),t(a),a),i.round=a=>{const o=i(a),h=i.ceil(a);return a-o(e(a=new Date(+a),o==null?1:Math.floor(o)),a),i.range=(a,o,h)=>{const m=[];if(a=i.ceil(a),h=h==null?1:Math.floor(h),!(a0))return m;let p;do m.push(p=new Date(+a)),e(a,h),t(a);while(pQ(o=>{if(o>=o)for(;t(o),!a(o);)o.setTime(o-1)},(o,h)=>{if(o>=o)if(h<0)for(;++h<=0;)for(;e(o,-1),!a(o););else for(;--h>=0;)for(;e(o,1),!a(o););}),n&&(i.count=(a,o)=>(he.setTime(+a),de.setTime(+o),t(he),t(de),Math.floor(n(he,de))),i.every=a=>(a=Math.floor(a),!isFinite(a)||!(a>0)?null:a>1?i.filter(r?o=>r(o)%a===0:o=>i.count(0,o)%a===0):i)),i}const ee=Q(()=>{},(t,e)=>{t.setTime(+t+e)},(t,e)=>e-t);ee.every=t=>(t=Math.floor(t),!isFinite(t)||!(t>0)?null:t>1?Q(e=>{e.setTime(Math.floor(e/t)*t)},(e,n)=>{e.setTime(+e+n*t)},(e,n)=>(n-e)/t):ee);ee.range;const ht=1e3,it=ht*60,dt=it*60,mt=dt*24,Me=mt*7,Ne=mt*30,me=mt*365,Mt=Q(t=>{t.setTime(t-t.getMilliseconds())},(t,e)=>{t.setTime(+t+e*ht)},(t,e)=>(e-t)/ht,t=>t.getUTCSeconds());Mt.range;const Ht=Q(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*ht)},(t,e)=>{t.setTime(+t+e*it)},(t,e)=>(e-t)/it,t=>t.getMinutes());Ht.range;const kr=Q(t=>{t.setUTCSeconds(0,0)},(t,e)=>{t.setTime(+t+e*it)},(t,e)=>(e-t)/it,t=>t.getUTCMinutes());kr.range;const zt=Q(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*ht-t.getMinutes()*it)},(t,e)=>{t.setTime(+t+e*dt)},(t,e)=>(e-t)/dt,t=>t.getHours());zt.range;const pr=Q(t=>{t.setUTCMinutes(0,0,0)},(t,e)=>{t.setTime(+t+e*dt)},(t,e)=>(e-t)/dt,t=>t.getUTCHours());pr.range;const kt=Q(t=>t.setHours(0,0,0,0),(t,e)=>t.setDate(t.getDate()+e),(t,e)=>(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*it)/mt,t=>t.getDate()-1);kt.range;const _e=Q(t=>{t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+e)},(t,e)=>(e-t)/mt,t=>t.getUTCDate()-1);_e.range;const vr=Q(t=>{t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+e)},(t,e)=>(e-t)/mt,t=>Math.floor(t/mt));vr.range;function Tt(t){return Q(e=>{e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)},(e,n)=>{e.setDate(e.getDate()+n*7)},(e,n)=>(n-e-(n.getTimezoneOffset()-e.getTimezoneOffset())*it)/Me)}const Pt=Tt(0),Nt=Tt(1),mn=Tt(2),gn=Tt(3),pt=Tt(4),yn=Tt(5),kn=Tt(6);Pt.range;Nt.range;mn.range;gn.range;pt.range;yn.range;kn.range;function bt(t){return Q(e=>{e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)},(e,n)=>{e.setUTCDate(e.getUTCDate()+n*7)},(e,n)=>(n-e)/Me)}const pn=bt(0),ne=bt(1),Tr=bt(2),br=bt(3),Ft=bt(4),xr=bt(5),wr=bt(6);pn.range;ne.range;Tr.range;br.range;Ft.range;xr.range;wr.range;const Vt=Q(t=>{t.setDate(1),t.setHours(0,0,0,0)},(t,e)=>{t.setMonth(t.getMonth()+e)},(t,e)=>e.getMonth()-t.getMonth()+(e.getFullYear()-t.getFullYear())*12,t=>t.getMonth());Vt.range;const Dr=Q(t=>{t.setUTCDate(1),t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCMonth(t.getUTCMonth()+e)},(t,e)=>e.getUTCMonth()-t.getUTCMonth()+(e.getUTCFullYear()-t.getUTCFullYear())*12,t=>t.getUTCMonth());Dr.range;const gt=Q(t=>{t.setMonth(0,1),t.setHours(0,0,0,0)},(t,e)=>{t.setFullYear(t.getFullYear()+e)},(t,e)=>e.getFullYear()-t.getFullYear(),t=>t.getFullYear());gt.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:Q(e=>{e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)},(e,n)=>{e.setFullYear(e.getFullYear()+n*t)});gt.range;const vt=Q(t=>{t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCFullYear(t.getUTCFullYear()+e)},(t,e)=>e.getUTCFullYear()-t.getUTCFullYear(),t=>t.getUTCFullYear());vt.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:Q(e=>{e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,n)=>{e.setUTCFullYear(e.getUTCFullYear()+n*t)});vt.range;function Cr(t,e,n,r,i,a){const o=[[Mt,1,ht],[Mt,5,5*ht],[Mt,15,15*ht],[Mt,30,30*ht],[a,1,it],[a,5,5*it],[a,15,15*it],[a,30,30*it],[i,1,dt],[i,3,3*dt],[i,6,6*dt],[i,12,12*dt],[r,1,mt],[r,2,2*mt],[n,1,Me],[e,1,Ne],[e,3,3*Ne],[t,1,me]];function h(p,v,S){const x=vR).right(o,x);if(g===o.length)return t.every(He(p/me,v/me,S));if(g===0)return ee.every(Math.max(He(p,v,S),1));const[I,C]=o[x/o[g-1][2]53)return null;"w"in u||(u.w=1),"Z"in u?(N=ye(Et(u.y,0,1)),V=N.getUTCDay(),N=V>4||V===0?ne.ceil(N):ne(N),N=_e.offset(N,(u.V-1)*7),u.y=N.getUTCFullYear(),u.m=N.getUTCMonth(),u.d=N.getUTCDate()+(u.w+6)%7):(N=ge(Et(u.y,0,1)),V=N.getDay(),N=V>4||V===0?Nt.ceil(N):Nt(N),N=kt.offset(N,(u.V-1)*7),u.y=N.getFullYear(),u.m=N.getMonth(),u.d=N.getDate()+(u.w+6)%7)}else("W"in u||"U"in u)&&("w"in u||(u.w="u"in u?u.u%7:"W"in u?1:0),V="Z"in u?ye(Et(u.y,0,1)).getUTCDay():ge(Et(u.y,0,1)).getDay(),u.m=0,u.d="W"in u?(u.w+6)%7+u.W*7-(V+5)%7:u.w+u.U*7-(V+6)%7);return"Z"in u?(u.H+=u.Z/100|0,u.M+=u.Z%100,ye(u)):ge(u)}}function D(f,M,L,u){for(var et=0,N=M.length,V=L.length,q,G;et=V)return-1;if(q=M.charCodeAt(et++),q===37){if(q=M.charAt(et++),G=J[q in Ve?M.charAt(et++):q],!G||(u=G(f,L,u))<0)return-1}else if(q!=L.charCodeAt(u++))return-1}return u}function F(f,M,L){var u=p.exec(M.slice(L));return u?(f.p=v.get(u[0].toLowerCase()),L+u[0].length):-1}function Y(f,M,L){var u=g.exec(M.slice(L));return u?(f.w=I.get(u[0].toLowerCase()),L+u[0].length):-1}function _(f,M,L){var u=S.exec(M.slice(L));return u?(f.w=x.get(u[0].toLowerCase()),L+u[0].length):-1}function T(f,M,L){var u=X.exec(M.slice(L));return u?(f.m=tt.get(u[0].toLowerCase()),L+u[0].length):-1}function O(f,M,L){var u=C.exec(M.slice(L));return u?(f.m=R.get(u[0].toLowerCase()),L+u[0].length):-1}function E(f,M,L){return D(f,e,M,L)}function A(f,M,L){return D(f,n,M,L)}function d(f,M,L){return D(f,r,M,L)}function y(f){return o[f.getDay()]}function b(f){return a[f.getDay()]}function k(f){return m[f.getMonth()]}function l(f){return h[f.getMonth()]}function s(f){return i[+(f.getHours()>=12)]}function z(f){return 1+~~(f.getMonth()/3)}function c(f){return o[f.getUTCDay()]}function U(f){return a[f.getUTCDay()]}function $(f){return m[f.getUTCMonth()]}function P(f){return h[f.getUTCMonth()]}function xt(f){return i[+(f.getUTCHours()>=12)]}function At(f){return 1+~~(f.getUTCMonth()/3)}return{format:function(f){var M=w(f+="",B);return M.toString=function(){return f},M},parse:function(f){var M=H(f+="",!1);return M.toString=function(){return f},M},utcFormat:function(f){var M=w(f+="",Z);return M.toString=function(){return f},M},utcParse:function(f){var M=H(f+="",!0);return M.toString=function(){return f},M}}}var Ve={"-":"",_:" ",0:"0"},K=/^\s*\d+/,Yr=/^%/,Fr=/[\\^$*+?|[\]().{}]/g;function W(t,e,n){var r=t<0?"-":"",i=(r?-t:t)+"",a=i.length;return r+(a[e.toLowerCase(),n]))}function Lr(t,e,n){var r=K.exec(e.slice(n,n+1));return r?(t.w=+r[0],n+r[0].length):-1}function Ar(t,e,n){var r=K.exec(e.slice(n,n+1));return r?(t.u=+r[0],n+r[0].length):-1}function Er(t,e,n){var r=K.exec(e.slice(n,n+2));return r?(t.U=+r[0],n+r[0].length):-1}function Ir(t,e,n){var r=K.exec(e.slice(n,n+2));return r?(t.V=+r[0],n+r[0].length):-1}function Wr(t,e,n){var r=K.exec(e.slice(n,n+2));return r?(t.W=+r[0],n+r[0].length):-1}function Pe(t,e,n){var r=K.exec(e.slice(n,n+4));return r?(t.y=+r[0],n+r[0].length):-1}function Re(t,e,n){var r=K.exec(e.slice(n,n+2));return r?(t.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function Or(t,e,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(n,n+6));return r?(t.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function Hr(t,e,n){var r=K.exec(e.slice(n,n+1));return r?(t.q=r[0]*3-3,n+r[0].length):-1}function zr(t,e,n){var r=K.exec(e.slice(n,n+2));return r?(t.m=r[0]-1,n+r[0].length):-1}function Be(t,e,n){var r=K.exec(e.slice(n,n+2));return r?(t.d=+r[0],n+r[0].length):-1}function Nr(t,e,n){var r=K.exec(e.slice(n,n+3));return r?(t.m=0,t.d=+r[0],n+r[0].length):-1}function Ze(t,e,n){var r=K.exec(e.slice(n,n+2));return r?(t.H=+r[0],n+r[0].length):-1}function Vr(t,e,n){var r=K.exec(e.slice(n,n+2));return r?(t.M=+r[0],n+r[0].length):-1}function Pr(t,e,n){var r=K.exec(e.slice(n,n+2));return r?(t.S=+r[0],n+r[0].length):-1}function Rr(t,e,n){var r=K.exec(e.slice(n,n+3));return r?(t.L=+r[0],n+r[0].length):-1}function Br(t,e,n){var r=K.exec(e.slice(n,n+6));return r?(t.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function Zr(t,e,n){var r=Yr.exec(e.slice(n,n+1));return r?n+r[0].length:-1}function qr(t,e,n){var r=K.exec(e.slice(n));return r?(t.Q=+r[0],n+r[0].length):-1}function Xr(t,e,n){var r=K.exec(e.slice(n));return r?(t.s=+r[0],n+r[0].length):-1}function qe(t,e){return W(t.getDate(),e,2)}function Gr(t,e){return W(t.getHours(),e,2)}function jr(t,e){return W(t.getHours()%12||12,e,2)}function Qr(t,e){return W(1+kt.count(gt(t),t),e,3)}function vn(t,e){return W(t.getMilliseconds(),e,3)}function Jr(t,e){return vn(t,e)+"000"}function $r(t,e){return W(t.getMonth()+1,e,2)}function Kr(t,e){return W(t.getMinutes(),e,2)}function ti(t,e){return W(t.getSeconds(),e,2)}function ei(t){var e=t.getDay();return e===0?7:e}function ni(t,e){return W(Pt.count(gt(t)-1,t),e,2)}function Tn(t){var e=t.getDay();return e>=4||e===0?pt(t):pt.ceil(t)}function ri(t,e){return t=Tn(t),W(pt.count(gt(t),t)+(gt(t).getDay()===4),e,2)}function ii(t){return t.getDay()}function ai(t,e){return W(Nt.count(gt(t)-1,t),e,2)}function si(t,e){return W(t.getFullYear()%100,e,2)}function oi(t,e){return t=Tn(t),W(t.getFullYear()%100,e,2)}function ci(t,e){return W(t.getFullYear()%1e4,e,4)}function li(t,e){var n=t.getDay();return t=n>=4||n===0?pt(t):pt.ceil(t),W(t.getFullYear()%1e4,e,4)}function ui(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+W(e/60|0,"0",2)+W(e%60,"0",2)}function Xe(t,e){return W(t.getUTCDate(),e,2)}function fi(t,e){return W(t.getUTCHours(),e,2)}function hi(t,e){return W(t.getUTCHours()%12||12,e,2)}function di(t,e){return W(1+_e.count(vt(t),t),e,3)}function bn(t,e){return W(t.getUTCMilliseconds(),e,3)}function mi(t,e){return bn(t,e)+"000"}function gi(t,e){return W(t.getUTCMonth()+1,e,2)}function yi(t,e){return W(t.getUTCMinutes(),e,2)}function ki(t,e){return W(t.getUTCSeconds(),e,2)}function pi(t){var e=t.getUTCDay();return e===0?7:e}function vi(t,e){return W(pn.count(vt(t)-1,t),e,2)}function xn(t){var e=t.getUTCDay();return e>=4||e===0?Ft(t):Ft.ceil(t)}function Ti(t,e){return t=xn(t),W(Ft.count(vt(t),t)+(vt(t).getUTCDay()===4),e,2)}function bi(t){return t.getUTCDay()}function xi(t,e){return W(ne.count(vt(t)-1,t),e,2)}function wi(t,e){return W(t.getUTCFullYear()%100,e,2)}function Di(t,e){return t=xn(t),W(t.getUTCFullYear()%100,e,2)}function Ci(t,e){return W(t.getUTCFullYear()%1e4,e,4)}function Mi(t,e){var n=t.getUTCDay();return t=n>=4||n===0?Ft(t):Ft.ceil(t),W(t.getUTCFullYear()%1e4,e,4)}function _i(){return"+0000"}function Ge(){return"%"}function je(t){return+t}function Qe(t){return Math.floor(+t/1e3)}var Ct,re;Si({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function Si(t){return Ct=Sr(t),re=Ct.format,Ct.parse,Ct.utcFormat,Ct.utcParse,Ct}function Yi(t){return new Date(t)}function Fi(t){return t instanceof Date?+t:+new Date(+t)}function wn(t,e,n,r,i,a,o,h,m,p){var v=jn(),S=v.invert,x=v.domain,g=p(".%L"),I=p(":%S"),C=p("%I:%M"),R=p("%I %p"),X=p("%a %d"),tt=p("%b %d"),B=p("%B"),Z=p("%Y");function J(w){return(m(w)4&&(S+=7),v.add(S,ke)},i=function(m){return m.add(4-m.isoWeekday(),ke)},a=e.prototype;a.isoWeekYear=function(){var h=i(this);return h.year()},a.isoWeek=function(h){if(!this.$utils().u(h))return this.add((h-this.isoWeek())*7,ke);var m=i(this),p=r(this.isoWeekYear(),this.$u);return m.diff(p,Li)+1},a.isoWeekday=function(h){return this.$utils().u(h)?this.day()||7:this.day(this.day()%7?h:h-7)};var o=a.startOf;a.startOf=function(h,m){var p=this.$utils(),v=p.u(m)?!0:m,S=p.p(h);return S===Ii?v?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):o.bind(this)(h,m)}};var Oi=function(e){return e.replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(n,r,i){return r||i.slice(1)})},Hi={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},zi=function(e,n){return e.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(r,i,a){var o=a&&a.toUpperCase();return i||n[a]||Hi[a]||Oi(n[o])})},Ni=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,Vi=/\d/,Qt=/\d\d/,Pi=/\d{3}/,Ri=/\d{4}/,at=/\d\d?/,Bi=/[+-]?\d+/,Zi=/[+-]\d\d:?(\d\d)?|Z/,Ot=/\d*[^-_:/,()\s\d]+/,yt={},Dn=function(e){return e=+e,e+(e>68?1900:2e3)};function qi(t){if(!t||t==="Z")return 0;var e=t.match(/([+-]|\d\d)/g),n=+(e[1]*60)+(+e[2]||0);return n===0?0:e[0]==="+"?-n:n}var nt=function(e){return function(n){this[e]=+n}},Je=[Zi,function(t){var e=this.zone||(this.zone={});e.offset=qi(t)}],pe=function(e){var n=yt[e];return n&&(n.indexOf?n:n.s.concat(n.f))},$e=function(e,n){var r,i=yt,a=i.meridiem;if(!a)r=e===(n?"pm":"PM");else for(var o=1;o<=24;o+=1)if(e.indexOf(a(o,0,n))>-1){r=o>12;break}return r},Xi={A:[Ot,function(t){this.afternoon=$e(t,!1)}],a:[Ot,function(t){this.afternoon=$e(t,!0)}],S:[Vi,function(t){this.milliseconds=+t*100}],SS:[Qt,function(t){this.milliseconds=+t*10}],SSS:[Pi,function(t){this.milliseconds=+t}],s:[at,nt("seconds")],ss:[at,nt("seconds")],m:[at,nt("minutes")],mm:[at,nt("minutes")],H:[at,nt("hours")],h:[at,nt("hours")],HH:[at,nt("hours")],hh:[at,nt("hours")],D:[at,nt("day")],DD:[Qt,nt("day")],Do:[Ot,function(t){var e=yt,n=e.ordinal,r=t.match(/\d+/);if(this.day=r[0],!!n)for(var i=1;i<=31;i+=1)n(i).replace(/\[|\]/g,"")===t&&(this.day=i)}],M:[at,nt("month")],MM:[Qt,nt("month")],MMM:[Ot,function(t){var e=pe("months"),n=pe("monthsShort"),r=(n||e.map(function(i){return i.slice(0,3)})).indexOf(t)+1;if(r<1)throw new Error;this.month=r%12||r}],MMMM:[Ot,function(t){var e=pe("months"),n=e.indexOf(t)+1;if(n<1)throw new Error;this.month=n%12||n}],Y:[Bi,nt("year")],YY:[Qt,function(t){this.year=Dn(t)}],YYYY:[Ri,nt("year")],Z:Je,ZZ:Je};function Gi(t){var e=t.afternoon;if(e!==void 0){var n=t.hours;e?n<12&&(t.hours+=12):n===12&&(t.hours=0),delete t.afternoon}}function ji(t){t=zi(t,yt&&yt.formats);for(var e=t.match(Ni),n=e.length,r=0;r-1)return new Date((n==="X"?1e3:1)*e);var i=ji(n),a=i(e),o=a.year,h=a.month,m=a.day,p=a.hours,v=a.minutes,S=a.seconds,x=a.milliseconds,g=a.zone,I=new Date,C=m||(!o&&!h?I.getDate():1),R=o||I.getFullYear(),X=0;o&&!h||(X=h>0?h-1:I.getMonth());var tt=p||0,B=v||0,Z=S||0,J=x||0;return g?new Date(Date.UTC(R,X,C,tt,B,Z,J+g.offset*60*1e3)):r?new Date(Date.UTC(R,X,C,tt,B,Z,J)):new Date(R,X,C,tt,B,Z,J)}catch{return new Date("")}};const Ji=function(t,e,n){n.p.customParseFormat=!0,t&&t.parseTwoDigitYear&&(Dn=t.parseTwoDigitYear);var r=e.prototype,i=r.parse;r.parse=function(a){var o=a.date,h=a.utc,m=a.args;this.$u=h;var p=m[1];if(typeof p=="string"){var v=m[2]===!0,S=m[3]===!0,x=v||S,g=m[2];S&&(g=m[2]),yt=this.$locale(),!v&&g&&(yt=n.Ls[g]),this.$d=Qi(o,p,h),this.init(),g&&g!==!0&&(this.$L=this.locale(g).$L),x&&o!=this.format(p)&&(this.$d=new Date("")),yt={}}else if(p instanceof Array)for(var I=p.length,C=1;C<=I;C+=1){m[1]=p[C-1];var R=n.apply(this,m);if(R.isValid()){this.$d=R.$d,this.$L=R.$L,this.init();break}C===I&&(this.$d=new Date(""))}else i.call(this,a)}},$i=function(t,e){var n=e.prototype,r=n.format;n.format=function(i){var a=this,o=this.$locale();if(!this.isValid())return r.bind(this)(i);var h=this.$utils(),m=i||Ei,p=m.replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,function(v){switch(v){case"Q":return Math.ceil((a.$M+1)/3);case"Do":return o.ordinal(a.$D);case"gggg":return a.weekYear();case"GGGG":return a.isoWeekYear();case"wo":return o.ordinal(a.week(),"W");case"w":case"ww":return h.s(a.week(),v==="w"?1:2,"0");case"W":case"WW":return h.s(a.isoWeek(),v==="W"?1:2,"0");case"k":case"kk":return h.s(String(a.$H===0?24:a.$H),v==="k"?1:2,"0");case"X":return Math.floor(a.$d.getTime()/1e3);case"x":return a.$d.getTime();case"z":return"["+a.offsetName()+"]";case"zzz":return"["+a.offsetName("long")+"]";default:return v}});return r.bind(this)(p)}};var xe=function(){var t=function(A,d,y,b){for(y=y||{},b=A.length;b--;y[A[b]]=d);return y},e=[1,3],n=[1,5],r=[7,9,11,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,31,33,34,36,43,48],i=[1,32],a=[1,33],o=[1,34],h=[1,35],m=[1,36],p=[1,37],v=[1,38],S=[1,15],x=[1,16],g=[1,17],I=[1,18],C=[1,19],R=[1,20],X=[1,21],tt=[1,22],B=[1,24],Z=[1,25],J=[1,26],w=[1,27],H=[1,28],D=[1,30],F=[1,39],Y=[1,42],_=[5,7,9,11,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,31,33,34,36,43,48],T={trace:function(){},yy:{},symbols_:{error:2,start:3,directive:4,gantt:5,document:6,EOF:7,line:8,SPACE:9,statement:10,NL:11,weekday:12,weekday_monday:13,weekday_tuesday:14,weekday_wednesday:15,weekday_thursday:16,weekday_friday:17,weekday_saturday:18,weekday_sunday:19,dateFormat:20,inclusiveEndDates:21,topAxis:22,axisFormat:23,tickInterval:24,excludes:25,includes:26,todayMarker:27,title:28,acc_title:29,acc_title_value:30,acc_descr:31,acc_descr_value:32,acc_descr_multiline_value:33,section:34,clickStatement:35,taskTxt:36,taskData:37,openDirective:38,typeDirective:39,closeDirective:40,":":41,argDirective:42,click:43,callbackname:44,callbackargs:45,href:46,clickStatementDebug:47,open_directive:48,type_directive:49,arg_directive:50,close_directive:51,$accept:0,$end:1},terminals_:{2:"error",5:"gantt",7:"EOF",9:"SPACE",11:"NL",13:"weekday_monday",14:"weekday_tuesday",15:"weekday_wednesday",16:"weekday_thursday",17:"weekday_friday",18:"weekday_saturday",19:"weekday_sunday",20:"dateFormat",21:"inclusiveEndDates",22:"topAxis",23:"axisFormat",24:"tickInterval",25:"excludes",26:"includes",27:"todayMarker",28:"title",29:"acc_title",30:"acc_title_value",31:"acc_descr",32:"acc_descr_value",33:"acc_descr_multiline_value",34:"section",36:"taskTxt",37:"taskData",41:":",43:"click",44:"callbackname",45:"callbackargs",46:"href",48:"open_directive",49:"type_directive",50:"arg_directive",51:"close_directive"},productions_:[0,[3,2],[3,3],[6,0],[6,2],[8,2],[8,1],[8,1],[8,1],[12,1],[12,1],[12,1],[12,1],[12,1],[12,1],[12,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[10,1],[10,1],[10,2],[10,1],[4,4],[4,6],[35,2],[35,3],[35,3],[35,4],[35,3],[35,4],[35,2],[47,2],[47,3],[47,3],[47,4],[47,3],[47,4],[47,2],[38,1],[39,1],[42,1],[40,1]],performAction:function(d,y,b,k,l,s,z){var c=s.length-1;switch(l){case 2:return s[c-1];case 3:this.$=[];break;case 4:s[c-1].push(s[c]),this.$=s[c-1];break;case 5:case 6:this.$=s[c];break;case 7:case 8:this.$=[];break;case 9:k.setWeekday("monday");break;case 10:k.setWeekday("tuesday");break;case 11:k.setWeekday("wednesday");break;case 12:k.setWeekday("thursday");break;case 13:k.setWeekday("friday");break;case 14:k.setWeekday("saturday");break;case 15:k.setWeekday("sunday");break;case 16:k.setDateFormat(s[c].substr(11)),this.$=s[c].substr(11);break;case 17:k.enableInclusiveEndDates(),this.$=s[c].substr(18);break;case 18:k.TopAxis(),this.$=s[c].substr(8);break;case 19:k.setAxisFormat(s[c].substr(11)),this.$=s[c].substr(11);break;case 20:k.setTickInterval(s[c].substr(13)),this.$=s[c].substr(13);break;case 21:k.setExcludes(s[c].substr(9)),this.$=s[c].substr(9);break;case 22:k.setIncludes(s[c].substr(9)),this.$=s[c].substr(9);break;case 23:k.setTodayMarker(s[c].substr(12)),this.$=s[c].substr(12);break;case 25:k.setDiagramTitle(s[c].substr(6)),this.$=s[c].substr(6);break;case 26:this.$=s[c].trim(),k.setAccTitle(this.$);break;case 27:case 28:this.$=s[c].trim(),k.setAccDescription(this.$);break;case 29:k.addSection(s[c].substr(8)),this.$=s[c].substr(8);break;case 31:k.addTask(s[c-1],s[c]),this.$="task";break;case 35:this.$=s[c-1],k.setClickEvent(s[c-1],s[c],null);break;case 36:this.$=s[c-2],k.setClickEvent(s[c-2],s[c-1],s[c]);break;case 37:this.$=s[c-2],k.setClickEvent(s[c-2],s[c-1],null),k.setLink(s[c-2],s[c]);break;case 38:this.$=s[c-3],k.setClickEvent(s[c-3],s[c-2],s[c-1]),k.setLink(s[c-3],s[c]);break;case 39:this.$=s[c-2],k.setClickEvent(s[c-2],s[c],null),k.setLink(s[c-2],s[c-1]);break;case 40:this.$=s[c-3],k.setClickEvent(s[c-3],s[c-1],s[c]),k.setLink(s[c-3],s[c-2]);break;case 41:this.$=s[c-1],k.setLink(s[c-1],s[c]);break;case 42:case 48:this.$=s[c-1]+" "+s[c];break;case 43:case 44:case 46:this.$=s[c-2]+" "+s[c-1]+" "+s[c];break;case 45:case 47:this.$=s[c-3]+" "+s[c-2]+" "+s[c-1]+" "+s[c];break;case 49:k.parseDirective("%%{","open_directive");break;case 50:k.parseDirective(s[c],"type_directive");break;case 51:s[c]=s[c].trim().replace(/'/g,'"'),k.parseDirective(s[c],"arg_directive");break;case 52:k.parseDirective("}%%","close_directive","gantt");break}},table:[{3:1,4:2,5:e,38:4,48:n},{1:[3]},{3:6,4:2,5:e,38:4,48:n},t(r,[2,3],{6:7}),{39:8,49:[1,9]},{49:[2,49]},{1:[2,1]},{4:31,7:[1,10],8:11,9:[1,12],10:13,11:[1,14],12:23,13:i,14:a,15:o,16:h,17:m,18:p,19:v,20:S,21:x,22:g,23:I,24:C,25:R,26:X,27:tt,28:B,29:Z,31:J,33:w,34:H,35:29,36:D,38:4,43:F,48:n},{40:40,41:[1,41],51:Y},t([41,51],[2,50]),t(r,[2,8],{1:[2,2]}),t(r,[2,4]),{4:31,10:43,12:23,13:i,14:a,15:o,16:h,17:m,18:p,19:v,20:S,21:x,22:g,23:I,24:C,25:R,26:X,27:tt,28:B,29:Z,31:J,33:w,34:H,35:29,36:D,38:4,43:F,48:n},t(r,[2,6]),t(r,[2,7]),t(r,[2,16]),t(r,[2,17]),t(r,[2,18]),t(r,[2,19]),t(r,[2,20]),t(r,[2,21]),t(r,[2,22]),t(r,[2,23]),t(r,[2,24]),t(r,[2,25]),{30:[1,44]},{32:[1,45]},t(r,[2,28]),t(r,[2,29]),t(r,[2,30]),{37:[1,46]},t(r,[2,32]),t(r,[2,9]),t(r,[2,10]),t(r,[2,11]),t(r,[2,12]),t(r,[2,13]),t(r,[2,14]),t(r,[2,15]),{44:[1,47],46:[1,48]},{11:[1,49]},{42:50,50:[1,51]},{11:[2,52]},t(r,[2,5]),t(r,[2,26]),t(r,[2,27]),t(r,[2,31]),t(r,[2,35],{45:[1,52],46:[1,53]}),t(r,[2,41],{44:[1,54]}),t(_,[2,33]),{40:55,51:Y},{51:[2,51]},t(r,[2,36],{46:[1,56]}),t(r,[2,37]),t(r,[2,39],{45:[1,57]}),{11:[1,58]},t(r,[2,38]),t(r,[2,40]),t(_,[2,34])],defaultActions:{5:[2,49],6:[2,1],42:[2,52],51:[2,51]},parseError:function(d,y){if(y.recoverable)this.trace(d);else{var b=new Error(d);throw b.hash=y,b}},parse:function(d){var y=this,b=[0],k=[],l=[null],s=[],z=this.table,c="",U=0,$=0,P=2,xt=1,At=s.slice.call(arguments,1),f=Object.create(this.lexer),M={yy:{}};for(var L in this.yy)Object.prototype.hasOwnProperty.call(this.yy,L)&&(M.yy[L]=this.yy[L]);f.setInput(d,M.yy),M.yy.lexer=f,M.yy.parser=this,typeof f.yylloc>"u"&&(f.yylloc={});var u=f.yylloc;s.push(u);var et=f.options&&f.options.ranges;typeof M.yy.parseError=="function"?this.parseError=M.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function N(){var lt;return lt=k.pop()||f.lex()||xt,typeof lt!="number"&&(lt instanceof Array&&(k=lt,lt=k.pop()),lt=y.symbols_[lt]||lt),lt}for(var V,q,G,wt,Dt={},qt,ct,Oe,Xt;;){if(q=b[b.length-1],this.defaultActions[q]?G=this.defaultActions[q]:((V===null||typeof V>"u")&&(V=N()),G=z[q]&&z[q][V]),typeof G>"u"||!G.length||!G[0]){var ae="";Xt=[];for(qt in z[q])this.terminals_[qt]&&qt>P&&Xt.push("'"+this.terminals_[qt]+"'");f.showPosition?ae="Parse error on line "+(U+1)+`: +import{ac as en,ad as nn,ae as rn,af as an,ag as En,ah as se,ai as In,aj as rt,c as _t,s as Wn,g as On,v as Hn,x as zn,b as Nn,a as Vn,m as Pn,z as Rn,n as Bn,l as ve,h as Gt,i as Zn,j as qn,y as Xn}from"../app.3c4fe3d0.js";import{b as Gn,t as He,c as jn,a as Qn,l as Jn}from"./linear.ecff5eb1.js";import{i as $n}from"./init.77b53fdd.js";import"./framework.be0a7370.js";import"./theme.71fa6e36.js";function Kn(t,e){let n;if(e===void 0)for(const r of t)r!=null&&(n=r)&&(n=r);else{let r=-1;for(let i of t)(i=e(i,++r,t))!=null&&(n=i)&&(n=i)}return n}function tr(t,e){let n;if(e===void 0)for(const r of t)r!=null&&(n>r||n===void 0&&r>=r)&&(n=r);else{let r=-1;for(let i of t)(i=e(i,++r,t))!=null&&(n>i||n===void 0&&i>=i)&&(n=i)}return n}function er(t){return t}var Jt=1,oe=2,Te=3,jt=4,ze=1e-6;function nr(t){return"translate("+t+",0)"}function rr(t){return"translate(0,"+t+")"}function ir(t){return e=>+t(e)}function ar(t,e){return e=Math.max(0,t.bandwidth()-e*2)/2,t.round()&&(e=Math.round(e)),n=>+t(n)+e}function sr(){return!this.__axis}function sn(t,e){var n=[],r=null,i=null,a=6,o=6,h=3,m=typeof window<"u"&&window.devicePixelRatio>1?0:.5,p=t===Jt||t===jt?-1:1,v=t===jt||t===oe?"x":"y",S=t===Jt||t===Te?nr:rr;function x(g){var I=r??(e.ticks?e.ticks.apply(e,n):e.domain()),C=i??(e.tickFormat?e.tickFormat.apply(e,n):er),R=Math.max(a,0)+h,X=e.range(),tt=+X[0]+m,B=+X[X.length-1]+m,Z=(e.bandwidth?ar:ir)(e.copy(),m),J=g.selection?g.selection():g,w=J.selectAll(".domain").data([null]),H=J.selectAll(".tick").data(I,e).order(),D=H.exit(),F=H.enter().append("g").attr("class","tick"),Y=H.select("line"),_=H.select("text");w=w.merge(w.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),H=H.merge(F),Y=Y.merge(F.append("line").attr("stroke","currentColor").attr(v+"2",p*a)),_=_.merge(F.append("text").attr("fill","currentColor").attr(v,p*R).attr("dy",t===Jt?"0em":t===Te?"0.71em":"0.32em")),g!==J&&(w=w.transition(g),H=H.transition(g),Y=Y.transition(g),_=_.transition(g),D=D.transition(g).attr("opacity",ze).attr("transform",function(T){return isFinite(T=Z(T))?S(T+m):this.getAttribute("transform")}),F.attr("opacity",ze).attr("transform",function(T){var O=this.parentNode.__axis;return S((O&&isFinite(O=O(T))?O:Z(T))+m)})),D.remove(),w.attr("d",t===jt||t===oe?o?"M"+p*o+","+tt+"H"+m+"V"+B+"H"+p*o:"M"+m+","+tt+"V"+B:o?"M"+tt+","+p*o+"V"+m+"H"+B+"V"+p*o:"M"+tt+","+m+"H"+B),H.attr("opacity",1).attr("transform",function(T){return S(Z(T)+m)}),Y.attr(v+"2",p*a),_.attr(v,p*R).text(C),J.filter(sr).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",t===oe?"start":t===jt?"end":"middle"),J.each(function(){this.__axis=Z})}return x.scale=function(g){return arguments.length?(e=g,x):e},x.ticks=function(){return n=Array.from(arguments),x},x.tickArguments=function(g){return arguments.length?(n=g==null?[]:Array.from(g),x):n.slice()},x.tickValues=function(g){return arguments.length?(r=g==null?null:Array.from(g),x):r&&r.slice()},x.tickFormat=function(g){return arguments.length?(i=g,x):i},x.tickSize=function(g){return arguments.length?(a=o=+g,x):a},x.tickSizeInner=function(g){return arguments.length?(a=+g,x):a},x.tickSizeOuter=function(g){return arguments.length?(o=+g,x):o},x.tickPadding=function(g){return arguments.length?(h=+g,x):h},x.offset=function(g){return arguments.length?(m=+g,x):m},x}function or(t){return sn(Jt,t)}function cr(t){return sn(Te,t)}const lr=Math.PI/180,ur=180/Math.PI,te=18,on=.96422,cn=1,ln=.82521,un=4/29,St=6/29,fn=3*St*St,fr=St*St*St;function hn(t){if(t instanceof ot)return new ot(t.l,t.a,t.b,t.opacity);if(t instanceof ft)return dn(t);t instanceof rn||(t=En(t));var e=fe(t.r),n=fe(t.g),r=fe(t.b),i=ce((.2225045*e+.7168786*n+.0606169*r)/cn),a,o;return e===n&&n===r?a=o=i:(a=ce((.4360747*e+.3850649*n+.1430804*r)/on),o=ce((.0139322*e+.0971045*n+.7141733*r)/ln)),new ot(116*i-16,500*(a-i),200*(i-o),t.opacity)}function hr(t,e,n,r){return arguments.length===1?hn(t):new ot(t,e,n,r??1)}function ot(t,e,n,r){this.l=+t,this.a=+e,this.b=+n,this.opacity=+r}en(ot,hr,nn(an,{brighter(t){return new ot(this.l+te*(t??1),this.a,this.b,this.opacity)},darker(t){return new ot(this.l-te*(t??1),this.a,this.b,this.opacity)},rgb(){var t=(this.l+16)/116,e=isNaN(this.a)?t:t+this.a/500,n=isNaN(this.b)?t:t-this.b/200;return e=on*le(e),t=cn*le(t),n=ln*le(n),new rn(ue(3.1338561*e-1.6168667*t-.4906146*n),ue(-.9787684*e+1.9161415*t+.033454*n),ue(.0719453*e-.2289914*t+1.4052427*n),this.opacity)}}));function ce(t){return t>fr?Math.pow(t,1/3):t/fn+un}function le(t){return t>St?t*t*t:fn*(t-un)}function ue(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function fe(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function dr(t){if(t instanceof ft)return new ft(t.h,t.c,t.l,t.opacity);if(t instanceof ot||(t=hn(t)),t.a===0&&t.b===0)return new ft(NaN,0(t(a=new Date(+a)),a),i.ceil=a=>(t(a=new Date(a-1)),e(a,1),t(a),a),i.round=a=>{const o=i(a),h=i.ceil(a);return a-o(e(a=new Date(+a),o==null?1:Math.floor(o)),a),i.range=(a,o,h)=>{const m=[];if(a=i.ceil(a),h=h==null?1:Math.floor(h),!(a0))return m;let p;do m.push(p=new Date(+a)),e(a,h),t(a);while(pQ(o=>{if(o>=o)for(;t(o),!a(o);)o.setTime(o-1)},(o,h)=>{if(o>=o)if(h<0)for(;++h<=0;)for(;e(o,-1),!a(o););else for(;--h>=0;)for(;e(o,1),!a(o););}),n&&(i.count=(a,o)=>(he.setTime(+a),de.setTime(+o),t(he),t(de),Math.floor(n(he,de))),i.every=a=>(a=Math.floor(a),!isFinite(a)||!(a>0)?null:a>1?i.filter(r?o=>r(o)%a===0:o=>i.count(0,o)%a===0):i)),i}const ee=Q(()=>{},(t,e)=>{t.setTime(+t+e)},(t,e)=>e-t);ee.every=t=>(t=Math.floor(t),!isFinite(t)||!(t>0)?null:t>1?Q(e=>{e.setTime(Math.floor(e/t)*t)},(e,n)=>{e.setTime(+e+n*t)},(e,n)=>(n-e)/t):ee);ee.range;const ht=1e3,it=ht*60,dt=it*60,mt=dt*24,Me=mt*7,Ne=mt*30,me=mt*365,Mt=Q(t=>{t.setTime(t-t.getMilliseconds())},(t,e)=>{t.setTime(+t+e*ht)},(t,e)=>(e-t)/ht,t=>t.getUTCSeconds());Mt.range;const Ht=Q(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*ht)},(t,e)=>{t.setTime(+t+e*it)},(t,e)=>(e-t)/it,t=>t.getMinutes());Ht.range;const kr=Q(t=>{t.setUTCSeconds(0,0)},(t,e)=>{t.setTime(+t+e*it)},(t,e)=>(e-t)/it,t=>t.getUTCMinutes());kr.range;const zt=Q(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*ht-t.getMinutes()*it)},(t,e)=>{t.setTime(+t+e*dt)},(t,e)=>(e-t)/dt,t=>t.getHours());zt.range;const pr=Q(t=>{t.setUTCMinutes(0,0,0)},(t,e)=>{t.setTime(+t+e*dt)},(t,e)=>(e-t)/dt,t=>t.getUTCHours());pr.range;const kt=Q(t=>t.setHours(0,0,0,0),(t,e)=>t.setDate(t.getDate()+e),(t,e)=>(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*it)/mt,t=>t.getDate()-1);kt.range;const _e=Q(t=>{t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+e)},(t,e)=>(e-t)/mt,t=>t.getUTCDate()-1);_e.range;const vr=Q(t=>{t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+e)},(t,e)=>(e-t)/mt,t=>Math.floor(t/mt));vr.range;function Tt(t){return Q(e=>{e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)},(e,n)=>{e.setDate(e.getDate()+n*7)},(e,n)=>(n-e-(n.getTimezoneOffset()-e.getTimezoneOffset())*it)/Me)}const Pt=Tt(0),Nt=Tt(1),mn=Tt(2),gn=Tt(3),pt=Tt(4),yn=Tt(5),kn=Tt(6);Pt.range;Nt.range;mn.range;gn.range;pt.range;yn.range;kn.range;function bt(t){return Q(e=>{e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)},(e,n)=>{e.setUTCDate(e.getUTCDate()+n*7)},(e,n)=>(n-e)/Me)}const pn=bt(0),ne=bt(1),Tr=bt(2),br=bt(3),Ft=bt(4),xr=bt(5),wr=bt(6);pn.range;ne.range;Tr.range;br.range;Ft.range;xr.range;wr.range;const Vt=Q(t=>{t.setDate(1),t.setHours(0,0,0,0)},(t,e)=>{t.setMonth(t.getMonth()+e)},(t,e)=>e.getMonth()-t.getMonth()+(e.getFullYear()-t.getFullYear())*12,t=>t.getMonth());Vt.range;const Dr=Q(t=>{t.setUTCDate(1),t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCMonth(t.getUTCMonth()+e)},(t,e)=>e.getUTCMonth()-t.getUTCMonth()+(e.getUTCFullYear()-t.getUTCFullYear())*12,t=>t.getUTCMonth());Dr.range;const gt=Q(t=>{t.setMonth(0,1),t.setHours(0,0,0,0)},(t,e)=>{t.setFullYear(t.getFullYear()+e)},(t,e)=>e.getFullYear()-t.getFullYear(),t=>t.getFullYear());gt.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:Q(e=>{e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)},(e,n)=>{e.setFullYear(e.getFullYear()+n*t)});gt.range;const vt=Q(t=>{t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCFullYear(t.getUTCFullYear()+e)},(t,e)=>e.getUTCFullYear()-t.getUTCFullYear(),t=>t.getUTCFullYear());vt.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:Q(e=>{e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,n)=>{e.setUTCFullYear(e.getUTCFullYear()+n*t)});vt.range;function Cr(t,e,n,r,i,a){const o=[[Mt,1,ht],[Mt,5,5*ht],[Mt,15,15*ht],[Mt,30,30*ht],[a,1,it],[a,5,5*it],[a,15,15*it],[a,30,30*it],[i,1,dt],[i,3,3*dt],[i,6,6*dt],[i,12,12*dt],[r,1,mt],[r,2,2*mt],[n,1,Me],[e,1,Ne],[e,3,3*Ne],[t,1,me]];function h(p,v,S){const x=vR).right(o,x);if(g===o.length)return t.every(He(p/me,v/me,S));if(g===0)return ee.every(Math.max(He(p,v,S),1));const[I,C]=o[x/o[g-1][2]53)return null;"w"in u||(u.w=1),"Z"in u?(N=ye(Et(u.y,0,1)),V=N.getUTCDay(),N=V>4||V===0?ne.ceil(N):ne(N),N=_e.offset(N,(u.V-1)*7),u.y=N.getUTCFullYear(),u.m=N.getUTCMonth(),u.d=N.getUTCDate()+(u.w+6)%7):(N=ge(Et(u.y,0,1)),V=N.getDay(),N=V>4||V===0?Nt.ceil(N):Nt(N),N=kt.offset(N,(u.V-1)*7),u.y=N.getFullYear(),u.m=N.getMonth(),u.d=N.getDate()+(u.w+6)%7)}else("W"in u||"U"in u)&&("w"in u||(u.w="u"in u?u.u%7:"W"in u?1:0),V="Z"in u?ye(Et(u.y,0,1)).getUTCDay():ge(Et(u.y,0,1)).getDay(),u.m=0,u.d="W"in u?(u.w+6)%7+u.W*7-(V+5)%7:u.w+u.U*7-(V+6)%7);return"Z"in u?(u.H+=u.Z/100|0,u.M+=u.Z%100,ye(u)):ge(u)}}function D(f,M,L,u){for(var et=0,N=M.length,V=L.length,q,G;et=V)return-1;if(q=M.charCodeAt(et++),q===37){if(q=M.charAt(et++),G=J[q in Ve?M.charAt(et++):q],!G||(u=G(f,L,u))<0)return-1}else if(q!=L.charCodeAt(u++))return-1}return u}function F(f,M,L){var u=p.exec(M.slice(L));return u?(f.p=v.get(u[0].toLowerCase()),L+u[0].length):-1}function Y(f,M,L){var u=g.exec(M.slice(L));return u?(f.w=I.get(u[0].toLowerCase()),L+u[0].length):-1}function _(f,M,L){var u=S.exec(M.slice(L));return u?(f.w=x.get(u[0].toLowerCase()),L+u[0].length):-1}function T(f,M,L){var u=X.exec(M.slice(L));return u?(f.m=tt.get(u[0].toLowerCase()),L+u[0].length):-1}function O(f,M,L){var u=C.exec(M.slice(L));return u?(f.m=R.get(u[0].toLowerCase()),L+u[0].length):-1}function E(f,M,L){return D(f,e,M,L)}function A(f,M,L){return D(f,n,M,L)}function d(f,M,L){return D(f,r,M,L)}function y(f){return o[f.getDay()]}function b(f){return a[f.getDay()]}function k(f){return m[f.getMonth()]}function l(f){return h[f.getMonth()]}function s(f){return i[+(f.getHours()>=12)]}function z(f){return 1+~~(f.getMonth()/3)}function c(f){return o[f.getUTCDay()]}function U(f){return a[f.getUTCDay()]}function $(f){return m[f.getUTCMonth()]}function P(f){return h[f.getUTCMonth()]}function xt(f){return i[+(f.getUTCHours()>=12)]}function At(f){return 1+~~(f.getUTCMonth()/3)}return{format:function(f){var M=w(f+="",B);return M.toString=function(){return f},M},parse:function(f){var M=H(f+="",!1);return M.toString=function(){return f},M},utcFormat:function(f){var M=w(f+="",Z);return M.toString=function(){return f},M},utcParse:function(f){var M=H(f+="",!0);return M.toString=function(){return f},M}}}var Ve={"-":"",_:" ",0:"0"},K=/^\s*\d+/,Yr=/^%/,Fr=/[\\^$*+?|[\]().{}]/g;function W(t,e,n){var r=t<0?"-":"",i=(r?-t:t)+"",a=i.length;return r+(a[e.toLowerCase(),n]))}function Lr(t,e,n){var r=K.exec(e.slice(n,n+1));return r?(t.w=+r[0],n+r[0].length):-1}function Ar(t,e,n){var r=K.exec(e.slice(n,n+1));return r?(t.u=+r[0],n+r[0].length):-1}function Er(t,e,n){var r=K.exec(e.slice(n,n+2));return r?(t.U=+r[0],n+r[0].length):-1}function Ir(t,e,n){var r=K.exec(e.slice(n,n+2));return r?(t.V=+r[0],n+r[0].length):-1}function Wr(t,e,n){var r=K.exec(e.slice(n,n+2));return r?(t.W=+r[0],n+r[0].length):-1}function Pe(t,e,n){var r=K.exec(e.slice(n,n+4));return r?(t.y=+r[0],n+r[0].length):-1}function Re(t,e,n){var r=K.exec(e.slice(n,n+2));return r?(t.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function Or(t,e,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(n,n+6));return r?(t.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function Hr(t,e,n){var r=K.exec(e.slice(n,n+1));return r?(t.q=r[0]*3-3,n+r[0].length):-1}function zr(t,e,n){var r=K.exec(e.slice(n,n+2));return r?(t.m=r[0]-1,n+r[0].length):-1}function Be(t,e,n){var r=K.exec(e.slice(n,n+2));return r?(t.d=+r[0],n+r[0].length):-1}function Nr(t,e,n){var r=K.exec(e.slice(n,n+3));return r?(t.m=0,t.d=+r[0],n+r[0].length):-1}function Ze(t,e,n){var r=K.exec(e.slice(n,n+2));return r?(t.H=+r[0],n+r[0].length):-1}function Vr(t,e,n){var r=K.exec(e.slice(n,n+2));return r?(t.M=+r[0],n+r[0].length):-1}function Pr(t,e,n){var r=K.exec(e.slice(n,n+2));return r?(t.S=+r[0],n+r[0].length):-1}function Rr(t,e,n){var r=K.exec(e.slice(n,n+3));return r?(t.L=+r[0],n+r[0].length):-1}function Br(t,e,n){var r=K.exec(e.slice(n,n+6));return r?(t.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function Zr(t,e,n){var r=Yr.exec(e.slice(n,n+1));return r?n+r[0].length:-1}function qr(t,e,n){var r=K.exec(e.slice(n));return r?(t.Q=+r[0],n+r[0].length):-1}function Xr(t,e,n){var r=K.exec(e.slice(n));return r?(t.s=+r[0],n+r[0].length):-1}function qe(t,e){return W(t.getDate(),e,2)}function Gr(t,e){return W(t.getHours(),e,2)}function jr(t,e){return W(t.getHours()%12||12,e,2)}function Qr(t,e){return W(1+kt.count(gt(t),t),e,3)}function vn(t,e){return W(t.getMilliseconds(),e,3)}function Jr(t,e){return vn(t,e)+"000"}function $r(t,e){return W(t.getMonth()+1,e,2)}function Kr(t,e){return W(t.getMinutes(),e,2)}function ti(t,e){return W(t.getSeconds(),e,2)}function ei(t){var e=t.getDay();return e===0?7:e}function ni(t,e){return W(Pt.count(gt(t)-1,t),e,2)}function Tn(t){var e=t.getDay();return e>=4||e===0?pt(t):pt.ceil(t)}function ri(t,e){return t=Tn(t),W(pt.count(gt(t),t)+(gt(t).getDay()===4),e,2)}function ii(t){return t.getDay()}function ai(t,e){return W(Nt.count(gt(t)-1,t),e,2)}function si(t,e){return W(t.getFullYear()%100,e,2)}function oi(t,e){return t=Tn(t),W(t.getFullYear()%100,e,2)}function ci(t,e){return W(t.getFullYear()%1e4,e,4)}function li(t,e){var n=t.getDay();return t=n>=4||n===0?pt(t):pt.ceil(t),W(t.getFullYear()%1e4,e,4)}function ui(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+W(e/60|0,"0",2)+W(e%60,"0",2)}function Xe(t,e){return W(t.getUTCDate(),e,2)}function fi(t,e){return W(t.getUTCHours(),e,2)}function hi(t,e){return W(t.getUTCHours()%12||12,e,2)}function di(t,e){return W(1+_e.count(vt(t),t),e,3)}function bn(t,e){return W(t.getUTCMilliseconds(),e,3)}function mi(t,e){return bn(t,e)+"000"}function gi(t,e){return W(t.getUTCMonth()+1,e,2)}function yi(t,e){return W(t.getUTCMinutes(),e,2)}function ki(t,e){return W(t.getUTCSeconds(),e,2)}function pi(t){var e=t.getUTCDay();return e===0?7:e}function vi(t,e){return W(pn.count(vt(t)-1,t),e,2)}function xn(t){var e=t.getUTCDay();return e>=4||e===0?Ft(t):Ft.ceil(t)}function Ti(t,e){return t=xn(t),W(Ft.count(vt(t),t)+(vt(t).getUTCDay()===4),e,2)}function bi(t){return t.getUTCDay()}function xi(t,e){return W(ne.count(vt(t)-1,t),e,2)}function wi(t,e){return W(t.getUTCFullYear()%100,e,2)}function Di(t,e){return t=xn(t),W(t.getUTCFullYear()%100,e,2)}function Ci(t,e){return W(t.getUTCFullYear()%1e4,e,4)}function Mi(t,e){var n=t.getUTCDay();return t=n>=4||n===0?Ft(t):Ft.ceil(t),W(t.getUTCFullYear()%1e4,e,4)}function _i(){return"+0000"}function Ge(){return"%"}function je(t){return+t}function Qe(t){return Math.floor(+t/1e3)}var Ct,re;Si({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function Si(t){return Ct=Sr(t),re=Ct.format,Ct.parse,Ct.utcFormat,Ct.utcParse,Ct}function Yi(t){return new Date(t)}function Fi(t){return t instanceof Date?+t:+new Date(+t)}function wn(t,e,n,r,i,a,o,h,m,p){var v=jn(),S=v.invert,x=v.domain,g=p(".%L"),I=p(":%S"),C=p("%I:%M"),R=p("%I %p"),X=p("%a %d"),tt=p("%b %d"),B=p("%B"),Z=p("%Y");function J(w){return(m(w)4&&(S+=7),v.add(S,ke)},i=function(m){return m.add(4-m.isoWeekday(),ke)},a=e.prototype;a.isoWeekYear=function(){var h=i(this);return h.year()},a.isoWeek=function(h){if(!this.$utils().u(h))return this.add((h-this.isoWeek())*7,ke);var m=i(this),p=r(this.isoWeekYear(),this.$u);return m.diff(p,Li)+1},a.isoWeekday=function(h){return this.$utils().u(h)?this.day()||7:this.day(this.day()%7?h:h-7)};var o=a.startOf;a.startOf=function(h,m){var p=this.$utils(),v=p.u(m)?!0:m,S=p.p(h);return S===Ii?v?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):o.bind(this)(h,m)}};var Oi=function(e){return e.replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(n,r,i){return r||i.slice(1)})},Hi={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},zi=function(e,n){return e.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(r,i,a){var o=a&&a.toUpperCase();return i||n[a]||Hi[a]||Oi(n[o])})},Ni=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,Vi=/\d/,Qt=/\d\d/,Pi=/\d{3}/,Ri=/\d{4}/,at=/\d\d?/,Bi=/[+-]?\d+/,Zi=/[+-]\d\d:?(\d\d)?|Z/,Ot=/\d*[^-_:/,()\s\d]+/,yt={},Dn=function(e){return e=+e,e+(e>68?1900:2e3)};function qi(t){if(!t||t==="Z")return 0;var e=t.match(/([+-]|\d\d)/g),n=+(e[1]*60)+(+e[2]||0);return n===0?0:e[0]==="+"?-n:n}var nt=function(e){return function(n){this[e]=+n}},Je=[Zi,function(t){var e=this.zone||(this.zone={});e.offset=qi(t)}],pe=function(e){var n=yt[e];return n&&(n.indexOf?n:n.s.concat(n.f))},$e=function(e,n){var r,i=yt,a=i.meridiem;if(!a)r=e===(n?"pm":"PM");else for(var o=1;o<=24;o+=1)if(e.indexOf(a(o,0,n))>-1){r=o>12;break}return r},Xi={A:[Ot,function(t){this.afternoon=$e(t,!1)}],a:[Ot,function(t){this.afternoon=$e(t,!0)}],S:[Vi,function(t){this.milliseconds=+t*100}],SS:[Qt,function(t){this.milliseconds=+t*10}],SSS:[Pi,function(t){this.milliseconds=+t}],s:[at,nt("seconds")],ss:[at,nt("seconds")],m:[at,nt("minutes")],mm:[at,nt("minutes")],H:[at,nt("hours")],h:[at,nt("hours")],HH:[at,nt("hours")],hh:[at,nt("hours")],D:[at,nt("day")],DD:[Qt,nt("day")],Do:[Ot,function(t){var e=yt,n=e.ordinal,r=t.match(/\d+/);if(this.day=r[0],!!n)for(var i=1;i<=31;i+=1)n(i).replace(/\[|\]/g,"")===t&&(this.day=i)}],M:[at,nt("month")],MM:[Qt,nt("month")],MMM:[Ot,function(t){var e=pe("months"),n=pe("monthsShort"),r=(n||e.map(function(i){return i.slice(0,3)})).indexOf(t)+1;if(r<1)throw new Error;this.month=r%12||r}],MMMM:[Ot,function(t){var e=pe("months"),n=e.indexOf(t)+1;if(n<1)throw new Error;this.month=n%12||n}],Y:[Bi,nt("year")],YY:[Qt,function(t){this.year=Dn(t)}],YYYY:[Ri,nt("year")],Z:Je,ZZ:Je};function Gi(t){var e=t.afternoon;if(e!==void 0){var n=t.hours;e?n<12&&(t.hours+=12):n===12&&(t.hours=0),delete t.afternoon}}function ji(t){t=zi(t,yt&&yt.formats);for(var e=t.match(Ni),n=e.length,r=0;r-1)return new Date((n==="X"?1e3:1)*e);var i=ji(n),a=i(e),o=a.year,h=a.month,m=a.day,p=a.hours,v=a.minutes,S=a.seconds,x=a.milliseconds,g=a.zone,I=new Date,C=m||(!o&&!h?I.getDate():1),R=o||I.getFullYear(),X=0;o&&!h||(X=h>0?h-1:I.getMonth());var tt=p||0,B=v||0,Z=S||0,J=x||0;return g?new Date(Date.UTC(R,X,C,tt,B,Z,J+g.offset*60*1e3)):r?new Date(Date.UTC(R,X,C,tt,B,Z,J)):new Date(R,X,C,tt,B,Z,J)}catch{return new Date("")}};const Ji=function(t,e,n){n.p.customParseFormat=!0,t&&t.parseTwoDigitYear&&(Dn=t.parseTwoDigitYear);var r=e.prototype,i=r.parse;r.parse=function(a){var o=a.date,h=a.utc,m=a.args;this.$u=h;var p=m[1];if(typeof p=="string"){var v=m[2]===!0,S=m[3]===!0,x=v||S,g=m[2];S&&(g=m[2]),yt=this.$locale(),!v&&g&&(yt=n.Ls[g]),this.$d=Qi(o,p,h),this.init(),g&&g!==!0&&(this.$L=this.locale(g).$L),x&&o!=this.format(p)&&(this.$d=new Date("")),yt={}}else if(p instanceof Array)for(var I=p.length,C=1;C<=I;C+=1){m[1]=p[C-1];var R=n.apply(this,m);if(R.isValid()){this.$d=R.$d,this.$L=R.$L,this.init();break}C===I&&(this.$d=new Date(""))}else i.call(this,a)}},$i=function(t,e){var n=e.prototype,r=n.format;n.format=function(i){var a=this,o=this.$locale();if(!this.isValid())return r.bind(this)(i);var h=this.$utils(),m=i||Ei,p=m.replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,function(v){switch(v){case"Q":return Math.ceil((a.$M+1)/3);case"Do":return o.ordinal(a.$D);case"gggg":return a.weekYear();case"GGGG":return a.isoWeekYear();case"wo":return o.ordinal(a.week(),"W");case"w":case"ww":return h.s(a.week(),v==="w"?1:2,"0");case"W":case"WW":return h.s(a.isoWeek(),v==="W"?1:2,"0");case"k":case"kk":return h.s(String(a.$H===0?24:a.$H),v==="k"?1:2,"0");case"X":return Math.floor(a.$d.getTime()/1e3);case"x":return a.$d.getTime();case"z":return"["+a.offsetName()+"]";case"zzz":return"["+a.offsetName("long")+"]";default:return v}});return r.bind(this)(p)}};var xe=function(){var t=function(A,d,y,b){for(y=y||{},b=A.length;b--;y[A[b]]=d);return y},e=[1,3],n=[1,5],r=[7,9,11,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,31,33,34,36,43,48],i=[1,32],a=[1,33],o=[1,34],h=[1,35],m=[1,36],p=[1,37],v=[1,38],S=[1,15],x=[1,16],g=[1,17],I=[1,18],C=[1,19],R=[1,20],X=[1,21],tt=[1,22],B=[1,24],Z=[1,25],J=[1,26],w=[1,27],H=[1,28],D=[1,30],F=[1,39],Y=[1,42],_=[5,7,9,11,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,31,33,34,36,43,48],T={trace:function(){},yy:{},symbols_:{error:2,start:3,directive:4,gantt:5,document:6,EOF:7,line:8,SPACE:9,statement:10,NL:11,weekday:12,weekday_monday:13,weekday_tuesday:14,weekday_wednesday:15,weekday_thursday:16,weekday_friday:17,weekday_saturday:18,weekday_sunday:19,dateFormat:20,inclusiveEndDates:21,topAxis:22,axisFormat:23,tickInterval:24,excludes:25,includes:26,todayMarker:27,title:28,acc_title:29,acc_title_value:30,acc_descr:31,acc_descr_value:32,acc_descr_multiline_value:33,section:34,clickStatement:35,taskTxt:36,taskData:37,openDirective:38,typeDirective:39,closeDirective:40,":":41,argDirective:42,click:43,callbackname:44,callbackargs:45,href:46,clickStatementDebug:47,open_directive:48,type_directive:49,arg_directive:50,close_directive:51,$accept:0,$end:1},terminals_:{2:"error",5:"gantt",7:"EOF",9:"SPACE",11:"NL",13:"weekday_monday",14:"weekday_tuesday",15:"weekday_wednesday",16:"weekday_thursday",17:"weekday_friday",18:"weekday_saturday",19:"weekday_sunday",20:"dateFormat",21:"inclusiveEndDates",22:"topAxis",23:"axisFormat",24:"tickInterval",25:"excludes",26:"includes",27:"todayMarker",28:"title",29:"acc_title",30:"acc_title_value",31:"acc_descr",32:"acc_descr_value",33:"acc_descr_multiline_value",34:"section",36:"taskTxt",37:"taskData",41:":",43:"click",44:"callbackname",45:"callbackargs",46:"href",48:"open_directive",49:"type_directive",50:"arg_directive",51:"close_directive"},productions_:[0,[3,2],[3,3],[6,0],[6,2],[8,2],[8,1],[8,1],[8,1],[12,1],[12,1],[12,1],[12,1],[12,1],[12,1],[12,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[10,1],[10,1],[10,2],[10,1],[4,4],[4,6],[35,2],[35,3],[35,3],[35,4],[35,3],[35,4],[35,2],[47,2],[47,3],[47,3],[47,4],[47,3],[47,4],[47,2],[38,1],[39,1],[42,1],[40,1]],performAction:function(d,y,b,k,l,s,z){var c=s.length-1;switch(l){case 2:return s[c-1];case 3:this.$=[];break;case 4:s[c-1].push(s[c]),this.$=s[c-1];break;case 5:case 6:this.$=s[c];break;case 7:case 8:this.$=[];break;case 9:k.setWeekday("monday");break;case 10:k.setWeekday("tuesday");break;case 11:k.setWeekday("wednesday");break;case 12:k.setWeekday("thursday");break;case 13:k.setWeekday("friday");break;case 14:k.setWeekday("saturday");break;case 15:k.setWeekday("sunday");break;case 16:k.setDateFormat(s[c].substr(11)),this.$=s[c].substr(11);break;case 17:k.enableInclusiveEndDates(),this.$=s[c].substr(18);break;case 18:k.TopAxis(),this.$=s[c].substr(8);break;case 19:k.setAxisFormat(s[c].substr(11)),this.$=s[c].substr(11);break;case 20:k.setTickInterval(s[c].substr(13)),this.$=s[c].substr(13);break;case 21:k.setExcludes(s[c].substr(9)),this.$=s[c].substr(9);break;case 22:k.setIncludes(s[c].substr(9)),this.$=s[c].substr(9);break;case 23:k.setTodayMarker(s[c].substr(12)),this.$=s[c].substr(12);break;case 25:k.setDiagramTitle(s[c].substr(6)),this.$=s[c].substr(6);break;case 26:this.$=s[c].trim(),k.setAccTitle(this.$);break;case 27:case 28:this.$=s[c].trim(),k.setAccDescription(this.$);break;case 29:k.addSection(s[c].substr(8)),this.$=s[c].substr(8);break;case 31:k.addTask(s[c-1],s[c]),this.$="task";break;case 35:this.$=s[c-1],k.setClickEvent(s[c-1],s[c],null);break;case 36:this.$=s[c-2],k.setClickEvent(s[c-2],s[c-1],s[c]);break;case 37:this.$=s[c-2],k.setClickEvent(s[c-2],s[c-1],null),k.setLink(s[c-2],s[c]);break;case 38:this.$=s[c-3],k.setClickEvent(s[c-3],s[c-2],s[c-1]),k.setLink(s[c-3],s[c]);break;case 39:this.$=s[c-2],k.setClickEvent(s[c-2],s[c],null),k.setLink(s[c-2],s[c-1]);break;case 40:this.$=s[c-3],k.setClickEvent(s[c-3],s[c-1],s[c]),k.setLink(s[c-3],s[c-2]);break;case 41:this.$=s[c-1],k.setLink(s[c-1],s[c]);break;case 42:case 48:this.$=s[c-1]+" "+s[c];break;case 43:case 44:case 46:this.$=s[c-2]+" "+s[c-1]+" "+s[c];break;case 45:case 47:this.$=s[c-3]+" "+s[c-2]+" "+s[c-1]+" "+s[c];break;case 49:k.parseDirective("%%{","open_directive");break;case 50:k.parseDirective(s[c],"type_directive");break;case 51:s[c]=s[c].trim().replace(/'/g,'"'),k.parseDirective(s[c],"arg_directive");break;case 52:k.parseDirective("}%%","close_directive","gantt");break}},table:[{3:1,4:2,5:e,38:4,48:n},{1:[3]},{3:6,4:2,5:e,38:4,48:n},t(r,[2,3],{6:7}),{39:8,49:[1,9]},{49:[2,49]},{1:[2,1]},{4:31,7:[1,10],8:11,9:[1,12],10:13,11:[1,14],12:23,13:i,14:a,15:o,16:h,17:m,18:p,19:v,20:S,21:x,22:g,23:I,24:C,25:R,26:X,27:tt,28:B,29:Z,31:J,33:w,34:H,35:29,36:D,38:4,43:F,48:n},{40:40,41:[1,41],51:Y},t([41,51],[2,50]),t(r,[2,8],{1:[2,2]}),t(r,[2,4]),{4:31,10:43,12:23,13:i,14:a,15:o,16:h,17:m,18:p,19:v,20:S,21:x,22:g,23:I,24:C,25:R,26:X,27:tt,28:B,29:Z,31:J,33:w,34:H,35:29,36:D,38:4,43:F,48:n},t(r,[2,6]),t(r,[2,7]),t(r,[2,16]),t(r,[2,17]),t(r,[2,18]),t(r,[2,19]),t(r,[2,20]),t(r,[2,21]),t(r,[2,22]),t(r,[2,23]),t(r,[2,24]),t(r,[2,25]),{30:[1,44]},{32:[1,45]},t(r,[2,28]),t(r,[2,29]),t(r,[2,30]),{37:[1,46]},t(r,[2,32]),t(r,[2,9]),t(r,[2,10]),t(r,[2,11]),t(r,[2,12]),t(r,[2,13]),t(r,[2,14]),t(r,[2,15]),{44:[1,47],46:[1,48]},{11:[1,49]},{42:50,50:[1,51]},{11:[2,52]},t(r,[2,5]),t(r,[2,26]),t(r,[2,27]),t(r,[2,31]),t(r,[2,35],{45:[1,52],46:[1,53]}),t(r,[2,41],{44:[1,54]}),t(_,[2,33]),{40:55,51:Y},{51:[2,51]},t(r,[2,36],{46:[1,56]}),t(r,[2,37]),t(r,[2,39],{45:[1,57]}),{11:[1,58]},t(r,[2,38]),t(r,[2,40]),t(_,[2,34])],defaultActions:{5:[2,49],6:[2,1],42:[2,52],51:[2,51]},parseError:function(d,y){if(y.recoverable)this.trace(d);else{var b=new Error(d);throw b.hash=y,b}},parse:function(d){var y=this,b=[0],k=[],l=[null],s=[],z=this.table,c="",U=0,$=0,P=2,xt=1,At=s.slice.call(arguments,1),f=Object.create(this.lexer),M={yy:{}};for(var L in this.yy)Object.prototype.hasOwnProperty.call(this.yy,L)&&(M.yy[L]=this.yy[L]);f.setInput(d,M.yy),M.yy.lexer=f,M.yy.parser=this,typeof f.yylloc>"u"&&(f.yylloc={});var u=f.yylloc;s.push(u);var et=f.options&&f.options.ranges;typeof M.yy.parseError=="function"?this.parseError=M.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function N(){var lt;return lt=k.pop()||f.lex()||xt,typeof lt!="number"&&(lt instanceof Array&&(k=lt,lt=k.pop()),lt=y.symbols_[lt]||lt),lt}for(var V,q,G,wt,Dt={},qt,ct,Oe,Xt;;){if(q=b[b.length-1],this.defaultActions[q]?G=this.defaultActions[q]:((V===null||typeof V>"u")&&(V=N()),G=z[q]&&z[q][V]),typeof G>"u"||!G.length||!G[0]){var ae="";Xt=[];for(qt in z[q])this.terminals_[qt]&&qt>P&&Xt.push("'"+this.terminals_[qt]+"'");f.showPosition?ae="Parse error on line "+(U+1)+`: `+f.showPosition()+` Expecting `+Xt.join(", ")+", got '"+(this.terminals_[V]||V)+"'":ae="Parse error on line "+(U+1)+": Unexpected "+(V==xt?"end of input":"'"+(this.terminals_[V]||V)+"'"),this.parseError(ae,{text:f.match,token:this.terminals_[V]||V,line:f.yylineno,loc:u,expected:Xt})}if(G[0]instanceof Array&&G.length>1)throw new Error("Parse Error: multiple actions possible at state: "+q+", token: "+V);switch(G[0]){case 1:b.push(V),l.push(f.yytext),s.push(f.yylloc),b.push(G[1]),V=null,$=f.yyleng,c=f.yytext,U=f.yylineno,u=f.yylloc;break;case 2:if(ct=this.productions_[G[1]][1],Dt.$=l[l.length-ct],Dt._$={first_line:s[s.length-(ct||1)].first_line,last_line:s[s.length-1].last_line,first_column:s[s.length-(ct||1)].first_column,last_column:s[s.length-1].last_column},et&&(Dt._$.range=[s[s.length-(ct||1)].range[0],s[s.length-1].range[1]]),wt=this.performAction.apply(Dt,[c,$,U,M.yy,G[1],l,s].concat(At)),typeof wt<"u")return wt;ct&&(b=b.slice(0,-1*ct*2),l=l.slice(0,-1*ct),s=s.slice(0,-1*ct)),b.push(this.productions_[G[1]][0]),l.push(Dt.$),s.push(Dt._$),Oe=z[b[b.length-2]][b[b.length-1]],b.push(Oe);break;case 3:return!0}}return!0}},O=function(){var A={EOF:1,parseError:function(y,b){if(this.yy.parser)this.yy.parser.parseError(y,b);else throw new Error(y)},setInput:function(d,y){return this.yy=y||this.yy||{},this._input=d,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var d=this._input[0];this.yytext+=d,this.yyleng++,this.offset++,this.match+=d,this.matched+=d;var y=d.match(/(?:\r\n?|\n).*/g);return y?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),d},unput:function(d){var y=d.length,b=d.split(/(?:\r\n?|\n)/g);this._input=d+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-y),this.offset-=y;var k=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),b.length-1&&(this.yylineno-=b.length-1);var l=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:b?(b.length===k.length?this.yylloc.first_column:0)+k[k.length-b.length].length-b[0].length:this.yylloc.first_column-y},this.options.ranges&&(this.yylloc.range=[l[0],l[0]+this.yyleng-y]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(d){this.unput(this.match.slice(d))},pastInput:function(){var d=this.matched.substr(0,this.matched.length-this.match.length);return(d.length>20?"...":"")+d.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var d=this.match;return d.length<20&&(d+=this._input.substr(0,20-d.length)),(d.substr(0,20)+(d.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var d=this.pastInput(),y=new Array(d.length+1).join("-");return d+this.upcomingInput()+` diff --git a/pr-383/assets/chunks/gitGraphDiagram-a13ae597.e8dc1e8e.js b/pr-383/assets/chunks/gitGraphDiagram-a13ae597.baecb4c3.js similarity index 99% rename from pr-383/assets/chunks/gitGraphDiagram-a13ae597.e8dc1e8e.js rename to pr-383/assets/chunks/gitGraphDiagram-a13ae597.baecb4c3.js index 5c6676d13..955a95d82 100644 --- a/pr-383/assets/chunks/gitGraphDiagram-a13ae597.e8dc1e8e.js +++ b/pr-383/assets/chunks/gitGraphDiagram-a13ae597.baecb4c3.js @@ -1,4 +1,4 @@ -import{c as I,s as Oe,g as Ie,a as Ge,b as Pe,v as Ne,x as He,m as Be,l as N,j as V,z as De,a9 as fe,h as Ve,y as ze,aa as je,ab as qe}from"../app.34e6398e.js";import"./framework.be0a7370.js";import"./theme.e11407bf.js";var pe=function(){var r=function(q,m,b,k){for(b=b||{},k=q.length;k--;b[q[k]]=m);return b},a=[1,4],o=[1,7],p=[1,5],n=[1,9],c=[1,6],u=[2,6],h=[1,16],E=[6,8,14,20,22,24,25,27,29,32,37,40,50,55],x=[8,14,20,22,24,25,27,29,32,37,40],l=[8,13,14,20,22,24,25,27,29,32,37,40],g=[1,26],f=[6,8,14,50,55],s=[8,14,55],_=[1,53],w=[1,52],O=[8,14,30,33,35,38,55],v=[1,67],d=[1,68],y=[1,69],H=[8,14,33,35,42,55],ce={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,directive:5,GG:6,document:7,EOF:8,":":9,DIR:10,options:11,body:12,OPT:13,NL:14,line:15,statement:16,commitStatement:17,mergeStatement:18,cherryPickStatement:19,acc_title:20,acc_title_value:21,acc_descr:22,acc_descr_value:23,acc_descr_multiline_value:24,section:25,branchStatement:26,CHECKOUT:27,ref:28,BRANCH:29,ORDER:30,NUM:31,CHERRY_PICK:32,COMMIT_ID:33,STR:34,COMMIT_TAG:35,EMPTYSTR:36,MERGE:37,COMMIT_TYPE:38,commitType:39,COMMIT:40,commit_arg:41,COMMIT_MSG:42,NORMAL:43,REVERSE:44,HIGHLIGHT:45,openDirective:46,typeDirective:47,closeDirective:48,argDirective:49,open_directive:50,type_directive:51,arg_directive:52,close_directive:53,ID:54,";":55,$accept:0,$end:1},terminals_:{2:"error",6:"GG",8:"EOF",9:":",10:"DIR",13:"OPT",14:"NL",20:"acc_title",21:"acc_title_value",22:"acc_descr",23:"acc_descr_value",24:"acc_descr_multiline_value",25:"section",27:"CHECKOUT",29:"BRANCH",30:"ORDER",31:"NUM",32:"CHERRY_PICK",33:"COMMIT_ID",34:"STR",35:"COMMIT_TAG",36:"EMPTYSTR",37:"MERGE",38:"COMMIT_TYPE",40:"COMMIT",42:"COMMIT_MSG",43:"NORMAL",44:"REVERSE",45:"HIGHLIGHT",50:"open_directive",51:"type_directive",52:"arg_directive",53:"close_directive",54:"ID",55:";"},productions_:[0,[3,2],[3,2],[3,3],[3,4],[3,5],[7,0],[7,2],[11,2],[11,1],[12,0],[12,2],[15,2],[15,1],[16,1],[16,1],[16,1],[16,2],[16,2],[16,1],[16,1],[16,1],[16,2],[26,2],[26,4],[19,3],[19,5],[19,5],[19,5],[19,5],[18,2],[18,4],[18,4],[18,4],[18,6],[18,6],[18,6],[18,6],[18,6],[18,6],[18,8],[18,8],[18,8],[18,8],[18,8],[18,8],[17,2],[17,3],[17,3],[17,5],[17,5],[17,3],[17,5],[17,5],[17,5],[17,5],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,3],[17,5],[17,5],[17,5],[17,5],[17,5],[17,5],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[41,0],[41,1],[39,1],[39,1],[39,1],[5,3],[5,5],[46,1],[47,1],[49,1],[48,1],[28,1],[28,1],[4,1],[4,1],[4,1]],performAction:function(m,b,k,i,T,e,X){var t=e.length-1;switch(T){case 3:return e[t];case 4:return e[t-1];case 5:return i.setDirection(e[t-3]),e[t-1];case 7:i.setOptions(e[t-1]),this.$=e[t];break;case 8:e[t-1]+=e[t],this.$=e[t-1];break;case 10:this.$=[];break;case 11:e[t-1].push(e[t]),this.$=e[t-1];break;case 12:this.$=e[t-1];break;case 17:this.$=e[t].trim(),i.setAccTitle(this.$);break;case 18:case 19:this.$=e[t].trim(),i.setAccDescription(this.$);break;case 20:i.addSection(e[t].substr(8)),this.$=e[t].substr(8);break;case 22:i.checkout(e[t]);break;case 23:i.branch(e[t]);break;case 24:i.branch(e[t-2],e[t]);break;case 25:i.cherryPick(e[t],"",void 0);break;case 26:i.cherryPick(e[t-2],"",e[t]);break;case 27:case 29:i.cherryPick(e[t-2],"","");break;case 28:i.cherryPick(e[t],"",e[t-2]);break;case 30:i.merge(e[t],"","","");break;case 31:i.merge(e[t-2],e[t],"","");break;case 32:i.merge(e[t-2],"",e[t],"");break;case 33:i.merge(e[t-2],"","",e[t]);break;case 34:i.merge(e[t-4],e[t],"",e[t-2]);break;case 35:i.merge(e[t-4],"",e[t],e[t-2]);break;case 36:i.merge(e[t-4],"",e[t-2],e[t]);break;case 37:i.merge(e[t-4],e[t-2],e[t],"");break;case 38:i.merge(e[t-4],e[t-2],"",e[t]);break;case 39:i.merge(e[t-4],e[t],e[t-2],"");break;case 40:i.merge(e[t-6],e[t-4],e[t-2],e[t]);break;case 41:i.merge(e[t-6],e[t],e[t-4],e[t-2]);break;case 42:i.merge(e[t-6],e[t-4],e[t],e[t-2]);break;case 43:i.merge(e[t-6],e[t-2],e[t-4],e[t]);break;case 44:i.merge(e[t-6],e[t],e[t-2],e[t-4]);break;case 45:i.merge(e[t-6],e[t-2],e[t],e[t-4]);break;case 46:i.commit(e[t]);break;case 47:i.commit("","",i.commitType.NORMAL,e[t]);break;case 48:i.commit("","",e[t],"");break;case 49:i.commit("","",e[t],e[t-2]);break;case 50:i.commit("","",e[t-2],e[t]);break;case 51:i.commit("",e[t],i.commitType.NORMAL,"");break;case 52:i.commit("",e[t-2],i.commitType.NORMAL,e[t]);break;case 53:i.commit("",e[t],i.commitType.NORMAL,e[t-2]);break;case 54:i.commit("",e[t-2],e[t],"");break;case 55:i.commit("",e[t],e[t-2],"");break;case 56:i.commit("",e[t-4],e[t-2],e[t]);break;case 57:i.commit("",e[t-4],e[t],e[t-2]);break;case 58:i.commit("",e[t-2],e[t-4],e[t]);break;case 59:i.commit("",e[t],e[t-4],e[t-2]);break;case 60:i.commit("",e[t],e[t-2],e[t-4]);break;case 61:i.commit("",e[t-2],e[t],e[t-4]);break;case 62:i.commit(e[t],"",i.commitType.NORMAL,"");break;case 63:i.commit(e[t],"",i.commitType.NORMAL,e[t-2]);break;case 64:i.commit(e[t-2],"",i.commitType.NORMAL,e[t]);break;case 65:i.commit(e[t-2],"",e[t],"");break;case 66:i.commit(e[t],"",e[t-2],"");break;case 67:i.commit(e[t],e[t-2],i.commitType.NORMAL,"");break;case 68:i.commit(e[t-2],e[t],i.commitType.NORMAL,"");break;case 69:i.commit(e[t-4],"",e[t-2],e[t]);break;case 70:i.commit(e[t-4],"",e[t],e[t-2]);break;case 71:i.commit(e[t-2],"",e[t-4],e[t]);break;case 72:i.commit(e[t],"",e[t-4],e[t-2]);break;case 73:i.commit(e[t],"",e[t-2],e[t-4]);break;case 74:i.commit(e[t-2],"",e[t],e[t-4]);break;case 75:i.commit(e[t-4],e[t],e[t-2],"");break;case 76:i.commit(e[t-4],e[t-2],e[t],"");break;case 77:i.commit(e[t-2],e[t],e[t-4],"");break;case 78:i.commit(e[t],e[t-2],e[t-4],"");break;case 79:i.commit(e[t],e[t-4],e[t-2],"");break;case 80:i.commit(e[t-2],e[t-4],e[t],"");break;case 81:i.commit(e[t-4],e[t],i.commitType.NORMAL,e[t-2]);break;case 82:i.commit(e[t-4],e[t-2],i.commitType.NORMAL,e[t]);break;case 83:i.commit(e[t-2],e[t],i.commitType.NORMAL,e[t-4]);break;case 84:i.commit(e[t],e[t-2],i.commitType.NORMAL,e[t-4]);break;case 85:i.commit(e[t],e[t-4],i.commitType.NORMAL,e[t-2]);break;case 86:i.commit(e[t-2],e[t-4],i.commitType.NORMAL,e[t]);break;case 87:i.commit(e[t-6],e[t-4],e[t-2],e[t]);break;case 88:i.commit(e[t-6],e[t-4],e[t],e[t-2]);break;case 89:i.commit(e[t-6],e[t-2],e[t-4],e[t]);break;case 90:i.commit(e[t-6],e[t],e[t-4],e[t-2]);break;case 91:i.commit(e[t-6],e[t-2],e[t],e[t-4]);break;case 92:i.commit(e[t-6],e[t],e[t-2],e[t-4]);break;case 93:i.commit(e[t-4],e[t-6],e[t-2],e[t]);break;case 94:i.commit(e[t-4],e[t-6],e[t],e[t-2]);break;case 95:i.commit(e[t-2],e[t-6],e[t-4],e[t]);break;case 96:i.commit(e[t],e[t-6],e[t-4],e[t-2]);break;case 97:i.commit(e[t-2],e[t-6],e[t],e[t-4]);break;case 98:i.commit(e[t],e[t-6],e[t-2],e[t-4]);break;case 99:i.commit(e[t],e[t-4],e[t-2],e[t-6]);break;case 100:i.commit(e[t-2],e[t-4],e[t],e[t-6]);break;case 101:i.commit(e[t],e[t-2],e[t-4],e[t-6]);break;case 102:i.commit(e[t-2],e[t],e[t-4],e[t-6]);break;case 103:i.commit(e[t-4],e[t-2],e[t],e[t-6]);break;case 104:i.commit(e[t-4],e[t],e[t-2],e[t-6]);break;case 105:i.commit(e[t-2],e[t-4],e[t-6],e[t]);break;case 106:i.commit(e[t],e[t-4],e[t-6],e[t-2]);break;case 107:i.commit(e[t-2],e[t],e[t-6],e[t-4]);break;case 108:i.commit(e[t],e[t-2],e[t-6],e[t-4]);break;case 109:i.commit(e[t-4],e[t-2],e[t-6],e[t]);break;case 110:i.commit(e[t-4],e[t],e[t-6],e[t-2]);break;case 111:this.$="";break;case 112:this.$=e[t];break;case 113:this.$=i.commitType.NORMAL;break;case 114:this.$=i.commitType.REVERSE;break;case 115:this.$=i.commitType.HIGHLIGHT;break;case 118:i.parseDirective("%%{","open_directive");break;case 119:i.parseDirective(e[t],"type_directive");break;case 120:e[t]=e[t].trim().replace(/'/g,'"'),i.parseDirective(e[t],"arg_directive");break;case 121:i.parseDirective("}%%","close_directive","gitGraph");break}},table:[{3:1,4:2,5:3,6:a,8:o,14:p,46:8,50:n,55:c},{1:[3]},{3:10,4:2,5:3,6:a,8:o,14:p,46:8,50:n,55:c},{3:11,4:2,5:3,6:a,8:o,14:p,46:8,50:n,55:c},{7:12,8:u,9:[1,13],10:[1,14],11:15,14:h},r(E,[2,124]),r(E,[2,125]),r(E,[2,126]),{47:17,51:[1,18]},{51:[2,118]},{1:[2,1]},{1:[2,2]},{8:[1,19]},{7:20,8:u,11:15,14:h},{9:[1,21]},r(x,[2,10],{12:22,13:[1,23]}),r(l,[2,9]),{9:[1,25],48:24,53:g},r([9,53],[2,119]),{1:[2,3]},{8:[1,27]},{7:28,8:u,11:15,14:h},{8:[2,7],14:[1,31],15:29,16:30,17:32,18:33,19:34,20:[1,35],22:[1,36],24:[1,37],25:[1,38],26:39,27:[1,40],29:[1,44],32:[1,43],37:[1,42],40:[1,41]},r(l,[2,8]),r(f,[2,116]),{49:45,52:[1,46]},r(f,[2,121]),{1:[2,4]},{8:[1,47]},r(x,[2,11]),{4:48,8:o,14:p,55:c},r(x,[2,13]),r(s,[2,14]),r(s,[2,15]),r(s,[2,16]),{21:[1,49]},{23:[1,50]},r(s,[2,19]),r(s,[2,20]),r(s,[2,21]),{28:51,34:_,54:w},r(s,[2,111],{41:54,33:[1,57],34:[1,59],35:[1,55],38:[1,56],42:[1,58]}),{28:60,34:_,54:w},{33:[1,61],35:[1,62]},{28:63,34:_,54:w},{48:64,53:g},{53:[2,120]},{1:[2,5]},r(x,[2,12]),r(s,[2,17]),r(s,[2,18]),r(s,[2,22]),r(O,[2,122]),r(O,[2,123]),r(s,[2,46]),{34:[1,65]},{39:66,43:v,44:d,45:y},{34:[1,70]},{34:[1,71]},r(s,[2,112]),r(s,[2,30],{33:[1,72],35:[1,74],38:[1,73]}),{34:[1,75]},{34:[1,76],36:[1,77]},r(s,[2,23],{30:[1,78]}),r(f,[2,117]),r(s,[2,47],{33:[1,80],38:[1,79],42:[1,81]}),r(s,[2,48],{33:[1,83],35:[1,82],42:[1,84]}),r(H,[2,113]),r(H,[2,114]),r(H,[2,115]),r(s,[2,51],{35:[1,85],38:[1,86],42:[1,87]}),r(s,[2,62],{33:[1,90],35:[1,88],38:[1,89]}),{34:[1,91]},{39:92,43:v,44:d,45:y},{34:[1,93]},r(s,[2,25],{35:[1,94]}),{33:[1,95]},{33:[1,96]},{31:[1,97]},{39:98,43:v,44:d,45:y},{34:[1,99]},{34:[1,100]},{34:[1,101]},{34:[1,102]},{34:[1,103]},{34:[1,104]},{39:105,43:v,44:d,45:y},{34:[1,106]},{34:[1,107]},{39:108,43:v,44:d,45:y},{34:[1,109]},r(s,[2,31],{35:[1,111],38:[1,110]}),r(s,[2,32],{33:[1,113],35:[1,112]}),r(s,[2,33],{33:[1,114],38:[1,115]}),{34:[1,116],36:[1,117]},{34:[1,118]},{34:[1,119]},r(s,[2,24]),r(s,[2,49],{33:[1,120],42:[1,121]}),r(s,[2,53],{38:[1,122],42:[1,123]}),r(s,[2,63],{33:[1,125],38:[1,124]}),r(s,[2,50],{33:[1,126],42:[1,127]}),r(s,[2,55],{35:[1,128],42:[1,129]}),r(s,[2,66],{33:[1,131],35:[1,130]}),r(s,[2,52],{38:[1,132],42:[1,133]}),r(s,[2,54],{35:[1,134],42:[1,135]}),r(s,[2,67],{35:[1,137],38:[1,136]}),r(s,[2,64],{33:[1,139],38:[1,138]}),r(s,[2,65],{33:[1,141],35:[1,140]}),r(s,[2,68],{35:[1,143],38:[1,142]}),{39:144,43:v,44:d,45:y},{34:[1,145]},{34:[1,146]},{34:[1,147]},{34:[1,148]},{39:149,43:v,44:d,45:y},r(s,[2,26]),r(s,[2,27]),r(s,[2,28]),r(s,[2,29]),{34:[1,150]},{34:[1,151]},{39:152,43:v,44:d,45:y},{34:[1,153]},{39:154,43:v,44:d,45:y},{34:[1,155]},{34:[1,156]},{34:[1,157]},{34:[1,158]},{34:[1,159]},{34:[1,160]},{34:[1,161]},{39:162,43:v,44:d,45:y},{34:[1,163]},{34:[1,164]},{34:[1,165]},{39:166,43:v,44:d,45:y},{34:[1,167]},{39:168,43:v,44:d,45:y},{34:[1,169]},{34:[1,170]},{34:[1,171]},{39:172,43:v,44:d,45:y},{34:[1,173]},r(s,[2,37],{35:[1,174]}),r(s,[2,38],{38:[1,175]}),r(s,[2,36],{33:[1,176]}),r(s,[2,39],{35:[1,177]}),r(s,[2,34],{38:[1,178]}),r(s,[2,35],{33:[1,179]}),r(s,[2,60],{42:[1,180]}),r(s,[2,73],{33:[1,181]}),r(s,[2,61],{42:[1,182]}),r(s,[2,84],{38:[1,183]}),r(s,[2,74],{33:[1,184]}),r(s,[2,83],{38:[1,185]}),r(s,[2,59],{42:[1,186]}),r(s,[2,72],{33:[1,187]}),r(s,[2,58],{42:[1,188]}),r(s,[2,78],{35:[1,189]}),r(s,[2,71],{33:[1,190]}),r(s,[2,77],{35:[1,191]}),r(s,[2,57],{42:[1,192]}),r(s,[2,85],{38:[1,193]}),r(s,[2,56],{42:[1,194]}),r(s,[2,79],{35:[1,195]}),r(s,[2,80],{35:[1,196]}),r(s,[2,86],{38:[1,197]}),r(s,[2,70],{33:[1,198]}),r(s,[2,81],{38:[1,199]}),r(s,[2,69],{33:[1,200]}),r(s,[2,75],{35:[1,201]}),r(s,[2,76],{35:[1,202]}),r(s,[2,82],{38:[1,203]}),{34:[1,204]},{39:205,43:v,44:d,45:y},{34:[1,206]},{34:[1,207]},{39:208,43:v,44:d,45:y},{34:[1,209]},{34:[1,210]},{34:[1,211]},{34:[1,212]},{39:213,43:v,44:d,45:y},{34:[1,214]},{39:215,43:v,44:d,45:y},{34:[1,216]},{34:[1,217]},{34:[1,218]},{34:[1,219]},{34:[1,220]},{34:[1,221]},{34:[1,222]},{39:223,43:v,44:d,45:y},{34:[1,224]},{34:[1,225]},{34:[1,226]},{39:227,43:v,44:d,45:y},{34:[1,228]},{39:229,43:v,44:d,45:y},{34:[1,230]},{34:[1,231]},{34:[1,232]},{39:233,43:v,44:d,45:y},r(s,[2,40]),r(s,[2,42]),r(s,[2,41]),r(s,[2,43]),r(s,[2,45]),r(s,[2,44]),r(s,[2,101]),r(s,[2,102]),r(s,[2,99]),r(s,[2,100]),r(s,[2,104]),r(s,[2,103]),r(s,[2,108]),r(s,[2,107]),r(s,[2,106]),r(s,[2,105]),r(s,[2,110]),r(s,[2,109]),r(s,[2,98]),r(s,[2,97]),r(s,[2,96]),r(s,[2,95]),r(s,[2,93]),r(s,[2,94]),r(s,[2,92]),r(s,[2,91]),r(s,[2,90]),r(s,[2,89]),r(s,[2,87]),r(s,[2,88])],defaultActions:{9:[2,118],10:[2,1],11:[2,2],19:[2,3],27:[2,4],46:[2,120],47:[2,5]},parseError:function(m,b){if(b.recoverable)this.trace(m);else{var k=new Error(m);throw k.hash=b,k}},parse:function(m){var b=this,k=[0],i=[],T=[null],e=[],X=this.table,t="",re=0,ge=0,Me=2,de=1,Ce=e.slice.call(arguments,1),M=Object.create(this.lexer),Y={yy:{}};for(var le in this.yy)Object.prototype.hasOwnProperty.call(this.yy,le)&&(Y.yy[le]=this.yy[le]);M.setInput(m,Y.yy),Y.yy.lexer=M,Y.yy.parser=this,typeof M.yylloc>"u"&&(M.yylloc={});var he=M.yylloc;e.push(he);var Ae=M.options&&M.options.ranges;typeof Y.yy.parseError=="function"?this.parseError=Y.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Se(){var j;return j=i.pop()||M.lex()||de,typeof j!="number"&&(j instanceof Array&&(i=j,j=i.pop()),j=b.symbols_[j]||j),j}for(var P,K,D,me,W={},ie,z,ke,se;;){if(K=k[k.length-1],this.defaultActions[K]?D=this.defaultActions[K]:((P===null||typeof P>"u")&&(P=Se()),D=X[K]&&X[K][P]),typeof D>"u"||!D.length||!D[0]){var ue="";se=[];for(ie in X[K])this.terminals_[ie]&&ie>Me&&se.push("'"+this.terminals_[ie]+"'");M.showPosition?ue="Parse error on line "+(re+1)+`: +import{c as I,s as Oe,g as Ie,a as Ge,b as Pe,v as Ne,x as He,m as Be,l as N,j as V,z as De,a9 as fe,h as Ve,y as ze,aa as je,ab as qe}from"../app.3c4fe3d0.js";import"./framework.be0a7370.js";import"./theme.71fa6e36.js";var pe=function(){var r=function(q,m,b,k){for(b=b||{},k=q.length;k--;b[q[k]]=m);return b},a=[1,4],o=[1,7],p=[1,5],n=[1,9],c=[1,6],u=[2,6],h=[1,16],E=[6,8,14,20,22,24,25,27,29,32,37,40,50,55],x=[8,14,20,22,24,25,27,29,32,37,40],l=[8,13,14,20,22,24,25,27,29,32,37,40],g=[1,26],f=[6,8,14,50,55],s=[8,14,55],_=[1,53],w=[1,52],O=[8,14,30,33,35,38,55],v=[1,67],d=[1,68],y=[1,69],H=[8,14,33,35,42,55],ce={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,directive:5,GG:6,document:7,EOF:8,":":9,DIR:10,options:11,body:12,OPT:13,NL:14,line:15,statement:16,commitStatement:17,mergeStatement:18,cherryPickStatement:19,acc_title:20,acc_title_value:21,acc_descr:22,acc_descr_value:23,acc_descr_multiline_value:24,section:25,branchStatement:26,CHECKOUT:27,ref:28,BRANCH:29,ORDER:30,NUM:31,CHERRY_PICK:32,COMMIT_ID:33,STR:34,COMMIT_TAG:35,EMPTYSTR:36,MERGE:37,COMMIT_TYPE:38,commitType:39,COMMIT:40,commit_arg:41,COMMIT_MSG:42,NORMAL:43,REVERSE:44,HIGHLIGHT:45,openDirective:46,typeDirective:47,closeDirective:48,argDirective:49,open_directive:50,type_directive:51,arg_directive:52,close_directive:53,ID:54,";":55,$accept:0,$end:1},terminals_:{2:"error",6:"GG",8:"EOF",9:":",10:"DIR",13:"OPT",14:"NL",20:"acc_title",21:"acc_title_value",22:"acc_descr",23:"acc_descr_value",24:"acc_descr_multiline_value",25:"section",27:"CHECKOUT",29:"BRANCH",30:"ORDER",31:"NUM",32:"CHERRY_PICK",33:"COMMIT_ID",34:"STR",35:"COMMIT_TAG",36:"EMPTYSTR",37:"MERGE",38:"COMMIT_TYPE",40:"COMMIT",42:"COMMIT_MSG",43:"NORMAL",44:"REVERSE",45:"HIGHLIGHT",50:"open_directive",51:"type_directive",52:"arg_directive",53:"close_directive",54:"ID",55:";"},productions_:[0,[3,2],[3,2],[3,3],[3,4],[3,5],[7,0],[7,2],[11,2],[11,1],[12,0],[12,2],[15,2],[15,1],[16,1],[16,1],[16,1],[16,2],[16,2],[16,1],[16,1],[16,1],[16,2],[26,2],[26,4],[19,3],[19,5],[19,5],[19,5],[19,5],[18,2],[18,4],[18,4],[18,4],[18,6],[18,6],[18,6],[18,6],[18,6],[18,6],[18,8],[18,8],[18,8],[18,8],[18,8],[18,8],[17,2],[17,3],[17,3],[17,5],[17,5],[17,3],[17,5],[17,5],[17,5],[17,5],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,3],[17,5],[17,5],[17,5],[17,5],[17,5],[17,5],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[41,0],[41,1],[39,1],[39,1],[39,1],[5,3],[5,5],[46,1],[47,1],[49,1],[48,1],[28,1],[28,1],[4,1],[4,1],[4,1]],performAction:function(m,b,k,i,T,e,X){var t=e.length-1;switch(T){case 3:return e[t];case 4:return e[t-1];case 5:return i.setDirection(e[t-3]),e[t-1];case 7:i.setOptions(e[t-1]),this.$=e[t];break;case 8:e[t-1]+=e[t],this.$=e[t-1];break;case 10:this.$=[];break;case 11:e[t-1].push(e[t]),this.$=e[t-1];break;case 12:this.$=e[t-1];break;case 17:this.$=e[t].trim(),i.setAccTitle(this.$);break;case 18:case 19:this.$=e[t].trim(),i.setAccDescription(this.$);break;case 20:i.addSection(e[t].substr(8)),this.$=e[t].substr(8);break;case 22:i.checkout(e[t]);break;case 23:i.branch(e[t]);break;case 24:i.branch(e[t-2],e[t]);break;case 25:i.cherryPick(e[t],"",void 0);break;case 26:i.cherryPick(e[t-2],"",e[t]);break;case 27:case 29:i.cherryPick(e[t-2],"","");break;case 28:i.cherryPick(e[t],"",e[t-2]);break;case 30:i.merge(e[t],"","","");break;case 31:i.merge(e[t-2],e[t],"","");break;case 32:i.merge(e[t-2],"",e[t],"");break;case 33:i.merge(e[t-2],"","",e[t]);break;case 34:i.merge(e[t-4],e[t],"",e[t-2]);break;case 35:i.merge(e[t-4],"",e[t],e[t-2]);break;case 36:i.merge(e[t-4],"",e[t-2],e[t]);break;case 37:i.merge(e[t-4],e[t-2],e[t],"");break;case 38:i.merge(e[t-4],e[t-2],"",e[t]);break;case 39:i.merge(e[t-4],e[t],e[t-2],"");break;case 40:i.merge(e[t-6],e[t-4],e[t-2],e[t]);break;case 41:i.merge(e[t-6],e[t],e[t-4],e[t-2]);break;case 42:i.merge(e[t-6],e[t-4],e[t],e[t-2]);break;case 43:i.merge(e[t-6],e[t-2],e[t-4],e[t]);break;case 44:i.merge(e[t-6],e[t],e[t-2],e[t-4]);break;case 45:i.merge(e[t-6],e[t-2],e[t],e[t-4]);break;case 46:i.commit(e[t]);break;case 47:i.commit("","",i.commitType.NORMAL,e[t]);break;case 48:i.commit("","",e[t],"");break;case 49:i.commit("","",e[t],e[t-2]);break;case 50:i.commit("","",e[t-2],e[t]);break;case 51:i.commit("",e[t],i.commitType.NORMAL,"");break;case 52:i.commit("",e[t-2],i.commitType.NORMAL,e[t]);break;case 53:i.commit("",e[t],i.commitType.NORMAL,e[t-2]);break;case 54:i.commit("",e[t-2],e[t],"");break;case 55:i.commit("",e[t],e[t-2],"");break;case 56:i.commit("",e[t-4],e[t-2],e[t]);break;case 57:i.commit("",e[t-4],e[t],e[t-2]);break;case 58:i.commit("",e[t-2],e[t-4],e[t]);break;case 59:i.commit("",e[t],e[t-4],e[t-2]);break;case 60:i.commit("",e[t],e[t-2],e[t-4]);break;case 61:i.commit("",e[t-2],e[t],e[t-4]);break;case 62:i.commit(e[t],"",i.commitType.NORMAL,"");break;case 63:i.commit(e[t],"",i.commitType.NORMAL,e[t-2]);break;case 64:i.commit(e[t-2],"",i.commitType.NORMAL,e[t]);break;case 65:i.commit(e[t-2],"",e[t],"");break;case 66:i.commit(e[t],"",e[t-2],"");break;case 67:i.commit(e[t],e[t-2],i.commitType.NORMAL,"");break;case 68:i.commit(e[t-2],e[t],i.commitType.NORMAL,"");break;case 69:i.commit(e[t-4],"",e[t-2],e[t]);break;case 70:i.commit(e[t-4],"",e[t],e[t-2]);break;case 71:i.commit(e[t-2],"",e[t-4],e[t]);break;case 72:i.commit(e[t],"",e[t-4],e[t-2]);break;case 73:i.commit(e[t],"",e[t-2],e[t-4]);break;case 74:i.commit(e[t-2],"",e[t],e[t-4]);break;case 75:i.commit(e[t-4],e[t],e[t-2],"");break;case 76:i.commit(e[t-4],e[t-2],e[t],"");break;case 77:i.commit(e[t-2],e[t],e[t-4],"");break;case 78:i.commit(e[t],e[t-2],e[t-4],"");break;case 79:i.commit(e[t],e[t-4],e[t-2],"");break;case 80:i.commit(e[t-2],e[t-4],e[t],"");break;case 81:i.commit(e[t-4],e[t],i.commitType.NORMAL,e[t-2]);break;case 82:i.commit(e[t-4],e[t-2],i.commitType.NORMAL,e[t]);break;case 83:i.commit(e[t-2],e[t],i.commitType.NORMAL,e[t-4]);break;case 84:i.commit(e[t],e[t-2],i.commitType.NORMAL,e[t-4]);break;case 85:i.commit(e[t],e[t-4],i.commitType.NORMAL,e[t-2]);break;case 86:i.commit(e[t-2],e[t-4],i.commitType.NORMAL,e[t]);break;case 87:i.commit(e[t-6],e[t-4],e[t-2],e[t]);break;case 88:i.commit(e[t-6],e[t-4],e[t],e[t-2]);break;case 89:i.commit(e[t-6],e[t-2],e[t-4],e[t]);break;case 90:i.commit(e[t-6],e[t],e[t-4],e[t-2]);break;case 91:i.commit(e[t-6],e[t-2],e[t],e[t-4]);break;case 92:i.commit(e[t-6],e[t],e[t-2],e[t-4]);break;case 93:i.commit(e[t-4],e[t-6],e[t-2],e[t]);break;case 94:i.commit(e[t-4],e[t-6],e[t],e[t-2]);break;case 95:i.commit(e[t-2],e[t-6],e[t-4],e[t]);break;case 96:i.commit(e[t],e[t-6],e[t-4],e[t-2]);break;case 97:i.commit(e[t-2],e[t-6],e[t],e[t-4]);break;case 98:i.commit(e[t],e[t-6],e[t-2],e[t-4]);break;case 99:i.commit(e[t],e[t-4],e[t-2],e[t-6]);break;case 100:i.commit(e[t-2],e[t-4],e[t],e[t-6]);break;case 101:i.commit(e[t],e[t-2],e[t-4],e[t-6]);break;case 102:i.commit(e[t-2],e[t],e[t-4],e[t-6]);break;case 103:i.commit(e[t-4],e[t-2],e[t],e[t-6]);break;case 104:i.commit(e[t-4],e[t],e[t-2],e[t-6]);break;case 105:i.commit(e[t-2],e[t-4],e[t-6],e[t]);break;case 106:i.commit(e[t],e[t-4],e[t-6],e[t-2]);break;case 107:i.commit(e[t-2],e[t],e[t-6],e[t-4]);break;case 108:i.commit(e[t],e[t-2],e[t-6],e[t-4]);break;case 109:i.commit(e[t-4],e[t-2],e[t-6],e[t]);break;case 110:i.commit(e[t-4],e[t],e[t-6],e[t-2]);break;case 111:this.$="";break;case 112:this.$=e[t];break;case 113:this.$=i.commitType.NORMAL;break;case 114:this.$=i.commitType.REVERSE;break;case 115:this.$=i.commitType.HIGHLIGHT;break;case 118:i.parseDirective("%%{","open_directive");break;case 119:i.parseDirective(e[t],"type_directive");break;case 120:e[t]=e[t].trim().replace(/'/g,'"'),i.parseDirective(e[t],"arg_directive");break;case 121:i.parseDirective("}%%","close_directive","gitGraph");break}},table:[{3:1,4:2,5:3,6:a,8:o,14:p,46:8,50:n,55:c},{1:[3]},{3:10,4:2,5:3,6:a,8:o,14:p,46:8,50:n,55:c},{3:11,4:2,5:3,6:a,8:o,14:p,46:8,50:n,55:c},{7:12,8:u,9:[1,13],10:[1,14],11:15,14:h},r(E,[2,124]),r(E,[2,125]),r(E,[2,126]),{47:17,51:[1,18]},{51:[2,118]},{1:[2,1]},{1:[2,2]},{8:[1,19]},{7:20,8:u,11:15,14:h},{9:[1,21]},r(x,[2,10],{12:22,13:[1,23]}),r(l,[2,9]),{9:[1,25],48:24,53:g},r([9,53],[2,119]),{1:[2,3]},{8:[1,27]},{7:28,8:u,11:15,14:h},{8:[2,7],14:[1,31],15:29,16:30,17:32,18:33,19:34,20:[1,35],22:[1,36],24:[1,37],25:[1,38],26:39,27:[1,40],29:[1,44],32:[1,43],37:[1,42],40:[1,41]},r(l,[2,8]),r(f,[2,116]),{49:45,52:[1,46]},r(f,[2,121]),{1:[2,4]},{8:[1,47]},r(x,[2,11]),{4:48,8:o,14:p,55:c},r(x,[2,13]),r(s,[2,14]),r(s,[2,15]),r(s,[2,16]),{21:[1,49]},{23:[1,50]},r(s,[2,19]),r(s,[2,20]),r(s,[2,21]),{28:51,34:_,54:w},r(s,[2,111],{41:54,33:[1,57],34:[1,59],35:[1,55],38:[1,56],42:[1,58]}),{28:60,34:_,54:w},{33:[1,61],35:[1,62]},{28:63,34:_,54:w},{48:64,53:g},{53:[2,120]},{1:[2,5]},r(x,[2,12]),r(s,[2,17]),r(s,[2,18]),r(s,[2,22]),r(O,[2,122]),r(O,[2,123]),r(s,[2,46]),{34:[1,65]},{39:66,43:v,44:d,45:y},{34:[1,70]},{34:[1,71]},r(s,[2,112]),r(s,[2,30],{33:[1,72],35:[1,74],38:[1,73]}),{34:[1,75]},{34:[1,76],36:[1,77]},r(s,[2,23],{30:[1,78]}),r(f,[2,117]),r(s,[2,47],{33:[1,80],38:[1,79],42:[1,81]}),r(s,[2,48],{33:[1,83],35:[1,82],42:[1,84]}),r(H,[2,113]),r(H,[2,114]),r(H,[2,115]),r(s,[2,51],{35:[1,85],38:[1,86],42:[1,87]}),r(s,[2,62],{33:[1,90],35:[1,88],38:[1,89]}),{34:[1,91]},{39:92,43:v,44:d,45:y},{34:[1,93]},r(s,[2,25],{35:[1,94]}),{33:[1,95]},{33:[1,96]},{31:[1,97]},{39:98,43:v,44:d,45:y},{34:[1,99]},{34:[1,100]},{34:[1,101]},{34:[1,102]},{34:[1,103]},{34:[1,104]},{39:105,43:v,44:d,45:y},{34:[1,106]},{34:[1,107]},{39:108,43:v,44:d,45:y},{34:[1,109]},r(s,[2,31],{35:[1,111],38:[1,110]}),r(s,[2,32],{33:[1,113],35:[1,112]}),r(s,[2,33],{33:[1,114],38:[1,115]}),{34:[1,116],36:[1,117]},{34:[1,118]},{34:[1,119]},r(s,[2,24]),r(s,[2,49],{33:[1,120],42:[1,121]}),r(s,[2,53],{38:[1,122],42:[1,123]}),r(s,[2,63],{33:[1,125],38:[1,124]}),r(s,[2,50],{33:[1,126],42:[1,127]}),r(s,[2,55],{35:[1,128],42:[1,129]}),r(s,[2,66],{33:[1,131],35:[1,130]}),r(s,[2,52],{38:[1,132],42:[1,133]}),r(s,[2,54],{35:[1,134],42:[1,135]}),r(s,[2,67],{35:[1,137],38:[1,136]}),r(s,[2,64],{33:[1,139],38:[1,138]}),r(s,[2,65],{33:[1,141],35:[1,140]}),r(s,[2,68],{35:[1,143],38:[1,142]}),{39:144,43:v,44:d,45:y},{34:[1,145]},{34:[1,146]},{34:[1,147]},{34:[1,148]},{39:149,43:v,44:d,45:y},r(s,[2,26]),r(s,[2,27]),r(s,[2,28]),r(s,[2,29]),{34:[1,150]},{34:[1,151]},{39:152,43:v,44:d,45:y},{34:[1,153]},{39:154,43:v,44:d,45:y},{34:[1,155]},{34:[1,156]},{34:[1,157]},{34:[1,158]},{34:[1,159]},{34:[1,160]},{34:[1,161]},{39:162,43:v,44:d,45:y},{34:[1,163]},{34:[1,164]},{34:[1,165]},{39:166,43:v,44:d,45:y},{34:[1,167]},{39:168,43:v,44:d,45:y},{34:[1,169]},{34:[1,170]},{34:[1,171]},{39:172,43:v,44:d,45:y},{34:[1,173]},r(s,[2,37],{35:[1,174]}),r(s,[2,38],{38:[1,175]}),r(s,[2,36],{33:[1,176]}),r(s,[2,39],{35:[1,177]}),r(s,[2,34],{38:[1,178]}),r(s,[2,35],{33:[1,179]}),r(s,[2,60],{42:[1,180]}),r(s,[2,73],{33:[1,181]}),r(s,[2,61],{42:[1,182]}),r(s,[2,84],{38:[1,183]}),r(s,[2,74],{33:[1,184]}),r(s,[2,83],{38:[1,185]}),r(s,[2,59],{42:[1,186]}),r(s,[2,72],{33:[1,187]}),r(s,[2,58],{42:[1,188]}),r(s,[2,78],{35:[1,189]}),r(s,[2,71],{33:[1,190]}),r(s,[2,77],{35:[1,191]}),r(s,[2,57],{42:[1,192]}),r(s,[2,85],{38:[1,193]}),r(s,[2,56],{42:[1,194]}),r(s,[2,79],{35:[1,195]}),r(s,[2,80],{35:[1,196]}),r(s,[2,86],{38:[1,197]}),r(s,[2,70],{33:[1,198]}),r(s,[2,81],{38:[1,199]}),r(s,[2,69],{33:[1,200]}),r(s,[2,75],{35:[1,201]}),r(s,[2,76],{35:[1,202]}),r(s,[2,82],{38:[1,203]}),{34:[1,204]},{39:205,43:v,44:d,45:y},{34:[1,206]},{34:[1,207]},{39:208,43:v,44:d,45:y},{34:[1,209]},{34:[1,210]},{34:[1,211]},{34:[1,212]},{39:213,43:v,44:d,45:y},{34:[1,214]},{39:215,43:v,44:d,45:y},{34:[1,216]},{34:[1,217]},{34:[1,218]},{34:[1,219]},{34:[1,220]},{34:[1,221]},{34:[1,222]},{39:223,43:v,44:d,45:y},{34:[1,224]},{34:[1,225]},{34:[1,226]},{39:227,43:v,44:d,45:y},{34:[1,228]},{39:229,43:v,44:d,45:y},{34:[1,230]},{34:[1,231]},{34:[1,232]},{39:233,43:v,44:d,45:y},r(s,[2,40]),r(s,[2,42]),r(s,[2,41]),r(s,[2,43]),r(s,[2,45]),r(s,[2,44]),r(s,[2,101]),r(s,[2,102]),r(s,[2,99]),r(s,[2,100]),r(s,[2,104]),r(s,[2,103]),r(s,[2,108]),r(s,[2,107]),r(s,[2,106]),r(s,[2,105]),r(s,[2,110]),r(s,[2,109]),r(s,[2,98]),r(s,[2,97]),r(s,[2,96]),r(s,[2,95]),r(s,[2,93]),r(s,[2,94]),r(s,[2,92]),r(s,[2,91]),r(s,[2,90]),r(s,[2,89]),r(s,[2,87]),r(s,[2,88])],defaultActions:{9:[2,118],10:[2,1],11:[2,2],19:[2,3],27:[2,4],46:[2,120],47:[2,5]},parseError:function(m,b){if(b.recoverable)this.trace(m);else{var k=new Error(m);throw k.hash=b,k}},parse:function(m){var b=this,k=[0],i=[],T=[null],e=[],X=this.table,t="",re=0,ge=0,Me=2,de=1,Ce=e.slice.call(arguments,1),M=Object.create(this.lexer),Y={yy:{}};for(var le in this.yy)Object.prototype.hasOwnProperty.call(this.yy,le)&&(Y.yy[le]=this.yy[le]);M.setInput(m,Y.yy),Y.yy.lexer=M,Y.yy.parser=this,typeof M.yylloc>"u"&&(M.yylloc={});var he=M.yylloc;e.push(he);var Ae=M.options&&M.options.ranges;typeof Y.yy.parseError=="function"?this.parseError=Y.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Se(){var j;return j=i.pop()||M.lex()||de,typeof j!="number"&&(j instanceof Array&&(i=j,j=i.pop()),j=b.symbols_[j]||j),j}for(var P,K,D,me,W={},ie,z,ke,se;;){if(K=k[k.length-1],this.defaultActions[K]?D=this.defaultActions[K]:((P===null||typeof P>"u")&&(P=Se()),D=X[K]&&X[K][P]),typeof D>"u"||!D.length||!D[0]){var ue="";se=[];for(ie in X[K])this.terminals_[ie]&&ie>Me&&se.push("'"+this.terminals_[ie]+"'");M.showPosition?ue="Parse error on line "+(re+1)+`: `+M.showPosition()+` Expecting `+se.join(", ")+", got '"+(this.terminals_[P]||P)+"'":ue="Parse error on line "+(re+1)+": Unexpected "+(P==de?"end of input":"'"+(this.terminals_[P]||P)+"'"),this.parseError(ue,{text:M.match,token:this.terminals_[P]||P,line:M.yylineno,loc:he,expected:se})}if(D[0]instanceof Array&&D.length>1)throw new Error("Parse Error: multiple actions possible at state: "+K+", token: "+P);switch(D[0]){case 1:k.push(P),T.push(M.yytext),e.push(M.yylloc),k.push(D[1]),P=null,ge=M.yyleng,t=M.yytext,re=M.yylineno,he=M.yylloc;break;case 2:if(z=this.productions_[D[1]][1],W.$=T[T.length-z],W._$={first_line:e[e.length-(z||1)].first_line,last_line:e[e.length-1].last_line,first_column:e[e.length-(z||1)].first_column,last_column:e[e.length-1].last_column},Ae&&(W._$.range=[e[e.length-(z||1)].range[0],e[e.length-1].range[1]]),me=this.performAction.apply(W,[t,ge,re,Y.yy,D[1],T,e].concat(Ce)),typeof me<"u")return me;z&&(k=k.slice(0,-1*z*2),T=T.slice(0,-1*z),e=e.slice(0,-1*z)),k.push(this.productions_[D[1]][0]),T.push(W.$),e.push(W._$),ke=X[k[k.length-2]][k[k.length-1]],k.push(ke);break;case 3:return!0}}return!0}},Re=function(){var q={EOF:1,parseError:function(b,k){if(this.yy.parser)this.yy.parser.parseError(b,k);else throw new Error(b)},setInput:function(m,b){return this.yy=b||this.yy||{},this._input=m,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var m=this._input[0];this.yytext+=m,this.yyleng++,this.offset++,this.match+=m,this.matched+=m;var b=m.match(/(?:\r\n?|\n).*/g);return b?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),m},unput:function(m){var b=m.length,k=m.split(/(?:\r\n?|\n)/g);this._input=m+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-b),this.offset-=b;var i=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),k.length-1&&(this.yylineno-=k.length-1);var T=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:k?(k.length===i.length?this.yylloc.first_column:0)+i[i.length-k.length].length-k[0].length:this.yylloc.first_column-b},this.options.ranges&&(this.yylloc.range=[T[0],T[0]+this.yyleng-b]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(m){this.unput(this.match.slice(m))},pastInput:function(){var m=this.matched.substr(0,this.matched.length-this.match.length);return(m.length>20?"...":"")+m.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var m=this.match;return m.length<20&&(m+=this._input.substr(0,20-m.length)),(m.substr(0,20)+(m.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var m=this.pastInput(),b=new Array(m.length+1).join("-");return m+this.upcomingInput()+` diff --git a/pr-383/assets/chunks/index-4c4adb72.5e4d3745.js b/pr-383/assets/chunks/index-4c4adb72.3f6562ef.js similarity index 97% rename from pr-383/assets/chunks/index-4c4adb72.5e4d3745.js rename to pr-383/assets/chunks/index-4c4adb72.3f6562ef.js index ef4d3f44d..c5fdd30a1 100644 --- a/pr-383/assets/chunks/index-4c4adb72.5e4d3745.js +++ b/pr-383/assets/chunks/index-4c4adb72.3f6562ef.js @@ -1 +1 @@ -import{b as k,a as v,m as D,G,l as j}from"./layout.ca521a87.js";import{i as A,u as M,s as _,a as H,b as V,p as B,c as q,d as U,e as W,f as Y,g as O,h as X}from"./edges-b00f0ec2.14be9f5e.js";import{l as i,q as N,c as E,h as L}from"../app.34e6398e.js";import{c as z}from"./createText-285e50b4.f886ce05.js";var K=4;function Q(e){return k(e,K)}function y(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:Z(e),edges:I(e)};return v(e.graph())||(t.value=Q(e.graph())),t}function Z(e){return D(e.nodes(),function(t){var n=e.node(t),r=e.parent(t),s={v:t};return v(n)||(s.value=n),v(r)||(s.parent=r),s})}function I(e){return D(e.edges(),function(t){var n=e.edge(t),r={v:t.v,w:t.w};return v(t.name)||(r.name=t.name),v(n)||(r.value=n),r})}let f={},x={},T={};const tt=()=>{x={},T={},f={}},S=(e,t)=>(i.trace("In isDecendant",t," ",e," = ",x[t].includes(e)),!!x[t].includes(e)),et=(e,t)=>(i.info("Decendants of ",t," is ",x[t]),i.info("Edge is ",e),e.v===t||e.w===t?!1:x[t]?x[t].includes(e.v)||S(e.v,t)||S(e.w,t)||x[t].includes(e.w):(i.debug("Tilt, ",t,",not in decendants"),!1)),J=(e,t,n,r)=>{i.warn("Copying children of ",e,"root",r,"data",t.node(e),r);const s=t.children(e)||[];e!==r&&s.push(e),i.warn("Copying (nodes) clusterId",e,"nodes",s),s.forEach(a=>{if(t.children(a).length>0)J(a,t,n,r);else{const h=t.node(a);i.info("cp ",a," to ",r," with parent ",e),n.setNode(a,h),r!==t.parent(a)&&(i.warn("Setting parent",a,t.parent(a)),n.setParent(a,t.parent(a))),e!==r&&a!==e?(i.debug("Setting parent",a,e),n.setParent(a,e)):(i.info("In copy ",e,"root",r,"data",t.node(e),r),i.debug("Not Setting parent for node=",a,"cluster!==rootId",e!==r,"node!==clusterId",a!==e));const l=t.edges(a);i.debug("Copying Edges",l),l.forEach(d=>{i.info("Edge",d);const w=t.edge(d.v,d.w,d.name);i.info("Edge data",w,r);try{et(d,r)?(i.info("Copying as ",d.v,d.w,w,d.name),n.setEdge(d.v,d.w,w,d.name),i.info("newGraph edges ",n.edges(),n.edge(n.edges()[0]))):i.info("Skipping copy of edge ",d.v,"-->",d.w," rootId: ",r," clusterId:",e)}catch(g){i.error(g)}})}i.debug("Removing node",a),t.removeNode(a)})},p=(e,t)=>{const n=t.children(e);let r=[...n];for(const s of n)T[s]=e,r=[...r,...p(s,t)];return r},m=(e,t)=>{i.trace("Searching",e);const n=t.children(e);if(i.trace("Searching children of id ",e,n),n.length<1)return i.trace("This is a valid node",e),e;for(const r of n){const s=m(r,t);if(s)return i.trace("Found replacement for",e," => ",s),s}},b=e=>!f[e]||!f[e].externalConnections?e:f[e]?f[e].id:e,nt=(e,t)=>{if(!e||t>10){i.debug("Opting out, no graph ");return}else i.debug("Opting in, graph ");e.nodes().forEach(function(n){e.children(n).length>0&&(i.warn("Cluster identified",n," Replacement id in edges: ",m(n,e)),x[n]=p(n,e),f[n]={id:m(n,e),clusterData:e.node(n)})}),e.nodes().forEach(function(n){const r=e.children(n),s=e.edges();r.length>0?(i.debug("Cluster identified",n,x),s.forEach(a=>{if(a.v!==n&&a.w!==n){const h=S(a.v,n),l=S(a.w,n);h^l&&(i.warn("Edge: ",a," leaves cluster ",n),i.warn("Decendants of XXX ",n,": ",x[n]),f[n].externalConnections=!0)}})):i.debug("Not a cluster ",n,x)}),e.edges().forEach(function(n){const r=e.edge(n);i.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(n)),i.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(e.edge(n)));let s=n.v,a=n.w;if(i.warn("Fix XXX",f,"ids:",n.v,n.w,"Translating: ",f[n.v]," --- ",f[n.w]),f[n.v]&&f[n.w]&&f[n.v]===f[n.w]){i.warn("Fixing and trixing link to self - removing XXX",n.v,n.w,n.name),i.warn("Fixing and trixing - removing XXX",n.v,n.w,n.name),s=b(n.v),a=b(n.w),e.removeEdge(n.v,n.w,n.name);const h=n.w+"---"+n.v;e.setNode(h,{domId:h,id:h,labelStyle:"",labelText:r.label,padding:0,shape:"labelRect",style:""});const l=JSON.parse(JSON.stringify(r)),d=JSON.parse(JSON.stringify(r));l.label="",l.arrowTypeEnd="none",d.label="",l.fromCluster=n.v,d.toCluster=n.v,e.setEdge(s,h,l,n.name+"-cyclic-special"),e.setEdge(h,a,d,n.name+"-cyclic-special")}else(f[n.v]||f[n.w])&&(i.warn("Fixing and trixing - removing XXX",n.v,n.w,n.name),s=b(n.v),a=b(n.w),e.removeEdge(n.v,n.w,n.name),s!==n.v&&(r.fromCluster=n.v),a!==n.w&&(r.toCluster=n.w),i.warn("Fix Replacing with XXX",s,a,n.name),e.setEdge(s,a,r,n.name))}),i.warn("Adjusted Graph",y(e)),R(e,0),i.trace(f)},R=(e,t)=>{if(i.warn("extractor - ",t,y(e),e.children("D")),t>10){i.error("Bailing out");return}let n=e.nodes(),r=!1;for(const s of n){const a=e.children(s);r=r||a.length>0}if(!r){i.debug("Done, no node has children",e.nodes());return}i.debug("Nodes = ",n,t);for(const s of n)if(i.debug("Extracting node",s,f,f[s]&&!f[s].externalConnections,!e.parent(s),e.node(s),e.children("D")," Depth ",t),!f[s])i.debug("Not a cluster",s,t);else if(!f[s].externalConnections&&e.children(s)&&e.children(s).length>0){i.warn("Cluster without external connections, without a parent and with children",s,t);let h=e.graph().rankdir==="TB"?"LR":"TB";f[s]&&f[s].clusterData&&f[s].clusterData.dir&&(h=f[s].clusterData.dir,i.warn("Fixing dir",f[s].clusterData.dir,h));const l=new G({multigraph:!0,compound:!0}).setGraph({rankdir:h,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});i.warn("Old graph before copy",y(e)),J(s,e,l,s),e.setNode(s,{clusterNode:!0,id:s,clusterData:f[s].clusterData,labelText:f[s].labelText,graph:l}),i.warn("New graph after copy node: (",s,")",y(l)),i.debug("Old graph after copy",y(e))}else i.warn("Cluster ** ",s," **not meeting the criteria !externalConnections:",!f[s].externalConnections," no parent: ",!e.parent(s)," children ",e.children(s)&&e.children(s).length>0,e.children("D"),t),i.debug(f);n=e.nodes(),i.warn("New list of nodes",n);for(const s of n){const a=e.node(s);i.warn(" Now next level",s,a),a.clusterNode&&R(a.graph,t+1)}},P=(e,t)=>{if(t.length===0)return[];let n=Object.assign(t);return t.forEach(r=>{const s=e.children(r),a=P(e,s);n=[...n,...a]}),n},it=e=>P(e,e.children()),st=(e,t)=>{i.info("Creating subgraph rect for ",t.id,t);const n=e.insert("g").attr("class","cluster"+(t.class?" "+t.class:"")).attr("id",t.id),r=n.insert("rect",":first-child"),s=N(E().flowchart.htmlLabels),a=n.insert("g").attr("class","cluster-label"),h=t.labelType==="markdown"?z(a,t.labelText,{style:t.labelStyle,useHtmlLabels:s}):a.node().appendChild(O(t.labelText,t.labelStyle,void 0,!0));let l=h.getBBox();if(N(E().flowchart.htmlLabels)){const o=h.children[0],u=L(h);l=o.getBoundingClientRect(),u.attr("width",l.width),u.attr("height",l.height)}const d=0*t.padding,w=d/2,g=t.width<=l.width+d?l.width+d:t.width;t.width<=l.width+d?t.diff=(l.width-t.width)/2-t.padding/2:t.diff=-t.padding/2,i.trace("Data ",t,JSON.stringify(t)),r.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-g/2).attr("y",t.y-t.height/2-w).attr("width",g).attr("height",t.height+d),s?a.attr("transform","translate("+(t.x-l.width/2)+", "+(t.y-t.height/2)+")"):a.attr("transform","translate("+t.x+", "+(t.y-t.height/2)+")");const c=r.node().getBBox();return t.width=c.width,t.height=c.height,t.intersect=function(o){return X(t,o)},n},rt=(e,t)=>{const n=e.insert("g").attr("class","note-cluster").attr("id",t.id),r=n.insert("rect",":first-child"),s=0*t.padding,a=s/2;r.attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-t.width/2-a).attr("y",t.y-t.height/2-a).attr("width",t.width+s).attr("height",t.height+s).attr("fill","none");const h=r.node().getBBox();return t.width=h.width,t.height=h.height,t.intersect=function(l){return X(t,l)},n},at=(e,t)=>{const n=e.insert("g").attr("class",t.classes).attr("id",t.id),r=n.insert("rect",":first-child"),s=n.insert("g").attr("class","cluster-label"),a=n.append("rect"),h=s.node().appendChild(O(t.labelText,t.labelStyle,void 0,!0));let l=h.getBBox();if(N(E().flowchart.htmlLabels)){const o=h.children[0],u=L(h);l=o.getBoundingClientRect(),u.attr("width",l.width),u.attr("height",l.height)}l=h.getBBox();const d=0*t.padding,w=d/2,g=t.width<=l.width+t.padding?l.width+t.padding:t.width;t.width<=l.width+t.padding?t.diff=(l.width+t.padding*0-t.width)/2:t.diff=-t.padding/2,r.attr("class","outer").attr("x",t.x-g/2-w).attr("y",t.y-t.height/2-w).attr("width",g+d).attr("height",t.height+d),a.attr("class","inner").attr("x",t.x-g/2-w).attr("y",t.y-t.height/2-w+l.height-1).attr("width",g+d).attr("height",t.height+d-l.height-3),s.attr("transform","translate("+(t.x-l.width/2)+", "+(t.y-t.height/2-t.padding/3+(N(E().flowchart.htmlLabels)?5:3))+")");const c=r.node().getBBox();return t.height=c.height,t.intersect=function(o){return X(t,o)},n},ct=(e,t)=>{const n=e.insert("g").attr("class",t.classes).attr("id",t.id),r=n.insert("rect",":first-child"),s=0*t.padding,a=s/2;r.attr("class","divider").attr("x",t.x-t.width/2-a).attr("y",t.y-t.height/2).attr("width",t.width+s).attr("height",t.height+s);const h=r.node().getBBox();return t.width=h.width,t.height=h.height,t.diff=-t.padding/2,t.intersect=function(l){return X(t,l)},n},ot={rect:st,roundedWithTitle:at,noteGroup:rt,divider:ct};let F={};const lt=(e,t)=>{i.trace("Inserting cluster");const n=t.shape||"rect";F[t.id]=ot[n](e,t)},ft=()=>{F={}},$=async(e,t,n,r)=>{i.info("Graph in recursive render: XXX",y(t),r);const s=t.graph().rankdir;i.trace("Dir in recursive render - dir:",s);const a=e.insert("g").attr("class","root");t.nodes()?i.info("Recursive render XXX",t.nodes()):i.info("No nodes found for",t),t.edges().length>0&&i.trace("Recursive edges",t.edge(t.edges()[0]));const h=a.insert("g").attr("class","clusters"),l=a.insert("g").attr("class","edgePaths"),d=a.insert("g").attr("class","edgeLabels"),w=a.insert("g").attr("class","nodes");await Promise.all(t.nodes().map(async function(c){const o=t.node(c);if(r!==void 0){const u=JSON.parse(JSON.stringify(r.clusterData));i.info("Setting data for cluster XXX (",c,") ",u,r),t.setNode(r.id,u),t.parent(c)||(i.trace("Setting parent",c,r.id),t.setParent(c,r.id,u))}if(i.info("(Insert) Node XXX"+c+": "+JSON.stringify(t.node(c))),o&&o.clusterNode){i.info("Cluster identified",c,o.width,t.node(c));const u=await $(w,o.graph,n,t.node(c)),C=u.elem;M(o,C),o.diff=u.diff||0,i.info("Node bounds (abc123)",c,o,o.width,o.x,o.y),_(C,o),i.warn("Recursive render complete ",C,o)}else t.children(c).length>0?(i.info("Cluster - the non recursive path XXX",c,o.id,o,t),i.info(m(o.id,t)),f[o.id]={id:m(o.id,t),node:o}):(i.info("Node - the non recursive path",c,o.id,o),await H(w,t.node(c),s))})),t.edges().forEach(function(c){const o=t.edge(c.v,c.w,c.name);i.info("Edge "+c.v+" -> "+c.w+": "+JSON.stringify(c)),i.info("Edge "+c.v+" -> "+c.w+": ",c," ",JSON.stringify(t.edge(c))),i.info("Fix",f,"ids:",c.v,c.w,"Translateing: ",f[c.v],f[c.w]),V(d,o)}),t.edges().forEach(function(c){i.info("Edge "+c.v+" -> "+c.w+": "+JSON.stringify(c))}),i.info("#############################################"),i.info("### Layout ###"),i.info("#############################################"),i.info(t),j(t),i.info("Graph after layout:",y(t));let g=0;return it(t).forEach(function(c){const o=t.node(c);i.info("Position "+c+": "+JSON.stringify(t.node(c))),i.info("Position "+c+": ("+o.x,","+o.y,") width: ",o.width," height: ",o.height),o&&o.clusterNode?B(o):t.children(c).length>0?(lt(h,o),f[o.id].node=o):B(o)}),t.edges().forEach(function(c){const o=t.edge(c);i.info("Edge "+c.v+" -> "+c.w+": "+JSON.stringify(o),o);const u=q(l,c,o,f,n,t);U(o,u)}),t.nodes().forEach(function(c){const o=t.node(c);i.info(c,o.type,o.diff),o.type==="group"&&(g=o.diff)}),{elem:a,diff:g}},gt=async(e,t,n,r,s)=>{A(e,n,r,s),W(),Y(),ft(),tt(),i.warn("Graph at first:",y(t)),nt(t),i.warn("Graph after:",y(t)),await $(e,t,r)};export{gt as r}; +import{b as k,a as v,m as D,G,l as j}from"./layout.66644227.js";import{i as A,u as M,s as _,a as H,b as V,p as B,c as q,d as U,e as W,f as Y,g as O,h as X}from"./edges-b00f0ec2.d6f18c62.js";import{l as i,q as N,c as E,h as L}from"../app.3c4fe3d0.js";import{c as z}from"./createText-285e50b4.661aa36f.js";var K=4;function Q(e){return k(e,K)}function y(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:Z(e),edges:I(e)};return v(e.graph())||(t.value=Q(e.graph())),t}function Z(e){return D(e.nodes(),function(t){var n=e.node(t),r=e.parent(t),s={v:t};return v(n)||(s.value=n),v(r)||(s.parent=r),s})}function I(e){return D(e.edges(),function(t){var n=e.edge(t),r={v:t.v,w:t.w};return v(t.name)||(r.name=t.name),v(n)||(r.value=n),r})}let f={},x={},T={};const tt=()=>{x={},T={},f={}},S=(e,t)=>(i.trace("In isDecendant",t," ",e," = ",x[t].includes(e)),!!x[t].includes(e)),et=(e,t)=>(i.info("Decendants of ",t," is ",x[t]),i.info("Edge is ",e),e.v===t||e.w===t?!1:x[t]?x[t].includes(e.v)||S(e.v,t)||S(e.w,t)||x[t].includes(e.w):(i.debug("Tilt, ",t,",not in decendants"),!1)),J=(e,t,n,r)=>{i.warn("Copying children of ",e,"root",r,"data",t.node(e),r);const s=t.children(e)||[];e!==r&&s.push(e),i.warn("Copying (nodes) clusterId",e,"nodes",s),s.forEach(a=>{if(t.children(a).length>0)J(a,t,n,r);else{const h=t.node(a);i.info("cp ",a," to ",r," with parent ",e),n.setNode(a,h),r!==t.parent(a)&&(i.warn("Setting parent",a,t.parent(a)),n.setParent(a,t.parent(a))),e!==r&&a!==e?(i.debug("Setting parent",a,e),n.setParent(a,e)):(i.info("In copy ",e,"root",r,"data",t.node(e),r),i.debug("Not Setting parent for node=",a,"cluster!==rootId",e!==r,"node!==clusterId",a!==e));const l=t.edges(a);i.debug("Copying Edges",l),l.forEach(d=>{i.info("Edge",d);const w=t.edge(d.v,d.w,d.name);i.info("Edge data",w,r);try{et(d,r)?(i.info("Copying as ",d.v,d.w,w,d.name),n.setEdge(d.v,d.w,w,d.name),i.info("newGraph edges ",n.edges(),n.edge(n.edges()[0]))):i.info("Skipping copy of edge ",d.v,"-->",d.w," rootId: ",r," clusterId:",e)}catch(g){i.error(g)}})}i.debug("Removing node",a),t.removeNode(a)})},p=(e,t)=>{const n=t.children(e);let r=[...n];for(const s of n)T[s]=e,r=[...r,...p(s,t)];return r},m=(e,t)=>{i.trace("Searching",e);const n=t.children(e);if(i.trace("Searching children of id ",e,n),n.length<1)return i.trace("This is a valid node",e),e;for(const r of n){const s=m(r,t);if(s)return i.trace("Found replacement for",e," => ",s),s}},b=e=>!f[e]||!f[e].externalConnections?e:f[e]?f[e].id:e,nt=(e,t)=>{if(!e||t>10){i.debug("Opting out, no graph ");return}else i.debug("Opting in, graph ");e.nodes().forEach(function(n){e.children(n).length>0&&(i.warn("Cluster identified",n," Replacement id in edges: ",m(n,e)),x[n]=p(n,e),f[n]={id:m(n,e),clusterData:e.node(n)})}),e.nodes().forEach(function(n){const r=e.children(n),s=e.edges();r.length>0?(i.debug("Cluster identified",n,x),s.forEach(a=>{if(a.v!==n&&a.w!==n){const h=S(a.v,n),l=S(a.w,n);h^l&&(i.warn("Edge: ",a," leaves cluster ",n),i.warn("Decendants of XXX ",n,": ",x[n]),f[n].externalConnections=!0)}})):i.debug("Not a cluster ",n,x)}),e.edges().forEach(function(n){const r=e.edge(n);i.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(n)),i.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(e.edge(n)));let s=n.v,a=n.w;if(i.warn("Fix XXX",f,"ids:",n.v,n.w,"Translating: ",f[n.v]," --- ",f[n.w]),f[n.v]&&f[n.w]&&f[n.v]===f[n.w]){i.warn("Fixing and trixing link to self - removing XXX",n.v,n.w,n.name),i.warn("Fixing and trixing - removing XXX",n.v,n.w,n.name),s=b(n.v),a=b(n.w),e.removeEdge(n.v,n.w,n.name);const h=n.w+"---"+n.v;e.setNode(h,{domId:h,id:h,labelStyle:"",labelText:r.label,padding:0,shape:"labelRect",style:""});const l=JSON.parse(JSON.stringify(r)),d=JSON.parse(JSON.stringify(r));l.label="",l.arrowTypeEnd="none",d.label="",l.fromCluster=n.v,d.toCluster=n.v,e.setEdge(s,h,l,n.name+"-cyclic-special"),e.setEdge(h,a,d,n.name+"-cyclic-special")}else(f[n.v]||f[n.w])&&(i.warn("Fixing and trixing - removing XXX",n.v,n.w,n.name),s=b(n.v),a=b(n.w),e.removeEdge(n.v,n.w,n.name),s!==n.v&&(r.fromCluster=n.v),a!==n.w&&(r.toCluster=n.w),i.warn("Fix Replacing with XXX",s,a,n.name),e.setEdge(s,a,r,n.name))}),i.warn("Adjusted Graph",y(e)),R(e,0),i.trace(f)},R=(e,t)=>{if(i.warn("extractor - ",t,y(e),e.children("D")),t>10){i.error("Bailing out");return}let n=e.nodes(),r=!1;for(const s of n){const a=e.children(s);r=r||a.length>0}if(!r){i.debug("Done, no node has children",e.nodes());return}i.debug("Nodes = ",n,t);for(const s of n)if(i.debug("Extracting node",s,f,f[s]&&!f[s].externalConnections,!e.parent(s),e.node(s),e.children("D")," Depth ",t),!f[s])i.debug("Not a cluster",s,t);else if(!f[s].externalConnections&&e.children(s)&&e.children(s).length>0){i.warn("Cluster without external connections, without a parent and with children",s,t);let h=e.graph().rankdir==="TB"?"LR":"TB";f[s]&&f[s].clusterData&&f[s].clusterData.dir&&(h=f[s].clusterData.dir,i.warn("Fixing dir",f[s].clusterData.dir,h));const l=new G({multigraph:!0,compound:!0}).setGraph({rankdir:h,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});i.warn("Old graph before copy",y(e)),J(s,e,l,s),e.setNode(s,{clusterNode:!0,id:s,clusterData:f[s].clusterData,labelText:f[s].labelText,graph:l}),i.warn("New graph after copy node: (",s,")",y(l)),i.debug("Old graph after copy",y(e))}else i.warn("Cluster ** ",s," **not meeting the criteria !externalConnections:",!f[s].externalConnections," no parent: ",!e.parent(s)," children ",e.children(s)&&e.children(s).length>0,e.children("D"),t),i.debug(f);n=e.nodes(),i.warn("New list of nodes",n);for(const s of n){const a=e.node(s);i.warn(" Now next level",s,a),a.clusterNode&&R(a.graph,t+1)}},P=(e,t)=>{if(t.length===0)return[];let n=Object.assign(t);return t.forEach(r=>{const s=e.children(r),a=P(e,s);n=[...n,...a]}),n},it=e=>P(e,e.children()),st=(e,t)=>{i.info("Creating subgraph rect for ",t.id,t);const n=e.insert("g").attr("class","cluster"+(t.class?" "+t.class:"")).attr("id",t.id),r=n.insert("rect",":first-child"),s=N(E().flowchart.htmlLabels),a=n.insert("g").attr("class","cluster-label"),h=t.labelType==="markdown"?z(a,t.labelText,{style:t.labelStyle,useHtmlLabels:s}):a.node().appendChild(O(t.labelText,t.labelStyle,void 0,!0));let l=h.getBBox();if(N(E().flowchart.htmlLabels)){const o=h.children[0],u=L(h);l=o.getBoundingClientRect(),u.attr("width",l.width),u.attr("height",l.height)}const d=0*t.padding,w=d/2,g=t.width<=l.width+d?l.width+d:t.width;t.width<=l.width+d?t.diff=(l.width-t.width)/2-t.padding/2:t.diff=-t.padding/2,i.trace("Data ",t,JSON.stringify(t)),r.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-g/2).attr("y",t.y-t.height/2-w).attr("width",g).attr("height",t.height+d),s?a.attr("transform","translate("+(t.x-l.width/2)+", "+(t.y-t.height/2)+")"):a.attr("transform","translate("+t.x+", "+(t.y-t.height/2)+")");const c=r.node().getBBox();return t.width=c.width,t.height=c.height,t.intersect=function(o){return X(t,o)},n},rt=(e,t)=>{const n=e.insert("g").attr("class","note-cluster").attr("id",t.id),r=n.insert("rect",":first-child"),s=0*t.padding,a=s/2;r.attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-t.width/2-a).attr("y",t.y-t.height/2-a).attr("width",t.width+s).attr("height",t.height+s).attr("fill","none");const h=r.node().getBBox();return t.width=h.width,t.height=h.height,t.intersect=function(l){return X(t,l)},n},at=(e,t)=>{const n=e.insert("g").attr("class",t.classes).attr("id",t.id),r=n.insert("rect",":first-child"),s=n.insert("g").attr("class","cluster-label"),a=n.append("rect"),h=s.node().appendChild(O(t.labelText,t.labelStyle,void 0,!0));let l=h.getBBox();if(N(E().flowchart.htmlLabels)){const o=h.children[0],u=L(h);l=o.getBoundingClientRect(),u.attr("width",l.width),u.attr("height",l.height)}l=h.getBBox();const d=0*t.padding,w=d/2,g=t.width<=l.width+t.padding?l.width+t.padding:t.width;t.width<=l.width+t.padding?t.diff=(l.width+t.padding*0-t.width)/2:t.diff=-t.padding/2,r.attr("class","outer").attr("x",t.x-g/2-w).attr("y",t.y-t.height/2-w).attr("width",g+d).attr("height",t.height+d),a.attr("class","inner").attr("x",t.x-g/2-w).attr("y",t.y-t.height/2-w+l.height-1).attr("width",g+d).attr("height",t.height+d-l.height-3),s.attr("transform","translate("+(t.x-l.width/2)+", "+(t.y-t.height/2-t.padding/3+(N(E().flowchart.htmlLabels)?5:3))+")");const c=r.node().getBBox();return t.height=c.height,t.intersect=function(o){return X(t,o)},n},ct=(e,t)=>{const n=e.insert("g").attr("class",t.classes).attr("id",t.id),r=n.insert("rect",":first-child"),s=0*t.padding,a=s/2;r.attr("class","divider").attr("x",t.x-t.width/2-a).attr("y",t.y-t.height/2).attr("width",t.width+s).attr("height",t.height+s);const h=r.node().getBBox();return t.width=h.width,t.height=h.height,t.diff=-t.padding/2,t.intersect=function(l){return X(t,l)},n},ot={rect:st,roundedWithTitle:at,noteGroup:rt,divider:ct};let F={};const lt=(e,t)=>{i.trace("Inserting cluster");const n=t.shape||"rect";F[t.id]=ot[n](e,t)},ft=()=>{F={}},$=async(e,t,n,r)=>{i.info("Graph in recursive render: XXX",y(t),r);const s=t.graph().rankdir;i.trace("Dir in recursive render - dir:",s);const a=e.insert("g").attr("class","root");t.nodes()?i.info("Recursive render XXX",t.nodes()):i.info("No nodes found for",t),t.edges().length>0&&i.trace("Recursive edges",t.edge(t.edges()[0]));const h=a.insert("g").attr("class","clusters"),l=a.insert("g").attr("class","edgePaths"),d=a.insert("g").attr("class","edgeLabels"),w=a.insert("g").attr("class","nodes");await Promise.all(t.nodes().map(async function(c){const o=t.node(c);if(r!==void 0){const u=JSON.parse(JSON.stringify(r.clusterData));i.info("Setting data for cluster XXX (",c,") ",u,r),t.setNode(r.id,u),t.parent(c)||(i.trace("Setting parent",c,r.id),t.setParent(c,r.id,u))}if(i.info("(Insert) Node XXX"+c+": "+JSON.stringify(t.node(c))),o&&o.clusterNode){i.info("Cluster identified",c,o.width,t.node(c));const u=await $(w,o.graph,n,t.node(c)),C=u.elem;M(o,C),o.diff=u.diff||0,i.info("Node bounds (abc123)",c,o,o.width,o.x,o.y),_(C,o),i.warn("Recursive render complete ",C,o)}else t.children(c).length>0?(i.info("Cluster - the non recursive path XXX",c,o.id,o,t),i.info(m(o.id,t)),f[o.id]={id:m(o.id,t),node:o}):(i.info("Node - the non recursive path",c,o.id,o),await H(w,t.node(c),s))})),t.edges().forEach(function(c){const o=t.edge(c.v,c.w,c.name);i.info("Edge "+c.v+" -> "+c.w+": "+JSON.stringify(c)),i.info("Edge "+c.v+" -> "+c.w+": ",c," ",JSON.stringify(t.edge(c))),i.info("Fix",f,"ids:",c.v,c.w,"Translateing: ",f[c.v],f[c.w]),V(d,o)}),t.edges().forEach(function(c){i.info("Edge "+c.v+" -> "+c.w+": "+JSON.stringify(c))}),i.info("#############################################"),i.info("### Layout ###"),i.info("#############################################"),i.info(t),j(t),i.info("Graph after layout:",y(t));let g=0;return it(t).forEach(function(c){const o=t.node(c);i.info("Position "+c+": "+JSON.stringify(t.node(c))),i.info("Position "+c+": ("+o.x,","+o.y,") width: ",o.width," height: ",o.height),o&&o.clusterNode?B(o):t.children(c).length>0?(lt(h,o),f[o.id].node=o):B(o)}),t.edges().forEach(function(c){const o=t.edge(c);i.info("Edge "+c.v+" -> "+c.w+": "+JSON.stringify(o),o);const u=q(l,c,o,f,n,t);U(o,u)}),t.nodes().forEach(function(c){const o=t.node(c);i.info(c,o.type,o.diff),o.type==="group"&&(g=o.diff)}),{elem:a,diff:g}},gt=async(e,t,n,r,s)=>{A(e,n,r,s),W(),Y(),ft(),tt(),i.warn("Graph at first:",y(t)),nt(t),i.warn("Graph after:",y(t)),await $(e,t,r)};export{gt as r}; diff --git a/pr-383/assets/chunks/infoDiagram-c976a9ed.ae30040b.js b/pr-383/assets/chunks/infoDiagram-c976a9ed.8fe15abe.js similarity index 98% rename from pr-383/assets/chunks/infoDiagram-c976a9ed.ae30040b.js rename to pr-383/assets/chunks/infoDiagram-c976a9ed.8fe15abe.js index fb25e0dd0..34f97d744 100644 --- a/pr-383/assets/chunks/infoDiagram-c976a9ed.ae30040b.js +++ b/pr-383/assets/chunks/infoDiagram-c976a9ed.8fe15abe.js @@ -1,4 +1,4 @@ -import{l as N,c as M,h as O}from"../app.34e6398e.js";import"./framework.be0a7370.js";import"./theme.e11407bf.js";var $=function(){var c=function(h,t,e,n){for(e=e||{},n=h.length;n--;e[h[n]]=t);return e},f=[6,9,10],d={trace:function(){},yy:{},symbols_:{error:2,start:3,info:4,document:5,EOF:6,line:7,statement:8,NL:9,showInfo:10,$accept:0,$end:1},terminals_:{2:"error",4:"info",6:"EOF",9:"NL",10:"showInfo"},productions_:[0,[3,3],[5,0],[5,2],[7,1],[7,1],[8,1]],performAction:function(t,e,n,s,r,i,k){switch(i.length-1,r){case 1:return s;case 4:break;case 6:s.setInfo(!0);break}},table:[{3:1,4:[1,2]},{1:[3]},c(f,[2,2],{5:3}),{6:[1,4],7:5,8:6,9:[1,7],10:[1,8]},{1:[2,1]},c(f,[2,3]),c(f,[2,4]),c(f,[2,5]),c(f,[2,6])],defaultActions:{4:[2,1]},parseError:function(t,e){if(e.recoverable)this.trace(t);else{var n=new Error(t);throw n.hash=e,n}},parse:function(t){var e=this,n=[0],s=[],r=[null],i=[],k=this.table,L="",b=0,T=0,z=2,F=1,D=i.slice.call(arguments,1),o=Object.create(this.lexer),g={yy:{}};for(var E in this.yy)Object.prototype.hasOwnProperty.call(this.yy,E)&&(g.yy[E]=this.yy[E]);o.setInput(t,g.yy),g.yy.lexer=o,g.yy.parser=this,typeof o.yylloc>"u"&&(o.yylloc={});var w=o.yylloc;i.push(w);var U=o.options&&o.options.ranges;typeof g.yy.parseError=="function"?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Y(){var u;return u=s.pop()||o.lex()||F,typeof u!="number"&&(u instanceof Array&&(s=u,u=s.pop()),u=e.symbols_[u]||u),u}for(var l,_,a,I,m={},v,y,j,S;;){if(_=n[n.length-1],this.defaultActions[_]?a=this.defaultActions[_]:((l===null||typeof l>"u")&&(l=Y()),a=k[_]&&k[_][l]),typeof a>"u"||!a.length||!a[0]){var A="";S=[];for(v in k[_])this.terminals_[v]&&v>z&&S.push("'"+this.terminals_[v]+"'");o.showPosition?A="Parse error on line "+(b+1)+`: +import{l as N,c as M,h as O}from"../app.3c4fe3d0.js";import"./framework.be0a7370.js";import"./theme.71fa6e36.js";var $=function(){var c=function(h,t,e,n){for(e=e||{},n=h.length;n--;e[h[n]]=t);return e},f=[6,9,10],d={trace:function(){},yy:{},symbols_:{error:2,start:3,info:4,document:5,EOF:6,line:7,statement:8,NL:9,showInfo:10,$accept:0,$end:1},terminals_:{2:"error",4:"info",6:"EOF",9:"NL",10:"showInfo"},productions_:[0,[3,3],[5,0],[5,2],[7,1],[7,1],[8,1]],performAction:function(t,e,n,s,r,i,k){switch(i.length-1,r){case 1:return s;case 4:break;case 6:s.setInfo(!0);break}},table:[{3:1,4:[1,2]},{1:[3]},c(f,[2,2],{5:3}),{6:[1,4],7:5,8:6,9:[1,7],10:[1,8]},{1:[2,1]},c(f,[2,3]),c(f,[2,4]),c(f,[2,5]),c(f,[2,6])],defaultActions:{4:[2,1]},parseError:function(t,e){if(e.recoverable)this.trace(t);else{var n=new Error(t);throw n.hash=e,n}},parse:function(t){var e=this,n=[0],s=[],r=[null],i=[],k=this.table,L="",b=0,T=0,z=2,F=1,D=i.slice.call(arguments,1),o=Object.create(this.lexer),g={yy:{}};for(var E in this.yy)Object.prototype.hasOwnProperty.call(this.yy,E)&&(g.yy[E]=this.yy[E]);o.setInput(t,g.yy),g.yy.lexer=o,g.yy.parser=this,typeof o.yylloc>"u"&&(o.yylloc={});var w=o.yylloc;i.push(w);var U=o.options&&o.options.ranges;typeof g.yy.parseError=="function"?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Y(){var u;return u=s.pop()||o.lex()||F,typeof u!="number"&&(u instanceof Array&&(s=u,u=s.pop()),u=e.symbols_[u]||u),u}for(var l,_,a,I,m={},v,y,j,S;;){if(_=n[n.length-1],this.defaultActions[_]?a=this.defaultActions[_]:((l===null||typeof l>"u")&&(l=Y()),a=k[_]&&k[_][l]),typeof a>"u"||!a.length||!a[0]){var A="";S=[];for(v in k[_])this.terminals_[v]&&v>z&&S.push("'"+this.terminals_[v]+"'");o.showPosition?A="Parse error on line "+(b+1)+`: `+o.showPosition()+` Expecting `+S.join(", ")+", got '"+(this.terminals_[l]||l)+"'":A="Parse error on line "+(b+1)+": Unexpected "+(l==F?"end of input":"'"+(this.terminals_[l]||l)+"'"),this.parseError(A,{text:o.match,token:this.terminals_[l]||l,line:o.yylineno,loc:w,expected:S})}if(a[0]instanceof Array&&a.length>1)throw new Error("Parse Error: multiple actions possible at state: "+_+", token: "+l);switch(a[0]){case 1:n.push(l),r.push(o.yytext),i.push(o.yylloc),n.push(a[1]),l=null,T=o.yyleng,L=o.yytext,b=o.yylineno,w=o.yylloc;break;case 2:if(y=this.productions_[a[1]][1],m.$=r[r.length-y],m._$={first_line:i[i.length-(y||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(y||1)].first_column,last_column:i[i.length-1].last_column},U&&(m._$.range=[i[i.length-(y||1)].range[0],i[i.length-1].range[1]]),I=this.performAction.apply(m,[L,T,b,g.yy,a[1],r,i].concat(D)),typeof I<"u")return I;y&&(n=n.slice(0,-1*y*2),r=r.slice(0,-1*y),i=i.slice(0,-1*y)),n.push(this.productions_[a[1]][0]),r.push(m.$),i.push(m._$),j=k[n[n.length-2]][n[n.length-1]],n.push(j);break;case 3:return!0}}return!0}},x=function(){var h={EOF:1,parseError:function(e,n){if(this.yy.parser)this.yy.parser.parseError(e,n);else throw new Error(e)},setInput:function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var t=this._input[0];this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t;var e=t.match(/(?:\r\n?|\n).*/g);return e?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var s=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var r=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===s.length?this.yylloc.first_column:0)+s[s.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[r[0],r[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+` diff --git a/pr-383/assets/chunks/journeyDiagram-5120ee2f.0e5e0ae2.js b/pr-383/assets/chunks/journeyDiagram-5120ee2f.ba313e1f.js similarity index 98% rename from pr-383/assets/chunks/journeyDiagram-5120ee2f.0e5e0ae2.js rename to pr-383/assets/chunks/journeyDiagram-5120ee2f.ba313e1f.js index af8898495..8c012d4c3 100644 --- a/pr-383/assets/chunks/journeyDiagram-5120ee2f.0e5e0ae2.js +++ b/pr-383/assets/chunks/journeyDiagram-5120ee2f.ba313e1f.js @@ -1,4 +1,4 @@ -import{c as V,v as gt,x as mt,s as xt,g as _t,b as kt,a as bt,m as vt,z as wt,h as H,i as Tt}from"../app.34e6398e.js";import{d as $t,f as St,a as Mt,g as ct}from"./svgDrawCommon-f26cad39.493f1f49.js";import{a as it}from"./arc.acf4fa71.js";import"./framework.be0a7370.js";import"./theme.e11407bf.js";import"./path.53f90ab3.js";var Z=function(){var t=function(_,r,a,h){for(a=a||{},h=_.length;h--;a[_[h]]=r);return a},e=[1,2],s=[1,5],n=[6,9,11,17,18,20,22,23,24,26],i=[1,15],l=[1,16],o=[1,17],y=[1,18],u=[1,19],x=[1,20],g=[1,24],f=[4,6,9,11,17,18,20,22,23,24,26],d={trace:function(){},yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,directive:7,line:8,SPACE:9,statement:10,NEWLINE:11,openDirective:12,typeDirective:13,closeDirective:14,":":15,argDirective:16,title:17,acc_title:18,acc_title_value:19,acc_descr:20,acc_descr_value:21,acc_descr_multiline_value:22,section:23,taskName:24,taskData:25,open_directive:26,type_directive:27,arg_directive:28,close_directive:29,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",9:"SPACE",11:"NEWLINE",15:":",17:"title",18:"acc_title",19:"acc_title_value",20:"acc_descr",21:"acc_descr_value",22:"acc_descr_multiline_value",23:"section",24:"taskName",25:"taskData",26:"open_directive",27:"type_directive",28:"arg_directive",29:"close_directive"},productions_:[0,[3,3],[3,2],[5,0],[5,2],[8,2],[8,1],[8,1],[8,1],[7,4],[7,6],[10,1],[10,2],[10,2],[10,1],[10,1],[10,2],[10,1],[12,1],[13,1],[16,1],[14,1]],performAction:function(r,a,h,p,m,c,R){var k=c.length-1;switch(m){case 1:return c[k-1];case 3:this.$=[];break;case 4:c[k-1].push(c[k]),this.$=c[k-1];break;case 5:case 6:this.$=c[k];break;case 7:case 8:this.$=[];break;case 11:p.setDiagramTitle(c[k].substr(6)),this.$=c[k].substr(6);break;case 12:this.$=c[k].trim(),p.setAccTitle(this.$);break;case 13:case 14:this.$=c[k].trim(),p.setAccDescription(this.$);break;case 15:p.addSection(c[k].substr(8)),this.$=c[k].substr(8);break;case 16:p.addTask(c[k-1],c[k]),this.$="task";break;case 18:p.parseDirective("%%{","open_directive");break;case 19:p.parseDirective(c[k],"type_directive");break;case 20:c[k]=c[k].trim().replace(/'/g,'"'),p.parseDirective(c[k],"arg_directive");break;case 21:p.parseDirective("}%%","close_directive","journey");break}},table:[{3:1,4:e,7:3,12:4,26:s},{1:[3]},t(n,[2,3],{5:6}),{3:7,4:e,7:3,12:4,26:s},{13:8,27:[1,9]},{27:[2,18]},{6:[1,10],7:21,8:11,9:[1,12],10:13,11:[1,14],12:4,17:i,18:l,20:o,22:y,23:u,24:x,26:s},{1:[2,2]},{14:22,15:[1,23],29:g},t([15,29],[2,19]),t(n,[2,8],{1:[2,1]}),t(n,[2,4]),{7:21,10:25,12:4,17:i,18:l,20:o,22:y,23:u,24:x,26:s},t(n,[2,6]),t(n,[2,7]),t(n,[2,11]),{19:[1,26]},{21:[1,27]},t(n,[2,14]),t(n,[2,15]),{25:[1,28]},t(n,[2,17]),{11:[1,29]},{16:30,28:[1,31]},{11:[2,21]},t(n,[2,5]),t(n,[2,12]),t(n,[2,13]),t(n,[2,16]),t(f,[2,9]),{14:32,29:g},{29:[2,20]},{11:[1,33]},t(f,[2,10])],defaultActions:{5:[2,18],7:[2,2],24:[2,21],31:[2,20]},parseError:function(r,a){if(a.recoverable)this.trace(r);else{var h=new Error(r);throw h.hash=a,h}},parse:function(r){var a=this,h=[0],p=[],m=[null],c=[],R=this.table,k="",z=0,Q=0,yt=2,tt=1,dt=c.slice.call(arguments,1),v=Object.create(this.lexer),I={yy:{}};for(var D in this.yy)Object.prototype.hasOwnProperty.call(this.yy,D)&&(I.yy[D]=this.yy[D]);v.setInput(r,I.yy),I.yy.lexer=v,I.yy.parser=this,typeof v.yylloc>"u"&&(v.yylloc={});var W=v.yylloc;c.push(W);var pt=v.options&&v.options.ranges;typeof I.yy.parseError=="function"?this.parseError=I.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ft(){var E;return E=p.pop()||v.lex()||tt,typeof E!="number"&&(E instanceof Array&&(p=E,E=p.pop()),E=a.symbols_[E]||E),E}for(var w,A,$,X,F={},Y,M,et,O;;){if(A=h[h.length-1],this.defaultActions[A]?$=this.defaultActions[A]:((w===null||typeof w>"u")&&(w=ft()),$=R[A]&&R[A][w]),typeof $>"u"||!$.length||!$[0]){var G="";O=[];for(Y in R[A])this.terminals_[Y]&&Y>yt&&O.push("'"+this.terminals_[Y]+"'");v.showPosition?G="Parse error on line "+(z+1)+`: +import{c as V,v as gt,x as mt,s as xt,g as _t,b as kt,a as bt,m as vt,z as wt,h as H,i as Tt}from"../app.3c4fe3d0.js";import{d as $t,f as St,a as Mt,g as ct}from"./svgDrawCommon-f26cad39.398614f4.js";import{a as it}from"./arc.60bf6bcc.js";import"./framework.be0a7370.js";import"./theme.71fa6e36.js";import"./path.53f90ab3.js";var Z=function(){var t=function(_,r,a,h){for(a=a||{},h=_.length;h--;a[_[h]]=r);return a},e=[1,2],s=[1,5],n=[6,9,11,17,18,20,22,23,24,26],i=[1,15],l=[1,16],o=[1,17],y=[1,18],u=[1,19],x=[1,20],g=[1,24],f=[4,6,9,11,17,18,20,22,23,24,26],d={trace:function(){},yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,directive:7,line:8,SPACE:9,statement:10,NEWLINE:11,openDirective:12,typeDirective:13,closeDirective:14,":":15,argDirective:16,title:17,acc_title:18,acc_title_value:19,acc_descr:20,acc_descr_value:21,acc_descr_multiline_value:22,section:23,taskName:24,taskData:25,open_directive:26,type_directive:27,arg_directive:28,close_directive:29,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",9:"SPACE",11:"NEWLINE",15:":",17:"title",18:"acc_title",19:"acc_title_value",20:"acc_descr",21:"acc_descr_value",22:"acc_descr_multiline_value",23:"section",24:"taskName",25:"taskData",26:"open_directive",27:"type_directive",28:"arg_directive",29:"close_directive"},productions_:[0,[3,3],[3,2],[5,0],[5,2],[8,2],[8,1],[8,1],[8,1],[7,4],[7,6],[10,1],[10,2],[10,2],[10,1],[10,1],[10,2],[10,1],[12,1],[13,1],[16,1],[14,1]],performAction:function(r,a,h,p,m,c,R){var k=c.length-1;switch(m){case 1:return c[k-1];case 3:this.$=[];break;case 4:c[k-1].push(c[k]),this.$=c[k-1];break;case 5:case 6:this.$=c[k];break;case 7:case 8:this.$=[];break;case 11:p.setDiagramTitle(c[k].substr(6)),this.$=c[k].substr(6);break;case 12:this.$=c[k].trim(),p.setAccTitle(this.$);break;case 13:case 14:this.$=c[k].trim(),p.setAccDescription(this.$);break;case 15:p.addSection(c[k].substr(8)),this.$=c[k].substr(8);break;case 16:p.addTask(c[k-1],c[k]),this.$="task";break;case 18:p.parseDirective("%%{","open_directive");break;case 19:p.parseDirective(c[k],"type_directive");break;case 20:c[k]=c[k].trim().replace(/'/g,'"'),p.parseDirective(c[k],"arg_directive");break;case 21:p.parseDirective("}%%","close_directive","journey");break}},table:[{3:1,4:e,7:3,12:4,26:s},{1:[3]},t(n,[2,3],{5:6}),{3:7,4:e,7:3,12:4,26:s},{13:8,27:[1,9]},{27:[2,18]},{6:[1,10],7:21,8:11,9:[1,12],10:13,11:[1,14],12:4,17:i,18:l,20:o,22:y,23:u,24:x,26:s},{1:[2,2]},{14:22,15:[1,23],29:g},t([15,29],[2,19]),t(n,[2,8],{1:[2,1]}),t(n,[2,4]),{7:21,10:25,12:4,17:i,18:l,20:o,22:y,23:u,24:x,26:s},t(n,[2,6]),t(n,[2,7]),t(n,[2,11]),{19:[1,26]},{21:[1,27]},t(n,[2,14]),t(n,[2,15]),{25:[1,28]},t(n,[2,17]),{11:[1,29]},{16:30,28:[1,31]},{11:[2,21]},t(n,[2,5]),t(n,[2,12]),t(n,[2,13]),t(n,[2,16]),t(f,[2,9]),{14:32,29:g},{29:[2,20]},{11:[1,33]},t(f,[2,10])],defaultActions:{5:[2,18],7:[2,2],24:[2,21],31:[2,20]},parseError:function(r,a){if(a.recoverable)this.trace(r);else{var h=new Error(r);throw h.hash=a,h}},parse:function(r){var a=this,h=[0],p=[],m=[null],c=[],R=this.table,k="",z=0,Q=0,yt=2,tt=1,dt=c.slice.call(arguments,1),v=Object.create(this.lexer),I={yy:{}};for(var D in this.yy)Object.prototype.hasOwnProperty.call(this.yy,D)&&(I.yy[D]=this.yy[D]);v.setInput(r,I.yy),I.yy.lexer=v,I.yy.parser=this,typeof v.yylloc>"u"&&(v.yylloc={});var W=v.yylloc;c.push(W);var pt=v.options&&v.options.ranges;typeof I.yy.parseError=="function"?this.parseError=I.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ft(){var E;return E=p.pop()||v.lex()||tt,typeof E!="number"&&(E instanceof Array&&(p=E,E=p.pop()),E=a.symbols_[E]||E),E}for(var w,A,$,X,F={},Y,M,et,O;;){if(A=h[h.length-1],this.defaultActions[A]?$=this.defaultActions[A]:((w===null||typeof w>"u")&&(w=ft()),$=R[A]&&R[A][w]),typeof $>"u"||!$.length||!$[0]){var G="";O=[];for(Y in R[A])this.terminals_[Y]&&Y>yt&&O.push("'"+this.terminals_[Y]+"'");v.showPosition?G="Parse error on line "+(z+1)+`: `+v.showPosition()+` Expecting `+O.join(", ")+", got '"+(this.terminals_[w]||w)+"'":G="Parse error on line "+(z+1)+": Unexpected "+(w==tt?"end of input":"'"+(this.terminals_[w]||w)+"'"),this.parseError(G,{text:v.match,token:this.terminals_[w]||w,line:v.yylineno,loc:W,expected:O})}if($[0]instanceof Array&&$.length>1)throw new Error("Parse Error: multiple actions possible at state: "+A+", token: "+w);switch($[0]){case 1:h.push(w),m.push(v.yytext),c.push(v.yylloc),h.push($[1]),w=null,Q=v.yyleng,k=v.yytext,z=v.yylineno,W=v.yylloc;break;case 2:if(M=this.productions_[$[1]][1],F.$=m[m.length-M],F._$={first_line:c[c.length-(M||1)].first_line,last_line:c[c.length-1].last_line,first_column:c[c.length-(M||1)].first_column,last_column:c[c.length-1].last_column},pt&&(F._$.range=[c[c.length-(M||1)].range[0],c[c.length-1].range[1]]),X=this.performAction.apply(F,[k,Q,z,I.yy,$[1],m,c].concat(dt)),typeof X<"u")return X;M&&(h=h.slice(0,-1*M*2),m=m.slice(0,-1*M),c=c.slice(0,-1*M)),h.push(this.productions_[$[1]][0]),m.push(F.$),c.push(F._$),et=R[h[h.length-2]][h[h.length-1]],h.push(et);break;case 3:return!0}}return!0}},T=function(){var _={EOF:1,parseError:function(a,h){if(this.yy.parser)this.yy.parser.parseError(a,h);else throw new Error(a)},setInput:function(r,a){return this.yy=a||this.yy||{},this._input=r,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var r=this._input[0];this.yytext+=r,this.yyleng++,this.offset++,this.match+=r,this.matched+=r;var a=r.match(/(?:\r\n?|\n).*/g);return a?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),r},unput:function(r){var a=r.length,h=r.split(/(?:\r\n?|\n)/g);this._input=r+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-a),this.offset-=a;var p=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),h.length-1&&(this.yylineno-=h.length-1);var m=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:h?(h.length===p.length?this.yylloc.first_column:0)+p[p.length-h.length].length-h[0].length:this.yylloc.first_column-a},this.options.ranges&&(this.yylloc.range=[m[0],m[0]+this.yyleng-a]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(r){this.unput(this.match.slice(r))},pastInput:function(){var r=this.matched.substr(0,this.matched.length-this.match.length);return(r.length>20?"...":"")+r.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var r=this.match;return r.length<20&&(r+=this._input.substr(0,20-r.length)),(r.substr(0,20)+(r.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var r=this.pastInput(),a=new Array(r.length+1).join("-");return r+this.upcomingInput()+` diff --git a/pr-383/assets/chunks/layout.ca521a87.js b/pr-383/assets/chunks/layout.66644227.js similarity index 99% rename from pr-383/assets/chunks/layout.ca521a87.js rename to pr-383/assets/chunks/layout.66644227.js index 005d56a12..4035f8a10 100644 --- a/pr-383/assets/chunks/layout.ca521a87.js +++ b/pr-383/assets/chunks/layout.66644227.js @@ -1 +1 @@ -import{A as M,B as He,S as C,C as _,D as L,E as Fr,F as nn,G as D,H as X,I as Z,J as Un,K as Dr,L as ke,M as Gr,N as Br,O as Yn,P as Ur,Q as qe,R as Hn,T as V,U as cn,V as kn,W as Yr,X as Mn,Y as Ln,Z as se}from"../app.34e6398e.js";var Hr="[object Symbol]";function R(n){return typeof n=="symbol"||M(n)&&He(n)==Hr}function H(n,e){for(var r=-1,t=n==null?0:n.length,i=Array(t);++r0){if(++e>=at)return arguments[0]}else e=0;return n.apply(void 0,arguments)}}function Y(n){return function(){return n}}var ft=function(){try{var n=Fr(Object,"defineProperty");return n({},"",{}),n}catch{}}();const ln=ft;var dt=ln?function(n,e){return ln(n,"toString",{configurable:!0,enumerable:!1,value:Y(e),writable:!0})}:G;const ct=dt;var lt=st(ct);const Xe=lt;function Ze(n,e){for(var r=-1,t=n==null?0:n.length;++r-1}var bt=9007199254740991,wt=/^(?:0|[1-9]\d*)$/;function pn(n,e){var r=typeof n;return e=e??bt,!!e&&(r=="number"||r!="symbol"&&wt.test(n))&&n>-1&&n%1==0&&n1?r[i-1]:void 0,o=i>2?r[2]:void 0;for(a=n.length>3&&typeof a=="function"?(i--,a):void 0,o&&J(r[0],r[1],o)&&(a=i<3?void 0:a,i=1),e=Object(e);++t0&&r(u)?e>1?yn(u,e-1,r,t,i):Kn(i,u):t||(i[i.length]=u)}return i}function q(n){var e=n==null?0:n.length;return e?yn(n,1):[]}function Ut(n){return Xe(Je(n,void 0,q),n+"")}var Yt=Br(Object.getPrototypeOf,Object);const Wn=Yt;var Ht="[object Object]",kt=Function.prototype,qt=Object.prototype,je=kt.toString,Kt=qt.hasOwnProperty,Wt=je.call(Object);function Xt(n){if(!M(n)||He(n)!=Ht)return!1;var e=Wn(n);if(e===null)return!0;var r=Kt.call(e,"constructor")&&e.constructor;return typeof r=="function"&&r instanceof r&&je.call(r)==Wt}function Zt(n,e,r,t){var i=-1,a=n==null?0:n.length;for(t&&a&&(r=n[++i]);++iu))return!1;var f=a.get(n),d=a.get(e);if(f&&d)return f==e&&d==n;var l=-1,h=!0,g=r&Pa?new z:void 0;for(a.set(n,e),a.set(e,n);++l2?e[2]:void 0;for(i&&J(e[0],e[1],i)&&(t=1);++r-1?i[a?e[o]:o]:void 0}}var xo=Math.max;function To(n,e,r){var t=n==null?0:n.length;if(!t)return-1;var i=r==null?0:nt(r);return i<0&&(i=xo(t+i,0)),Ve(n,$(e),i)}var Oo=yo(To);const ne=Oo;function _r(n,e){var r=-1,t=D(n)?Array(n.length):[];return xn(n,function(i,a,o){t[++r]=e(i,a,o)}),t}function y(n,e){var r=_(n)?H:_r;return r(n,$(e))}function Lo(n,e){return n==null?n:zn(n,jn(e),B)}function Ao(n,e){return n&&Qn(n,jn(e))}function Po(n,e){return n>e}var No=Object.prototype,Co=No.hasOwnProperty;function $o(n,e){return n!=null&&Co.call(n,e)}function b(n,e){return n!=null&&gr(n,e,$o)}function Io(n,e){return H(e,function(r){return n[r]})}function N(n){return n==null?[]:Io(n,T(n))}function x(n){return n===void 0}function Er(n,e){return ne||a&&o&&s&&!u&&!f||t&&o&&s||!r&&s||!i)return 1;if(!t&&!a&&!f&&n=u)return s;var f=r[t];return s*(f=="desc"?-1:1)}}return n.index-e.index}function Bo(n,e,r){e.length?e=H(e,function(a){return _(a)?function(o){return En(o,a.length===1?a[0]:a)}:a}):e=[G];var t=-1;e=H(e,kn($));var i=_r(n,function(a,o,u){var s=H(e,function(f){return f(a)});return{criteria:s,index:++t,value:a}});return Fo(i,function(a,o){return Go(a,o,r)})}function Uo(n,e){return Ro(n,e,function(r,t){return pr(n,t)})}var Yo=Ut(function(n,e){return n==null?{}:Uo(n,e)});const gn=Yo;var Ho=Math.ceil,ko=Math.max;function qo(n,e,r,t){for(var i=-1,a=ko(Ho((e-n)/(r||1)),0),o=Array(a);a--;)o[t?a:++i]=n,n+=r;return o}function Ko(n){return function(e,r,t){return t&&typeof t!="number"&&J(e,r,t)&&(r=t=void 0),e=fn(e),r===void 0?(r=e,e=0):r=fn(r),t=t===void 0?e1&&J(n,e[0],e[1])?e=[]:r>2&&J(e[0],e[1],e[2])&&(e=[e[0]]),Bo(n,yn(e,1),[])});const an=Zo;var Vo=1/0,Jo=Ln&&1/Vn(new Ln([,-0]))[1]==Vo?function(n){return new Ln(n)}:it;const zo=Jo;var Qo=200;function jo(n,e,r){var t=-1,i=pt,a=n.length,o=!0,u=[],s=u;if(r)o=!1,i=_o;else if(a>=Qo){var f=e?null:zo(n);if(f)return Vn(f);o=!1,i=cr,s=new z}else s=e?[]:u;n:for(;++t1?i.setNode(a,r):i.setNode(a)}),this}setNode(e,r){return b(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=r),this):(this._nodes[e]=arguments.length>1?r:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=S,this._children[e]={},this._children[S][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)}node(e){return this._nodes[e]}hasNode(e){return b(this._nodes,e)}removeNode(e){var r=this;if(b(this._nodes,e)){var t=function(i){r.removeEdge(r._edgeObjs[i])};delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],c(this.children(e),function(i){r.setParent(i)}),delete this._children[e]),c(T(this._in[e]),t),delete this._in[e],delete this._preds[e],c(T(this._out[e]),t),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this}setParent(e,r){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(x(r))r=S;else{r+="";for(var t=r;!x(t);t=this.parent(t))if(t===e)throw new Error("Setting "+r+" as parent of "+e+" would create a cycle");this.setNode(r)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=r,this._children[r][e]=!0,this}_removeFromParentsChildList(e){delete this._children[this._parent[e]][e]}parent(e){if(this._isCompound){var r=this._parent[e];if(r!==S)return r}}children(e){if(x(e)&&(e=S),this._isCompound){var r=this._children[e];if(r)return T(r)}else{if(e===S)return this.nodes();if(this.hasNode(e))return[]}}predecessors(e){var r=this._preds[e];if(r)return T(r)}successors(e){var r=this._sucs[e];if(r)return T(r)}neighbors(e){var r=this.predecessors(e);if(r)return eu(r,this.successors(e))}isLeaf(e){var r;return this.isDirected()?r=this.successors(e):r=this.neighbors(e),r.length===0}filterNodes(e){var r=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});r.setGraph(this.graph());var t=this;c(this._nodes,function(o,u){e(u)&&r.setNode(u,o)}),c(this._edgeObjs,function(o){r.hasNode(o.v)&&r.hasNode(o.w)&&r.setEdge(o,t.edge(o))});var i={};function a(o){var u=t.parent(o);return u===void 0||r.hasNode(u)?(i[o]=u,u):u in i?i[u]:a(u)}return this._isCompound&&c(r.nodes(),function(o){r.setParent(o,a(o))}),r}setDefaultEdgeLabel(e){return Mn(e)||(e=Y(e)),this._defaultEdgeLabelFn=e,this}edgeCount(){return this._edgeCount}edges(){return N(this._edgeObjs)}setPath(e,r){var t=this,i=arguments;return tn(e,function(a,o){return i.length>1?t.setEdge(a,o,r):t.setEdge(a,o),o}),this}setEdge(){var e,r,t,i,a=!1,o=arguments[0];typeof o=="object"&&o!==null&&"v"in o?(e=o.v,r=o.w,t=o.name,arguments.length===2&&(i=arguments[1],a=!0)):(e=o,r=arguments[1],t=arguments[3],arguments.length>2&&(i=arguments[2],a=!0)),e=""+e,r=""+r,x(t)||(t=""+t);var u=W(this._isDirected,e,r,t);if(b(this._edgeLabels,u))return a&&(this._edgeLabels[u]=i),this;if(!x(t)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(r),this._edgeLabels[u]=a?i:this._defaultEdgeLabelFn(e,r,t);var s=ou(this._isDirected,e,r,t);return e=s.v,r=s.w,Object.freeze(s),this._edgeObjs[u]=s,Ce(this._preds[r],e),Ce(this._sucs[e],r),this._in[r][u]=s,this._out[e][u]=s,this._edgeCount++,this}edge(e,r,t){var i=arguments.length===1?Pn(this._isDirected,arguments[0]):W(this._isDirected,e,r,t);return this._edgeLabels[i]}hasEdge(e,r,t){var i=arguments.length===1?Pn(this._isDirected,arguments[0]):W(this._isDirected,e,r,t);return b(this._edgeLabels,i)}removeEdge(e,r,t){var i=arguments.length===1?Pn(this._isDirected,arguments[0]):W(this._isDirected,e,r,t),a=this._edgeObjs[i];return a&&(e=a.v,r=a.w,delete this._edgeLabels[i],delete this._edgeObjs[i],$e(this._preds[r],e),$e(this._sucs[e],r),delete this._in[r][i],delete this._out[e][i],this._edgeCount--),this}inEdges(e,r){var t=this._in[e];if(t){var i=N(t);return r?P(i,function(a){return a.v===r}):i}}outEdges(e,r){var t=this._out[e];if(t){var i=N(t);return r?P(i,function(a){return a.w===r}):i}}nodeEdges(e,r){var t=this.inEdges(e,r);if(t)return t.concat(this.outEdges(e,r))}}A.prototype._nodeCount=0;A.prototype._edgeCount=0;function Ce(n,e){n[e]?n[e]++:n[e]=1}function $e(n,e){--n[e]||delete n[e]}function W(n,e,r,t){var i=""+e,a=""+r;if(!n&&i>a){var o=i;i=a,a=o}return i+Ne+a+Ne+(x(t)?au:t)}function ou(n,e,r,t){var i=""+e,a=""+r;if(!n&&i>a){var o=i;i=a,a=o}var u={v:i,w:a};return t&&(u.name=t),u}function Pn(n,e){return W(n,e.v,e.w,e.name)}class uu{constructor(){var e={};e._next=e._prev=e,this._sentinel=e}dequeue(){var e=this._sentinel,r=e._prev;if(r!==e)return Ie(r),r}enqueue(e){var r=this._sentinel;e._prev&&e._next&&Ie(e),e._next=r._next,r._next._prev=e,r._next=e,e._prev=r}toString(){for(var e=[],r=this._sentinel,t=r._prev;t!==r;)e.push(JSON.stringify(t,su)),t=t._prev;return"["+e.join(", ")+"]"}}function Ie(n){n._prev._next=n._next,n._next._prev=n._prev,delete n._next,delete n._prev}function su(n,e){if(n!=="_next"&&n!=="_prev")return e}var fu=Y(1);function du(n,e){if(n.nodeCount()<=1)return[];var r=lu(n,e||fu),t=cu(r.graph,r.buckets,r.zeroIdx);return q(y(t,function(i){return n.outEdges(i.v,i.w)}))}function cu(n,e,r){for(var t=[],i=e[e.length-1],a=e[0],o;n.nodeCount();){for(;o=a.dequeue();)Nn(n,e,r,o);for(;o=i.dequeue();)Nn(n,e,r,o);if(n.nodeCount()){for(var u=e.length-2;u>0;--u)if(o=e[u].dequeue(),o){t=t.concat(Nn(n,e,r,o,!0));break}}}return t}function Nn(n,e,r,t,i){var a=i?[]:void 0;return c(n.inEdges(t.v),function(o){var u=n.edge(o),s=n.node(o.v);i&&a.push({v:o.v,w:o.w}),s.out-=u,Bn(e,r,s)}),c(n.outEdges(t.v),function(o){var u=n.edge(o),s=o.w,f=n.node(s);f.in-=u,Bn(e,r,f)}),n.removeNode(t.v),a}function lu(n,e){var r=new A,t=0,i=0;c(n.nodes(),function(u){r.setNode(u,{v:u,in:0,out:0})}),c(n.edges(),function(u){var s=r.edge(u.v,u.w)||0,f=e(u),d=s+f;r.setEdge(u.v,u.w,d),i=Math.max(i,r.node(u.v).out+=f),t=Math.max(t,r.node(u.w).in+=f)});var a=k(i+t+3).map(function(){return new uu}),o=t+1;return c(r.nodes(),function(u){Bn(a,o,r.node(u))}),{graph:r,buckets:a,zeroIdx:o}}function Bn(n,e,r){r.out?r.in?n[r.out-r.in+e].enqueue(r):n[n.length-1].enqueue(r):n[0].enqueue(r)}function hu(n){var e=n.graph().acyclicer==="greedy"?du(n,r(n)):vu(n);c(e,function(t){var i=n.edge(t);n.removeEdge(t),i.forwardName=t.name,i.reversed=!0,n.setEdge(t.w,t.v,i,te("rev"))});function r(t){return function(i){return t.edge(i).weight}}}function vu(n){var e=[],r={},t={};function i(a){b(t,a)||(t[a]=!0,r[a]=!0,c(n.outEdges(a),function(o){b(r,o.w)?e.push(o):i(o.w)}),delete r[a])}return c(n.nodes(),i),e}function gu(n){c(n.edges(),function(e){var r=n.edge(e);if(r.reversed){n.removeEdge(e);var t=r.forwardName;delete r.reversed,delete r.forwardName,n.setEdge(e.w,e.v,r,t)}})}function K(n,e,r,t){var i;do i=te(t);while(n.hasNode(i));return r.dummy=e,n.setNode(i,r),i}function pu(n){var e=new A().setGraph(n.graph());return c(n.nodes(),function(r){e.setNode(r,n.node(r))}),c(n.edges(),function(r){var t=e.edge(r.v,r.w)||{weight:0,minlen:1},i=n.edge(r);e.setEdge(r.v,r.w,{weight:t.weight+i.weight,minlen:Math.max(t.minlen,i.minlen)})}),e}function yr(n){var e=new A({multigraph:n.isMultigraph()}).setGraph(n.graph());return c(n.nodes(),function(r){n.children(r).length||e.setNode(r,n.node(r))}),c(n.edges(),function(r){e.setEdge(r,n.edge(r))}),e}function Se(n,e){var r=n.x,t=n.y,i=e.x-r,a=e.y-t,o=n.width/2,u=n.height/2;if(!i&&!a)throw new Error("Not possible to find intersection inside of the rectangle");var s,f;return Math.abs(a)*o>Math.abs(i)*u?(a<0&&(u=-u),s=u*i/a,f=u):(i<0&&(o=-o),s=o,f=o*a/i),{x:r+s,y:t+f}}function On(n){var e=y(k(xr(n)+1),function(){return[]});return c(n.nodes(),function(r){var t=n.node(r),i=t.rank;x(i)||(e[i][t.order]=r)}),e}function bu(n){var e=Q(y(n.nodes(),function(r){return n.node(r).rank}));c(n.nodes(),function(r){var t=n.node(r);b(t,"rank")&&(t.rank-=e)})}function wu(n){var e=Q(y(n.nodes(),function(a){return n.node(a).rank})),r=[];c(n.nodes(),function(a){var o=n.node(a).rank-e;r[o]||(r[o]=[]),r[o].push(a)});var t=0,i=n.graph().nodeRankFactor;c(r,function(a,o){x(a)&&o%i!==0?--t:t&&c(a,function(u){n.node(u).rank+=t})})}function Me(n,e,r,t){var i={width:0,height:0};return arguments.length>=4&&(i.rank=r,i.order=t),K(n,"border",i,e)}function xr(n){return F(y(n.nodes(),function(e){var r=n.node(e).rank;if(!x(r))return r}))}function mu(n,e){var r={lhs:[],rhs:[]};return c(n,function(t){e(t)?r.lhs.push(t):r.rhs.push(t)}),r}function _u(n,e){var r=Pe();try{return e()}finally{console.log(n+" time: "+(Pe()-r)+"ms")}}function Eu(n,e){return e()}function yu(n){function e(r){var t=n.children(r),i=n.node(r);if(t.length&&c(t,e),b(i,"minRank")){i.borderLeft=[],i.borderRight=[];for(var a=i.minRank,o=i.maxRank+1;ao.lim&&(u=o,s=!0);var f=P(e.edges(),function(d){return s===De(n,n.node(d.v),u)&&s!==De(n,n.node(d.w),u)});return re(f,function(d){return j(e,d)})}function Ir(n,e,r,t){var i=r.v,a=r.w;n.removeEdge(i,a),n.setEdge(t.v,t.w,{}),oe(n),ae(n,e),Du(n,e)}function Du(n,e){var r=ne(n.nodes(),function(i){return!e.node(i).parent}),t=Ru(n,r);t=t.slice(1),c(t,function(i){var a=n.node(i).parent,o=e.edge(i,a),u=!1;o||(o=e.edge(a,i),u=!0),e.node(i).rank=e.node(a).rank+(u?o.minlen:-o.minlen)})}function Gu(n,e,r){return n.hasEdge(e,r)}function De(n,e,r){return r.low<=e.lim&&e.lim<=r.lim}function Bu(n){switch(n.graph().ranker){case"network-simplex":Ge(n);break;case"tight-tree":Yu(n);break;case"longest-path":Uu(n);break;default:Ge(n)}}var Uu=ie;function Yu(n){ie(n),Or(n)}function Ge(n){U(n)}function Hu(n){var e=K(n,"root",{},"_root"),r=ku(n),t=F(N(r))-1,i=2*t+1;n.graph().nestingRoot=e,c(n.edges(),function(o){n.edge(o).minlen*=i});var a=qu(n)+1;c(n.children(),function(o){Sr(n,e,i,a,t,r,o)}),n.graph().nodeRankFactor=i}function Sr(n,e,r,t,i,a,o){var u=n.children(o);if(!u.length){o!==e&&n.setEdge(e,o,{weight:0,minlen:r});return}var s=Me(n,"_bt"),f=Me(n,"_bb"),d=n.node(o);n.setParent(s,o),d.borderTop=s,n.setParent(f,o),d.borderBottom=f,c(u,function(l){Sr(n,e,r,t,i,a,l);var h=n.node(l),g=h.borderTop?h.borderTop:l,v=h.borderBottom?h.borderBottom:l,p=h.borderTop?t:2*t,m=g!==v?1:i-a[o]+1;n.setEdge(s,g,{weight:p,minlen:m,nestingEdge:!0}),n.setEdge(v,f,{weight:p,minlen:m,nestingEdge:!0})}),n.parent(o)||n.setEdge(e,s,{weight:0,minlen:i+a[o]})}function ku(n){var e={};function r(t,i){var a=n.children(t);a&&a.length&&c(a,function(o){r(o,i+1)}),e[t]=i}return c(n.children(),function(t){r(t,1)}),e}function qu(n){return tn(n.edges(),function(e,r){return e+n.edge(r).weight},0)}function Ku(n){var e=n.graph();n.removeNode(e.nestingRoot),delete e.nestingRoot,c(n.edges(),function(r){var t=n.edge(r);t.nestingEdge&&n.removeEdge(r)})}function Wu(n,e,r){var t={},i;c(r,function(a){for(var o=n.parent(a),u,s;o;){if(u=n.parent(o),u?(s=t[u],t[u]=o):(s=i,i=o),s&&s!==o){e.setEdge(s,o);return}o=u}})}function Xu(n,e,r){var t=Zu(n),i=new A({compound:!0}).setGraph({root:t}).setDefaultNodeLabel(function(a){return n.node(a)});return c(n.nodes(),function(a){var o=n.node(a),u=n.parent(a);(o.rank===e||o.minRank<=e&&e<=o.maxRank)&&(i.setNode(a),i.setParent(a,u||t),c(n[r](a),function(s){var f=s.v===a?s.w:s.v,d=i.edge(f,a),l=x(d)?0:d.weight;i.setEdge(f,a,{weight:n.edge(s).weight+l})}),b(o,"minRank")&&i.setNode(a,{borderLeft:o.borderLeft[e],borderRight:o.borderRight[e]}))}),i}function Zu(n){for(var e;n.hasNode(e=te("_root")););return e}function Vu(n,e){for(var r=0,t=1;t0;)d%2&&(l+=u[d+1]),d=d-1>>1,u[d]+=f.weight;s+=f.weight*l})),s}function zu(n){var e={},r=P(n.nodes(),function(u){return!n.children(u).length}),t=F(y(r,function(u){return n.node(u).rank})),i=y(k(t+1),function(){return[]});function a(u){if(!b(e,u)){e[u]=!0;var s=n.node(u);i[s.rank].push(u),c(n.successors(u),a)}}var o=an(r,function(u){return n.node(u).rank});return c(o,a),i}function Qu(n,e){return y(e,function(r){var t=n.inEdges(r);if(t.length){var i=tn(t,function(a,o){var u=n.edge(o),s=n.node(o.v);return{sum:a.sum+u.weight*s.order,weight:a.weight+u.weight}},{sum:0,weight:0});return{v:r,barycenter:i.sum/i.weight,weight:i.weight}}else return{v:r}})}function ju(n,e){var r={};c(n,function(i,a){var o=r[i.v]={indegree:0,in:[],out:[],vs:[i.v],i:a};x(i.barycenter)||(o.barycenter=i.barycenter,o.weight=i.weight)}),c(e.edges(),function(i){var a=r[i.v],o=r[i.w];!x(a)&&!x(o)&&(o.indegree++,a.out.push(r[i.w]))});var t=P(r,function(i){return!i.indegree});return ns(t)}function ns(n){var e=[];function r(a){return function(o){o.merged||(x(o.barycenter)||x(a.barycenter)||o.barycenter>=a.barycenter)&&es(a,o)}}function t(a){return function(o){o.in.push(a),--o.indegree===0&&n.push(o)}}for(;n.length;){var i=n.pop();e.push(i),c(i.in.reverse(),r(i)),c(i.out,t(i))}return y(P(e,function(a){return!a.merged}),function(a){return gn(a,["vs","i","barycenter","weight"])})}function es(n,e){var r=0,t=0;n.weight&&(r+=n.barycenter*n.weight,t+=n.weight),e.weight&&(r+=e.barycenter*e.weight,t+=e.weight),n.vs=e.vs.concat(n.vs),n.barycenter=r/t,n.weight=t,n.i=Math.min(e.i,n.i),e.merged=!0}function rs(n,e){var r=mu(n,function(d){return b(d,"barycenter")}),t=r.lhs,i=an(r.rhs,function(d){return-d.i}),a=[],o=0,u=0,s=0;t.sort(ts(!!e)),s=Be(a,i,s),c(t,function(d){s+=d.vs.length,a.push(d.vs),o+=d.barycenter*d.weight,u+=d.weight,s=Be(a,i,s)});var f={vs:q(a)};return u&&(f.barycenter=o/u,f.weight=u),f}function Be(n,e,r){for(var t;e.length&&(t=vn(e)).i<=r;)e.pop(),n.push(t.vs),r++;return r}function ts(n){return function(e,r){return e.barycenterr.barycenter?1:n?r.i-e.i:e.i-r.i}}function Mr(n,e,r,t){var i=n.children(e),a=n.node(e),o=a?a.borderLeft:void 0,u=a?a.borderRight:void 0,s={};o&&(i=P(i,function(v){return v!==o&&v!==u}));var f=Qu(n,i);c(f,function(v){if(n.children(v.v).length){var p=Mr(n,v.v,r,t);s[v.v]=p,b(p,"barycenter")&&as(v,p)}});var d=ju(f,r);is(d,s);var l=rs(d,t);if(o&&(l.vs=q([o,l.vs,u]),n.predecessors(o).length)){var h=n.node(n.predecessors(o)[0]),g=n.node(n.predecessors(u)[0]);b(l,"barycenter")||(l.barycenter=0,l.weight=0),l.barycenter=(l.barycenter*l.weight+h.order+g.order)/(l.weight+2),l.weight+=2}return l}function is(n,e){c(n,function(r){r.vs=q(r.vs.map(function(t){return e[t]?e[t].vs:t}))})}function as(n,e){x(n.barycenter)?(n.barycenter=e.barycenter,n.weight=e.weight):(n.barycenter=(n.barycenter*n.weight+e.barycenter*e.weight)/(n.weight+e.weight),n.weight+=e.weight)}function os(n){var e=xr(n),r=Ue(n,k(1,e+1),"inEdges"),t=Ue(n,k(e-1,-1,-1),"outEdges"),i=zu(n);Ye(n,i);for(var a=Number.POSITIVE_INFINITY,o,u=0,s=0;s<4;++u,++s){us(u%2?r:t,u%4>=2),i=On(n);var f=Vu(n,i);fo||u>e[s].lim));for(f=s,s=t;(s=n.parent(s))!==f;)a.push(s);return{path:i.concat(a.reverse()),lca:f}}function ds(n){var e={},r=0;function t(i){var a=r;c(n.children(i),t),e[i]={low:a,lim:r++}}return c(n.children(),t),e}function cs(n,e){var r={};function t(i,a){var o=0,u=0,s=i.length,f=vn(a);return c(a,function(d,l){var h=hs(n,d),g=h?n.node(h).order:s;(h||d===f)&&(c(a.slice(u,l+1),function(v){c(n.predecessors(v),function(p){var m=n.node(p),E=m.order;(Ef)&&Rr(r,h,d)})})}function i(a,o){var u=-1,s,f=0;return c(o,function(d,l){if(n.node(d).dummy==="border"){var h=n.predecessors(d);h.length&&(s=n.node(h[0]).order,t(o,f,l,u,s),f=l,u=s)}t(o,f,o.length,s,a.length)}),o}return tn(e,i),r}function hs(n,e){if(n.node(e).dummy)return ne(n.predecessors(e),function(r){return n.node(r).dummy})}function Rr(n,e,r){if(e>r){var t=e;e=r,r=t}var i=n[e];i||(n[e]=i={}),i[r]=!0}function vs(n,e,r){if(e>r){var t=e;e=r,r=t}return b(n[e],r)}function gs(n,e,r,t){var i={},a={},o={};return c(e,function(u){c(u,function(s,f){i[s]=s,a[s]=s,o[s]=f})}),c(e,function(u){var s=-1;c(u,function(f){var d=t(f);if(d.length){d=an(d,function(p){return o[p]});for(var l=(d.length-1)/2,h=Math.floor(l),g=Math.ceil(l);h<=g;++h){var v=d[h];a[f]===f&&s0){if(++e>=at)return arguments[0]}else e=0;return n.apply(void 0,arguments)}}function Y(n){return function(){return n}}var ft=function(){try{var n=Fr(Object,"defineProperty");return n({},"",{}),n}catch{}}();const ln=ft;var dt=ln?function(n,e){return ln(n,"toString",{configurable:!0,enumerable:!1,value:Y(e),writable:!0})}:G;const ct=dt;var lt=st(ct);const Xe=lt;function Ze(n,e){for(var r=-1,t=n==null?0:n.length;++r-1}var bt=9007199254740991,wt=/^(?:0|[1-9]\d*)$/;function pn(n,e){var r=typeof n;return e=e??bt,!!e&&(r=="number"||r!="symbol"&&wt.test(n))&&n>-1&&n%1==0&&n1?r[i-1]:void 0,o=i>2?r[2]:void 0;for(a=n.length>3&&typeof a=="function"?(i--,a):void 0,o&&J(r[0],r[1],o)&&(a=i<3?void 0:a,i=1),e=Object(e);++t0&&r(u)?e>1?yn(u,e-1,r,t,i):Kn(i,u):t||(i[i.length]=u)}return i}function q(n){var e=n==null?0:n.length;return e?yn(n,1):[]}function Ut(n){return Xe(Je(n,void 0,q),n+"")}var Yt=Br(Object.getPrototypeOf,Object);const Wn=Yt;var Ht="[object Object]",kt=Function.prototype,qt=Object.prototype,je=kt.toString,Kt=qt.hasOwnProperty,Wt=je.call(Object);function Xt(n){if(!M(n)||He(n)!=Ht)return!1;var e=Wn(n);if(e===null)return!0;var r=Kt.call(e,"constructor")&&e.constructor;return typeof r=="function"&&r instanceof r&&je.call(r)==Wt}function Zt(n,e,r,t){var i=-1,a=n==null?0:n.length;for(t&&a&&(r=n[++i]);++iu))return!1;var f=a.get(n),d=a.get(e);if(f&&d)return f==e&&d==n;var l=-1,h=!0,g=r&Pa?new z:void 0;for(a.set(n,e),a.set(e,n);++l2?e[2]:void 0;for(i&&J(e[0],e[1],i)&&(t=1);++r-1?i[a?e[o]:o]:void 0}}var xo=Math.max;function To(n,e,r){var t=n==null?0:n.length;if(!t)return-1;var i=r==null?0:nt(r);return i<0&&(i=xo(t+i,0)),Ve(n,$(e),i)}var Oo=yo(To);const ne=Oo;function _r(n,e){var r=-1,t=D(n)?Array(n.length):[];return xn(n,function(i,a,o){t[++r]=e(i,a,o)}),t}function y(n,e){var r=_(n)?H:_r;return r(n,$(e))}function Lo(n,e){return n==null?n:zn(n,jn(e),B)}function Ao(n,e){return n&&Qn(n,jn(e))}function Po(n,e){return n>e}var No=Object.prototype,Co=No.hasOwnProperty;function $o(n,e){return n!=null&&Co.call(n,e)}function b(n,e){return n!=null&&gr(n,e,$o)}function Io(n,e){return H(e,function(r){return n[r]})}function N(n){return n==null?[]:Io(n,T(n))}function x(n){return n===void 0}function Er(n,e){return ne||a&&o&&s&&!u&&!f||t&&o&&s||!r&&s||!i)return 1;if(!t&&!a&&!f&&n=u)return s;var f=r[t];return s*(f=="desc"?-1:1)}}return n.index-e.index}function Bo(n,e,r){e.length?e=H(e,function(a){return _(a)?function(o){return En(o,a.length===1?a[0]:a)}:a}):e=[G];var t=-1;e=H(e,kn($));var i=_r(n,function(a,o,u){var s=H(e,function(f){return f(a)});return{criteria:s,index:++t,value:a}});return Fo(i,function(a,o){return Go(a,o,r)})}function Uo(n,e){return Ro(n,e,function(r,t){return pr(n,t)})}var Yo=Ut(function(n,e){return n==null?{}:Uo(n,e)});const gn=Yo;var Ho=Math.ceil,ko=Math.max;function qo(n,e,r,t){for(var i=-1,a=ko(Ho((e-n)/(r||1)),0),o=Array(a);a--;)o[t?a:++i]=n,n+=r;return o}function Ko(n){return function(e,r,t){return t&&typeof t!="number"&&J(e,r,t)&&(r=t=void 0),e=fn(e),r===void 0?(r=e,e=0):r=fn(r),t=t===void 0?e1&&J(n,e[0],e[1])?e=[]:r>2&&J(e[0],e[1],e[2])&&(e=[e[0]]),Bo(n,yn(e,1),[])});const an=Zo;var Vo=1/0,Jo=Ln&&1/Vn(new Ln([,-0]))[1]==Vo?function(n){return new Ln(n)}:it;const zo=Jo;var Qo=200;function jo(n,e,r){var t=-1,i=pt,a=n.length,o=!0,u=[],s=u;if(r)o=!1,i=_o;else if(a>=Qo){var f=e?null:zo(n);if(f)return Vn(f);o=!1,i=cr,s=new z}else s=e?[]:u;n:for(;++t1?i.setNode(a,r):i.setNode(a)}),this}setNode(e,r){return b(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=r),this):(this._nodes[e]=arguments.length>1?r:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=S,this._children[e]={},this._children[S][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)}node(e){return this._nodes[e]}hasNode(e){return b(this._nodes,e)}removeNode(e){var r=this;if(b(this._nodes,e)){var t=function(i){r.removeEdge(r._edgeObjs[i])};delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],c(this.children(e),function(i){r.setParent(i)}),delete this._children[e]),c(T(this._in[e]),t),delete this._in[e],delete this._preds[e],c(T(this._out[e]),t),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this}setParent(e,r){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(x(r))r=S;else{r+="";for(var t=r;!x(t);t=this.parent(t))if(t===e)throw new Error("Setting "+r+" as parent of "+e+" would create a cycle");this.setNode(r)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=r,this._children[r][e]=!0,this}_removeFromParentsChildList(e){delete this._children[this._parent[e]][e]}parent(e){if(this._isCompound){var r=this._parent[e];if(r!==S)return r}}children(e){if(x(e)&&(e=S),this._isCompound){var r=this._children[e];if(r)return T(r)}else{if(e===S)return this.nodes();if(this.hasNode(e))return[]}}predecessors(e){var r=this._preds[e];if(r)return T(r)}successors(e){var r=this._sucs[e];if(r)return T(r)}neighbors(e){var r=this.predecessors(e);if(r)return eu(r,this.successors(e))}isLeaf(e){var r;return this.isDirected()?r=this.successors(e):r=this.neighbors(e),r.length===0}filterNodes(e){var r=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});r.setGraph(this.graph());var t=this;c(this._nodes,function(o,u){e(u)&&r.setNode(u,o)}),c(this._edgeObjs,function(o){r.hasNode(o.v)&&r.hasNode(o.w)&&r.setEdge(o,t.edge(o))});var i={};function a(o){var u=t.parent(o);return u===void 0||r.hasNode(u)?(i[o]=u,u):u in i?i[u]:a(u)}return this._isCompound&&c(r.nodes(),function(o){r.setParent(o,a(o))}),r}setDefaultEdgeLabel(e){return Mn(e)||(e=Y(e)),this._defaultEdgeLabelFn=e,this}edgeCount(){return this._edgeCount}edges(){return N(this._edgeObjs)}setPath(e,r){var t=this,i=arguments;return tn(e,function(a,o){return i.length>1?t.setEdge(a,o,r):t.setEdge(a,o),o}),this}setEdge(){var e,r,t,i,a=!1,o=arguments[0];typeof o=="object"&&o!==null&&"v"in o?(e=o.v,r=o.w,t=o.name,arguments.length===2&&(i=arguments[1],a=!0)):(e=o,r=arguments[1],t=arguments[3],arguments.length>2&&(i=arguments[2],a=!0)),e=""+e,r=""+r,x(t)||(t=""+t);var u=W(this._isDirected,e,r,t);if(b(this._edgeLabels,u))return a&&(this._edgeLabels[u]=i),this;if(!x(t)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(r),this._edgeLabels[u]=a?i:this._defaultEdgeLabelFn(e,r,t);var s=ou(this._isDirected,e,r,t);return e=s.v,r=s.w,Object.freeze(s),this._edgeObjs[u]=s,Ce(this._preds[r],e),Ce(this._sucs[e],r),this._in[r][u]=s,this._out[e][u]=s,this._edgeCount++,this}edge(e,r,t){var i=arguments.length===1?Pn(this._isDirected,arguments[0]):W(this._isDirected,e,r,t);return this._edgeLabels[i]}hasEdge(e,r,t){var i=arguments.length===1?Pn(this._isDirected,arguments[0]):W(this._isDirected,e,r,t);return b(this._edgeLabels,i)}removeEdge(e,r,t){var i=arguments.length===1?Pn(this._isDirected,arguments[0]):W(this._isDirected,e,r,t),a=this._edgeObjs[i];return a&&(e=a.v,r=a.w,delete this._edgeLabels[i],delete this._edgeObjs[i],$e(this._preds[r],e),$e(this._sucs[e],r),delete this._in[r][i],delete this._out[e][i],this._edgeCount--),this}inEdges(e,r){var t=this._in[e];if(t){var i=N(t);return r?P(i,function(a){return a.v===r}):i}}outEdges(e,r){var t=this._out[e];if(t){var i=N(t);return r?P(i,function(a){return a.w===r}):i}}nodeEdges(e,r){var t=this.inEdges(e,r);if(t)return t.concat(this.outEdges(e,r))}}A.prototype._nodeCount=0;A.prototype._edgeCount=0;function Ce(n,e){n[e]?n[e]++:n[e]=1}function $e(n,e){--n[e]||delete n[e]}function W(n,e,r,t){var i=""+e,a=""+r;if(!n&&i>a){var o=i;i=a,a=o}return i+Ne+a+Ne+(x(t)?au:t)}function ou(n,e,r,t){var i=""+e,a=""+r;if(!n&&i>a){var o=i;i=a,a=o}var u={v:i,w:a};return t&&(u.name=t),u}function Pn(n,e){return W(n,e.v,e.w,e.name)}class uu{constructor(){var e={};e._next=e._prev=e,this._sentinel=e}dequeue(){var e=this._sentinel,r=e._prev;if(r!==e)return Ie(r),r}enqueue(e){var r=this._sentinel;e._prev&&e._next&&Ie(e),e._next=r._next,r._next._prev=e,r._next=e,e._prev=r}toString(){for(var e=[],r=this._sentinel,t=r._prev;t!==r;)e.push(JSON.stringify(t,su)),t=t._prev;return"["+e.join(", ")+"]"}}function Ie(n){n._prev._next=n._next,n._next._prev=n._prev,delete n._next,delete n._prev}function su(n,e){if(n!=="_next"&&n!=="_prev")return e}var fu=Y(1);function du(n,e){if(n.nodeCount()<=1)return[];var r=lu(n,e||fu),t=cu(r.graph,r.buckets,r.zeroIdx);return q(y(t,function(i){return n.outEdges(i.v,i.w)}))}function cu(n,e,r){for(var t=[],i=e[e.length-1],a=e[0],o;n.nodeCount();){for(;o=a.dequeue();)Nn(n,e,r,o);for(;o=i.dequeue();)Nn(n,e,r,o);if(n.nodeCount()){for(var u=e.length-2;u>0;--u)if(o=e[u].dequeue(),o){t=t.concat(Nn(n,e,r,o,!0));break}}}return t}function Nn(n,e,r,t,i){var a=i?[]:void 0;return c(n.inEdges(t.v),function(o){var u=n.edge(o),s=n.node(o.v);i&&a.push({v:o.v,w:o.w}),s.out-=u,Bn(e,r,s)}),c(n.outEdges(t.v),function(o){var u=n.edge(o),s=o.w,f=n.node(s);f.in-=u,Bn(e,r,f)}),n.removeNode(t.v),a}function lu(n,e){var r=new A,t=0,i=0;c(n.nodes(),function(u){r.setNode(u,{v:u,in:0,out:0})}),c(n.edges(),function(u){var s=r.edge(u.v,u.w)||0,f=e(u),d=s+f;r.setEdge(u.v,u.w,d),i=Math.max(i,r.node(u.v).out+=f),t=Math.max(t,r.node(u.w).in+=f)});var a=k(i+t+3).map(function(){return new uu}),o=t+1;return c(r.nodes(),function(u){Bn(a,o,r.node(u))}),{graph:r,buckets:a,zeroIdx:o}}function Bn(n,e,r){r.out?r.in?n[r.out-r.in+e].enqueue(r):n[n.length-1].enqueue(r):n[0].enqueue(r)}function hu(n){var e=n.graph().acyclicer==="greedy"?du(n,r(n)):vu(n);c(e,function(t){var i=n.edge(t);n.removeEdge(t),i.forwardName=t.name,i.reversed=!0,n.setEdge(t.w,t.v,i,te("rev"))});function r(t){return function(i){return t.edge(i).weight}}}function vu(n){var e=[],r={},t={};function i(a){b(t,a)||(t[a]=!0,r[a]=!0,c(n.outEdges(a),function(o){b(r,o.w)?e.push(o):i(o.w)}),delete r[a])}return c(n.nodes(),i),e}function gu(n){c(n.edges(),function(e){var r=n.edge(e);if(r.reversed){n.removeEdge(e);var t=r.forwardName;delete r.reversed,delete r.forwardName,n.setEdge(e.w,e.v,r,t)}})}function K(n,e,r,t){var i;do i=te(t);while(n.hasNode(i));return r.dummy=e,n.setNode(i,r),i}function pu(n){var e=new A().setGraph(n.graph());return c(n.nodes(),function(r){e.setNode(r,n.node(r))}),c(n.edges(),function(r){var t=e.edge(r.v,r.w)||{weight:0,minlen:1},i=n.edge(r);e.setEdge(r.v,r.w,{weight:t.weight+i.weight,minlen:Math.max(t.minlen,i.minlen)})}),e}function yr(n){var e=new A({multigraph:n.isMultigraph()}).setGraph(n.graph());return c(n.nodes(),function(r){n.children(r).length||e.setNode(r,n.node(r))}),c(n.edges(),function(r){e.setEdge(r,n.edge(r))}),e}function Se(n,e){var r=n.x,t=n.y,i=e.x-r,a=e.y-t,o=n.width/2,u=n.height/2;if(!i&&!a)throw new Error("Not possible to find intersection inside of the rectangle");var s,f;return Math.abs(a)*o>Math.abs(i)*u?(a<0&&(u=-u),s=u*i/a,f=u):(i<0&&(o=-o),s=o,f=o*a/i),{x:r+s,y:t+f}}function On(n){var e=y(k(xr(n)+1),function(){return[]});return c(n.nodes(),function(r){var t=n.node(r),i=t.rank;x(i)||(e[i][t.order]=r)}),e}function bu(n){var e=Q(y(n.nodes(),function(r){return n.node(r).rank}));c(n.nodes(),function(r){var t=n.node(r);b(t,"rank")&&(t.rank-=e)})}function wu(n){var e=Q(y(n.nodes(),function(a){return n.node(a).rank})),r=[];c(n.nodes(),function(a){var o=n.node(a).rank-e;r[o]||(r[o]=[]),r[o].push(a)});var t=0,i=n.graph().nodeRankFactor;c(r,function(a,o){x(a)&&o%i!==0?--t:t&&c(a,function(u){n.node(u).rank+=t})})}function Me(n,e,r,t){var i={width:0,height:0};return arguments.length>=4&&(i.rank=r,i.order=t),K(n,"border",i,e)}function xr(n){return F(y(n.nodes(),function(e){var r=n.node(e).rank;if(!x(r))return r}))}function mu(n,e){var r={lhs:[],rhs:[]};return c(n,function(t){e(t)?r.lhs.push(t):r.rhs.push(t)}),r}function _u(n,e){var r=Pe();try{return e()}finally{console.log(n+" time: "+(Pe()-r)+"ms")}}function Eu(n,e){return e()}function yu(n){function e(r){var t=n.children(r),i=n.node(r);if(t.length&&c(t,e),b(i,"minRank")){i.borderLeft=[],i.borderRight=[];for(var a=i.minRank,o=i.maxRank+1;ao.lim&&(u=o,s=!0);var f=P(e.edges(),function(d){return s===De(n,n.node(d.v),u)&&s!==De(n,n.node(d.w),u)});return re(f,function(d){return j(e,d)})}function Ir(n,e,r,t){var i=r.v,a=r.w;n.removeEdge(i,a),n.setEdge(t.v,t.w,{}),oe(n),ae(n,e),Du(n,e)}function Du(n,e){var r=ne(n.nodes(),function(i){return!e.node(i).parent}),t=Ru(n,r);t=t.slice(1),c(t,function(i){var a=n.node(i).parent,o=e.edge(i,a),u=!1;o||(o=e.edge(a,i),u=!0),e.node(i).rank=e.node(a).rank+(u?o.minlen:-o.minlen)})}function Gu(n,e,r){return n.hasEdge(e,r)}function De(n,e,r){return r.low<=e.lim&&e.lim<=r.lim}function Bu(n){switch(n.graph().ranker){case"network-simplex":Ge(n);break;case"tight-tree":Yu(n);break;case"longest-path":Uu(n);break;default:Ge(n)}}var Uu=ie;function Yu(n){ie(n),Or(n)}function Ge(n){U(n)}function Hu(n){var e=K(n,"root",{},"_root"),r=ku(n),t=F(N(r))-1,i=2*t+1;n.graph().nestingRoot=e,c(n.edges(),function(o){n.edge(o).minlen*=i});var a=qu(n)+1;c(n.children(),function(o){Sr(n,e,i,a,t,r,o)}),n.graph().nodeRankFactor=i}function Sr(n,e,r,t,i,a,o){var u=n.children(o);if(!u.length){o!==e&&n.setEdge(e,o,{weight:0,minlen:r});return}var s=Me(n,"_bt"),f=Me(n,"_bb"),d=n.node(o);n.setParent(s,o),d.borderTop=s,n.setParent(f,o),d.borderBottom=f,c(u,function(l){Sr(n,e,r,t,i,a,l);var h=n.node(l),g=h.borderTop?h.borderTop:l,v=h.borderBottom?h.borderBottom:l,p=h.borderTop?t:2*t,m=g!==v?1:i-a[o]+1;n.setEdge(s,g,{weight:p,minlen:m,nestingEdge:!0}),n.setEdge(v,f,{weight:p,minlen:m,nestingEdge:!0})}),n.parent(o)||n.setEdge(e,s,{weight:0,minlen:i+a[o]})}function ku(n){var e={};function r(t,i){var a=n.children(t);a&&a.length&&c(a,function(o){r(o,i+1)}),e[t]=i}return c(n.children(),function(t){r(t,1)}),e}function qu(n){return tn(n.edges(),function(e,r){return e+n.edge(r).weight},0)}function Ku(n){var e=n.graph();n.removeNode(e.nestingRoot),delete e.nestingRoot,c(n.edges(),function(r){var t=n.edge(r);t.nestingEdge&&n.removeEdge(r)})}function Wu(n,e,r){var t={},i;c(r,function(a){for(var o=n.parent(a),u,s;o;){if(u=n.parent(o),u?(s=t[u],t[u]=o):(s=i,i=o),s&&s!==o){e.setEdge(s,o);return}o=u}})}function Xu(n,e,r){var t=Zu(n),i=new A({compound:!0}).setGraph({root:t}).setDefaultNodeLabel(function(a){return n.node(a)});return c(n.nodes(),function(a){var o=n.node(a),u=n.parent(a);(o.rank===e||o.minRank<=e&&e<=o.maxRank)&&(i.setNode(a),i.setParent(a,u||t),c(n[r](a),function(s){var f=s.v===a?s.w:s.v,d=i.edge(f,a),l=x(d)?0:d.weight;i.setEdge(f,a,{weight:n.edge(s).weight+l})}),b(o,"minRank")&&i.setNode(a,{borderLeft:o.borderLeft[e],borderRight:o.borderRight[e]}))}),i}function Zu(n){for(var e;n.hasNode(e=te("_root")););return e}function Vu(n,e){for(var r=0,t=1;t0;)d%2&&(l+=u[d+1]),d=d-1>>1,u[d]+=f.weight;s+=f.weight*l})),s}function zu(n){var e={},r=P(n.nodes(),function(u){return!n.children(u).length}),t=F(y(r,function(u){return n.node(u).rank})),i=y(k(t+1),function(){return[]});function a(u){if(!b(e,u)){e[u]=!0;var s=n.node(u);i[s.rank].push(u),c(n.successors(u),a)}}var o=an(r,function(u){return n.node(u).rank});return c(o,a),i}function Qu(n,e){return y(e,function(r){var t=n.inEdges(r);if(t.length){var i=tn(t,function(a,o){var u=n.edge(o),s=n.node(o.v);return{sum:a.sum+u.weight*s.order,weight:a.weight+u.weight}},{sum:0,weight:0});return{v:r,barycenter:i.sum/i.weight,weight:i.weight}}else return{v:r}})}function ju(n,e){var r={};c(n,function(i,a){var o=r[i.v]={indegree:0,in:[],out:[],vs:[i.v],i:a};x(i.barycenter)||(o.barycenter=i.barycenter,o.weight=i.weight)}),c(e.edges(),function(i){var a=r[i.v],o=r[i.w];!x(a)&&!x(o)&&(o.indegree++,a.out.push(r[i.w]))});var t=P(r,function(i){return!i.indegree});return ns(t)}function ns(n){var e=[];function r(a){return function(o){o.merged||(x(o.barycenter)||x(a.barycenter)||o.barycenter>=a.barycenter)&&es(a,o)}}function t(a){return function(o){o.in.push(a),--o.indegree===0&&n.push(o)}}for(;n.length;){var i=n.pop();e.push(i),c(i.in.reverse(),r(i)),c(i.out,t(i))}return y(P(e,function(a){return!a.merged}),function(a){return gn(a,["vs","i","barycenter","weight"])})}function es(n,e){var r=0,t=0;n.weight&&(r+=n.barycenter*n.weight,t+=n.weight),e.weight&&(r+=e.barycenter*e.weight,t+=e.weight),n.vs=e.vs.concat(n.vs),n.barycenter=r/t,n.weight=t,n.i=Math.min(e.i,n.i),e.merged=!0}function rs(n,e){var r=mu(n,function(d){return b(d,"barycenter")}),t=r.lhs,i=an(r.rhs,function(d){return-d.i}),a=[],o=0,u=0,s=0;t.sort(ts(!!e)),s=Be(a,i,s),c(t,function(d){s+=d.vs.length,a.push(d.vs),o+=d.barycenter*d.weight,u+=d.weight,s=Be(a,i,s)});var f={vs:q(a)};return u&&(f.barycenter=o/u,f.weight=u),f}function Be(n,e,r){for(var t;e.length&&(t=vn(e)).i<=r;)e.pop(),n.push(t.vs),r++;return r}function ts(n){return function(e,r){return e.barycenterr.barycenter?1:n?r.i-e.i:e.i-r.i}}function Mr(n,e,r,t){var i=n.children(e),a=n.node(e),o=a?a.borderLeft:void 0,u=a?a.borderRight:void 0,s={};o&&(i=P(i,function(v){return v!==o&&v!==u}));var f=Qu(n,i);c(f,function(v){if(n.children(v.v).length){var p=Mr(n,v.v,r,t);s[v.v]=p,b(p,"barycenter")&&as(v,p)}});var d=ju(f,r);is(d,s);var l=rs(d,t);if(o&&(l.vs=q([o,l.vs,u]),n.predecessors(o).length)){var h=n.node(n.predecessors(o)[0]),g=n.node(n.predecessors(u)[0]);b(l,"barycenter")||(l.barycenter=0,l.weight=0),l.barycenter=(l.barycenter*l.weight+h.order+g.order)/(l.weight+2),l.weight+=2}return l}function is(n,e){c(n,function(r){r.vs=q(r.vs.map(function(t){return e[t]?e[t].vs:t}))})}function as(n,e){x(n.barycenter)?(n.barycenter=e.barycenter,n.weight=e.weight):(n.barycenter=(n.barycenter*n.weight+e.barycenter*e.weight)/(n.weight+e.weight),n.weight+=e.weight)}function os(n){var e=xr(n),r=Ue(n,k(1,e+1),"inEdges"),t=Ue(n,k(e-1,-1,-1),"outEdges"),i=zu(n);Ye(n,i);for(var a=Number.POSITIVE_INFINITY,o,u=0,s=0;s<4;++u,++s){us(u%2?r:t,u%4>=2),i=On(n);var f=Vu(n,i);fo||u>e[s].lim));for(f=s,s=t;(s=n.parent(s))!==f;)a.push(s);return{path:i.concat(a.reverse()),lca:f}}function ds(n){var e={},r=0;function t(i){var a=r;c(n.children(i),t),e[i]={low:a,lim:r++}}return c(n.children(),t),e}function cs(n,e){var r={};function t(i,a){var o=0,u=0,s=i.length,f=vn(a);return c(a,function(d,l){var h=hs(n,d),g=h?n.node(h).order:s;(h||d===f)&&(c(a.slice(u,l+1),function(v){c(n.predecessors(v),function(p){var m=n.node(p),E=m.order;(Ef)&&Rr(r,h,d)})})}function i(a,o){var u=-1,s,f=0;return c(o,function(d,l){if(n.node(d).dummy==="border"){var h=n.predecessors(d);h.length&&(s=n.node(h[0]).order,t(o,f,l,u,s),f=l,u=s)}t(o,f,o.length,s,a.length)}),o}return tn(e,i),r}function hs(n,e){if(n.node(e).dummy)return ne(n.predecessors(e),function(r){return n.node(r).dummy})}function Rr(n,e,r){if(e>r){var t=e;e=r,r=t}var i=n[e];i||(n[e]=i={}),i[r]=!0}function vs(n,e,r){if(e>r){var t=e;e=r,r=t}return b(n[e],r)}function gs(n,e,r,t){var i={},a={},o={};return c(e,function(u){c(u,function(s,f){i[s]=s,a[s]=s,o[s]=f})}),c(e,function(u){var s=-1;c(u,function(f){var d=t(f);if(d.length){d=an(d,function(p){return o[p]});for(var l=(d.length-1)/2,h=Math.floor(l),g=Math.ceil(l);h<=g;++h){var v=d[h];a[f]===f&&st?1:n>=t?0:NaN}function hn(n,t){return n==null||t==null?NaN:tn?1:t>=n?0:NaN}function _(n){let t,e,r;n.length!==2?(t=F,e=(u,c)=>F(n(u),c),r=(u,c)=>n(u)-c):(t=n===F||n===hn?n:mn,e=n,r=n);function i(u,c,o=0,s=u.length){if(o>>1;e(u[h],c)<0?o=h+1:s=h}while(o>>1;e(u[h],c)<=0?o=h+1:s=h}while(oo&&r(u[h-1],c)>-r(u[h],c)?h-1:h}return{left:i,center:a,right:f}}function mn(){return 0}function ln(n){return n===null?NaN:+n}const sn=_(F),dn=sn.right;_(ln).center;const gn=dn,yn=Math.sqrt(50),Mn=Math.sqrt(10),pn=Math.sqrt(2);function R(n,t,e){const r=(t-n)/Math.max(0,e),i=Math.floor(Math.log10(r)),f=r/Math.pow(10,i),a=f>=yn?10:f>=Mn?5:f>=pn?2:1;let u,c,o;return i<0?(o=Math.pow(10,-i)/a,u=Math.round(n*o),c=Math.round(t*o),u/ot&&--c,o=-o):(o=Math.pow(10,i)*a,u=Math.round(n/o),c=Math.round(t/o),u*ot&&--c),c0))return[];if(n===t)return[n];const r=t=i))return[];const u=f-i+1,c=new Array(u);if(r)if(a<0)for(let o=0;o=1e21?n.toLocaleString("en").replace(/,/g,""):n.toString(10)}function E(n,t){if((e=(n=t?n.toExponential(t-1):n.toExponential()).indexOf("e"))<0)return null;var e,r=n.slice(0,e);return[r.length>1?r[0]+r.slice(2):r,+n.slice(e+1)]}function v(n){return n=E(Math.abs(n)),n?n[1]:NaN}function Pn(n,t){return function(e,r){for(var i=e.length,f=[],a=0,u=n[0],c=0;i>0&&u>0&&(c+u+1>r&&(u=Math.max(1,r-c)),f.push(e.substring(i-=u,i+u)),!((c+=u+1)>r));)u=n[a=(a+1)%n.length];return f.reverse().join(t)}}function zn(n){return function(t){return t.replace(/[0-9]/g,function(e){return n[+e]})}}var $n=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function D(n){if(!(t=$n.exec(n)))throw new Error("invalid format: "+n);var t;return new B({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}D.prototype=B.prototype;function B(n){this.fill=n.fill===void 0?" ":n.fill+"",this.align=n.align===void 0?">":n.align+"",this.sign=n.sign===void 0?"-":n.sign+"",this.symbol=n.symbol===void 0?"":n.symbol+"",this.zero=!!n.zero,this.width=n.width===void 0?void 0:+n.width,this.comma=!!n.comma,this.precision=n.precision===void 0?void 0:+n.precision,this.trim=!!n.trim,this.type=n.type===void 0?"":n.type+""}B.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function Fn(n){n:for(var t=n.length,e=1,r=-1,i;e0&&(r=0);break}return r>0?n.slice(0,r)+n.slice(i+1):n}var nn;function Rn(n,t){var e=E(n,t);if(!e)return n+"";var r=e[0],i=e[1],f=i-(nn=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,a=r.length;return f===a?r:f>a?r+new Array(f-a+1).join("0"):f>0?r.slice(0,f)+"."+r.slice(f):"0."+new Array(1-f).join("0")+E(n,Math.max(0,t+f-1))[0]}function Z(n,t){var e=E(n,t);if(!e)return n+"";var r=e[0],i=e[1];return i<0?"0."+new Array(-i).join("0")+r:r.length>i+1?r.slice(0,i+1)+"."+r.slice(i+1):r+new Array(i-r.length+2).join("0")}const H={"%":(n,t)=>(n*100).toFixed(t),b:n=>Math.round(n).toString(2),c:n=>n+"",d:jn,e:(n,t)=>n.toExponential(t),f:(n,t)=>n.toFixed(t),g:(n,t)=>n.toPrecision(t),o:n=>Math.round(n).toString(8),p:(n,t)=>Z(n*100,t),r:Z,s:Rn,X:n=>Math.round(n).toString(16).toUpperCase(),x:n=>Math.round(n).toString(16)};function J(n){return n}var K=Array.prototype.map,Q=["y","z","a","f","p","n","ยต","m","","k","M","G","T","P","E","Z","Y"];function En(n){var t=n.grouping===void 0||n.thousands===void 0?J:Pn(K.call(n.grouping,Number),n.thousands+""),e=n.currency===void 0?"":n.currency[0]+"",r=n.currency===void 0?"":n.currency[1]+"",i=n.decimal===void 0?".":n.decimal+"",f=n.numerals===void 0?J:zn(K.call(n.numerals,String)),a=n.percent===void 0?"%":n.percent+"",u=n.minus===void 0?"โˆ’":n.minus+"",c=n.nan===void 0?"NaN":n.nan+"";function o(h){h=D(h);var l=h.fill,p=h.align,y=h.sign,S=h.symbol,k=h.zero,b=h.width,T=h.comma,w=h.precision,G=h.trim,d=h.type;d==="n"?(T=!0,d="g"):H[d]||(w===void 0&&(w=12),G=!0,d="g"),(k||l==="0"&&p==="=")&&(k=!0,l="0",p="=");var en=S==="$"?e:S==="#"&&/[boxX]/.test(d)?"0"+d.toLowerCase():"",on=S==="$"?r:/[%p]/.test(d)?a:"",O=H[d],an=/[defgprs%]/.test(d);w=w===void 0?6:/[gprs]/.test(d)?Math.max(1,Math.min(21,w)):Math.max(0,Math.min(20,w));function V(m){var N=en,g=on,x,X,j;if(d==="c")g=O(m)+g,m="";else{m=+m;var P=m<0||1/m<0;if(m=isNaN(m)?c:O(Math.abs(m),w),G&&(m=Fn(m)),P&&+m==0&&y!=="+"&&(P=!1),N=(P?y==="("?y:u:y==="-"||y==="("?"":y)+N,g=(d==="s"?Q[8+nn/3]:"")+g+(P&&y==="("?")":""),an){for(x=-1,X=m.length;++xj||j>57){g=(j===46?i+m.slice(x+1):m.slice(x))+g,m=m.slice(0,x);break}}}T&&!k&&(m=t(m,1/0));var z=N.length+m.length+g.length,M=z>1)+N+m+g+M.slice(z);break;default:m=M+N+m+g;break}return f(m)}return V.toString=function(){return h+""},V}function s(h,l){var p=o((h=D(h),h.type="f",h)),y=Math.max(-8,Math.min(8,Math.floor(v(l)/3)))*3,S=Math.pow(10,-y),k=Q[8+y/3];return function(b){return p(S*b)+k}}return{format:o,formatPrefix:s}}var $,tn,rn;Dn({thousands:",",grouping:[3],currency:["$",""]});function Dn(n){return $=En(n),tn=$.format,rn=$.formatPrefix,$}function Tn(n){return Math.max(0,-v(Math.abs(n)))}function In(n,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(v(t)/3)))*3-v(Math.abs(n)))}function Ln(n,t){return n=Math.abs(n),t=Math.abs(t)-n,Math.max(0,v(t)-v(n))+1}function qn(n){return function(){return n}}function Cn(n){return+n}var W=[0,1];function A(n){return n}function q(n,t){return(t-=n=+n)?function(e){return(e-n)/t}:qn(isNaN(t)?NaN:.5)}function Bn(n,t){var e;return n>t&&(e=n,n=t,t=e),function(r){return Math.max(n,Math.min(t,r))}}function Gn(n,t,e){var r=n[0],i=n[1],f=t[0],a=t[1];return i2?On:Gn,c=o=null,h}function h(l){return l==null||isNaN(l=+l)?f:(c||(c=u(n.map(r),t,e)))(r(a(l)))}return h.invert=function(l){return a(i((o||(o=u(t,n.map(r),I)))(l)))},h.domain=function(l){return arguments.length?(n=Array.from(l,Cn),s()):n.slice()},h.range=function(l){return arguments.length?(t=Array.from(l),s()):t.slice()},h.rangeRound=function(l){return t=Array.from(l),e=bn,s()},h.clamp=function(l){return arguments.length?(a=l?!0:A,s()):a!==A},h.interpolate=function(l){return arguments.length?(e=l,s()):e},h.unknown=function(l){return arguments.length?(f=l,h):f},function(l,p){return r=l,i=p,s()}}function Un(){return Xn()(A,A)}function Yn(n,t,e,r){var i=Nn(n,t,e),f;switch(r=D(r??",f"),r.type){case"s":{var a=Math.max(Math.abs(n),Math.abs(t));return r.precision==null&&!isNaN(f=In(i,a))&&(r.precision=f),rn(r,a)}case"":case"e":case"g":case"p":case"r":{r.precision==null&&!isNaN(f=Ln(i,Math.max(Math.abs(n),Math.abs(t))))&&(r.precision=f-(r.type==="e"));break}case"f":case"%":{r.precision==null&&!isNaN(f=Tn(i))&&(r.precision=f-(r.type==="%")*2);break}}return tn(r)}function Zn(n){var t=n.domain;return n.ticks=function(e){var r=t();return wn(r[0],r[r.length-1],e??10)},n.tickFormat=function(e,r){var i=t();return Yn(i[0],i[i.length-1],e??10,r)},n.nice=function(e){e==null&&(e=10);var r=t(),i=0,f=r.length-1,a=r[i],u=r[f],c,o,s=10;for(u0;){if(o=L(a,u,e),o===c)return r[i]=a,r[f]=u,t(r);if(o>0)a=Math.floor(a/o)*o,u=Math.ceil(u/o)*o;else if(o<0)a=Math.ceil(a*o)/o,u=Math.floor(u*o)/o;else break;c=o}return n},n}function Hn(){var n=Un();return n.copy=function(){return Vn(n,Hn())},cn.apply(n,arguments),Zn(n)}export{Vn as a,_ as b,Un as c,Hn as l,Nn as t}; +import{ak as un,al as I,am as U,an as Y,ao as fn}from"../app.3c4fe3d0.js";import{i as cn}from"./init.77b53fdd.js";function F(n,t){return n==null||t==null?NaN:nt?1:n>=t?0:NaN}function hn(n,t){return n==null||t==null?NaN:tn?1:t>=n?0:NaN}function _(n){let t,e,r;n.length!==2?(t=F,e=(u,c)=>F(n(u),c),r=(u,c)=>n(u)-c):(t=n===F||n===hn?n:mn,e=n,r=n);function i(u,c,o=0,s=u.length){if(o>>1;e(u[h],c)<0?o=h+1:s=h}while(o>>1;e(u[h],c)<=0?o=h+1:s=h}while(oo&&r(u[h-1],c)>-r(u[h],c)?h-1:h}return{left:i,center:a,right:f}}function mn(){return 0}function ln(n){return n===null?NaN:+n}const sn=_(F),dn=sn.right;_(ln).center;const gn=dn,yn=Math.sqrt(50),Mn=Math.sqrt(10),pn=Math.sqrt(2);function R(n,t,e){const r=(t-n)/Math.max(0,e),i=Math.floor(Math.log10(r)),f=r/Math.pow(10,i),a=f>=yn?10:f>=Mn?5:f>=pn?2:1;let u,c,o;return i<0?(o=Math.pow(10,-i)/a,u=Math.round(n*o),c=Math.round(t*o),u/ot&&--c,o=-o):(o=Math.pow(10,i)*a,u=Math.round(n/o),c=Math.round(t/o),u*ot&&--c),c0))return[];if(n===t)return[n];const r=t=i))return[];const u=f-i+1,c=new Array(u);if(r)if(a<0)for(let o=0;o=1e21?n.toLocaleString("en").replace(/,/g,""):n.toString(10)}function E(n,t){if((e=(n=t?n.toExponential(t-1):n.toExponential()).indexOf("e"))<0)return null;var e,r=n.slice(0,e);return[r.length>1?r[0]+r.slice(2):r,+n.slice(e+1)]}function v(n){return n=E(Math.abs(n)),n?n[1]:NaN}function Pn(n,t){return function(e,r){for(var i=e.length,f=[],a=0,u=n[0],c=0;i>0&&u>0&&(c+u+1>r&&(u=Math.max(1,r-c)),f.push(e.substring(i-=u,i+u)),!((c+=u+1)>r));)u=n[a=(a+1)%n.length];return f.reverse().join(t)}}function zn(n){return function(t){return t.replace(/[0-9]/g,function(e){return n[+e]})}}var $n=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function D(n){if(!(t=$n.exec(n)))throw new Error("invalid format: "+n);var t;return new B({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}D.prototype=B.prototype;function B(n){this.fill=n.fill===void 0?" ":n.fill+"",this.align=n.align===void 0?">":n.align+"",this.sign=n.sign===void 0?"-":n.sign+"",this.symbol=n.symbol===void 0?"":n.symbol+"",this.zero=!!n.zero,this.width=n.width===void 0?void 0:+n.width,this.comma=!!n.comma,this.precision=n.precision===void 0?void 0:+n.precision,this.trim=!!n.trim,this.type=n.type===void 0?"":n.type+""}B.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function Fn(n){n:for(var t=n.length,e=1,r=-1,i;e0&&(r=0);break}return r>0?n.slice(0,r)+n.slice(i+1):n}var nn;function Rn(n,t){var e=E(n,t);if(!e)return n+"";var r=e[0],i=e[1],f=i-(nn=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,a=r.length;return f===a?r:f>a?r+new Array(f-a+1).join("0"):f>0?r.slice(0,f)+"."+r.slice(f):"0."+new Array(1-f).join("0")+E(n,Math.max(0,t+f-1))[0]}function Z(n,t){var e=E(n,t);if(!e)return n+"";var r=e[0],i=e[1];return i<0?"0."+new Array(-i).join("0")+r:r.length>i+1?r.slice(0,i+1)+"."+r.slice(i+1):r+new Array(i-r.length+2).join("0")}const H={"%":(n,t)=>(n*100).toFixed(t),b:n=>Math.round(n).toString(2),c:n=>n+"",d:jn,e:(n,t)=>n.toExponential(t),f:(n,t)=>n.toFixed(t),g:(n,t)=>n.toPrecision(t),o:n=>Math.round(n).toString(8),p:(n,t)=>Z(n*100,t),r:Z,s:Rn,X:n=>Math.round(n).toString(16).toUpperCase(),x:n=>Math.round(n).toString(16)};function J(n){return n}var K=Array.prototype.map,Q=["y","z","a","f","p","n","ยต","m","","k","M","G","T","P","E","Z","Y"];function En(n){var t=n.grouping===void 0||n.thousands===void 0?J:Pn(K.call(n.grouping,Number),n.thousands+""),e=n.currency===void 0?"":n.currency[0]+"",r=n.currency===void 0?"":n.currency[1]+"",i=n.decimal===void 0?".":n.decimal+"",f=n.numerals===void 0?J:zn(K.call(n.numerals,String)),a=n.percent===void 0?"%":n.percent+"",u=n.minus===void 0?"โˆ’":n.minus+"",c=n.nan===void 0?"NaN":n.nan+"";function o(h){h=D(h);var l=h.fill,p=h.align,y=h.sign,S=h.symbol,k=h.zero,b=h.width,T=h.comma,w=h.precision,G=h.trim,d=h.type;d==="n"?(T=!0,d="g"):H[d]||(w===void 0&&(w=12),G=!0,d="g"),(k||l==="0"&&p==="=")&&(k=!0,l="0",p="=");var en=S==="$"?e:S==="#"&&/[boxX]/.test(d)?"0"+d.toLowerCase():"",on=S==="$"?r:/[%p]/.test(d)?a:"",O=H[d],an=/[defgprs%]/.test(d);w=w===void 0?6:/[gprs]/.test(d)?Math.max(1,Math.min(21,w)):Math.max(0,Math.min(20,w));function V(m){var N=en,g=on,x,X,j;if(d==="c")g=O(m)+g,m="";else{m=+m;var P=m<0||1/m<0;if(m=isNaN(m)?c:O(Math.abs(m),w),G&&(m=Fn(m)),P&&+m==0&&y!=="+"&&(P=!1),N=(P?y==="("?y:u:y==="-"||y==="("?"":y)+N,g=(d==="s"?Q[8+nn/3]:"")+g+(P&&y==="("?")":""),an){for(x=-1,X=m.length;++xj||j>57){g=(j===46?i+m.slice(x+1):m.slice(x))+g,m=m.slice(0,x);break}}}T&&!k&&(m=t(m,1/0));var z=N.length+m.length+g.length,M=z>1)+N+m+g+M.slice(z);break;default:m=M+N+m+g;break}return f(m)}return V.toString=function(){return h+""},V}function s(h,l){var p=o((h=D(h),h.type="f",h)),y=Math.max(-8,Math.min(8,Math.floor(v(l)/3)))*3,S=Math.pow(10,-y),k=Q[8+y/3];return function(b){return p(S*b)+k}}return{format:o,formatPrefix:s}}var $,tn,rn;Dn({thousands:",",grouping:[3],currency:["$",""]});function Dn(n){return $=En(n),tn=$.format,rn=$.formatPrefix,$}function Tn(n){return Math.max(0,-v(Math.abs(n)))}function In(n,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(v(t)/3)))*3-v(Math.abs(n)))}function Ln(n,t){return n=Math.abs(n),t=Math.abs(t)-n,Math.max(0,v(t)-v(n))+1}function qn(n){return function(){return n}}function Cn(n){return+n}var W=[0,1];function A(n){return n}function q(n,t){return(t-=n=+n)?function(e){return(e-n)/t}:qn(isNaN(t)?NaN:.5)}function Bn(n,t){var e;return n>t&&(e=n,n=t,t=e),function(r){return Math.max(n,Math.min(t,r))}}function Gn(n,t,e){var r=n[0],i=n[1],f=t[0],a=t[1];return i2?On:Gn,c=o=null,h}function h(l){return l==null||isNaN(l=+l)?f:(c||(c=u(n.map(r),t,e)))(r(a(l)))}return h.invert=function(l){return a(i((o||(o=u(t,n.map(r),I)))(l)))},h.domain=function(l){return arguments.length?(n=Array.from(l,Cn),s()):n.slice()},h.range=function(l){return arguments.length?(t=Array.from(l),s()):t.slice()},h.rangeRound=function(l){return t=Array.from(l),e=bn,s()},h.clamp=function(l){return arguments.length?(a=l?!0:A,s()):a!==A},h.interpolate=function(l){return arguments.length?(e=l,s()):e},h.unknown=function(l){return arguments.length?(f=l,h):f},function(l,p){return r=l,i=p,s()}}function Un(){return Xn()(A,A)}function Yn(n,t,e,r){var i=Nn(n,t,e),f;switch(r=D(r??",f"),r.type){case"s":{var a=Math.max(Math.abs(n),Math.abs(t));return r.precision==null&&!isNaN(f=In(i,a))&&(r.precision=f),rn(r,a)}case"":case"e":case"g":case"p":case"r":{r.precision==null&&!isNaN(f=Ln(i,Math.max(Math.abs(n),Math.abs(t))))&&(r.precision=f-(r.type==="e"));break}case"f":case"%":{r.precision==null&&!isNaN(f=Tn(i))&&(r.precision=f-(r.type==="%")*2);break}}return tn(r)}function Zn(n){var t=n.domain;return n.ticks=function(e){var r=t();return wn(r[0],r[r.length-1],e??10)},n.tickFormat=function(e,r){var i=t();return Yn(i[0],i[i.length-1],e??10,r)},n.nice=function(e){e==null&&(e=10);var r=t(),i=0,f=r.length-1,a=r[i],u=r[f],c,o,s=10;for(u0;){if(o=L(a,u,e),o===c)return r[i]=a,r[f]=u,t(r);if(o>0)a=Math.floor(a/o)*o,u=Math.ceil(u/o)*o;else if(o<0)a=Math.ceil(a*o)/o,u=Math.floor(u*o)/o;else break;c=o}return n},n}function Hn(){var n=Un();return n.copy=function(){return Vn(n,Hn())},cn.apply(n,arguments),Zn(n)}export{Vn as a,_ as b,Un as c,Hn as l,Nn as t}; diff --git a/pr-383/assets/chunks/mindmap-definition-0ab67801.6679988b.js b/pr-383/assets/chunks/mindmap-definition-0ab67801.1a340cf0.js similarity index 99% rename from pr-383/assets/chunks/mindmap-definition-0ab67801.6679988b.js rename to pr-383/assets/chunks/mindmap-definition-0ab67801.1a340cf0.js index 4c1c19722..d1260fdcd 100644 --- a/pr-383/assets/chunks/mindmap-definition-0ab67801.6679988b.js +++ b/pr-383/assets/chunks/mindmap-definition-0ab67801.1a340cf0.js @@ -1,4 +1,4 @@ -import{aI as $t,aJ as Or,d as Ul,c as jr,l as lr,h as Ba,t as Yl,aM as Hl,aN as Xl,aO as ql}from"../app.34e6398e.js";import{c as Wl}from"./createText-285e50b4.f886ce05.js";import"./framework.be0a7370.js";import"./theme.e11407bf.js";function Kl(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}var ha=Kl,Zl=typeof $t=="object"&&$t&&$t.Object===Object&&$t,Ql=Zl,Jl=Ql,jl=typeof self=="object"&&self&&self.Object===Object&&self,eu=Jl||jl||Function("return this")(),ja=eu,tu=ja,ru=function(){return tu.Date.now()},au=ru,nu=/\s/;function iu(t){for(var e=t.length;e--&&nu.test(t.charAt(e)););return e}var su=iu,ou=su,lu=/^\s+/;function uu(t){return t&&t.slice(0,ou(t)+1).replace(lu,"")}var fu=uu,hu=ja,vu=hu.Symbol,Kn=vu,Di=Kn,Us=Object.prototype,cu=Us.hasOwnProperty,du=Us.toString,_r=Di?Di.toStringTag:void 0;function gu(t){var e=cu.call(t,_r),r=t[_r];try{t[_r]=void 0;var a=!0}catch{}var n=du.call(t);return a&&(e?t[_r]=r:delete t[_r]),n}var pu=gu,yu=Object.prototype,mu=yu.toString;function bu(t){return mu.call(t)}var Eu=bu,Si=Kn,wu=pu,xu=Eu,Tu="[object Null]",Cu="[object Undefined]",Li=Si?Si.toStringTag:void 0;function Du(t){return t==null?t===void 0?Cu:Tu:Li&&Li in Object(t)?wu(t):xu(t)}var Ys=Du;function Su(t){return t!=null&&typeof t=="object"}var Lu=Su,Au=Ys,Ou=Lu,Nu="[object Symbol]";function Mu(t){return typeof t=="symbol"||Ou(t)&&Au(t)==Nu}var va=Mu,Iu=fu,Ai=ha,Ru=va,Oi=0/0,ku=/^[-+]0x[0-9a-f]+$/i,Pu=/^0b[01]+$/i,Bu=/^0o[0-7]+$/i,Fu=parseInt;function Gu(t){if(typeof t=="number")return t;if(Ru(t))return Oi;if(Ai(t)){var e=typeof t.valueOf=="function"?t.valueOf():t;t=Ai(e)?e+"":e}if(typeof t!="string")return t===0?t:+t;t=Iu(t);var r=Pu.test(t);return r||Bu.test(t)?Fu(t.slice(2),r?2:8):ku.test(t)?Oi:+t}var zu=Gu,$u=ha,wn=au,Ni=zu,Vu="Expected a function",_u=Math.max,Uu=Math.min;function Yu(t,e,r){var a,n,i,s,o,l,u=0,f=!1,h=!1,c=!0;if(typeof t!="function")throw new TypeError(Vu);e=Ni(e)||0,$u(r)&&(f=!!r.leading,h="maxWait"in r,i=h?_u(Ni(r.maxWait)||0,e):i,c="trailing"in r?!!r.trailing:c);function v(S){var b=a,x=n;return a=n=void 0,u=S,s=t.apply(x,b),s}function d(S){return u=S,o=setTimeout(p,e),f?v(S):s}function g(S){var b=S-l,x=S-u,w=e-b;return h?Uu(w,i-x):w}function y(S){var b=S-l,x=S-u;return l===void 0||b>=e||b<0||h&&x>=i}function p(){var S=wn();if(y(S))return E(S);o=setTimeout(p,g(S))}function E(S){return o=void 0,c&&a?v(S):(a=n=void 0,s)}function m(){o!==void 0&&clearTimeout(o),u=0,a=l=n=o=void 0}function T(){return o===void 0?s:E(wn())}function C(){var S=wn(),b=y(S);if(a=arguments,n=this,l=S,b){if(o===void 0)return d(l);if(h)return clearTimeout(o),o=setTimeout(p,e),v(l)}return o===void 0&&(o=setTimeout(p,e)),s}return C.cancel=m,C.flush=T,C}var Hu=Yu;const en=Or(Hu);var Hs={exports:{}};(function(t,e){(function(){var r,a,n,i,s,o,l,u,f,h,c,v,d,g,y;n=Math.floor,h=Math.min,a=function(p,E){return pE?1:0},f=function(p,E,m,T,C){var S;if(m==null&&(m=0),C==null&&(C=a),m<0)throw new Error("lo must be non-negative");for(T==null&&(T=p.length);mD;0<=D?w++:w--)x.push(w);return x}).apply(this).reverse(),b=[],T=0,C=S.length;TA;0<=A?++x:--x)L.push(s(p,m));return L},g=function(p,E,m,T){var C,S,b;for(T==null&&(T=a),C=p[m];m>E;){if(b=m-1>>1,S=p[b],T(C,S)<0){p[m]=S,m=b;continue}break}return p[m]=C},y=function(p,E,m){var T,C,S,b,x;for(m==null&&(m=a),C=p.length,x=E,S=p[E],T=2*E+1;T-1}var Dh=Ch,Sh=an;function Lh(t,e){var r=this.__data__,a=Sh(r,t);return a<0?(++this.size,r.push([t,e])):r[a][1]=e,this}var Ah=Lh,Oh=hh,Nh=bh,Mh=xh,Ih=Dh,Rh=Ah;function Mr(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e-1&&t%1==0&&tt.length)&&(e=t.length);for(var r=0,a=new Array(e);r=e||b<0||h&&x>=i}function p(){var S=wn();if(y(S))return E(S);o=setTimeout(p,g(S))}function E(S){return o=void 0,c&&a?v(S):(a=n=void 0,s)}function m(){o!==void 0&&clearTimeout(o),u=0,a=l=n=o=void 0}function T(){return o===void 0?s:E(wn())}function C(){var S=wn(),b=y(S);if(a=arguments,n=this,l=S,b){if(o===void 0)return d(l);if(h)return clearTimeout(o),o=setTimeout(p,e),v(l)}return o===void 0&&(o=setTimeout(p,e)),s}return C.cancel=m,C.flush=T,C}var Hu=Yu;const en=Or(Hu);var Hs={exports:{}};(function(t,e){(function(){var r,a,n,i,s,o,l,u,f,h,c,v,d,g,y;n=Math.floor,h=Math.min,a=function(p,E){return pE?1:0},f=function(p,E,m,T,C){var S;if(m==null&&(m=0),C==null&&(C=a),m<0)throw new Error("lo must be non-negative");for(T==null&&(T=p.length);mD;0<=D?w++:w--)x.push(w);return x}).apply(this).reverse(),b=[],T=0,C=S.length;TA;0<=A?++x:--x)L.push(s(p,m));return L},g=function(p,E,m,T){var C,S,b;for(T==null&&(T=a),C=p[m];m>E;){if(b=m-1>>1,S=p[b],T(C,S)<0){p[m]=S,m=b;continue}break}return p[m]=C},y=function(p,E,m){var T,C,S,b,x;for(m==null&&(m=a),C=p.length,x=E,S=p[E],T=2*E+1;T-1}var Dh=Ch,Sh=an;function Lh(t,e){var r=this.__data__,a=Sh(r,t);return a<0?(++this.size,r.push([t,e])):r[a][1]=e,this}var Ah=Lh,Oh=hh,Nh=bh,Mh=xh,Ih=Dh,Rh=Ah;function Mr(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e-1&&t%1==0&&tt.length)&&(e=t.length);for(var r=0,a=new Array(e);r"u"?null:window,Vi=Be?Be.navigator:null;Be&&Be.document;var Ic=_e(""),eo=_e({}),Rc=_e(function(){}),kc=typeof HTMLElement>"u"?"undefined":_e(HTMLElement),da=function(e){return e&&e.instanceString&&Fe(e.instanceString)?e.instanceString():null},ue=function(e){return e!=null&&_e(e)==Ic},Fe=function(e){return e!=null&&_e(e)===Rc},Ie=function(e){return!ft(e)&&(Array.isArray?Array.isArray(e):e!=null&&e instanceof Array)},Te=function(e){return e!=null&&_e(e)===eo&&!Ie(e)&&e.constructor===Object},Pc=function(e){return e!=null&&_e(e)===eo},ae=function(e){return e!=null&&_e(e)===_e(1)&&!isNaN(e)},Bc=function(e){return ae(e)&&Math.floor(e)===e},Ya=function(e){if(kc!=="undefined")return e!=null&&e instanceof HTMLElement},ft=function(e){return ga(e)||to(e)},ga=function(e){return da(e)==="collection"&&e._private.single},to=function(e){return da(e)==="collection"&&!e._private.single},ti=function(e){return da(e)==="core"},ro=function(e){return da(e)==="stylesheet"},Fc=function(e){return da(e)==="event"},Yt=function(e){return e==null?!0:!!(e===""||e.match(/^\s+$/))},Gc=function(e){return typeof HTMLElement>"u"?!1:e instanceof HTMLElement},zc=function(e){return Te(e)&&ae(e.x1)&&ae(e.x2)&&ae(e.y1)&&ae(e.y2)},$c=function(e){return Pc(e)&&Fe(e.then)},Vc=function(){return Vi&&Vi.userAgent.match(/msie|trident|edge/i)},ea=function(e,r){r||(r=function(){if(arguments.length===1)return arguments[0];if(arguments.length===0)return"undefined";for(var i=[],s=0;sr?1:0},Wc=function(e,r){return-1*no(e,r)},ce=Object.assign!=null?Object.assign.bind(Object):function(t){for(var e=arguments,r=1;r1&&(y-=1),y<1/6?d+(g-d)*6*y:y<1/2?g:y<2/3?d+(g-d)*(2/3-y)*6:d}var h=new RegExp("^"+Yc+"$").exec(e);if(h){if(a=parseInt(h[1]),a<0?a=(360- -1*a%360)%360:a>360&&(a=a%360),a/=360,n=parseFloat(h[2]),n<0||n>100||(n=n/100,i=parseFloat(h[3]),i<0||i>100)||(i=i/100,s=h[4],s!==void 0&&(s=parseFloat(s),s<0||s>1)))return;if(n===0)o=l=u=Math.round(i*255);else{var c=i<.5?i*(1+n):i+n-i*n,v=2*i-c;o=Math.round(255*f(v,c,a+1/3)),l=Math.round(255*f(v,c,a)),u=Math.round(255*f(v,c,a-1/3))}r=[o,l,u,s]}return r},Qc=function(e){var r,a=new RegExp("^"+_c+"$").exec(e);if(a){r=[];for(var n=[],i=1;i<=3;i++){var s=a[i];if(s[s.length-1]==="%"&&(n[i]=!0),s=parseFloat(s),n[i]&&(s=s/100*255),s<0||s>255)return;r.push(Math.floor(s))}var o=n[1]||n[2]||n[3],l=n[1]&&n[2]&&n[3];if(o&&!l)return;var u=a[4];if(u!==void 0){if(u=parseFloat(u),u<0||u>1)return;r.push(u)}}return r},Jc=function(e){return ed[e.toLowerCase()]},jc=function(e){return(Ie(e)?e:null)||Jc(e)||Kc(e)||Qc(e)||Zc(e)},ed={transparent:[0,0,0,0],aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],grey:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},io=function(e){for(var r=e.map,a=e.keys,n=a.length,i=0;i1&&arguments[1]!==void 0?arguments[1]:br,a=r,n;n=e.next(),!n.done;)a=a*lo+n.value|0;return a},ta=function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:br;return r*lo+e|0},ra=function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:qr;return(r<<5)+r+e|0},rd=function(e,r){return e*2097152+r},Ft=function(e){return e[0]*2097152+e[1]},Da=function(e,r){return[ta(e[0],r[0]),ra(e[1],r[1])]},ad=function(e,r){var a={value:0,done:!1},n=0,i=e.length,s={next:function(){return n=0&&!(e[n]===r&&(e.splice(n,1),a));n--);},ii=function(e){e.splice(0,e.length)},fd=function(e,r){for(var a=0;a"u"?"undefined":_e(Set))!==vd?Set:cd,on=function(e,r){var a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(e===void 0||r===void 0||!ti(e)){ze("An element must have a core reference and parameters set");return}var n=r.group;if(n==null&&(r.data&&r.data.source!=null&&r.data.target!=null?n="edges":n="nodes"),n!=="nodes"&&n!=="edges"){ze("An element must be of type `nodes` or `edges`; you specified `"+n+"`");return}this.length=1,this[0]=this;var i=this._private={cy:e,single:!0,data:r.data||{},position:r.position||{x:0,y:0},autoWidth:void 0,autoHeight:void 0,autoPadding:void 0,compoundBoundsClean:!1,listeners:[],group:n,style:{},rstyle:{},styleCxts:[],styleKeys:{},removed:!0,selected:!!r.selected,selectable:r.selectable===void 0?!0:!!r.selectable,locked:!!r.locked,grabbed:!1,grabbable:r.grabbable===void 0?!0:!!r.grabbable,pannable:r.pannable===void 0?n==="edges":!!r.pannable,active:!1,classes:new Rr,animation:{current:[],queue:[]},rscratch:{},scratch:r.scratch||{},edges:[],children:[],parent:r.parent&&r.parent.isNode()?r.parent:null,traversalCache:{},backgrounding:!1,bbCache:null,bbCacheShift:{x:0,y:0},bodyBounds:null,overlayBounds:null,labelBounds:{all:null,source:null,target:null,main:null},arrowBounds:{source:null,target:null,"mid-source":null,"mid-target":null}};if(i.position.x==null&&(i.position.x=0),i.position.y==null&&(i.position.y=0),r.renderedPosition){var s=r.renderedPosition,o=e.pan(),l=e.zoom();i.position={x:(s.x-o.x)/l,y:(s.y-o.y)/l}}var u=[];Ie(r.classes)?u=r.classes:ue(r.classes)&&(u=r.classes.split(/\s+/));for(var f=0,h=u.length;f0;){var S=E.pop(),b=y(S),x=S.id();if(c[x]=b,b!==1/0)for(var w=S.neighborhood().intersect(d),D=0;D0)for(R.unshift(k);h[z];){var F=h[z];R.unshift(F.edge),R.unshift(F.node),B=F.node,z=B.id()}return o.spawn(R)}}}},pd={kruskal:function(e){e=e||function(m){return 1};for(var r=this.byGroup(),a=r.nodes,n=r.edges,i=a.length,s=new Array(i),o=a,l=function(T){for(var C=0;C0;){if(C(),b++,T===f){for(var x=[],w=i,D=f,A=p[D];x.unshift(w),A!=null&&x.unshift(A),w=y[D],w!=null;)D=w.id(),A=p[D];return{found:!0,distance:h[T],path:this.spawn(x),steps:b}}v[T]=!0;for(var L=m._private.edges,N=0;NA&&(d[D]=A,E[D]=w,m[D]=C),!i){var L=w*f+x;!i&&d[L]>A&&(d[L]=A,E[L]=x,m[L]=C)}}}for(var N=0;N1&&arguments[1]!==void 0?arguments[1]:s,Ee=m(ne),ge=[],ve=Ee;;){if(ve==null)return r.spawn();var J=E(ve),M=J.edge,_=J.pred;if(ge.unshift(ve[0]),ve.same(le)&&ge.length>0)break;M!=null&&ge.unshift(M),ve=_}return l.spawn(ge)},S=0;S=0;f--){var h=u[f],c=h[1],v=h[2];(r[c]===o&&r[v]===l||r[c]===l&&r[v]===o)&&u.splice(f,1)}for(var d=0;dn;){var i=Math.floor(Math.random()*r.length);r=Cd(i,e,r),a--}return r},Dd={kargerStein:function(){var e=this,r=this.byGroup(),a=r.nodes,n=r.edges;n.unmergeBy(function(R){return R.isLoop()});var i=a.length,s=n.length,o=Math.ceil(Math.pow(Math.log(i)/Math.LN2,2)),l=Math.floor(i/Td);if(i<2){ze("At least 2 nodes are required for Karger-Stein algorithm");return}for(var u=[],f=0;f1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,n=1/0,i=r;i1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,n=-1/0,i=r;i1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,n=0,i=0,s=r;s1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,s=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0;n?e=e.slice(r,a):(a0&&e.splice(0,r));for(var o=0,l=e.length-1;l>=0;l--){var u=e[l];s?isFinite(u)||(e[l]=-1/0,o++):e.splice(l,1)}i&&e.sort(function(c,v){return c-v});var f=e.length,h=Math.floor(f/2);return f%2!==0?e[h+1+o]:(e[h-1+o]+e[h+o])/2},Md=function(e){return Math.PI*e/180},Sa=function(e,r){return Math.atan2(r,e)-Math.PI/2},si=Math.log2||function(t){return Math.log(t)/Math.log(2)},yo=function(e){return e>0?1:e<0?-1:0},nr=function(e,r){return Math.sqrt(er(e,r))},er=function(e,r){var a=r.x-e.x,n=r.y-e.y;return a*a+n*n},Id=function(e){for(var r=e.length,a=0,n=0;n=e.x1&&e.y2>=e.y1)return{x1:e.x1,y1:e.y1,x2:e.x2,y2:e.y2,w:e.x2-e.x1,h:e.y2-e.y1};if(e.w!=null&&e.h!=null&&e.w>=0&&e.h>=0)return{x1:e.x1,y1:e.y1,x2:e.x1+e.w,y2:e.y1+e.h,w:e.w,h:e.h}}},kd=function(e){return{x1:e.x1,x2:e.x2,w:e.w,y1:e.y1,y2:e.y2,h:e.h}},Pd=function(e){e.x1=1/0,e.y1=1/0,e.x2=-1/0,e.y2=-1/0,e.w=0,e.h=0},Bd=function(e,r){e.x1=Math.min(e.x1,r.x1),e.x2=Math.max(e.x2,r.x2),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,r.y1),e.y2=Math.max(e.y2,r.y2),e.h=e.y2-e.y1},Fd=function(e,r,a){e.x1=Math.min(e.x1,r),e.x2=Math.max(e.x2,r),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,a),e.y2=Math.max(e.y2,a),e.h=e.y2-e.y1},Fa=function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return e.x1-=r,e.x2+=r,e.y1-=r,e.y2+=r,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},Dn=function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[0],a,n,i,s;if(r.length===1)a=n=i=s=r[0];else if(r.length===2)a=i=r[0],s=n=r[1];else if(r.length===4){var o=Nt(r,4);a=o[0],n=o[1],i=o[2],s=o[3]}return e.x1-=s,e.x2+=n,e.y1-=a,e.y2+=i,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},Xi=function(e,r){e.x1=r.x1,e.y1=r.y1,e.x2=r.x2,e.y2=r.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1},oi=function(e,r){return!(e.x1>r.x2||r.x1>e.x2||e.x2r.y2||r.y1>e.y2)},Sr=function(e,r,a){return e.x1<=r&&r<=e.x2&&e.y1<=a&&a<=e.y2},Gd=function(e,r){return Sr(e,r.x,r.y)},mo=function(e,r){return Sr(e,r.x1,r.y1)&&Sr(e,r.x2,r.y2)},bo=function(e,r,a,n,i,s,o){var l=pa(i,s),u=i/2,f=s/2,h;{var c=a-u+l-o,v=n-f-o,d=a+u-l+o,g=v;if(h=Vt(e,r,a,n,c,v,d,g,!1),h.length>0)return h}{var y=a+u+o,p=n-f+l-o,E=y,m=n+f-l+o;if(h=Vt(e,r,a,n,y,p,E,m,!1),h.length>0)return h}{var T=a-u+l-o,C=n+f+o,S=a+u-l+o,b=C;if(h=Vt(e,r,a,n,T,C,S,b,!1),h.length>0)return h}{var x=a-u-o,w=n-f+l-o,D=x,A=n+f-l+o;if(h=Vt(e,r,a,n,x,w,D,A,!1),h.length>0)return h}var L;{var N=a-u+l,O=n-f+l;if(L=Wr(e,r,a,n,N,O,l+o),L.length>0&&L[0]<=N&&L[1]<=O)return[L[0],L[1]]}{var P=a+u-l,I=n-f+l;if(L=Wr(e,r,a,n,P,I,l+o),L.length>0&&L[0]>=P&&L[1]<=I)return[L[0],L[1]]}{var k=a+u-l,R=n+f-l;if(L=Wr(e,r,a,n,k,R,l+o),L.length>0&&L[0]>=k&&L[1]>=R)return[L[0],L[1]]}{var B=a-u+l,z=n+f-l;if(L=Wr(e,r,a,n,B,z,l+o),L.length>0&&L[0]<=B&&L[1]>=z)return[L[0],L[1]]}return[]},zd=function(e,r,a,n,i,s,o){var l=o,u=Math.min(a,i),f=Math.max(a,i),h=Math.min(n,s),c=Math.max(n,s);return u-l<=e&&e<=f+l&&h-l<=r&&r<=c+l},$d=function(e,r,a,n,i,s,o,l,u){var f={x1:Math.min(a,o,i)-u,x2:Math.max(a,o,i)+u,y1:Math.min(n,l,s)-u,y2:Math.max(n,l,s)+u};return!(ef.x2||rf.y2)},Vd=function(e,r,a,n){a-=n;var i=r*r-4*e*a;if(i<0)return[];var s=Math.sqrt(i),o=2*e,l=(-r+s)/o,u=(-r-s)/o;return[l,u]},_d=function(e,r,a,n,i){var s=1e-5;e===0&&(e=s),r/=e,a/=e,n/=e;var o,l,u,f,h,c,v,d;if(l=(3*a-r*r)/9,u=-(27*n)+r*(9*a-2*(r*r)),u/=54,o=l*l*l+u*u,i[1]=0,v=r/3,o>0){h=u+Math.sqrt(o),h=h<0?-Math.pow(-h,1/3):Math.pow(h,1/3),c=u-Math.sqrt(o),c=c<0?-Math.pow(-c,1/3):Math.pow(c,1/3),i[0]=-v+h+c,v+=(h+c)/2,i[4]=i[2]=-v,v=Math.sqrt(3)*(-c+h)/2,i[3]=v,i[5]=-v;return}if(i[5]=i[3]=0,o===0){d=u<0?-Math.pow(-u,1/3):Math.pow(u,1/3),i[0]=-v+2*d,i[4]=i[2]=-(d+v);return}l=-l,f=l*l*l,f=Math.acos(u/Math.sqrt(f)),d=2*Math.sqrt(l),i[0]=-v+d*Math.cos(f/3),i[2]=-v+d*Math.cos((f+2*Math.PI)/3),i[4]=-v+d*Math.cos((f+4*Math.PI)/3)},Ud=function(e,r,a,n,i,s,o,l){var u=1*a*a-4*a*i+2*a*o+4*i*i-4*i*o+o*o+n*n-4*n*s+2*n*l+4*s*s-4*s*l+l*l,f=1*9*a*i-3*a*a-3*a*o-6*i*i+3*i*o+9*n*s-3*n*n-3*n*l-6*s*s+3*s*l,h=1*3*a*a-6*a*i+a*o-a*e+2*i*i+2*i*e-o*e+3*n*n-6*n*s+n*l-n*r+2*s*s+2*s*r-l*r,c=1*a*i-a*a+a*e-i*e+n*s-n*n+n*r-s*r,v=[];_d(u,f,h,c,v);for(var d=1e-7,g=[],y=0;y<6;y+=2)Math.abs(v[y+1])=0&&v[y]<=1&&g.push(v[y]);g.push(1),g.push(0);for(var p=-1,E,m,T,C=0;C=0?Tu?(e-i)*(e-i)+(r-s)*(r-s):f-c},lt=function(e,r,a){for(var n,i,s,o,l,u=0,f=0;f=e&&e>=s||n<=e&&e<=s)l=(e-n)/(s-n)*(o-i)+i,l>r&&u++;else continue;return u%2!==0},It=function(e,r,a,n,i,s,o,l,u){var f=new Array(a.length),h;l[0]!=null?(h=Math.atan(l[1]/l[0]),l[0]<0?h=h+Math.PI/2:h=-h-Math.PI/2):h=l;for(var c=Math.cos(-h),v=Math.sin(-h),d=0;d0){var y=wo(f,-u);g=Eo(y)}else g=f;return lt(e,r,g)},Hd=function(e,r,a,n,i,s,o){for(var l=new Array(a.length),u=s/2,f=o/2,h=li(s,o),c=h*h,v=0;v=0&&y<=1&&E.push(y),p>=0&&p<=1&&E.push(p),E.length===0)return[];var m=E[0]*l[0]+e,T=E[0]*l[1]+r;if(E.length>1){if(E[0]==E[1])return[m,T];var C=E[1]*l[0]+e,S=E[1]*l[1]+r;return[m,T,C,S]}else return[m,T]},Sn=function(e,r,a){return r<=e&&e<=a||a<=e&&e<=r?e:e<=r&&r<=a||a<=r&&r<=e?r:a},Vt=function(e,r,a,n,i,s,o,l,u){var f=e-i,h=a-e,c=o-i,v=r-s,d=n-r,g=l-s,y=c*v-g*f,p=h*v-d*f,E=g*h-c*d;if(E!==0){var m=y/E,T=p/E,C=.001,S=0-C,b=1+C;return S<=m&&m<=b&&S<=T&&T<=b?[e+m*h,r+m*d]:u?[e+m*h,r+m*d]:[]}else return y===0||p===0?Sn(e,a,o)===o?[o,l]:Sn(e,a,i)===i?[i,s]:Sn(i,o,a)===a?[a,n]:[]:[]},ia=function(e,r,a,n,i,s,o,l){var u=[],f,h=new Array(a.length),c=!0;s==null&&(c=!1);var v;if(c){for(var d=0;d0){var g=wo(h,-l);v=Eo(g)}else v=h}else v=a;for(var y,p,E,m,T=0;T2){for(var I=[u[0],u[1]],k=Math.pow(I[0]-e,2)+Math.pow(I[1]-r,2),R=1;Rf&&(f=T)},get:function(m){return u[m]}},c=0;c0?I=P.edgesTo(O)[0]:I=O.edgesTo(P)[0];var k=n(I);O=O.id(),x[O]>x[L]+k&&(x[O]=x[L]+k,w.nodes.indexOf(O)<0?w.push(O):w.updateItem(O),b[O]=0,S[O]=[]),x[O]==x[L]+k&&(b[O]=b[O]+b[L],S[O].push(L))}else for(var R=0;R0;){for(var $=C.pop(),U=0;U0&&o.push(a[l]);o.length!==0&&i.push(n.collection(o))}return i},og=function(e,r){for(var a=0;a5&&arguments[5]!==void 0?arguments[5]:fg,o=n,l,u,f=0;f=2?Ur(e,r,a,0,Qi,hg):Ur(e,r,a,0,Zi)},squaredEuclidean:function(e,r,a){return Ur(e,r,a,0,Qi)},manhattan:function(e,r,a){return Ur(e,r,a,0,Zi)},max:function(e,r,a){return Ur(e,r,a,-1/0,vg)}};Lr["squared-euclidean"]=Lr.squaredEuclidean;Lr.squaredeuclidean=Lr.squaredEuclidean;function un(t,e,r,a,n,i){var s;return Fe(t)?s=t:s=Lr[t]||Lr.euclidean,e===0&&Fe(t)?s(n,i):s(e,r,a,n,i)}var cg=Ze({k:2,m:2,sensitivityThreshold:1e-4,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),ui=function(e){return cg(e)},qa=function(e,r,a,n,i){var s=i!=="kMedoids",o=s?function(h){return a[h]}:function(h){return n[h](a)},l=function(c){return n[c](r)},u=a,f=r;return un(e,n.length,o,l,u,f)},Ln=function(e,r,a){for(var n=a.length,i=new Array(n),s=new Array(n),o=new Array(r),l=null,u=0;ua)return!1}return!0},pg=function(e,r,a){for(var n=0;no&&(o=r[u][f],l=f);i[l].push(e[u])}for(var h=0;h=i.threshold||i.mode==="dendrogram"&&e.length===1)return!1;var d=r[s],g=r[n[s]],y;i.mode==="dendrogram"?y={left:d,right:g,key:d.key}:y={value:d.value.concat(g.value),key:d.key},e[d.index]=y,e.splice(g.index,1),r[d.key]=y;for(var p=0;pa[g.key][E.key]&&(l=a[g.key][E.key])):i.linkage==="max"?(l=a[d.key][E.key],a[d.key][E.key]0&&n.push(i);return n},as=function(e,r,a){for(var n=[],i=0;io&&(s=u,o=r[i*e+u])}s>0&&n.push(s)}for(var f=0;fu&&(l=f,u=h)}a[i]=s[l]}return n=as(e,r,a),n},ns=function(e){for(var r=this.cy(),a=this.nodes(),n=Ng(e),i={},s=0;s=A?(L=A,A=O,N=P):O>L&&(L=O);for(var I=0;I0?1:0;b[w%n.minIterations*o+$]=U,F+=U}if(F>0&&(w>=n.minIterations-1||w==n.maxIterations-1)){for(var V=0,H=0;H1||S>1)&&(o=!0),h[m]=[],E.outgoers().forEach(function(x){x.isEdge()&&h[m].push(x.id())})}else c[m]=[void 0,E.target().id()]}):s.forEach(function(E){var m=E.id();if(E.isNode()){var T=E.degree(!0);T%2&&(l?u?o=!0:u=m:l=m),h[m]=[],E.connectedEdges().forEach(function(C){return h[m].push(C.id())})}else c[m]=[E.source().id(),E.target().id()]});var v={found:!1,trail:void 0};if(o)return v;if(u&&l)if(i){if(f&&u!=f)return v;f=u}else{if(f&&u!=f&&l!=f)return v;f||(f=u)}else f||(f=s[0].id());var d=function(m){for(var T=m,C=[m],S,b,x;h[T].length;)S=h[T].shift(),b=c[S][0],x=c[S][1],T!=x?(h[x]=h[x].filter(function(w){return w!=S}),T=x):!i&&T!=b&&(h[b]=h[b].filter(function(w){return w!=S}),T=b),C.unshift(S),C.unshift(T);return C},g=[],y=[];for(y=d(f);y.length!=1;)h[y[0]].length==0?(g.unshift(s.getElementById(y.shift())),g.unshift(s.getElementById(y.shift()))):y=d(y.shift()).concat(y);g.unshift(s.getElementById(y.shift()));for(var p in h)if(h[p].length)return v;return v.found=!0,v.trail=this.spawn(g,!0),v}},Oa=function(){var e=this,r={},a=0,n=0,i=[],s=[],o={},l=function(c,v){for(var d=s.length-1,g=[],y=e.spawn();s[d].x!=c||s[d].y!=v;)g.push(s.pop().edge),d--;g.push(s.pop().edge),g.forEach(function(p){var E=p.connectedNodes().intersection(e);y.merge(p),E.forEach(function(m){var T=m.id(),C=m.connectedEdges().intersection(e);y.merge(m),r[T].cutVertex?y.merge(C.filter(function(S){return S.isLoop()})):y.merge(C)})}),i.push(y)},u=function h(c,v,d){c===d&&(n+=1),r[v]={id:a,low:a++,cutVertex:!1};var g=e.getElementById(v).connectedEdges().intersection(e);if(g.size()===0)i.push(e.spawn(e.getElementById(v)));else{var y,p,E,m;g.forEach(function(T){y=T.source().id(),p=T.target().id(),E=y===v?p:y,E!==d&&(m=T.id(),o[m]||(o[m]=!0,s.push({x:v,y:E,edge:T})),E in r?r[v].low=Math.min(r[v].low,r[E].id):(h(c,E,v),r[v].low=Math.min(r[v].low,r[E].low),r[v].id<=r[E].low&&(r[v].cutVertex=!0,l(v,E))))})}};e.forEach(function(h){if(h.isNode()){var c=h.id();c in r||(n=0,u(c,c),r[c].cutVertex=n>1)}});var f=Object.keys(r).filter(function(h){return r[h].cutVertex}).map(function(h){return e.getElementById(h)});return{cut:e.spawn(f),components:i}},Gg={hopcroftTarjanBiconnected:Oa,htbc:Oa,htb:Oa,hopcroftTarjanBiconnectedComponents:Oa},Na=function(){var e=this,r={},a=0,n=[],i=[],s=e.spawn(e),o=function l(u){i.push(u),r[u]={index:a,low:a++,explored:!1};var f=e.getElementById(u).connectedEdges().intersection(e);if(f.forEach(function(g){var y=g.target().id();y!==u&&(y in r||l(y),r[y].explored||(r[u].low=Math.min(r[u].low,r[y].low)))}),r[u].index===r[u].low){for(var h=e.spawn();;){var c=i.pop();if(h.merge(e.getElementById(c)),r[c].low=r[u].index,r[c].explored=!0,c===u)break}var v=h.edgesWith(h),d=h.merge(v);n.push(d),s=s.difference(d)}};return e.forEach(function(l){if(l.isNode()){var u=l.id();u in r||o(u)}}),{cut:s,components:n}},zg={tarjanStronglyConnected:Na,tsc:Na,tscc:Na,tarjanStronglyConnectedComponents:Na},Ao={};[aa,gd,pd,md,Ed,xd,Dd,Zd,Tr,Cr,Gn,ug,xg,Ag,Pg,Fg,Gg,zg].forEach(function(t){ce(Ao,t)});/*! Embeddable Minimum Strictly-Compliant Promises/A+ 1.1.1 Thenable Copyright (c) 2013-2014 Ralf S. Engelschall (http://engelschall.com) diff --git a/pr-383/assets/chunks/pieDiagram-5efcb91d.9463ffbb.js b/pr-383/assets/chunks/pieDiagram-5efcb91d.1354b84a.js similarity index 98% rename from pr-383/assets/chunks/pieDiagram-5efcb91d.9463ffbb.js rename to pr-383/assets/chunks/pieDiagram-5efcb91d.1354b84a.js index 840b93b9c..ee73ebff5 100644 --- a/pr-383/assets/chunks/pieDiagram-5efcb91d.9463ffbb.js +++ b/pr-383/assets/chunks/pieDiagram-5efcb91d.1354b84a.js @@ -1,4 +1,4 @@ -import{ap as it,c as B,s as ut,g as ft,v as pt,x as yt,a as dt,b as gt,m as mt,j as _t,l as J,z as vt,h as nt,i as bt,aq as xt}from"../app.34e6398e.js";import{o as kt}from"./ordinal.b935e931.js";import{a as St}from"./array.9f3ba611.js";import{c as M}from"./path.53f90ab3.js";import{a as lt}from"./arc.acf4fa71.js";import"./framework.be0a7370.js";import"./theme.e11407bf.js";import"./init.77b53fdd.js";function wt(t,u){return ut?1:u>=t?0:NaN}function At(t){return t}function Et(){var t=At,u=wt,_=null,b=M(0),k=M(it),S=M(0);function c(a){var f,h=(a=St(a)).length,w,L,N=0,v=new Array(h),A=new Array(h),T=+b.apply(this,arguments),D=Math.min(it,Math.max(-it,k.apply(this,arguments)-T)),W,C=Math.min(Math.abs(D)/h,S.apply(this,arguments)),I=C*(D<0?-1:1),d;for(f=0;f0&&(N+=d);for(u!=null?v.sort(function(E,g){return u(A[E],A[g])}):_!=null&&v.sort(function(E,g){return _(a[E],a[g])}),f=0,L=N?(D-h*I)/N:0;f0?d*L:0)+I,A[w]={data:a[w],index:f,value:d,startAngle:T,endAngle:W,padAngle:C};return A}return c.value=function(a){return arguments.length?(t=typeof a=="function"?a:M(+a),c):t},c.sortValues=function(a){return arguments.length?(u=a,_=null,c):u},c.sort=function(a){return arguments.length?(_=a,u=null,c):_},c.startAngle=function(a){return arguments.length?(b=typeof a=="function"?a:M(+a),c):b},c.endAngle=function(a){return arguments.length?(k=typeof a=="function"?a:M(+a),c):k},c.padAngle=function(a){return arguments.length?(S=typeof a=="function"?a:M(+a),c):S},c}var st=function(){var t=function(g,e,i,r){for(i=i||{},r=g.length;r--;i[g[r]]=e);return i},u=[1,4],_=[1,5],b=[1,6],k=[1,7],S=[1,9],c=[1,11,13,15,17,19,20,26,27,28,29],a=[2,5],f=[1,6,11,13,15,17,19,20,26,27,28,29],h=[26,27,28],w=[2,8],L=[1,18],N=[1,19],v=[1,20],A=[1,21],T=[1,22],D=[1,23],W=[1,28],C=[6,26,27,28,29],I={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,directive:5,PIE:6,document:7,showData:8,line:9,statement:10,txt:11,value:12,title:13,title_value:14,acc_title:15,acc_title_value:16,acc_descr:17,acc_descr_value:18,acc_descr_multiline_value:19,section:20,openDirective:21,typeDirective:22,closeDirective:23,":":24,argDirective:25,NEWLINE:26,";":27,EOF:28,open_directive:29,type_directive:30,arg_directive:31,close_directive:32,$accept:0,$end:1},terminals_:{2:"error",6:"PIE",8:"showData",11:"txt",12:"value",13:"title",14:"title_value",15:"acc_title",16:"acc_title_value",17:"acc_descr",18:"acc_descr_value",19:"acc_descr_multiline_value",20:"section",24:":",26:"NEWLINE",27:";",28:"EOF",29:"open_directive",30:"type_directive",31:"arg_directive",32:"close_directive"},productions_:[0,[3,2],[3,2],[3,2],[3,3],[7,0],[7,2],[9,2],[10,0],[10,2],[10,2],[10,2],[10,2],[10,1],[10,1],[10,1],[5,3],[5,5],[4,1],[4,1],[4,1],[21,1],[22,1],[25,1],[23,1]],performAction:function(e,i,r,n,l,s,o){var p=s.length-1;switch(l){case 4:n.setShowData(!0);break;case 7:this.$=s[p-1];break;case 9:n.addSection(s[p-1],n.cleanupValue(s[p]));break;case 10:this.$=s[p].trim(),n.setDiagramTitle(this.$);break;case 11:this.$=s[p].trim(),n.setAccTitle(this.$);break;case 12:case 13:this.$=s[p].trim(),n.setAccDescription(this.$);break;case 14:n.addSection(s[p].substr(8)),this.$=s[p].substr(8);break;case 21:n.parseDirective("%%{","open_directive");break;case 22:n.parseDirective(s[p],"type_directive");break;case 23:s[p]=s[p].trim().replace(/'/g,'"'),n.parseDirective(s[p],"arg_directive");break;case 24:n.parseDirective("}%%","close_directive","pie");break}},table:[{3:1,4:2,5:3,6:u,21:8,26:_,27:b,28:k,29:S},{1:[3]},{3:10,4:2,5:3,6:u,21:8,26:_,27:b,28:k,29:S},{3:11,4:2,5:3,6:u,21:8,26:_,27:b,28:k,29:S},t(c,a,{7:12,8:[1,13]}),t(f,[2,18]),t(f,[2,19]),t(f,[2,20]),{22:14,30:[1,15]},{30:[2,21]},{1:[2,1]},{1:[2,2]},t(h,w,{21:8,9:16,10:17,5:24,1:[2,3],11:L,13:N,15:v,17:A,19:T,20:D,29:S}),t(c,a,{7:25}),{23:26,24:[1,27],32:W},t([24,32],[2,22]),t(c,[2,6]),{4:29,26:_,27:b,28:k},{12:[1,30]},{14:[1,31]},{16:[1,32]},{18:[1,33]},t(h,[2,13]),t(h,[2,14]),t(h,[2,15]),t(h,w,{21:8,9:16,10:17,5:24,1:[2,4],11:L,13:N,15:v,17:A,19:T,20:D,29:S}),t(C,[2,16]),{25:34,31:[1,35]},t(C,[2,24]),t(c,[2,7]),t(h,[2,9]),t(h,[2,10]),t(h,[2,11]),t(h,[2,12]),{23:36,32:W},{32:[2,23]},t(C,[2,17])],defaultActions:{9:[2,21],10:[2,1],11:[2,2],35:[2,23]},parseError:function(e,i){if(i.recoverable)this.trace(e);else{var r=new Error(e);throw r.hash=i,r}},parse:function(e){var i=this,r=[0],n=[],l=[null],s=[],o=this.table,p="",F=0,U=0,Q=2,q=1,ct=s.slice.call(arguments,1),y=Object.create(this.lexer),j={yy:{}};for(var X in this.yy)Object.prototype.hasOwnProperty.call(this.yy,X)&&(j.yy[X]=this.yy[X]);y.setInput(e,j.yy),j.yy.lexer=y,j.yy.parser=this,typeof y.yylloc>"u"&&(y.yylloc={});var Z=y.yylloc;s.push(Z);var ot=y.options&&y.options.ranges;typeof j.yy.parseError=="function"?this.parseError=j.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ht(){var O;return O=n.pop()||y.lex()||q,typeof O!="number"&&(O instanceof Array&&(n=O,O=n.pop()),O=i.symbols_[O]||O),O}for(var m,z,x,tt,R={},G,V,at,H;;){if(z=r[r.length-1],this.defaultActions[z]?x=this.defaultActions[z]:((m===null||typeof m>"u")&&(m=ht()),x=o[z]&&o[z][m]),typeof x>"u"||!x.length||!x[0]){var et="";H=[];for(G in o[z])this.terminals_[G]&&G>Q&&H.push("'"+this.terminals_[G]+"'");y.showPosition?et="Parse error on line "+(F+1)+`: +import{ap as it,c as B,s as ut,g as ft,v as pt,x as yt,a as dt,b as gt,m as mt,j as _t,l as J,z as vt,h as nt,i as bt,aq as xt}from"../app.3c4fe3d0.js";import{o as kt}from"./ordinal.b935e931.js";import{a as St}from"./array.9f3ba611.js";import{c as M}from"./path.53f90ab3.js";import{a as lt}from"./arc.60bf6bcc.js";import"./framework.be0a7370.js";import"./theme.71fa6e36.js";import"./init.77b53fdd.js";function wt(t,u){return ut?1:u>=t?0:NaN}function At(t){return t}function Et(){var t=At,u=wt,_=null,b=M(0),k=M(it),S=M(0);function c(a){var f,h=(a=St(a)).length,w,L,N=0,v=new Array(h),A=new Array(h),T=+b.apply(this,arguments),D=Math.min(it,Math.max(-it,k.apply(this,arguments)-T)),W,C=Math.min(Math.abs(D)/h,S.apply(this,arguments)),I=C*(D<0?-1:1),d;for(f=0;f0&&(N+=d);for(u!=null?v.sort(function(E,g){return u(A[E],A[g])}):_!=null&&v.sort(function(E,g){return _(a[E],a[g])}),f=0,L=N?(D-h*I)/N:0;f0?d*L:0)+I,A[w]={data:a[w],index:f,value:d,startAngle:T,endAngle:W,padAngle:C};return A}return c.value=function(a){return arguments.length?(t=typeof a=="function"?a:M(+a),c):t},c.sortValues=function(a){return arguments.length?(u=a,_=null,c):u},c.sort=function(a){return arguments.length?(_=a,u=null,c):_},c.startAngle=function(a){return arguments.length?(b=typeof a=="function"?a:M(+a),c):b},c.endAngle=function(a){return arguments.length?(k=typeof a=="function"?a:M(+a),c):k},c.padAngle=function(a){return arguments.length?(S=typeof a=="function"?a:M(+a),c):S},c}var st=function(){var t=function(g,e,i,r){for(i=i||{},r=g.length;r--;i[g[r]]=e);return i},u=[1,4],_=[1,5],b=[1,6],k=[1,7],S=[1,9],c=[1,11,13,15,17,19,20,26,27,28,29],a=[2,5],f=[1,6,11,13,15,17,19,20,26,27,28,29],h=[26,27,28],w=[2,8],L=[1,18],N=[1,19],v=[1,20],A=[1,21],T=[1,22],D=[1,23],W=[1,28],C=[6,26,27,28,29],I={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,directive:5,PIE:6,document:7,showData:8,line:9,statement:10,txt:11,value:12,title:13,title_value:14,acc_title:15,acc_title_value:16,acc_descr:17,acc_descr_value:18,acc_descr_multiline_value:19,section:20,openDirective:21,typeDirective:22,closeDirective:23,":":24,argDirective:25,NEWLINE:26,";":27,EOF:28,open_directive:29,type_directive:30,arg_directive:31,close_directive:32,$accept:0,$end:1},terminals_:{2:"error",6:"PIE",8:"showData",11:"txt",12:"value",13:"title",14:"title_value",15:"acc_title",16:"acc_title_value",17:"acc_descr",18:"acc_descr_value",19:"acc_descr_multiline_value",20:"section",24:":",26:"NEWLINE",27:";",28:"EOF",29:"open_directive",30:"type_directive",31:"arg_directive",32:"close_directive"},productions_:[0,[3,2],[3,2],[3,2],[3,3],[7,0],[7,2],[9,2],[10,0],[10,2],[10,2],[10,2],[10,2],[10,1],[10,1],[10,1],[5,3],[5,5],[4,1],[4,1],[4,1],[21,1],[22,1],[25,1],[23,1]],performAction:function(e,i,r,n,l,s,o){var p=s.length-1;switch(l){case 4:n.setShowData(!0);break;case 7:this.$=s[p-1];break;case 9:n.addSection(s[p-1],n.cleanupValue(s[p]));break;case 10:this.$=s[p].trim(),n.setDiagramTitle(this.$);break;case 11:this.$=s[p].trim(),n.setAccTitle(this.$);break;case 12:case 13:this.$=s[p].trim(),n.setAccDescription(this.$);break;case 14:n.addSection(s[p].substr(8)),this.$=s[p].substr(8);break;case 21:n.parseDirective("%%{","open_directive");break;case 22:n.parseDirective(s[p],"type_directive");break;case 23:s[p]=s[p].trim().replace(/'/g,'"'),n.parseDirective(s[p],"arg_directive");break;case 24:n.parseDirective("}%%","close_directive","pie");break}},table:[{3:1,4:2,5:3,6:u,21:8,26:_,27:b,28:k,29:S},{1:[3]},{3:10,4:2,5:3,6:u,21:8,26:_,27:b,28:k,29:S},{3:11,4:2,5:3,6:u,21:8,26:_,27:b,28:k,29:S},t(c,a,{7:12,8:[1,13]}),t(f,[2,18]),t(f,[2,19]),t(f,[2,20]),{22:14,30:[1,15]},{30:[2,21]},{1:[2,1]},{1:[2,2]},t(h,w,{21:8,9:16,10:17,5:24,1:[2,3],11:L,13:N,15:v,17:A,19:T,20:D,29:S}),t(c,a,{7:25}),{23:26,24:[1,27],32:W},t([24,32],[2,22]),t(c,[2,6]),{4:29,26:_,27:b,28:k},{12:[1,30]},{14:[1,31]},{16:[1,32]},{18:[1,33]},t(h,[2,13]),t(h,[2,14]),t(h,[2,15]),t(h,w,{21:8,9:16,10:17,5:24,1:[2,4],11:L,13:N,15:v,17:A,19:T,20:D,29:S}),t(C,[2,16]),{25:34,31:[1,35]},t(C,[2,24]),t(c,[2,7]),t(h,[2,9]),t(h,[2,10]),t(h,[2,11]),t(h,[2,12]),{23:36,32:W},{32:[2,23]},t(C,[2,17])],defaultActions:{9:[2,21],10:[2,1],11:[2,2],35:[2,23]},parseError:function(e,i){if(i.recoverable)this.trace(e);else{var r=new Error(e);throw r.hash=i,r}},parse:function(e){var i=this,r=[0],n=[],l=[null],s=[],o=this.table,p="",F=0,U=0,Q=2,q=1,ct=s.slice.call(arguments,1),y=Object.create(this.lexer),j={yy:{}};for(var X in this.yy)Object.prototype.hasOwnProperty.call(this.yy,X)&&(j.yy[X]=this.yy[X]);y.setInput(e,j.yy),j.yy.lexer=y,j.yy.parser=this,typeof y.yylloc>"u"&&(y.yylloc={});var Z=y.yylloc;s.push(Z);var ot=y.options&&y.options.ranges;typeof j.yy.parseError=="function"?this.parseError=j.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ht(){var O;return O=n.pop()||y.lex()||q,typeof O!="number"&&(O instanceof Array&&(n=O,O=n.pop()),O=i.symbols_[O]||O),O}for(var m,z,x,tt,R={},G,V,at,H;;){if(z=r[r.length-1],this.defaultActions[z]?x=this.defaultActions[z]:((m===null||typeof m>"u")&&(m=ht()),x=o[z]&&o[z][m]),typeof x>"u"||!x.length||!x[0]){var et="";H=[];for(G in o[z])this.terminals_[G]&&G>Q&&H.push("'"+this.terminals_[G]+"'");y.showPosition?et="Parse error on line "+(F+1)+`: `+y.showPosition()+` Expecting `+H.join(", ")+", got '"+(this.terminals_[m]||m)+"'":et="Parse error on line "+(F+1)+": Unexpected "+(m==q?"end of input":"'"+(this.terminals_[m]||m)+"'"),this.parseError(et,{text:y.match,token:this.terminals_[m]||m,line:y.yylineno,loc:Z,expected:H})}if(x[0]instanceof Array&&x.length>1)throw new Error("Parse Error: multiple actions possible at state: "+z+", token: "+m);switch(x[0]){case 1:r.push(m),l.push(y.yytext),s.push(y.yylloc),r.push(x[1]),m=null,U=y.yyleng,p=y.yytext,F=y.yylineno,Z=y.yylloc;break;case 2:if(V=this.productions_[x[1]][1],R.$=l[l.length-V],R._$={first_line:s[s.length-(V||1)].first_line,last_line:s[s.length-1].last_line,first_column:s[s.length-(V||1)].first_column,last_column:s[s.length-1].last_column},ot&&(R._$.range=[s[s.length-(V||1)].range[0],s[s.length-1].range[1]]),tt=this.performAction.apply(R,[p,U,F,j.yy,x[1],l,s].concat(ct)),typeof tt<"u")return tt;V&&(r=r.slice(0,-1*V*2),l=l.slice(0,-1*V),s=s.slice(0,-1*V)),r.push(this.productions_[x[1]][0]),l.push(R.$),s.push(R._$),at=o[r[r.length-2]][r[r.length-1]],r.push(at);break;case 3:return!0}}return!0}},d=function(){var g={EOF:1,parseError:function(i,r){if(this.yy.parser)this.yy.parser.parseError(i,r);else throw new Error(i)},setInput:function(e,i){return this.yy=i||this.yy||{},this._input=e,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var e=this._input[0];this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e;var i=e.match(/(?:\r\n?|\n).*/g);return i?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},unput:function(e){var i=e.length,r=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-i),this.offset-=i;var n=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),r.length-1&&(this.yylineno-=r.length-1);var l=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:r?(r.length===n.length?this.yylloc.first_column:0)+n[n.length-r.length].length-r[0].length:this.yylloc.first_column-i},this.options.ranges&&(this.yylloc.range=[l[0],l[0]+this.yyleng-i]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(e){this.unput(this.match.slice(e))},pastInput:function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var e=this.pastInput(),i=new Array(e.length+1).join("-");return e+this.upcomingInput()+` diff --git a/pr-383/assets/chunks/quadrantDiagram-559115c7.675bfb90.js b/pr-383/assets/chunks/quadrantDiagram-559115c7.018ee5bd.js similarity index 99% rename from pr-383/assets/chunks/quadrantDiagram-559115c7.675bfb90.js rename to pr-383/assets/chunks/quadrantDiagram-559115c7.018ee5bd.js index a652e07c4..31cac83a2 100644 --- a/pr-383/assets/chunks/quadrantDiagram-559115c7.675bfb90.js +++ b/pr-383/assets/chunks/quadrantDiagram-559115c7.018ee5bd.js @@ -1,4 +1,4 @@ -import{aD as Dt,c as _t,aE as I,l as ct,s as zt,g as Et,v as It,x as vt,a as Bt,b as Vt,m as wt,z as Rt,h as yt,i as Wt,d as Nt}from"../app.34e6398e.js";import{l as St}from"./linear.ae897b18.js";import"./framework.be0a7370.js";import"./theme.e11407bf.js";import"./init.77b53fdd.js";var qt=function(){var e=function(K,n,r,d){for(r=r||{},d=K.length;d--;r[K[d]]=n);return r},a=[1,3],c=[1,5],f=[1,6],g=[1,7],x=[1,8],h=[1,10],p=[1,5,14,16,18,20,21,26,28,29,30,31,32,38,39,40,41,47,48,50,51,52,53,54,55,56,57,58,59,60],s=[1,5,7,14,16,18,20,21,26,28,29,30,31,32,38,39,40,41,47,48,50,51,52,53,54,55,56,57,58,59,60],l=[38,39,40],y=[2,8],B=[1,19],W=[1,23],L=[1,24],C=[1,25],N=[1,26],M=[1,27],X=[1,29],D=[1,30],it=[1,31],at=[1,32],nt=[1,33],rt=[1,34],Q=[1,37],U=[1,38],T=[1,39],_=[1,40],t=[1,41],m=[1,42],b=[1,43],A=[1,44],S=[1,45],v=[1,46],k=[1,47],F=[1,48],P=[1,49],Tt=[1,52],O=[1,67],Y=[1,68],z=[5,23,27,38,39,40,50,51,52,53,54,55,56,57,58,59,60,61],ht=[5,7,38,39,40,41],dt={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,SPACE:5,directive:6,QUADRANT:7,document:8,line:9,statement:10,axisDetails:11,quadrantDetails:12,points:13,title:14,title_value:15,acc_title:16,acc_title_value:17,acc_descr:18,acc_descr_value:19,acc_descr_multiline_value:20,section:21,text:22,point_start:23,point_x:24,point_y:25,"X-AXIS":26,"AXIS-TEXT-DELIMITER":27,"Y-AXIS":28,QUADRANT_1:29,QUADRANT_2:30,QUADRANT_3:31,QUADRANT_4:32,openDirective:33,typeDirective:34,closeDirective:35,":":36,argDirective:37,NEWLINE:38,SEMI:39,EOF:40,open_directive:41,type_directive:42,arg_directive:43,close_directive:44,alphaNumToken:45,textNoTagsToken:46,STR:47,MD_STR:48,alphaNum:49,PUNCTUATION:50,AMP:51,NUM:52,ALPHA:53,COMMA:54,PLUS:55,EQUALS:56,MULT:57,DOT:58,BRKT:59,UNDERSCORE:60,MINUS:61,$accept:0,$end:1},terminals_:{2:"error",5:"SPACE",7:"QUADRANT",14:"title",15:"title_value",16:"acc_title",17:"acc_title_value",18:"acc_descr",19:"acc_descr_value",20:"acc_descr_multiline_value",21:"section",23:"point_start",24:"point_x",25:"point_y",26:"X-AXIS",27:"AXIS-TEXT-DELIMITER",28:"Y-AXIS",29:"QUADRANT_1",30:"QUADRANT_2",31:"QUADRANT_3",32:"QUADRANT_4",36:":",38:"NEWLINE",39:"SEMI",40:"EOF",41:"open_directive",42:"type_directive",43:"arg_directive",44:"close_directive",47:"STR",48:"MD_STR",50:"PUNCTUATION",51:"AMP",52:"NUM",53:"ALPHA",54:"COMMA",55:"PLUS",56:"EQUALS",57:"MULT",58:"DOT",59:"BRKT",60:"UNDERSCORE",61:"MINUS"},productions_:[0,[3,2],[3,2],[3,2],[3,2],[8,0],[8,2],[9,2],[10,0],[10,2],[10,1],[10,1],[10,1],[10,2],[10,2],[10,2],[10,1],[10,1],[10,1],[13,4],[11,4],[11,3],[11,2],[11,4],[11,3],[11,2],[12,2],[12,2],[12,2],[12,2],[6,3],[6,5],[4,1],[4,1],[4,1],[33,1],[34,1],[37,1],[35,1],[22,1],[22,2],[22,1],[22,1],[49,1],[49,2],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[46,1],[46,1],[46,1]],performAction:function(n,r,d,o,q,i,et){var u=i.length-1;switch(q){case 13:this.$=i[u].trim(),o.setDiagramTitle(this.$);break;case 14:this.$=i[u].trim(),o.setAccTitle(this.$);break;case 15:case 16:this.$=i[u].trim(),o.setAccDescription(this.$);break;case 17:o.addSection(i[u].substr(8)),this.$=i[u].substr(8);break;case 19:o.addPoint(i[u-3],i[u-1],i[u]);break;case 20:o.setXAxisLeftText(i[u-2]),o.setXAxisRightText(i[u]);break;case 21:i[u-1].text+=" โŸถ ",o.setXAxisLeftText(i[u-1]);break;case 22:o.setXAxisLeftText(i[u]);break;case 23:o.setYAxisBottomText(i[u-2]),o.setYAxisTopText(i[u]);break;case 24:i[u-1].text+=" โŸถ ",o.setYAxisBottomText(i[u-1]);break;case 25:o.setYAxisBottomText(i[u]);break;case 26:o.setQuadrant1Text(i[u]);break;case 27:o.setQuadrant2Text(i[u]);break;case 28:o.setQuadrant3Text(i[u]);break;case 29:o.setQuadrant4Text(i[u]);break;case 35:o.parseDirective("%%{","open_directive");break;case 36:o.parseDirective(i[u],"type_directive");break;case 37:i[u]=i[u].trim().replace(/'/g,'"'),o.parseDirective(i[u],"arg_directive");break;case 38:o.parseDirective("}%%","close_directive","quadrantChart");break;case 39:this.$={text:i[u],type:"text"};break;case 40:this.$={text:i[u-1].text+""+i[u],type:i[u-1].type};break;case 41:this.$={text:i[u],type:"text"};break;case 42:this.$={text:i[u],type:"markdown"};break;case 43:this.$=i[u];break;case 44:this.$=i[u-1]+""+i[u];break}},table:[{3:1,4:2,5:a,6:4,7:c,33:9,38:f,39:g,40:x,41:h},{1:[3]},{3:11,4:2,5:a,6:4,7:c,33:9,38:f,39:g,40:x,41:h},{3:12,4:2,5:a,6:4,7:c,33:9,38:f,39:g,40:x,41:h},{3:13,4:2,5:a,6:4,7:c,33:9,38:f,39:g,40:x,41:h},e(p,[2,5],{8:14}),e(s,[2,32]),e(s,[2,33]),e(s,[2,34]),{34:15,42:[1,16]},{42:[2,35]},{1:[2,1]},{1:[2,2]},{1:[2,3]},e(l,y,{33:9,9:17,10:18,11:20,12:21,13:22,6:28,22:35,45:36,1:[2,4],5:B,14:W,16:L,18:C,20:N,21:M,26:X,28:D,29:it,30:at,31:nt,32:rt,41:h,47:Q,48:U,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P}),{35:50,36:[1,51],44:Tt},e([36,44],[2,36]),e(p,[2,6]),{4:53,38:f,39:g,40:x},e(l,y,{33:9,11:20,12:21,13:22,6:28,22:35,45:36,10:54,5:B,14:W,16:L,18:C,20:N,21:M,26:X,28:D,29:it,30:at,31:nt,32:rt,41:h,47:Q,48:U,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P}),e(l,[2,10]),e(l,[2,11]),e(l,[2,12]),{15:[1,55]},{17:[1,56]},{19:[1,57]},e(l,[2,16]),e(l,[2,17]),e(l,[2,18]),{22:58,45:36,47:Q,48:U,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P},{22:59,45:36,47:Q,48:U,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P},{22:60,45:36,47:Q,48:U,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P},{22:61,45:36,47:Q,48:U,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P},{22:62,45:36,47:Q,48:U,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P},{22:63,45:36,47:Q,48:U,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P},{5:O,23:[1,64],45:66,46:65,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P,61:Y},e(z,[2,39]),e(z,[2,41]),e(z,[2,42]),e(z,[2,45]),e(z,[2,46]),e(z,[2,47]),e(z,[2,48]),e(z,[2,49]),e(z,[2,50]),e(z,[2,51]),e(z,[2,52]),e(z,[2,53]),e(z,[2,54]),e(z,[2,55]),e(ht,[2,30]),{37:69,43:[1,70]},e(ht,[2,38]),e(p,[2,7]),e(l,[2,9]),e(l,[2,13]),e(l,[2,14]),e(l,[2,15]),e(l,[2,22],{46:65,45:66,5:O,27:[1,71],50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P,61:Y}),e(l,[2,25],{46:65,45:66,5:O,27:[1,72],50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P,61:Y}),e(l,[2,26],{46:65,45:66,5:O,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P,61:Y}),e(l,[2,27],{46:65,45:66,5:O,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P,61:Y}),e(l,[2,28],{46:65,45:66,5:O,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P,61:Y}),e(l,[2,29],{46:65,45:66,5:O,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P,61:Y}),{24:[1,73]},e(z,[2,40]),e(z,[2,56]),e(z,[2,57]),e(z,[2,58]),{35:74,44:Tt},{44:[2,37]},e(l,[2,21],{45:36,22:75,47:Q,48:U,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P}),e(l,[2,24],{45:36,22:76,47:Q,48:U,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P}),{25:[1,77]},e(ht,[2,31]),e(l,[2,20],{46:65,45:66,5:O,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P,61:Y}),e(l,[2,23],{46:65,45:66,5:O,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P,61:Y}),e(l,[2,19])],defaultActions:{10:[2,35],11:[2,1],12:[2,2],13:[2,3],70:[2,37]},parseError:function(n,r){if(r.recoverable)this.trace(n);else{var d=new Error(n);throw d.hash=r,d}},parse:function(n){var r=this,d=[0],o=[],q=[null],i=[],et=this.table,u="",st=0,mt=0,Ft=2,bt=1,Pt=i.slice.call(arguments,1),E=Object.create(this.lexer),Z={yy:{}};for(var xt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,xt)&&(Z.yy[xt]=this.yy[xt]);E.setInput(n,Z.yy),Z.yy.lexer=E,Z.yy.parser=this,typeof E.yylloc>"u"&&(E.yylloc={});var ft=E.yylloc;i.push(ft);var Lt=E.options&&E.options.ranges;typeof Z.yy.parseError=="function"?this.parseError=Z.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ct(){var G;return G=o.pop()||E.lex()||bt,typeof G!="number"&&(G instanceof Array&&(o=G,G=o.pop()),G=r.symbols_[G]||G),G}for(var R,J,H,gt,tt={},lt,j,At,ot;;){if(J=d[d.length-1],this.defaultActions[J]?H=this.defaultActions[J]:((R===null||typeof R>"u")&&(R=Ct()),H=et[J]&&et[J][R]),typeof H>"u"||!H.length||!H[0]){var pt="";ot=[];for(lt in et[J])this.terminals_[lt]&<>Ft&&ot.push("'"+this.terminals_[lt]+"'");E.showPosition?pt="Parse error on line "+(st+1)+`: +import{aD as Dt,c as _t,aE as I,l as ct,s as zt,g as Et,v as It,x as vt,a as Bt,b as Vt,m as wt,z as Rt,h as yt,i as Wt,d as Nt}from"../app.3c4fe3d0.js";import{l as St}from"./linear.ecff5eb1.js";import"./framework.be0a7370.js";import"./theme.71fa6e36.js";import"./init.77b53fdd.js";var qt=function(){var e=function(K,n,r,d){for(r=r||{},d=K.length;d--;r[K[d]]=n);return r},a=[1,3],c=[1,5],f=[1,6],g=[1,7],x=[1,8],h=[1,10],p=[1,5,14,16,18,20,21,26,28,29,30,31,32,38,39,40,41,47,48,50,51,52,53,54,55,56,57,58,59,60],s=[1,5,7,14,16,18,20,21,26,28,29,30,31,32,38,39,40,41,47,48,50,51,52,53,54,55,56,57,58,59,60],l=[38,39,40],y=[2,8],B=[1,19],W=[1,23],L=[1,24],C=[1,25],N=[1,26],M=[1,27],X=[1,29],D=[1,30],it=[1,31],at=[1,32],nt=[1,33],rt=[1,34],Q=[1,37],U=[1,38],T=[1,39],_=[1,40],t=[1,41],m=[1,42],b=[1,43],A=[1,44],S=[1,45],v=[1,46],k=[1,47],F=[1,48],P=[1,49],Tt=[1,52],O=[1,67],Y=[1,68],z=[5,23,27,38,39,40,50,51,52,53,54,55,56,57,58,59,60,61],ht=[5,7,38,39,40,41],dt={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,SPACE:5,directive:6,QUADRANT:7,document:8,line:9,statement:10,axisDetails:11,quadrantDetails:12,points:13,title:14,title_value:15,acc_title:16,acc_title_value:17,acc_descr:18,acc_descr_value:19,acc_descr_multiline_value:20,section:21,text:22,point_start:23,point_x:24,point_y:25,"X-AXIS":26,"AXIS-TEXT-DELIMITER":27,"Y-AXIS":28,QUADRANT_1:29,QUADRANT_2:30,QUADRANT_3:31,QUADRANT_4:32,openDirective:33,typeDirective:34,closeDirective:35,":":36,argDirective:37,NEWLINE:38,SEMI:39,EOF:40,open_directive:41,type_directive:42,arg_directive:43,close_directive:44,alphaNumToken:45,textNoTagsToken:46,STR:47,MD_STR:48,alphaNum:49,PUNCTUATION:50,AMP:51,NUM:52,ALPHA:53,COMMA:54,PLUS:55,EQUALS:56,MULT:57,DOT:58,BRKT:59,UNDERSCORE:60,MINUS:61,$accept:0,$end:1},terminals_:{2:"error",5:"SPACE",7:"QUADRANT",14:"title",15:"title_value",16:"acc_title",17:"acc_title_value",18:"acc_descr",19:"acc_descr_value",20:"acc_descr_multiline_value",21:"section",23:"point_start",24:"point_x",25:"point_y",26:"X-AXIS",27:"AXIS-TEXT-DELIMITER",28:"Y-AXIS",29:"QUADRANT_1",30:"QUADRANT_2",31:"QUADRANT_3",32:"QUADRANT_4",36:":",38:"NEWLINE",39:"SEMI",40:"EOF",41:"open_directive",42:"type_directive",43:"arg_directive",44:"close_directive",47:"STR",48:"MD_STR",50:"PUNCTUATION",51:"AMP",52:"NUM",53:"ALPHA",54:"COMMA",55:"PLUS",56:"EQUALS",57:"MULT",58:"DOT",59:"BRKT",60:"UNDERSCORE",61:"MINUS"},productions_:[0,[3,2],[3,2],[3,2],[3,2],[8,0],[8,2],[9,2],[10,0],[10,2],[10,1],[10,1],[10,1],[10,2],[10,2],[10,2],[10,1],[10,1],[10,1],[13,4],[11,4],[11,3],[11,2],[11,4],[11,3],[11,2],[12,2],[12,2],[12,2],[12,2],[6,3],[6,5],[4,1],[4,1],[4,1],[33,1],[34,1],[37,1],[35,1],[22,1],[22,2],[22,1],[22,1],[49,1],[49,2],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[46,1],[46,1],[46,1]],performAction:function(n,r,d,o,q,i,et){var u=i.length-1;switch(q){case 13:this.$=i[u].trim(),o.setDiagramTitle(this.$);break;case 14:this.$=i[u].trim(),o.setAccTitle(this.$);break;case 15:case 16:this.$=i[u].trim(),o.setAccDescription(this.$);break;case 17:o.addSection(i[u].substr(8)),this.$=i[u].substr(8);break;case 19:o.addPoint(i[u-3],i[u-1],i[u]);break;case 20:o.setXAxisLeftText(i[u-2]),o.setXAxisRightText(i[u]);break;case 21:i[u-1].text+=" โŸถ ",o.setXAxisLeftText(i[u-1]);break;case 22:o.setXAxisLeftText(i[u]);break;case 23:o.setYAxisBottomText(i[u-2]),o.setYAxisTopText(i[u]);break;case 24:i[u-1].text+=" โŸถ ",o.setYAxisBottomText(i[u-1]);break;case 25:o.setYAxisBottomText(i[u]);break;case 26:o.setQuadrant1Text(i[u]);break;case 27:o.setQuadrant2Text(i[u]);break;case 28:o.setQuadrant3Text(i[u]);break;case 29:o.setQuadrant4Text(i[u]);break;case 35:o.parseDirective("%%{","open_directive");break;case 36:o.parseDirective(i[u],"type_directive");break;case 37:i[u]=i[u].trim().replace(/'/g,'"'),o.parseDirective(i[u],"arg_directive");break;case 38:o.parseDirective("}%%","close_directive","quadrantChart");break;case 39:this.$={text:i[u],type:"text"};break;case 40:this.$={text:i[u-1].text+""+i[u],type:i[u-1].type};break;case 41:this.$={text:i[u],type:"text"};break;case 42:this.$={text:i[u],type:"markdown"};break;case 43:this.$=i[u];break;case 44:this.$=i[u-1]+""+i[u];break}},table:[{3:1,4:2,5:a,6:4,7:c,33:9,38:f,39:g,40:x,41:h},{1:[3]},{3:11,4:2,5:a,6:4,7:c,33:9,38:f,39:g,40:x,41:h},{3:12,4:2,5:a,6:4,7:c,33:9,38:f,39:g,40:x,41:h},{3:13,4:2,5:a,6:4,7:c,33:9,38:f,39:g,40:x,41:h},e(p,[2,5],{8:14}),e(s,[2,32]),e(s,[2,33]),e(s,[2,34]),{34:15,42:[1,16]},{42:[2,35]},{1:[2,1]},{1:[2,2]},{1:[2,3]},e(l,y,{33:9,9:17,10:18,11:20,12:21,13:22,6:28,22:35,45:36,1:[2,4],5:B,14:W,16:L,18:C,20:N,21:M,26:X,28:D,29:it,30:at,31:nt,32:rt,41:h,47:Q,48:U,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P}),{35:50,36:[1,51],44:Tt},e([36,44],[2,36]),e(p,[2,6]),{4:53,38:f,39:g,40:x},e(l,y,{33:9,11:20,12:21,13:22,6:28,22:35,45:36,10:54,5:B,14:W,16:L,18:C,20:N,21:M,26:X,28:D,29:it,30:at,31:nt,32:rt,41:h,47:Q,48:U,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P}),e(l,[2,10]),e(l,[2,11]),e(l,[2,12]),{15:[1,55]},{17:[1,56]},{19:[1,57]},e(l,[2,16]),e(l,[2,17]),e(l,[2,18]),{22:58,45:36,47:Q,48:U,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P},{22:59,45:36,47:Q,48:U,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P},{22:60,45:36,47:Q,48:U,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P},{22:61,45:36,47:Q,48:U,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P},{22:62,45:36,47:Q,48:U,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P},{22:63,45:36,47:Q,48:U,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P},{5:O,23:[1,64],45:66,46:65,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P,61:Y},e(z,[2,39]),e(z,[2,41]),e(z,[2,42]),e(z,[2,45]),e(z,[2,46]),e(z,[2,47]),e(z,[2,48]),e(z,[2,49]),e(z,[2,50]),e(z,[2,51]),e(z,[2,52]),e(z,[2,53]),e(z,[2,54]),e(z,[2,55]),e(ht,[2,30]),{37:69,43:[1,70]},e(ht,[2,38]),e(p,[2,7]),e(l,[2,9]),e(l,[2,13]),e(l,[2,14]),e(l,[2,15]),e(l,[2,22],{46:65,45:66,5:O,27:[1,71],50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P,61:Y}),e(l,[2,25],{46:65,45:66,5:O,27:[1,72],50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P,61:Y}),e(l,[2,26],{46:65,45:66,5:O,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P,61:Y}),e(l,[2,27],{46:65,45:66,5:O,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P,61:Y}),e(l,[2,28],{46:65,45:66,5:O,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P,61:Y}),e(l,[2,29],{46:65,45:66,5:O,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P,61:Y}),{24:[1,73]},e(z,[2,40]),e(z,[2,56]),e(z,[2,57]),e(z,[2,58]),{35:74,44:Tt},{44:[2,37]},e(l,[2,21],{45:36,22:75,47:Q,48:U,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P}),e(l,[2,24],{45:36,22:76,47:Q,48:U,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P}),{25:[1,77]},e(ht,[2,31]),e(l,[2,20],{46:65,45:66,5:O,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P,61:Y}),e(l,[2,23],{46:65,45:66,5:O,50:T,51:_,52:t,53:m,54:b,55:A,56:S,57:v,58:k,59:F,60:P,61:Y}),e(l,[2,19])],defaultActions:{10:[2,35],11:[2,1],12:[2,2],13:[2,3],70:[2,37]},parseError:function(n,r){if(r.recoverable)this.trace(n);else{var d=new Error(n);throw d.hash=r,d}},parse:function(n){var r=this,d=[0],o=[],q=[null],i=[],et=this.table,u="",st=0,mt=0,Ft=2,bt=1,Pt=i.slice.call(arguments,1),E=Object.create(this.lexer),Z={yy:{}};for(var xt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,xt)&&(Z.yy[xt]=this.yy[xt]);E.setInput(n,Z.yy),Z.yy.lexer=E,Z.yy.parser=this,typeof E.yylloc>"u"&&(E.yylloc={});var ft=E.yylloc;i.push(ft);var Lt=E.options&&E.options.ranges;typeof Z.yy.parseError=="function"?this.parseError=Z.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ct(){var G;return G=o.pop()||E.lex()||bt,typeof G!="number"&&(G instanceof Array&&(o=G,G=o.pop()),G=r.symbols_[G]||G),G}for(var R,J,H,gt,tt={},lt,j,At,ot;;){if(J=d[d.length-1],this.defaultActions[J]?H=this.defaultActions[J]:((R===null||typeof R>"u")&&(R=Ct()),H=et[J]&&et[J][R]),typeof H>"u"||!H.length||!H[0]){var pt="";ot=[];for(lt in et[J])this.terminals_[lt]&<>Ft&&ot.push("'"+this.terminals_[lt]+"'");E.showPosition?pt="Parse error on line "+(st+1)+`: `+E.showPosition()+` Expecting `+ot.join(", ")+", got '"+(this.terminals_[R]||R)+"'":pt="Parse error on line "+(st+1)+": Unexpected "+(R==bt?"end of input":"'"+(this.terminals_[R]||R)+"'"),this.parseError(pt,{text:E.match,token:this.terminals_[R]||R,line:E.yylineno,loc:ft,expected:ot})}if(H[0]instanceof Array&&H.length>1)throw new Error("Parse Error: multiple actions possible at state: "+J+", token: "+R);switch(H[0]){case 1:d.push(R),q.push(E.yytext),i.push(E.yylloc),d.push(H[1]),R=null,mt=E.yyleng,u=E.yytext,st=E.yylineno,ft=E.yylloc;break;case 2:if(j=this.productions_[H[1]][1],tt.$=q[q.length-j],tt._$={first_line:i[i.length-(j||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(j||1)].first_column,last_column:i[i.length-1].last_column},Lt&&(tt._$.range=[i[i.length-(j||1)].range[0],i[i.length-1].range[1]]),gt=this.performAction.apply(tt,[u,mt,st,Z.yy,H[1],q,i].concat(Pt)),typeof gt<"u")return gt;j&&(d=d.slice(0,-1*j*2),q=q.slice(0,-1*j),i=i.slice(0,-1*j)),d.push(this.productions_[H[1]][0]),q.push(tt.$),i.push(tt._$),At=et[d[d.length-2]][d[d.length-1]],d.push(At);break;case 3:return!0}}return!0}},kt=function(){var K={EOF:1,parseError:function(r,d){if(this.yy.parser)this.yy.parser.parseError(r,d);else throw new Error(r)},setInput:function(n,r){return this.yy=r||this.yy||{},this._input=n,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var n=this._input[0];this.yytext+=n,this.yyleng++,this.offset++,this.match+=n,this.matched+=n;var r=n.match(/(?:\r\n?|\n).*/g);return r?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),n},unput:function(n){var r=n.length,d=n.split(/(?:\r\n?|\n)/g);this._input=n+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-r),this.offset-=r;var o=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),d.length-1&&(this.yylineno-=d.length-1);var q=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:d?(d.length===o.length?this.yylloc.first_column:0)+o[o.length-d.length].length-d[0].length:this.yylloc.first_column-r},this.options.ranges&&(this.yylloc.range=[q[0],q[0]+this.yyleng-r]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(n){this.unput(this.match.slice(n))},pastInput:function(){var n=this.matched.substr(0,this.matched.length-this.match.length);return(n.length>20?"...":"")+n.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var n=this.match;return n.length<20&&(n+=this._input.substr(0,20-n.length)),(n.substr(0,20)+(n.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var n=this.pastInput(),r=new Array(n.length+1).join("-");return n+this.upcomingInput()+` diff --git a/pr-383/assets/chunks/requirementDiagram-b2d6a344.80e58b3e.js b/pr-383/assets/chunks/requirementDiagram-b2d6a344.ee281397.js similarity index 99% rename from pr-383/assets/chunks/requirementDiagram-b2d6a344.80e58b3e.js rename to pr-383/assets/chunks/requirementDiagram-b2d6a344.ee281397.js index 86033bee1..8e64b4128 100644 --- a/pr-383/assets/chunks/requirementDiagram-b2d6a344.80e58b3e.js +++ b/pr-383/assets/chunks/requirementDiagram-b2d6a344.ee281397.js @@ -1,4 +1,4 @@ -import{c as ve,s as Fe,g as Me,b as Pe,a as Ye,m as Ue,l as xe,z as Be,h as oe,i as Qe,j as Te}from"../app.34e6398e.js";import{G as He,l as We}from"./layout.ca521a87.js";import{l as Ke}from"./line.075f786d.js";import"./framework.be0a7370.js";import"./theme.e11407bf.js";import"./array.9f3ba611.js";import"./path.53f90ab3.js";var he=function(){var e=function(q,r,s,l){for(s=s||{},l=q.length;l--;s[q[l]]=r);return s},t=[1,3],a=[1,5],o=[1,6],d=[1,7],u=[1,8],p=[5,6,8,14,16,18,19,40,41,42,43,44,45,53,71,72],h=[1,22],c=[2,13],g=[1,26],R=[1,27],v=[1,28],S=[1,29],T=[1,30],x=[1,31],A=[1,24],N=[1,32],w=[1,33],pe=[1,36],F=[71,72],_e=[5,8,14,16,18,19,40,41,42,43,44,45,53,60,62,71,72],fe=[1,56],ye=[1,57],ge=[1,58],Ee=[1,59],Re=[1,60],me=[1,61],Ie=[1,62],L=[62,63],M=[1,74],P=[1,70],Y=[1,71],U=[1,72],B=[1,73],Q=[1,75],j=[1,79],X=[1,80],J=[1,77],Z=[1,78],m=[5,8,14,16,18,19,40,41,42,43,44,45,53,71,72],re={trace:function(){},yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,openDirective:9,typeDirective:10,closeDirective:11,":":12,argDirective:13,acc_title:14,acc_title_value:15,acc_descr:16,acc_descr_value:17,acc_descr_multiline_value:18,open_directive:19,type_directive:20,arg_directive:21,close_directive:22,requirementDef:23,elementDef:24,relationshipDef:25,requirementType:26,requirementName:27,STRUCT_START:28,requirementBody:29,ID:30,COLONSEP:31,id:32,TEXT:33,text:34,RISK:35,riskLevel:36,VERIFYMTHD:37,verifyType:38,STRUCT_STOP:39,REQUIREMENT:40,FUNCTIONAL_REQUIREMENT:41,INTERFACE_REQUIREMENT:42,PERFORMANCE_REQUIREMENT:43,PHYSICAL_REQUIREMENT:44,DESIGN_CONSTRAINT:45,LOW_RISK:46,MED_RISK:47,HIGH_RISK:48,VERIFY_ANALYSIS:49,VERIFY_DEMONSTRATION:50,VERIFY_INSPECTION:51,VERIFY_TEST:52,ELEMENT:53,elementName:54,elementBody:55,TYPE:56,type:57,DOCREF:58,ref:59,END_ARROW_L:60,relationship:61,LINE:62,END_ARROW_R:63,CONTAINS:64,COPIES:65,DERIVES:66,SATISFIES:67,VERIFIES:68,REFINES:69,TRACES:70,unqString:71,qString:72,$accept:0,$end:1},terminals_:{2:"error",5:"NEWLINE",6:"RD",8:"EOF",12:":",14:"acc_title",15:"acc_title_value",16:"acc_descr",17:"acc_descr_value",18:"acc_descr_multiline_value",19:"open_directive",20:"type_directive",21:"arg_directive",22:"close_directive",28:"STRUCT_START",30:"ID",31:"COLONSEP",33:"TEXT",35:"RISK",37:"VERIFYMTHD",39:"STRUCT_STOP",40:"REQUIREMENT",41:"FUNCTIONAL_REQUIREMENT",42:"INTERFACE_REQUIREMENT",43:"PERFORMANCE_REQUIREMENT",44:"PHYSICAL_REQUIREMENT",45:"DESIGN_CONSTRAINT",46:"LOW_RISK",47:"MED_RISK",48:"HIGH_RISK",49:"VERIFY_ANALYSIS",50:"VERIFY_DEMONSTRATION",51:"VERIFY_INSPECTION",52:"VERIFY_TEST",53:"ELEMENT",56:"TYPE",58:"DOCREF",60:"END_ARROW_L",62:"LINE",63:"END_ARROW_R",64:"CONTAINS",65:"COPIES",66:"DERIVES",67:"SATISFIES",68:"VERIFIES",69:"REFINES",70:"TRACES",71:"unqString",72:"qString"},productions_:[0,[3,3],[3,2],[3,4],[4,3],[4,5],[4,2],[4,2],[4,1],[9,1],[10,1],[13,1],[11,1],[7,0],[7,2],[7,2],[7,2],[7,2],[7,2],[23,5],[29,5],[29,5],[29,5],[29,5],[29,2],[29,1],[26,1],[26,1],[26,1],[26,1],[26,1],[26,1],[36,1],[36,1],[36,1],[38,1],[38,1],[38,1],[38,1],[24,5],[55,5],[55,5],[55,2],[55,1],[25,5],[25,5],[61,1],[61,1],[61,1],[61,1],[61,1],[61,1],[61,1],[27,1],[27,1],[32,1],[32,1],[34,1],[34,1],[54,1],[54,1],[57,1],[57,1],[59,1],[59,1]],performAction:function(r,s,l,i,f,n,K){var _=n.length-1;switch(f){case 6:this.$=n[_].trim(),i.setAccTitle(this.$);break;case 7:case 8:this.$=n[_].trim(),i.setAccDescription(this.$);break;case 9:i.parseDirective("%%{","open_directive");break;case 10:i.parseDirective(n[_],"type_directive");break;case 11:n[_]=n[_].trim().replace(/'/g,'"'),i.parseDirective(n[_],"arg_directive");break;case 12:i.parseDirective("}%%","close_directive","pie");break;case 13:this.$=[];break;case 19:i.addRequirement(n[_-3],n[_-4]);break;case 20:i.setNewReqId(n[_-2]);break;case 21:i.setNewReqText(n[_-2]);break;case 22:i.setNewReqRisk(n[_-2]);break;case 23:i.setNewReqVerifyMethod(n[_-2]);break;case 26:this.$=i.RequirementType.REQUIREMENT;break;case 27:this.$=i.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 28:this.$=i.RequirementType.INTERFACE_REQUIREMENT;break;case 29:this.$=i.RequirementType.PERFORMANCE_REQUIREMENT;break;case 30:this.$=i.RequirementType.PHYSICAL_REQUIREMENT;break;case 31:this.$=i.RequirementType.DESIGN_CONSTRAINT;break;case 32:this.$=i.RiskLevel.LOW_RISK;break;case 33:this.$=i.RiskLevel.MED_RISK;break;case 34:this.$=i.RiskLevel.HIGH_RISK;break;case 35:this.$=i.VerifyType.VERIFY_ANALYSIS;break;case 36:this.$=i.VerifyType.VERIFY_DEMONSTRATION;break;case 37:this.$=i.VerifyType.VERIFY_INSPECTION;break;case 38:this.$=i.VerifyType.VERIFY_TEST;break;case 39:i.addElement(n[_-3]);break;case 40:i.setNewElementType(n[_-2]);break;case 41:i.setNewElementDocRef(n[_-2]);break;case 44:i.addRelationship(n[_-2],n[_],n[_-4]);break;case 45:i.addRelationship(n[_-2],n[_-4],n[_]);break;case 46:this.$=i.Relationships.CONTAINS;break;case 47:this.$=i.Relationships.COPIES;break;case 48:this.$=i.Relationships.DERIVES;break;case 49:this.$=i.Relationships.SATISFIES;break;case 50:this.$=i.Relationships.VERIFIES;break;case 51:this.$=i.Relationships.REFINES;break;case 52:this.$=i.Relationships.TRACES;break}},table:[{3:1,4:2,6:t,9:4,14:a,16:o,18:d,19:u},{1:[3]},{3:10,4:2,5:[1,9],6:t,9:4,14:a,16:o,18:d,19:u},{5:[1,11]},{10:12,20:[1,13]},{15:[1,14]},{17:[1,15]},e(p,[2,8]),{20:[2,9]},{3:16,4:2,6:t,9:4,14:a,16:o,18:d,19:u},{1:[2,2]},{4:21,5:h,7:17,8:c,9:4,14:a,16:o,18:d,19:u,23:18,24:19,25:20,26:23,32:25,40:g,41:R,42:v,43:S,44:T,45:x,53:A,71:N,72:w},{11:34,12:[1,35],22:pe},e([12,22],[2,10]),e(p,[2,6]),e(p,[2,7]),{1:[2,1]},{8:[1,37]},{4:21,5:h,7:38,8:c,9:4,14:a,16:o,18:d,19:u,23:18,24:19,25:20,26:23,32:25,40:g,41:R,42:v,43:S,44:T,45:x,53:A,71:N,72:w},{4:21,5:h,7:39,8:c,9:4,14:a,16:o,18:d,19:u,23:18,24:19,25:20,26:23,32:25,40:g,41:R,42:v,43:S,44:T,45:x,53:A,71:N,72:w},{4:21,5:h,7:40,8:c,9:4,14:a,16:o,18:d,19:u,23:18,24:19,25:20,26:23,32:25,40:g,41:R,42:v,43:S,44:T,45:x,53:A,71:N,72:w},{4:21,5:h,7:41,8:c,9:4,14:a,16:o,18:d,19:u,23:18,24:19,25:20,26:23,32:25,40:g,41:R,42:v,43:S,44:T,45:x,53:A,71:N,72:w},{4:21,5:h,7:42,8:c,9:4,14:a,16:o,18:d,19:u,23:18,24:19,25:20,26:23,32:25,40:g,41:R,42:v,43:S,44:T,45:x,53:A,71:N,72:w},{27:43,71:[1,44],72:[1,45]},{54:46,71:[1,47],72:[1,48]},{60:[1,49],62:[1,50]},e(F,[2,26]),e(F,[2,27]),e(F,[2,28]),e(F,[2,29]),e(F,[2,30]),e(F,[2,31]),e(_e,[2,55]),e(_e,[2,56]),e(p,[2,4]),{13:51,21:[1,52]},e(p,[2,12]),{1:[2,3]},{8:[2,14]},{8:[2,15]},{8:[2,16]},{8:[2,17]},{8:[2,18]},{28:[1,53]},{28:[2,53]},{28:[2,54]},{28:[1,54]},{28:[2,59]},{28:[2,60]},{61:55,64:fe,65:ye,66:ge,67:Ee,68:Re,69:me,70:Ie},{61:63,64:fe,65:ye,66:ge,67:Ee,68:Re,69:me,70:Ie},{11:64,22:pe},{22:[2,11]},{5:[1,65]},{5:[1,66]},{62:[1,67]},e(L,[2,46]),e(L,[2,47]),e(L,[2,48]),e(L,[2,49]),e(L,[2,50]),e(L,[2,51]),e(L,[2,52]),{63:[1,68]},e(p,[2,5]),{5:M,29:69,30:P,33:Y,35:U,37:B,39:Q},{5:j,39:X,55:76,56:J,58:Z},{32:81,71:N,72:w},{32:82,71:N,72:w},e(m,[2,19]),{31:[1,83]},{31:[1,84]},{31:[1,85]},{31:[1,86]},{5:M,29:87,30:P,33:Y,35:U,37:B,39:Q},e(m,[2,25]),e(m,[2,39]),{31:[1,88]},{31:[1,89]},{5:j,39:X,55:90,56:J,58:Z},e(m,[2,43]),e(m,[2,44]),e(m,[2,45]),{32:91,71:N,72:w},{34:92,71:[1,93],72:[1,94]},{36:95,46:[1,96],47:[1,97],48:[1,98]},{38:99,49:[1,100],50:[1,101],51:[1,102],52:[1,103]},e(m,[2,24]),{57:104,71:[1,105],72:[1,106]},{59:107,71:[1,108],72:[1,109]},e(m,[2,42]),{5:[1,110]},{5:[1,111]},{5:[2,57]},{5:[2,58]},{5:[1,112]},{5:[2,32]},{5:[2,33]},{5:[2,34]},{5:[1,113]},{5:[2,35]},{5:[2,36]},{5:[2,37]},{5:[2,38]},{5:[1,114]},{5:[2,61]},{5:[2,62]},{5:[1,115]},{5:[2,63]},{5:[2,64]},{5:M,29:116,30:P,33:Y,35:U,37:B,39:Q},{5:M,29:117,30:P,33:Y,35:U,37:B,39:Q},{5:M,29:118,30:P,33:Y,35:U,37:B,39:Q},{5:M,29:119,30:P,33:Y,35:U,37:B,39:Q},{5:j,39:X,55:120,56:J,58:Z},{5:j,39:X,55:121,56:J,58:Z},e(m,[2,20]),e(m,[2,21]),e(m,[2,22]),e(m,[2,23]),e(m,[2,40]),e(m,[2,41])],defaultActions:{8:[2,9],10:[2,2],16:[2,1],37:[2,3],38:[2,14],39:[2,15],40:[2,16],41:[2,17],42:[2,18],44:[2,53],45:[2,54],47:[2,59],48:[2,60],52:[2,11],93:[2,57],94:[2,58],96:[2,32],97:[2,33],98:[2,34],100:[2,35],101:[2,36],102:[2,37],103:[2,38],105:[2,61],106:[2,62],108:[2,63],109:[2,64]},parseError:function(r,s){if(s.recoverable)this.trace(r);else{var l=new Error(r);throw l.hash=s,l}},parse:function(r){var s=this,l=[0],i=[],f=[null],n=[],K=this.table,_="",ee=0,be=0,Oe=2,ke=1,Le=n.slice.call(arguments,1),E=Object.create(this.lexer),C={yy:{}};for(var se in this.yy)Object.prototype.hasOwnProperty.call(this.yy,se)&&(C.yy[se]=this.yy[se]);E.setInput(r,C.yy),C.yy.lexer=E,C.yy.parser=this,typeof E.yylloc>"u"&&(E.yylloc={});var ae=E.yylloc;n.push(ae);var Ce=E.options&&E.options.ranges;typeof C.yy.parseError=="function"?this.parseError=C.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function De(){var $;return $=i.pop()||E.lex()||ke,typeof $!="number"&&($ instanceof Array&&(i=$,$=i.pop()),$=s.symbols_[$]||$),$}for(var I,D,k,le,H={},te,V,Se,ie;;){if(D=l[l.length-1],this.defaultActions[D]?k=this.defaultActions[D]:((I===null||typeof I>"u")&&(I=De()),k=K[D]&&K[D][I]),typeof k>"u"||!k.length||!k[0]){var ce="";ie=[];for(te in K[D])this.terminals_[te]&&te>Oe&&ie.push("'"+this.terminals_[te]+"'");E.showPosition?ce="Parse error on line "+(ee+1)+`: +import{c as ve,s as Fe,g as Me,b as Pe,a as Ye,m as Ue,l as xe,z as Be,h as oe,i as Qe,j as Te}from"../app.3c4fe3d0.js";import{G as He,l as We}from"./layout.66644227.js";import{l as Ke}from"./line.809d7f74.js";import"./framework.be0a7370.js";import"./theme.71fa6e36.js";import"./array.9f3ba611.js";import"./path.53f90ab3.js";var he=function(){var e=function(q,r,s,l){for(s=s||{},l=q.length;l--;s[q[l]]=r);return s},t=[1,3],a=[1,5],o=[1,6],d=[1,7],u=[1,8],p=[5,6,8,14,16,18,19,40,41,42,43,44,45,53,71,72],h=[1,22],c=[2,13],g=[1,26],R=[1,27],v=[1,28],S=[1,29],T=[1,30],x=[1,31],A=[1,24],N=[1,32],w=[1,33],pe=[1,36],F=[71,72],_e=[5,8,14,16,18,19,40,41,42,43,44,45,53,60,62,71,72],fe=[1,56],ye=[1,57],ge=[1,58],Ee=[1,59],Re=[1,60],me=[1,61],Ie=[1,62],L=[62,63],M=[1,74],P=[1,70],Y=[1,71],U=[1,72],B=[1,73],Q=[1,75],j=[1,79],X=[1,80],J=[1,77],Z=[1,78],m=[5,8,14,16,18,19,40,41,42,43,44,45,53,71,72],re={trace:function(){},yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,openDirective:9,typeDirective:10,closeDirective:11,":":12,argDirective:13,acc_title:14,acc_title_value:15,acc_descr:16,acc_descr_value:17,acc_descr_multiline_value:18,open_directive:19,type_directive:20,arg_directive:21,close_directive:22,requirementDef:23,elementDef:24,relationshipDef:25,requirementType:26,requirementName:27,STRUCT_START:28,requirementBody:29,ID:30,COLONSEP:31,id:32,TEXT:33,text:34,RISK:35,riskLevel:36,VERIFYMTHD:37,verifyType:38,STRUCT_STOP:39,REQUIREMENT:40,FUNCTIONAL_REQUIREMENT:41,INTERFACE_REQUIREMENT:42,PERFORMANCE_REQUIREMENT:43,PHYSICAL_REQUIREMENT:44,DESIGN_CONSTRAINT:45,LOW_RISK:46,MED_RISK:47,HIGH_RISK:48,VERIFY_ANALYSIS:49,VERIFY_DEMONSTRATION:50,VERIFY_INSPECTION:51,VERIFY_TEST:52,ELEMENT:53,elementName:54,elementBody:55,TYPE:56,type:57,DOCREF:58,ref:59,END_ARROW_L:60,relationship:61,LINE:62,END_ARROW_R:63,CONTAINS:64,COPIES:65,DERIVES:66,SATISFIES:67,VERIFIES:68,REFINES:69,TRACES:70,unqString:71,qString:72,$accept:0,$end:1},terminals_:{2:"error",5:"NEWLINE",6:"RD",8:"EOF",12:":",14:"acc_title",15:"acc_title_value",16:"acc_descr",17:"acc_descr_value",18:"acc_descr_multiline_value",19:"open_directive",20:"type_directive",21:"arg_directive",22:"close_directive",28:"STRUCT_START",30:"ID",31:"COLONSEP",33:"TEXT",35:"RISK",37:"VERIFYMTHD",39:"STRUCT_STOP",40:"REQUIREMENT",41:"FUNCTIONAL_REQUIREMENT",42:"INTERFACE_REQUIREMENT",43:"PERFORMANCE_REQUIREMENT",44:"PHYSICAL_REQUIREMENT",45:"DESIGN_CONSTRAINT",46:"LOW_RISK",47:"MED_RISK",48:"HIGH_RISK",49:"VERIFY_ANALYSIS",50:"VERIFY_DEMONSTRATION",51:"VERIFY_INSPECTION",52:"VERIFY_TEST",53:"ELEMENT",56:"TYPE",58:"DOCREF",60:"END_ARROW_L",62:"LINE",63:"END_ARROW_R",64:"CONTAINS",65:"COPIES",66:"DERIVES",67:"SATISFIES",68:"VERIFIES",69:"REFINES",70:"TRACES",71:"unqString",72:"qString"},productions_:[0,[3,3],[3,2],[3,4],[4,3],[4,5],[4,2],[4,2],[4,1],[9,1],[10,1],[13,1],[11,1],[7,0],[7,2],[7,2],[7,2],[7,2],[7,2],[23,5],[29,5],[29,5],[29,5],[29,5],[29,2],[29,1],[26,1],[26,1],[26,1],[26,1],[26,1],[26,1],[36,1],[36,1],[36,1],[38,1],[38,1],[38,1],[38,1],[24,5],[55,5],[55,5],[55,2],[55,1],[25,5],[25,5],[61,1],[61,1],[61,1],[61,1],[61,1],[61,1],[61,1],[27,1],[27,1],[32,1],[32,1],[34,1],[34,1],[54,1],[54,1],[57,1],[57,1],[59,1],[59,1]],performAction:function(r,s,l,i,f,n,K){var _=n.length-1;switch(f){case 6:this.$=n[_].trim(),i.setAccTitle(this.$);break;case 7:case 8:this.$=n[_].trim(),i.setAccDescription(this.$);break;case 9:i.parseDirective("%%{","open_directive");break;case 10:i.parseDirective(n[_],"type_directive");break;case 11:n[_]=n[_].trim().replace(/'/g,'"'),i.parseDirective(n[_],"arg_directive");break;case 12:i.parseDirective("}%%","close_directive","pie");break;case 13:this.$=[];break;case 19:i.addRequirement(n[_-3],n[_-4]);break;case 20:i.setNewReqId(n[_-2]);break;case 21:i.setNewReqText(n[_-2]);break;case 22:i.setNewReqRisk(n[_-2]);break;case 23:i.setNewReqVerifyMethod(n[_-2]);break;case 26:this.$=i.RequirementType.REQUIREMENT;break;case 27:this.$=i.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 28:this.$=i.RequirementType.INTERFACE_REQUIREMENT;break;case 29:this.$=i.RequirementType.PERFORMANCE_REQUIREMENT;break;case 30:this.$=i.RequirementType.PHYSICAL_REQUIREMENT;break;case 31:this.$=i.RequirementType.DESIGN_CONSTRAINT;break;case 32:this.$=i.RiskLevel.LOW_RISK;break;case 33:this.$=i.RiskLevel.MED_RISK;break;case 34:this.$=i.RiskLevel.HIGH_RISK;break;case 35:this.$=i.VerifyType.VERIFY_ANALYSIS;break;case 36:this.$=i.VerifyType.VERIFY_DEMONSTRATION;break;case 37:this.$=i.VerifyType.VERIFY_INSPECTION;break;case 38:this.$=i.VerifyType.VERIFY_TEST;break;case 39:i.addElement(n[_-3]);break;case 40:i.setNewElementType(n[_-2]);break;case 41:i.setNewElementDocRef(n[_-2]);break;case 44:i.addRelationship(n[_-2],n[_],n[_-4]);break;case 45:i.addRelationship(n[_-2],n[_-4],n[_]);break;case 46:this.$=i.Relationships.CONTAINS;break;case 47:this.$=i.Relationships.COPIES;break;case 48:this.$=i.Relationships.DERIVES;break;case 49:this.$=i.Relationships.SATISFIES;break;case 50:this.$=i.Relationships.VERIFIES;break;case 51:this.$=i.Relationships.REFINES;break;case 52:this.$=i.Relationships.TRACES;break}},table:[{3:1,4:2,6:t,9:4,14:a,16:o,18:d,19:u},{1:[3]},{3:10,4:2,5:[1,9],6:t,9:4,14:a,16:o,18:d,19:u},{5:[1,11]},{10:12,20:[1,13]},{15:[1,14]},{17:[1,15]},e(p,[2,8]),{20:[2,9]},{3:16,4:2,6:t,9:4,14:a,16:o,18:d,19:u},{1:[2,2]},{4:21,5:h,7:17,8:c,9:4,14:a,16:o,18:d,19:u,23:18,24:19,25:20,26:23,32:25,40:g,41:R,42:v,43:S,44:T,45:x,53:A,71:N,72:w},{11:34,12:[1,35],22:pe},e([12,22],[2,10]),e(p,[2,6]),e(p,[2,7]),{1:[2,1]},{8:[1,37]},{4:21,5:h,7:38,8:c,9:4,14:a,16:o,18:d,19:u,23:18,24:19,25:20,26:23,32:25,40:g,41:R,42:v,43:S,44:T,45:x,53:A,71:N,72:w},{4:21,5:h,7:39,8:c,9:4,14:a,16:o,18:d,19:u,23:18,24:19,25:20,26:23,32:25,40:g,41:R,42:v,43:S,44:T,45:x,53:A,71:N,72:w},{4:21,5:h,7:40,8:c,9:4,14:a,16:o,18:d,19:u,23:18,24:19,25:20,26:23,32:25,40:g,41:R,42:v,43:S,44:T,45:x,53:A,71:N,72:w},{4:21,5:h,7:41,8:c,9:4,14:a,16:o,18:d,19:u,23:18,24:19,25:20,26:23,32:25,40:g,41:R,42:v,43:S,44:T,45:x,53:A,71:N,72:w},{4:21,5:h,7:42,8:c,9:4,14:a,16:o,18:d,19:u,23:18,24:19,25:20,26:23,32:25,40:g,41:R,42:v,43:S,44:T,45:x,53:A,71:N,72:w},{27:43,71:[1,44],72:[1,45]},{54:46,71:[1,47],72:[1,48]},{60:[1,49],62:[1,50]},e(F,[2,26]),e(F,[2,27]),e(F,[2,28]),e(F,[2,29]),e(F,[2,30]),e(F,[2,31]),e(_e,[2,55]),e(_e,[2,56]),e(p,[2,4]),{13:51,21:[1,52]},e(p,[2,12]),{1:[2,3]},{8:[2,14]},{8:[2,15]},{8:[2,16]},{8:[2,17]},{8:[2,18]},{28:[1,53]},{28:[2,53]},{28:[2,54]},{28:[1,54]},{28:[2,59]},{28:[2,60]},{61:55,64:fe,65:ye,66:ge,67:Ee,68:Re,69:me,70:Ie},{61:63,64:fe,65:ye,66:ge,67:Ee,68:Re,69:me,70:Ie},{11:64,22:pe},{22:[2,11]},{5:[1,65]},{5:[1,66]},{62:[1,67]},e(L,[2,46]),e(L,[2,47]),e(L,[2,48]),e(L,[2,49]),e(L,[2,50]),e(L,[2,51]),e(L,[2,52]),{63:[1,68]},e(p,[2,5]),{5:M,29:69,30:P,33:Y,35:U,37:B,39:Q},{5:j,39:X,55:76,56:J,58:Z},{32:81,71:N,72:w},{32:82,71:N,72:w},e(m,[2,19]),{31:[1,83]},{31:[1,84]},{31:[1,85]},{31:[1,86]},{5:M,29:87,30:P,33:Y,35:U,37:B,39:Q},e(m,[2,25]),e(m,[2,39]),{31:[1,88]},{31:[1,89]},{5:j,39:X,55:90,56:J,58:Z},e(m,[2,43]),e(m,[2,44]),e(m,[2,45]),{32:91,71:N,72:w},{34:92,71:[1,93],72:[1,94]},{36:95,46:[1,96],47:[1,97],48:[1,98]},{38:99,49:[1,100],50:[1,101],51:[1,102],52:[1,103]},e(m,[2,24]),{57:104,71:[1,105],72:[1,106]},{59:107,71:[1,108],72:[1,109]},e(m,[2,42]),{5:[1,110]},{5:[1,111]},{5:[2,57]},{5:[2,58]},{5:[1,112]},{5:[2,32]},{5:[2,33]},{5:[2,34]},{5:[1,113]},{5:[2,35]},{5:[2,36]},{5:[2,37]},{5:[2,38]},{5:[1,114]},{5:[2,61]},{5:[2,62]},{5:[1,115]},{5:[2,63]},{5:[2,64]},{5:M,29:116,30:P,33:Y,35:U,37:B,39:Q},{5:M,29:117,30:P,33:Y,35:U,37:B,39:Q},{5:M,29:118,30:P,33:Y,35:U,37:B,39:Q},{5:M,29:119,30:P,33:Y,35:U,37:B,39:Q},{5:j,39:X,55:120,56:J,58:Z},{5:j,39:X,55:121,56:J,58:Z},e(m,[2,20]),e(m,[2,21]),e(m,[2,22]),e(m,[2,23]),e(m,[2,40]),e(m,[2,41])],defaultActions:{8:[2,9],10:[2,2],16:[2,1],37:[2,3],38:[2,14],39:[2,15],40:[2,16],41:[2,17],42:[2,18],44:[2,53],45:[2,54],47:[2,59],48:[2,60],52:[2,11],93:[2,57],94:[2,58],96:[2,32],97:[2,33],98:[2,34],100:[2,35],101:[2,36],102:[2,37],103:[2,38],105:[2,61],106:[2,62],108:[2,63],109:[2,64]},parseError:function(r,s){if(s.recoverable)this.trace(r);else{var l=new Error(r);throw l.hash=s,l}},parse:function(r){var s=this,l=[0],i=[],f=[null],n=[],K=this.table,_="",ee=0,be=0,Oe=2,ke=1,Le=n.slice.call(arguments,1),E=Object.create(this.lexer),C={yy:{}};for(var se in this.yy)Object.prototype.hasOwnProperty.call(this.yy,se)&&(C.yy[se]=this.yy[se]);E.setInput(r,C.yy),C.yy.lexer=E,C.yy.parser=this,typeof E.yylloc>"u"&&(E.yylloc={});var ae=E.yylloc;n.push(ae);var Ce=E.options&&E.options.ranges;typeof C.yy.parseError=="function"?this.parseError=C.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function De(){var $;return $=i.pop()||E.lex()||ke,typeof $!="number"&&($ instanceof Array&&(i=$,$=i.pop()),$=s.symbols_[$]||$),$}for(var I,D,k,le,H={},te,V,Se,ie;;){if(D=l[l.length-1],this.defaultActions[D]?k=this.defaultActions[D]:((I===null||typeof I>"u")&&(I=De()),k=K[D]&&K[D][I]),typeof k>"u"||!k.length||!k[0]){var ce="";ie=[];for(te in K[D])this.terminals_[te]&&te>Oe&&ie.push("'"+this.terminals_[te]+"'");E.showPosition?ce="Parse error on line "+(ee+1)+`: `+E.showPosition()+` Expecting `+ie.join(", ")+", got '"+(this.terminals_[I]||I)+"'":ce="Parse error on line "+(ee+1)+": Unexpected "+(I==ke?"end of input":"'"+(this.terminals_[I]||I)+"'"),this.parseError(ce,{text:E.match,token:this.terminals_[I]||I,line:E.yylineno,loc:ae,expected:ie})}if(k[0]instanceof Array&&k.length>1)throw new Error("Parse Error: multiple actions possible at state: "+D+", token: "+I);switch(k[0]){case 1:l.push(I),f.push(E.yytext),n.push(E.yylloc),l.push(k[1]),I=null,be=E.yyleng,_=E.yytext,ee=E.yylineno,ae=E.yylloc;break;case 2:if(V=this.productions_[k[1]][1],H.$=f[f.length-V],H._$={first_line:n[n.length-(V||1)].first_line,last_line:n[n.length-1].last_line,first_column:n[n.length-(V||1)].first_column,last_column:n[n.length-1].last_column},Ce&&(H._$.range=[n[n.length-(V||1)].range[0],n[n.length-1].range[1]]),le=this.performAction.apply(H,[_,be,ee,C.yy,k[1],f,n].concat(Le)),typeof le<"u")return le;V&&(l=l.slice(0,-1*V*2),f=f.slice(0,-1*V),n=n.slice(0,-1*V)),l.push(this.productions_[k[1]][0]),f.push(H.$),n.push(H._$),Se=K[l[l.length-2]][l[l.length-1]],l.push(Se);break;case 3:return!0}}return!0}},qe=function(){var q={EOF:1,parseError:function(s,l){if(this.yy.parser)this.yy.parser.parseError(s,l);else throw new Error(s)},setInput:function(r,s){return this.yy=s||this.yy||{},this._input=r,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var r=this._input[0];this.yytext+=r,this.yyleng++,this.offset++,this.match+=r,this.matched+=r;var s=r.match(/(?:\r\n?|\n).*/g);return s?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),r},unput:function(r){var s=r.length,l=r.split(/(?:\r\n?|\n)/g);this._input=r+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-s),this.offset-=s;var i=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),l.length-1&&(this.yylineno-=l.length-1);var f=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:l?(l.length===i.length?this.yylloc.first_column:0)+i[i.length-l.length].length-l[0].length:this.yylloc.first_column-s},this.options.ranges&&(this.yylloc.range=[f[0],f[0]+this.yyleng-s]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(r){this.unput(this.match.slice(r))},pastInput:function(){var r=this.matched.substr(0,this.matched.length-this.match.length);return(r.length>20?"...":"")+r.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var r=this.match;return r.length<20&&(r+=this._input.substr(0,20-r.length)),(r.substr(0,20)+(r.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var r=this.pastInput(),s=new Array(r.length+1).join("-");return r+this.upcomingInput()+` diff --git a/pr-383/assets/chunks/sankeyDiagram-e679478d.fd7d6ecc.js b/pr-383/assets/chunks/sankeyDiagram-e679478d.72f10021.js similarity index 99% rename from pr-383/assets/chunks/sankeyDiagram-e679478d.fd7d6ecc.js rename to pr-383/assets/chunks/sankeyDiagram-e679478d.72f10021.js index a540453b6..6e4e80fc1 100644 --- a/pr-383/assets/chunks/sankeyDiagram-e679478d.fd7d6ecc.js +++ b/pr-383/assets/chunks/sankeyDiagram-e679478d.72f10021.js @@ -1,4 +1,4 @@ -import{c as ot,g as pt,s as mt,a as _t,b as kt,x as xt,v as vt,z as bt,j as wt,u as St,h as Y,i as Lt}from"../app.34e6398e.js";import{o as Et}from"./ordinal.b935e931.js";import"./framework.be0a7370.js";import"./theme.e11407bf.js";import"./init.77b53fdd.js";function At(t){for(var n=t.length/6|0,i=new Array(n),l=0;l=l)&&(i=l);else{let l=-1;for(let u of t)(u=n(u,++l,t))!=null&&(i=u)&&(i=u)}return i}function yt(t,n){let i;if(n===void 0)for(const l of t)l!=null&&(i>l||i===void 0&&l>=l)&&(i=l);else{let l=-1;for(let u of t)(u=n(u,++l,t))!=null&&(i>u||i===void 0&&u>=u)&&(i=u)}return i}function Z(t,n){let i=0;if(n===void 0)for(let l of t)(l=+l)&&(i+=l);else{let l=-1;for(let u of t)(u=+n(u,++l,t))&&(i+=u)}return i}function Mt(t){return t.target.depth}function Nt(t){return t.depth}function Pt(t,n){return n-1-t.height}function dt(t,n){return t.sourceLinks.length?t.depth:n-1}function Ct(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?yt(t.sourceLinks,Mt)-1:0}function G(t){return function(){return t}}function at(t,n){return H(t.source,n.source)||t.index-n.index}function ct(t,n){return H(t.target,n.target)||t.index-n.index}function H(t,n){return t.y0-n.y0}function J(t){return t.value}function It(t){return t.index}function Ot(t){return t.nodes}function zt(t){return t.links}function ut(t,n){const i=t.get(n);if(!i)throw new Error("missing: "+n);return i}function ht({nodes:t}){for(const n of t){let i=n.y0,l=i;for(const u of n.sourceLinks)u.y0=i+u.width/2,i+=u.width;for(const u of n.targetLinks)u.y1=l+u.width/2,l+=u.width}}function $t(){let t=0,n=0,i=1,l=1,u=24,v=8,_,p=It,s=dt,o,c,g=Ot,b=zt,d=6;function k(){const e={nodes:g.apply(null,arguments),links:b.apply(null,arguments)};return E(e),M(e),P(e),A(e),w(e),ht(e),e}k.update=function(e){return ht(e),e},k.nodeId=function(e){return arguments.length?(p=typeof e=="function"?e:G(e),k):p},k.nodeAlign=function(e){return arguments.length?(s=typeof e=="function"?e:G(e),k):s},k.nodeSort=function(e){return arguments.length?(o=e,k):o},k.nodeWidth=function(e){return arguments.length?(u=+e,k):u},k.nodePadding=function(e){return arguments.length?(v=_=+e,k):v},k.nodes=function(e){return arguments.length?(g=typeof e=="function"?e:G(e),k):g},k.links=function(e){return arguments.length?(b=typeof e=="function"?e:G(e),k):b},k.linkSort=function(e){return arguments.length?(c=e,k):c},k.size=function(e){return arguments.length?(t=n=0,i=+e[0],l=+e[1],k):[i-t,l-n]},k.extent=function(e){return arguments.length?(t=+e[0][0],i=+e[1][0],n=+e[0][1],l=+e[1][1],k):[[t,n],[i,l]]},k.iterations=function(e){return arguments.length?(d=+e,k):d};function E({nodes:e,links:f}){for(const[h,r]of e.entries())r.index=h,r.sourceLinks=[],r.targetLinks=[];const a=new Map(e.map((h,r)=>[p(h,r,e),h]));for(const[h,r]of f.entries()){r.index=h;let{source:m,target:x}=r;typeof m!="object"&&(m=r.source=ut(a,m)),typeof x!="object"&&(x=r.target=ut(a,x)),m.sourceLinks.push(r),x.targetLinks.push(r)}if(c!=null)for(const{sourceLinks:h,targetLinks:r}of e)h.sort(c),r.sort(c)}function M({nodes:e}){for(const f of e)f.value=f.fixedValue===void 0?Math.max(Z(f.sourceLinks,J),Z(f.targetLinks,J)):f.fixedValue}function P({nodes:e}){const f=e.length;let a=new Set(e),h=new Set,r=0;for(;a.size;){for(const m of a){m.depth=r;for(const{target:x}of m.sourceLinks)h.add(x)}if(++r>f)throw new Error("circular link");a=h,h=new Set}}function A({nodes:e}){const f=e.length;let a=new Set(e),h=new Set,r=0;for(;a.size;){for(const m of a){m.height=r;for(const{source:x}of m.targetLinks)h.add(x)}if(++r>f)throw new Error("circular link");a=h,h=new Set}}function N({nodes:e}){const f=lt(e,r=>r.depth)+1,a=(i-t-u)/(f-1),h=new Array(f);for(const r of e){const m=Math.max(0,Math.min(f-1,Math.floor(s.call(null,r,f))));r.layer=m,r.x0=t+m*a,r.x1=r.x0+u,h[m]?h[m].push(r):h[m]=[r]}if(o)for(const r of h)r.sort(o);return h}function C(e){const f=yt(e,a=>(l-n-(a.length-1)*_)/Z(a,J));for(const a of e){let h=n;for(const r of a){r.y0=h,r.y1=h+r.value*f,h=r.y1+_;for(const m of r.sourceLinks)m.width=m.value*f}h=(l-h+_)/(a.length+1);for(let r=0;ra.length)-1)),C(f);for(let a=0;a0))continue;let R=(B/O-x.y0)*f;x.y0+=R,x.y1+=R,S(x)}o===void 0&&m.sort(H),$(m,a)}}function L(e,f,a){for(let h=e.length,r=h-2;r>=0;--r){const m=e[r];for(const x of m){let B=0,O=0;for(const{target:F,value:K}of x.sourceLinks){let U=K*(F.layer-x.layer);B+=D(x,F)*U,O+=U}if(!(O>0))continue;let R=(B/O-x.y0)*f;x.y0+=R,x.y1+=R,S(x)}o===void 0&&m.sort(H),$(m,a)}}function $(e,f){const a=e.length>>1,h=e[a];V(e,h.y0-_,a-1,f),W(e,h.y1+_,a+1,f),V(e,l,e.length-1,f),W(e,n,0,f)}function W(e,f,a,h){for(;a1e-6&&(r.y0+=m,r.y1+=m),f=r.y1+_}}function V(e,f,a,h){for(;a>=0;--a){const r=e[a],m=(r.y1-f)*h;m>1e-6&&(r.y0-=m,r.y1-=m),f=r.y0-_}}function S({sourceLinks:e,targetLinks:f}){if(c===void 0){for(const{source:{sourceLinks:a}}of f)a.sort(ct);for(const{target:{targetLinks:a}}of e)a.sort(at)}}function I(e){if(c===void 0)for(const{sourceLinks:f,targetLinks:a}of e)f.sort(ct),a.sort(at)}function T(e,f){let a=e.y0-(e.sourceLinks.length-1)*_/2;for(const{target:h,width:r}of e.sourceLinks){if(h===f)break;a+=r+_}for(const{source:h,width:r}of f.targetLinks){if(h===e)break;a-=r}return a}function D(e,f){let a=f.y0-(f.targetLinks.length-1)*_/2;for(const{source:h,width:r}of f.targetLinks){if(h===e)break;a+=r+_}for(const{target:h,width:r}of e.sourceLinks){if(h===f)break;a-=r}return a}return k}var tt=Math.PI,et=2*tt,z=1e-6,jt=et-z;function nt(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function gt(){return new nt}nt.prototype=gt.prototype={constructor:nt,moveTo:function(t,n){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(t,n){this._+="L"+(this._x1=+t)+","+(this._y1=+n)},quadraticCurveTo:function(t,n,i,l){this._+="Q"+ +t+","+ +n+","+(this._x1=+i)+","+(this._y1=+l)},bezierCurveTo:function(t,n,i,l,u,v){this._+="C"+ +t+","+ +n+","+ +i+","+ +l+","+(this._x1=+u)+","+(this._y1=+v)},arcTo:function(t,n,i,l,u){t=+t,n=+n,i=+i,l=+l,u=+u;var v=this._x1,_=this._y1,p=i-t,s=l-n,o=v-t,c=_-n,g=o*o+c*c;if(u<0)throw new Error("negative radius: "+u);if(this._x1===null)this._+="M"+(this._x1=t)+","+(this._y1=n);else if(g>z)if(!(Math.abs(c*p-s*o)>z)||!u)this._+="L"+(this._x1=t)+","+(this._y1=n);else{var b=i-v,d=l-_,k=p*p+s*s,E=b*b+d*d,M=Math.sqrt(k),P=Math.sqrt(g),A=u*Math.tan((tt-Math.acos((k+g-E)/(2*M*P)))/2),N=A/P,C=A/M;Math.abs(N-1)>z&&(this._+="L"+(t+N*o)+","+(n+N*c)),this._+="A"+u+","+u+",0,0,"+ +(c*b>o*d)+","+(this._x1=t+C*p)+","+(this._y1=n+C*s)}},arc:function(t,n,i,l,u,v){t=+t,n=+n,i=+i,v=!!v;var _=i*Math.cos(l),p=i*Math.sin(l),s=t+_,o=n+p,c=1^v,g=v?l-u:u-l;if(i<0)throw new Error("negative radius: "+i);this._x1===null?this._+="M"+s+","+o:(Math.abs(this._x1-s)>z||Math.abs(this._y1-o)>z)&&(this._+="L"+s+","+o),i&&(g<0&&(g=g%et+et),g>jt?this._+="A"+i+","+i+",0,1,"+c+","+(t-_)+","+(n-p)+"A"+i+","+i+",0,1,"+c+","+(this._x1=s)+","+(this._y1=o):g>z&&(this._+="A"+i+","+i+",0,"+ +(g>=tt)+","+c+","+(this._x1=t+i*Math.cos(u))+","+(this._y1=n+i*Math.sin(u))))},rect:function(t,n,i,l){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)+"h"+ +i+"v"+ +l+"h"+-i+"Z"},toString:function(){return this._}};function ft(t){return function(){return t}}function Dt(t){return t[0]}function Bt(t){return t[1]}var Rt=Array.prototype.slice;function Ft(t){return t.source}function Ut(t){return t.target}function Wt(t){var n=Ft,i=Ut,l=Dt,u=Bt,v=null;function _(){var p,s=Rt.call(arguments),o=n.apply(this,s),c=i.apply(this,s);if(v||(v=p=gt()),t(v,+l.apply(this,(s[0]=o,s)),+u.apply(this,s),+l.apply(this,(s[0]=c,s)),+u.apply(this,s)),p)return v=null,p+""||null}return _.source=function(p){return arguments.length?(n=p,_):n},_.target=function(p){return arguments.length?(i=p,_):i},_.x=function(p){return arguments.length?(l=typeof p=="function"?p:ft(+p),_):l},_.y=function(p){return arguments.length?(u=typeof p=="function"?p:ft(+p),_):u},_.context=function(p){return arguments.length?(v=p??null,_):v},_}function Vt(t,n,i,l,u){t.moveTo(n,i),t.bezierCurveTo(n=(n+l)/2,i,n,u,l,u)}function Yt(){return Wt(Vt)}function Gt(t){return[t.source.x1,t.y0]}function Ht(t){return[t.target.x0,t.y1]}function Xt(){return Yt().source(Gt).target(Ht)}var it=function(){var t=function(p,s,o,c){for(o=o||{},c=p.length;c--;o[p[c]]=s);return o},n=[1,9],i=[1,10],l=[1,5,10,12],u={trace:function(){},yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:function(s,o,c,g,b,d,k){var E=d.length-1;switch(b){case 7:const M=g.findOrCreateNode(d[E-4].trim().replaceAll('""','"')),P=g.findOrCreateNode(d[E-2].trim().replaceAll('""','"')),A=parseFloat(d[E].trim());g.addLink(M,P,A);break;case 8:case 9:case 11:this.$=d[E];break;case 10:this.$=d[E-1];break}},table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:n,20:i},{1:[2,6],7:11,10:[1,12]},t(i,[2,4],{9:13,5:[1,14]}),{12:[1,15]},t(l,[2,8]),t(l,[2,9]),{19:[1,16]},t(l,[2,11]),{1:[2,1]},{1:[2,5]},t(i,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:n,20:i},{15:18,16:7,17:8,18:n,20:i},{18:[1,19]},t(i,[2,3]),{12:[1,20]},t(l,[2,10]),{15:21,16:7,17:8,18:n,20:i},t([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:function(s,o){if(o.recoverable)this.trace(s);else{var c=new Error(s);throw c.hash=o,c}},parse:function(s){var o=this,c=[0],g=[],b=[null],d=[],k=this.table,E="",M=0,P=0,A=2,N=1,C=d.slice.call(arguments,1),w=Object.create(this.lexer),y={yy:{}};for(var L in this.yy)Object.prototype.hasOwnProperty.call(this.yy,L)&&(y.yy[L]=this.yy[L]);w.setInput(s,y.yy),y.yy.lexer=w,y.yy.parser=this,typeof w.yylloc>"u"&&(w.yylloc={});var $=w.yylloc;d.push($);var W=w.options&&w.options.ranges;typeof y.yy.parseError=="function"?this.parseError=y.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function V(){var x;return x=g.pop()||w.lex()||N,typeof x!="number"&&(x instanceof Array&&(g=x,x=g.pop()),x=o.symbols_[x]||x),x}for(var S,I,T,D,e={},f,a,h,r;;){if(I=c[c.length-1],this.defaultActions[I]?T=this.defaultActions[I]:((S===null||typeof S>"u")&&(S=V()),T=k[I]&&k[I][S]),typeof T>"u"||!T.length||!T[0]){var m="";r=[];for(f in k[I])this.terminals_[f]&&f>A&&r.push("'"+this.terminals_[f]+"'");w.showPosition?m="Parse error on line "+(M+1)+`: +import{c as ot,g as pt,s as mt,a as _t,b as kt,x as xt,v as vt,z as bt,j as wt,u as St,h as Y,i as Lt}from"../app.3c4fe3d0.js";import{o as Et}from"./ordinal.b935e931.js";import"./framework.be0a7370.js";import"./theme.71fa6e36.js";import"./init.77b53fdd.js";function At(t){for(var n=t.length/6|0,i=new Array(n),l=0;l=l)&&(i=l);else{let l=-1;for(let u of t)(u=n(u,++l,t))!=null&&(i=u)&&(i=u)}return i}function yt(t,n){let i;if(n===void 0)for(const l of t)l!=null&&(i>l||i===void 0&&l>=l)&&(i=l);else{let l=-1;for(let u of t)(u=n(u,++l,t))!=null&&(i>u||i===void 0&&u>=u)&&(i=u)}return i}function Z(t,n){let i=0;if(n===void 0)for(let l of t)(l=+l)&&(i+=l);else{let l=-1;for(let u of t)(u=+n(u,++l,t))&&(i+=u)}return i}function Mt(t){return t.target.depth}function Nt(t){return t.depth}function Pt(t,n){return n-1-t.height}function dt(t,n){return t.sourceLinks.length?t.depth:n-1}function Ct(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?yt(t.sourceLinks,Mt)-1:0}function G(t){return function(){return t}}function at(t,n){return H(t.source,n.source)||t.index-n.index}function ct(t,n){return H(t.target,n.target)||t.index-n.index}function H(t,n){return t.y0-n.y0}function J(t){return t.value}function It(t){return t.index}function Ot(t){return t.nodes}function zt(t){return t.links}function ut(t,n){const i=t.get(n);if(!i)throw new Error("missing: "+n);return i}function ht({nodes:t}){for(const n of t){let i=n.y0,l=i;for(const u of n.sourceLinks)u.y0=i+u.width/2,i+=u.width;for(const u of n.targetLinks)u.y1=l+u.width/2,l+=u.width}}function $t(){let t=0,n=0,i=1,l=1,u=24,v=8,_,p=It,s=dt,o,c,g=Ot,b=zt,d=6;function k(){const e={nodes:g.apply(null,arguments),links:b.apply(null,arguments)};return E(e),M(e),P(e),A(e),w(e),ht(e),e}k.update=function(e){return ht(e),e},k.nodeId=function(e){return arguments.length?(p=typeof e=="function"?e:G(e),k):p},k.nodeAlign=function(e){return arguments.length?(s=typeof e=="function"?e:G(e),k):s},k.nodeSort=function(e){return arguments.length?(o=e,k):o},k.nodeWidth=function(e){return arguments.length?(u=+e,k):u},k.nodePadding=function(e){return arguments.length?(v=_=+e,k):v},k.nodes=function(e){return arguments.length?(g=typeof e=="function"?e:G(e),k):g},k.links=function(e){return arguments.length?(b=typeof e=="function"?e:G(e),k):b},k.linkSort=function(e){return arguments.length?(c=e,k):c},k.size=function(e){return arguments.length?(t=n=0,i=+e[0],l=+e[1],k):[i-t,l-n]},k.extent=function(e){return arguments.length?(t=+e[0][0],i=+e[1][0],n=+e[0][1],l=+e[1][1],k):[[t,n],[i,l]]},k.iterations=function(e){return arguments.length?(d=+e,k):d};function E({nodes:e,links:f}){for(const[h,r]of e.entries())r.index=h,r.sourceLinks=[],r.targetLinks=[];const a=new Map(e.map((h,r)=>[p(h,r,e),h]));for(const[h,r]of f.entries()){r.index=h;let{source:m,target:x}=r;typeof m!="object"&&(m=r.source=ut(a,m)),typeof x!="object"&&(x=r.target=ut(a,x)),m.sourceLinks.push(r),x.targetLinks.push(r)}if(c!=null)for(const{sourceLinks:h,targetLinks:r}of e)h.sort(c),r.sort(c)}function M({nodes:e}){for(const f of e)f.value=f.fixedValue===void 0?Math.max(Z(f.sourceLinks,J),Z(f.targetLinks,J)):f.fixedValue}function P({nodes:e}){const f=e.length;let a=new Set(e),h=new Set,r=0;for(;a.size;){for(const m of a){m.depth=r;for(const{target:x}of m.sourceLinks)h.add(x)}if(++r>f)throw new Error("circular link");a=h,h=new Set}}function A({nodes:e}){const f=e.length;let a=new Set(e),h=new Set,r=0;for(;a.size;){for(const m of a){m.height=r;for(const{source:x}of m.targetLinks)h.add(x)}if(++r>f)throw new Error("circular link");a=h,h=new Set}}function N({nodes:e}){const f=lt(e,r=>r.depth)+1,a=(i-t-u)/(f-1),h=new Array(f);for(const r of e){const m=Math.max(0,Math.min(f-1,Math.floor(s.call(null,r,f))));r.layer=m,r.x0=t+m*a,r.x1=r.x0+u,h[m]?h[m].push(r):h[m]=[r]}if(o)for(const r of h)r.sort(o);return h}function C(e){const f=yt(e,a=>(l-n-(a.length-1)*_)/Z(a,J));for(const a of e){let h=n;for(const r of a){r.y0=h,r.y1=h+r.value*f,h=r.y1+_;for(const m of r.sourceLinks)m.width=m.value*f}h=(l-h+_)/(a.length+1);for(let r=0;ra.length)-1)),C(f);for(let a=0;a0))continue;let R=(B/O-x.y0)*f;x.y0+=R,x.y1+=R,S(x)}o===void 0&&m.sort(H),$(m,a)}}function L(e,f,a){for(let h=e.length,r=h-2;r>=0;--r){const m=e[r];for(const x of m){let B=0,O=0;for(const{target:F,value:K}of x.sourceLinks){let U=K*(F.layer-x.layer);B+=D(x,F)*U,O+=U}if(!(O>0))continue;let R=(B/O-x.y0)*f;x.y0+=R,x.y1+=R,S(x)}o===void 0&&m.sort(H),$(m,a)}}function $(e,f){const a=e.length>>1,h=e[a];V(e,h.y0-_,a-1,f),W(e,h.y1+_,a+1,f),V(e,l,e.length-1,f),W(e,n,0,f)}function W(e,f,a,h){for(;a1e-6&&(r.y0+=m,r.y1+=m),f=r.y1+_}}function V(e,f,a,h){for(;a>=0;--a){const r=e[a],m=(r.y1-f)*h;m>1e-6&&(r.y0-=m,r.y1-=m),f=r.y0-_}}function S({sourceLinks:e,targetLinks:f}){if(c===void 0){for(const{source:{sourceLinks:a}}of f)a.sort(ct);for(const{target:{targetLinks:a}}of e)a.sort(at)}}function I(e){if(c===void 0)for(const{sourceLinks:f,targetLinks:a}of e)f.sort(ct),a.sort(at)}function T(e,f){let a=e.y0-(e.sourceLinks.length-1)*_/2;for(const{target:h,width:r}of e.sourceLinks){if(h===f)break;a+=r+_}for(const{source:h,width:r}of f.targetLinks){if(h===e)break;a-=r}return a}function D(e,f){let a=f.y0-(f.targetLinks.length-1)*_/2;for(const{source:h,width:r}of f.targetLinks){if(h===e)break;a+=r+_}for(const{target:h,width:r}of e.sourceLinks){if(h===f)break;a-=r}return a}return k}var tt=Math.PI,et=2*tt,z=1e-6,jt=et-z;function nt(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function gt(){return new nt}nt.prototype=gt.prototype={constructor:nt,moveTo:function(t,n){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(t,n){this._+="L"+(this._x1=+t)+","+(this._y1=+n)},quadraticCurveTo:function(t,n,i,l){this._+="Q"+ +t+","+ +n+","+(this._x1=+i)+","+(this._y1=+l)},bezierCurveTo:function(t,n,i,l,u,v){this._+="C"+ +t+","+ +n+","+ +i+","+ +l+","+(this._x1=+u)+","+(this._y1=+v)},arcTo:function(t,n,i,l,u){t=+t,n=+n,i=+i,l=+l,u=+u;var v=this._x1,_=this._y1,p=i-t,s=l-n,o=v-t,c=_-n,g=o*o+c*c;if(u<0)throw new Error("negative radius: "+u);if(this._x1===null)this._+="M"+(this._x1=t)+","+(this._y1=n);else if(g>z)if(!(Math.abs(c*p-s*o)>z)||!u)this._+="L"+(this._x1=t)+","+(this._y1=n);else{var b=i-v,d=l-_,k=p*p+s*s,E=b*b+d*d,M=Math.sqrt(k),P=Math.sqrt(g),A=u*Math.tan((tt-Math.acos((k+g-E)/(2*M*P)))/2),N=A/P,C=A/M;Math.abs(N-1)>z&&(this._+="L"+(t+N*o)+","+(n+N*c)),this._+="A"+u+","+u+",0,0,"+ +(c*b>o*d)+","+(this._x1=t+C*p)+","+(this._y1=n+C*s)}},arc:function(t,n,i,l,u,v){t=+t,n=+n,i=+i,v=!!v;var _=i*Math.cos(l),p=i*Math.sin(l),s=t+_,o=n+p,c=1^v,g=v?l-u:u-l;if(i<0)throw new Error("negative radius: "+i);this._x1===null?this._+="M"+s+","+o:(Math.abs(this._x1-s)>z||Math.abs(this._y1-o)>z)&&(this._+="L"+s+","+o),i&&(g<0&&(g=g%et+et),g>jt?this._+="A"+i+","+i+",0,1,"+c+","+(t-_)+","+(n-p)+"A"+i+","+i+",0,1,"+c+","+(this._x1=s)+","+(this._y1=o):g>z&&(this._+="A"+i+","+i+",0,"+ +(g>=tt)+","+c+","+(this._x1=t+i*Math.cos(u))+","+(this._y1=n+i*Math.sin(u))))},rect:function(t,n,i,l){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)+"h"+ +i+"v"+ +l+"h"+-i+"Z"},toString:function(){return this._}};function ft(t){return function(){return t}}function Dt(t){return t[0]}function Bt(t){return t[1]}var Rt=Array.prototype.slice;function Ft(t){return t.source}function Ut(t){return t.target}function Wt(t){var n=Ft,i=Ut,l=Dt,u=Bt,v=null;function _(){var p,s=Rt.call(arguments),o=n.apply(this,s),c=i.apply(this,s);if(v||(v=p=gt()),t(v,+l.apply(this,(s[0]=o,s)),+u.apply(this,s),+l.apply(this,(s[0]=c,s)),+u.apply(this,s)),p)return v=null,p+""||null}return _.source=function(p){return arguments.length?(n=p,_):n},_.target=function(p){return arguments.length?(i=p,_):i},_.x=function(p){return arguments.length?(l=typeof p=="function"?p:ft(+p),_):l},_.y=function(p){return arguments.length?(u=typeof p=="function"?p:ft(+p),_):u},_.context=function(p){return arguments.length?(v=p??null,_):v},_}function Vt(t,n,i,l,u){t.moveTo(n,i),t.bezierCurveTo(n=(n+l)/2,i,n,u,l,u)}function Yt(){return Wt(Vt)}function Gt(t){return[t.source.x1,t.y0]}function Ht(t){return[t.target.x0,t.y1]}function Xt(){return Yt().source(Gt).target(Ht)}var it=function(){var t=function(p,s,o,c){for(o=o||{},c=p.length;c--;o[p[c]]=s);return o},n=[1,9],i=[1,10],l=[1,5,10,12],u={trace:function(){},yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:function(s,o,c,g,b,d,k){var E=d.length-1;switch(b){case 7:const M=g.findOrCreateNode(d[E-4].trim().replaceAll('""','"')),P=g.findOrCreateNode(d[E-2].trim().replaceAll('""','"')),A=parseFloat(d[E].trim());g.addLink(M,P,A);break;case 8:case 9:case 11:this.$=d[E];break;case 10:this.$=d[E-1];break}},table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:n,20:i},{1:[2,6],7:11,10:[1,12]},t(i,[2,4],{9:13,5:[1,14]}),{12:[1,15]},t(l,[2,8]),t(l,[2,9]),{19:[1,16]},t(l,[2,11]),{1:[2,1]},{1:[2,5]},t(i,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:n,20:i},{15:18,16:7,17:8,18:n,20:i},{18:[1,19]},t(i,[2,3]),{12:[1,20]},t(l,[2,10]),{15:21,16:7,17:8,18:n,20:i},t([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:function(s,o){if(o.recoverable)this.trace(s);else{var c=new Error(s);throw c.hash=o,c}},parse:function(s){var o=this,c=[0],g=[],b=[null],d=[],k=this.table,E="",M=0,P=0,A=2,N=1,C=d.slice.call(arguments,1),w=Object.create(this.lexer),y={yy:{}};for(var L in this.yy)Object.prototype.hasOwnProperty.call(this.yy,L)&&(y.yy[L]=this.yy[L]);w.setInput(s,y.yy),y.yy.lexer=w,y.yy.parser=this,typeof w.yylloc>"u"&&(w.yylloc={});var $=w.yylloc;d.push($);var W=w.options&&w.options.ranges;typeof y.yy.parseError=="function"?this.parseError=y.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function V(){var x;return x=g.pop()||w.lex()||N,typeof x!="number"&&(x instanceof Array&&(g=x,x=g.pop()),x=o.symbols_[x]||x),x}for(var S,I,T,D,e={},f,a,h,r;;){if(I=c[c.length-1],this.defaultActions[I]?T=this.defaultActions[I]:((S===null||typeof S>"u")&&(S=V()),T=k[I]&&k[I][S]),typeof T>"u"||!T.length||!T[0]){var m="";r=[];for(f in k[I])this.terminals_[f]&&f>A&&r.push("'"+this.terminals_[f]+"'");w.showPosition?m="Parse error on line "+(M+1)+`: `+w.showPosition()+` Expecting `+r.join(", ")+", got '"+(this.terminals_[S]||S)+"'":m="Parse error on line "+(M+1)+": Unexpected "+(S==N?"end of input":"'"+(this.terminals_[S]||S)+"'"),this.parseError(m,{text:w.match,token:this.terminals_[S]||S,line:w.yylineno,loc:$,expected:r})}if(T[0]instanceof Array&&T.length>1)throw new Error("Parse Error: multiple actions possible at state: "+I+", token: "+S);switch(T[0]){case 1:c.push(S),b.push(w.yytext),d.push(w.yylloc),c.push(T[1]),S=null,P=w.yyleng,E=w.yytext,M=w.yylineno,$=w.yylloc;break;case 2:if(a=this.productions_[T[1]][1],e.$=b[b.length-a],e._$={first_line:d[d.length-(a||1)].first_line,last_line:d[d.length-1].last_line,first_column:d[d.length-(a||1)].first_column,last_column:d[d.length-1].last_column},W&&(e._$.range=[d[d.length-(a||1)].range[0],d[d.length-1].range[1]]),D=this.performAction.apply(e,[E,P,M,y.yy,T[1],b,d].concat(C)),typeof D<"u")return D;a&&(c=c.slice(0,-1*a*2),b=b.slice(0,-1*a),d=d.slice(0,-1*a)),c.push(this.productions_[T[1]][0]),b.push(e.$),d.push(e._$),h=k[c[c.length-2]][c[c.length-1]],c.push(h);break;case 3:return!0}}return!0}},v=function(){var p={EOF:1,parseError:function(o,c){if(this.yy.parser)this.yy.parser.parseError(o,c);else throw new Error(o)},setInput:function(s,o){return this.yy=o||this.yy||{},this._input=s,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var s=this._input[0];this.yytext+=s,this.yyleng++,this.offset++,this.match+=s,this.matched+=s;var o=s.match(/(?:\r\n?|\n).*/g);return o?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),s},unput:function(s){var o=s.length,c=s.split(/(?:\r\n?|\n)/g);this._input=s+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-o),this.offset-=o;var g=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),c.length-1&&(this.yylineno-=c.length-1);var b=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:c?(c.length===g.length?this.yylloc.first_column:0)+g[g.length-c.length].length-c[0].length:this.yylloc.first_column-o},this.options.ranges&&(this.yylloc.range=[b[0],b[0]+this.yyleng-o]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(s){this.unput(this.match.slice(s))},pastInput:function(){var s=this.matched.substr(0,this.matched.length-this.match.length);return(s.length>20?"...":"")+s.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var s=this.match;return s.length<20&&(s+=this._input.substr(0,20-s.length)),(s.substr(0,20)+(s.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var s=this.pastInput(),o=new Array(s.length+1).join("-");return s+this.upcomingInput()+` diff --git a/pr-383/assets/chunks/sequenceDiagram-583eee82.e80d25f4.js b/pr-383/assets/chunks/sequenceDiagram-583eee82.76688222.js similarity index 99% rename from pr-383/assets/chunks/sequenceDiagram-583eee82.e80d25f4.js rename to pr-383/assets/chunks/sequenceDiagram-583eee82.76688222.js index e91c26fbf..4794f14ce 100644 --- a/pr-383/assets/chunks/sequenceDiagram-583eee82.e80d25f4.js +++ b/pr-383/assets/chunks/sequenceDiagram-583eee82.76688222.js @@ -1,4 +1,4 @@ -import{g as Ie,x as Ae,v as Ne,c as pt,s as oe,b as Se,a as Me,m as Re,z as De,l as G,d as Mt,j as w,e as Ve,h as St,i as Ce,y as B,n as ce,aq as le,aF as Oe,aG as Be}from"../app.34e6398e.js";import{d as Ye,a as Fe,g as Rt,b as We,c as qe,e as Xt}from"./svgDrawCommon-f26cad39.493f1f49.js";import"./framework.be0a7370.js";import"./theme.e11407bf.js";var zt=function(){var t=function(dt,m,v,_){for(v=v||{},_=dt.length;_--;v[dt[_]]=m);return v},e=[1,2],o=[1,3],i=[1,5],s=[1,7],n=[2,5],l=[1,15],h=[1,17],p=[1,19],r=[1,20],g=[1,22],y=[1,23],u=[1,24],x=[1,30],b=[1,31],k=[1,32],N=[1,33],D=[1,34],S=[1,35],W=[1,36],M=[1,37],it=[1,38],z=[1,39],X=[1,40],Q=[1,41],j=[1,42],F=[1,44],O=[1,45],q=[1,46],H=[1,48],J=[1,49],$=[1,50],tt=[1,51],E=[1,52],L=[1,53],I=[1,56],P=[1,4,5,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,53,54,55,56,58,59,60,65,66,67,68,76,86],U=[4,5,22,56,58,59],A=[4,5,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,56,58,59,60,65,66,67,68,76,86],te=[4,5,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,55,56,58,59,60,65,66,67,68,76,86],Ct=[4,5,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,54,56,58,59,60,65,66,67,68,76,86],ee=[4,5,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,53,56,58,59,60,65,66,67,68,76,86],ht=[74,75,76],rt=[1,133],ie=[1,4,5,7,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,53,54,55,56,58,59,60,65,66,67,68,76,86],Ot={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NEWLINE:5,directive:6,SD:7,document:8,line:9,statement:10,box_section:11,box_line:12,participant_statement:13,openDirective:14,typeDirective:15,closeDirective:16,":":17,argDirective:18,create:19,box:20,restOfLine:21,end:22,signal:23,autonumber:24,NUM:25,off:26,activate:27,actor:28,deactivate:29,note_statement:30,links_statement:31,link_statement:32,properties_statement:33,details_statement:34,title:35,legacy_title:36,acc_title:37,acc_title_value:38,acc_descr:39,acc_descr_value:40,acc_descr_multiline_value:41,loop:42,rect:43,opt:44,alt:45,else_sections:46,par:47,par_sections:48,par_over:49,critical:50,option_sections:51,break:52,option:53,and:54,else:55,participant:56,AS:57,participant_actor:58,destroy:59,note:60,placement:61,text2:62,over:63,actor_pair:64,links:65,link:66,properties:67,details:68,spaceList:69,",":70,left_of:71,right_of:72,signaltype:73,"+":74,"-":75,ACTOR:76,SOLID_OPEN_ARROW:77,DOTTED_OPEN_ARROW:78,SOLID_ARROW:79,DOTTED_ARROW:80,SOLID_CROSS:81,DOTTED_CROSS:82,SOLID_POINT:83,DOTTED_POINT:84,TXT:85,open_directive:86,type_directive:87,arg_directive:88,close_directive:89,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NEWLINE",7:"SD",17:":",19:"create",20:"box",21:"restOfLine",22:"end",24:"autonumber",25:"NUM",26:"off",27:"activate",29:"deactivate",35:"title",36:"legacy_title",37:"acc_title",38:"acc_title_value",39:"acc_descr",40:"acc_descr_value",41:"acc_descr_multiline_value",42:"loop",43:"rect",44:"opt",45:"alt",47:"par",49:"par_over",50:"critical",52:"break",53:"option",54:"and",55:"else",56:"participant",57:"AS",58:"participant_actor",59:"destroy",60:"note",63:"over",65:"links",66:"link",67:"properties",68:"details",70:",",71:"left_of",72:"right_of",74:"+",75:"-",76:"ACTOR",77:"SOLID_OPEN_ARROW",78:"DOTTED_OPEN_ARROW",79:"SOLID_ARROW",80:"DOTTED_ARROW",81:"SOLID_CROSS",82:"DOTTED_CROSS",83:"SOLID_POINT",84:"DOTTED_POINT",85:"TXT",86:"open_directive",87:"type_directive",88:"arg_directive",89:"close_directive"},productions_:[0,[3,2],[3,2],[3,2],[3,2],[8,0],[8,2],[9,2],[9,1],[9,1],[11,0],[11,2],[12,2],[12,1],[12,1],[6,4],[6,6],[10,1],[10,2],[10,4],[10,2],[10,4],[10,3],[10,3],[10,2],[10,3],[10,3],[10,2],[10,2],[10,2],[10,2],[10,2],[10,1],[10,1],[10,2],[10,2],[10,1],[10,4],[10,4],[10,4],[10,4],[10,4],[10,4],[10,4],[10,4],[10,1],[51,1],[51,4],[48,1],[48,4],[46,1],[46,4],[13,5],[13,3],[13,5],[13,3],[13,3],[30,4],[30,4],[31,3],[32,3],[33,3],[34,3],[69,2],[69,1],[64,3],[64,1],[61,1],[61,1],[23,5],[23,5],[23,4],[28,1],[73,1],[73,1],[73,1],[73,1],[73,1],[73,1],[73,1],[73,1],[62,1],[14,1],[15,1],[18,1],[16,1]],performAction:function(m,v,_,T,R,c,vt){var d=c.length-1;switch(R){case 4:return T.apply(c[d]),c[d];case 5:case 10:this.$=[];break;case 6:case 11:c[d-1].push(c[d]),this.$=c[d-1];break;case 7:case 8:case 12:case 13:this.$=c[d];break;case 9:case 14:this.$=[];break;case 18:c[d].type="createParticipant",this.$=c[d];break;case 19:c[d-1].unshift({type:"boxStart",boxData:T.parseBoxData(c[d-2])}),c[d-1].push({type:"boxEnd",boxText:c[d-2]}),this.$=c[d-1];break;case 21:this.$={type:"sequenceIndex",sequenceIndex:Number(c[d-2]),sequenceIndexStep:Number(c[d-1]),sequenceVisible:!0,signalType:T.LINETYPE.AUTONUMBER};break;case 22:this.$={type:"sequenceIndex",sequenceIndex:Number(c[d-1]),sequenceIndexStep:1,sequenceVisible:!0,signalType:T.LINETYPE.AUTONUMBER};break;case 23:this.$={type:"sequenceIndex",sequenceVisible:!1,signalType:T.LINETYPE.AUTONUMBER};break;case 24:this.$={type:"sequenceIndex",sequenceVisible:!0,signalType:T.LINETYPE.AUTONUMBER};break;case 25:this.$={type:"activeStart",signalType:T.LINETYPE.ACTIVE_START,actor:c[d-1]};break;case 26:this.$={type:"activeEnd",signalType:T.LINETYPE.ACTIVE_END,actor:c[d-1]};break;case 32:T.setDiagramTitle(c[d].substring(6)),this.$=c[d].substring(6);break;case 33:T.setDiagramTitle(c[d].substring(7)),this.$=c[d].substring(7);break;case 34:this.$=c[d].trim(),T.setAccTitle(this.$);break;case 35:case 36:this.$=c[d].trim(),T.setAccDescription(this.$);break;case 37:c[d-1].unshift({type:"loopStart",loopText:T.parseMessage(c[d-2]),signalType:T.LINETYPE.LOOP_START}),c[d-1].push({type:"loopEnd",loopText:c[d-2],signalType:T.LINETYPE.LOOP_END}),this.$=c[d-1];break;case 38:c[d-1].unshift({type:"rectStart",color:T.parseMessage(c[d-2]),signalType:T.LINETYPE.RECT_START}),c[d-1].push({type:"rectEnd",color:T.parseMessage(c[d-2]),signalType:T.LINETYPE.RECT_END}),this.$=c[d-1];break;case 39:c[d-1].unshift({type:"optStart",optText:T.parseMessage(c[d-2]),signalType:T.LINETYPE.OPT_START}),c[d-1].push({type:"optEnd",optText:T.parseMessage(c[d-2]),signalType:T.LINETYPE.OPT_END}),this.$=c[d-1];break;case 40:c[d-1].unshift({type:"altStart",altText:T.parseMessage(c[d-2]),signalType:T.LINETYPE.ALT_START}),c[d-1].push({type:"altEnd",signalType:T.LINETYPE.ALT_END}),this.$=c[d-1];break;case 41:c[d-1].unshift({type:"parStart",parText:T.parseMessage(c[d-2]),signalType:T.LINETYPE.PAR_START}),c[d-1].push({type:"parEnd",signalType:T.LINETYPE.PAR_END}),this.$=c[d-1];break;case 42:c[d-1].unshift({type:"parStart",parText:T.parseMessage(c[d-2]),signalType:T.LINETYPE.PAR_OVER_START}),c[d-1].push({type:"parEnd",signalType:T.LINETYPE.PAR_END}),this.$=c[d-1];break;case 43:c[d-1].unshift({type:"criticalStart",criticalText:T.parseMessage(c[d-2]),signalType:T.LINETYPE.CRITICAL_START}),c[d-1].push({type:"criticalEnd",signalType:T.LINETYPE.CRITICAL_END}),this.$=c[d-1];break;case 44:c[d-1].unshift({type:"breakStart",breakText:T.parseMessage(c[d-2]),signalType:T.LINETYPE.BREAK_START}),c[d-1].push({type:"breakEnd",optText:T.parseMessage(c[d-2]),signalType:T.LINETYPE.BREAK_END}),this.$=c[d-1];break;case 47:this.$=c[d-3].concat([{type:"option",optionText:T.parseMessage(c[d-1]),signalType:T.LINETYPE.CRITICAL_OPTION},c[d]]);break;case 49:this.$=c[d-3].concat([{type:"and",parText:T.parseMessage(c[d-1]),signalType:T.LINETYPE.PAR_AND},c[d]]);break;case 51:this.$=c[d-3].concat([{type:"else",altText:T.parseMessage(c[d-1]),signalType:T.LINETYPE.ALT_ELSE},c[d]]);break;case 52:c[d-3].draw="participant",c[d-3].type="addParticipant",c[d-3].description=T.parseMessage(c[d-1]),this.$=c[d-3];break;case 53:c[d-1].draw="participant",c[d-1].type="addParticipant",this.$=c[d-1];break;case 54:c[d-3].draw="actor",c[d-3].type="addParticipant",c[d-3].description=T.parseMessage(c[d-1]),this.$=c[d-3];break;case 55:c[d-1].draw="actor",c[d-1].type="addParticipant",this.$=c[d-1];break;case 56:c[d-1].type="destroyParticipant",this.$=c[d-1];break;case 57:this.$=[c[d-1],{type:"addNote",placement:c[d-2],actor:c[d-1].actor,text:c[d]}];break;case 58:c[d-2]=[].concat(c[d-1],c[d-1]).slice(0,2),c[d-2][0]=c[d-2][0].actor,c[d-2][1]=c[d-2][1].actor,this.$=[c[d-1],{type:"addNote",placement:T.PLACEMENT.OVER,actor:c[d-2].slice(0,2),text:c[d]}];break;case 59:this.$=[c[d-1],{type:"addLinks",actor:c[d-1].actor,text:c[d]}];break;case 60:this.$=[c[d-1],{type:"addALink",actor:c[d-1].actor,text:c[d]}];break;case 61:this.$=[c[d-1],{type:"addProperties",actor:c[d-1].actor,text:c[d]}];break;case 62:this.$=[c[d-1],{type:"addDetails",actor:c[d-1].actor,text:c[d]}];break;case 65:this.$=[c[d-2],c[d]];break;case 66:this.$=c[d];break;case 67:this.$=T.PLACEMENT.LEFTOF;break;case 68:this.$=T.PLACEMENT.RIGHTOF;break;case 69:this.$=[c[d-4],c[d-1],{type:"addMessage",from:c[d-4].actor,to:c[d-1].actor,signalType:c[d-3],msg:c[d]},{type:"activeStart",signalType:T.LINETYPE.ACTIVE_START,actor:c[d-1]}];break;case 70:this.$=[c[d-4],c[d-1],{type:"addMessage",from:c[d-4].actor,to:c[d-1].actor,signalType:c[d-3],msg:c[d]},{type:"activeEnd",signalType:T.LINETYPE.ACTIVE_END,actor:c[d-4]}];break;case 71:this.$=[c[d-3],c[d-1],{type:"addMessage",from:c[d-3].actor,to:c[d-1].actor,signalType:c[d-2],msg:c[d]}];break;case 72:this.$={type:"addParticipant",actor:c[d]};break;case 73:this.$=T.LINETYPE.SOLID_OPEN;break;case 74:this.$=T.LINETYPE.DOTTED_OPEN;break;case 75:this.$=T.LINETYPE.SOLID;break;case 76:this.$=T.LINETYPE.DOTTED;break;case 77:this.$=T.LINETYPE.SOLID_CROSS;break;case 78:this.$=T.LINETYPE.DOTTED_CROSS;break;case 79:this.$=T.LINETYPE.SOLID_POINT;break;case 80:this.$=T.LINETYPE.DOTTED_POINT;break;case 81:this.$=T.parseMessage(c[d].trim().substring(1));break;case 82:T.parseDirective("%%{","open_directive");break;case 83:T.parseDirective(c[d],"type_directive");break;case 84:c[d]=c[d].trim().replace(/'/g,'"'),T.parseDirective(c[d],"arg_directive");break;case 85:T.parseDirective("}%%","close_directive","sequence");break}},table:[{3:1,4:e,5:o,6:4,7:i,14:6,86:s},{1:[3]},{3:8,4:e,5:o,6:4,7:i,14:6,86:s},{3:9,4:e,5:o,6:4,7:i,14:6,86:s},{3:10,4:e,5:o,6:4,7:i,14:6,86:s},t([1,4,5,19,20,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,56,58,59,60,65,66,67,68,76,86],n,{8:11}),{15:12,87:[1,13]},{87:[2,82]},{1:[2,1]},{1:[2,2]},{1:[2,3]},{1:[2,4],4:l,5:h,6:43,9:14,10:16,13:18,14:6,19:p,20:r,23:21,24:g,27:y,28:47,29:u,30:25,31:26,32:27,33:28,34:29,35:x,36:b,37:k,39:N,41:D,42:S,43:W,44:M,45:it,47:z,49:X,50:Q,52:j,56:F,58:O,59:q,60:H,65:J,66:$,67:tt,68:E,76:L,86:s},{16:54,17:[1,55],89:I},t([17,89],[2,83]),t(P,[2,6]),{6:43,10:57,13:18,14:6,19:p,20:r,23:21,24:g,27:y,28:47,29:u,30:25,31:26,32:27,33:28,34:29,35:x,36:b,37:k,39:N,41:D,42:S,43:W,44:M,45:it,47:z,49:X,50:Q,52:j,56:F,58:O,59:q,60:H,65:J,66:$,67:tt,68:E,76:L,86:s},t(P,[2,8]),t(P,[2,9]),t(P,[2,17]),{13:58,56:F,58:O,59:q},{21:[1,59]},{5:[1,60]},{5:[1,63],25:[1,61],26:[1,62]},{28:64,76:L},{28:65,76:L},{5:[1,66]},{5:[1,67]},{5:[1,68]},{5:[1,69]},{5:[1,70]},t(P,[2,32]),t(P,[2,33]),{38:[1,71]},{40:[1,72]},t(P,[2,36]),{21:[1,73]},{21:[1,74]},{21:[1,75]},{21:[1,76]},{21:[1,77]},{21:[1,78]},{21:[1,79]},{21:[1,80]},t(P,[2,45]),{28:81,76:L},{28:82,76:L},{28:83,76:L},{73:84,77:[1,85],78:[1,86],79:[1,87],80:[1,88],81:[1,89],82:[1,90],83:[1,91],84:[1,92]},{61:93,63:[1,94],71:[1,95],72:[1,96]},{28:97,76:L},{28:98,76:L},{28:99,76:L},{28:100,76:L},t([5,57,70,77,78,79,80,81,82,83,84,85],[2,72]),{5:[1,101]},{18:102,88:[1,103]},{5:[2,85]},t(P,[2,7]),t(P,[2,18]),t(U,[2,10],{11:104}),t(P,[2,20]),{5:[1,106],25:[1,105]},{5:[1,107]},t(P,[2,24]),{5:[1,108]},{5:[1,109]},t(P,[2,27]),t(P,[2,28]),t(P,[2,29]),t(P,[2,30]),t(P,[2,31]),t(P,[2,34]),t(P,[2,35]),t(A,n,{8:110}),t(A,n,{8:111}),t(A,n,{8:112}),t(te,n,{46:113,8:114}),t(Ct,n,{48:115,8:116}),t(Ct,n,{8:116,48:117}),t(ee,n,{51:118,8:119}),t(A,n,{8:120}),{5:[1,122],57:[1,121]},{5:[1,124],57:[1,123]},{5:[1,125]},{28:128,74:[1,126],75:[1,127],76:L},t(ht,[2,73]),t(ht,[2,74]),t(ht,[2,75]),t(ht,[2,76]),t(ht,[2,77]),t(ht,[2,78]),t(ht,[2,79]),t(ht,[2,80]),{28:129,76:L},{28:131,64:130,76:L},{76:[2,67]},{76:[2,68]},{62:132,85:rt},{62:134,85:rt},{62:135,85:rt},{62:136,85:rt},t(ie,[2,15]),{16:137,89:I},{89:[2,84]},{4:[1,140],5:[1,142],12:139,13:141,22:[1,138],56:F,58:O,59:q},{5:[1,143]},t(P,[2,22]),t(P,[2,23]),t(P,[2,25]),t(P,[2,26]),{4:l,5:h,6:43,9:14,10:16,13:18,14:6,19:p,20:r,22:[1,144],23:21,24:g,27:y,28:47,29:u,30:25,31:26,32:27,33:28,34:29,35:x,36:b,37:k,39:N,41:D,42:S,43:W,44:M,45:it,47:z,49:X,50:Q,52:j,56:F,58:O,59:q,60:H,65:J,66:$,67:tt,68:E,76:L,86:s},{4:l,5:h,6:43,9:14,10:16,13:18,14:6,19:p,20:r,22:[1,145],23:21,24:g,27:y,28:47,29:u,30:25,31:26,32:27,33:28,34:29,35:x,36:b,37:k,39:N,41:D,42:S,43:W,44:M,45:it,47:z,49:X,50:Q,52:j,56:F,58:O,59:q,60:H,65:J,66:$,67:tt,68:E,76:L,86:s},{4:l,5:h,6:43,9:14,10:16,13:18,14:6,19:p,20:r,22:[1,146],23:21,24:g,27:y,28:47,29:u,30:25,31:26,32:27,33:28,34:29,35:x,36:b,37:k,39:N,41:D,42:S,43:W,44:M,45:it,47:z,49:X,50:Q,52:j,56:F,58:O,59:q,60:H,65:J,66:$,67:tt,68:E,76:L,86:s},{22:[1,147]},{4:l,5:h,6:43,9:14,10:16,13:18,14:6,19:p,20:r,22:[2,50],23:21,24:g,27:y,28:47,29:u,30:25,31:26,32:27,33:28,34:29,35:x,36:b,37:k,39:N,41:D,42:S,43:W,44:M,45:it,47:z,49:X,50:Q,52:j,55:[1,148],56:F,58:O,59:q,60:H,65:J,66:$,67:tt,68:E,76:L,86:s},{22:[1,149]},{4:l,5:h,6:43,9:14,10:16,13:18,14:6,19:p,20:r,22:[2,48],23:21,24:g,27:y,28:47,29:u,30:25,31:26,32:27,33:28,34:29,35:x,36:b,37:k,39:N,41:D,42:S,43:W,44:M,45:it,47:z,49:X,50:Q,52:j,54:[1,150],56:F,58:O,59:q,60:H,65:J,66:$,67:tt,68:E,76:L,86:s},{22:[1,151]},{22:[1,152]},{4:l,5:h,6:43,9:14,10:16,13:18,14:6,19:p,20:r,22:[2,46],23:21,24:g,27:y,28:47,29:u,30:25,31:26,32:27,33:28,34:29,35:x,36:b,37:k,39:N,41:D,42:S,43:W,44:M,45:it,47:z,49:X,50:Q,52:j,53:[1,153],56:F,58:O,59:q,60:H,65:J,66:$,67:tt,68:E,76:L,86:s},{4:l,5:h,6:43,9:14,10:16,13:18,14:6,19:p,20:r,22:[1,154],23:21,24:g,27:y,28:47,29:u,30:25,31:26,32:27,33:28,34:29,35:x,36:b,37:k,39:N,41:D,42:S,43:W,44:M,45:it,47:z,49:X,50:Q,52:j,56:F,58:O,59:q,60:H,65:J,66:$,67:tt,68:E,76:L,86:s},{21:[1,155]},t(P,[2,53]),{21:[1,156]},t(P,[2,55]),t(P,[2,56]),{28:157,76:L},{28:158,76:L},{62:159,85:rt},{62:160,85:rt},{62:161,85:rt},{70:[1,162],85:[2,66]},{5:[2,59]},{5:[2,81]},{5:[2,60]},{5:[2,61]},{5:[2,62]},{5:[1,163]},t(P,[2,19]),t(U,[2,11]),{13:164,56:F,58:O,59:q},t(U,[2,13]),t(U,[2,14]),t(P,[2,21]),t(P,[2,37]),t(P,[2,38]),t(P,[2,39]),t(P,[2,40]),{21:[1,165]},t(P,[2,41]),{21:[1,166]},t(P,[2,42]),t(P,[2,43]),{21:[1,167]},t(P,[2,44]),{5:[1,168]},{5:[1,169]},{62:170,85:rt},{62:171,85:rt},{5:[2,71]},{5:[2,57]},{5:[2,58]},{28:172,76:L},t(ie,[2,16]),t(U,[2,12]),t(te,n,{8:114,46:173}),t(Ct,n,{8:116,48:174}),t(ee,n,{8:119,51:175}),t(P,[2,52]),t(P,[2,54]),{5:[2,69]},{5:[2,70]},{85:[2,65]},{22:[2,51]},{22:[2,49]},{22:[2,47]}],defaultActions:{7:[2,82],8:[2,1],9:[2,2],10:[2,3],56:[2,85],95:[2,67],96:[2,68],103:[2,84],132:[2,59],133:[2,81],134:[2,60],135:[2,61],136:[2,62],159:[2,71],160:[2,57],161:[2,58],170:[2,69],171:[2,70],172:[2,65],173:[2,51],174:[2,49],175:[2,47]},parseError:function(m,v){if(v.recoverable)this.trace(m);else{var _=new Error(m);throw _.hash=v,_}},parse:function(m){var v=this,_=[0],T=[],R=[null],c=[],vt=this.table,d="",It=0,se=0,_e=2,ne=1,ke=c.slice.call(arguments,1),Y=Object.create(this.lexer),ut={yy:{}};for(var Yt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Yt)&&(ut.yy[Yt]=this.yy[Yt]);Y.setInput(m,ut.yy),ut.yy.lexer=Y,ut.yy.parser=this,typeof Y.yylloc>"u"&&(Y.yylloc={});var Ft=Y.yylloc;c.push(Ft);var Pe=Y.options&&Y.options.ranges;typeof ut.yy.parseError=="function"?this.parseError=ut.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Le(){var ot;return ot=T.pop()||Y.lex()||ne,typeof ot!="number"&&(ot instanceof Array&&(T=ot,ot=T.pop()),ot=v.symbols_[ot]||ot),ot}for(var K,ft,et,Wt,yt={},At,at,re,Nt;;){if(ft=_[_.length-1],this.defaultActions[ft]?et=this.defaultActions[ft]:((K===null||typeof K>"u")&&(K=Le()),et=vt[ft]&&vt[ft][K]),typeof et>"u"||!et.length||!et[0]){var qt="";Nt=[];for(At in vt[ft])this.terminals_[At]&&At>_e&&Nt.push("'"+this.terminals_[At]+"'");Y.showPosition?qt="Parse error on line "+(It+1)+`: +import{g as Ie,x as Ae,v as Ne,c as pt,s as oe,b as Se,a as Me,m as Re,z as De,l as G,d as Mt,j as w,e as Ve,h as St,i as Ce,y as B,n as ce,aq as le,aF as Oe,aG as Be}from"../app.3c4fe3d0.js";import{d as Ye,a as Fe,g as Rt,b as We,c as qe,e as Xt}from"./svgDrawCommon-f26cad39.398614f4.js";import"./framework.be0a7370.js";import"./theme.71fa6e36.js";var zt=function(){var t=function(dt,m,v,_){for(v=v||{},_=dt.length;_--;v[dt[_]]=m);return v},e=[1,2],o=[1,3],i=[1,5],s=[1,7],n=[2,5],l=[1,15],h=[1,17],p=[1,19],r=[1,20],g=[1,22],y=[1,23],u=[1,24],x=[1,30],b=[1,31],k=[1,32],N=[1,33],D=[1,34],S=[1,35],W=[1,36],M=[1,37],it=[1,38],z=[1,39],X=[1,40],Q=[1,41],j=[1,42],F=[1,44],O=[1,45],q=[1,46],H=[1,48],J=[1,49],$=[1,50],tt=[1,51],E=[1,52],L=[1,53],I=[1,56],P=[1,4,5,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,53,54,55,56,58,59,60,65,66,67,68,76,86],U=[4,5,22,56,58,59],A=[4,5,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,56,58,59,60,65,66,67,68,76,86],te=[4,5,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,55,56,58,59,60,65,66,67,68,76,86],Ct=[4,5,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,54,56,58,59,60,65,66,67,68,76,86],ee=[4,5,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,53,56,58,59,60,65,66,67,68,76,86],ht=[74,75,76],rt=[1,133],ie=[1,4,5,7,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,53,54,55,56,58,59,60,65,66,67,68,76,86],Ot={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NEWLINE:5,directive:6,SD:7,document:8,line:9,statement:10,box_section:11,box_line:12,participant_statement:13,openDirective:14,typeDirective:15,closeDirective:16,":":17,argDirective:18,create:19,box:20,restOfLine:21,end:22,signal:23,autonumber:24,NUM:25,off:26,activate:27,actor:28,deactivate:29,note_statement:30,links_statement:31,link_statement:32,properties_statement:33,details_statement:34,title:35,legacy_title:36,acc_title:37,acc_title_value:38,acc_descr:39,acc_descr_value:40,acc_descr_multiline_value:41,loop:42,rect:43,opt:44,alt:45,else_sections:46,par:47,par_sections:48,par_over:49,critical:50,option_sections:51,break:52,option:53,and:54,else:55,participant:56,AS:57,participant_actor:58,destroy:59,note:60,placement:61,text2:62,over:63,actor_pair:64,links:65,link:66,properties:67,details:68,spaceList:69,",":70,left_of:71,right_of:72,signaltype:73,"+":74,"-":75,ACTOR:76,SOLID_OPEN_ARROW:77,DOTTED_OPEN_ARROW:78,SOLID_ARROW:79,DOTTED_ARROW:80,SOLID_CROSS:81,DOTTED_CROSS:82,SOLID_POINT:83,DOTTED_POINT:84,TXT:85,open_directive:86,type_directive:87,arg_directive:88,close_directive:89,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NEWLINE",7:"SD",17:":",19:"create",20:"box",21:"restOfLine",22:"end",24:"autonumber",25:"NUM",26:"off",27:"activate",29:"deactivate",35:"title",36:"legacy_title",37:"acc_title",38:"acc_title_value",39:"acc_descr",40:"acc_descr_value",41:"acc_descr_multiline_value",42:"loop",43:"rect",44:"opt",45:"alt",47:"par",49:"par_over",50:"critical",52:"break",53:"option",54:"and",55:"else",56:"participant",57:"AS",58:"participant_actor",59:"destroy",60:"note",63:"over",65:"links",66:"link",67:"properties",68:"details",70:",",71:"left_of",72:"right_of",74:"+",75:"-",76:"ACTOR",77:"SOLID_OPEN_ARROW",78:"DOTTED_OPEN_ARROW",79:"SOLID_ARROW",80:"DOTTED_ARROW",81:"SOLID_CROSS",82:"DOTTED_CROSS",83:"SOLID_POINT",84:"DOTTED_POINT",85:"TXT",86:"open_directive",87:"type_directive",88:"arg_directive",89:"close_directive"},productions_:[0,[3,2],[3,2],[3,2],[3,2],[8,0],[8,2],[9,2],[9,1],[9,1],[11,0],[11,2],[12,2],[12,1],[12,1],[6,4],[6,6],[10,1],[10,2],[10,4],[10,2],[10,4],[10,3],[10,3],[10,2],[10,3],[10,3],[10,2],[10,2],[10,2],[10,2],[10,2],[10,1],[10,1],[10,2],[10,2],[10,1],[10,4],[10,4],[10,4],[10,4],[10,4],[10,4],[10,4],[10,4],[10,1],[51,1],[51,4],[48,1],[48,4],[46,1],[46,4],[13,5],[13,3],[13,5],[13,3],[13,3],[30,4],[30,4],[31,3],[32,3],[33,3],[34,3],[69,2],[69,1],[64,3],[64,1],[61,1],[61,1],[23,5],[23,5],[23,4],[28,1],[73,1],[73,1],[73,1],[73,1],[73,1],[73,1],[73,1],[73,1],[62,1],[14,1],[15,1],[18,1],[16,1]],performAction:function(m,v,_,T,R,c,vt){var d=c.length-1;switch(R){case 4:return T.apply(c[d]),c[d];case 5:case 10:this.$=[];break;case 6:case 11:c[d-1].push(c[d]),this.$=c[d-1];break;case 7:case 8:case 12:case 13:this.$=c[d];break;case 9:case 14:this.$=[];break;case 18:c[d].type="createParticipant",this.$=c[d];break;case 19:c[d-1].unshift({type:"boxStart",boxData:T.parseBoxData(c[d-2])}),c[d-1].push({type:"boxEnd",boxText:c[d-2]}),this.$=c[d-1];break;case 21:this.$={type:"sequenceIndex",sequenceIndex:Number(c[d-2]),sequenceIndexStep:Number(c[d-1]),sequenceVisible:!0,signalType:T.LINETYPE.AUTONUMBER};break;case 22:this.$={type:"sequenceIndex",sequenceIndex:Number(c[d-1]),sequenceIndexStep:1,sequenceVisible:!0,signalType:T.LINETYPE.AUTONUMBER};break;case 23:this.$={type:"sequenceIndex",sequenceVisible:!1,signalType:T.LINETYPE.AUTONUMBER};break;case 24:this.$={type:"sequenceIndex",sequenceVisible:!0,signalType:T.LINETYPE.AUTONUMBER};break;case 25:this.$={type:"activeStart",signalType:T.LINETYPE.ACTIVE_START,actor:c[d-1]};break;case 26:this.$={type:"activeEnd",signalType:T.LINETYPE.ACTIVE_END,actor:c[d-1]};break;case 32:T.setDiagramTitle(c[d].substring(6)),this.$=c[d].substring(6);break;case 33:T.setDiagramTitle(c[d].substring(7)),this.$=c[d].substring(7);break;case 34:this.$=c[d].trim(),T.setAccTitle(this.$);break;case 35:case 36:this.$=c[d].trim(),T.setAccDescription(this.$);break;case 37:c[d-1].unshift({type:"loopStart",loopText:T.parseMessage(c[d-2]),signalType:T.LINETYPE.LOOP_START}),c[d-1].push({type:"loopEnd",loopText:c[d-2],signalType:T.LINETYPE.LOOP_END}),this.$=c[d-1];break;case 38:c[d-1].unshift({type:"rectStart",color:T.parseMessage(c[d-2]),signalType:T.LINETYPE.RECT_START}),c[d-1].push({type:"rectEnd",color:T.parseMessage(c[d-2]),signalType:T.LINETYPE.RECT_END}),this.$=c[d-1];break;case 39:c[d-1].unshift({type:"optStart",optText:T.parseMessage(c[d-2]),signalType:T.LINETYPE.OPT_START}),c[d-1].push({type:"optEnd",optText:T.parseMessage(c[d-2]),signalType:T.LINETYPE.OPT_END}),this.$=c[d-1];break;case 40:c[d-1].unshift({type:"altStart",altText:T.parseMessage(c[d-2]),signalType:T.LINETYPE.ALT_START}),c[d-1].push({type:"altEnd",signalType:T.LINETYPE.ALT_END}),this.$=c[d-1];break;case 41:c[d-1].unshift({type:"parStart",parText:T.parseMessage(c[d-2]),signalType:T.LINETYPE.PAR_START}),c[d-1].push({type:"parEnd",signalType:T.LINETYPE.PAR_END}),this.$=c[d-1];break;case 42:c[d-1].unshift({type:"parStart",parText:T.parseMessage(c[d-2]),signalType:T.LINETYPE.PAR_OVER_START}),c[d-1].push({type:"parEnd",signalType:T.LINETYPE.PAR_END}),this.$=c[d-1];break;case 43:c[d-1].unshift({type:"criticalStart",criticalText:T.parseMessage(c[d-2]),signalType:T.LINETYPE.CRITICAL_START}),c[d-1].push({type:"criticalEnd",signalType:T.LINETYPE.CRITICAL_END}),this.$=c[d-1];break;case 44:c[d-1].unshift({type:"breakStart",breakText:T.parseMessage(c[d-2]),signalType:T.LINETYPE.BREAK_START}),c[d-1].push({type:"breakEnd",optText:T.parseMessage(c[d-2]),signalType:T.LINETYPE.BREAK_END}),this.$=c[d-1];break;case 47:this.$=c[d-3].concat([{type:"option",optionText:T.parseMessage(c[d-1]),signalType:T.LINETYPE.CRITICAL_OPTION},c[d]]);break;case 49:this.$=c[d-3].concat([{type:"and",parText:T.parseMessage(c[d-1]),signalType:T.LINETYPE.PAR_AND},c[d]]);break;case 51:this.$=c[d-3].concat([{type:"else",altText:T.parseMessage(c[d-1]),signalType:T.LINETYPE.ALT_ELSE},c[d]]);break;case 52:c[d-3].draw="participant",c[d-3].type="addParticipant",c[d-3].description=T.parseMessage(c[d-1]),this.$=c[d-3];break;case 53:c[d-1].draw="participant",c[d-1].type="addParticipant",this.$=c[d-1];break;case 54:c[d-3].draw="actor",c[d-3].type="addParticipant",c[d-3].description=T.parseMessage(c[d-1]),this.$=c[d-3];break;case 55:c[d-1].draw="actor",c[d-1].type="addParticipant",this.$=c[d-1];break;case 56:c[d-1].type="destroyParticipant",this.$=c[d-1];break;case 57:this.$=[c[d-1],{type:"addNote",placement:c[d-2],actor:c[d-1].actor,text:c[d]}];break;case 58:c[d-2]=[].concat(c[d-1],c[d-1]).slice(0,2),c[d-2][0]=c[d-2][0].actor,c[d-2][1]=c[d-2][1].actor,this.$=[c[d-1],{type:"addNote",placement:T.PLACEMENT.OVER,actor:c[d-2].slice(0,2),text:c[d]}];break;case 59:this.$=[c[d-1],{type:"addLinks",actor:c[d-1].actor,text:c[d]}];break;case 60:this.$=[c[d-1],{type:"addALink",actor:c[d-1].actor,text:c[d]}];break;case 61:this.$=[c[d-1],{type:"addProperties",actor:c[d-1].actor,text:c[d]}];break;case 62:this.$=[c[d-1],{type:"addDetails",actor:c[d-1].actor,text:c[d]}];break;case 65:this.$=[c[d-2],c[d]];break;case 66:this.$=c[d];break;case 67:this.$=T.PLACEMENT.LEFTOF;break;case 68:this.$=T.PLACEMENT.RIGHTOF;break;case 69:this.$=[c[d-4],c[d-1],{type:"addMessage",from:c[d-4].actor,to:c[d-1].actor,signalType:c[d-3],msg:c[d]},{type:"activeStart",signalType:T.LINETYPE.ACTIVE_START,actor:c[d-1]}];break;case 70:this.$=[c[d-4],c[d-1],{type:"addMessage",from:c[d-4].actor,to:c[d-1].actor,signalType:c[d-3],msg:c[d]},{type:"activeEnd",signalType:T.LINETYPE.ACTIVE_END,actor:c[d-4]}];break;case 71:this.$=[c[d-3],c[d-1],{type:"addMessage",from:c[d-3].actor,to:c[d-1].actor,signalType:c[d-2],msg:c[d]}];break;case 72:this.$={type:"addParticipant",actor:c[d]};break;case 73:this.$=T.LINETYPE.SOLID_OPEN;break;case 74:this.$=T.LINETYPE.DOTTED_OPEN;break;case 75:this.$=T.LINETYPE.SOLID;break;case 76:this.$=T.LINETYPE.DOTTED;break;case 77:this.$=T.LINETYPE.SOLID_CROSS;break;case 78:this.$=T.LINETYPE.DOTTED_CROSS;break;case 79:this.$=T.LINETYPE.SOLID_POINT;break;case 80:this.$=T.LINETYPE.DOTTED_POINT;break;case 81:this.$=T.parseMessage(c[d].trim().substring(1));break;case 82:T.parseDirective("%%{","open_directive");break;case 83:T.parseDirective(c[d],"type_directive");break;case 84:c[d]=c[d].trim().replace(/'/g,'"'),T.parseDirective(c[d],"arg_directive");break;case 85:T.parseDirective("}%%","close_directive","sequence");break}},table:[{3:1,4:e,5:o,6:4,7:i,14:6,86:s},{1:[3]},{3:8,4:e,5:o,6:4,7:i,14:6,86:s},{3:9,4:e,5:o,6:4,7:i,14:6,86:s},{3:10,4:e,5:o,6:4,7:i,14:6,86:s},t([1,4,5,19,20,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,56,58,59,60,65,66,67,68,76,86],n,{8:11}),{15:12,87:[1,13]},{87:[2,82]},{1:[2,1]},{1:[2,2]},{1:[2,3]},{1:[2,4],4:l,5:h,6:43,9:14,10:16,13:18,14:6,19:p,20:r,23:21,24:g,27:y,28:47,29:u,30:25,31:26,32:27,33:28,34:29,35:x,36:b,37:k,39:N,41:D,42:S,43:W,44:M,45:it,47:z,49:X,50:Q,52:j,56:F,58:O,59:q,60:H,65:J,66:$,67:tt,68:E,76:L,86:s},{16:54,17:[1,55],89:I},t([17,89],[2,83]),t(P,[2,6]),{6:43,10:57,13:18,14:6,19:p,20:r,23:21,24:g,27:y,28:47,29:u,30:25,31:26,32:27,33:28,34:29,35:x,36:b,37:k,39:N,41:D,42:S,43:W,44:M,45:it,47:z,49:X,50:Q,52:j,56:F,58:O,59:q,60:H,65:J,66:$,67:tt,68:E,76:L,86:s},t(P,[2,8]),t(P,[2,9]),t(P,[2,17]),{13:58,56:F,58:O,59:q},{21:[1,59]},{5:[1,60]},{5:[1,63],25:[1,61],26:[1,62]},{28:64,76:L},{28:65,76:L},{5:[1,66]},{5:[1,67]},{5:[1,68]},{5:[1,69]},{5:[1,70]},t(P,[2,32]),t(P,[2,33]),{38:[1,71]},{40:[1,72]},t(P,[2,36]),{21:[1,73]},{21:[1,74]},{21:[1,75]},{21:[1,76]},{21:[1,77]},{21:[1,78]},{21:[1,79]},{21:[1,80]},t(P,[2,45]),{28:81,76:L},{28:82,76:L},{28:83,76:L},{73:84,77:[1,85],78:[1,86],79:[1,87],80:[1,88],81:[1,89],82:[1,90],83:[1,91],84:[1,92]},{61:93,63:[1,94],71:[1,95],72:[1,96]},{28:97,76:L},{28:98,76:L},{28:99,76:L},{28:100,76:L},t([5,57,70,77,78,79,80,81,82,83,84,85],[2,72]),{5:[1,101]},{18:102,88:[1,103]},{5:[2,85]},t(P,[2,7]),t(P,[2,18]),t(U,[2,10],{11:104}),t(P,[2,20]),{5:[1,106],25:[1,105]},{5:[1,107]},t(P,[2,24]),{5:[1,108]},{5:[1,109]},t(P,[2,27]),t(P,[2,28]),t(P,[2,29]),t(P,[2,30]),t(P,[2,31]),t(P,[2,34]),t(P,[2,35]),t(A,n,{8:110}),t(A,n,{8:111}),t(A,n,{8:112}),t(te,n,{46:113,8:114}),t(Ct,n,{48:115,8:116}),t(Ct,n,{8:116,48:117}),t(ee,n,{51:118,8:119}),t(A,n,{8:120}),{5:[1,122],57:[1,121]},{5:[1,124],57:[1,123]},{5:[1,125]},{28:128,74:[1,126],75:[1,127],76:L},t(ht,[2,73]),t(ht,[2,74]),t(ht,[2,75]),t(ht,[2,76]),t(ht,[2,77]),t(ht,[2,78]),t(ht,[2,79]),t(ht,[2,80]),{28:129,76:L},{28:131,64:130,76:L},{76:[2,67]},{76:[2,68]},{62:132,85:rt},{62:134,85:rt},{62:135,85:rt},{62:136,85:rt},t(ie,[2,15]),{16:137,89:I},{89:[2,84]},{4:[1,140],5:[1,142],12:139,13:141,22:[1,138],56:F,58:O,59:q},{5:[1,143]},t(P,[2,22]),t(P,[2,23]),t(P,[2,25]),t(P,[2,26]),{4:l,5:h,6:43,9:14,10:16,13:18,14:6,19:p,20:r,22:[1,144],23:21,24:g,27:y,28:47,29:u,30:25,31:26,32:27,33:28,34:29,35:x,36:b,37:k,39:N,41:D,42:S,43:W,44:M,45:it,47:z,49:X,50:Q,52:j,56:F,58:O,59:q,60:H,65:J,66:$,67:tt,68:E,76:L,86:s},{4:l,5:h,6:43,9:14,10:16,13:18,14:6,19:p,20:r,22:[1,145],23:21,24:g,27:y,28:47,29:u,30:25,31:26,32:27,33:28,34:29,35:x,36:b,37:k,39:N,41:D,42:S,43:W,44:M,45:it,47:z,49:X,50:Q,52:j,56:F,58:O,59:q,60:H,65:J,66:$,67:tt,68:E,76:L,86:s},{4:l,5:h,6:43,9:14,10:16,13:18,14:6,19:p,20:r,22:[1,146],23:21,24:g,27:y,28:47,29:u,30:25,31:26,32:27,33:28,34:29,35:x,36:b,37:k,39:N,41:D,42:S,43:W,44:M,45:it,47:z,49:X,50:Q,52:j,56:F,58:O,59:q,60:H,65:J,66:$,67:tt,68:E,76:L,86:s},{22:[1,147]},{4:l,5:h,6:43,9:14,10:16,13:18,14:6,19:p,20:r,22:[2,50],23:21,24:g,27:y,28:47,29:u,30:25,31:26,32:27,33:28,34:29,35:x,36:b,37:k,39:N,41:D,42:S,43:W,44:M,45:it,47:z,49:X,50:Q,52:j,55:[1,148],56:F,58:O,59:q,60:H,65:J,66:$,67:tt,68:E,76:L,86:s},{22:[1,149]},{4:l,5:h,6:43,9:14,10:16,13:18,14:6,19:p,20:r,22:[2,48],23:21,24:g,27:y,28:47,29:u,30:25,31:26,32:27,33:28,34:29,35:x,36:b,37:k,39:N,41:D,42:S,43:W,44:M,45:it,47:z,49:X,50:Q,52:j,54:[1,150],56:F,58:O,59:q,60:H,65:J,66:$,67:tt,68:E,76:L,86:s},{22:[1,151]},{22:[1,152]},{4:l,5:h,6:43,9:14,10:16,13:18,14:6,19:p,20:r,22:[2,46],23:21,24:g,27:y,28:47,29:u,30:25,31:26,32:27,33:28,34:29,35:x,36:b,37:k,39:N,41:D,42:S,43:W,44:M,45:it,47:z,49:X,50:Q,52:j,53:[1,153],56:F,58:O,59:q,60:H,65:J,66:$,67:tt,68:E,76:L,86:s},{4:l,5:h,6:43,9:14,10:16,13:18,14:6,19:p,20:r,22:[1,154],23:21,24:g,27:y,28:47,29:u,30:25,31:26,32:27,33:28,34:29,35:x,36:b,37:k,39:N,41:D,42:S,43:W,44:M,45:it,47:z,49:X,50:Q,52:j,56:F,58:O,59:q,60:H,65:J,66:$,67:tt,68:E,76:L,86:s},{21:[1,155]},t(P,[2,53]),{21:[1,156]},t(P,[2,55]),t(P,[2,56]),{28:157,76:L},{28:158,76:L},{62:159,85:rt},{62:160,85:rt},{62:161,85:rt},{70:[1,162],85:[2,66]},{5:[2,59]},{5:[2,81]},{5:[2,60]},{5:[2,61]},{5:[2,62]},{5:[1,163]},t(P,[2,19]),t(U,[2,11]),{13:164,56:F,58:O,59:q},t(U,[2,13]),t(U,[2,14]),t(P,[2,21]),t(P,[2,37]),t(P,[2,38]),t(P,[2,39]),t(P,[2,40]),{21:[1,165]},t(P,[2,41]),{21:[1,166]},t(P,[2,42]),t(P,[2,43]),{21:[1,167]},t(P,[2,44]),{5:[1,168]},{5:[1,169]},{62:170,85:rt},{62:171,85:rt},{5:[2,71]},{5:[2,57]},{5:[2,58]},{28:172,76:L},t(ie,[2,16]),t(U,[2,12]),t(te,n,{8:114,46:173}),t(Ct,n,{8:116,48:174}),t(ee,n,{8:119,51:175}),t(P,[2,52]),t(P,[2,54]),{5:[2,69]},{5:[2,70]},{85:[2,65]},{22:[2,51]},{22:[2,49]},{22:[2,47]}],defaultActions:{7:[2,82],8:[2,1],9:[2,2],10:[2,3],56:[2,85],95:[2,67],96:[2,68],103:[2,84],132:[2,59],133:[2,81],134:[2,60],135:[2,61],136:[2,62],159:[2,71],160:[2,57],161:[2,58],170:[2,69],171:[2,70],172:[2,65],173:[2,51],174:[2,49],175:[2,47]},parseError:function(m,v){if(v.recoverable)this.trace(m);else{var _=new Error(m);throw _.hash=v,_}},parse:function(m){var v=this,_=[0],T=[],R=[null],c=[],vt=this.table,d="",It=0,se=0,_e=2,ne=1,ke=c.slice.call(arguments,1),Y=Object.create(this.lexer),ut={yy:{}};for(var Yt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Yt)&&(ut.yy[Yt]=this.yy[Yt]);Y.setInput(m,ut.yy),ut.yy.lexer=Y,ut.yy.parser=this,typeof Y.yylloc>"u"&&(Y.yylloc={});var Ft=Y.yylloc;c.push(Ft);var Pe=Y.options&&Y.options.ranges;typeof ut.yy.parseError=="function"?this.parseError=ut.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Le(){var ot;return ot=T.pop()||Y.lex()||ne,typeof ot!="number"&&(ot instanceof Array&&(T=ot,ot=T.pop()),ot=v.symbols_[ot]||ot),ot}for(var K,ft,et,Wt,yt={},At,at,re,Nt;;){if(ft=_[_.length-1],this.defaultActions[ft]?et=this.defaultActions[ft]:((K===null||typeof K>"u")&&(K=Le()),et=vt[ft]&&vt[ft][K]),typeof et>"u"||!et.length||!et[0]){var qt="";Nt=[];for(At in vt[ft])this.terminals_[At]&&At>_e&&Nt.push("'"+this.terminals_[At]+"'");Y.showPosition?qt="Parse error on line "+(It+1)+`: `+Y.showPosition()+` Expecting `+Nt.join(", ")+", got '"+(this.terminals_[K]||K)+"'":qt="Parse error on line "+(It+1)+": Unexpected "+(K==ne?"end of input":"'"+(this.terminals_[K]||K)+"'"),this.parseError(qt,{text:Y.match,token:this.terminals_[K]||K,line:Y.yylineno,loc:Ft,expected:Nt})}if(et[0]instanceof Array&&et.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ft+", token: "+K);switch(et[0]){case 1:_.push(K),R.push(Y.yytext),c.push(Y.yylloc),_.push(et[1]),K=null,se=Y.yyleng,d=Y.yytext,It=Y.yylineno,Ft=Y.yylloc;break;case 2:if(at=this.productions_[et[1]][1],yt.$=R[R.length-at],yt._$={first_line:c[c.length-(at||1)].first_line,last_line:c[c.length-1].last_line,first_column:c[c.length-(at||1)].first_column,last_column:c[c.length-1].last_column},Pe&&(yt._$.range=[c[c.length-(at||1)].range[0],c[c.length-1].range[1]]),Wt=this.performAction.apply(yt,[d,se,It,ut.yy,et[1],R,c].concat(ke)),typeof Wt<"u")return Wt;at&&(_=_.slice(0,-1*at*2),R=R.slice(0,-1*at),c=c.slice(0,-1*at)),_.push(this.productions_[et[1]][0]),R.push(yt.$),c.push(yt._$),re=vt[_[_.length-2]][_[_.length-1]],_.push(re);break;case 3:return!0}}return!0}},ve=function(){var dt={EOF:1,parseError:function(v,_){if(this.yy.parser)this.yy.parser.parseError(v,_);else throw new Error(v)},setInput:function(m,v){return this.yy=v||this.yy||{},this._input=m,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var m=this._input[0];this.yytext+=m,this.yyleng++,this.offset++,this.match+=m,this.matched+=m;var v=m.match(/(?:\r\n?|\n).*/g);return v?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),m},unput:function(m){var v=m.length,_=m.split(/(?:\r\n?|\n)/g);this._input=m+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-v),this.offset-=v;var T=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),_.length-1&&(this.yylineno-=_.length-1);var R=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:_?(_.length===T.length?this.yylloc.first_column:0)+T[T.length-_.length].length-_[0].length:this.yylloc.first_column-v},this.options.ranges&&(this.yylloc.range=[R[0],R[0]+this.yyleng-v]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(m){this.unput(this.match.slice(m))},pastInput:function(){var m=this.matched.substr(0,this.matched.length-this.match.length);return(m.length>20?"...":"")+m.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var m=this.match;return m.length<20&&(m+=this._input.substr(0,20-m.length)),(m.substr(0,20)+(m.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var m=this.pastInput(),v=new Array(m.length+1).join("-");return m+this.upcomingInput()+` diff --git a/pr-383/assets/chunks/stateDiagram-b1c07dc6.a584cd20.js b/pr-383/assets/chunks/stateDiagram-b1c07dc6.a8381588.js similarity index 97% rename from pr-383/assets/chunks/stateDiagram-b1c07dc6.a584cd20.js rename to pr-383/assets/chunks/stateDiagram-b1c07dc6.a8381588.js index 3986753c3..743267c60 100644 --- a/pr-383/assets/chunks/stateDiagram-b1c07dc6.a584cd20.js +++ b/pr-383/assets/chunks/stateDiagram-b1c07dc6.a8381588.js @@ -1 +1 @@ -import{p as P,d as N,s as W}from"./styles-f626f8de.a3799276.js";import{c as t,h as H,l as b,i as R,j as T,a5 as v,y as U}from"../app.34e6398e.js";import{G as C,l as F}from"./layout.ca521a87.js";import{l as $}from"./line.075f786d.js";import"./framework.be0a7370.js";import"./theme.e11407bf.js";import"./array.9f3ba611.js";import"./path.53f90ab3.js";const O=e=>e.append("circle").attr("class","start-state").attr("r",t().state.sizeUnit).attr("cx",t().state.padding+t().state.sizeUnit).attr("cy",t().state.padding+t().state.sizeUnit),X=e=>e.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",t().state.textHeight).attr("class","divider").attr("x2",t().state.textHeight*2).attr("y1",0).attr("y2",0),J=(e,i)=>{const o=e.append("text").attr("x",2*t().state.padding).attr("y",t().state.textHeight+2*t().state.padding).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.id),c=o.node().getBBox();return e.insert("rect",":first-child").attr("x",t().state.padding).attr("y",t().state.padding).attr("width",c.width+2*t().state.padding).attr("height",c.height+2*t().state.padding).attr("rx",t().state.radius),o},Y=(e,i)=>{const o=function(l,m,w){const E=l.append("tspan").attr("x",2*t().state.padding).text(m);w||E.attr("dy",t().state.textHeight)},s=e.append("text").attr("x",2*t().state.padding).attr("y",t().state.textHeight+1.3*t().state.padding).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.descriptions[0]).node().getBBox(),g=s.height,p=e.append("text").attr("x",t().state.padding).attr("y",g+t().state.padding*.4+t().state.dividerMargin+t().state.textHeight).attr("class","state-description");let a=!0,r=!0;i.descriptions.forEach(function(l){a||(o(p,l,r),r=!1),a=!1});const y=e.append("line").attr("x1",t().state.padding).attr("y1",t().state.padding+g+t().state.dividerMargin/2).attr("y2",t().state.padding+g+t().state.dividerMargin/2).attr("class","descr-divider"),x=p.node().getBBox(),d=Math.max(x.width,s.width);return y.attr("x2",d+3*t().state.padding),e.insert("rect",":first-child").attr("x",t().state.padding).attr("y",t().state.padding).attr("width",d+2*t().state.padding).attr("height",x.height+g+2*t().state.padding).attr("rx",t().state.radius),e},I=(e,i,o)=>{const c=t().state.padding,s=2*t().state.padding,g=e.node().getBBox(),p=g.width,a=g.x,r=e.append("text").attr("x",0).attr("y",t().state.titleShift).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.id),x=r.node().getBBox().width+s;let d=Math.max(x,p);d===p&&(d=d+s);let l;const m=e.node().getBBox();i.doc,l=a-c,x>p&&(l=(p-d)/2+c),Math.abs(a-m.x)p&&(l=a-(x-p)/2);const w=1-t().state.textHeight;return e.insert("rect",":first-child").attr("x",l).attr("y",w).attr("class",o?"alt-composit":"composit").attr("width",d).attr("height",m.height+t().state.textHeight+t().state.titleShift+1).attr("rx","0"),r.attr("x",l+c),x<=p&&r.attr("x",a+(d-s)/2-x/2+c),e.insert("rect",":first-child").attr("x",l).attr("y",t().state.titleShift-t().state.textHeight-t().state.padding).attr("width",d).attr("height",t().state.textHeight*3).attr("rx",t().state.radius),e.insert("rect",":first-child").attr("x",l).attr("y",t().state.titleShift-t().state.textHeight-t().state.padding).attr("width",d).attr("height",m.height+3+2*t().state.textHeight).attr("rx",t().state.radius),e},_=e=>(e.append("circle").attr("class","end-state-outer").attr("r",t().state.sizeUnit+t().state.miniPadding).attr("cx",t().state.padding+t().state.sizeUnit+t().state.miniPadding).attr("cy",t().state.padding+t().state.sizeUnit+t().state.miniPadding),e.append("circle").attr("class","end-state-inner").attr("r",t().state.sizeUnit).attr("cx",t().state.padding+t().state.sizeUnit+2).attr("cy",t().state.padding+t().state.sizeUnit+2)),q=(e,i)=>{let o=t().state.forkWidth,c=t().state.forkHeight;if(i.parentId){let s=o;o=c,c=s}return e.append("rect").style("stroke","black").style("fill","black").attr("width",o).attr("height",c).attr("x",t().state.padding).attr("y",t().state.padding)},Z=(e,i,o,c)=>{let s=0;const g=c.append("text");g.style("text-anchor","start"),g.attr("class","noteText");let p=e.replace(/\r\n/g,"
");p=p.replace(/\n/g,"
");const a=p.split(T.lineBreakRegex);let r=1.25*t().state.noteMargin;for(const y of a){const x=y.trim();if(x.length>0){const d=g.append("tspan");if(d.text(x),r===0){const l=d.node().getBBox();r+=l.height}s+=r,d.attr("x",i+t().state.noteMargin),d.attr("y",o+s+1.25*t().state.noteMargin)}}return{textWidth:g.node().getBBox().width,textHeight:s}},j=(e,i)=>{i.attr("class","state-note");const o=i.append("rect").attr("x",0).attr("y",t().state.padding),c=i.append("g"),{textWidth:s,textHeight:g}=Z(e,0,0,c);return o.attr("height",g+2*t().state.noteMargin),o.attr("width",s+t().state.noteMargin*2),o},L=function(e,i){const o=i.id,c={id:o,label:i.id,width:0,height:0},s=e.append("g").attr("id",o).attr("class","stateGroup");i.type==="start"&&O(s),i.type==="end"&&_(s),(i.type==="fork"||i.type==="join")&&q(s,i),i.type==="note"&&j(i.note.text,s),i.type==="divider"&&X(s),i.type==="default"&&i.descriptions.length===0&&J(s,i),i.type==="default"&&i.descriptions.length>0&&Y(s,i);const g=s.node().getBBox();return c.width=g.width+2*t().state.padding,c.height=g.height+2*t().state.padding,c};let G=0;const K=function(e,i,o){const c=function(r){switch(r){case N.relationType.AGGREGATION:return"aggregation";case N.relationType.EXTENSION:return"extension";case N.relationType.COMPOSITION:return"composition";case N.relationType.DEPENDENCY:return"dependency"}};i.points=i.points.filter(r=>!Number.isNaN(r.y));const s=i.points,g=$().x(function(r){return r.x}).y(function(r){return r.y}).curve(v),p=e.append("path").attr("d",g(s)).attr("id","edge"+G).attr("class","transition");let a="";if(t().state.arrowMarkerAbsolute&&(a=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,a=a.replace(/\(/g,"\\("),a=a.replace(/\)/g,"\\)")),p.attr("marker-end","url("+a+"#"+c(N.relationType.DEPENDENCY)+"End)"),o.title!==void 0){const r=e.append("g").attr("class","stateLabel"),{x:y,y:x}=U.calcLabelPosition(i.points),d=T.getRows(o.title);let l=0;const m=[];let w=0,E=0;for(let u=0;u<=d.length;u++){const h=r.append("text").attr("text-anchor","middle").text(d[u]).attr("x",y).attr("y",x+l),f=h.node().getBBox();w=Math.max(w,f.width),E=Math.min(E,f.x),b.info(f.x,y,x+l),l===0&&(l=h.node().getBBox().height,b.info("Title height",l,x)),m.push(h)}let k=l*d.length;if(d.length>1){const u=(d.length-1)*l*.5;m.forEach((h,f)=>h.attr("y",x+f*l-u)),k=l*d.length}const n=r.node().getBBox();r.insert("rect",":first-child").attr("class","box").attr("x",y-w/2-t().state.padding/2).attr("y",x-k/2-t().state.padding/2-3.5).attr("width",w+t().state.padding).attr("height",k+t().state.padding),b.info(n)}G++};let B;const z={},Q=function(){},V=function(e){e.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},D=function(e,i,o,c){B=t().state;const s=t().securityLevel;let g;s==="sandbox"&&(g=H("#i"+i));const p=s==="sandbox"?H(g.nodes()[0].contentDocument.body):H("body"),a=s==="sandbox"?g.nodes()[0].contentDocument:document;b.debug("Rendering diagram "+e);const r=p.select(`[id='${i}']`);V(r);const y=c.db.getRootDoc();A(y,r,void 0,!1,p,a,c);const x=B.padding,d=r.node().getBBox(),l=d.width+x*2,m=d.height+x*2,w=l*1.75;R(r,m,w,B.useMaxWidth),r.attr("viewBox",`${d.x-B.padding} ${d.y-B.padding} `+l+" "+m)},tt=e=>e?e.length*B.fontSizeFactor:1,A=(e,i,o,c,s,g,p)=>{const a=new C({compound:!0,multigraph:!0});let r,y=!0;for(r=0;r{const f=h.parentElement;let S=0,M=0;f&&(f.parentElement&&(S=f.parentElement.getBBox().width),M=parseInt(f.getAttribute("data-x-shift"),10),Number.isNaN(M)&&(M=0)),h.setAttribute("x1",0-M+8),h.setAttribute("x2",S-M-8)})):b.debug("No Node "+n+": "+JSON.stringify(a.node(n)))});let E=w.getBBox();a.edges().forEach(function(n){n!==void 0&&a.edge(n)!==void 0&&(b.debug("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(a.edge(n))),K(i,a.edge(n),a.edge(n).relation))}),E=w.getBBox();const k={id:o||"root",label:o||"root",width:0,height:0};return k.width=E.width+2*B.padding,k.height=E.height+2*B.padding,b.debug("Doc rendered",k,a),k},et={setConf:Q,draw:D},lt={parser:P,db:N,renderer:et,styles:W,init:e=>{e.state||(e.state={}),e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute,N.clear()}};export{lt as diagram}; +import{p as P,d as N,s as W}from"./styles-f626f8de.a466b9e4.js";import{c as t,h as H,l as b,i as R,j as T,a5 as v,y as U}from"../app.3c4fe3d0.js";import{G as C,l as F}from"./layout.66644227.js";import{l as $}from"./line.809d7f74.js";import"./framework.be0a7370.js";import"./theme.71fa6e36.js";import"./array.9f3ba611.js";import"./path.53f90ab3.js";const O=e=>e.append("circle").attr("class","start-state").attr("r",t().state.sizeUnit).attr("cx",t().state.padding+t().state.sizeUnit).attr("cy",t().state.padding+t().state.sizeUnit),X=e=>e.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",t().state.textHeight).attr("class","divider").attr("x2",t().state.textHeight*2).attr("y1",0).attr("y2",0),J=(e,i)=>{const o=e.append("text").attr("x",2*t().state.padding).attr("y",t().state.textHeight+2*t().state.padding).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.id),c=o.node().getBBox();return e.insert("rect",":first-child").attr("x",t().state.padding).attr("y",t().state.padding).attr("width",c.width+2*t().state.padding).attr("height",c.height+2*t().state.padding).attr("rx",t().state.radius),o},Y=(e,i)=>{const o=function(l,m,w){const E=l.append("tspan").attr("x",2*t().state.padding).text(m);w||E.attr("dy",t().state.textHeight)},s=e.append("text").attr("x",2*t().state.padding).attr("y",t().state.textHeight+1.3*t().state.padding).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.descriptions[0]).node().getBBox(),g=s.height,p=e.append("text").attr("x",t().state.padding).attr("y",g+t().state.padding*.4+t().state.dividerMargin+t().state.textHeight).attr("class","state-description");let a=!0,r=!0;i.descriptions.forEach(function(l){a||(o(p,l,r),r=!1),a=!1});const y=e.append("line").attr("x1",t().state.padding).attr("y1",t().state.padding+g+t().state.dividerMargin/2).attr("y2",t().state.padding+g+t().state.dividerMargin/2).attr("class","descr-divider"),x=p.node().getBBox(),d=Math.max(x.width,s.width);return y.attr("x2",d+3*t().state.padding),e.insert("rect",":first-child").attr("x",t().state.padding).attr("y",t().state.padding).attr("width",d+2*t().state.padding).attr("height",x.height+g+2*t().state.padding).attr("rx",t().state.radius),e},I=(e,i,o)=>{const c=t().state.padding,s=2*t().state.padding,g=e.node().getBBox(),p=g.width,a=g.x,r=e.append("text").attr("x",0).attr("y",t().state.titleShift).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.id),x=r.node().getBBox().width+s;let d=Math.max(x,p);d===p&&(d=d+s);let l;const m=e.node().getBBox();i.doc,l=a-c,x>p&&(l=(p-d)/2+c),Math.abs(a-m.x)p&&(l=a-(x-p)/2);const w=1-t().state.textHeight;return e.insert("rect",":first-child").attr("x",l).attr("y",w).attr("class",o?"alt-composit":"composit").attr("width",d).attr("height",m.height+t().state.textHeight+t().state.titleShift+1).attr("rx","0"),r.attr("x",l+c),x<=p&&r.attr("x",a+(d-s)/2-x/2+c),e.insert("rect",":first-child").attr("x",l).attr("y",t().state.titleShift-t().state.textHeight-t().state.padding).attr("width",d).attr("height",t().state.textHeight*3).attr("rx",t().state.radius),e.insert("rect",":first-child").attr("x",l).attr("y",t().state.titleShift-t().state.textHeight-t().state.padding).attr("width",d).attr("height",m.height+3+2*t().state.textHeight).attr("rx",t().state.radius),e},_=e=>(e.append("circle").attr("class","end-state-outer").attr("r",t().state.sizeUnit+t().state.miniPadding).attr("cx",t().state.padding+t().state.sizeUnit+t().state.miniPadding).attr("cy",t().state.padding+t().state.sizeUnit+t().state.miniPadding),e.append("circle").attr("class","end-state-inner").attr("r",t().state.sizeUnit).attr("cx",t().state.padding+t().state.sizeUnit+2).attr("cy",t().state.padding+t().state.sizeUnit+2)),q=(e,i)=>{let o=t().state.forkWidth,c=t().state.forkHeight;if(i.parentId){let s=o;o=c,c=s}return e.append("rect").style("stroke","black").style("fill","black").attr("width",o).attr("height",c).attr("x",t().state.padding).attr("y",t().state.padding)},Z=(e,i,o,c)=>{let s=0;const g=c.append("text");g.style("text-anchor","start"),g.attr("class","noteText");let p=e.replace(/\r\n/g,"
");p=p.replace(/\n/g,"
");const a=p.split(T.lineBreakRegex);let r=1.25*t().state.noteMargin;for(const y of a){const x=y.trim();if(x.length>0){const d=g.append("tspan");if(d.text(x),r===0){const l=d.node().getBBox();r+=l.height}s+=r,d.attr("x",i+t().state.noteMargin),d.attr("y",o+s+1.25*t().state.noteMargin)}}return{textWidth:g.node().getBBox().width,textHeight:s}},j=(e,i)=>{i.attr("class","state-note");const o=i.append("rect").attr("x",0).attr("y",t().state.padding),c=i.append("g"),{textWidth:s,textHeight:g}=Z(e,0,0,c);return o.attr("height",g+2*t().state.noteMargin),o.attr("width",s+t().state.noteMargin*2),o},L=function(e,i){const o=i.id,c={id:o,label:i.id,width:0,height:0},s=e.append("g").attr("id",o).attr("class","stateGroup");i.type==="start"&&O(s),i.type==="end"&&_(s),(i.type==="fork"||i.type==="join")&&q(s,i),i.type==="note"&&j(i.note.text,s),i.type==="divider"&&X(s),i.type==="default"&&i.descriptions.length===0&&J(s,i),i.type==="default"&&i.descriptions.length>0&&Y(s,i);const g=s.node().getBBox();return c.width=g.width+2*t().state.padding,c.height=g.height+2*t().state.padding,c};let G=0;const K=function(e,i,o){const c=function(r){switch(r){case N.relationType.AGGREGATION:return"aggregation";case N.relationType.EXTENSION:return"extension";case N.relationType.COMPOSITION:return"composition";case N.relationType.DEPENDENCY:return"dependency"}};i.points=i.points.filter(r=>!Number.isNaN(r.y));const s=i.points,g=$().x(function(r){return r.x}).y(function(r){return r.y}).curve(v),p=e.append("path").attr("d",g(s)).attr("id","edge"+G).attr("class","transition");let a="";if(t().state.arrowMarkerAbsolute&&(a=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,a=a.replace(/\(/g,"\\("),a=a.replace(/\)/g,"\\)")),p.attr("marker-end","url("+a+"#"+c(N.relationType.DEPENDENCY)+"End)"),o.title!==void 0){const r=e.append("g").attr("class","stateLabel"),{x:y,y:x}=U.calcLabelPosition(i.points),d=T.getRows(o.title);let l=0;const m=[];let w=0,E=0;for(let u=0;u<=d.length;u++){const h=r.append("text").attr("text-anchor","middle").text(d[u]).attr("x",y).attr("y",x+l),f=h.node().getBBox();w=Math.max(w,f.width),E=Math.min(E,f.x),b.info(f.x,y,x+l),l===0&&(l=h.node().getBBox().height,b.info("Title height",l,x)),m.push(h)}let k=l*d.length;if(d.length>1){const u=(d.length-1)*l*.5;m.forEach((h,f)=>h.attr("y",x+f*l-u)),k=l*d.length}const n=r.node().getBBox();r.insert("rect",":first-child").attr("class","box").attr("x",y-w/2-t().state.padding/2).attr("y",x-k/2-t().state.padding/2-3.5).attr("width",w+t().state.padding).attr("height",k+t().state.padding),b.info(n)}G++};let B;const z={},Q=function(){},V=function(e){e.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},D=function(e,i,o,c){B=t().state;const s=t().securityLevel;let g;s==="sandbox"&&(g=H("#i"+i));const p=s==="sandbox"?H(g.nodes()[0].contentDocument.body):H("body"),a=s==="sandbox"?g.nodes()[0].contentDocument:document;b.debug("Rendering diagram "+e);const r=p.select(`[id='${i}']`);V(r);const y=c.db.getRootDoc();A(y,r,void 0,!1,p,a,c);const x=B.padding,d=r.node().getBBox(),l=d.width+x*2,m=d.height+x*2,w=l*1.75;R(r,m,w,B.useMaxWidth),r.attr("viewBox",`${d.x-B.padding} ${d.y-B.padding} `+l+" "+m)},tt=e=>e?e.length*B.fontSizeFactor:1,A=(e,i,o,c,s,g,p)=>{const a=new C({compound:!0,multigraph:!0});let r,y=!0;for(r=0;r{const f=h.parentElement;let S=0,M=0;f&&(f.parentElement&&(S=f.parentElement.getBBox().width),M=parseInt(f.getAttribute("data-x-shift"),10),Number.isNaN(M)&&(M=0)),h.setAttribute("x1",0-M+8),h.setAttribute("x2",S-M-8)})):b.debug("No Node "+n+": "+JSON.stringify(a.node(n)))});let E=w.getBBox();a.edges().forEach(function(n){n!==void 0&&a.edge(n)!==void 0&&(b.debug("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(a.edge(n))),K(i,a.edge(n),a.edge(n).relation))}),E=w.getBBox();const k={id:o||"root",label:o||"root",width:0,height:0};return k.width=E.width+2*B.padding,k.height=E.height+2*B.padding,b.debug("Doc rendered",k,a),k},et={setConf:Q,draw:D},lt={parser:P,db:N,renderer:et,styles:W,init:e=>{e.state||(e.state={}),e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute,N.clear()}};export{lt as diagram}; diff --git a/pr-383/assets/chunks/stateDiagram-v2-7c93469e.b7a5d2f2.js b/pr-383/assets/chunks/stateDiagram-v2-7c93469e.a55c5ec3.js similarity index 91% rename from pr-383/assets/chunks/stateDiagram-v2-7c93469e.b7a5d2f2.js rename to pr-383/assets/chunks/stateDiagram-v2-7c93469e.a55c5ec3.js index 8dbdaf85a..5b4d233da 100644 --- a/pr-383/assets/chunks/stateDiagram-v2-7c93469e.b7a5d2f2.js +++ b/pr-383/assets/chunks/stateDiagram-v2-7c93469e.a55c5ec3.js @@ -1 +1 @@ -import{p as Q,d as B,s as X,D as H,a as Z,S as j,b as F,c as I}from"./styles-f626f8de.a3799276.js";import{G as tt}from"./layout.ca521a87.js";import{l,c as g,h as x,y as et,i as ot,j as w}from"../app.34e6398e.js";import{r as st}from"./index-4c4adb72.5e4d3745.js";import"./framework.be0a7370.js";import"./theme.e11407bf.js";import"./edges-b00f0ec2.14be9f5e.js";import"./createText-285e50b4.f886ce05.js";import"./svgDraw-5d8a058e.ea5389d7.js";import"./line.075f786d.js";import"./array.9f3ba611.js";import"./path.53f90ab3.js";const A="rect",C="rectWithTitle",nt="start",ct="end",it="divider",rt="roundedWithTitle",lt="note",at="noteGroup",_="statediagram",dt="state",Et=`${_}-${dt}`,U="transition",St="note",Tt="note-edge",pt=`${U} ${Tt}`,_t=`${_}-${St}`,ut="cluster",Dt=`${_}-${ut}`,ft="cluster-alt",bt=`${_}-${ft}`,V="parent",Y="note",ht="state",N="----",At=`${N}${Y}`,M=`${N}${V}`,W="fill:none",z="fill: #333",m="c",q="text",K="normal";let y={},E=0;const yt=function(t){const n=Object.keys(t);for(const e of n)t[e]},gt=function(t,n){l.trace("Extracting classes"),n.db.clear();try{return n.parser.parse(t),n.db.extract(n.db.getRootDocV2()),n.db.getClasses()}catch(e){return e}};function $t(t){return t==null?"":t.classes?t.classes.join(" "):""}function R(t="",n=0,e="",c=N){const i=e!==null&&e.length>0?`${c}${e}`:"";return`${ht}-${t}${i}-${n}`}const h=(t,n,e,c,i,r)=>{const o=e.id,u=$t(c[o]);if(o!=="root"){let T=A;e.start===!0&&(T=nt),e.start===!1&&(T=ct),e.type!==H&&(T=e.type),y[o]||(y[o]={id:o,shape:T,description:w.sanitizeText(o,g()),classes:`${u} ${Et}`});const s=y[o];e.description&&(Array.isArray(s.description)?(s.shape=C,s.description.push(e.description)):s.description.length>0?(s.shape=C,s.description===o?s.description=[e.description]:s.description=[s.description,e.description]):(s.shape=A,s.description=e.description),s.description=w.sanitizeTextOrArray(s.description,g())),s.description.length===1&&s.shape===C&&(s.shape=A),!s.type&&e.doc&&(l.info("Setting cluster for ",o,G(e)),s.type="group",s.dir=G(e),s.shape=e.type===Z?it:rt,s.classes=s.classes+" "+Dt+" "+(r?bt:""));const p={labelStyle:"",shape:s.shape,labelText:s.description,classes:s.classes,style:"",id:o,dir:s.dir,domId:R(o,E),type:s.type,padding:15};if(p.centerLabel=!0,e.note){const a={labelStyle:"",shape:lt,labelText:e.note.text,classes:_t,style:"",id:o+At+"-"+E,domId:R(o,E,Y),type:s.type,padding:15},d={labelStyle:"",shape:at,labelText:e.note.text,classes:s.classes,style:"",id:o+M,domId:R(o,E,V),type:"group",padding:0};E++;const D=o+M;t.setNode(D,d),t.setNode(a.id,a),t.setNode(o,p),t.setParent(o,D),t.setParent(a.id,D);let S=o,f=a.id;e.note.position==="left of"&&(S=a.id,f=o),t.setEdge(S,f,{arrowhead:"none",arrowType:"",style:W,labelStyle:"",classes:pt,arrowheadStyle:z,labelpos:m,labelType:q,thickness:K})}else t.setNode(o,p)}n&&n.id!=="root"&&(l.trace("Setting node ",o," to be child of its parent ",n.id),t.setParent(o,n.id)),e.doc&&(l.trace("Adding nodes children "),xt(t,e,e.doc,c,i,!r))},xt=(t,n,e,c,i,r)=>{l.trace("items",e),e.forEach(o=>{switch(o.stmt){case F:h(t,n,o,c,i,r);break;case H:h(t,n,o,c,i,r);break;case j:{h(t,n,o.state1,c,i,r),h(t,n,o.state2,c,i,r);const u={id:"edge"+E,arrowhead:"normal",arrowTypeEnd:"arrow_barb",style:W,labelStyle:"",label:w.sanitizeText(o.description,g()),arrowheadStyle:z,labelpos:m,labelType:q,thickness:K,classes:U};t.setEdge(o.state1.id,o.state2.id,u,E),E++}break}})},G=(t,n=I)=>{let e=n;if(t.doc)for(let c=0;c{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute,B.clear()}};export{Vt as diagram}; +import{p as Q,d as B,s as X,D as H,a as Z,S as j,b as F,c as I}from"./styles-f626f8de.a466b9e4.js";import{G as tt}from"./layout.66644227.js";import{l,c as g,h as x,y as et,i as ot,j as w}from"../app.3c4fe3d0.js";import{r as st}from"./index-4c4adb72.3f6562ef.js";import"./framework.be0a7370.js";import"./theme.71fa6e36.js";import"./edges-b00f0ec2.d6f18c62.js";import"./createText-285e50b4.661aa36f.js";import"./svgDraw-5d8a058e.38485a41.js";import"./line.809d7f74.js";import"./array.9f3ba611.js";import"./path.53f90ab3.js";const A="rect",C="rectWithTitle",nt="start",ct="end",it="divider",rt="roundedWithTitle",lt="note",at="noteGroup",_="statediagram",dt="state",Et=`${_}-${dt}`,U="transition",St="note",Tt="note-edge",pt=`${U} ${Tt}`,_t=`${_}-${St}`,ut="cluster",Dt=`${_}-${ut}`,ft="cluster-alt",bt=`${_}-${ft}`,V="parent",Y="note",ht="state",N="----",At=`${N}${Y}`,M=`${N}${V}`,W="fill:none",z="fill: #333",m="c",q="text",K="normal";let y={},E=0;const yt=function(t){const n=Object.keys(t);for(const e of n)t[e]},gt=function(t,n){l.trace("Extracting classes"),n.db.clear();try{return n.parser.parse(t),n.db.extract(n.db.getRootDocV2()),n.db.getClasses()}catch(e){return e}};function $t(t){return t==null?"":t.classes?t.classes.join(" "):""}function R(t="",n=0,e="",c=N){const i=e!==null&&e.length>0?`${c}${e}`:"";return`${ht}-${t}${i}-${n}`}const h=(t,n,e,c,i,r)=>{const o=e.id,u=$t(c[o]);if(o!=="root"){let T=A;e.start===!0&&(T=nt),e.start===!1&&(T=ct),e.type!==H&&(T=e.type),y[o]||(y[o]={id:o,shape:T,description:w.sanitizeText(o,g()),classes:`${u} ${Et}`});const s=y[o];e.description&&(Array.isArray(s.description)?(s.shape=C,s.description.push(e.description)):s.description.length>0?(s.shape=C,s.description===o?s.description=[e.description]:s.description=[s.description,e.description]):(s.shape=A,s.description=e.description),s.description=w.sanitizeTextOrArray(s.description,g())),s.description.length===1&&s.shape===C&&(s.shape=A),!s.type&&e.doc&&(l.info("Setting cluster for ",o,G(e)),s.type="group",s.dir=G(e),s.shape=e.type===Z?it:rt,s.classes=s.classes+" "+Dt+" "+(r?bt:""));const p={labelStyle:"",shape:s.shape,labelText:s.description,classes:s.classes,style:"",id:o,dir:s.dir,domId:R(o,E),type:s.type,padding:15};if(p.centerLabel=!0,e.note){const a={labelStyle:"",shape:lt,labelText:e.note.text,classes:_t,style:"",id:o+At+"-"+E,domId:R(o,E,Y),type:s.type,padding:15},d={labelStyle:"",shape:at,labelText:e.note.text,classes:s.classes,style:"",id:o+M,domId:R(o,E,V),type:"group",padding:0};E++;const D=o+M;t.setNode(D,d),t.setNode(a.id,a),t.setNode(o,p),t.setParent(o,D),t.setParent(a.id,D);let S=o,f=a.id;e.note.position==="left of"&&(S=a.id,f=o),t.setEdge(S,f,{arrowhead:"none",arrowType:"",style:W,labelStyle:"",classes:pt,arrowheadStyle:z,labelpos:m,labelType:q,thickness:K})}else t.setNode(o,p)}n&&n.id!=="root"&&(l.trace("Setting node ",o," to be child of its parent ",n.id),t.setParent(o,n.id)),e.doc&&(l.trace("Adding nodes children "),xt(t,e,e.doc,c,i,!r))},xt=(t,n,e,c,i,r)=>{l.trace("items",e),e.forEach(o=>{switch(o.stmt){case F:h(t,n,o,c,i,r);break;case H:h(t,n,o,c,i,r);break;case j:{h(t,n,o.state1,c,i,r),h(t,n,o.state2,c,i,r);const u={id:"edge"+E,arrowhead:"normal",arrowTypeEnd:"arrow_barb",style:W,labelStyle:"",label:w.sanitizeText(o.description,g()),arrowheadStyle:z,labelpos:m,labelType:q,thickness:K,classes:U};t.setEdge(o.state1.id,o.state2.id,u,E),E++}break}})},G=(t,n=I)=>{let e=n;if(t.doc)for(let c=0;c{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute,B.clear()}};export{Vt as diagram}; diff --git a/pr-383/assets/chunks/styles-88ad4441.f35605f9.js b/pr-383/assets/chunks/styles-88ad4441.aa2ac1f2.js similarity index 99% rename from pr-383/assets/chunks/styles-88ad4441.f35605f9.js rename to pr-383/assets/chunks/styles-88ad4441.aa2ac1f2.js index 98ec9763f..4f546c71e 100644 --- a/pr-383/assets/chunks/styles-88ad4441.f35605f9.js +++ b/pr-383/assets/chunks/styles-88ad4441.aa2ac1f2.js @@ -1,4 +1,4 @@ -import{s as He,g as We,a as qe,b as Je,c as R,v as Ze,x as $e,m as et,z as tt,l as st,j as De,y as Ve,h as M}from"../app.34e6398e.js";var Be=function(){var e=function(v,n,r,c){for(r=r||{},c=v.length;c--;r[v[c]]=n);return r},u=[1,34],l=[1,35],o=[1,36],h=[1,37],b=[1,9],g=[1,8],_=[1,19],D=[1,20],z=[1,21],Y=[1,40],L=[1,41],K=[1,27],j=[1,25],Q=[1,26],X=[1,32],H=[1,33],W=[1,28],q=[1,29],J=[1,30],Z=[1,31],f=[1,45],d=[1,42],E=[1,43],C=[1,44],m=[1,46],pe=[1,24],a=[1,16,24],$=[1,60],ee=[1,61],te=[1,62],se=[1,63],ie=[1,64],fe=[1,65],de=[1,66],ue=[1,16,24,52],Ne=[1,77],w=[1,16,24,27,28,36,50,52,55,68,69,70,71,72,73,74,79,81],ne=[1,16,24,27,28,34,36,50,52,55,59,68,69,70,71,72,73,74,79,81,94,96,97,98,99],Le=[1,86],re=[28,94,96,97,98,99],V=[28,73,74,94,96,97,98,99],Ie=[28,68,69,70,71,72,94,96,97,98,99],Ee=[1,99],Ce=[1,16,24,50,52,55],ae=[1,16,24,36],xe=[8,9,10,11,19,23,44,46,48,53,57,58,60,61,63,65,75,76,78,82,94,96,97,98,99],ke={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,directive:5,statements:6,direction:7,direction_tb:8,direction_bt:9,direction_rl:10,direction_lr:11,graphConfig:12,openDirective:13,typeDirective:14,closeDirective:15,NEWLINE:16,":":17,argDirective:18,open_directive:19,type_directive:20,arg_directive:21,close_directive:22,CLASS_DIAGRAM:23,EOF:24,statement:25,classLabel:26,SQS:27,STR:28,SQE:29,namespaceName:30,alphaNumToken:31,className:32,classLiteralName:33,GENERICTYPE:34,relationStatement:35,LABEL:36,namespaceStatement:37,classStatement:38,methodStatement:39,annotationStatement:40,clickStatement:41,cssClassStatement:42,noteStatement:43,acc_title:44,acc_title_value:45,acc_descr:46,acc_descr_value:47,acc_descr_multiline_value:48,namespaceIdentifier:49,STRUCT_START:50,classStatements:51,STRUCT_STOP:52,NAMESPACE:53,classIdentifier:54,STYLE_SEPARATOR:55,members:56,CLASS:57,ANNOTATION_START:58,ANNOTATION_END:59,MEMBER:60,SEPARATOR:61,relation:62,NOTE_FOR:63,noteText:64,NOTE:65,relationType:66,lineType:67,AGGREGATION:68,EXTENSION:69,COMPOSITION:70,DEPENDENCY:71,LOLLIPOP:72,LINE:73,DOTTED_LINE:74,CALLBACK:75,LINK:76,LINK_TARGET:77,CLICK:78,CALLBACK_NAME:79,CALLBACK_ARGS:80,HREF:81,CSSCLASS:82,commentToken:83,textToken:84,graphCodeTokens:85,textNoTagsToken:86,TAGSTART:87,TAGEND:88,"==":89,"--":90,PCT:91,DEFAULT:92,SPACE:93,MINUS:94,keywords:95,UNICODE_TEXT:96,NUM:97,ALPHA:98,BQUOTE_STR:99,$accept:0,$end:1},terminals_:{2:"error",8:"direction_tb",9:"direction_bt",10:"direction_rl",11:"direction_lr",16:"NEWLINE",17:":",19:"open_directive",20:"type_directive",21:"arg_directive",22:"close_directive",23:"CLASS_DIAGRAM",24:"EOF",27:"SQS",28:"STR",29:"SQE",34:"GENERICTYPE",36:"LABEL",44:"acc_title",45:"acc_title_value",46:"acc_descr",47:"acc_descr_value",48:"acc_descr_multiline_value",50:"STRUCT_START",52:"STRUCT_STOP",53:"NAMESPACE",55:"STYLE_SEPARATOR",57:"CLASS",58:"ANNOTATION_START",59:"ANNOTATION_END",60:"MEMBER",61:"SEPARATOR",63:"NOTE_FOR",65:"NOTE",68:"AGGREGATION",69:"EXTENSION",70:"COMPOSITION",71:"DEPENDENCY",72:"LOLLIPOP",73:"LINE",74:"DOTTED_LINE",75:"CALLBACK",76:"LINK",77:"LINK_TARGET",78:"CLICK",79:"CALLBACK_NAME",80:"CALLBACK_ARGS",81:"HREF",82:"CSSCLASS",85:"graphCodeTokens",87:"TAGSTART",88:"TAGEND",89:"==",90:"--",91:"PCT",92:"DEFAULT",93:"SPACE",94:"MINUS",95:"keywords",96:"UNICODE_TEXT",97:"NUM",98:"ALPHA",99:"BQUOTE_STR"},productions_:[0,[3,1],[3,2],[3,1],[7,1],[7,1],[7,1],[7,1],[4,1],[5,4],[5,6],[13,1],[14,1],[18,1],[15,1],[12,4],[6,1],[6,2],[6,3],[26,3],[30,1],[30,2],[32,1],[32,1],[32,2],[32,2],[32,2],[25,1],[25,2],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,2],[25,2],[25,1],[37,4],[37,5],[49,2],[51,1],[51,2],[51,3],[38,1],[38,3],[38,4],[38,6],[54,2],[54,3],[40,4],[56,1],[56,2],[39,1],[39,2],[39,1],[39,1],[35,3],[35,4],[35,4],[35,5],[43,3],[43,2],[62,3],[62,2],[62,2],[62,1],[66,1],[66,1],[66,1],[66,1],[66,1],[67,1],[67,1],[41,3],[41,4],[41,3],[41,4],[41,4],[41,5],[41,3],[41,4],[41,4],[41,5],[41,4],[41,5],[41,5],[41,6],[42,3],[83,1],[83,1],[84,1],[84,1],[84,1],[84,1],[84,1],[84,1],[84,1],[86,1],[86,1],[86,1],[86,1],[31,1],[31,1],[31,1],[31,1],[33,1],[64,1]],performAction:function(n,r,c,i,A,t,G){var s=t.length-1;switch(A){case 4:i.setDirection("TB");break;case 5:i.setDirection("BT");break;case 6:i.setDirection("RL");break;case 7:i.setDirection("LR");break;case 11:i.parseDirective("%%{","open_directive");break;case 12:i.parseDirective(t[s],"type_directive");break;case 13:t[s]=t[s].trim().replace(/'/g,'"'),i.parseDirective(t[s],"arg_directive");break;case 14:i.parseDirective("}%%","close_directive","class");break;case 19:this.$=t[s-1];break;case 20:case 22:case 23:this.$=t[s];break;case 21:case 24:this.$=t[s-1]+t[s];break;case 25:case 26:this.$=t[s-1]+"~"+t[s]+"~";break;case 27:i.addRelation(t[s]);break;case 28:t[s-1].title=i.cleanupLabel(t[s]),i.addRelation(t[s-1]);break;case 37:this.$=t[s].trim(),i.setAccTitle(this.$);break;case 38:case 39:this.$=t[s].trim(),i.setAccDescription(this.$);break;case 40:i.addClassesToNamespace(t[s-3],t[s-1]);break;case 41:i.addClassesToNamespace(t[s-4],t[s-1]);break;case 42:this.$=t[s],i.addNamespace(t[s]);break;case 43:this.$=[t[s]];break;case 44:this.$=[t[s-1]];break;case 45:t[s].unshift(t[s-2]),this.$=t[s];break;case 47:i.setCssClass(t[s-2],t[s]);break;case 48:i.addMembers(t[s-3],t[s-1]);break;case 49:i.setCssClass(t[s-5],t[s-3]),i.addMembers(t[s-5],t[s-1]);break;case 50:this.$=t[s],i.addClass(t[s]);break;case 51:this.$=t[s-1],i.addClass(t[s-1]),i.setClassLabel(t[s-1],t[s]);break;case 52:i.addAnnotation(t[s],t[s-2]);break;case 53:this.$=[t[s]];break;case 54:t[s].push(t[s-1]),this.$=t[s];break;case 55:break;case 56:i.addMember(t[s-1],i.cleanupLabel(t[s]));break;case 57:break;case 58:break;case 59:this.$={id1:t[s-2],id2:t[s],relation:t[s-1],relationTitle1:"none",relationTitle2:"none"};break;case 60:this.$={id1:t[s-3],id2:t[s],relation:t[s-1],relationTitle1:t[s-2],relationTitle2:"none"};break;case 61:this.$={id1:t[s-3],id2:t[s],relation:t[s-2],relationTitle1:"none",relationTitle2:t[s-1]};break;case 62:this.$={id1:t[s-4],id2:t[s],relation:t[s-2],relationTitle1:t[s-3],relationTitle2:t[s-1]};break;case 63:i.addNote(t[s],t[s-1]);break;case 64:i.addNote(t[s]);break;case 65:this.$={type1:t[s-2],type2:t[s],lineType:t[s-1]};break;case 66:this.$={type1:"none",type2:t[s],lineType:t[s-1]};break;case 67:this.$={type1:t[s-1],type2:"none",lineType:t[s]};break;case 68:this.$={type1:"none",type2:"none",lineType:t[s]};break;case 69:this.$=i.relationType.AGGREGATION;break;case 70:this.$=i.relationType.EXTENSION;break;case 71:this.$=i.relationType.COMPOSITION;break;case 72:this.$=i.relationType.DEPENDENCY;break;case 73:this.$=i.relationType.LOLLIPOP;break;case 74:this.$=i.lineType.LINE;break;case 75:this.$=i.lineType.DOTTED_LINE;break;case 76:case 82:this.$=t[s-2],i.setClickEvent(t[s-1],t[s]);break;case 77:case 83:this.$=t[s-3],i.setClickEvent(t[s-2],t[s-1]),i.setTooltip(t[s-2],t[s]);break;case 78:this.$=t[s-2],i.setLink(t[s-1],t[s]);break;case 79:this.$=t[s-3],i.setLink(t[s-2],t[s-1],t[s]);break;case 80:this.$=t[s-3],i.setLink(t[s-2],t[s-1]),i.setTooltip(t[s-2],t[s]);break;case 81:this.$=t[s-4],i.setLink(t[s-3],t[s-2],t[s]),i.setTooltip(t[s-3],t[s-1]);break;case 84:this.$=t[s-3],i.setClickEvent(t[s-2],t[s-1],t[s]);break;case 85:this.$=t[s-4],i.setClickEvent(t[s-3],t[s-2],t[s-1]),i.setTooltip(t[s-3],t[s]);break;case 86:this.$=t[s-3],i.setLink(t[s-2],t[s]);break;case 87:this.$=t[s-4],i.setLink(t[s-3],t[s-1],t[s]);break;case 88:this.$=t[s-4],i.setLink(t[s-3],t[s-1]),i.setTooltip(t[s-3],t[s]);break;case 89:this.$=t[s-5],i.setLink(t[s-4],t[s-2],t[s]),i.setTooltip(t[s-4],t[s-1]);break;case 90:i.setCssClass(t[s-1],t[s]);break}},table:[{3:1,4:2,5:3,6:4,7:18,8:u,9:l,10:o,11:h,12:5,13:6,19:b,23:g,25:7,31:38,32:22,33:39,35:10,37:11,38:12,39:13,40:14,41:15,42:16,43:17,44:_,46:D,48:z,49:23,53:Y,54:24,57:L,58:K,60:j,61:Q,63:X,65:H,75:W,76:q,78:J,82:Z,94:f,96:d,97:E,98:C,99:m},{1:[3]},{1:[2,1]},{3:47,4:2,5:3,6:4,7:18,8:u,9:l,10:o,11:h,12:5,13:6,19:b,23:g,25:7,31:38,32:22,33:39,35:10,37:11,38:12,39:13,40:14,41:15,42:16,43:17,44:_,46:D,48:z,49:23,53:Y,54:24,57:L,58:K,60:j,61:Q,63:X,65:H,75:W,76:q,78:J,82:Z,94:f,96:d,97:E,98:C,99:m},{1:[2,3]},{1:[2,8]},{14:48,20:[1,49]},e(pe,[2,16],{16:[1,50]}),{16:[1,51]},{20:[2,11]},e(a,[2,27],{36:[1,52]}),e(a,[2,29]),e(a,[2,30]),e(a,[2,31]),e(a,[2,32]),e(a,[2,33]),e(a,[2,34]),e(a,[2,35]),e(a,[2,36]),{45:[1,53]},{47:[1,54]},e(a,[2,39]),e(a,[2,55],{62:55,66:58,67:59,28:[1,56],36:[1,57],68:$,69:ee,70:te,71:se,72:ie,73:fe,74:de}),{50:[1,67]},e(ue,[2,46],{50:[1,69],55:[1,68]}),e(a,[2,57]),e(a,[2,58]),{31:70,94:f,96:d,97:E,98:C},{31:38,32:71,33:39,94:f,96:d,97:E,98:C,99:m},{31:38,32:72,33:39,94:f,96:d,97:E,98:C,99:m},{31:38,32:73,33:39,94:f,96:d,97:E,98:C,99:m},{28:[1,74]},{31:38,32:75,33:39,94:f,96:d,97:E,98:C,99:m},{28:Ne,64:76},e(a,[2,4]),e(a,[2,5]),e(a,[2,6]),e(a,[2,7]),e(w,[2,22],{31:38,33:39,32:78,34:[1,79],94:f,96:d,97:E,98:C,99:m}),e(w,[2,23],{34:[1,80]}),{30:81,31:82,94:f,96:d,97:E,98:C},{31:38,32:83,33:39,94:f,96:d,97:E,98:C,99:m},e(ne,[2,104]),e(ne,[2,105]),e(ne,[2,106]),e(ne,[2,107]),e([1,16,24,27,28,34,36,50,52,55,68,69,70,71,72,73,74,79,81],[2,108]),{1:[2,2]},{15:84,17:[1,85],22:Le},e([17,22],[2,12]),e(pe,[2,17],{25:7,35:10,37:11,38:12,39:13,40:14,41:15,42:16,43:17,7:18,32:22,49:23,54:24,31:38,33:39,6:87,8:u,9:l,10:o,11:h,44:_,46:D,48:z,53:Y,57:L,58:K,60:j,61:Q,63:X,65:H,75:W,76:q,78:J,82:Z,94:f,96:d,97:E,98:C,99:m}),{6:88,7:18,8:u,9:l,10:o,11:h,25:7,31:38,32:22,33:39,35:10,37:11,38:12,39:13,40:14,41:15,42:16,43:17,44:_,46:D,48:z,49:23,53:Y,54:24,57:L,58:K,60:j,61:Q,63:X,65:H,75:W,76:q,78:J,82:Z,94:f,96:d,97:E,98:C,99:m},e(a,[2,28]),e(a,[2,37]),e(a,[2,38]),{28:[1,90],31:38,32:89,33:39,94:f,96:d,97:E,98:C,99:m},{62:91,66:58,67:59,68:$,69:ee,70:te,71:se,72:ie,73:fe,74:de},e(a,[2,56]),{67:92,73:fe,74:de},e(re,[2,68],{66:93,68:$,69:ee,70:te,71:se,72:ie}),e(V,[2,69]),e(V,[2,70]),e(V,[2,71]),e(V,[2,72]),e(V,[2,73]),e(Ie,[2,74]),e(Ie,[2,75]),{16:[1,95],38:96,51:94,54:24,57:L},{31:97,94:f,96:d,97:E,98:C},{56:98,60:Ee},{59:[1,100]},{28:[1,101]},{28:[1,102]},{79:[1,103],81:[1,104]},{31:105,94:f,96:d,97:E,98:C},{28:Ne,64:106},e(a,[2,64]),e(a,[2,109]),e(w,[2,24]),e(w,[2,25]),e(w,[2,26]),{50:[2,42]},{30:107,31:82,50:[2,20],94:f,96:d,97:E,98:C},e(Ce,[2,50],{26:108,27:[1,109]}),{16:[1,110]},{18:111,21:[1,112]},{16:[2,14]},e(pe,[2,18]),{24:[1,113]},e(ae,[2,59]),{31:38,32:114,33:39,94:f,96:d,97:E,98:C,99:m},{28:[1,116],31:38,32:115,33:39,94:f,96:d,97:E,98:C,99:m},e(re,[2,67],{66:117,68:$,69:ee,70:te,71:se,72:ie}),e(re,[2,66]),{52:[1,118]},{38:96,51:119,54:24,57:L},{16:[1,120],52:[2,43]},e(ue,[2,47],{50:[1,121]}),{52:[1,122]},{52:[2,53],56:123,60:Ee},{31:38,32:124,33:39,94:f,96:d,97:E,98:C,99:m},e(a,[2,76],{28:[1,125]}),e(a,[2,78],{28:[1,127],77:[1,126]}),e(a,[2,82],{28:[1,128],80:[1,129]}),{28:[1,130]},e(a,[2,90]),e(a,[2,63]),{50:[2,21]},e(Ce,[2,51]),{28:[1,131]},e(xe,[2,9]),{15:132,22:Le},{22:[2,13]},{1:[2,15]},e(ae,[2,61]),e(ae,[2,60]),{31:38,32:133,33:39,94:f,96:d,97:E,98:C,99:m},e(re,[2,65]),e(a,[2,40]),{52:[1,134]},{38:96,51:135,52:[2,44],54:24,57:L},{56:136,60:Ee},e(ue,[2,48]),{52:[2,54]},e(a,[2,52]),e(a,[2,77]),e(a,[2,79]),e(a,[2,80],{77:[1,137]}),e(a,[2,83]),e(a,[2,84],{28:[1,138]}),e(a,[2,86],{28:[1,140],77:[1,139]}),{29:[1,141]},{16:[1,142]},e(ae,[2,62]),e(a,[2,41]),{52:[2,45]},{52:[1,143]},e(a,[2,81]),e(a,[2,85]),e(a,[2,87]),e(a,[2,88],{77:[1,144]}),e(Ce,[2,19]),e(xe,[2,10]),e(ue,[2,49]),e(a,[2,89])],defaultActions:{2:[2,1],4:[2,3],5:[2,8],9:[2,11],47:[2,2],81:[2,42],86:[2,14],107:[2,21],112:[2,13],113:[2,15],123:[2,54],135:[2,45]},parseError:function(n,r){if(r.recoverable)this.trace(n);else{var c=new Error(n);throw c.hash=r,c}},parse:function(n){var r=this,c=[0],i=[],A=[null],t=[],G=this.table,s="",ce=0,Oe=0,Ke=2,Re=1,je=t.slice.call(arguments,1),k=Object.create(this.lexer),I={yy:{}};for(var me in this.yy)Object.prototype.hasOwnProperty.call(this.yy,me)&&(I.yy[me]=this.yy[me]);k.setInput(n,I.yy),I.yy.lexer=k,I.yy.parser=this,typeof k.yylloc>"u"&&(k.yylloc={});var be=k.yylloc;t.push(be);var Qe=k.options&&k.options.ranges;typeof I.yy.parseError=="function"?this.parseError=I.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Xe(){var y;return y=i.pop()||k.lex()||Re,typeof y!="number"&&(y instanceof Array&&(i=y,y=i.pop()),y=r.symbols_[y]||y),y}for(var F,x,B,Fe,O={},le,T,Pe,oe;;){if(x=c[c.length-1],this.defaultActions[x]?B=this.defaultActions[x]:((F===null||typeof F>"u")&&(F=Xe()),B=G[x]&&G[x][F]),typeof B>"u"||!B.length||!B[0]){var _e="";oe=[];for(le in G[x])this.terminals_[le]&&le>Ke&&oe.push("'"+this.terminals_[le]+"'");k.showPosition?_e="Parse error on line "+(ce+1)+`: +import{s as He,g as We,a as qe,b as Je,c as R,v as Ze,x as $e,m as et,z as tt,l as st,j as De,y as Ve,h as M}from"../app.3c4fe3d0.js";var Be=function(){var e=function(v,n,r,c){for(r=r||{},c=v.length;c--;r[v[c]]=n);return r},u=[1,34],l=[1,35],o=[1,36],h=[1,37],b=[1,9],g=[1,8],_=[1,19],D=[1,20],z=[1,21],Y=[1,40],L=[1,41],K=[1,27],j=[1,25],Q=[1,26],X=[1,32],H=[1,33],W=[1,28],q=[1,29],J=[1,30],Z=[1,31],f=[1,45],d=[1,42],E=[1,43],C=[1,44],m=[1,46],pe=[1,24],a=[1,16,24],$=[1,60],ee=[1,61],te=[1,62],se=[1,63],ie=[1,64],fe=[1,65],de=[1,66],ue=[1,16,24,52],Ne=[1,77],w=[1,16,24,27,28,36,50,52,55,68,69,70,71,72,73,74,79,81],ne=[1,16,24,27,28,34,36,50,52,55,59,68,69,70,71,72,73,74,79,81,94,96,97,98,99],Le=[1,86],re=[28,94,96,97,98,99],V=[28,73,74,94,96,97,98,99],Ie=[28,68,69,70,71,72,94,96,97,98,99],Ee=[1,99],Ce=[1,16,24,50,52,55],ae=[1,16,24,36],xe=[8,9,10,11,19,23,44,46,48,53,57,58,60,61,63,65,75,76,78,82,94,96,97,98,99],ke={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,directive:5,statements:6,direction:7,direction_tb:8,direction_bt:9,direction_rl:10,direction_lr:11,graphConfig:12,openDirective:13,typeDirective:14,closeDirective:15,NEWLINE:16,":":17,argDirective:18,open_directive:19,type_directive:20,arg_directive:21,close_directive:22,CLASS_DIAGRAM:23,EOF:24,statement:25,classLabel:26,SQS:27,STR:28,SQE:29,namespaceName:30,alphaNumToken:31,className:32,classLiteralName:33,GENERICTYPE:34,relationStatement:35,LABEL:36,namespaceStatement:37,classStatement:38,methodStatement:39,annotationStatement:40,clickStatement:41,cssClassStatement:42,noteStatement:43,acc_title:44,acc_title_value:45,acc_descr:46,acc_descr_value:47,acc_descr_multiline_value:48,namespaceIdentifier:49,STRUCT_START:50,classStatements:51,STRUCT_STOP:52,NAMESPACE:53,classIdentifier:54,STYLE_SEPARATOR:55,members:56,CLASS:57,ANNOTATION_START:58,ANNOTATION_END:59,MEMBER:60,SEPARATOR:61,relation:62,NOTE_FOR:63,noteText:64,NOTE:65,relationType:66,lineType:67,AGGREGATION:68,EXTENSION:69,COMPOSITION:70,DEPENDENCY:71,LOLLIPOP:72,LINE:73,DOTTED_LINE:74,CALLBACK:75,LINK:76,LINK_TARGET:77,CLICK:78,CALLBACK_NAME:79,CALLBACK_ARGS:80,HREF:81,CSSCLASS:82,commentToken:83,textToken:84,graphCodeTokens:85,textNoTagsToken:86,TAGSTART:87,TAGEND:88,"==":89,"--":90,PCT:91,DEFAULT:92,SPACE:93,MINUS:94,keywords:95,UNICODE_TEXT:96,NUM:97,ALPHA:98,BQUOTE_STR:99,$accept:0,$end:1},terminals_:{2:"error",8:"direction_tb",9:"direction_bt",10:"direction_rl",11:"direction_lr",16:"NEWLINE",17:":",19:"open_directive",20:"type_directive",21:"arg_directive",22:"close_directive",23:"CLASS_DIAGRAM",24:"EOF",27:"SQS",28:"STR",29:"SQE",34:"GENERICTYPE",36:"LABEL",44:"acc_title",45:"acc_title_value",46:"acc_descr",47:"acc_descr_value",48:"acc_descr_multiline_value",50:"STRUCT_START",52:"STRUCT_STOP",53:"NAMESPACE",55:"STYLE_SEPARATOR",57:"CLASS",58:"ANNOTATION_START",59:"ANNOTATION_END",60:"MEMBER",61:"SEPARATOR",63:"NOTE_FOR",65:"NOTE",68:"AGGREGATION",69:"EXTENSION",70:"COMPOSITION",71:"DEPENDENCY",72:"LOLLIPOP",73:"LINE",74:"DOTTED_LINE",75:"CALLBACK",76:"LINK",77:"LINK_TARGET",78:"CLICK",79:"CALLBACK_NAME",80:"CALLBACK_ARGS",81:"HREF",82:"CSSCLASS",85:"graphCodeTokens",87:"TAGSTART",88:"TAGEND",89:"==",90:"--",91:"PCT",92:"DEFAULT",93:"SPACE",94:"MINUS",95:"keywords",96:"UNICODE_TEXT",97:"NUM",98:"ALPHA",99:"BQUOTE_STR"},productions_:[0,[3,1],[3,2],[3,1],[7,1],[7,1],[7,1],[7,1],[4,1],[5,4],[5,6],[13,1],[14,1],[18,1],[15,1],[12,4],[6,1],[6,2],[6,3],[26,3],[30,1],[30,2],[32,1],[32,1],[32,2],[32,2],[32,2],[25,1],[25,2],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,2],[25,2],[25,1],[37,4],[37,5],[49,2],[51,1],[51,2],[51,3],[38,1],[38,3],[38,4],[38,6],[54,2],[54,3],[40,4],[56,1],[56,2],[39,1],[39,2],[39,1],[39,1],[35,3],[35,4],[35,4],[35,5],[43,3],[43,2],[62,3],[62,2],[62,2],[62,1],[66,1],[66,1],[66,1],[66,1],[66,1],[67,1],[67,1],[41,3],[41,4],[41,3],[41,4],[41,4],[41,5],[41,3],[41,4],[41,4],[41,5],[41,4],[41,5],[41,5],[41,6],[42,3],[83,1],[83,1],[84,1],[84,1],[84,1],[84,1],[84,1],[84,1],[84,1],[86,1],[86,1],[86,1],[86,1],[31,1],[31,1],[31,1],[31,1],[33,1],[64,1]],performAction:function(n,r,c,i,A,t,G){var s=t.length-1;switch(A){case 4:i.setDirection("TB");break;case 5:i.setDirection("BT");break;case 6:i.setDirection("RL");break;case 7:i.setDirection("LR");break;case 11:i.parseDirective("%%{","open_directive");break;case 12:i.parseDirective(t[s],"type_directive");break;case 13:t[s]=t[s].trim().replace(/'/g,'"'),i.parseDirective(t[s],"arg_directive");break;case 14:i.parseDirective("}%%","close_directive","class");break;case 19:this.$=t[s-1];break;case 20:case 22:case 23:this.$=t[s];break;case 21:case 24:this.$=t[s-1]+t[s];break;case 25:case 26:this.$=t[s-1]+"~"+t[s]+"~";break;case 27:i.addRelation(t[s]);break;case 28:t[s-1].title=i.cleanupLabel(t[s]),i.addRelation(t[s-1]);break;case 37:this.$=t[s].trim(),i.setAccTitle(this.$);break;case 38:case 39:this.$=t[s].trim(),i.setAccDescription(this.$);break;case 40:i.addClassesToNamespace(t[s-3],t[s-1]);break;case 41:i.addClassesToNamespace(t[s-4],t[s-1]);break;case 42:this.$=t[s],i.addNamespace(t[s]);break;case 43:this.$=[t[s]];break;case 44:this.$=[t[s-1]];break;case 45:t[s].unshift(t[s-2]),this.$=t[s];break;case 47:i.setCssClass(t[s-2],t[s]);break;case 48:i.addMembers(t[s-3],t[s-1]);break;case 49:i.setCssClass(t[s-5],t[s-3]),i.addMembers(t[s-5],t[s-1]);break;case 50:this.$=t[s],i.addClass(t[s]);break;case 51:this.$=t[s-1],i.addClass(t[s-1]),i.setClassLabel(t[s-1],t[s]);break;case 52:i.addAnnotation(t[s],t[s-2]);break;case 53:this.$=[t[s]];break;case 54:t[s].push(t[s-1]),this.$=t[s];break;case 55:break;case 56:i.addMember(t[s-1],i.cleanupLabel(t[s]));break;case 57:break;case 58:break;case 59:this.$={id1:t[s-2],id2:t[s],relation:t[s-1],relationTitle1:"none",relationTitle2:"none"};break;case 60:this.$={id1:t[s-3],id2:t[s],relation:t[s-1],relationTitle1:t[s-2],relationTitle2:"none"};break;case 61:this.$={id1:t[s-3],id2:t[s],relation:t[s-2],relationTitle1:"none",relationTitle2:t[s-1]};break;case 62:this.$={id1:t[s-4],id2:t[s],relation:t[s-2],relationTitle1:t[s-3],relationTitle2:t[s-1]};break;case 63:i.addNote(t[s],t[s-1]);break;case 64:i.addNote(t[s]);break;case 65:this.$={type1:t[s-2],type2:t[s],lineType:t[s-1]};break;case 66:this.$={type1:"none",type2:t[s],lineType:t[s-1]};break;case 67:this.$={type1:t[s-1],type2:"none",lineType:t[s]};break;case 68:this.$={type1:"none",type2:"none",lineType:t[s]};break;case 69:this.$=i.relationType.AGGREGATION;break;case 70:this.$=i.relationType.EXTENSION;break;case 71:this.$=i.relationType.COMPOSITION;break;case 72:this.$=i.relationType.DEPENDENCY;break;case 73:this.$=i.relationType.LOLLIPOP;break;case 74:this.$=i.lineType.LINE;break;case 75:this.$=i.lineType.DOTTED_LINE;break;case 76:case 82:this.$=t[s-2],i.setClickEvent(t[s-1],t[s]);break;case 77:case 83:this.$=t[s-3],i.setClickEvent(t[s-2],t[s-1]),i.setTooltip(t[s-2],t[s]);break;case 78:this.$=t[s-2],i.setLink(t[s-1],t[s]);break;case 79:this.$=t[s-3],i.setLink(t[s-2],t[s-1],t[s]);break;case 80:this.$=t[s-3],i.setLink(t[s-2],t[s-1]),i.setTooltip(t[s-2],t[s]);break;case 81:this.$=t[s-4],i.setLink(t[s-3],t[s-2],t[s]),i.setTooltip(t[s-3],t[s-1]);break;case 84:this.$=t[s-3],i.setClickEvent(t[s-2],t[s-1],t[s]);break;case 85:this.$=t[s-4],i.setClickEvent(t[s-3],t[s-2],t[s-1]),i.setTooltip(t[s-3],t[s]);break;case 86:this.$=t[s-3],i.setLink(t[s-2],t[s]);break;case 87:this.$=t[s-4],i.setLink(t[s-3],t[s-1],t[s]);break;case 88:this.$=t[s-4],i.setLink(t[s-3],t[s-1]),i.setTooltip(t[s-3],t[s]);break;case 89:this.$=t[s-5],i.setLink(t[s-4],t[s-2],t[s]),i.setTooltip(t[s-4],t[s-1]);break;case 90:i.setCssClass(t[s-1],t[s]);break}},table:[{3:1,4:2,5:3,6:4,7:18,8:u,9:l,10:o,11:h,12:5,13:6,19:b,23:g,25:7,31:38,32:22,33:39,35:10,37:11,38:12,39:13,40:14,41:15,42:16,43:17,44:_,46:D,48:z,49:23,53:Y,54:24,57:L,58:K,60:j,61:Q,63:X,65:H,75:W,76:q,78:J,82:Z,94:f,96:d,97:E,98:C,99:m},{1:[3]},{1:[2,1]},{3:47,4:2,5:3,6:4,7:18,8:u,9:l,10:o,11:h,12:5,13:6,19:b,23:g,25:7,31:38,32:22,33:39,35:10,37:11,38:12,39:13,40:14,41:15,42:16,43:17,44:_,46:D,48:z,49:23,53:Y,54:24,57:L,58:K,60:j,61:Q,63:X,65:H,75:W,76:q,78:J,82:Z,94:f,96:d,97:E,98:C,99:m},{1:[2,3]},{1:[2,8]},{14:48,20:[1,49]},e(pe,[2,16],{16:[1,50]}),{16:[1,51]},{20:[2,11]},e(a,[2,27],{36:[1,52]}),e(a,[2,29]),e(a,[2,30]),e(a,[2,31]),e(a,[2,32]),e(a,[2,33]),e(a,[2,34]),e(a,[2,35]),e(a,[2,36]),{45:[1,53]},{47:[1,54]},e(a,[2,39]),e(a,[2,55],{62:55,66:58,67:59,28:[1,56],36:[1,57],68:$,69:ee,70:te,71:se,72:ie,73:fe,74:de}),{50:[1,67]},e(ue,[2,46],{50:[1,69],55:[1,68]}),e(a,[2,57]),e(a,[2,58]),{31:70,94:f,96:d,97:E,98:C},{31:38,32:71,33:39,94:f,96:d,97:E,98:C,99:m},{31:38,32:72,33:39,94:f,96:d,97:E,98:C,99:m},{31:38,32:73,33:39,94:f,96:d,97:E,98:C,99:m},{28:[1,74]},{31:38,32:75,33:39,94:f,96:d,97:E,98:C,99:m},{28:Ne,64:76},e(a,[2,4]),e(a,[2,5]),e(a,[2,6]),e(a,[2,7]),e(w,[2,22],{31:38,33:39,32:78,34:[1,79],94:f,96:d,97:E,98:C,99:m}),e(w,[2,23],{34:[1,80]}),{30:81,31:82,94:f,96:d,97:E,98:C},{31:38,32:83,33:39,94:f,96:d,97:E,98:C,99:m},e(ne,[2,104]),e(ne,[2,105]),e(ne,[2,106]),e(ne,[2,107]),e([1,16,24,27,28,34,36,50,52,55,68,69,70,71,72,73,74,79,81],[2,108]),{1:[2,2]},{15:84,17:[1,85],22:Le},e([17,22],[2,12]),e(pe,[2,17],{25:7,35:10,37:11,38:12,39:13,40:14,41:15,42:16,43:17,7:18,32:22,49:23,54:24,31:38,33:39,6:87,8:u,9:l,10:o,11:h,44:_,46:D,48:z,53:Y,57:L,58:K,60:j,61:Q,63:X,65:H,75:W,76:q,78:J,82:Z,94:f,96:d,97:E,98:C,99:m}),{6:88,7:18,8:u,9:l,10:o,11:h,25:7,31:38,32:22,33:39,35:10,37:11,38:12,39:13,40:14,41:15,42:16,43:17,44:_,46:D,48:z,49:23,53:Y,54:24,57:L,58:K,60:j,61:Q,63:X,65:H,75:W,76:q,78:J,82:Z,94:f,96:d,97:E,98:C,99:m},e(a,[2,28]),e(a,[2,37]),e(a,[2,38]),{28:[1,90],31:38,32:89,33:39,94:f,96:d,97:E,98:C,99:m},{62:91,66:58,67:59,68:$,69:ee,70:te,71:se,72:ie,73:fe,74:de},e(a,[2,56]),{67:92,73:fe,74:de},e(re,[2,68],{66:93,68:$,69:ee,70:te,71:se,72:ie}),e(V,[2,69]),e(V,[2,70]),e(V,[2,71]),e(V,[2,72]),e(V,[2,73]),e(Ie,[2,74]),e(Ie,[2,75]),{16:[1,95],38:96,51:94,54:24,57:L},{31:97,94:f,96:d,97:E,98:C},{56:98,60:Ee},{59:[1,100]},{28:[1,101]},{28:[1,102]},{79:[1,103],81:[1,104]},{31:105,94:f,96:d,97:E,98:C},{28:Ne,64:106},e(a,[2,64]),e(a,[2,109]),e(w,[2,24]),e(w,[2,25]),e(w,[2,26]),{50:[2,42]},{30:107,31:82,50:[2,20],94:f,96:d,97:E,98:C},e(Ce,[2,50],{26:108,27:[1,109]}),{16:[1,110]},{18:111,21:[1,112]},{16:[2,14]},e(pe,[2,18]),{24:[1,113]},e(ae,[2,59]),{31:38,32:114,33:39,94:f,96:d,97:E,98:C,99:m},{28:[1,116],31:38,32:115,33:39,94:f,96:d,97:E,98:C,99:m},e(re,[2,67],{66:117,68:$,69:ee,70:te,71:se,72:ie}),e(re,[2,66]),{52:[1,118]},{38:96,51:119,54:24,57:L},{16:[1,120],52:[2,43]},e(ue,[2,47],{50:[1,121]}),{52:[1,122]},{52:[2,53],56:123,60:Ee},{31:38,32:124,33:39,94:f,96:d,97:E,98:C,99:m},e(a,[2,76],{28:[1,125]}),e(a,[2,78],{28:[1,127],77:[1,126]}),e(a,[2,82],{28:[1,128],80:[1,129]}),{28:[1,130]},e(a,[2,90]),e(a,[2,63]),{50:[2,21]},e(Ce,[2,51]),{28:[1,131]},e(xe,[2,9]),{15:132,22:Le},{22:[2,13]},{1:[2,15]},e(ae,[2,61]),e(ae,[2,60]),{31:38,32:133,33:39,94:f,96:d,97:E,98:C,99:m},e(re,[2,65]),e(a,[2,40]),{52:[1,134]},{38:96,51:135,52:[2,44],54:24,57:L},{56:136,60:Ee},e(ue,[2,48]),{52:[2,54]},e(a,[2,52]),e(a,[2,77]),e(a,[2,79]),e(a,[2,80],{77:[1,137]}),e(a,[2,83]),e(a,[2,84],{28:[1,138]}),e(a,[2,86],{28:[1,140],77:[1,139]}),{29:[1,141]},{16:[1,142]},e(ae,[2,62]),e(a,[2,41]),{52:[2,45]},{52:[1,143]},e(a,[2,81]),e(a,[2,85]),e(a,[2,87]),e(a,[2,88],{77:[1,144]}),e(Ce,[2,19]),e(xe,[2,10]),e(ue,[2,49]),e(a,[2,89])],defaultActions:{2:[2,1],4:[2,3],5:[2,8],9:[2,11],47:[2,2],81:[2,42],86:[2,14],107:[2,21],112:[2,13],113:[2,15],123:[2,54],135:[2,45]},parseError:function(n,r){if(r.recoverable)this.trace(n);else{var c=new Error(n);throw c.hash=r,c}},parse:function(n){var r=this,c=[0],i=[],A=[null],t=[],G=this.table,s="",ce=0,Oe=0,Ke=2,Re=1,je=t.slice.call(arguments,1),k=Object.create(this.lexer),I={yy:{}};for(var me in this.yy)Object.prototype.hasOwnProperty.call(this.yy,me)&&(I.yy[me]=this.yy[me]);k.setInput(n,I.yy),I.yy.lexer=k,I.yy.parser=this,typeof k.yylloc>"u"&&(k.yylloc={});var be=k.yylloc;t.push(be);var Qe=k.options&&k.options.ranges;typeof I.yy.parseError=="function"?this.parseError=I.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Xe(){var y;return y=i.pop()||k.lex()||Re,typeof y!="number"&&(y instanceof Array&&(i=y,y=i.pop()),y=r.symbols_[y]||y),y}for(var F,x,B,Fe,O={},le,T,Pe,oe;;){if(x=c[c.length-1],this.defaultActions[x]?B=this.defaultActions[x]:((F===null||typeof F>"u")&&(F=Xe()),B=G[x]&&G[x][F]),typeof B>"u"||!B.length||!B[0]){var _e="";oe=[];for(le in G[x])this.terminals_[le]&&le>Ke&&oe.push("'"+this.terminals_[le]+"'");k.showPosition?_e="Parse error on line "+(ce+1)+`: `+k.showPosition()+` Expecting `+oe.join(", ")+", got '"+(this.terminals_[F]||F)+"'":_e="Parse error on line "+(ce+1)+": Unexpected "+(F==Re?"end of input":"'"+(this.terminals_[F]||F)+"'"),this.parseError(_e,{text:k.match,token:this.terminals_[F]||F,line:k.yylineno,loc:be,expected:oe})}if(B[0]instanceof Array&&B.length>1)throw new Error("Parse Error: multiple actions possible at state: "+x+", token: "+F);switch(B[0]){case 1:c.push(F),A.push(k.yytext),t.push(k.yylloc),c.push(B[1]),F=null,Oe=k.yyleng,s=k.yytext,ce=k.yylineno,be=k.yylloc;break;case 2:if(T=this.productions_[B[1]][1],O.$=A[A.length-T],O._$={first_line:t[t.length-(T||1)].first_line,last_line:t[t.length-1].last_line,first_column:t[t.length-(T||1)].first_column,last_column:t[t.length-1].last_column},Qe&&(O._$.range=[t[t.length-(T||1)].range[0],t[t.length-1].range[1]]),Fe=this.performAction.apply(O,[s,Oe,ce,I.yy,B[1],A,t].concat(je)),typeof Fe<"u")return Fe;T&&(c=c.slice(0,-1*T*2),A=A.slice(0,-1*T),t=t.slice(0,-1*T)),c.push(this.productions_[B[1]][0]),A.push(O.$),t.push(O._$),Pe=G[c[c.length-2]][c[c.length-1]],c.push(Pe);break;case 3:return!0}}return!0}},Ye=function(){var v={EOF:1,parseError:function(r,c){if(this.yy.parser)this.yy.parser.parseError(r,c);else throw new Error(r)},setInput:function(n,r){return this.yy=r||this.yy||{},this._input=n,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var n=this._input[0];this.yytext+=n,this.yyleng++,this.offset++,this.match+=n,this.matched+=n;var r=n.match(/(?:\r\n?|\n).*/g);return r?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),n},unput:function(n){var r=n.length,c=n.split(/(?:\r\n?|\n)/g);this._input=n+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-r),this.offset-=r;var i=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),c.length-1&&(this.yylineno-=c.length-1);var A=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:c?(c.length===i.length?this.yylloc.first_column:0)+i[i.length-c.length].length-c[0].length:this.yylloc.first_column-r},this.options.ranges&&(this.yylloc.range=[A[0],A[0]+this.yyleng-r]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(n){this.unput(this.match.slice(n))},pastInput:function(){var n=this.matched.substr(0,this.matched.length-this.match.length);return(n.length>20?"...":"")+n.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var n=this.match;return n.length<20&&(n+=this._input.substr(0,20-n.length)),(n.substr(0,20)+(n.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var n=this.pastInput(),r=new Array(n.length+1).join("-");return n+this.upcomingInput()+` diff --git a/pr-383/assets/chunks/styles-f626f8de.a3799276.js b/pr-383/assets/chunks/styles-f626f8de.a466b9e4.js similarity index 99% rename from pr-383/assets/chunks/styles-f626f8de.a3799276.js rename to pr-383/assets/chunks/styles-f626f8de.a466b9e4.js index e01f05856..fbe4acb7c 100644 --- a/pr-383/assets/chunks/styles-f626f8de.a3799276.js +++ b/pr-383/assets/chunks/styles-f626f8de.a466b9e4.js @@ -1,4 +1,4 @@ -import{c as Y,g as Ht,s as Xt,a as Kt,b as Wt,v as Jt,x as qt,m as Qt,l as v,j as ht,z as Zt,aH as te}from"../app.34e6398e.js";var mt=function(){var t=function(D,r,a,i){for(a=a||{},i=D.length;i--;a[D[i]]=r);return a},s=[1,2],n=[1,3],h=[1,5],u=[1,7],f=[2,5],p=[1,15],x=[1,17],d=[1,21],k=[1,22],T=[1,23],G=[1,24],R=[1,37],j=[1,25],U=[1,26],z=[1,27],M=[1,28],H=[1,29],X=[1,32],K=[1,33],W=[1,34],J=[1,35],q=[1,36],Q=[1,39],Z=[1,40],tt=[1,41],et=[1,42],w=[1,38],Ct=[1,45],o=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],st=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],ut=[1,4,5,7,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],At=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],dt={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,directive:6,SD:7,document:8,line:9,statement:10,classDefStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"-->":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,classDef:38,CLASSDEF_ID:39,CLASSDEF_STYLEOPTS:40,DEFAULT:41,class:42,CLASSENTITY_IDS:43,STYLECLASS:44,openDirective:45,typeDirective:46,closeDirective:47,":":48,argDirective:49,direction_tb:50,direction_bt:51,direction_rl:52,direction_lr:53,eol:54,";":55,EDGE_STATE:56,STYLE_SEPARATOR:57,left_of:58,right_of:59,open_directive:60,type_directive:61,arg_directive:62,close_directive:63,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",7:"SD",14:"DESCR",15:"-->",16:"HIDE_EMPTY",17:"scale",18:"WIDTH",19:"COMPOSIT_STATE",20:"STRUCT_START",21:"STRUCT_STOP",22:"STATE_DESCR",23:"AS",24:"ID",25:"FORK",26:"JOIN",27:"CHOICE",28:"CONCURRENT",29:"note",31:"NOTE_TEXT",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",38:"classDef",39:"CLASSDEF_ID",40:"CLASSDEF_STYLEOPTS",41:"DEFAULT",42:"class",43:"CLASSENTITY_IDS",44:"STYLECLASS",48:":",50:"direction_tb",51:"direction_bt",52:"direction_rl",53:"direction_lr",55:";",56:"EDGE_STATE",57:"STYLE_SEPARATOR",58:"left_of",59:"right_of",60:"open_directive",61:"type_directive",62:"arg_directive",63:"close_directive"},productions_:[0,[3,2],[3,2],[3,2],[3,2],[8,0],[8,2],[9,2],[9,1],[9,1],[10,1],[10,1],[10,1],[10,2],[10,3],[10,4],[10,1],[10,2],[10,1],[10,4],[10,3],[10,6],[10,1],[10,1],[10,1],[10,1],[10,4],[10,4],[10,1],[10,1],[10,2],[10,2],[10,1],[11,3],[11,3],[12,3],[6,3],[6,5],[32,1],[32,1],[32,1],[32,1],[54,1],[54,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1],[45,1],[46,1],[49,1],[47,1]],performAction:function(r,a,i,l,y,e,B){var c=e.length-1;switch(y){case 4:return l.setRootDoc(e[c]),e[c];case 5:this.$=[];break;case 6:e[c]!="nl"&&(e[c-1].push(e[c]),this.$=e[c-1]);break;case 7:case 8:this.$=e[c];break;case 9:this.$="nl";break;case 12:this.$=e[c];break;case 13:const $=e[c-1];$.description=l.trimColon(e[c]),this.$=$;break;case 14:this.$={stmt:"relation",state1:e[c-2],state2:e[c]};break;case 15:const pt=l.trimColon(e[c]);this.$={stmt:"relation",state1:e[c-3],state2:e[c-1],description:pt};break;case 19:this.$={stmt:"state",id:e[c-3],type:"default",description:"",doc:e[c-1]};break;case 20:var C=e[c],O=e[c-2].trim();if(e[c].match(":")){var it=e[c].split(":");C=it[0],O=[O,it[1]]}this.$={stmt:"state",id:C,type:"default",description:O};break;case 21:this.$={stmt:"state",id:e[c-3],type:"default",description:e[c-5],doc:e[c-1]};break;case 22:this.$={stmt:"state",id:e[c],type:"fork"};break;case 23:this.$={stmt:"state",id:e[c],type:"join"};break;case 24:this.$={stmt:"state",id:e[c],type:"choice"};break;case 25:this.$={stmt:"state",id:l.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:e[c-1].trim(),note:{position:e[c-2].trim(),text:e[c].trim()}};break;case 30:this.$=e[c].trim(),l.setAccTitle(this.$);break;case 31:case 32:this.$=e[c].trim(),l.setAccDescription(this.$);break;case 33:case 34:this.$={stmt:"classDef",id:e[c-1].trim(),classes:e[c].trim()};break;case 35:this.$={stmt:"applyClass",id:e[c-1].trim(),styleClass:e[c].trim()};break;case 38:l.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 39:l.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 40:l.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 41:l.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 44:case 45:this.$={stmt:"state",id:e[c].trim(),type:"default",description:""};break;case 46:this.$={stmt:"state",id:e[c-2].trim(),classes:[e[c].trim()],type:"default",description:""};break;case 47:this.$={stmt:"state",id:e[c-2].trim(),classes:[e[c].trim()],type:"default",description:""};break;case 50:l.parseDirective("%%{","open_directive");break;case 51:l.parseDirective(e[c],"type_directive");break;case 52:e[c]=e[c].trim().replace(/'/g,'"'),l.parseDirective(e[c],"arg_directive");break;case 53:l.parseDirective("}%%","close_directive","state");break}},table:[{3:1,4:s,5:n,6:4,7:h,45:6,60:u},{1:[3]},{3:8,4:s,5:n,6:4,7:h,45:6,60:u},{3:9,4:s,5:n,6:4,7:h,45:6,60:u},{3:10,4:s,5:n,6:4,7:h,45:6,60:u},t([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],f,{8:11}),{46:12,61:[1,13]},{61:[2,50]},{1:[2,1]},{1:[2,2]},{1:[2,3]},{1:[2,4],4:p,5:x,6:30,9:14,10:16,11:18,12:19,13:20,16:d,17:k,19:T,22:G,24:R,25:j,26:U,27:z,28:M,29:H,32:31,33:X,35:K,37:W,38:J,42:q,45:6,50:Q,51:Z,52:tt,53:et,56:w,60:u},{47:43,48:[1,44],63:Ct},t([48,63],[2,51]),t(o,[2,6]),{6:30,10:46,11:18,12:19,13:20,16:d,17:k,19:T,22:G,24:R,25:j,26:U,27:z,28:M,29:H,32:31,33:X,35:K,37:W,38:J,42:q,45:6,50:Q,51:Z,52:tt,53:et,56:w,60:u},t(o,[2,8]),t(o,[2,9]),t(o,[2,10]),t(o,[2,11]),t(o,[2,12],{14:[1,47],15:[1,48]}),t(o,[2,16]),{18:[1,49]},t(o,[2,18],{20:[1,50]}),{23:[1,51]},t(o,[2,22]),t(o,[2,23]),t(o,[2,24]),t(o,[2,25]),{30:52,31:[1,53],58:[1,54],59:[1,55]},t(o,[2,28]),t(o,[2,29]),{34:[1,56]},{36:[1,57]},t(o,[2,32]),{39:[1,58],41:[1,59]},{43:[1,60]},t(st,[2,44],{57:[1,61]}),t(st,[2,45],{57:[1,62]}),t(o,[2,38]),t(o,[2,39]),t(o,[2,40]),t(o,[2,41]),t(ut,[2,36]),{49:63,62:[1,64]},t(ut,[2,53]),t(o,[2,7]),t(o,[2,13]),{13:65,24:R,56:w},t(o,[2,17]),t(At,f,{8:66}),{24:[1,67]},{24:[1,68]},{23:[1,69]},{24:[2,48]},{24:[2,49]},t(o,[2,30]),t(o,[2,31]),{40:[1,70]},{40:[1,71]},{44:[1,72]},{24:[1,73]},{24:[1,74]},{47:75,63:Ct},{63:[2,52]},t(o,[2,14],{14:[1,76]}),{4:p,5:x,6:30,9:14,10:16,11:18,12:19,13:20,16:d,17:k,19:T,21:[1,77],22:G,24:R,25:j,26:U,27:z,28:M,29:H,32:31,33:X,35:K,37:W,38:J,42:q,45:6,50:Q,51:Z,52:tt,53:et,56:w,60:u},t(o,[2,20],{20:[1,78]}),{31:[1,79]},{24:[1,80]},t(o,[2,33]),t(o,[2,34]),t(o,[2,35]),t(st,[2,46]),t(st,[2,47]),t(ut,[2,37]),t(o,[2,15]),t(o,[2,19]),t(At,f,{8:81}),t(o,[2,26]),t(o,[2,27]),{4:p,5:x,6:30,9:14,10:16,11:18,12:19,13:20,16:d,17:k,19:T,21:[1,82],22:G,24:R,25:j,26:U,27:z,28:M,29:H,32:31,33:X,35:K,37:W,38:J,42:q,45:6,50:Q,51:Z,52:tt,53:et,56:w,60:u},t(o,[2,21])],defaultActions:{7:[2,50],8:[2,1],9:[2,2],10:[2,3],54:[2,48],55:[2,49],64:[2,52]},parseError:function(r,a){if(a.recoverable)this.trace(r);else{var i=new Error(r);throw i.hash=a,i}},parse:function(r){var a=this,i=[0],l=[],y=[null],e=[],B=this.table,c="",C=0,O=0,it=2,$=1,pt=e.slice.call(arguments,1),S=Object.create(this.lexer),A={yy:{}};for(var yt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,yt)&&(A.yy[yt]=this.yy[yt]);S.setInput(r,A.yy),A.yy.lexer=S,A.yy.parser=this,typeof S.yylloc>"u"&&(S.yylloc={});var St=S.yylloc;e.push(St);var zt=S.options&&S.options.ranges;typeof A.yy.parseError=="function"?this.parseError=A.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Mt(){var E;return E=l.pop()||S.lex()||$,typeof E!="number"&&(E instanceof Array&&(l=E,E=l.pop()),E=a.symbols_[E]||E),E}for(var _,L,m,gt,N={},rt,b,Lt,nt;;){if(L=i[i.length-1],this.defaultActions[L]?m=this.defaultActions[L]:((_===null||typeof _>"u")&&(_=Mt()),m=B[L]&&B[L][_]),typeof m>"u"||!m.length||!m[0]){var _t="";nt=[];for(rt in B[L])this.terminals_[rt]&&rt>it&&nt.push("'"+this.terminals_[rt]+"'");S.showPosition?_t="Parse error on line "+(C+1)+`: +import{c as Y,g as Ht,s as Xt,a as Kt,b as Wt,v as Jt,x as qt,m as Qt,l as v,j as ht,z as Zt,aH as te}from"../app.3c4fe3d0.js";var mt=function(){var t=function(D,r,a,i){for(a=a||{},i=D.length;i--;a[D[i]]=r);return a},s=[1,2],n=[1,3],h=[1,5],u=[1,7],f=[2,5],p=[1,15],x=[1,17],d=[1,21],k=[1,22],T=[1,23],G=[1,24],R=[1,37],j=[1,25],U=[1,26],z=[1,27],M=[1,28],H=[1,29],X=[1,32],K=[1,33],W=[1,34],J=[1,35],q=[1,36],Q=[1,39],Z=[1,40],tt=[1,41],et=[1,42],w=[1,38],Ct=[1,45],o=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],st=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],ut=[1,4,5,7,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],At=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],dt={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,directive:6,SD:7,document:8,line:9,statement:10,classDefStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"-->":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,classDef:38,CLASSDEF_ID:39,CLASSDEF_STYLEOPTS:40,DEFAULT:41,class:42,CLASSENTITY_IDS:43,STYLECLASS:44,openDirective:45,typeDirective:46,closeDirective:47,":":48,argDirective:49,direction_tb:50,direction_bt:51,direction_rl:52,direction_lr:53,eol:54,";":55,EDGE_STATE:56,STYLE_SEPARATOR:57,left_of:58,right_of:59,open_directive:60,type_directive:61,arg_directive:62,close_directive:63,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",7:"SD",14:"DESCR",15:"-->",16:"HIDE_EMPTY",17:"scale",18:"WIDTH",19:"COMPOSIT_STATE",20:"STRUCT_START",21:"STRUCT_STOP",22:"STATE_DESCR",23:"AS",24:"ID",25:"FORK",26:"JOIN",27:"CHOICE",28:"CONCURRENT",29:"note",31:"NOTE_TEXT",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",38:"classDef",39:"CLASSDEF_ID",40:"CLASSDEF_STYLEOPTS",41:"DEFAULT",42:"class",43:"CLASSENTITY_IDS",44:"STYLECLASS",48:":",50:"direction_tb",51:"direction_bt",52:"direction_rl",53:"direction_lr",55:";",56:"EDGE_STATE",57:"STYLE_SEPARATOR",58:"left_of",59:"right_of",60:"open_directive",61:"type_directive",62:"arg_directive",63:"close_directive"},productions_:[0,[3,2],[3,2],[3,2],[3,2],[8,0],[8,2],[9,2],[9,1],[9,1],[10,1],[10,1],[10,1],[10,2],[10,3],[10,4],[10,1],[10,2],[10,1],[10,4],[10,3],[10,6],[10,1],[10,1],[10,1],[10,1],[10,4],[10,4],[10,1],[10,1],[10,2],[10,2],[10,1],[11,3],[11,3],[12,3],[6,3],[6,5],[32,1],[32,1],[32,1],[32,1],[54,1],[54,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1],[45,1],[46,1],[49,1],[47,1]],performAction:function(r,a,i,l,y,e,B){var c=e.length-1;switch(y){case 4:return l.setRootDoc(e[c]),e[c];case 5:this.$=[];break;case 6:e[c]!="nl"&&(e[c-1].push(e[c]),this.$=e[c-1]);break;case 7:case 8:this.$=e[c];break;case 9:this.$="nl";break;case 12:this.$=e[c];break;case 13:const $=e[c-1];$.description=l.trimColon(e[c]),this.$=$;break;case 14:this.$={stmt:"relation",state1:e[c-2],state2:e[c]};break;case 15:const pt=l.trimColon(e[c]);this.$={stmt:"relation",state1:e[c-3],state2:e[c-1],description:pt};break;case 19:this.$={stmt:"state",id:e[c-3],type:"default",description:"",doc:e[c-1]};break;case 20:var C=e[c],O=e[c-2].trim();if(e[c].match(":")){var it=e[c].split(":");C=it[0],O=[O,it[1]]}this.$={stmt:"state",id:C,type:"default",description:O};break;case 21:this.$={stmt:"state",id:e[c-3],type:"default",description:e[c-5],doc:e[c-1]};break;case 22:this.$={stmt:"state",id:e[c],type:"fork"};break;case 23:this.$={stmt:"state",id:e[c],type:"join"};break;case 24:this.$={stmt:"state",id:e[c],type:"choice"};break;case 25:this.$={stmt:"state",id:l.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:e[c-1].trim(),note:{position:e[c-2].trim(),text:e[c].trim()}};break;case 30:this.$=e[c].trim(),l.setAccTitle(this.$);break;case 31:case 32:this.$=e[c].trim(),l.setAccDescription(this.$);break;case 33:case 34:this.$={stmt:"classDef",id:e[c-1].trim(),classes:e[c].trim()};break;case 35:this.$={stmt:"applyClass",id:e[c-1].trim(),styleClass:e[c].trim()};break;case 38:l.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 39:l.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 40:l.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 41:l.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 44:case 45:this.$={stmt:"state",id:e[c].trim(),type:"default",description:""};break;case 46:this.$={stmt:"state",id:e[c-2].trim(),classes:[e[c].trim()],type:"default",description:""};break;case 47:this.$={stmt:"state",id:e[c-2].trim(),classes:[e[c].trim()],type:"default",description:""};break;case 50:l.parseDirective("%%{","open_directive");break;case 51:l.parseDirective(e[c],"type_directive");break;case 52:e[c]=e[c].trim().replace(/'/g,'"'),l.parseDirective(e[c],"arg_directive");break;case 53:l.parseDirective("}%%","close_directive","state");break}},table:[{3:1,4:s,5:n,6:4,7:h,45:6,60:u},{1:[3]},{3:8,4:s,5:n,6:4,7:h,45:6,60:u},{3:9,4:s,5:n,6:4,7:h,45:6,60:u},{3:10,4:s,5:n,6:4,7:h,45:6,60:u},t([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],f,{8:11}),{46:12,61:[1,13]},{61:[2,50]},{1:[2,1]},{1:[2,2]},{1:[2,3]},{1:[2,4],4:p,5:x,6:30,9:14,10:16,11:18,12:19,13:20,16:d,17:k,19:T,22:G,24:R,25:j,26:U,27:z,28:M,29:H,32:31,33:X,35:K,37:W,38:J,42:q,45:6,50:Q,51:Z,52:tt,53:et,56:w,60:u},{47:43,48:[1,44],63:Ct},t([48,63],[2,51]),t(o,[2,6]),{6:30,10:46,11:18,12:19,13:20,16:d,17:k,19:T,22:G,24:R,25:j,26:U,27:z,28:M,29:H,32:31,33:X,35:K,37:W,38:J,42:q,45:6,50:Q,51:Z,52:tt,53:et,56:w,60:u},t(o,[2,8]),t(o,[2,9]),t(o,[2,10]),t(o,[2,11]),t(o,[2,12],{14:[1,47],15:[1,48]}),t(o,[2,16]),{18:[1,49]},t(o,[2,18],{20:[1,50]}),{23:[1,51]},t(o,[2,22]),t(o,[2,23]),t(o,[2,24]),t(o,[2,25]),{30:52,31:[1,53],58:[1,54],59:[1,55]},t(o,[2,28]),t(o,[2,29]),{34:[1,56]},{36:[1,57]},t(o,[2,32]),{39:[1,58],41:[1,59]},{43:[1,60]},t(st,[2,44],{57:[1,61]}),t(st,[2,45],{57:[1,62]}),t(o,[2,38]),t(o,[2,39]),t(o,[2,40]),t(o,[2,41]),t(ut,[2,36]),{49:63,62:[1,64]},t(ut,[2,53]),t(o,[2,7]),t(o,[2,13]),{13:65,24:R,56:w},t(o,[2,17]),t(At,f,{8:66}),{24:[1,67]},{24:[1,68]},{23:[1,69]},{24:[2,48]},{24:[2,49]},t(o,[2,30]),t(o,[2,31]),{40:[1,70]},{40:[1,71]},{44:[1,72]},{24:[1,73]},{24:[1,74]},{47:75,63:Ct},{63:[2,52]},t(o,[2,14],{14:[1,76]}),{4:p,5:x,6:30,9:14,10:16,11:18,12:19,13:20,16:d,17:k,19:T,21:[1,77],22:G,24:R,25:j,26:U,27:z,28:M,29:H,32:31,33:X,35:K,37:W,38:J,42:q,45:6,50:Q,51:Z,52:tt,53:et,56:w,60:u},t(o,[2,20],{20:[1,78]}),{31:[1,79]},{24:[1,80]},t(o,[2,33]),t(o,[2,34]),t(o,[2,35]),t(st,[2,46]),t(st,[2,47]),t(ut,[2,37]),t(o,[2,15]),t(o,[2,19]),t(At,f,{8:81}),t(o,[2,26]),t(o,[2,27]),{4:p,5:x,6:30,9:14,10:16,11:18,12:19,13:20,16:d,17:k,19:T,21:[1,82],22:G,24:R,25:j,26:U,27:z,28:M,29:H,32:31,33:X,35:K,37:W,38:J,42:q,45:6,50:Q,51:Z,52:tt,53:et,56:w,60:u},t(o,[2,21])],defaultActions:{7:[2,50],8:[2,1],9:[2,2],10:[2,3],54:[2,48],55:[2,49],64:[2,52]},parseError:function(r,a){if(a.recoverable)this.trace(r);else{var i=new Error(r);throw i.hash=a,i}},parse:function(r){var a=this,i=[0],l=[],y=[null],e=[],B=this.table,c="",C=0,O=0,it=2,$=1,pt=e.slice.call(arguments,1),S=Object.create(this.lexer),A={yy:{}};for(var yt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,yt)&&(A.yy[yt]=this.yy[yt]);S.setInput(r,A.yy),A.yy.lexer=S,A.yy.parser=this,typeof S.yylloc>"u"&&(S.yylloc={});var St=S.yylloc;e.push(St);var zt=S.options&&S.options.ranges;typeof A.yy.parseError=="function"?this.parseError=A.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Mt(){var E;return E=l.pop()||S.lex()||$,typeof E!="number"&&(E instanceof Array&&(l=E,E=l.pop()),E=a.symbols_[E]||E),E}for(var _,L,m,gt,N={},rt,b,Lt,nt;;){if(L=i[i.length-1],this.defaultActions[L]?m=this.defaultActions[L]:((_===null||typeof _>"u")&&(_=Mt()),m=B[L]&&B[L][_]),typeof m>"u"||!m.length||!m[0]){var _t="";nt=[];for(rt in B[L])this.terminals_[rt]&&rt>it&&nt.push("'"+this.terminals_[rt]+"'");S.showPosition?_t="Parse error on line "+(C+1)+`: `+S.showPosition()+` Expecting `+nt.join(", ")+", got '"+(this.terminals_[_]||_)+"'":_t="Parse error on line "+(C+1)+": Unexpected "+(_==$?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(_t,{text:S.match,token:this.terminals_[_]||_,line:S.yylineno,loc:St,expected:nt})}if(m[0]instanceof Array&&m.length>1)throw new Error("Parse Error: multiple actions possible at state: "+L+", token: "+_);switch(m[0]){case 1:i.push(_),y.push(S.yytext),e.push(S.yylloc),i.push(m[1]),_=null,O=S.yyleng,c=S.yytext,C=S.yylineno,St=S.yylloc;break;case 2:if(b=this.productions_[m[1]][1],N.$=y[y.length-b],N._$={first_line:e[e.length-(b||1)].first_line,last_line:e[e.length-1].last_line,first_column:e[e.length-(b||1)].first_column,last_column:e[e.length-1].last_column},zt&&(N._$.range=[e[e.length-(b||1)].range[0],e[e.length-1].range[1]]),gt=this.performAction.apply(N,[c,O,C,A.yy,m[1],y,e].concat(pt)),typeof gt<"u")return gt;b&&(i=i.slice(0,-1*b*2),y=y.slice(0,-1*b),e=e.slice(0,-1*b)),i.push(this.productions_[m[1]][0]),y.push(N.$),e.push(N._$),Lt=B[i[i.length-2]][i[i.length-1]],i.push(Lt);break;case 3:return!0}}return!0}},Ut=function(){var D={EOF:1,parseError:function(a,i){if(this.yy.parser)this.yy.parser.parseError(a,i);else throw new Error(a)},setInput:function(r,a){return this.yy=a||this.yy||{},this._input=r,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var r=this._input[0];this.yytext+=r,this.yyleng++,this.offset++,this.match+=r,this.matched+=r;var a=r.match(/(?:\r\n?|\n).*/g);return a?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),r},unput:function(r){var a=r.length,i=r.split(/(?:\r\n?|\n)/g);this._input=r+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-a),this.offset-=a;var l=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),i.length-1&&(this.yylineno-=i.length-1);var y=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:i?(i.length===l.length?this.yylloc.first_column:0)+l[l.length-i.length].length-i[0].length:this.yylloc.first_column-a},this.options.ranges&&(this.yylloc.range=[y[0],y[0]+this.yyleng-a]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(r){this.unput(this.match.slice(r))},pastInput:function(){var r=this.matched.substr(0,this.matched.length-this.match.length);return(r.length>20?"...":"")+r.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var r=this.match;return r.length<20&&(r+=this._input.substr(0,20-r.length)),(r.substr(0,20)+(r.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var r=this.pastInput(),a=new Array(r.length+1).join("-");return r+this.upcomingInput()+` diff --git a/pr-383/assets/chunks/styles-ff678862.a55da03b.js b/pr-383/assets/chunks/styles-ff678862.621533d1.js similarity index 97% rename from pr-383/assets/chunks/styles-ff678862.a55da03b.js rename to pr-383/assets/chunks/styles-ff678862.621533d1.js index 7f08edfd7..a02d6340d 100644 --- a/pr-383/assets/chunks/styles-ff678862.a55da03b.js +++ b/pr-383/assets/chunks/styles-ff678862.621533d1.js @@ -1,4 +1,4 @@ -import{i as V,G as M}from"./layout.ca521a87.js";import{_ as I,$ as R,a0 as F,a1 as U,a2 as X,X as H,p as N,l as u,q as W,c as $,j as G,r as C,o as E,h as _,y as J,t as K,a3 as Q}from"../app.34e6398e.js";import{f as Y}from"./flowDb-8f9fc471.d59257b5.js";import{r as Z}from"./index-4c4adb72.5e4d3745.js";function j(e){return typeof e=="string"?new I([document.querySelectorAll(e)],[document.documentElement]):new I([F(e)],R)}const O=(e,l)=>U.lang.round(X.parse(e)[l]),ee=O;function ue(e,l){return!!e.children(l).length}function we(e){return L(e.v)+":"+L(e.w)+":"+L(e.name)}var te=/:/g;function L(e){return e?String(e).replace(te,"\\:"):""}function re(e,l){l&&e.attr("style",l)}function he(e,l,c){l&&e.attr("class",l).attr("class",c+" "+e.attr("class"))}function ye(e,l){var c=l.graph();if(V(c)){var a=c.transition;if(H(a))return a(e)}return e}function le(e,l){var c=e.append("foreignObject").attr("width","100000"),a=c.append("xhtml:div");a.attr("xmlns","http://www.w3.org/1999/xhtml");var i=l.label;switch(typeof i){case"function":a.insert(i);break;case"object":a.insert(function(){return i});break;default:a.html(i)}re(a,l.labelStyle),a.style("display","inline-block"),a.style("white-space","nowrap");var d=a.node().getBoundingClientRect();return c.attr("width",d.width).attr("height",d.height),c}const z={},ae=function(e){const l=Object.keys(e);for(const c of l)z[c]=e[c]},q=function(e,l,c,a,i,d){const w=a.select(`[id="${c}"]`);Object.keys(e).forEach(function(p){const r=e[p];let g="default";r.classes.length>0&&(g=r.classes.join(" ")),g=g+" flowchart-label";const h=N(r.styles);let t=r.text!==void 0?r.text:r.id,s;if(u.info("vertex",r,r.labelType),r.labelType==="markdown")u.info("vertex",r,r.labelType);else if(W($().flowchart.htmlLabels)){const m={label:t.replace(/fa[blrs]?:fa-[\w-]+/g,k=>``)};s=le(w,m).node(),s.parentNode.removeChild(s)}else{const m=i.createElementNS("http://www.w3.org/2000/svg","text");m.setAttribute("style",h.labelStyle.replace("color:","fill:"));const k=t.split(G.lineBreakRegex);for(const T of k){const v=i.createElementNS("http://www.w3.org/2000/svg","tspan");v.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),v.setAttribute("dy","1em"),v.setAttribute("x","1"),v.textContent=T,m.appendChild(v)}s=m}let b=0,o="";switch(r.type){case"round":b=5,o="rect";break;case"square":o="rect";break;case"diamond":o="question";break;case"hexagon":o="hexagon";break;case"odd":o="rect_left_inv_arrow";break;case"lean_right":o="lean_right";break;case"lean_left":o="lean_left";break;case"trapezoid":o="trapezoid";break;case"inv_trapezoid":o="inv_trapezoid";break;case"odd_right":o="rect_left_inv_arrow";break;case"circle":o="circle";break;case"ellipse":o="ellipse";break;case"stadium":o="stadium";break;case"subroutine":o="subroutine";break;case"cylinder":o="cylinder";break;case"group":o="rect";break;case"doublecircle":o="doublecircle";break;default:o="rect"}l.setNode(r.id,{labelStyle:h.labelStyle,shape:o,labelText:t,labelType:r.labelType,rx:b,ry:b,class:g,style:h.style,id:r.id,link:r.link,linkTarget:r.linkTarget,tooltip:d.db.getTooltip(r.id)||"",domId:d.db.lookUpDomId(r.id),haveCallback:r.haveCallback,width:r.type==="group"?500:void 0,dir:r.dir,type:r.type,props:r.props,padding:$().flowchart.padding}),u.info("setNode",{labelStyle:h.labelStyle,labelType:r.labelType,shape:o,labelText:t,rx:b,ry:b,class:g,style:h.style,id:r.id,domId:d.db.lookUpDomId(r.id),width:r.type==="group"?500:void 0,type:r.type,dir:r.dir,props:r.props,padding:$().flowchart.padding})})},P=function(e,l,c){u.info("abc78 edges = ",e);let a=0,i={},d,w;if(e.defaultStyle!==void 0){const n=N(e.defaultStyle);d=n.style,w=n.labelStyle}e.forEach(function(n){a++;const p="L-"+n.start+"-"+n.end;i[p]===void 0?(i[p]=0,u.info("abc78 new entry",p,i[p])):(i[p]++,u.info("abc78 new entry",p,i[p]));let r=p+"-"+i[p];u.info("abc78 new link id to be used is",p,r,i[p]);const g="LS-"+n.start,h="LE-"+n.end,t={style:"",labelStyle:""};switch(t.minlen=n.length||1,n.type==="arrow_open"?t.arrowhead="none":t.arrowhead="normal",t.arrowTypeStart="arrow_open",t.arrowTypeEnd="arrow_open",n.type){case"double_arrow_cross":t.arrowTypeStart="arrow_cross";case"arrow_cross":t.arrowTypeEnd="arrow_cross";break;case"double_arrow_point":t.arrowTypeStart="arrow_point";case"arrow_point":t.arrowTypeEnd="arrow_point";break;case"double_arrow_circle":t.arrowTypeStart="arrow_circle";case"arrow_circle":t.arrowTypeEnd="arrow_circle";break}let s="",b="";switch(n.stroke){case"normal":s="fill:none;",d!==void 0&&(s=d),w!==void 0&&(b=w),t.thickness="normal",t.pattern="solid";break;case"dotted":t.thickness="normal",t.pattern="dotted",t.style="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":t.thickness="thick",t.pattern="solid",t.style="stroke-width: 3.5px;fill:none;";break;case"invisible":t.thickness="invisible",t.pattern="solid",t.style="stroke-width: 0;fill:none;";break}if(n.style!==void 0){const o=N(n.style);s=o.style,b=o.labelStyle}t.style=t.style+=s,t.labelStyle=t.labelStyle+=b,n.interpolate!==void 0?t.curve=C(n.interpolate,E):e.defaultInterpolate!==void 0?t.curve=C(e.defaultInterpolate,E):t.curve=C(z.curve,E),n.text===void 0?n.style!==void 0&&(t.arrowheadStyle="fill: #333"):(t.arrowheadStyle="fill: #333",t.labelpos="c"),t.labelType=n.labelType,t.label=n.text.replace(G.lineBreakRegex,` +import{i as V,G as M}from"./layout.66644227.js";import{_ as I,$ as R,a0 as F,a1 as U,a2 as X,X as H,p as N,l as u,q as W,c as $,j as G,r as C,o as E,h as _,y as J,t as K,a3 as Q}from"../app.3c4fe3d0.js";import{f as Y}from"./flowDb-8f9fc471.70dad437.js";import{r as Z}from"./index-4c4adb72.3f6562ef.js";function j(e){return typeof e=="string"?new I([document.querySelectorAll(e)],[document.documentElement]):new I([F(e)],R)}const O=(e,l)=>U.lang.round(X.parse(e)[l]),ee=O;function ue(e,l){return!!e.children(l).length}function we(e){return L(e.v)+":"+L(e.w)+":"+L(e.name)}var te=/:/g;function L(e){return e?String(e).replace(te,"\\:"):""}function re(e,l){l&&e.attr("style",l)}function he(e,l,c){l&&e.attr("class",l).attr("class",c+" "+e.attr("class"))}function ye(e,l){var c=l.graph();if(V(c)){var a=c.transition;if(H(a))return a(e)}return e}function le(e,l){var c=e.append("foreignObject").attr("width","100000"),a=c.append("xhtml:div");a.attr("xmlns","http://www.w3.org/1999/xhtml");var i=l.label;switch(typeof i){case"function":a.insert(i);break;case"object":a.insert(function(){return i});break;default:a.html(i)}re(a,l.labelStyle),a.style("display","inline-block"),a.style("white-space","nowrap");var d=a.node().getBoundingClientRect();return c.attr("width",d.width).attr("height",d.height),c}const z={},ae=function(e){const l=Object.keys(e);for(const c of l)z[c]=e[c]},q=function(e,l,c,a,i,d){const w=a.select(`[id="${c}"]`);Object.keys(e).forEach(function(p){const r=e[p];let g="default";r.classes.length>0&&(g=r.classes.join(" ")),g=g+" flowchart-label";const h=N(r.styles);let t=r.text!==void 0?r.text:r.id,s;if(u.info("vertex",r,r.labelType),r.labelType==="markdown")u.info("vertex",r,r.labelType);else if(W($().flowchart.htmlLabels)){const m={label:t.replace(/fa[blrs]?:fa-[\w-]+/g,k=>``)};s=le(w,m).node(),s.parentNode.removeChild(s)}else{const m=i.createElementNS("http://www.w3.org/2000/svg","text");m.setAttribute("style",h.labelStyle.replace("color:","fill:"));const k=t.split(G.lineBreakRegex);for(const T of k){const v=i.createElementNS("http://www.w3.org/2000/svg","tspan");v.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),v.setAttribute("dy","1em"),v.setAttribute("x","1"),v.textContent=T,m.appendChild(v)}s=m}let b=0,o="";switch(r.type){case"round":b=5,o="rect";break;case"square":o="rect";break;case"diamond":o="question";break;case"hexagon":o="hexagon";break;case"odd":o="rect_left_inv_arrow";break;case"lean_right":o="lean_right";break;case"lean_left":o="lean_left";break;case"trapezoid":o="trapezoid";break;case"inv_trapezoid":o="inv_trapezoid";break;case"odd_right":o="rect_left_inv_arrow";break;case"circle":o="circle";break;case"ellipse":o="ellipse";break;case"stadium":o="stadium";break;case"subroutine":o="subroutine";break;case"cylinder":o="cylinder";break;case"group":o="rect";break;case"doublecircle":o="doublecircle";break;default:o="rect"}l.setNode(r.id,{labelStyle:h.labelStyle,shape:o,labelText:t,labelType:r.labelType,rx:b,ry:b,class:g,style:h.style,id:r.id,link:r.link,linkTarget:r.linkTarget,tooltip:d.db.getTooltip(r.id)||"",domId:d.db.lookUpDomId(r.id),haveCallback:r.haveCallback,width:r.type==="group"?500:void 0,dir:r.dir,type:r.type,props:r.props,padding:$().flowchart.padding}),u.info("setNode",{labelStyle:h.labelStyle,labelType:r.labelType,shape:o,labelText:t,rx:b,ry:b,class:g,style:h.style,id:r.id,domId:d.db.lookUpDomId(r.id),width:r.type==="group"?500:void 0,type:r.type,dir:r.dir,props:r.props,padding:$().flowchart.padding})})},P=function(e,l,c){u.info("abc78 edges = ",e);let a=0,i={},d,w;if(e.defaultStyle!==void 0){const n=N(e.defaultStyle);d=n.style,w=n.labelStyle}e.forEach(function(n){a++;const p="L-"+n.start+"-"+n.end;i[p]===void 0?(i[p]=0,u.info("abc78 new entry",p,i[p])):(i[p]++,u.info("abc78 new entry",p,i[p]));let r=p+"-"+i[p];u.info("abc78 new link id to be used is",p,r,i[p]);const g="LS-"+n.start,h="LE-"+n.end,t={style:"",labelStyle:""};switch(t.minlen=n.length||1,n.type==="arrow_open"?t.arrowhead="none":t.arrowhead="normal",t.arrowTypeStart="arrow_open",t.arrowTypeEnd="arrow_open",n.type){case"double_arrow_cross":t.arrowTypeStart="arrow_cross";case"arrow_cross":t.arrowTypeEnd="arrow_cross";break;case"double_arrow_point":t.arrowTypeStart="arrow_point";case"arrow_point":t.arrowTypeEnd="arrow_point";break;case"double_arrow_circle":t.arrowTypeStart="arrow_circle";case"arrow_circle":t.arrowTypeEnd="arrow_circle";break}let s="",b="";switch(n.stroke){case"normal":s="fill:none;",d!==void 0&&(s=d),w!==void 0&&(b=w),t.thickness="normal",t.pattern="solid";break;case"dotted":t.thickness="normal",t.pattern="dotted",t.style="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":t.thickness="thick",t.pattern="solid",t.style="stroke-width: 3.5px;fill:none;";break;case"invisible":t.thickness="invisible",t.pattern="solid",t.style="stroke-width: 0;fill:none;";break}if(n.style!==void 0){const o=N(n.style);s=o.style,b=o.labelStyle}t.style=t.style+=s,t.labelStyle=t.labelStyle+=b,n.interpolate!==void 0?t.curve=C(n.interpolate,E):e.defaultInterpolate!==void 0?t.curve=C(e.defaultInterpolate,E):t.curve=C(z.curve,E),n.text===void 0?n.style!==void 0&&(t.arrowheadStyle="fill: #333"):(t.arrowheadStyle="fill: #333",t.labelpos="c"),t.labelType=n.labelType,t.label=n.text.replace(G.lineBreakRegex,` `),n.style===void 0&&(t.style=t.style||"stroke: #333; stroke-width: 1.5px;fill:none;"),t.labelStyle=t.labelStyle.replace("color:","fill:"),t.id=r,t.classes="flowchart-link "+g+" "+h,l.setEdge(n.start,n.end,t,a)})},oe=function(e,l){u.info("Extracting classes"),l.db.clear();try{return l.parse(e),l.db.getClasses()}catch{return}},ne=async function(e,l,c,a){u.info("Drawing flowchart"),a.db.clear(),Y.setGen("gen-2"),a.parser.parse(e);let i=a.db.getDirection();i===void 0&&(i="TD");const{securityLevel:d,flowchart:w}=$(),n=w.nodeSpacing||50,p=w.rankSpacing||50;let r;d==="sandbox"&&(r=_("#i"+l));const g=d==="sandbox"?_(r.nodes()[0].contentDocument.body):_("body"),h=d==="sandbox"?r.nodes()[0].contentDocument:document,t=new M({multigraph:!0,compound:!0}).setGraph({rankdir:i,nodesep:n,ranksep:p,marginx:0,marginy:0}).setDefaultEdgeLabel(function(){return{}});let s;const b=a.db.getSubGraphs();u.info("Subgraphs - ",b);for(let f=b.length-1;f>=0;f--)s=b[f],u.info("Subgraph - ",s),a.db.addVertex(s.id,{text:s.title,type:s.labelType},"group",void 0,s.classes,s.dir);const o=a.db.getVertices(),m=a.db.getEdges();u.info("Edges",m);let k=0;for(k=b.length-1;k>=0;k--){s=b[k],j("cluster").append("text");for(let f=0;f{const c=ee,a=c(e,"r"),i=c(e,"g"),d=c(e,"b");return Q(a,i,d,l)},ie=e=>`.label { font-family: ${e.fontFamily}; color: ${e.nodeTextColor||e.textColor}; diff --git a/pr-383/assets/chunks/svgDraw-5d8a058e.ea5389d7.js b/pr-383/assets/chunks/svgDraw-5d8a058e.38485a41.js similarity index 97% rename from pr-383/assets/chunks/svgDraw-5d8a058e.ea5389d7.js rename to pr-383/assets/chunks/svgDraw-5d8a058e.38485a41.js index f4f9892ab..1a0a450e9 100644 --- a/pr-383/assets/chunks/svgDraw-5d8a058e.ea5389d7.js +++ b/pr-383/assets/chunks/svgDraw-5d8a058e.38485a41.js @@ -1,2 +1,2 @@ -import{a5 as k,y as v,l as B,a7 as N}from"../app.34e6398e.js";import{l as I}from"./line.075f786d.js";let S=0;const O=function(i,e,t,a,r){const o=function(d){switch(d){case r.db.relationType.AGGREGATION:return"aggregation";case r.db.relationType.EXTENSION:return"extension";case r.db.relationType.COMPOSITION:return"composition";case r.db.relationType.DEPENDENCY:return"dependency";case r.db.relationType.LOLLIPOP:return"lollipop"}};e.points=e.points.filter(d=>!Number.isNaN(d.y));const l=e.points,g=I().x(function(d){return d.x}).y(function(d){return d.y}).curve(k),s=i.append("path").attr("d",g(l)).attr("id","edge"+S).attr("class","relation");let p="";a.arrowMarkerAbsolute&&(p=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,p=p.replace(/\(/g,"\\("),p=p.replace(/\)/g,"\\)")),t.relation.lineType==1&&s.attr("class","relation dashed-line"),t.relation.lineType==10&&s.attr("class","relation dotted-line"),t.relation.type1!=="none"&&s.attr("marker-start","url("+p+"#"+o(t.relation.type1)+"Start)"),t.relation.type2!=="none"&&s.attr("marker-end","url("+p+"#"+o(t.relation.type2)+"End)");let h,n;const c=e.points.length;let b=v.calcLabelPosition(e.points);h=b.x,n=b.y;let x,m,f,T;if(c%2!==0&&c>1){let d=v.calcCardinalityPosition(t.relation.type1!=="none",e.points,e.points[0]),w=v.calcCardinalityPosition(t.relation.type2!=="none",e.points,e.points[c-1]);B.debug("cardinality_1_point "+JSON.stringify(d)),B.debug("cardinality_2_point "+JSON.stringify(w)),x=d.x,m=d.y,f=w.x,T=w.y}if(t.title!==void 0){const d=i.append("g").attr("class","classLabel"),w=d.append("text").attr("class","label").attr("x",h).attr("y",n).attr("fill","red").attr("text-anchor","middle").text(t.title);window.label=w;const y=w.node().getBBox();d.insert("rect",":first-child").attr("class","box").attr("x",y.x-a.padding/2).attr("y",y.y-a.padding/2).attr("width",y.width+a.padding).attr("height",y.height+a.padding)}B.info("Rendering relation "+JSON.stringify(t)),t.relationTitle1!==void 0&&t.relationTitle1!=="none"&&i.append("g").attr("class","cardinality").append("text").attr("class","type1").attr("x",x).attr("y",m).attr("fill","black").attr("font-size","6").text(t.relationTitle1),t.relationTitle2!==void 0&&t.relationTitle2!=="none"&&i.append("g").attr("class","cardinality").append("text").attr("class","type2").attr("x",f).attr("y",T).attr("fill","black").attr("font-size","6").text(t.relationTitle2),S++},P=function(i,e,t,a){B.debug("Rendering class ",e,t);const r=e.id,o={id:r,label:e.id,width:0,height:0},l=i.append("g").attr("id",a.db.lookUpDomId(r)).attr("class","classGroup");let g;e.link?g=l.append("svg:a").attr("xlink:href",e.link).attr("target",e.linkTarget).append("text").attr("y",t.textHeight+t.padding).attr("x",0):g=l.append("text").attr("y",t.textHeight+t.padding).attr("x",0);let s=!0;e.annotations.forEach(function(u){const H=g.append("tspan").text("ยซ"+u+"ยป");s||H.attr("dy",t.textHeight),s=!1});let p=E(e);const h=g.append("tspan").text(p).attr("class","title");s||h.attr("dy",t.textHeight);const n=g.node().getBBox().height,c=l.append("line").attr("x1",0).attr("y1",t.padding+n+t.dividerMargin/2).attr("y2",t.padding+n+t.dividerMargin/2),b=l.append("text").attr("x",t.padding).attr("y",n+t.dividerMargin+t.textHeight).attr("fill","white").attr("class","classText");s=!0,e.members.forEach(function(u){_(b,u,s,t),s=!1});const x=b.node().getBBox(),m=l.append("line").attr("x1",0).attr("y1",t.padding+n+t.dividerMargin+x.height).attr("y2",t.padding+n+t.dividerMargin+x.height),f=l.append("text").attr("x",t.padding).attr("y",n+2*t.dividerMargin+x.height+t.textHeight).attr("fill","white").attr("class","classText");s=!0,e.methods.forEach(function(u){_(f,u,s,t),s=!1});const T=l.node().getBBox();var d=" ";e.cssClasses.length>0&&(d=d+e.cssClasses.join(" "));const y=l.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",T.width+2*t.padding).attr("height",T.height+t.padding+.5*t.dividerMargin).attr("class",d).node().getBBox().width;return g.node().childNodes.forEach(function(u){u.setAttribute("x",(y-u.getBBox().width)/2)}),e.tooltip&&g.insert("title").text(e.tooltip),c.attr("x2",y),m.attr("x2",y),o.width=y,o.height=T.height+t.padding+.5*t.dividerMargin,o},E=function(i){let e=i.id;return i.type&&(e+="<"+i.type+">"),e},A=function(i,e,t,a){B.debug("Rendering note ",e,t);const r=e.id,o={id:r,text:e.text,width:0,height:0},l=i.append("g").attr("id",r).attr("class","classGroup");let g=l.append("text").attr("y",t.textHeight+t.padding).attr("x",0);const s=JSON.parse(`"${e.text}"`).split(` +import{a5 as k,y as v,l as B,a7 as N}from"../app.3c4fe3d0.js";import{l as I}from"./line.809d7f74.js";let S=0;const O=function(i,e,t,a,r){const o=function(d){switch(d){case r.db.relationType.AGGREGATION:return"aggregation";case r.db.relationType.EXTENSION:return"extension";case r.db.relationType.COMPOSITION:return"composition";case r.db.relationType.DEPENDENCY:return"dependency";case r.db.relationType.LOLLIPOP:return"lollipop"}};e.points=e.points.filter(d=>!Number.isNaN(d.y));const l=e.points,g=I().x(function(d){return d.x}).y(function(d){return d.y}).curve(k),s=i.append("path").attr("d",g(l)).attr("id","edge"+S).attr("class","relation");let p="";a.arrowMarkerAbsolute&&(p=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,p=p.replace(/\(/g,"\\("),p=p.replace(/\)/g,"\\)")),t.relation.lineType==1&&s.attr("class","relation dashed-line"),t.relation.lineType==10&&s.attr("class","relation dotted-line"),t.relation.type1!=="none"&&s.attr("marker-start","url("+p+"#"+o(t.relation.type1)+"Start)"),t.relation.type2!=="none"&&s.attr("marker-end","url("+p+"#"+o(t.relation.type2)+"End)");let h,n;const c=e.points.length;let b=v.calcLabelPosition(e.points);h=b.x,n=b.y;let x,m,f,T;if(c%2!==0&&c>1){let d=v.calcCardinalityPosition(t.relation.type1!=="none",e.points,e.points[0]),w=v.calcCardinalityPosition(t.relation.type2!=="none",e.points,e.points[c-1]);B.debug("cardinality_1_point "+JSON.stringify(d)),B.debug("cardinality_2_point "+JSON.stringify(w)),x=d.x,m=d.y,f=w.x,T=w.y}if(t.title!==void 0){const d=i.append("g").attr("class","classLabel"),w=d.append("text").attr("class","label").attr("x",h).attr("y",n).attr("fill","red").attr("text-anchor","middle").text(t.title);window.label=w;const y=w.node().getBBox();d.insert("rect",":first-child").attr("class","box").attr("x",y.x-a.padding/2).attr("y",y.y-a.padding/2).attr("width",y.width+a.padding).attr("height",y.height+a.padding)}B.info("Rendering relation "+JSON.stringify(t)),t.relationTitle1!==void 0&&t.relationTitle1!=="none"&&i.append("g").attr("class","cardinality").append("text").attr("class","type1").attr("x",x).attr("y",m).attr("fill","black").attr("font-size","6").text(t.relationTitle1),t.relationTitle2!==void 0&&t.relationTitle2!=="none"&&i.append("g").attr("class","cardinality").append("text").attr("class","type2").attr("x",f).attr("y",T).attr("fill","black").attr("font-size","6").text(t.relationTitle2),S++},P=function(i,e,t,a){B.debug("Rendering class ",e,t);const r=e.id,o={id:r,label:e.id,width:0,height:0},l=i.append("g").attr("id",a.db.lookUpDomId(r)).attr("class","classGroup");let g;e.link?g=l.append("svg:a").attr("xlink:href",e.link).attr("target",e.linkTarget).append("text").attr("y",t.textHeight+t.padding).attr("x",0):g=l.append("text").attr("y",t.textHeight+t.padding).attr("x",0);let s=!0;e.annotations.forEach(function(u){const H=g.append("tspan").text("ยซ"+u+"ยป");s||H.attr("dy",t.textHeight),s=!1});let p=E(e);const h=g.append("tspan").text(p).attr("class","title");s||h.attr("dy",t.textHeight);const n=g.node().getBBox().height,c=l.append("line").attr("x1",0).attr("y1",t.padding+n+t.dividerMargin/2).attr("y2",t.padding+n+t.dividerMargin/2),b=l.append("text").attr("x",t.padding).attr("y",n+t.dividerMargin+t.textHeight).attr("fill","white").attr("class","classText");s=!0,e.members.forEach(function(u){_(b,u,s,t),s=!1});const x=b.node().getBBox(),m=l.append("line").attr("x1",0).attr("y1",t.padding+n+t.dividerMargin+x.height).attr("y2",t.padding+n+t.dividerMargin+x.height),f=l.append("text").attr("x",t.padding).attr("y",n+2*t.dividerMargin+x.height+t.textHeight).attr("fill","white").attr("class","classText");s=!0,e.methods.forEach(function(u){_(f,u,s,t),s=!1});const T=l.node().getBBox();var d=" ";e.cssClasses.length>0&&(d=d+e.cssClasses.join(" "));const y=l.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",T.width+2*t.padding).attr("height",T.height+t.padding+.5*t.dividerMargin).attr("class",d).node().getBBox().width;return g.node().childNodes.forEach(function(u){u.setAttribute("x",(y-u.getBBox().width)/2)}),e.tooltip&&g.insert("title").text(e.tooltip),c.attr("x2",y),m.attr("x2",y),o.width=y,o.height=T.height+t.padding+.5*t.dividerMargin,o},E=function(i){let e=i.id;return i.type&&(e+="<"+i.type+">"),e},A=function(i,e,t,a){B.debug("Rendering note ",e,t);const r=e.id,o={id:r,text:e.text,width:0,height:0},l=i.append("g").attr("id",r).attr("class","classGroup");let g=l.append("text").attr("y",t.textHeight+t.padding).attr("x",0);const s=JSON.parse(`"${e.text}"`).split(` `);s.forEach(function(c){B.debug(`Adding line: ${c}`),g.append("tspan").text(c).attr("class","title").attr("dy",t.textHeight)});const p=l.node().getBBox(),n=l.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",p.width+2*t.padding).attr("height",p.height+s.length*t.textHeight+t.padding+.5*t.dividerMargin).node().getBBox().width;return g.node().childNodes.forEach(function(c){c.setAttribute("x",(n-c.getBBox().width)/2)}),o.width=n,o.height=p.height+s.length*t.textHeight+t.padding+.5*t.dividerMargin,o},M=function(i){let e="",t="",a="",r="",o=i.substring(0,1),l=i.substring(i.length-1,i.length);o.match(/[#+~-]/)&&(r=o);let g=/[\s\w)~]/;l.match(g)||(t=C(l));const s=r===""?0:1;let p=t===""?i.length:i.length-1;i=i.substring(s,p);const h=i.indexOf("("),n=i.indexOf(")");if(h>1&&n>h&&n<=i.length){let b=i.substring(0,h).trim();const x=i.substring(h+1,n);if(e=r+b+"("+N(x.trim())+")",n/gi," "),n=e.append("text");n.attr("x",t.x),n.attr("y",t.y),n.attr("class","legend"),n.style("text-anchor",t.anchor),t.class!==void 0&&n.attr("class",t.class);const s=n.append("tspan");return s.attr("x",t.x+t.textMargin*2),s.text(r),n},d=function(e,t,r,n){const s=e.append("image");s.attr("x",t),s.attr("y",r);var i=a(n);s.attr("xlink:href",i)},f=function(e,t,r,n){const s=e.append("use");s.attr("x",t),s.attr("y",r);const i=a(n);s.attr("xlink:href","#"+i)},h=function(){return{x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}},g=function(){return{x:0,y:0,width:100,height:100,fill:void 0,anchor:void 0,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0,valign:void 0}};export{c as a,f as b,d as c,l as d,g as e,x as f,h as g}; +import{n as a}from"../app.3c4fe3d0.js";const l=function(e,t){const r=e.append("rect");if(r.attr("x",t.x),r.attr("y",t.y),r.attr("fill",t.fill),r.attr("stroke",t.stroke),r.attr("width",t.width),r.attr("height",t.height),r.attr("rx",t.rx),r.attr("ry",t.ry),t.attrs!=="undefined"&&t.attrs!==null)for(let n in t.attrs)r.attr(n,t.attrs[n]);return t.class!=="undefined"&&r.attr("class",t.class),r},c=function(e,t){l(e,{x:t.startx,y:t.starty,width:t.stopx-t.startx,height:t.stopy-t.starty,fill:t.fill,stroke:t.stroke,class:"rect"}).lower()},x=function(e,t){const r=t.text.replace(//gi," "),n=e.append("text");n.attr("x",t.x),n.attr("y",t.y),n.attr("class","legend"),n.style("text-anchor",t.anchor),t.class!==void 0&&n.attr("class",t.class);const s=n.append("tspan");return s.attr("x",t.x+t.textMargin*2),s.text(r),n},d=function(e,t,r,n){const s=e.append("image");s.attr("x",t),s.attr("y",r);var i=a(n);s.attr("xlink:href",i)},f=function(e,t,r,n){const s=e.append("use");s.attr("x",t),s.attr("y",r);const i=a(n);s.attr("xlink:href","#"+i)},h=function(){return{x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}},g=function(){return{x:0,y:0,width:100,height:100,fill:void 0,anchor:void 0,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0,valign:void 0}};export{c as a,f as b,d as c,l as d,g as e,x as f,h as g}; diff --git a/pr-383/assets/chunks/theme.e11407bf.js b/pr-383/assets/chunks/theme.71fa6e36.js similarity index 99% rename from pr-383/assets/chunks/theme.e11407bf.js rename to pr-383/assets/chunks/theme.71fa6e36.js index ecee64ce3..3ff049114 100644 --- a/pr-383/assets/chunks/theme.e11407bf.js +++ b/pr-383/assets/chunks/theme.71fa6e36.js @@ -4,4 +4,4 @@ import{d as y,o as r,c as l,r as v,n as A,a as H,t as N,_ as g,b as P,w as p,e a -o-transition: none !important; -ms-transition: none !important; transition: none !important; -}`)),document.head.appendChild(S),o.value=I,d[I?"add":"remove"]("dark"),window.getComputedStyle(S).opacity,document.head.removeChild(S)}return b}return U(o,u=>{n.value=u}),(u,d)=>(r(),P(Ba,{title:"toggle dark mode",class:"VPSwitchAppearance","aria-checked":o.value,onClick:i(s)},{default:p(()=>[h(za,{class:"sun"}),h(Wa,{class:"moon"})]),_:1},8,["aria-checked","onClick"]))}});const je=g(Ka,[["__scopeId","data-v-a99ed743"]]),qa={key:0,class:"VPNavBarAppearance"},Ya=y({__name:"VPNavBarAppearance",setup(t){const{site:e}=T();return(n,o)=>i(e).appearance?(r(),l("div",qa,[h(je)])):m("",!0)}});const Ja=g(Ya,[["__scopeId","data-v-5e9f0637"]]),Ge=L();let kt=!1,Se=0;function Xa(t){const e=L(!1);if(ke){!kt&&Qa(),Se++;const n=U(Ge,o=>{var s,a,u;o===t.el.value||(s=t.el.value)!=null&&s.contains(o)?(e.value=!0,(a=t.onFocus)==null||a.call(t)):(e.value=!1,(u=t.onBlur)==null||u.call(t))});Ae(()=>{n(),Se--,Se||Za()})}return Ce(e)}function Qa(){document.addEventListener("focusin",Pt),kt=!0,Ge.value=document.activeElement}function Za(){document.removeEventListener("focusin",Pt)}function Pt(){Ge.value=document.activeElement}const er={},tr={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},nr=_("path",{d:"M12,16c-0.3,0-0.5-0.1-0.7-0.3l-6-6c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l5.3,5.3l5.3-5.3c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-6,6C12.5,15.9,12.3,16,12,16z"},null,-1),or=[nr];function sr(t,e){return r(),l("svg",tr,or)}const wt=g(er,[["render",sr]]),ar={},rr={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},ir=_("circle",{cx:"12",cy:"12",r:"2"},null,-1),lr=_("circle",{cx:"19",cy:"12",r:"2"},null,-1),cr=_("circle",{cx:"5",cy:"12",r:"2"},null,-1),ur=[ir,lr,cr];function dr(t,e){return r(),l("svg",rr,ur)}const _r=g(ar,[["render",dr]]),vr={class:"VPMenuLink"},pr=y({__name:"VPMenuLink",props:{item:{}},setup(t){const{page:e}=T();return(n,o)=>(r(),l("div",vr,[h(q,{class:A({active:i(ee)(i(e).relativePath,n.item.activeMatch||n.item.link,!!n.item.activeMatch)}),href:n.item.link,target:n.item.target,rel:n.item.rel},{default:p(()=>[H(N(n.item.text),1)]),_:1},8,["class","href","target","rel"])]))}});const we=g(pr,[["__scopeId","data-v-2a4d50e5"]]),fr={class:"VPMenuGroup"},hr={key:0,class:"title"},mr=y({__name:"VPMenuGroup",props:{text:{},items:{}},setup(t){return(e,n)=>(r(),l("div",fr,[e.text?(r(),l("p",hr,N(e.text),1)):m("",!0),(r(!0),l(C,null,O(e.items,o=>(r(),l(C,null,["link"in o?(r(),P(we,{key:0,item:o},null,8,["item"])):m("",!0)],64))),256))]))}});const gr=g(mr,[["__scopeId","data-v-a6b0397c"]]),yr={class:"VPMenu"},br={key:0,class:"items"},$r=y({__name:"VPMenu",props:{items:{}},setup(t){return(e,n)=>(r(),l("div",yr,[e.items?(r(),l("div",br,[(r(!0),l(C,null,O(e.items,o=>(r(),l(C,{key:o.text},["link"in o?(r(),P(we,{key:0,item:o},null,8,["item"])):(r(),P(gr,{key:1,text:o.text,items:o.items},null,8,["text","items"]))],64))),128))])):m("",!0),v(e.$slots,"default",{},void 0,!0)]))}});const kr=g($r,[["__scopeId","data-v-e42ed9b3"]]),Pr=["aria-expanded","aria-label"],wr={key:0,class:"text"},Vr=["innerHTML"],Sr={class:"menu"},Lr=y({__name:"VPFlyout",props:{icon:{},button:{},label:{},items:{}},setup(t){const e=L(!1),n=L();Xa({el:n,onBlur:o});function o(){e.value=!1}return(s,a)=>(r(),l("div",{class:"VPFlyout",ref_key:"el",ref:n,onMouseenter:a[1]||(a[1]=u=>e.value=!0),onMouseleave:a[2]||(a[2]=u=>e.value=!1)},[_("button",{type:"button",class:"button","aria-haspopup":"true","aria-expanded":e.value,"aria-label":s.label,onClick:a[0]||(a[0]=u=>e.value=!e.value)},[s.button||s.icon?(r(),l("span",wr,[s.icon?(r(),P(X(s.icon),{key:0,class:"option-icon"})):m("",!0),s.button?(r(),l("span",{key:1,innerHTML:s.button},null,8,Vr)):m("",!0),h(wt,{class:"text-icon"})])):(r(),P(_r,{key:1,class:"icon"}))],8,Pr),_("div",Sr,[h(kr,{items:s.items},{default:p(()=>[v(s.$slots,"default",{},void 0,!0)]),_:3},8,["items"])])],544))}});const Re=g(Lr,[["__scopeId","data-v-6b19ffdd"]]),Mr={discord:'Discord',facebook:'Facebook',github:'GitHub',instagram:'Instagram',linkedin:'LinkedIn',mastodon:'Mastodon',slack:'Slack',twitter:'Twitter',youtube:'YouTube'},Tr=["href","aria-label","innerHTML"],Ir=y({__name:"VPSocialLink",props:{icon:{},link:{},ariaLabel:{}},setup(t){const e=t,n=V(()=>typeof e.icon=="object"?e.icon.svg:Mr[e.icon]);return(o,s)=>(r(),l("a",{class:"VPSocialLink no-icon",href:o.link,"aria-label":o.ariaLabel??(typeof o.icon=="string"?o.icon:""),target:"_blank",rel:"noopener",innerHTML:n.value},null,8,Tr))}});const Nr=g(Ir,[["__scopeId","data-v-16cf740a"]]),Cr={class:"VPSocialLinks"},Ar=y({__name:"VPSocialLinks",props:{links:{}},setup(t){return(e,n)=>(r(),l("div",Cr,[(r(!0),l(C,null,O(e.links,({link:o,icon:s,ariaLabel:a})=>(r(),P(Nr,{key:o,icon:s,link:o,ariaLabel:a},null,8,["icon","link","ariaLabel"]))),128))]))}});const Ue=g(Ar,[["__scopeId","data-v-e71e869c"]]),Br={key:0,class:"group translations"},xr={class:"trans-title"},Or={key:1,class:"group"},Hr={class:"item appearance"},Er={class:"label"},Dr={class:"appearance-action"},zr={key:2,class:"group"},Fr={class:"item social-links"},jr=y({__name:"VPNavBarExtra",setup(t){const{site:e,theme:n}=T(),{localeLinks:o,currentLang:s}=ce({correspondingLink:!0}),a=V(()=>o.value.length&&s.value.label||e.value.appearance||n.value.socialLinks);return(u,d)=>a.value?(r(),P(Re,{key:0,class:"VPNavBarExtra",label:"extra navigation"},{default:p(()=>[i(o).length&&i(s).label?(r(),l("div",Br,[_("p",xr,N(i(s).label),1),(r(!0),l(C,null,O(i(o),c=>(r(),P(we,{key:c.link,item:c},null,8,["item"]))),128))])):m("",!0),i(e).appearance?(r(),l("div",Or,[_("div",Hr,[_("p",Er,N(i(n).darkModeSwitchLabel||"Appearance"),1),_("div",Dr,[h(je)])])])):m("",!0),i(n).socialLinks?(r(),l("div",zr,[_("div",Fr,[h(Ue,{class:"social-links-list",links:i(n).socialLinks},null,8,["links"])])])):m("",!0)]),_:1})):m("",!0)}});const Gr=g(jr,[["__scopeId","data-v-c8c2ae4b"]]),Rr=t=>(j("data-v-6bee1efd"),t=t(),G(),t),Ur=["aria-expanded"],Wr=Rr(()=>_("span",{class:"container"},[_("span",{class:"top"}),_("span",{class:"middle"}),_("span",{class:"bottom"})],-1)),Kr=[Wr],qr=y({__name:"VPNavBarHamburger",props:{active:{type:Boolean}},emits:["click"],setup(t){return(e,n)=>(r(),l("button",{type:"button",class:A(["VPNavBarHamburger",{active:e.active}]),"aria-label":"mobile navigation","aria-expanded":e.active,"aria-controls":"VPNavScreen",onClick:n[0]||(n[0]=o=>e.$emit("click"))},Kr,10,Ur))}});const Yr=g(qr,[["__scopeId","data-v-6bee1efd"]]),Jr=["innerHTML"],Xr=y({__name:"VPNavBarMenuLink",props:{item:{}},setup(t){const{page:e}=T();return(n,o)=>(r(),P(q,{class:A({VPNavBarMenuLink:!0,active:i(ee)(i(e).relativePath,n.item.activeMatch||n.item.link,!!n.item.activeMatch)}),href:n.item.link,target:n.item.target,rel:n.item.rel,tabindex:"0"},{default:p(()=>[_("span",{innerHTML:n.item.text},null,8,Jr)]),_:1},8,["class","href","target","rel"]))}});const Qr=g(Xr,[["__scopeId","data-v-e5ab8091"]]),Zr=y({__name:"VPNavBarMenuGroup",props:{item:{}},setup(t){const{page:e}=T();return(n,o)=>(r(),P(Re,{class:A({VPNavBarMenuGroup:!0,active:i(ee)(i(e).relativePath,n.item.activeMatch,!!n.item.activeMatch)}),button:n.item.text,items:n.item.items},null,8,["class","button","items"]))}}),ei=t=>(j("data-v-f732b5d0"),t=t(),G(),t),ti={key:0,"aria-labelledby":"main-nav-aria-label",class:"VPNavBarMenu"},ni=ei(()=>_("span",{id:"main-nav-aria-label",class:"visually-hidden"},"Main Navigation",-1)),oi=y({__name:"VPNavBarMenu",setup(t){const{theme:e}=T();return(n,o)=>i(e).nav?(r(),l("nav",ti,[ni,(r(!0),l(C,null,O(i(e).nav,s=>(r(),l(C,{key:s.text},["link"in s?(r(),P(Qr,{key:0,item:s},null,8,["item"])):(r(),P(Zr,{key:1,item:s},null,8,["item"]))],64))),128))])):m("",!0)}});const si=g(oi,[["__scopeId","data-v-f732b5d0"]]);const ai={type:"button",class:"DocSearch DocSearch-Button","aria-label":"Search"},ri={class:"DocSearch-Button-Container"},ii=_("svg",{class:"DocSearch-Search-Icon",width:"20",height:"20",viewBox:"0 0 20 20","aria-label":"search icon"},[_("path",{d:"M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z",stroke:"currentColor",fill:"none","fill-rule":"evenodd","stroke-linecap":"round","stroke-linejoin":"round"})],-1),li={class:"DocSearch-Button-Placeholder"},ci=_("span",{class:"DocSearch-Button-Keys"},[_("kbd",{class:"DocSearch-Button-Key"}),_("kbd",{class:"DocSearch-Button-Key"},"K")],-1),at=y({__name:"VPNavBarSearchButton",props:{placeholder:{}},setup(t){return(e,n)=>(r(),l("button",ai,[_("span",ri,[ii,_("span",li,N(e.placeholder),1)]),ci]))}});const ui={id:"local-search"},di={key:1,id:"docsearch"},_i=y({__name:"VPNavBarSearch",setup(t){const e=Gt(()=>Rt(()=>import("./VPLocalSearchBox.a5b12170.js"),["assets/chunks/VPLocalSearchBox.a5b12170.js","assets/chunks/framework.be0a7370.js"])),n=()=>null,{theme:o,localeIndex:s}=T(),a=L(!1),u=L(!1),d=V(()=>{var M,w,x,z,D,ue,de;const k=((M=o.value.search)==null?void 0:M.options)??o.value.algolia;return((D=(z=(x=(w=k==null?void 0:k.locales)==null?void 0:w[s.value])==null?void 0:x.translations)==null?void 0:z.button)==null?void 0:D.buttonText)||((de=(ue=k==null?void 0:k.translations)==null?void 0:ue.button)==null?void 0:de.buttonText)||"Search"});F(()=>{});function c(){a.value||(a.value=!0,setTimeout(f,16))}function f(){const k=new Event("keydown");k.key="k",k.metaKey=!0,window.dispatchEvent(k),setTimeout(()=>{document.querySelector(".DocSearch-Modal")||f()},16)}function b(k){const M=k.target,w=M.tagName;return M.isContentEditable||w==="INPUT"||w==="SELECT"||w==="TEXTAREA"}const $=L(!1);Ze("k",k=>{(k.ctrlKey||k.metaKey)&&(k.preventDefault(),$.value=!0)}),Ze("/",k=>{b(k)||(k.preventDefault(),$.value=!0)});const I=L("'Meta'");F(()=>{I.value=/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform)?"'โŒ˜'":"'Ctrl'"});const S="local";return(k,M)=>{var w;return r(),l("div",{class:"VPNavBarSearch",style:ct({"--vp-meta-key":I.value})},[i(S)==="local"?(r(),l(C,{key:0},[$.value?(r(),P(i(e),{key:0,placeholder:d.value,onClose:M[0]||(M[0]=x=>$.value=!1)},null,8,["placeholder"])):m("",!0),_("div",ui,[h(at,{placeholder:d.value,onClick:M[1]||(M[1]=x=>$.value=!0)},null,8,["placeholder"])])],64)):i(S)==="algolia"?(r(),l(C,{key:1},[a.value?(r(),P(i(n),{key:0,algolia:((w=i(o).search)==null?void 0:w.options)??i(o).algolia,onVnodeBeforeMount:M[2]||(M[2]=x=>u.value=!0)},null,8,["algolia"])):m("",!0),u.value?m("",!0):(r(),l("div",di,[h(at,{placeholder:d.value,onClick:c},null,8,["placeholder"])]))],64)):m("",!0)],4)}}});const vi=y({__name:"VPNavBarSocialLinks",setup(t){const{theme:e}=T();return(n,o)=>i(e).socialLinks?(r(),P(Ue,{key:0,class:"VPNavBarSocialLinks",links:i(e).socialLinks},null,8,["links"])):m("",!0)}});const pi=g(vi,[["__scopeId","data-v-ef6192dc"]]),fi=["href"],hi=y({__name:"VPNavBarTitle",setup(t){const{site:e,theme:n}=T(),{hasSidebar:o}=W(),{currentLang:s}=ce();return(a,u)=>(r(),l("div",{class:A(["VPNavBarTitle",{"has-sidebar":i(o)}])},[_("a",{class:"title",href:i(n).logoLink??i(se)(i(s).link)},[v(a.$slots,"nav-bar-title-before",{},void 0,!0),i(n).logo?(r(),P(Fe,{key:0,class:"logo",image:i(n).logo},null,8,["image"])):m("",!0),i(n).siteTitle?(r(),l(C,{key:1},[H(N(i(n).siteTitle),1)],64)):i(n).siteTitle===void 0?(r(),l(C,{key:2},[H(N(i(e).title),1)],64)):m("",!0),v(a.$slots,"nav-bar-title-after",{},void 0,!0)],8,fi)],2))}});const mi=g(hi,[["__scopeId","data-v-2973dbb4"]]),gi={},yi={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},bi=_("path",{d:"M0 0h24v24H0z",fill:"none"},null,-1),$i=_("path",{d:" M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z ",class:"css-c4d79v"},null,-1),ki=[bi,$i];function Pi(t,e){return r(),l("svg",yi,ki)}const Vt=g(gi,[["render",Pi]]),wi={class:"items"},Vi={class:"title"},Si=y({__name:"VPNavBarTranslations",setup(t){const{theme:e}=T(),{localeLinks:n,currentLang:o}=ce({correspondingLink:!0});return(s,a)=>i(n).length&&i(o).label?(r(),P(Re,{key:0,class:"VPNavBarTranslations",icon:Vt,label:i(e).langMenuLabel||"Change language"},{default:p(()=>[_("div",wi,[_("p",Vi,N(i(o).label),1),(r(!0),l(C,null,O(i(n),u=>(r(),P(we,{key:u.link,item:u},null,8,["item"]))),128))])]),_:1},8,["label"])):m("",!0)}});const Li=g(Si,[["__scopeId","data-v-ff4524ae"]]),Mi=t=>(j("data-v-c8ceaf10"),t=t(),G(),t),Ti={class:"container"},Ii={class:"title"},Ni={class:"content"},Ci=Mi(()=>_("div",{class:"curtain"},null,-1)),Ai={class:"content-body"},Bi=y({__name:"VPNavBar",props:{isScreenOpen:{type:Boolean}},emits:["toggle-screen"],setup(t){const{y:e}=yt(),{hasSidebar:n}=W(),{frontmatter:o}=T(),s=L({});return Be(()=>{var a;s.value={"has-sidebar":n.value,top:((a=o.value)==null?void 0:a.layout)==="home"&&e.value===0}}),(a,u)=>(r(),l("div",{class:A(["VPNavBar",s.value])},[_("div",Ti,[_("div",Ii,[h(mi,null,{"nav-bar-title-before":p(()=>[v(a.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":p(()=>[v(a.$slots,"nav-bar-title-after",{},void 0,!0)]),_:3})]),_("div",Ni,[Ci,_("div",Ai,[v(a.$slots,"nav-bar-content-before",{},void 0,!0),h(_i,{class:"search"}),h(si,{class:"menu"}),h(Li,{class:"translations"}),h(Ja,{class:"appearance"}),h(pi,{class:"social-links"}),h(Gr,{class:"extra"}),v(a.$slots,"nav-bar-content-after",{},void 0,!0),h(Yr,{class:"hamburger",active:a.isScreenOpen,onClick:u[0]||(u[0]=d=>a.$emit("toggle-screen"))},null,8,["active"])])])])],2))}});const xi=g(Bi,[["__scopeId","data-v-c8ceaf10"]]);function Oi(t){if(Array.isArray(t)){for(var e=0,n=Array(t.length);e1),Z=[],be=!1,Ke=-1,te=void 0,J=void 0,ne=void 0,St=function(e){return Z.some(function(n){return!!(n.options.allowTouchMove&&n.options.allowTouchMove(e))})},$e=function(e){var n=e||window.event;return St(n.target)||n.touches.length>1?!0:(n.preventDefault&&n.preventDefault(),!1)},Hi=function(e){if(ne===void 0){var n=!!e&&e.reserveScrollBarGap===!0,o=window.innerWidth-document.documentElement.clientWidth;if(n&&o>0){var s=parseInt(window.getComputedStyle(document.body).getPropertyValue("padding-right"),10);ne=document.body.style.paddingRight,document.body.style.paddingRight=s+o+"px"}}te===void 0&&(te=document.body.style.overflow,document.body.style.overflow="hidden")},Ei=function(){ne!==void 0&&(document.body.style.paddingRight=ne,ne=void 0),te!==void 0&&(document.body.style.overflow=te,te=void 0)},Di=function(){return window.requestAnimationFrame(function(){if(J===void 0){J={position:document.body.style.position,top:document.body.style.top,left:document.body.style.left};var e=window,n=e.scrollY,o=e.scrollX,s=e.innerHeight;document.body.style.position="fixed",document.body.style.top=-n,document.body.style.left=-o,setTimeout(function(){return window.requestAnimationFrame(function(){var a=s-window.innerHeight;a&&n>=s&&(document.body.style.top=-(n+a))})},300)}})},zi=function(){if(J!==void 0){var e=-parseInt(document.body.style.top,10),n=-parseInt(document.body.style.left,10);document.body.style.position=J.position,document.body.style.top=J.top,document.body.style.left=J.left,window.scrollTo(n,e),J=void 0}},Fi=function(e){return e?e.scrollHeight-e.scrollTop<=e.clientHeight:!1},ji=function(e,n){var o=e.targetTouches[0].clientY-Ke;return St(e.target)?!1:n&&n.scrollTop===0&&o>0||Fi(n)&&o<0?$e(e):(e.stopPropagation(),!0)},Lt=function(e,n){if(!e){console.error("disableBodyScroll unsuccessful - targetElement must be provided when calling disableBodyScroll on IOS devices.");return}if(!Z.some(function(s){return s.targetElement===e})){var o={targetElement:e,options:n||{}};Z=[].concat(Oi(Z),[o]),ye?Di():Hi(n),ye&&(e.ontouchstart=function(s){s.targetTouches.length===1&&(Ke=s.targetTouches[0].clientY)},e.ontouchmove=function(s){s.targetTouches.length===1&&ji(s,e)},be||(document.addEventListener("touchmove",$e,We?{passive:!1}:void 0),be=!0))}},Mt=function(){ye&&(Z.forEach(function(e){e.targetElement.ontouchstart=null,e.targetElement.ontouchmove=null}),be&&(document.removeEventListener("touchmove",$e,We?{passive:!1}:void 0),be=!1),Ke=-1),ye?zi():Ei(),Z=[]};const Gi=y({__name:"VPNavScreenMenuLink",props:{item:{}},setup(t){const e=xe("close-screen");return(n,o)=>(r(),P(q,{class:"VPNavScreenMenuLink",href:n.item.link,target:n.item.target,rel:n.item.rel,onClick:i(e)},{default:p(()=>[H(N(n.item.text),1)]),_:1},8,["href","target","rel","onClick"]))}});const Ri=g(Gi,[["__scopeId","data-v-08b49756"]]),Ui={},Wi={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},Ki=_("path",{d:"M18.9,10.9h-6v-6c0-0.6-0.4-1-1-1s-1,0.4-1,1v6h-6c-0.6,0-1,0.4-1,1s0.4,1,1,1h6v6c0,0.6,0.4,1,1,1s1-0.4,1-1v-6h6c0.6,0,1-0.4,1-1S19.5,10.9,18.9,10.9z"},null,-1),qi=[Ki];function Yi(t,e){return r(),l("svg",Wi,qi)}const Ji=g(Ui,[["render",Yi]]),Xi=y({__name:"VPNavScreenMenuGroupLink",props:{item:{}},setup(t){const e=xe("close-screen");return(n,o)=>(r(),P(q,{class:"VPNavScreenMenuGroupLink",href:n.item.link,target:n.item.target,rel:n.item.rel,onClick:i(e)},{default:p(()=>[H(N(n.item.text),1)]),_:1},8,["href","target","rel","onClick"]))}});const Tt=g(Xi,[["__scopeId","data-v-97083fb3"]]),Qi={class:"VPNavScreenMenuGroupSection"},Zi={key:0,class:"title"},el=y({__name:"VPNavScreenMenuGroupSection",props:{text:{},items:{}},setup(t){return(e,n)=>(r(),l("div",Qi,[e.text?(r(),l("p",Zi,N(e.text),1)):m("",!0),(r(!0),l(C,null,O(e.items,o=>(r(),P(Tt,{key:o.text,item:o},null,8,["item"]))),128))]))}});const tl=g(el,[["__scopeId","data-v-f60dbfa7"]]),nl=["aria-controls","aria-expanded"],ol={class:"button-text"},sl=["id"],al={key:1,class:"group"},rl=y({__name:"VPNavScreenMenuGroup",props:{text:{},items:{}},setup(t){const e=t,n=L(!1),o=V(()=>`NavScreenGroup-${e.text.replace(" ","-").toLowerCase()}`);function s(){n.value=!n.value}return(a,u)=>(r(),l("div",{class:A(["VPNavScreenMenuGroup",{open:n.value}])},[_("button",{class:"button","aria-controls":o.value,"aria-expanded":n.value,onClick:s},[_("span",ol,N(a.text),1),h(Ji,{class:"button-icon"})],8,nl),_("div",{id:o.value,class:"items"},[(r(!0),l(C,null,O(a.items,d=>(r(),l(C,{key:d.text},["link"in d?(r(),l("div",{key:d.text,class:"item"},[h(Tt,{item:d},null,8,["item"])])):(r(),l("div",al,[h(tl,{text:d.text,items:d.items},null,8,["text","items"])]))],64))),128))],8,sl)],2))}});const il=g(rl,[["__scopeId","data-v-10e00a88"]]),ll={key:0,class:"VPNavScreenMenu"},cl=y({__name:"VPNavScreenMenu",setup(t){const{theme:e}=T();return(n,o)=>i(e).nav?(r(),l("nav",ll,[(r(!0),l(C,null,O(i(e).nav,s=>(r(),l(C,{key:s.text},["link"in s?(r(),P(Ri,{key:0,item:s},null,8,["item"])):(r(),P(il,{key:1,text:s.text||"",items:s.items},null,8,["text","items"]))],64))),128))])):m("",!0)}}),ul={key:0,class:"VPNavScreenAppearance"},dl={class:"text"},_l=y({__name:"VPNavScreenAppearance",setup(t){const{site:e,theme:n}=T();return(o,s)=>i(e).appearance?(r(),l("div",ul,[_("p",dl,N(i(n).darkModeSwitchLabel||"Appearance"),1),h(je)])):m("",!0)}});const vl=g(_l,[["__scopeId","data-v-0dc5cf49"]]),pl={class:"list"},fl=y({__name:"VPNavScreenTranslations",setup(t){const{localeLinks:e,currentLang:n}=ce({correspondingLink:!0}),o=L(!1);function s(){o.value=!o.value}return(a,u)=>i(e).length&&i(n).label?(r(),l("div",{key:0,class:A(["VPNavScreenTranslations",{open:o.value}])},[_("button",{class:"title",onClick:s},[h(Vt,{class:"icon lang"}),H(" "+N(i(n).label)+" ",1),h(wt,{class:"icon chevron"})]),_("ul",pl,[(r(!0),l(C,null,O(i(e),d=>(r(),l("li",{key:d.link,class:"item"},[h(q,{class:"link",href:d.link},{default:p(()=>[H(N(d.text),1)]),_:2},1032,["href"])]))),128))])],2)):m("",!0)}});const hl=g(fl,[["__scopeId","data-v-41505286"]]),ml=y({__name:"VPNavScreenSocialLinks",setup(t){const{theme:e}=T();return(n,o)=>i(e).socialLinks?(r(),P(Ue,{key:0,class:"VPNavScreenSocialLinks",links:i(e).socialLinks},null,8,["links"])):m("",!0)}}),gl={class:"container"},yl=y({__name:"VPNavScreen",props:{open:{type:Boolean}},setup(t){const e=L(null);function n(){Lt(e.value,{reserveScrollBarGap:!0})}function o(){Mt()}return(s,a)=>(r(),P(Ie,{name:"fade",onEnter:n,onAfterLeave:o},{default:p(()=>[s.open?(r(),l("div",{key:0,class:"VPNavScreen",ref_key:"screen",ref:e,id:"VPNavScreen"},[_("div",gl,[v(s.$slots,"nav-screen-content-before",{},void 0,!0),h(cl,{class:"menu"}),h(hl,{class:"translations"}),h(vl,{class:"appearance"}),h(ml,{class:"social-links"}),v(s.$slots,"nav-screen-content-after",{},void 0,!0)])],512)):m("",!0)]),_:3}))}});const bl=g(yl,[["__scopeId","data-v-dc785598"]]),$l={class:"VPNav"},kl=y({__name:"VPNav",setup(t){const{isScreenOpen:e,closeScreen:n,toggleScreen:o}=Ma();return fe("close-screen",n),(s,a)=>(r(),l("header",$l,[h(xi,{"is-screen-open":i(e),onToggleScreen:i(o)},{"nav-bar-title-before":p(()=>[v(s.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":p(()=>[v(s.$slots,"nav-bar-title-after",{},void 0,!0)]),"nav-bar-content-before":p(()=>[v(s.$slots,"nav-bar-content-before",{},void 0,!0)]),"nav-bar-content-after":p(()=>[v(s.$slots,"nav-bar-content-after",{},void 0,!0)]),_:3},8,["is-screen-open","onToggleScreen"]),h(bl,{open:i(e)},{"nav-screen-content-before":p(()=>[v(s.$slots,"nav-screen-content-before",{},void 0,!0)]),"nav-screen-content-after":p(()=>[v(s.$slots,"nav-screen-content-after",{},void 0,!0)]),_:3},8,["open"])]))}});const Pl=g(kl,[["__scopeId","data-v-5bdc5df3"]]),wl=t=>(j("data-v-c356ab37"),t=t(),G(),t),Vl=["role","tabindex"],Sl=wl(()=>_("div",{class:"indicator"},null,-1)),Ll=["onKeydown"],Ml={key:1,class:"items"},Tl=y({__name:"VPSidebarItem",props:{item:{},depth:{}},setup(t){const e=t,{collapsed:n,collapsible:o,isLink:s,isActiveLink:a,hasActiveLink:u,hasChildren:d,toggle:c}=Jn(V(()=>e.item)),f=V(()=>d.value?"section":"div"),b=V(()=>s.value?"a":"div"),$=V(()=>d.value?e.depth+2===7?"p":`h${e.depth+2}`:"p"),I=V(()=>s.value?void 0:"button"),S=V(()=>[[`level-${e.depth}`],{collapsible:o.value},{collapsed:n.value},{"is-link":s.value},{"is-active":a.value},{"has-active":u.value}]);function k(w){"key"in w&&w.key!=="Enter"||!e.item.link&&c()}function M(){e.item.link&&c()}return(w,x)=>{const z=Q("VPSidebarItem",!0);return r(),P(X(f.value),{class:A(["VPSidebarItem",S.value])},{default:p(()=>[w.item.text?(r(),l("div",pe({key:0,class:"item",role:I.value},Ut(w.item.items?{click:k,keydown:k}:{},!0),{tabindex:w.item.items&&0}),[Sl,w.item.link?(r(),P(q,{key:0,tag:b.value,class:"link",href:w.item.link},{default:p(()=>[(r(),P(X($.value),{class:"text",innerHTML:w.item.text},null,8,["innerHTML"]))]),_:1},8,["tag","href"])):(r(),P(X($.value),{key:1,class:"text",innerHTML:w.item.text},null,8,["innerHTML"])),w.item.collapsed!=null?(r(),l("div",{key:2,class:"caret",role:"button","aria-label":"toggle section",onClick:M,onKeydown:Wt(M,["enter"]),tabindex:"0"},[h(ze,{class:"caret-icon"})],40,Ll)):m("",!0)],16,Vl)):m("",!0),w.item.items&&w.item.items.length?(r(),l("div",Ml,[w.depth<5?(r(!0),l(C,{key:0},O(w.item.items,D=>(r(),P(z,{key:D.text,item:D,depth:w.depth+1},null,8,["item","depth"]))),128)):m("",!0)])):m("",!0)]),_:1},8,["class"])}}});const Il=g(Tl,[["__scopeId","data-v-c356ab37"]]),It=t=>(j("data-v-b04a928c"),t=t(),G(),t),Nl=It(()=>_("div",{class:"curtain"},null,-1)),Cl={class:"nav",id:"VPSidebarNav","aria-labelledby":"sidebar-aria-label",tabindex:"-1"},Al=It(()=>_("span",{class:"visually-hidden",id:"sidebar-aria-label"}," Sidebar Navigation ",-1)),Bl=y({__name:"VPSidebar",props:{open:{type:Boolean}},setup(t){const e=t,{sidebarGroups:n,hasSidebar:o}=W();let s=L(null);function a(){Lt(s.value,{reserveScrollBarGap:!0})}function u(){Mt()}return Be(async()=>{var d;e.open?(a(),(d=s.value)==null||d.focus()):u()}),(d,c)=>i(o)?(r(),l("aside",{key:0,class:A(["VPSidebar",{open:d.open}]),ref_key:"navEl",ref:s,onClick:c[0]||(c[0]=Kt(()=>{},["stop"]))},[Nl,_("nav",Cl,[Al,v(d.$slots,"sidebar-nav-before",{},void 0,!0),(r(!0),l(C,null,O(i(n),f=>(r(),l("div",{key:f.text,class:"group"},[h(Il,{item:f,depth:0},null,8,["item"])]))),128)),v(d.$slots,"sidebar-nav-after",{},void 0,!0)])],2)):m("",!0)}});const xl=g(Bl,[["__scopeId","data-v-b04a928c"]]),Ol=y({__name:"VPSkipLink",setup(t){const e=Pe(),n=L();U(()=>e.path,()=>n.value.focus());function o({target:s}){const a=document.getElementById(decodeURIComponent(s.hash).slice(1));if(a){const u=()=>{a.removeAttribute("tabindex"),a.removeEventListener("blur",u)};a.setAttribute("tabindex","-1"),a.addEventListener("blur",u),a.focus(),window.scrollTo(0,0)}}return(s,a)=>(r(),l(C,null,[_("span",{ref_key:"backToTop",ref:n,tabindex:"-1"},null,512),_("a",{href:"#VPContent",class:"VPSkipLink visually-hidden",onClick:o}," Skip to content ")],64))}});const Hl=g(Ol,[["__scopeId","data-v-9c8615dd"]]),El=y({__name:"Layout",setup(t){const{isOpen:e,open:n,close:o}=W(),s=Pe();U(()=>s.path,o),Yn(e,o),fe("close-sidebar",o),fe("is-sidebar-open",e);const{frontmatter:a}=T(),u=qt(),d=V(()=>!!u["home-hero-image"]);return fe("hero-image-slot-exists",d),(c,f)=>{const b=Q("Content");return i(a).layout!==!1?(r(),l("div",{key:0,class:A(["Layout",i(a).pageClass])},[v(c.$slots,"layout-top",{},void 0,!0),h(Hl),h(Zt,{class:"backdrop",show:i(e),onClick:i(o)},null,8,["show","onClick"]),i(a).navbar!==!1?(r(),P(Pl,{key:0},{"nav-bar-title-before":p(()=>[v(c.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":p(()=>[v(c.$slots,"nav-bar-title-after",{},void 0,!0)]),"nav-bar-content-before":p(()=>[v(c.$slots,"nav-bar-content-before",{},void 0,!0)]),"nav-bar-content-after":p(()=>[v(c.$slots,"nav-bar-content-after",{},void 0,!0)]),"nav-screen-content-before":p(()=>[v(c.$slots,"nav-screen-content-before",{},void 0,!0)]),"nav-screen-content-after":p(()=>[v(c.$slots,"nav-screen-content-after",{},void 0,!0)]),_:3})):m("",!0),h(La,{open:i(e),onOpenMenu:i(n)},null,8,["open","onOpenMenu"]),h(xl,{open:i(e)},{"sidebar-nav-before":p(()=>[v(c.$slots,"sidebar-nav-before",{},void 0,!0)]),"sidebar-nav-after":p(()=>[v(c.$slots,"sidebar-nav-after",{},void 0,!0)]),_:3},8,["open"]),h(aa,null,{"page-top":p(()=>[v(c.$slots,"page-top",{},void 0,!0)]),"page-bottom":p(()=>[v(c.$slots,"page-bottom",{},void 0,!0)]),"not-found":p(()=>[v(c.$slots,"not-found",{},void 0,!0)]),"home-hero-before":p(()=>[v(c.$slots,"home-hero-before",{},void 0,!0)]),"home-hero-info":p(()=>[v(c.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-image":p(()=>[v(c.$slots,"home-hero-image",{},void 0,!0)]),"home-hero-after":p(()=>[v(c.$slots,"home-hero-after",{},void 0,!0)]),"home-features-before":p(()=>[v(c.$slots,"home-features-before",{},void 0,!0)]),"home-features-after":p(()=>[v(c.$slots,"home-features-after",{},void 0,!0)]),"doc-footer-before":p(()=>[v(c.$slots,"doc-footer-before",{},void 0,!0)]),"doc-before":p(()=>[v(c.$slots,"doc-before",{},void 0,!0)]),"doc-after":p(()=>[v(c.$slots,"doc-after",{},void 0,!0)]),"doc-top":p(()=>[v(c.$slots,"doc-top",{},void 0,!0)]),"doc-bottom":p(()=>[v(c.$slots,"doc-bottom",{},void 0,!0)]),"aside-top":p(()=>[v(c.$slots,"aside-top",{},void 0,!0)]),"aside-bottom":p(()=>[v(c.$slots,"aside-bottom",{},void 0,!0)]),"aside-outline-before":p(()=>[v(c.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":p(()=>[v(c.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":p(()=>[v(c.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":p(()=>[v(c.$slots,"aside-ads-after",{},void 0,!0)]),_:3}),h(ua),v(c.$slots,"layout-bottom",{},void 0,!0)],2)):(r(),P(b,{key:1}))}}});const Dl=g(El,[["__scopeId","data-v-324e8308"]]);const Wl={Layout:Dl,enhanceApp:({app:t})=>{t.component("Badge",Jt)}};function Kl(t,e){const{localeIndex:n}=T();function o(s){var S,k;const a=s.split("."),u=t&&typeof t=="object",d=u&&((k=(S=t.locales)==null?void 0:S[n.value])==null?void 0:k.translations)||null,c=u&&t.translations||null;let f=d,b=c,$=e;const I=a.pop();for(const M of a){let w=null;const x=$==null?void 0:$[M];x&&(w=$=x);const z=b==null?void 0:b[M];z&&(w=b=z);const D=f==null?void 0:f[M];D&&(w=f=D),x||($=w),z||(b=w),D||(f=w)}return(f==null?void 0:f[I])??(b==null?void 0:b[I])??($==null?void 0:$[I])??""}return o}export{Oe as a,T as b,jl as c,Ul as d,Gl as e,Kl as f,re as g,Rl as h,Ze as o,Wl as t,Bn as u,Fl as w}; +}`)),document.head.appendChild(S),o.value=I,d[I?"add":"remove"]("dark"),window.getComputedStyle(S).opacity,document.head.removeChild(S)}return b}return U(o,u=>{n.value=u}),(u,d)=>(r(),P(Ba,{title:"toggle dark mode",class:"VPSwitchAppearance","aria-checked":o.value,onClick:i(s)},{default:p(()=>[h(za,{class:"sun"}),h(Wa,{class:"moon"})]),_:1},8,["aria-checked","onClick"]))}});const je=g(Ka,[["__scopeId","data-v-a99ed743"]]),qa={key:0,class:"VPNavBarAppearance"},Ya=y({__name:"VPNavBarAppearance",setup(t){const{site:e}=T();return(n,o)=>i(e).appearance?(r(),l("div",qa,[h(je)])):m("",!0)}});const Ja=g(Ya,[["__scopeId","data-v-5e9f0637"]]),Ge=L();let kt=!1,Se=0;function Xa(t){const e=L(!1);if(ke){!kt&&Qa(),Se++;const n=U(Ge,o=>{var s,a,u;o===t.el.value||(s=t.el.value)!=null&&s.contains(o)?(e.value=!0,(a=t.onFocus)==null||a.call(t)):(e.value=!1,(u=t.onBlur)==null||u.call(t))});Ae(()=>{n(),Se--,Se||Za()})}return Ce(e)}function Qa(){document.addEventListener("focusin",Pt),kt=!0,Ge.value=document.activeElement}function Za(){document.removeEventListener("focusin",Pt)}function Pt(){Ge.value=document.activeElement}const er={},tr={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},nr=_("path",{d:"M12,16c-0.3,0-0.5-0.1-0.7-0.3l-6-6c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l5.3,5.3l5.3-5.3c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-6,6C12.5,15.9,12.3,16,12,16z"},null,-1),or=[nr];function sr(t,e){return r(),l("svg",tr,or)}const wt=g(er,[["render",sr]]),ar={},rr={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},ir=_("circle",{cx:"12",cy:"12",r:"2"},null,-1),lr=_("circle",{cx:"19",cy:"12",r:"2"},null,-1),cr=_("circle",{cx:"5",cy:"12",r:"2"},null,-1),ur=[ir,lr,cr];function dr(t,e){return r(),l("svg",rr,ur)}const _r=g(ar,[["render",dr]]),vr={class:"VPMenuLink"},pr=y({__name:"VPMenuLink",props:{item:{}},setup(t){const{page:e}=T();return(n,o)=>(r(),l("div",vr,[h(q,{class:A({active:i(ee)(i(e).relativePath,n.item.activeMatch||n.item.link,!!n.item.activeMatch)}),href:n.item.link,target:n.item.target,rel:n.item.rel},{default:p(()=>[H(N(n.item.text),1)]),_:1},8,["class","href","target","rel"])]))}});const we=g(pr,[["__scopeId","data-v-2a4d50e5"]]),fr={class:"VPMenuGroup"},hr={key:0,class:"title"},mr=y({__name:"VPMenuGroup",props:{text:{},items:{}},setup(t){return(e,n)=>(r(),l("div",fr,[e.text?(r(),l("p",hr,N(e.text),1)):m("",!0),(r(!0),l(C,null,O(e.items,o=>(r(),l(C,null,["link"in o?(r(),P(we,{key:0,item:o},null,8,["item"])):m("",!0)],64))),256))]))}});const gr=g(mr,[["__scopeId","data-v-a6b0397c"]]),yr={class:"VPMenu"},br={key:0,class:"items"},$r=y({__name:"VPMenu",props:{items:{}},setup(t){return(e,n)=>(r(),l("div",yr,[e.items?(r(),l("div",br,[(r(!0),l(C,null,O(e.items,o=>(r(),l(C,{key:o.text},["link"in o?(r(),P(we,{key:0,item:o},null,8,["item"])):(r(),P(gr,{key:1,text:o.text,items:o.items},null,8,["text","items"]))],64))),128))])):m("",!0),v(e.$slots,"default",{},void 0,!0)]))}});const kr=g($r,[["__scopeId","data-v-e42ed9b3"]]),Pr=["aria-expanded","aria-label"],wr={key:0,class:"text"},Vr=["innerHTML"],Sr={class:"menu"},Lr=y({__name:"VPFlyout",props:{icon:{},button:{},label:{},items:{}},setup(t){const e=L(!1),n=L();Xa({el:n,onBlur:o});function o(){e.value=!1}return(s,a)=>(r(),l("div",{class:"VPFlyout",ref_key:"el",ref:n,onMouseenter:a[1]||(a[1]=u=>e.value=!0),onMouseleave:a[2]||(a[2]=u=>e.value=!1)},[_("button",{type:"button",class:"button","aria-haspopup":"true","aria-expanded":e.value,"aria-label":s.label,onClick:a[0]||(a[0]=u=>e.value=!e.value)},[s.button||s.icon?(r(),l("span",wr,[s.icon?(r(),P(X(s.icon),{key:0,class:"option-icon"})):m("",!0),s.button?(r(),l("span",{key:1,innerHTML:s.button},null,8,Vr)):m("",!0),h(wt,{class:"text-icon"})])):(r(),P(_r,{key:1,class:"icon"}))],8,Pr),_("div",Sr,[h(kr,{items:s.items},{default:p(()=>[v(s.$slots,"default",{},void 0,!0)]),_:3},8,["items"])])],544))}});const Re=g(Lr,[["__scopeId","data-v-6b19ffdd"]]),Mr={discord:'Discord',facebook:'Facebook',github:'GitHub',instagram:'Instagram',linkedin:'LinkedIn',mastodon:'Mastodon',slack:'Slack',twitter:'Twitter',youtube:'YouTube'},Tr=["href","aria-label","innerHTML"],Ir=y({__name:"VPSocialLink",props:{icon:{},link:{},ariaLabel:{}},setup(t){const e=t,n=V(()=>typeof e.icon=="object"?e.icon.svg:Mr[e.icon]);return(o,s)=>(r(),l("a",{class:"VPSocialLink no-icon",href:o.link,"aria-label":o.ariaLabel??(typeof o.icon=="string"?o.icon:""),target:"_blank",rel:"noopener",innerHTML:n.value},null,8,Tr))}});const Nr=g(Ir,[["__scopeId","data-v-16cf740a"]]),Cr={class:"VPSocialLinks"},Ar=y({__name:"VPSocialLinks",props:{links:{}},setup(t){return(e,n)=>(r(),l("div",Cr,[(r(!0),l(C,null,O(e.links,({link:o,icon:s,ariaLabel:a})=>(r(),P(Nr,{key:o,icon:s,link:o,ariaLabel:a},null,8,["icon","link","ariaLabel"]))),128))]))}});const Ue=g(Ar,[["__scopeId","data-v-e71e869c"]]),Br={key:0,class:"group translations"},xr={class:"trans-title"},Or={key:1,class:"group"},Hr={class:"item appearance"},Er={class:"label"},Dr={class:"appearance-action"},zr={key:2,class:"group"},Fr={class:"item social-links"},jr=y({__name:"VPNavBarExtra",setup(t){const{site:e,theme:n}=T(),{localeLinks:o,currentLang:s}=ce({correspondingLink:!0}),a=V(()=>o.value.length&&s.value.label||e.value.appearance||n.value.socialLinks);return(u,d)=>a.value?(r(),P(Re,{key:0,class:"VPNavBarExtra",label:"extra navigation"},{default:p(()=>[i(o).length&&i(s).label?(r(),l("div",Br,[_("p",xr,N(i(s).label),1),(r(!0),l(C,null,O(i(o),c=>(r(),P(we,{key:c.link,item:c},null,8,["item"]))),128))])):m("",!0),i(e).appearance?(r(),l("div",Or,[_("div",Hr,[_("p",Er,N(i(n).darkModeSwitchLabel||"Appearance"),1),_("div",Dr,[h(je)])])])):m("",!0),i(n).socialLinks?(r(),l("div",zr,[_("div",Fr,[h(Ue,{class:"social-links-list",links:i(n).socialLinks},null,8,["links"])])])):m("",!0)]),_:1})):m("",!0)}});const Gr=g(jr,[["__scopeId","data-v-c8c2ae4b"]]),Rr=t=>(j("data-v-6bee1efd"),t=t(),G(),t),Ur=["aria-expanded"],Wr=Rr(()=>_("span",{class:"container"},[_("span",{class:"top"}),_("span",{class:"middle"}),_("span",{class:"bottom"})],-1)),Kr=[Wr],qr=y({__name:"VPNavBarHamburger",props:{active:{type:Boolean}},emits:["click"],setup(t){return(e,n)=>(r(),l("button",{type:"button",class:A(["VPNavBarHamburger",{active:e.active}]),"aria-label":"mobile navigation","aria-expanded":e.active,"aria-controls":"VPNavScreen",onClick:n[0]||(n[0]=o=>e.$emit("click"))},Kr,10,Ur))}});const Yr=g(qr,[["__scopeId","data-v-6bee1efd"]]),Jr=["innerHTML"],Xr=y({__name:"VPNavBarMenuLink",props:{item:{}},setup(t){const{page:e}=T();return(n,o)=>(r(),P(q,{class:A({VPNavBarMenuLink:!0,active:i(ee)(i(e).relativePath,n.item.activeMatch||n.item.link,!!n.item.activeMatch)}),href:n.item.link,target:n.item.target,rel:n.item.rel,tabindex:"0"},{default:p(()=>[_("span",{innerHTML:n.item.text},null,8,Jr)]),_:1},8,["class","href","target","rel"]))}});const Qr=g(Xr,[["__scopeId","data-v-e5ab8091"]]),Zr=y({__name:"VPNavBarMenuGroup",props:{item:{}},setup(t){const{page:e}=T();return(n,o)=>(r(),P(Re,{class:A({VPNavBarMenuGroup:!0,active:i(ee)(i(e).relativePath,n.item.activeMatch,!!n.item.activeMatch)}),button:n.item.text,items:n.item.items},null,8,["class","button","items"]))}}),ei=t=>(j("data-v-f732b5d0"),t=t(),G(),t),ti={key:0,"aria-labelledby":"main-nav-aria-label",class:"VPNavBarMenu"},ni=ei(()=>_("span",{id:"main-nav-aria-label",class:"visually-hidden"},"Main Navigation",-1)),oi=y({__name:"VPNavBarMenu",setup(t){const{theme:e}=T();return(n,o)=>i(e).nav?(r(),l("nav",ti,[ni,(r(!0),l(C,null,O(i(e).nav,s=>(r(),l(C,{key:s.text},["link"in s?(r(),P(Qr,{key:0,item:s},null,8,["item"])):(r(),P(Zr,{key:1,item:s},null,8,["item"]))],64))),128))])):m("",!0)}});const si=g(oi,[["__scopeId","data-v-f732b5d0"]]);const ai={type:"button",class:"DocSearch DocSearch-Button","aria-label":"Search"},ri={class:"DocSearch-Button-Container"},ii=_("svg",{class:"DocSearch-Search-Icon",width:"20",height:"20",viewBox:"0 0 20 20","aria-label":"search icon"},[_("path",{d:"M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z",stroke:"currentColor",fill:"none","fill-rule":"evenodd","stroke-linecap":"round","stroke-linejoin":"round"})],-1),li={class:"DocSearch-Button-Placeholder"},ci=_("span",{class:"DocSearch-Button-Keys"},[_("kbd",{class:"DocSearch-Button-Key"}),_("kbd",{class:"DocSearch-Button-Key"},"K")],-1),at=y({__name:"VPNavBarSearchButton",props:{placeholder:{}},setup(t){return(e,n)=>(r(),l("button",ai,[_("span",ri,[ii,_("span",li,N(e.placeholder),1)]),ci]))}});const ui={id:"local-search"},di={key:1,id:"docsearch"},_i=y({__name:"VPNavBarSearch",setup(t){const e=Gt(()=>Rt(()=>import("./VPLocalSearchBox.151d2161.js"),["assets/chunks/VPLocalSearchBox.151d2161.js","assets/chunks/framework.be0a7370.js"])),n=()=>null,{theme:o,localeIndex:s}=T(),a=L(!1),u=L(!1),d=V(()=>{var M,w,x,z,D,ue,de;const k=((M=o.value.search)==null?void 0:M.options)??o.value.algolia;return((D=(z=(x=(w=k==null?void 0:k.locales)==null?void 0:w[s.value])==null?void 0:x.translations)==null?void 0:z.button)==null?void 0:D.buttonText)||((de=(ue=k==null?void 0:k.translations)==null?void 0:ue.button)==null?void 0:de.buttonText)||"Search"});F(()=>{});function c(){a.value||(a.value=!0,setTimeout(f,16))}function f(){const k=new Event("keydown");k.key="k",k.metaKey=!0,window.dispatchEvent(k),setTimeout(()=>{document.querySelector(".DocSearch-Modal")||f()},16)}function b(k){const M=k.target,w=M.tagName;return M.isContentEditable||w==="INPUT"||w==="SELECT"||w==="TEXTAREA"}const $=L(!1);Ze("k",k=>{(k.ctrlKey||k.metaKey)&&(k.preventDefault(),$.value=!0)}),Ze("/",k=>{b(k)||(k.preventDefault(),$.value=!0)});const I=L("'Meta'");F(()=>{I.value=/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform)?"'โŒ˜'":"'Ctrl'"});const S="local";return(k,M)=>{var w;return r(),l("div",{class:"VPNavBarSearch",style:ct({"--vp-meta-key":I.value})},[i(S)==="local"?(r(),l(C,{key:0},[$.value?(r(),P(i(e),{key:0,placeholder:d.value,onClose:M[0]||(M[0]=x=>$.value=!1)},null,8,["placeholder"])):m("",!0),_("div",ui,[h(at,{placeholder:d.value,onClick:M[1]||(M[1]=x=>$.value=!0)},null,8,["placeholder"])])],64)):i(S)==="algolia"?(r(),l(C,{key:1},[a.value?(r(),P(i(n),{key:0,algolia:((w=i(o).search)==null?void 0:w.options)??i(o).algolia,onVnodeBeforeMount:M[2]||(M[2]=x=>u.value=!0)},null,8,["algolia"])):m("",!0),u.value?m("",!0):(r(),l("div",di,[h(at,{placeholder:d.value,onClick:c},null,8,["placeholder"])]))],64)):m("",!0)],4)}}});const vi=y({__name:"VPNavBarSocialLinks",setup(t){const{theme:e}=T();return(n,o)=>i(e).socialLinks?(r(),P(Ue,{key:0,class:"VPNavBarSocialLinks",links:i(e).socialLinks},null,8,["links"])):m("",!0)}});const pi=g(vi,[["__scopeId","data-v-ef6192dc"]]),fi=["href"],hi=y({__name:"VPNavBarTitle",setup(t){const{site:e,theme:n}=T(),{hasSidebar:o}=W(),{currentLang:s}=ce();return(a,u)=>(r(),l("div",{class:A(["VPNavBarTitle",{"has-sidebar":i(o)}])},[_("a",{class:"title",href:i(n).logoLink??i(se)(i(s).link)},[v(a.$slots,"nav-bar-title-before",{},void 0,!0),i(n).logo?(r(),P(Fe,{key:0,class:"logo",image:i(n).logo},null,8,["image"])):m("",!0),i(n).siteTitle?(r(),l(C,{key:1},[H(N(i(n).siteTitle),1)],64)):i(n).siteTitle===void 0?(r(),l(C,{key:2},[H(N(i(e).title),1)],64)):m("",!0),v(a.$slots,"nav-bar-title-after",{},void 0,!0)],8,fi)],2))}});const mi=g(hi,[["__scopeId","data-v-2973dbb4"]]),gi={},yi={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},bi=_("path",{d:"M0 0h24v24H0z",fill:"none"},null,-1),$i=_("path",{d:" M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z ",class:"css-c4d79v"},null,-1),ki=[bi,$i];function Pi(t,e){return r(),l("svg",yi,ki)}const Vt=g(gi,[["render",Pi]]),wi={class:"items"},Vi={class:"title"},Si=y({__name:"VPNavBarTranslations",setup(t){const{theme:e}=T(),{localeLinks:n,currentLang:o}=ce({correspondingLink:!0});return(s,a)=>i(n).length&&i(o).label?(r(),P(Re,{key:0,class:"VPNavBarTranslations",icon:Vt,label:i(e).langMenuLabel||"Change language"},{default:p(()=>[_("div",wi,[_("p",Vi,N(i(o).label),1),(r(!0),l(C,null,O(i(n),u=>(r(),P(we,{key:u.link,item:u},null,8,["item"]))),128))])]),_:1},8,["label"])):m("",!0)}});const Li=g(Si,[["__scopeId","data-v-ff4524ae"]]),Mi=t=>(j("data-v-c8ceaf10"),t=t(),G(),t),Ti={class:"container"},Ii={class:"title"},Ni={class:"content"},Ci=Mi(()=>_("div",{class:"curtain"},null,-1)),Ai={class:"content-body"},Bi=y({__name:"VPNavBar",props:{isScreenOpen:{type:Boolean}},emits:["toggle-screen"],setup(t){const{y:e}=yt(),{hasSidebar:n}=W(),{frontmatter:o}=T(),s=L({});return Be(()=>{var a;s.value={"has-sidebar":n.value,top:((a=o.value)==null?void 0:a.layout)==="home"&&e.value===0}}),(a,u)=>(r(),l("div",{class:A(["VPNavBar",s.value])},[_("div",Ti,[_("div",Ii,[h(mi,null,{"nav-bar-title-before":p(()=>[v(a.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":p(()=>[v(a.$slots,"nav-bar-title-after",{},void 0,!0)]),_:3})]),_("div",Ni,[Ci,_("div",Ai,[v(a.$slots,"nav-bar-content-before",{},void 0,!0),h(_i,{class:"search"}),h(si,{class:"menu"}),h(Li,{class:"translations"}),h(Ja,{class:"appearance"}),h(pi,{class:"social-links"}),h(Gr,{class:"extra"}),v(a.$slots,"nav-bar-content-after",{},void 0,!0),h(Yr,{class:"hamburger",active:a.isScreenOpen,onClick:u[0]||(u[0]=d=>a.$emit("toggle-screen"))},null,8,["active"])])])])],2))}});const xi=g(Bi,[["__scopeId","data-v-c8ceaf10"]]);function Oi(t){if(Array.isArray(t)){for(var e=0,n=Array(t.length);e1),Z=[],be=!1,Ke=-1,te=void 0,J=void 0,ne=void 0,St=function(e){return Z.some(function(n){return!!(n.options.allowTouchMove&&n.options.allowTouchMove(e))})},$e=function(e){var n=e||window.event;return St(n.target)||n.touches.length>1?!0:(n.preventDefault&&n.preventDefault(),!1)},Hi=function(e){if(ne===void 0){var n=!!e&&e.reserveScrollBarGap===!0,o=window.innerWidth-document.documentElement.clientWidth;if(n&&o>0){var s=parseInt(window.getComputedStyle(document.body).getPropertyValue("padding-right"),10);ne=document.body.style.paddingRight,document.body.style.paddingRight=s+o+"px"}}te===void 0&&(te=document.body.style.overflow,document.body.style.overflow="hidden")},Ei=function(){ne!==void 0&&(document.body.style.paddingRight=ne,ne=void 0),te!==void 0&&(document.body.style.overflow=te,te=void 0)},Di=function(){return window.requestAnimationFrame(function(){if(J===void 0){J={position:document.body.style.position,top:document.body.style.top,left:document.body.style.left};var e=window,n=e.scrollY,o=e.scrollX,s=e.innerHeight;document.body.style.position="fixed",document.body.style.top=-n,document.body.style.left=-o,setTimeout(function(){return window.requestAnimationFrame(function(){var a=s-window.innerHeight;a&&n>=s&&(document.body.style.top=-(n+a))})},300)}})},zi=function(){if(J!==void 0){var e=-parseInt(document.body.style.top,10),n=-parseInt(document.body.style.left,10);document.body.style.position=J.position,document.body.style.top=J.top,document.body.style.left=J.left,window.scrollTo(n,e),J=void 0}},Fi=function(e){return e?e.scrollHeight-e.scrollTop<=e.clientHeight:!1},ji=function(e,n){var o=e.targetTouches[0].clientY-Ke;return St(e.target)?!1:n&&n.scrollTop===0&&o>0||Fi(n)&&o<0?$e(e):(e.stopPropagation(),!0)},Lt=function(e,n){if(!e){console.error("disableBodyScroll unsuccessful - targetElement must be provided when calling disableBodyScroll on IOS devices.");return}if(!Z.some(function(s){return s.targetElement===e})){var o={targetElement:e,options:n||{}};Z=[].concat(Oi(Z),[o]),ye?Di():Hi(n),ye&&(e.ontouchstart=function(s){s.targetTouches.length===1&&(Ke=s.targetTouches[0].clientY)},e.ontouchmove=function(s){s.targetTouches.length===1&&ji(s,e)},be||(document.addEventListener("touchmove",$e,We?{passive:!1}:void 0),be=!0))}},Mt=function(){ye&&(Z.forEach(function(e){e.targetElement.ontouchstart=null,e.targetElement.ontouchmove=null}),be&&(document.removeEventListener("touchmove",$e,We?{passive:!1}:void 0),be=!1),Ke=-1),ye?zi():Ei(),Z=[]};const Gi=y({__name:"VPNavScreenMenuLink",props:{item:{}},setup(t){const e=xe("close-screen");return(n,o)=>(r(),P(q,{class:"VPNavScreenMenuLink",href:n.item.link,target:n.item.target,rel:n.item.rel,onClick:i(e)},{default:p(()=>[H(N(n.item.text),1)]),_:1},8,["href","target","rel","onClick"]))}});const Ri=g(Gi,[["__scopeId","data-v-08b49756"]]),Ui={},Wi={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},Ki=_("path",{d:"M18.9,10.9h-6v-6c0-0.6-0.4-1-1-1s-1,0.4-1,1v6h-6c-0.6,0-1,0.4-1,1s0.4,1,1,1h6v6c0,0.6,0.4,1,1,1s1-0.4,1-1v-6h6c0.6,0,1-0.4,1-1S19.5,10.9,18.9,10.9z"},null,-1),qi=[Ki];function Yi(t,e){return r(),l("svg",Wi,qi)}const Ji=g(Ui,[["render",Yi]]),Xi=y({__name:"VPNavScreenMenuGroupLink",props:{item:{}},setup(t){const e=xe("close-screen");return(n,o)=>(r(),P(q,{class:"VPNavScreenMenuGroupLink",href:n.item.link,target:n.item.target,rel:n.item.rel,onClick:i(e)},{default:p(()=>[H(N(n.item.text),1)]),_:1},8,["href","target","rel","onClick"]))}});const Tt=g(Xi,[["__scopeId","data-v-97083fb3"]]),Qi={class:"VPNavScreenMenuGroupSection"},Zi={key:0,class:"title"},el=y({__name:"VPNavScreenMenuGroupSection",props:{text:{},items:{}},setup(t){return(e,n)=>(r(),l("div",Qi,[e.text?(r(),l("p",Zi,N(e.text),1)):m("",!0),(r(!0),l(C,null,O(e.items,o=>(r(),P(Tt,{key:o.text,item:o},null,8,["item"]))),128))]))}});const tl=g(el,[["__scopeId","data-v-f60dbfa7"]]),nl=["aria-controls","aria-expanded"],ol={class:"button-text"},sl=["id"],al={key:1,class:"group"},rl=y({__name:"VPNavScreenMenuGroup",props:{text:{},items:{}},setup(t){const e=t,n=L(!1),o=V(()=>`NavScreenGroup-${e.text.replace(" ","-").toLowerCase()}`);function s(){n.value=!n.value}return(a,u)=>(r(),l("div",{class:A(["VPNavScreenMenuGroup",{open:n.value}])},[_("button",{class:"button","aria-controls":o.value,"aria-expanded":n.value,onClick:s},[_("span",ol,N(a.text),1),h(Ji,{class:"button-icon"})],8,nl),_("div",{id:o.value,class:"items"},[(r(!0),l(C,null,O(a.items,d=>(r(),l(C,{key:d.text},["link"in d?(r(),l("div",{key:d.text,class:"item"},[h(Tt,{item:d},null,8,["item"])])):(r(),l("div",al,[h(tl,{text:d.text,items:d.items},null,8,["text","items"])]))],64))),128))],8,sl)],2))}});const il=g(rl,[["__scopeId","data-v-10e00a88"]]),ll={key:0,class:"VPNavScreenMenu"},cl=y({__name:"VPNavScreenMenu",setup(t){const{theme:e}=T();return(n,o)=>i(e).nav?(r(),l("nav",ll,[(r(!0),l(C,null,O(i(e).nav,s=>(r(),l(C,{key:s.text},["link"in s?(r(),P(Ri,{key:0,item:s},null,8,["item"])):(r(),P(il,{key:1,text:s.text||"",items:s.items},null,8,["text","items"]))],64))),128))])):m("",!0)}}),ul={key:0,class:"VPNavScreenAppearance"},dl={class:"text"},_l=y({__name:"VPNavScreenAppearance",setup(t){const{site:e,theme:n}=T();return(o,s)=>i(e).appearance?(r(),l("div",ul,[_("p",dl,N(i(n).darkModeSwitchLabel||"Appearance"),1),h(je)])):m("",!0)}});const vl=g(_l,[["__scopeId","data-v-0dc5cf49"]]),pl={class:"list"},fl=y({__name:"VPNavScreenTranslations",setup(t){const{localeLinks:e,currentLang:n}=ce({correspondingLink:!0}),o=L(!1);function s(){o.value=!o.value}return(a,u)=>i(e).length&&i(n).label?(r(),l("div",{key:0,class:A(["VPNavScreenTranslations",{open:o.value}])},[_("button",{class:"title",onClick:s},[h(Vt,{class:"icon lang"}),H(" "+N(i(n).label)+" ",1),h(wt,{class:"icon chevron"})]),_("ul",pl,[(r(!0),l(C,null,O(i(e),d=>(r(),l("li",{key:d.link,class:"item"},[h(q,{class:"link",href:d.link},{default:p(()=>[H(N(d.text),1)]),_:2},1032,["href"])]))),128))])],2)):m("",!0)}});const hl=g(fl,[["__scopeId","data-v-41505286"]]),ml=y({__name:"VPNavScreenSocialLinks",setup(t){const{theme:e}=T();return(n,o)=>i(e).socialLinks?(r(),P(Ue,{key:0,class:"VPNavScreenSocialLinks",links:i(e).socialLinks},null,8,["links"])):m("",!0)}}),gl={class:"container"},yl=y({__name:"VPNavScreen",props:{open:{type:Boolean}},setup(t){const e=L(null);function n(){Lt(e.value,{reserveScrollBarGap:!0})}function o(){Mt()}return(s,a)=>(r(),P(Ie,{name:"fade",onEnter:n,onAfterLeave:o},{default:p(()=>[s.open?(r(),l("div",{key:0,class:"VPNavScreen",ref_key:"screen",ref:e,id:"VPNavScreen"},[_("div",gl,[v(s.$slots,"nav-screen-content-before",{},void 0,!0),h(cl,{class:"menu"}),h(hl,{class:"translations"}),h(vl,{class:"appearance"}),h(ml,{class:"social-links"}),v(s.$slots,"nav-screen-content-after",{},void 0,!0)])],512)):m("",!0)]),_:3}))}});const bl=g(yl,[["__scopeId","data-v-dc785598"]]),$l={class:"VPNav"},kl=y({__name:"VPNav",setup(t){const{isScreenOpen:e,closeScreen:n,toggleScreen:o}=Ma();return fe("close-screen",n),(s,a)=>(r(),l("header",$l,[h(xi,{"is-screen-open":i(e),onToggleScreen:i(o)},{"nav-bar-title-before":p(()=>[v(s.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":p(()=>[v(s.$slots,"nav-bar-title-after",{},void 0,!0)]),"nav-bar-content-before":p(()=>[v(s.$slots,"nav-bar-content-before",{},void 0,!0)]),"nav-bar-content-after":p(()=>[v(s.$slots,"nav-bar-content-after",{},void 0,!0)]),_:3},8,["is-screen-open","onToggleScreen"]),h(bl,{open:i(e)},{"nav-screen-content-before":p(()=>[v(s.$slots,"nav-screen-content-before",{},void 0,!0)]),"nav-screen-content-after":p(()=>[v(s.$slots,"nav-screen-content-after",{},void 0,!0)]),_:3},8,["open"])]))}});const Pl=g(kl,[["__scopeId","data-v-5bdc5df3"]]),wl=t=>(j("data-v-c356ab37"),t=t(),G(),t),Vl=["role","tabindex"],Sl=wl(()=>_("div",{class:"indicator"},null,-1)),Ll=["onKeydown"],Ml={key:1,class:"items"},Tl=y({__name:"VPSidebarItem",props:{item:{},depth:{}},setup(t){const e=t,{collapsed:n,collapsible:o,isLink:s,isActiveLink:a,hasActiveLink:u,hasChildren:d,toggle:c}=Jn(V(()=>e.item)),f=V(()=>d.value?"section":"div"),b=V(()=>s.value?"a":"div"),$=V(()=>d.value?e.depth+2===7?"p":`h${e.depth+2}`:"p"),I=V(()=>s.value?void 0:"button"),S=V(()=>[[`level-${e.depth}`],{collapsible:o.value},{collapsed:n.value},{"is-link":s.value},{"is-active":a.value},{"has-active":u.value}]);function k(w){"key"in w&&w.key!=="Enter"||!e.item.link&&c()}function M(){e.item.link&&c()}return(w,x)=>{const z=Q("VPSidebarItem",!0);return r(),P(X(f.value),{class:A(["VPSidebarItem",S.value])},{default:p(()=>[w.item.text?(r(),l("div",pe({key:0,class:"item",role:I.value},Ut(w.item.items?{click:k,keydown:k}:{},!0),{tabindex:w.item.items&&0}),[Sl,w.item.link?(r(),P(q,{key:0,tag:b.value,class:"link",href:w.item.link},{default:p(()=>[(r(),P(X($.value),{class:"text",innerHTML:w.item.text},null,8,["innerHTML"]))]),_:1},8,["tag","href"])):(r(),P(X($.value),{key:1,class:"text",innerHTML:w.item.text},null,8,["innerHTML"])),w.item.collapsed!=null?(r(),l("div",{key:2,class:"caret",role:"button","aria-label":"toggle section",onClick:M,onKeydown:Wt(M,["enter"]),tabindex:"0"},[h(ze,{class:"caret-icon"})],40,Ll)):m("",!0)],16,Vl)):m("",!0),w.item.items&&w.item.items.length?(r(),l("div",Ml,[w.depth<5?(r(!0),l(C,{key:0},O(w.item.items,D=>(r(),P(z,{key:D.text,item:D,depth:w.depth+1},null,8,["item","depth"]))),128)):m("",!0)])):m("",!0)]),_:1},8,["class"])}}});const Il=g(Tl,[["__scopeId","data-v-c356ab37"]]),It=t=>(j("data-v-b04a928c"),t=t(),G(),t),Nl=It(()=>_("div",{class:"curtain"},null,-1)),Cl={class:"nav",id:"VPSidebarNav","aria-labelledby":"sidebar-aria-label",tabindex:"-1"},Al=It(()=>_("span",{class:"visually-hidden",id:"sidebar-aria-label"}," Sidebar Navigation ",-1)),Bl=y({__name:"VPSidebar",props:{open:{type:Boolean}},setup(t){const e=t,{sidebarGroups:n,hasSidebar:o}=W();let s=L(null);function a(){Lt(s.value,{reserveScrollBarGap:!0})}function u(){Mt()}return Be(async()=>{var d;e.open?(a(),(d=s.value)==null||d.focus()):u()}),(d,c)=>i(o)?(r(),l("aside",{key:0,class:A(["VPSidebar",{open:d.open}]),ref_key:"navEl",ref:s,onClick:c[0]||(c[0]=Kt(()=>{},["stop"]))},[Nl,_("nav",Cl,[Al,v(d.$slots,"sidebar-nav-before",{},void 0,!0),(r(!0),l(C,null,O(i(n),f=>(r(),l("div",{key:f.text,class:"group"},[h(Il,{item:f,depth:0},null,8,["item"])]))),128)),v(d.$slots,"sidebar-nav-after",{},void 0,!0)])],2)):m("",!0)}});const xl=g(Bl,[["__scopeId","data-v-b04a928c"]]),Ol=y({__name:"VPSkipLink",setup(t){const e=Pe(),n=L();U(()=>e.path,()=>n.value.focus());function o({target:s}){const a=document.getElementById(decodeURIComponent(s.hash).slice(1));if(a){const u=()=>{a.removeAttribute("tabindex"),a.removeEventListener("blur",u)};a.setAttribute("tabindex","-1"),a.addEventListener("blur",u),a.focus(),window.scrollTo(0,0)}}return(s,a)=>(r(),l(C,null,[_("span",{ref_key:"backToTop",ref:n,tabindex:"-1"},null,512),_("a",{href:"#VPContent",class:"VPSkipLink visually-hidden",onClick:o}," Skip to content ")],64))}});const Hl=g(Ol,[["__scopeId","data-v-9c8615dd"]]),El=y({__name:"Layout",setup(t){const{isOpen:e,open:n,close:o}=W(),s=Pe();U(()=>s.path,o),Yn(e,o),fe("close-sidebar",o),fe("is-sidebar-open",e);const{frontmatter:a}=T(),u=qt(),d=V(()=>!!u["home-hero-image"]);return fe("hero-image-slot-exists",d),(c,f)=>{const b=Q("Content");return i(a).layout!==!1?(r(),l("div",{key:0,class:A(["Layout",i(a).pageClass])},[v(c.$slots,"layout-top",{},void 0,!0),h(Hl),h(Zt,{class:"backdrop",show:i(e),onClick:i(o)},null,8,["show","onClick"]),i(a).navbar!==!1?(r(),P(Pl,{key:0},{"nav-bar-title-before":p(()=>[v(c.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":p(()=>[v(c.$slots,"nav-bar-title-after",{},void 0,!0)]),"nav-bar-content-before":p(()=>[v(c.$slots,"nav-bar-content-before",{},void 0,!0)]),"nav-bar-content-after":p(()=>[v(c.$slots,"nav-bar-content-after",{},void 0,!0)]),"nav-screen-content-before":p(()=>[v(c.$slots,"nav-screen-content-before",{},void 0,!0)]),"nav-screen-content-after":p(()=>[v(c.$slots,"nav-screen-content-after",{},void 0,!0)]),_:3})):m("",!0),h(La,{open:i(e),onOpenMenu:i(n)},null,8,["open","onOpenMenu"]),h(xl,{open:i(e)},{"sidebar-nav-before":p(()=>[v(c.$slots,"sidebar-nav-before",{},void 0,!0)]),"sidebar-nav-after":p(()=>[v(c.$slots,"sidebar-nav-after",{},void 0,!0)]),_:3},8,["open"]),h(aa,null,{"page-top":p(()=>[v(c.$slots,"page-top",{},void 0,!0)]),"page-bottom":p(()=>[v(c.$slots,"page-bottom",{},void 0,!0)]),"not-found":p(()=>[v(c.$slots,"not-found",{},void 0,!0)]),"home-hero-before":p(()=>[v(c.$slots,"home-hero-before",{},void 0,!0)]),"home-hero-info":p(()=>[v(c.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-image":p(()=>[v(c.$slots,"home-hero-image",{},void 0,!0)]),"home-hero-after":p(()=>[v(c.$slots,"home-hero-after",{},void 0,!0)]),"home-features-before":p(()=>[v(c.$slots,"home-features-before",{},void 0,!0)]),"home-features-after":p(()=>[v(c.$slots,"home-features-after",{},void 0,!0)]),"doc-footer-before":p(()=>[v(c.$slots,"doc-footer-before",{},void 0,!0)]),"doc-before":p(()=>[v(c.$slots,"doc-before",{},void 0,!0)]),"doc-after":p(()=>[v(c.$slots,"doc-after",{},void 0,!0)]),"doc-top":p(()=>[v(c.$slots,"doc-top",{},void 0,!0)]),"doc-bottom":p(()=>[v(c.$slots,"doc-bottom",{},void 0,!0)]),"aside-top":p(()=>[v(c.$slots,"aside-top",{},void 0,!0)]),"aside-bottom":p(()=>[v(c.$slots,"aside-bottom",{},void 0,!0)]),"aside-outline-before":p(()=>[v(c.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":p(()=>[v(c.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":p(()=>[v(c.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":p(()=>[v(c.$slots,"aside-ads-after",{},void 0,!0)]),_:3}),h(ua),v(c.$slots,"layout-bottom",{},void 0,!0)],2)):(r(),P(b,{key:1}))}}});const Dl=g(El,[["__scopeId","data-v-324e8308"]]);const Wl={Layout:Dl,enhanceApp:({app:t})=>{t.component("Badge",Jt)}};function Kl(t,e){const{localeIndex:n}=T();function o(s){var S,k;const a=s.split("."),u=t&&typeof t=="object",d=u&&((k=(S=t.locales)==null?void 0:S[n.value])==null?void 0:k.translations)||null,c=u&&t.translations||null;let f=d,b=c,$=e;const I=a.pop();for(const M of a){let w=null;const x=$==null?void 0:$[M];x&&(w=$=x);const z=b==null?void 0:b[M];z&&(w=b=z);const D=f==null?void 0:f[M];D&&(w=f=D),x||($=w),z||(b=w),D||(f=w)}return(f==null?void 0:f[I])??(b==null?void 0:b[I])??($==null?void 0:$[I])??""}return o}export{Oe as a,T as b,jl as c,Ul as d,Gl as e,Kl as f,re as g,Rl as h,Ze as o,Wl as t,Bn as u,Fl as w}; diff --git a/pr-383/assets/chunks/timeline-definition-491ea63c.903d7e91.js b/pr-383/assets/chunks/timeline-definition-491ea63c.7e8db34e.js similarity index 99% rename from pr-383/assets/chunks/timeline-definition-491ea63c.903d7e91.js rename to pr-383/assets/chunks/timeline-definition-491ea63c.7e8db34e.js index 9613f33d1..3bc50bbd9 100644 --- a/pr-383/assets/chunks/timeline-definition-491ea63c.903d7e91.js +++ b/pr-383/assets/chunks/timeline-definition-491ea63c.7e8db34e.js @@ -1,4 +1,4 @@ -import{aK as bt,aL as vt,z as kt,c as wt,l as I,h as q,t as St,aM as Et,aN as Tt,aO as It}from"../app.34e6398e.js";import{a as nt}from"./arc.acf4fa71.js";import"./framework.be0a7370.js";import"./theme.e11407bf.js";import"./path.53f90ab3.js";var Y=function(){var n=function(x,r,c,h){for(c=c||{},h=x.length;h--;c[x[h]]=r);return c},t=[1,2],e=[1,5],s=[6,9,11,17,18,20,22,23,26,27,28],i=[1,15],o=[1,16],a=[1,17],p=[1,18],y=[1,19],g=[1,23],b=[1,24],m=[1,27],v=[4,6,9,11,17,18,20,22,23,26,27,28],E={trace:function(){},yy:{},symbols_:{error:2,start:3,timeline:4,document:5,EOF:6,directive:7,line:8,SPACE:9,statement:10,NEWLINE:11,openDirective:12,typeDirective:13,closeDirective:14,":":15,argDirective:16,title:17,acc_title:18,acc_title_value:19,acc_descr:20,acc_descr_value:21,acc_descr_multiline_value:22,section:23,period_statement:24,event_statement:25,period:26,event:27,open_directive:28,type_directive:29,arg_directive:30,close_directive:31,$accept:0,$end:1},terminals_:{2:"error",4:"timeline",6:"EOF",9:"SPACE",11:"NEWLINE",15:":",17:"title",18:"acc_title",19:"acc_title_value",20:"acc_descr",21:"acc_descr_value",22:"acc_descr_multiline_value",23:"section",26:"period",27:"event",28:"open_directive",29:"type_directive",30:"arg_directive",31:"close_directive"},productions_:[0,[3,3],[3,2],[5,0],[5,2],[8,2],[8,1],[8,1],[8,1],[7,4],[7,6],[10,1],[10,2],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[24,1],[25,1],[12,1],[13,1],[16,1],[14,1]],performAction:function(r,c,h,d,u,l,M){var f=l.length-1;switch(u){case 1:return l[f-1];case 3:this.$=[];break;case 4:l[f-1].push(l[f]),this.$=l[f-1];break;case 5:case 6:this.$=l[f];break;case 7:case 8:this.$=[];break;case 11:d.getCommonDb().setDiagramTitle(l[f].substr(6)),this.$=l[f].substr(6);break;case 12:this.$=l[f].trim(),d.getCommonDb().setAccTitle(this.$);break;case 13:case 14:this.$=l[f].trim(),d.getCommonDb().setAccDescription(this.$);break;case 15:d.addSection(l[f].substr(8)),this.$=l[f].substr(8);break;case 19:d.addTask(l[f],0,""),this.$=l[f];break;case 20:d.addEvent(l[f].substr(2)),this.$=l[f];break;case 21:d.parseDirective("%%{","open_directive");break;case 22:d.parseDirective(l[f],"type_directive");break;case 23:l[f]=l[f].trim().replace(/'/g,'"'),d.parseDirective(l[f],"arg_directive");break;case 24:d.parseDirective("}%%","close_directive","timeline");break}},table:[{3:1,4:t,7:3,12:4,28:e},{1:[3]},n(s,[2,3],{5:6}),{3:7,4:t,7:3,12:4,28:e},{13:8,29:[1,9]},{29:[2,21]},{6:[1,10],7:22,8:11,9:[1,12],10:13,11:[1,14],12:4,17:i,18:o,20:a,22:p,23:y,24:20,25:21,26:g,27:b,28:e},{1:[2,2]},{14:25,15:[1,26],31:m},n([15,31],[2,22]),n(s,[2,8],{1:[2,1]}),n(s,[2,4]),{7:22,10:28,12:4,17:i,18:o,20:a,22:p,23:y,24:20,25:21,26:g,27:b,28:e},n(s,[2,6]),n(s,[2,7]),n(s,[2,11]),{19:[1,29]},{21:[1,30]},n(s,[2,14]),n(s,[2,15]),n(s,[2,16]),n(s,[2,17]),n(s,[2,18]),n(s,[2,19]),n(s,[2,20]),{11:[1,31]},{16:32,30:[1,33]},{11:[2,24]},n(s,[2,5]),n(s,[2,12]),n(s,[2,13]),n(v,[2,9]),{14:34,31:m},{31:[2,23]},{11:[1,35]},n(v,[2,10])],defaultActions:{5:[2,21],7:[2,2],27:[2,24],33:[2,23]},parseError:function(r,c){if(c.recoverable)this.trace(r);else{var h=new Error(r);throw h.hash=c,h}},parse:function(r){var c=this,h=[0],d=[],u=[null],l=[],M=this.table,f="",C=0,K=0,z=2,w=1,L=l.slice.call(arguments,1),_=Object.create(this.lexer),$={yy:{}};for(var A in this.yy)Object.prototype.hasOwnProperty.call(this.yy,A)&&($.yy[A]=this.yy[A]);_.setInput(r,$.yy),$.yy.lexer=_,$.yy.parser=this,typeof _.yylloc>"u"&&(_.yylloc={});var O=_.yylloc;l.push(O);var J=_.options&&_.options.ranges;typeof $.yy.parseError=="function"?this.parseError=$.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function _t(){var H;return H=d.pop()||_.lex()||w,typeof H!="number"&&(H instanceof Array&&(d=H,H=d.pop()),H=c.symbols_[H]||H),H}for(var T,V,N,Q,F={},j,P,et,G;;){if(V=h[h.length-1],this.defaultActions[V]?N=this.defaultActions[V]:((T===null||typeof T>"u")&&(T=_t()),N=M[V]&&M[V][T]),typeof N>"u"||!N.length||!N[0]){var X="";G=[];for(j in M[V])this.terminals_[j]&&j>z&&G.push("'"+this.terminals_[j]+"'");_.showPosition?X="Parse error on line "+(C+1)+`: +import{aK as bt,aL as vt,z as kt,c as wt,l as I,h as q,t as St,aM as Et,aN as Tt,aO as It}from"../app.3c4fe3d0.js";import{a as nt}from"./arc.60bf6bcc.js";import"./framework.be0a7370.js";import"./theme.71fa6e36.js";import"./path.53f90ab3.js";var Y=function(){var n=function(x,r,c,h){for(c=c||{},h=x.length;h--;c[x[h]]=r);return c},t=[1,2],e=[1,5],s=[6,9,11,17,18,20,22,23,26,27,28],i=[1,15],o=[1,16],a=[1,17],p=[1,18],y=[1,19],g=[1,23],b=[1,24],m=[1,27],v=[4,6,9,11,17,18,20,22,23,26,27,28],E={trace:function(){},yy:{},symbols_:{error:2,start:3,timeline:4,document:5,EOF:6,directive:7,line:8,SPACE:9,statement:10,NEWLINE:11,openDirective:12,typeDirective:13,closeDirective:14,":":15,argDirective:16,title:17,acc_title:18,acc_title_value:19,acc_descr:20,acc_descr_value:21,acc_descr_multiline_value:22,section:23,period_statement:24,event_statement:25,period:26,event:27,open_directive:28,type_directive:29,arg_directive:30,close_directive:31,$accept:0,$end:1},terminals_:{2:"error",4:"timeline",6:"EOF",9:"SPACE",11:"NEWLINE",15:":",17:"title",18:"acc_title",19:"acc_title_value",20:"acc_descr",21:"acc_descr_value",22:"acc_descr_multiline_value",23:"section",26:"period",27:"event",28:"open_directive",29:"type_directive",30:"arg_directive",31:"close_directive"},productions_:[0,[3,3],[3,2],[5,0],[5,2],[8,2],[8,1],[8,1],[8,1],[7,4],[7,6],[10,1],[10,2],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[24,1],[25,1],[12,1],[13,1],[16,1],[14,1]],performAction:function(r,c,h,d,u,l,M){var f=l.length-1;switch(u){case 1:return l[f-1];case 3:this.$=[];break;case 4:l[f-1].push(l[f]),this.$=l[f-1];break;case 5:case 6:this.$=l[f];break;case 7:case 8:this.$=[];break;case 11:d.getCommonDb().setDiagramTitle(l[f].substr(6)),this.$=l[f].substr(6);break;case 12:this.$=l[f].trim(),d.getCommonDb().setAccTitle(this.$);break;case 13:case 14:this.$=l[f].trim(),d.getCommonDb().setAccDescription(this.$);break;case 15:d.addSection(l[f].substr(8)),this.$=l[f].substr(8);break;case 19:d.addTask(l[f],0,""),this.$=l[f];break;case 20:d.addEvent(l[f].substr(2)),this.$=l[f];break;case 21:d.parseDirective("%%{","open_directive");break;case 22:d.parseDirective(l[f],"type_directive");break;case 23:l[f]=l[f].trim().replace(/'/g,'"'),d.parseDirective(l[f],"arg_directive");break;case 24:d.parseDirective("}%%","close_directive","timeline");break}},table:[{3:1,4:t,7:3,12:4,28:e},{1:[3]},n(s,[2,3],{5:6}),{3:7,4:t,7:3,12:4,28:e},{13:8,29:[1,9]},{29:[2,21]},{6:[1,10],7:22,8:11,9:[1,12],10:13,11:[1,14],12:4,17:i,18:o,20:a,22:p,23:y,24:20,25:21,26:g,27:b,28:e},{1:[2,2]},{14:25,15:[1,26],31:m},n([15,31],[2,22]),n(s,[2,8],{1:[2,1]}),n(s,[2,4]),{7:22,10:28,12:4,17:i,18:o,20:a,22:p,23:y,24:20,25:21,26:g,27:b,28:e},n(s,[2,6]),n(s,[2,7]),n(s,[2,11]),{19:[1,29]},{21:[1,30]},n(s,[2,14]),n(s,[2,15]),n(s,[2,16]),n(s,[2,17]),n(s,[2,18]),n(s,[2,19]),n(s,[2,20]),{11:[1,31]},{16:32,30:[1,33]},{11:[2,24]},n(s,[2,5]),n(s,[2,12]),n(s,[2,13]),n(v,[2,9]),{14:34,31:m},{31:[2,23]},{11:[1,35]},n(v,[2,10])],defaultActions:{5:[2,21],7:[2,2],27:[2,24],33:[2,23]},parseError:function(r,c){if(c.recoverable)this.trace(r);else{var h=new Error(r);throw h.hash=c,h}},parse:function(r){var c=this,h=[0],d=[],u=[null],l=[],M=this.table,f="",C=0,K=0,z=2,w=1,L=l.slice.call(arguments,1),_=Object.create(this.lexer),$={yy:{}};for(var A in this.yy)Object.prototype.hasOwnProperty.call(this.yy,A)&&($.yy[A]=this.yy[A]);_.setInput(r,$.yy),$.yy.lexer=_,$.yy.parser=this,typeof _.yylloc>"u"&&(_.yylloc={});var O=_.yylloc;l.push(O);var J=_.options&&_.options.ranges;typeof $.yy.parseError=="function"?this.parseError=$.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function _t(){var H;return H=d.pop()||_.lex()||w,typeof H!="number"&&(H instanceof Array&&(d=H,H=d.pop()),H=c.symbols_[H]||H),H}for(var T,V,N,Q,F={},j,P,et,G;;){if(V=h[h.length-1],this.defaultActions[V]?N=this.defaultActions[V]:((T===null||typeof T>"u")&&(T=_t()),N=M[V]&&M[V][T]),typeof N>"u"||!N.length||!N[0]){var X="";G=[];for(j in M[V])this.terminals_[j]&&j>z&&G.push("'"+this.terminals_[j]+"'");_.showPosition?X="Parse error on line "+(C+1)+`: `+_.showPosition()+` Expecting `+G.join(", ")+", got '"+(this.terminals_[T]||T)+"'":X="Parse error on line "+(C+1)+": Unexpected "+(T==w?"end of input":"'"+(this.terminals_[T]||T)+"'"),this.parseError(X,{text:_.match,token:this.terminals_[T]||T,line:_.yylineno,loc:O,expected:G})}if(N[0]instanceof Array&&N.length>1)throw new Error("Parse Error: multiple actions possible at state: "+V+", token: "+T);switch(N[0]){case 1:h.push(T),u.push(_.yytext),l.push(_.yylloc),h.push(N[1]),T=null,K=_.yyleng,f=_.yytext,C=_.yylineno,O=_.yylloc;break;case 2:if(P=this.productions_[N[1]][1],F.$=u[u.length-P],F._$={first_line:l[l.length-(P||1)].first_line,last_line:l[l.length-1].last_line,first_column:l[l.length-(P||1)].first_column,last_column:l[l.length-1].last_column},J&&(F._$.range=[l[l.length-(P||1)].range[0],l[l.length-1].range[1]]),Q=this.performAction.apply(F,[f,K,C,$.yy,N[1],u,l].concat(L)),typeof Q<"u")return Q;P&&(h=h.slice(0,-1*P*2),u=u.slice(0,-1*P),l=l.slice(0,-1*P)),h.push(this.productions_[N[1]][0]),u.push(F.$),l.push(F._$),et=M[h[h.length-2]][h[h.length-1]],h.push(et);break;case 3:return!0}}return!0}},S=function(){var x={EOF:1,parseError:function(c,h){if(this.yy.parser)this.yy.parser.parseError(c,h);else throw new Error(c)},setInput:function(r,c){return this.yy=c||this.yy||{},this._input=r,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var r=this._input[0];this.yytext+=r,this.yyleng++,this.offset++,this.match+=r,this.matched+=r;var c=r.match(/(?:\r\n?|\n).*/g);return c?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),r},unput:function(r){var c=r.length,h=r.split(/(?:\r\n?|\n)/g);this._input=r+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-c),this.offset-=c;var d=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),h.length-1&&(this.yylineno-=h.length-1);var u=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:h?(h.length===d.length?this.yylloc.first_column:0)+d[d.length-h.length].length-h[0].length:this.yylloc.first_column-c},this.options.ranges&&(this.yylloc.range=[u[0],u[0]+this.yyleng-c]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(r){this.unput(this.match.slice(r))},pastInput:function(){var r=this.matched.substr(0,this.matched.length-this.match.length);return(r.length>20?"...":"")+r.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var r=this.match;return r.length<20&&(r+=this._input.substr(0,20-r.length)),(r.substr(0,20)+(r.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var r=this.pastInput(),c=new Array(r.length+1).join("-");return r+this.upcomingInput()+` diff --git a/pr-383/assets/guides_block-times.md.1fe2e118.js b/pr-383/assets/guides_block-times.md.17724d2e.js similarity index 98% rename from pr-383/assets/guides_block-times.md.1fe2e118.js rename to pr-383/assets/guides_block-times.md.17724d2e.js index 40581aed4..758242a9b 100644 --- a/pr-383/assets/guides_block-times.md.1fe2e118.js +++ b/pr-383/assets/guides_block-times.md.17724d2e.js @@ -1,3 +1,3 @@ -import{_ as s,o as e,c as a,X as o}from"./chunks/framework.be0a7370.js";const u=JSON.parse('{"title":"How to change speed of block production","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"How to change speed of block production | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/block-times.md","filePath":"guides/block-times.md","lastUpdated":1717671233000}'),n={name:"guides/block-times.md"},l=o(`

How to change speed of block production โ€‹

If you have gone through both the GM world and the Full and sequencer node rollup setup already, you're now ready to experiment with faster block times.

In your gmd start [args...] command, you will need to add a flag and then the argument for block time.

The flag is:

bash
--rollkit.block_time 1s

Where 1s can be adjusted to the speed of your choosing.

Here is an example:

bash
# start the chain
+import{_ as s,o as e,c as a,X as o}from"./chunks/framework.be0a7370.js";const u=JSON.parse('{"title":"How to change speed of block production","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"How to change speed of block production | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/block-times.md","filePath":"guides/block-times.md","lastUpdated":1717768398000}'),n={name:"guides/block-times.md"},l=o(`

How to change speed of block production โ€‹

If you have gone through both the GM world and the Full and sequencer node rollup setup already, you're now ready to experiment with faster block times.

In your gmd start [args...] command, you will need to add a flag and then the argument for block time.

The flag is:

bash
--rollkit.block_time 1s

Where 1s can be adjusted to the speed of your choosing.

Here is an example:

bash
# start the chain
 gmd start [existing flags...] 
 gmd start [existing flags...] --rollkit.block_time 1s 

In the above example, we've changed it to one second blocks. Alternatively, you could slow your rollup down to 30 seconds:

bash
--rollkit.block_time 30s

Or speed it up even more, to sub-second block times (100 milliseconds):

bash
--rollkit.block_time 0.1ms
`,12),t=[l];function p(c,r,i,d,h,C){return e(),a("div",null,t)}const m=s(n,[["render",p]]);export{u as __pageData,m as default}; diff --git a/pr-383/assets/guides_block-times.md.1fe2e118.lean.js b/pr-383/assets/guides_block-times.md.17724d2e.lean.js similarity index 89% rename from pr-383/assets/guides_block-times.md.1fe2e118.lean.js rename to pr-383/assets/guides_block-times.md.17724d2e.lean.js index 5ce0a9e2e..71ca99df1 100644 --- a/pr-383/assets/guides_block-times.md.1fe2e118.lean.js +++ b/pr-383/assets/guides_block-times.md.17724d2e.lean.js @@ -1 +1 @@ -import{_ as s,o as e,c as a,X as o}from"./chunks/framework.be0a7370.js";const u=JSON.parse('{"title":"How to change speed of block production","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"How to change speed of block production | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/block-times.md","filePath":"guides/block-times.md","lastUpdated":1717671233000}'),n={name:"guides/block-times.md"},l=o("",12),t=[l];function p(c,r,i,d,h,C){return e(),a("div",null,t)}const m=s(n,[["render",p]]);export{u as __pageData,m as default}; +import{_ as s,o as e,c as a,X as o}from"./chunks/framework.be0a7370.js";const u=JSON.parse('{"title":"How to change speed of block production","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"How to change speed of block production | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/block-times.md","filePath":"guides/block-times.md","lastUpdated":1717768398000}'),n={name:"guides/block-times.md"},l=o("",12),t=[l];function p(c,r,i,d,h,C){return e(),a("div",null,t)}const m=s(n,[["render",p]]);export{u as __pageData,m as default}; diff --git a/pr-383/assets/guides_connect-local-da.md.7a20b17d.js b/pr-383/assets/guides_connect-local-da.md.7a20b17d.js new file mode 100644 index 000000000..f5404aa1b --- /dev/null +++ b/pr-383/assets/guides_connect-local-da.md.7a20b17d.js @@ -0,0 +1,3 @@ +import{_ as o,o as a,c as t,X as l}from"./chunks/framework.be0a7370.js";const y=JSON.parse('{"title":"How to Connect a Rollup to a Local DA Network","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"How to Connect a Rollup to a Local DA Network | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/connect-local-da.md","filePath":"guides/connect-local-da.md","lastUpdated":1717768398000}'),e={name:"guides/connect-local-da.md"},n=l(`

How to Connect a Rollup to a Local DA Network โ€‹

This guide provides a quick and straightforward method to start a local Data Availability (DA) network and configure your rollup to post data to it.

Setting Up a Local DA Network โ€‹

To set up a local DA network node on your machine, run the following script to install and start the local DA node:

bash
curl -sSL https://rollkit.dev/install-local-da.sh | bash -s {{constants.localDALatestTag}}

This script will build and run the node, which will then listen on port 7980.

Configuring Your Rollup to Connect to the Local DA Network โ€‹

To connect your rollup to the local DA network, you need to pass the --rollkit.da_address flag with the local DA node address.

Run Your Rollup: โ€‹

Start your rollup node with the following command, ensuring to include the DA address flag:

bash
rollkit start \\
+    --rollkit.da_address http://localhost:7980 \\
+    <other-flags>

Summary โ€‹

By following these steps, you will set up a local DA network node and configure your rollup to post data to it. This setup is useful for testing and development in a controlled environment.

`,13),s=[n];function r(c,p,i,d,u,h){return a(),t("div",null,s)}const D=o(e,[["render",r]]);export{y as __pageData,D as default}; diff --git a/pr-383/assets/guides_connect-local-da.md.7a20b17d.lean.js b/pr-383/assets/guides_connect-local-da.md.7a20b17d.lean.js new file mode 100644 index 000000000..0e2b876e1 --- /dev/null +++ b/pr-383/assets/guides_connect-local-da.md.7a20b17d.lean.js @@ -0,0 +1 @@ +import{_ as o,o as a,c as t,X as l}from"./chunks/framework.be0a7370.js";const y=JSON.parse('{"title":"How to Connect a Rollup to a Local DA Network","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"How to Connect a Rollup to a Local DA Network | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/connect-local-da.md","filePath":"guides/connect-local-da.md","lastUpdated":1717768398000}'),e={name:"guides/connect-local-da.md"},n=l("",13),s=[n];function r(c,p,i,d,u,h){return a(),t("div",null,s)}const D=o(e,[["render",r]]);export{y as __pageData,D as default}; diff --git a/pr-383/assets/guides_create-genesis.md.d2739937.js b/pr-383/assets/guides_create-genesis.md.d2739937.js new file mode 100644 index 000000000..6257fd69a --- /dev/null +++ b/pr-383/assets/guides_create-genesis.md.d2739937.js @@ -0,0 +1,10 @@ +import{_ as s,o as a,c as n,X as e}from"./chunks/framework.be0a7370.js";const D=JSON.parse('{"title":"How to Create a Genesis for Your Rollup","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"How to Create a Genesis for Your Rollup | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/create-genesis.md","filePath":"guides/create-genesis.md","lastUpdated":1717768398000}'),o={name:"guides/create-genesis.md"},l=e(`

How to Create a Genesis for Your Rollup โ€‹

This guide will walk you through the process of setting up a genesis for your rollup. Follow the steps below to initialize your rollup chain, add a genesis account, and start the chain.

1. Setting Variables โ€‹

First, set the necessary variables for your chain, here is an example:

sh
VALIDATOR_NAME=validator1
+CHAIN_ID=rollup-chain
+KEY_NAME=rollup-key
+CHAINFLAG="--chain-id \${CHAIN_ID}"
+TOKEN_AMOUNT="10000000000000000000000000stake"
+STAKING_AMOUNT="1000000000stake"

2. Ensuring rollkit.toml is Present and Building Entrypoint โ€‹

Ensure that rollkit.toml is present in the root of your rollup directory (if not, follow a Guide to set it up) and run the following command to (re)generate an entrypoint binary out of the code:

sh
rollkit rebuild

This creates an entrypoint binary in the root of your rollup directory. which is used to run all the operations on the rollup chain.

Ensure that chain configuration directory is set correctly in the rollkit.toml file, if you doubt it, you can remove the rollkit.toml file and run the following command to generate a new one:

sh
rollkit toml init

3. Resetting Existing Genesis/Chain Data โ€‹

Reset any existing genesis or chain data:

sh
rollkit tendermint unsafe-reset-all

4. Initializing the Validator โ€‹

Initialize the validator with the chain ID you set:

sh
rollkit init $VALIDATOR_NAME --chain-id $CHAIN_ID

5. Adding a Key to Keyring Backend โ€‹

Add a key to the keyring-backend:

sh
rollkit keys add $KEY_NAME --keyring-backend test

6. Adding a Genesis Account โ€‹

Add a genesis account with the specified token amount:

sh
rollkit genesis add-genesis-account $KEY_NAME $TOKEN_AMOUNT --keyring-backend test

7. Setting the Staking Amount in the Genesis Transaction โ€‹

Set the staking amount in the genesis transaction:

sh
rollkit genesis gentx $KEY_NAME $STAKING_AMOUNT --chain-id $CHAIN_ID --keyring-backend test

8. Collecting Genesis Transactions โ€‹

Collect the genesis transactions:

sh
rollkit genesis collect-gentxs

9. Configuring the Genesis File โ€‹

Copy the centralized sequencer address into genesis.json:

sh
ADDRESS=$(jq -r '.address' ~/.rollup/config/priv_validator_key.json)
+PUB_KEY=$(jq -r '.pub_key' ~/.rollup/config/priv_validator_key.json)
+jq --argjson pubKey "$PUB_KEY" '.consensus["validators"]=[{"address": "'$ADDRESS'", "pub_key": $pubKey, "power": "1000", "name": "Rollkit Sequencer"}]' ~/.rollup/config/genesis.json > temp.json && mv temp.json ~/.rollup/config/genesis.json

10. Creating a Restart Script โ€‹

Create a restart-rollup.sh file to restart the chain later, notice the rollkit.da_address flag which is the address of the data availability node, for other DA layers it will different set of flags (in case of Celestia check out the tutorial here):

sh
[ -f restart-rollup.sh ] && rm restart-rollup.sh
+
+echo "rollkit start --rollkit.aggregator --rpc.laddr tcp://127.0.0.1:36657 --grpc.address 127.0.0.1:9290 --p2p.laddr \\"0.0.0.0:36656\\" --minimum-gas-prices=\\"0.025stake\\" --rollkit.da_address \\"http://localhost:7980\\"" >> restart-rollup.sh

11. Starting the Chain โ€‹

Finally, start the chain with the following command:

sh
rollkit start --rollkit.aggregator --rpc.laddr tcp://127.0.0.1:36657 --grpc.address 127.0.0.1:9290 --p2p.laddr "0.0.0.0:36656" --minimum-gas-prices="0.025stake" --rollkit.da_address "http://localhost:7980"

Summary โ€‹

By following these steps, you will set up the genesis for your rollup, initialize the validator, add a genesis account, and start the chain on a local data availability network (DA). This guide provides a basic framework for configuring and starting your rollup using the Rollkit CLI. Make sure rollkit.toml is present in the root of your rollup directory and use the rollkit command for all operations.

`,40),t=[l];function p(r,i,c,y,C,d){return a(),n("div",null,t)}const u=s(o,[["render",p]]);export{D as __pageData,u as default}; diff --git a/pr-383/assets/guides_create-genesis.md.d2739937.lean.js b/pr-383/assets/guides_create-genesis.md.d2739937.lean.js new file mode 100644 index 000000000..22e847c8b --- /dev/null +++ b/pr-383/assets/guides_create-genesis.md.d2739937.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as n,X as e}from"./chunks/framework.be0a7370.js";const D=JSON.parse('{"title":"How to Create a Genesis for Your Rollup","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"How to Create a Genesis for Your Rollup | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/create-genesis.md","filePath":"guides/create-genesis.md","lastUpdated":1717768398000}'),o={name:"guides/create-genesis.md"},l=e("",40),t=[l];function p(r,i,c,y,C,d){return a(),n("div",null,t)}const u=s(o,[["render",p]]);export{D as __pageData,u as default}; diff --git a/pr-383/assets/guides_cw-orch.md.e511a14b.js b/pr-383/assets/guides_cw-orch.md.ff556bd1.js similarity index 99% rename from pr-383/assets/guides_cw-orch.md.e511a14b.js rename to pr-383/assets/guides_cw-orch.md.ff556bd1.js index cdec284de..2648c1d8f 100644 --- a/pr-383/assets/guides_cw-orch.md.e511a14b.js +++ b/pr-383/assets/guides_cw-orch.md.ff556bd1.js @@ -1,4 +1,4 @@ -import{_ as s,o as a,c as n,X as o}from"./chunks/framework.be0a7370.js";const A=JSON.parse('{"title":"Speed up your development with cw-orchestrator","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Speed up your development with cw-orchestrator | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/cw-orch.md","filePath":"guides/cw-orch.md","lastUpdated":1717671233000}'),e={name:"guides/cw-orch.md"},l=o(`

Speed up your development with cw-orchestrator โ€‹

Introduction โ€‹

cw-orchestrator is the most advanced scripting, testing, and deployment framework for CosmWasm smart-contracts. It makes it easy to write cross-environment compatible code for cw-multi-test, Test Tube, Starship (alpha), and live networks, significantly reducing code duplication and test-writing time.

Get ready to change the way you interact with contracts and simplify you smart-contracts journey. The following steps will allow you to integrate cw-orch and write clean code such as:

rust
counter.upload()?;
+import{_ as s,o as a,c as n,X as o}from"./chunks/framework.be0a7370.js";const A=JSON.parse('{"title":"Speed up your development with cw-orchestrator","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Speed up your development with cw-orchestrator | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/cw-orch.md","filePath":"guides/cw-orch.md","lastUpdated":1717768398000}'),e={name:"guides/cw-orch.md"},l=o(`

Speed up your development with cw-orchestrator โ€‹

Introduction โ€‹

cw-orchestrator is the most advanced scripting, testing, and deployment framework for CosmWasm smart-contracts. It makes it easy to write cross-environment compatible code for cw-multi-test, Test Tube, Starship (alpha), and live networks, significantly reducing code duplication and test-writing time.

Get ready to change the way you interact with contracts and simplify you smart-contracts journey. The following steps will allow you to integrate cw-orch and write clean code such as:

rust
counter.upload()?;
 counter.instantiate(&InstantiateMsg { count: 0 }, None, None)?;
 counter.increment()?;
 let count = counter.get_count()?;
diff --git a/pr-383/assets/guides_cw-orch.md.e511a14b.lean.js b/pr-383/assets/guides_cw-orch.md.ff556bd1.lean.js
similarity index 89%
rename from pr-383/assets/guides_cw-orch.md.e511a14b.lean.js
rename to pr-383/assets/guides_cw-orch.md.ff556bd1.lean.js
index b39e5179d..8523e3388 100644
--- a/pr-383/assets/guides_cw-orch.md.e511a14b.lean.js
+++ b/pr-383/assets/guides_cw-orch.md.ff556bd1.lean.js
@@ -1 +1 @@
-import{_ as s,o as a,c as n,X as o}from"./chunks/framework.be0a7370.js";const A=JSON.parse('{"title":"Speed up your development with cw-orchestrator","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Speed up your development with cw-orchestrator | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/cw-orch.md","filePath":"guides/cw-orch.md","lastUpdated":1717671233000}'),e={name:"guides/cw-orch.md"},l=o("",58),t=[l];function p(c,r,y,i,F,D){return a(),n("div",null,t)}const d=s(e,[["render",p]]);export{A as __pageData,d as default};
+import{_ as s,o as a,c as n,X as o}from"./chunks/framework.be0a7370.js";const A=JSON.parse('{"title":"Speed up your development with cw-orchestrator","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Speed up your development with cw-orchestrator | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/cw-orch.md","filePath":"guides/cw-orch.md","lastUpdated":1717768398000}'),e={name:"guides/cw-orch.md"},l=o("",58),t=[l];function p(c,r,y,i,F,D){return a(),n("div",null,t)}const d=s(e,[["render",p]]);export{A as __pageData,d as default};
diff --git a/pr-383/assets/guides_full-and-sequencer-node.md.d80f1b45.js b/pr-383/assets/guides_full-and-sequencer-node.md.845c9497.js
similarity index 99%
rename from pr-383/assets/guides_full-and-sequencer-node.md.d80f1b45.js
rename to pr-383/assets/guides_full-and-sequencer-node.md.845c9497.js
index 8269a5888..952344b8b 100644
--- a/pr-383/assets/guides_full-and-sequencer-node.md.d80f1b45.js
+++ b/pr-383/assets/guides_full-and-sequencer-node.md.845c9497.js
@@ -1,4 +1,4 @@
-import{_ as s,o as a,c as n,X as e}from"./chunks/framework.be0a7370.js";const A=JSON.parse('{"title":"Full and sequencer node rollup setup","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Full and sequencer node rollup setup | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/full-and-sequencer-node.md","filePath":"guides/full-and-sequencer-node.md","lastUpdated":1717671233000}'),l={name:"guides/full-and-sequencer-node.md"},o=e(`

Full and sequencer node rollup setup โ€‹

This guide will cover how to set up the GM world rollup example as a multi-node network using a full and sequencer node.

About โ€‹

This guide is using a feature released in v0.10.2 that uses go-header, which uses libp2p that syncs blocks over a peer-to-peer (p2p) network.

This is the same way that celestia-node syncs blocks over p2p.

Prerequisites โ€‹

First, you'll need to complete the GM world tutorial.

In this demo, we'll be using the local-celestia-devnet setup used in part 1.

Getting started โ€‹

For running a full node, you will need to update DA_HEIGHT and P2P_ID manually. You can retrieve namespace and height from your terminal output from when you ran the init-local.sh script.

They will be printed before your chain starts:

txt
______         _  _  _     _  _
+import{_ as s,o as a,c as n,X as e}from"./chunks/framework.be0a7370.js";const A=JSON.parse('{"title":"Full and sequencer node rollup setup","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Full and sequencer node rollup setup | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/full-and-sequencer-node.md","filePath":"guides/full-and-sequencer-node.md","lastUpdated":1717768398000}'),l={name:"guides/full-and-sequencer-node.md"},o=e(`

Full and sequencer node rollup setup โ€‹

This guide will cover how to set up the GM world rollup example as a multi-node network using a full and sequencer node.

About โ€‹

This guide is using a feature released in v0.10.2 that uses go-header, which uses libp2p that syncs blocks over a peer-to-peer (p2p) network.

This is the same way that celestia-node syncs blocks over p2p.

Prerequisites โ€‹

First, you'll need to complete the GM world tutorial.

In this demo, we'll be using the local-celestia-devnet setup used in part 1.

Getting started โ€‹

For running a full node, you will need to update DA_HEIGHT and P2P_ID manually. You can retrieve namespace and height from your terminal output from when you ran the init-local.sh script.

They will be printed before your chain starts:

txt
______         _  _  _     _  _
 | ___ \\       | || || |   (_)| |
 | |_/ /  ___  | || || | __ _ | |_
 |    /  / _ \\ | || || |/ /| || __|
diff --git a/pr-383/assets/guides_full-and-sequencer-node.md.d80f1b45.lean.js b/pr-383/assets/guides_full-and-sequencer-node.md.845c9497.lean.js
similarity index 89%
rename from pr-383/assets/guides_full-and-sequencer-node.md.d80f1b45.lean.js
rename to pr-383/assets/guides_full-and-sequencer-node.md.845c9497.lean.js
index 1beed9361..99ba5e848 100644
--- a/pr-383/assets/guides_full-and-sequencer-node.md.d80f1b45.lean.js
+++ b/pr-383/assets/guides_full-and-sequencer-node.md.845c9497.lean.js
@@ -1 +1 @@
-import{_ as s,o as a,c as n,X as e}from"./chunks/framework.be0a7370.js";const A=JSON.parse('{"title":"Full and sequencer node rollup setup","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Full and sequencer node rollup setup | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/full-and-sequencer-node.md","filePath":"guides/full-and-sequencer-node.md","lastUpdated":1717671233000}'),l={name:"guides/full-and-sequencer-node.md"},o=e("",30),p=[o];function t(r,c,C,i,y,d){return a(),n("div",null,p)}const u=s(l,[["render",t]]);export{A as __pageData,u as default};
+import{_ as s,o as a,c as n,X as e}from"./chunks/framework.be0a7370.js";const A=JSON.parse('{"title":"Full and sequencer node rollup setup","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Full and sequencer node rollup setup | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/full-and-sequencer-node.md","filePath":"guides/full-and-sequencer-node.md","lastUpdated":1717768398000}'),l={name:"guides/full-and-sequencer-node.md"},o=e("",30),p=[o];function t(r,c,C,i,y,d){return a(),n("div",null,p)}const u=s(l,[["render",t]]);export{A as __pageData,u as default};
diff --git a/pr-383/assets/guides_gas-price.md.6941c255.js b/pr-383/assets/guides_gas-price.md.c97936cd.js
similarity index 97%
rename from pr-383/assets/guides_gas-price.md.6941c255.js
rename to pr-383/assets/guides_gas-price.md.c97936cd.js
index c02e0f933..6ce71cb10 100644
--- a/pr-383/assets/guides_gas-price.md.6941c255.js
+++ b/pr-383/assets/guides_gas-price.md.c97936cd.js
@@ -1 +1 @@
-import{_ as e,o as a,c as s,X as t}from"./chunks/framework.be0a7370.js";const _=JSON.parse('{"title":"How to configure gas price","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"How to configure gas price | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/gas-price.md","filePath":"guides/gas-price.md","lastUpdated":1717671233000}'),o={name:"guides/gas-price.md"},n=t('

How to configure gas price โ€‹

In most cases, the gas price can be left to the defaults, which ensures that the price is greater than the minimum gas price accepted by the core node.

The gas price can also be configured manually with the flag --rollkit.da_gas_price:

bash
gmd start --rollkit.da_gas_price=0.1 [existing flags...]

This configures the rollup to always use the fixed gas price of 0.1utia/gas.

When running a rollup against a live network, the gas price may see occasional spikes during periods of high mempool congestion.

To avoid such transient blob submission failures, the flag --rollkit.da_gas_multiplier may be used:

bash
gmd start --rollkit.da_gas_price=0.1 --rollkit.da_gas_multiplier=1.2 [...]

This configures the rollup to keep increasing the gas price by a factor of 1.2x of the previous price until the transaction is accepted by the core node.

When the blob submission transaction eventually succeeds, the gas price will gradually return to the default, decreasing by the same factor.

The gas multiplier will only be used if the gas price has been manually configured.

',11),i=[n];function l(c,r,p,g,d,h){return a(),s("div",null,i)}const f=e(o,[["render",l]]);export{_ as __pageData,f as default}; +import{_ as e,o as a,c as s,X as t}from"./chunks/framework.be0a7370.js";const _=JSON.parse('{"title":"How to configure gas price","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"How to configure gas price | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/gas-price.md","filePath":"guides/gas-price.md","lastUpdated":1717768398000}'),o={name:"guides/gas-price.md"},n=t('

How to configure gas price โ€‹

In most cases, the gas price can be left to the defaults, which ensures that the price is greater than the minimum gas price accepted by the core node.

The gas price can also be configured manually with the flag --rollkit.da_gas_price:

bash
gmd start --rollkit.da_gas_price=0.1 [existing flags...]

This configures the rollup to always use the fixed gas price of 0.1utia/gas.

When running a rollup against a live network, the gas price may see occasional spikes during periods of high mempool congestion.

To avoid such transient blob submission failures, the flag --rollkit.da_gas_multiplier may be used:

bash
gmd start --rollkit.da_gas_price=0.1 --rollkit.da_gas_multiplier=1.2 [...]

This configures the rollup to keep increasing the gas price by a factor of 1.2x of the previous price until the transaction is accepted by the core node.

When the blob submission transaction eventually succeeds, the gas price will gradually return to the default, decreasing by the same factor.

The gas multiplier will only be used if the gas price has been manually configured.

',11),i=[n];function l(c,r,p,g,d,h){return a(),s("div",null,i)}const f=e(o,[["render",l]]);export{_ as __pageData,f as default}; diff --git a/pr-383/assets/guides_gas-price.md.6941c255.lean.js b/pr-383/assets/guides_gas-price.md.c97936cd.lean.js similarity index 88% rename from pr-383/assets/guides_gas-price.md.6941c255.lean.js rename to pr-383/assets/guides_gas-price.md.c97936cd.lean.js index 8c70dab9b..49aee5b0b 100644 --- a/pr-383/assets/guides_gas-price.md.6941c255.lean.js +++ b/pr-383/assets/guides_gas-price.md.c97936cd.lean.js @@ -1 +1 @@ -import{_ as e,o as a,c as s,X as t}from"./chunks/framework.be0a7370.js";const _=JSON.parse('{"title":"How to configure gas price","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"How to configure gas price | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/gas-price.md","filePath":"guides/gas-price.md","lastUpdated":1717671233000}'),o={name:"guides/gas-price.md"},n=t("",11),i=[n];function l(c,r,p,g,d,h){return a(),s("div",null,i)}const f=e(o,[["render",l]]);export{_ as __pageData,f as default}; +import{_ as e,o as a,c as s,X as t}from"./chunks/framework.be0a7370.js";const _=JSON.parse('{"title":"How to configure gas price","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"How to configure gas price | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/gas-price.md","filePath":"guides/gas-price.md","lastUpdated":1717768398000}'),o={name:"guides/gas-price.md"},n=t("",11),i=[n];function l(c,r,p,g,d,h){return a(),s("div",null,i)}const f=e(o,[["render",l]]);export{_ as __pageData,f as default}; diff --git a/pr-383/assets/guides_ibc-connection.md.ca5b61e3.js b/pr-383/assets/guides_ibc-connection.md.c27aa7d5.js similarity index 99% rename from pr-383/assets/guides_ibc-connection.md.ca5b61e3.js rename to pr-383/assets/guides_ibc-connection.md.c27aa7d5.js index 8a0500a78..47194bde8 100644 --- a/pr-383/assets/guides_ibc-connection.md.ca5b61e3.js +++ b/pr-383/assets/guides_ibc-connection.md.c27aa7d5.js @@ -1,4 +1,4 @@ -import{_ as s,o as a,c as n,X as o}from"./chunks/framework.be0a7370.js";const F=JSON.parse('{"title":"IBC connection tutorial","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"IBC connection tutorial | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/ibc-connection.md","filePath":"guides/ibc-connection.md","lastUpdated":1717671233000}'),l={name:"guides/ibc-connection.md"},p=o(`

IBC connection tutorial โ€‹

In this tutorial, we'll learn how to use an Inter-Blockchain Communication (IBC) Protocol relayer to create an IBC connection between a GM world rollup and an Osmosis local testnet.

Disclaimer

This initial version of IBC has high trust assumptions where receiving chains only verify the signature of the single rollup node. For use in production, it's recommended to wait for trust-minimized IBC support which includes state proofs and conditional clients. Learn more about how conditional clients work in ibc-go issue 5112 and a tracking issue for state proofs in rollkit issue 1632.

๐Ÿ’ป Pre-requisites โ€‹

Software requirements โ€‹

  • Docker running on your machine
  • Go version โ‰ฅ 1.21.0
  • Ignite version โ‰ฅ v28.2.0

Run a GM rollup chain โ€‹

Before you can create an IBC connection, you need to start a local-celestia-devnet instance in a separate terminal:

bash
docker run -t -i --platform linux/amd64 -p 26657:26657 -p 26658:26658 -p 26659:26659 -p 9090:9090 ghcr.io/rollkit/local-celestia-devnet:v0.13.1

WARNING

You will need to use Ignite v28.2.0, which you can install with:

bash
curl https://get.ignite.com/cli@v28.3.0! | bash

Scaffold the GM chain:

bash
cd $HOME
+import{_ as s,o as a,c as n,X as o}from"./chunks/framework.be0a7370.js";const F=JSON.parse('{"title":"IBC connection tutorial","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"IBC connection tutorial | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/ibc-connection.md","filePath":"guides/ibc-connection.md","lastUpdated":1717768398000}'),l={name:"guides/ibc-connection.md"},p=o(`

IBC connection tutorial โ€‹

In this tutorial, we'll learn how to use an Inter-Blockchain Communication (IBC) Protocol relayer to create an IBC connection between a GM world rollup and an Osmosis local testnet.

Disclaimer

This initial version of IBC has high trust assumptions where receiving chains only verify the signature of the single rollup node. For use in production, it's recommended to wait for trust-minimized IBC support which includes state proofs and conditional clients. Learn more about how conditional clients work in ibc-go issue 5112 and a tracking issue for state proofs in rollkit issue 1632.

๐Ÿ’ป Pre-requisites โ€‹

Software requirements โ€‹

  • Docker running on your machine
  • Go version โ‰ฅ 1.21.0
  • Ignite version โ‰ฅ v28.2.0

Run a GM rollup chain โ€‹

Before you can create an IBC connection, you need to start a local-celestia-devnet instance in a separate terminal:

bash
docker run -t -i --platform linux/amd64 -p 26657:26657 -p 26658:26658 -p 26659:26659 -p 9090:9090 ghcr.io/rollkit/local-celestia-devnet:v0.13.1

WARNING

You will need to use Ignite v28.2.0, which you can install with:

bash
curl https://get.ignite.com/cli@v28.3.0! | bash

Scaffold the GM chain:

bash
cd $HOME
 ignite scaffold chain gm --address-prefix gm

Change into the gm directory and install Rollkit with IBC compatibility:

bash
cd gm
 go mod edit -replace github.com/cosmos/cosmos-sdk=github.com/rollkit/cosmos-sdk@v0.50.6-rollkit-v0.13.3-no-fraud-proofs
 go mod tidy
diff --git a/pr-383/assets/guides_ibc-connection.md.ca5b61e3.lean.js b/pr-383/assets/guides_ibc-connection.md.c27aa7d5.lean.js
similarity index 88%
rename from pr-383/assets/guides_ibc-connection.md.ca5b61e3.lean.js
rename to pr-383/assets/guides_ibc-connection.md.c27aa7d5.lean.js
index c5a0eeb93..4981104a6 100644
--- a/pr-383/assets/guides_ibc-connection.md.ca5b61e3.lean.js
+++ b/pr-383/assets/guides_ibc-connection.md.c27aa7d5.lean.js
@@ -1 +1 @@
-import{_ as s,o as a,c as n,X as o}from"./chunks/framework.be0a7370.js";const F=JSON.parse('{"title":"IBC connection tutorial","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"IBC connection tutorial | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/ibc-connection.md","filePath":"guides/ibc-connection.md","lastUpdated":1717671233000}'),l={name:"guides/ibc-connection.md"},p=o("",87),e=[p];function t(c,r,y,D,C,i){return a(),n("div",null,e)}const u=s(l,[["render",t]]);export{F as __pageData,u as default};
+import{_ as s,o as a,c as n,X as o}from"./chunks/framework.be0a7370.js";const F=JSON.parse('{"title":"IBC connection tutorial","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"IBC connection tutorial | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/ibc-connection.md","filePath":"guides/ibc-connection.md","lastUpdated":1717768398000}'),l={name:"guides/ibc-connection.md"},p=o("",87),e=[p];function t(c,r,y,D,C,i){return a(),n("div",null,e)}const u=s(l,[["render",t]]);export{F as __pageData,u as default};
diff --git a/pr-383/assets/guides_lazy-sequencing.md.2c57ff6b.js b/pr-383/assets/guides_lazy-sequencing.md.336f1b93.js
similarity index 97%
rename from pr-383/assets/guides_lazy-sequencing.md.2c57ff6b.js
rename to pr-383/assets/guides_lazy-sequencing.md.336f1b93.js
index e58d12ecd..6ca828176 100644
--- a/pr-383/assets/guides_lazy-sequencing.md.2c57ff6b.js
+++ b/pr-383/assets/guides_lazy-sequencing.md.336f1b93.js
@@ -1,3 +1,3 @@
-import{_ as a,o as s,c as e,X as n}from"./chunks/framework.be0a7370.js";const h=JSON.parse('{"title":"How to use lazy sequencing (aggregation)","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"How to use lazy sequencing (aggregation) | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/lazy-sequencing.md","filePath":"guides/lazy-sequencing.md","lastUpdated":1717671233000}'),o={name:"guides/lazy-sequencing.md"},t=n(`

How to use lazy sequencing (aggregation) โ€‹

In this guide, we'll go over how to use lazy sequencing.

This feature was introduced in Rollkit v0.7.0 and allows rollup operators to wait for transactions to build blocks. This prevents the rollup from building empty blocks.

To turn on lazy sequencing, add the following flag to your start command:

bash
--rollkit.lazy_aggregator

An example command would look like this:

bash
# start the chain
+import{_ as a,o as s,c as e,X as n}from"./chunks/framework.be0a7370.js";const h=JSON.parse('{"title":"How to use lazy sequencing (aggregation)","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"How to use lazy sequencing (aggregation) | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/lazy-sequencing.md","filePath":"guides/lazy-sequencing.md","lastUpdated":1717768398000}'),o={name:"guides/lazy-sequencing.md"},t=n(`

How to use lazy sequencing (aggregation) โ€‹

In this guide, we'll go over how to use lazy sequencing.

This feature was introduced in Rollkit v0.7.0 and allows rollup operators to wait for transactions to build blocks. This prevents the rollup from building empty blocks.

To turn on lazy sequencing, add the following flag to your start command:

bash
--rollkit.lazy_aggregator

An example command would look like this:

bash
# start the chain
 gmd start [existing flags...] 
 gmd start [existing flags...] --rollkit.lazy_aggregator 
`,7),l=[t];function i(p,c,r,g,d,u){return s(),e("div",null,l)}const _=a(o,[["render",i]]);export{h as __pageData,_ as default}; diff --git a/pr-383/assets/guides_lazy-sequencing.md.2c57ff6b.lean.js b/pr-383/assets/guides_lazy-sequencing.md.336f1b93.lean.js similarity index 89% rename from pr-383/assets/guides_lazy-sequencing.md.2c57ff6b.lean.js rename to pr-383/assets/guides_lazy-sequencing.md.336f1b93.lean.js index b895e674a..105e67425 100644 --- a/pr-383/assets/guides_lazy-sequencing.md.2c57ff6b.lean.js +++ b/pr-383/assets/guides_lazy-sequencing.md.336f1b93.lean.js @@ -1 +1 @@ -import{_ as a,o as s,c as e,X as n}from"./chunks/framework.be0a7370.js";const h=JSON.parse('{"title":"How to use lazy sequencing (aggregation)","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"How to use lazy sequencing (aggregation) | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/lazy-sequencing.md","filePath":"guides/lazy-sequencing.md","lastUpdated":1717671233000}'),o={name:"guides/lazy-sequencing.md"},t=n("",7),l=[t];function i(p,c,r,g,d,u){return s(),e("div",null,l)}const _=a(o,[["render",i]]);export{h as __pageData,_ as default}; +import{_ as a,o as s,c as e,X as n}from"./chunks/framework.be0a7370.js";const h=JSON.parse('{"title":"How to use lazy sequencing (aggregation)","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"How to use lazy sequencing (aggregation) | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/lazy-sequencing.md","filePath":"guides/lazy-sequencing.md","lastUpdated":1717768398000}'),o={name:"guides/lazy-sequencing.md"},t=n("",7),l=[t];function i(p,c,r,g,d,u){return s(),e("div",null,l)}const _=a(o,[["render",i]]);export{h as __pageData,_ as default}; diff --git a/pr-383/assets/guides_overview.md.808e087f.js b/pr-383/assets/guides_overview.md.9a88b161.js similarity index 97% rename from pr-383/assets/guides_overview.md.808e087f.js rename to pr-383/assets/guides_overview.md.9a88b161.js index 76a24049f..b1cc40bfb 100644 --- a/pr-383/assets/guides_overview.md.808e087f.js +++ b/pr-383/assets/guides_overview.md.9a88b161.js @@ -1 +1 @@ -import{_ as e,o,c as i,X as r}from"./chunks/framework.be0a7370.js";const w=JSON.parse('{"title":"How To Guides","description":"This page provides a comprehensive overview of the how to guides available for Rollkit.","frontmatter":{"description":"This page provides a comprehensive overview of the how to guides available for Rollkit.","head":[["meta",{"name":"og:title","content":"How To Guides | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/overview.md","filePath":"guides/overview.md","lastUpdated":1717671233000}'),t={name:"guides/overview.md"},a=r('

How To Guides โ€‹

Welcome to the Rollkit guides section! Here, you'll find a wide range of guides designed to help you understand and effectively use Rollkit, the first sovereign rollup framework.

Hopefully you've gone through some of the tutorials and are ready to dive deeper. These guides will go into detail on some specific topics that will make your life easier when developing with Rollkit.

In this section, you'll find:

๐Ÿ’ป Support โ€‹

The guides will explore developing with Rollkit, which is still in Alpha stage. If you run into bugs, please write a GitHub issue or let us know in our Telegram.

',7),l=[a];function s(n,d,p,u,c,h){return o(),i("div",null,l)}const f=e(t,[["render",s]]);export{w as __pageData,f as default}; +import{_ as e,o,c as i,X as r}from"./chunks/framework.be0a7370.js";const w=JSON.parse('{"title":"How To Guides","description":"This page provides a comprehensive overview of the how to guides available for Rollkit.","frontmatter":{"description":"This page provides a comprehensive overview of the how to guides available for Rollkit.","head":[["meta",{"name":"og:title","content":"How To Guides | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/overview.md","filePath":"guides/overview.md","lastUpdated":1717768398000}'),t={name:"guides/overview.md"},a=r('

How To Guides โ€‹

Welcome to the Rollkit guides section! Here, you'll find a wide range of guides designed to help you understand and effectively use Rollkit, the first sovereign rollup framework.

Hopefully you've gone through some of the tutorials and are ready to dive deeper. These guides will go into detail on some specific topics that will make your life easier when developing with Rollkit.

In this section, you'll find:

๐Ÿ’ป Support โ€‹

The guides will explore developing with Rollkit, which is still in Alpha stage. If you run into bugs, please write a GitHub issue or let us know in our Telegram.

',7),l=[a];function s(n,d,p,u,c,h){return o(),i("div",null,l)}const f=e(t,[["render",s]]);export{w as __pageData,f as default}; diff --git a/pr-383/assets/guides_overview.md.808e087f.lean.js b/pr-383/assets/guides_overview.md.9a88b161.lean.js similarity index 91% rename from pr-383/assets/guides_overview.md.808e087f.lean.js rename to pr-383/assets/guides_overview.md.9a88b161.lean.js index 23b60b559..a520c4bf1 100644 --- a/pr-383/assets/guides_overview.md.808e087f.lean.js +++ b/pr-383/assets/guides_overview.md.9a88b161.lean.js @@ -1 +1 @@ -import{_ as e,o,c as i,X as r}from"./chunks/framework.be0a7370.js";const w=JSON.parse('{"title":"How To Guides","description":"This page provides a comprehensive overview of the how to guides available for Rollkit.","frontmatter":{"description":"This page provides a comprehensive overview of the how to guides available for Rollkit.","head":[["meta",{"name":"og:title","content":"How To Guides | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/overview.md","filePath":"guides/overview.md","lastUpdated":1717671233000}'),t={name:"guides/overview.md"},a=r("",7),l=[a];function s(n,d,p,u,c,h){return o(),i("div",null,l)}const f=e(t,[["render",s]]);export{w as __pageData,f as default}; +import{_ as e,o,c as i,X as r}from"./chunks/framework.be0a7370.js";const w=JSON.parse('{"title":"How To Guides","description":"This page provides a comprehensive overview of the how to guides available for Rollkit.","frontmatter":{"description":"This page provides a comprehensive overview of the how to guides available for Rollkit.","head":[["meta",{"name":"og:title","content":"How To Guides | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/overview.md","filePath":"guides/overview.md","lastUpdated":1717768398000}'),t={name:"guides/overview.md"},a=r("",7),l=[a];function s(n,d,p,u,c,h){return o(),i("div",null,l)}const f=e(t,[["render",s]]);export{w as __pageData,f as default}; diff --git a/pr-383/assets/guides_restart-rollup.md.6ebc8a40.js b/pr-383/assets/guides_restart-rollup.md.7a47ad3f.js similarity index 99% rename from pr-383/assets/guides_restart-rollup.md.6ebc8a40.js rename to pr-383/assets/guides_restart-rollup.md.7a47ad3f.js index 587010724..f5b2d1136 100644 --- a/pr-383/assets/guides_restart-rollup.md.6ebc8a40.js +++ b/pr-383/assets/guides_restart-rollup.md.7a47ad3f.js @@ -1,4 +1,4 @@ -import{_ as s,o as a,c as o,X as e}from"./chunks/framework.be0a7370.js";const d=JSON.parse('{"title":"๐Ÿ”„ How to restart your rollup","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"๐Ÿ”„ How to restart your rollup | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/restart-rollup.md","filePath":"guides/restart-rollup.md","lastUpdated":1717671233000}'),l={name:"guides/restart-rollup.md"},n=e(`

๐Ÿ”„ How to restart your rollup โ€‹

This guide will teach you how to restart your Rollkit rollup.

Restart rollup โ€‹

This section covers the case where you need to restart your rollup.

In order to restart your rollup, you will need to run the <your-binary>d start [...args] command for your rollup. This is the example for the GM world tutorial.

For the GM world tutorial, you can restart the chain by running the restart-local.sh script that was generated by init-local.sh.

Use the DA_START_HEIGHT, NAMESPACE, and AUTH_TOKEN variables from your original start command.

Using the gmd rollup as an example, you can add something similar to your respective start script to make it easier to save variables for later use:

bash
# the rest of your init script
+import{_ as s,o as a,c as o,X as e}from"./chunks/framework.be0a7370.js";const d=JSON.parse('{"title":"๐Ÿ”„ How to restart your rollup","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"๐Ÿ”„ How to restart your rollup | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/restart-rollup.md","filePath":"guides/restart-rollup.md","lastUpdated":1717768398000}'),l={name:"guides/restart-rollup.md"},n=e(`

๐Ÿ”„ How to restart your rollup โ€‹

This guide will teach you how to restart your Rollkit rollup.

Restart rollup โ€‹

This section covers the case where you need to restart your rollup.

In order to restart your rollup, you will need to run the <your-binary>d start [...args] command for your rollup. This is the example for the GM world tutorial.

For the GM world tutorial, you can restart the chain by running the restart-local.sh script that was generated by init-local.sh.

Use the DA_START_HEIGHT, NAMESPACE, and AUTH_TOKEN variables from your original start command.

Using the gmd rollup as an example, you can add something similar to your respective start script to make it easier to save variables for later use:

bash
# the rest of your init script
 
 # create a restart-local.sh file to restart the chain later
 rm restart-local.sh
diff --git a/pr-383/assets/guides_restart-rollup.md.6ebc8a40.lean.js b/pr-383/assets/guides_restart-rollup.md.7a47ad3f.lean.js
similarity index 89%
rename from pr-383/assets/guides_restart-rollup.md.6ebc8a40.lean.js
rename to pr-383/assets/guides_restart-rollup.md.7a47ad3f.lean.js
index be725e908..f13e62a6b 100644
--- a/pr-383/assets/guides_restart-rollup.md.6ebc8a40.lean.js
+++ b/pr-383/assets/guides_restart-rollup.md.7a47ad3f.lean.js
@@ -1 +1 @@
-import{_ as s,o as a,c as o,X as e}from"./chunks/framework.be0a7370.js";const d=JSON.parse('{"title":"๐Ÿ”„ How to restart your rollup","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"๐Ÿ”„ How to restart your rollup | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/restart-rollup.md","filePath":"guides/restart-rollup.md","lastUpdated":1717671233000}'),l={name:"guides/restart-rollup.md"},n=e("",32),t=[n];function r(p,c,C,y,i,D){return a(),o("div",null,t)}const A=s(l,[["render",r]]);export{d as __pageData,A as default};
+import{_ as s,o as a,c as o,X as e}from"./chunks/framework.be0a7370.js";const d=JSON.parse('{"title":"๐Ÿ”„ How to restart your rollup","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"๐Ÿ”„ How to restart your rollup | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/restart-rollup.md","filePath":"guides/restart-rollup.md","lastUpdated":1717768398000}'),l={name:"guides/restart-rollup.md"},n=e("",32),t=[n];function r(p,c,C,y,i,D){return a(),o("div",null,t)}const A=s(l,[["render",r]]);export{d as __pageData,A as default};
diff --git a/pr-383/assets/guides_rollkit-monitoring.md.aa13d519.js b/pr-383/assets/guides_rollkit-monitoring.md.953491f9.js
similarity index 98%
rename from pr-383/assets/guides_rollkit-monitoring.md.aa13d519.js
rename to pr-383/assets/guides_rollkit-monitoring.md.953491f9.js
index 279124aef..32baa798b 100644
--- a/pr-383/assets/guides_rollkit-monitoring.md.aa13d519.js
+++ b/pr-383/assets/guides_rollkit-monitoring.md.953491f9.js
@@ -1 +1 @@
-import{_ as e,o as t,c as a,X as o}from"./chunks/framework.be0a7370.js";const s="/docs-preview/pr-383/assets/custom-network.93d26ef7.png",r="/docs-preview/pr-383/assets/import-address.dbe6ef3b.png",n="/docs-preview/pr-383/assets/alert-rule.a5aecc66.png",l="/docs-preview/pr-383/assets/alert-events.74486fc6.png",f=JSON.parse('{"title":"How to integrate Range with your rollup","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"How to integrate Range with your rollup | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/rollkit-monitoring.md","filePath":"guides/rollkit-monitoring.md","lastUpdated":1717671233000}'),i={name:"guides/rollkit-monitoring.md"},p=o('

How to integrate Range with your rollup โ€‹

This section illustrates how Rollkit developers can leverage the Range platform to monitor their rollup activity and explore relevant addresses and transactions in less than 5 minutes.

Overview โ€‹

In this guide, weโ€™ll go over the steps of the integration of our sample rollup GM, which is divided into three sections:

  1. Integrate your rollup with Range and start the indexing.
  2. Add your addresses and contracts.
  3. Create your first alert and explore transactions.

Prerequisites โ€‹

You need to have an operational rollkit rollup. If you haven't done so, you'll need to complete the GM world tutorial first.

1. Integrate Your Rollup โ€‹

Weโ€™ll integrate our rollup GM into Range and start indexing blocks and transactions in real-time.

custom-network

Steps โ€‹

  • Create an account in Range
  • Make sure you have a public RPC endpoint of your Rollkit rollup
  • Go to the settings tab on your account profile in the top-right corner
  • Click the Add Network button in the Custom Network section
  • Choose Rollkit and fill out the form
  • Congrats! Your rollup should be integrated in Range in less than 15 seconds.

2. Add Your Addresses and Contracts โ€‹

Now that your rollup is integrated into Range, you can customize your workspace. The first step is adding addresses and contracts that you want to monitor. For that, head to the Address section:

import-address

Once youโ€™ve added one or multiple addresses, you can start looking at the real-time transactions explorer in the Transactions tab.

3. Creating Your First Alert Rule โ€‹

Now, you can set up alerts to monitor specific events or transactions in your rollup. As an example, we can create an alert that notifies us every time our address is involved in a successful transaction:

alert-rules

After executing a sample transaction:

bash
gmd tx bank send gm-991hesf7xgmjwttag2n2wzk43rvxh47nn4ckh3e6s gm-991rcctqc5l4px95k6tdg4pjrms70m2a9t35rl50t 4039stake --keyring-backend test --node tcp://127.0.0.1:36657 --chain-id gm --fees 5000stake

The alert events will appear both in the Overview tab and the Alerting section:

alert-events

๐ŸŽŠ Congrats! You've detected the first monitored transaction in your GM rollup.

',24),c=[p];function d(u,h,g,y,C,m){return t(),a("div",null,c)}const _=e(i,[["render",d]]);export{f as __pageData,_ as default}; +import{_ as e,o as t,c as a,X as o}from"./chunks/framework.be0a7370.js";const s="/docs-preview/pr-383/assets/custom-network.93d26ef7.png",r="/docs-preview/pr-383/assets/import-address.dbe6ef3b.png",n="/docs-preview/pr-383/assets/alert-rule.a5aecc66.png",l="/docs-preview/pr-383/assets/alert-events.74486fc6.png",f=JSON.parse('{"title":"How to integrate Range with your rollup","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"How to integrate Range with your rollup | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/rollkit-monitoring.md","filePath":"guides/rollkit-monitoring.md","lastUpdated":1717768398000}'),i={name:"guides/rollkit-monitoring.md"},p=o('

How to integrate Range with your rollup โ€‹

This section illustrates how Rollkit developers can leverage the Range platform to monitor their rollup activity and explore relevant addresses and transactions in less than 5 minutes.

Overview โ€‹

In this guide, weโ€™ll go over the steps of the integration of our sample rollup GM, which is divided into three sections:

  1. Integrate your rollup with Range and start the indexing.
  2. Add your addresses and contracts.
  3. Create your first alert and explore transactions.

Prerequisites โ€‹

You need to have an operational rollkit rollup. If you haven't done so, you'll need to complete the GM world tutorial first.

1. Integrate Your Rollup โ€‹

Weโ€™ll integrate our rollup GM into Range and start indexing blocks and transactions in real-time.

custom-network

Steps โ€‹

  • Create an account in Range
  • Make sure you have a public RPC endpoint of your Rollkit rollup
  • Go to the settings tab on your account profile in the top-right corner
  • Click the Add Network button in the Custom Network section
  • Choose Rollkit and fill out the form
  • Congrats! Your rollup should be integrated in Range in less than 15 seconds.

2. Add Your Addresses and Contracts โ€‹

Now that your rollup is integrated into Range, you can customize your workspace. The first step is adding addresses and contracts that you want to monitor. For that, head to the Address section:

import-address

Once youโ€™ve added one or multiple addresses, you can start looking at the real-time transactions explorer in the Transactions tab.

3. Creating Your First Alert Rule โ€‹

Now, you can set up alerts to monitor specific events or transactions in your rollup. As an example, we can create an alert that notifies us every time our address is involved in a successful transaction:

alert-rules

After executing a sample transaction:

bash
gmd tx bank send gm-991hesf7xgmjwttag2n2wzk43rvxh47nn4ckh3e6s gm-991rcctqc5l4px95k6tdg4pjrms70m2a9t35rl50t 4039stake --keyring-backend test --node tcp://127.0.0.1:36657 --chain-id gm --fees 5000stake

The alert events will appear both in the Overview tab and the Alerting section:

alert-events

๐ŸŽŠ Congrats! You've detected the first monitored transaction in your GM rollup.

',24),c=[p];function d(u,h,g,y,C,m){return t(),a("div",null,c)}const _=e(i,[["render",d]]);export{f as __pageData,_ as default}; diff --git a/pr-383/assets/guides_rollkit-monitoring.md.aa13d519.lean.js b/pr-383/assets/guides_rollkit-monitoring.md.953491f9.lean.js similarity index 92% rename from pr-383/assets/guides_rollkit-monitoring.md.aa13d519.lean.js rename to pr-383/assets/guides_rollkit-monitoring.md.953491f9.lean.js index ec0c74b76..40c614e86 100644 --- a/pr-383/assets/guides_rollkit-monitoring.md.aa13d519.lean.js +++ b/pr-383/assets/guides_rollkit-monitoring.md.953491f9.lean.js @@ -1 +1 @@ -import{_ as e,o as t,c as a,X as o}from"./chunks/framework.be0a7370.js";const s="/docs-preview/pr-383/assets/custom-network.93d26ef7.png",r="/docs-preview/pr-383/assets/import-address.dbe6ef3b.png",n="/docs-preview/pr-383/assets/alert-rule.a5aecc66.png",l="/docs-preview/pr-383/assets/alert-events.74486fc6.png",f=JSON.parse('{"title":"How to integrate Range with your rollup","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"How to integrate Range with your rollup | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/rollkit-monitoring.md","filePath":"guides/rollkit-monitoring.md","lastUpdated":1717671233000}'),i={name:"guides/rollkit-monitoring.md"},p=o("",24),c=[p];function d(u,h,g,y,C,m){return t(),a("div",null,c)}const _=e(i,[["render",d]]);export{f as __pageData,_ as default}; +import{_ as e,o as t,c as a,X as o}from"./chunks/framework.be0a7370.js";const s="/docs-preview/pr-383/assets/custom-network.93d26ef7.png",r="/docs-preview/pr-383/assets/import-address.dbe6ef3b.png",n="/docs-preview/pr-383/assets/alert-rule.a5aecc66.png",l="/docs-preview/pr-383/assets/alert-events.74486fc6.png",f=JSON.parse('{"title":"How to integrate Range with your rollup","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"How to integrate Range with your rollup | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/rollkit-monitoring.md","filePath":"guides/rollkit-monitoring.md","lastUpdated":1717768398000}'),i={name:"guides/rollkit-monitoring.md"},p=o("",24),c=[p];function d(u,h,g,y,C,m){return t(),a("div",null,c)}const _=e(i,[["render",d]]);export{f as __pageData,_ as default}; diff --git a/pr-383/assets/guides_use-tia-for-gas.md.fdcb6f1c.js b/pr-383/assets/guides_use-tia-for-gas.md.c62fd47c.js similarity index 99% rename from pr-383/assets/guides_use-tia-for-gas.md.fdcb6f1c.js rename to pr-383/assets/guides_use-tia-for-gas.md.c62fd47c.js index 420510dec..d0db863c4 100644 --- a/pr-383/assets/guides_use-tia-for-gas.md.fdcb6f1c.js +++ b/pr-383/assets/guides_use-tia-for-gas.md.c62fd47c.js @@ -1,4 +1,4 @@ -import{C as e}from"./chunks/callout.d775988b.js";import{c as l}from"./chunks/constants.3fbf9100.js";import{o as t,c,k as s,O as r,t as p,l as o,a,X as n}from"./chunks/framework.be0a7370.js";const C=n('

How to use IBC token (TIA) as gas token in your rollup โ€‹

๐ŸŒž Introduction โ€‹

This tutorial will guide you through building a sovereign gm-world rollup using Rollkit, with TIA as the gas token. Unlike the quick start guide, which uses a native rollup token for gas, this tutorial demonstrates how to integrate an IBC-enabled token, TIA, as the gas token within the rollup, providing a deeper exploration of sovereign rollup development.

We will cover:

  • Building and configuring a Cosmos-SDK application-specific rollup blockchain.
  • Posting rollup data to a Data Availability (DA) network.
  • Executing transactions using TIA as the gas token (the end goal).

No prior understanding of the build process is required, just that it utilizes the Cosmos SDK for blockchain applications.

',6),y={class:"tip custom-block"},D=s("p",{class:"custom-block-title"},"TIP",-1),i=s("h2",{id:"dependencies",tabindex:"-1"},[a("๐Ÿ› ๏ธ Dependencies "),s("a",{class:"header-anchor",href:"#dependencies","aria-label":'Permalink to "๐Ÿ› ๏ธ Dependencies {#dependencies}"'},"โ€‹")],-1),A=s("p",null,[a("Rollkit uses the "),s("a",{href:"https://go.dev/dl/",target:"_blank",rel:"noreferrer"},"Go programming language"),a(". Here's how to install it:")],-1),d=s("p",null,[s("strong",null,"Linux or macOS"),a(": Run the provided script:")],-1),u={class:"language-bash"},E=s("button",{title:"Copy Code",class:"copy"},null,-1),h=s("span",{class:"lang"},"bash",-1),F={class:"shiki material-theme-palenight"},g={class:"line"},m=n('curl -sSL https://rollkit.dev/install-go.sh | bash -s ',12),b={style:{color:"#C3E88D"}},B=s("strong",null,"Windows",-1),_=["href"],k=s("h2",{id:"running-local-da",tabindex:"-1"},[a("๐ŸŒ Running a Local DA Network "),s("a",{class:"header-anchor",href:"#running-local-da","aria-label":'Permalink to "๐ŸŒ Running a Local DA Network {#running-local-da}"'},"โ€‹")],-1),v=s("p",null,"Learn to run a local DA network, designed for educational purposes, on your machine.",-1),f=s("p",null,"To set up a local DA network node:",-1),q={class:"language-bash"},I=s("button",{title:"Copy Code",class:"copy"},null,-1),T=s("span",{class:"lang"},"bash",-1),P={class:"shiki material-theme-palenight"},w={class:"line"},N=n('(cd /tmp && curl -sSL https://rollkit.dev/install-local-da.sh | bash -s ',19),x={style:{color:"#C3E88D"}},S=s("span",{style:{color:"#89DDFF"}},")",-1),M=n(`

This script builds and runs the node, now listening on port 7980.

๐Ÿ—๏ธ Building Your Sovereign Rollup โ€‹

With the local DA network running, letโ€™s prepare your rollup blockchain.

To make it simple, we will download a repository with a gm-world rollup that includes an init.sh script to handle all the setup for you.

Download and build a gm-world rollup with an interactive script in a new terminal:

WARNING

Ensure the jq command line tool is installed before proceeding. Install it using sudo apt-get install jq on Ubuntu or brew install jq on macOS.

TIP

If you get errors of gmd not found, you may need to add the go/bin directory to your PATH. You can do this by running export PATH=$PATH:$HOME/go/bin and then running the init.sh script manually again.

bash
(cd /tmp && bash -c "$(curl -sSL https://rollkit.dev/install-gm-rollup.sh)")

๐Ÿš€ Starting your rollup โ€‹

Start the rollup, posting to the local DA network:

bash
gmd start --rollkit.aggregator --rollkit.da_address http://localhost:7980 --minimum-gas-prices="0.02ibc/C3E53D20BC7A4CC993B17C7971F8ECD06A433C10B6A96F4C4C3714F0624C56DA,0.025stake"

Note that we specified the gas token to be IBC TIA. We still haven't made an IBC connection to Celestia's Mocha testnet, however, if we assume our first channel will be an ICS-20 transfer channel to Celestia, we can already calculate the token denom using this formula:

js
"ibc/" + toHex(sha256(toUtf8("transfer/channel-0/utia"))).toUpperCase();

Now you should see the logs of the running node:

bash
12:21PM INF starting node with ABCI CometBFT in-process module=server
+import{C as e}from"./chunks/callout.d775988b.js";import{c as l}from"./chunks/constants.6a6fd4fb.js";import{o as t,c,k as s,O as r,t as p,l as o,a,X as n}from"./chunks/framework.be0a7370.js";const C=n('

How to use IBC token (TIA) as gas token in your rollup โ€‹

๐ŸŒž Introduction โ€‹

This tutorial will guide you through building a sovereign gm-world rollup using Rollkit, with TIA as the gas token. Unlike the quick start guide, which uses a native rollup token for gas, this tutorial demonstrates how to integrate an IBC-enabled token, TIA, as the gas token within the rollup, providing a deeper exploration of sovereign rollup development.

We will cover:

  • Building and configuring a Cosmos-SDK application-specific rollup blockchain.
  • Posting rollup data to a Data Availability (DA) network.
  • Executing transactions using TIA as the gas token (the end goal).

No prior understanding of the build process is required, just that it utilizes the Cosmos SDK for blockchain applications.

',6),y={class:"tip custom-block"},D=s("p",{class:"custom-block-title"},"TIP",-1),i=s("h2",{id:"dependencies",tabindex:"-1"},[a("๐Ÿ› ๏ธ Dependencies "),s("a",{class:"header-anchor",href:"#dependencies","aria-label":'Permalink to "๐Ÿ› ๏ธ Dependencies {#dependencies}"'},"โ€‹")],-1),A=s("p",null,[a("Rollkit uses the "),s("a",{href:"https://go.dev/dl/",target:"_blank",rel:"noreferrer"},"Go programming language"),a(". Here's how to install it:")],-1),d=s("p",null,[s("strong",null,"Linux or macOS"),a(": Run the provided script:")],-1),u={class:"language-bash"},E=s("button",{title:"Copy Code",class:"copy"},null,-1),h=s("span",{class:"lang"},"bash",-1),F={class:"shiki material-theme-palenight"},g={class:"line"},m=n('curl -sSL https://rollkit.dev/install-go.sh | bash -s ',12),b={style:{color:"#C3E88D"}},B=s("strong",null,"Windows",-1),_=["href"],k=s("h2",{id:"running-local-da",tabindex:"-1"},[a("๐ŸŒ Running a Local DA Network "),s("a",{class:"header-anchor",href:"#running-local-da","aria-label":'Permalink to "๐ŸŒ Running a Local DA Network {#running-local-da}"'},"โ€‹")],-1),v=s("p",null,"Learn to run a local DA network, designed for educational purposes, on your machine.",-1),f=s("p",null,"To set up a local DA network node:",-1),q={class:"language-bash"},I=s("button",{title:"Copy Code",class:"copy"},null,-1),T=s("span",{class:"lang"},"bash",-1),P={class:"shiki material-theme-palenight"},w={class:"line"},N=n('(cd /tmp && curl -sSL https://rollkit.dev/install-local-da.sh | bash -s ',19),x={style:{color:"#C3E88D"}},S=s("span",{style:{color:"#89DDFF"}},")",-1),M=n(`

This script builds and runs the node, now listening on port 7980.

๐Ÿ—๏ธ Building Your Sovereign Rollup โ€‹

With the local DA network running, letโ€™s prepare your rollup blockchain.

To make it simple, we will download a repository with a gm-world rollup that includes an init.sh script to handle all the setup for you.

Download and build a gm-world rollup with an interactive script in a new terminal:

WARNING

Ensure the jq command line tool is installed before proceeding. Install it using sudo apt-get install jq on Ubuntu or brew install jq on macOS.

TIP

If you get errors of gmd not found, you may need to add the go/bin directory to your PATH. You can do this by running export PATH=$PATH:$HOME/go/bin and then running the init.sh script manually again.

bash
(cd /tmp && bash -c "$(curl -sSL https://rollkit.dev/install-gm-rollup.sh)")

๐Ÿš€ Starting your rollup โ€‹

Start the rollup, posting to the local DA network:

bash
gmd start --rollkit.aggregator --rollkit.da_address http://localhost:7980 --minimum-gas-prices="0.02ibc/C3E53D20BC7A4CC993B17C7971F8ECD06A433C10B6A96F4C4C3714F0624C56DA,0.025stake"

Note that we specified the gas token to be IBC TIA. We still haven't made an IBC connection to Celestia's Mocha testnet, however, if we assume our first channel will be an ICS-20 transfer channel to Celestia, we can already calculate the token denom using this formula:

js
"ibc/" + toHex(sha256(toUtf8("transfer/channel-0/utia"))).toUpperCase();

Now you should see the logs of the running node:

bash
12:21PM INF starting node with ABCI CometBFT in-process module=server
 12:21PM INF starting node with Rollkit in-process module=server
 12:21PM INF service start impl=multiAppConn module=proxy msg="Starting multiAppConn service"
 12:21PM INF service start connection=query impl=localClient module=abci-client msg="Starting localClient service"
@@ -119,4 +119,4 @@ import{C as e}from"./chunks/callout.d775988b.js";import{c as l}from"./chunks/con
 TX_HASH=$(gmd tx bank send "$ACCOUNT_ON_ROLLUP" "$ACCOUNT_ON_ROLLUP" 1stake --keyring-backend test --chain-id gm --gas-prices 0.02ibc/C3E53D20BC7A4CC993B17C7971F8ECD06A433C10B6A96F4C4C3714F0624C56DA -y --output json | jq -r .txhash)
 
 # Verify success
-gmd q tx "$TX_HASH" --output json | jq .code # => 0

๐ŸŽ‰ Next steps โ€‹

Congratulations! You've built a local rollup that posts to a local DA network and uses TIA as the gas token!

`,47),$=JSON.parse('{"title":"How to use IBC token (TIA) as gas token in your rollup","description":"Build a sovereign rollup using Rollkit CLI and a local DA network, with TIA as the gas token.","frontmatter":{"description":"Build a sovereign rollup using Rollkit CLI and a local DA network, with TIA as the gas token.","head":[["meta",{"name":"og:title","content":"How to use IBC token (TIA) as gas token in your rollup | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/use-tia-for-gas.md","filePath":"guides/use-tia-for-gas.md","lastUpdated":1717671233000}'),O={name:"guides/use-tia-for-gas.md"},Y=Object.assign(O,{setup(H){return(j,L)=>(t(),c("div",null,[C,s("div",y,[D,r(e)]),i,A,s("ul",null,[s("li",null,[d,s("div",u,[E,h,s("pre",F,[s("code",null,[s("span",g,[m,s("span",b,p(o(l).golangVersion),1)])])])])])]),s("ul",null,[s("li",null,[B,a(": Download and execute the "),s("a",{href:`https://go.dev/dl/go${o(l).golangVersion}.windows-amd64.msi`},"installer",8,_),a(".")])]),k,v,f,s("div",q,[I,T,s("pre",P,[s("code",null,[s("span",w,[N,s("span",x,p(o(l).localDALatestTag),1),S])])])]),M]))}});export{$ as __pageData,Y as default}; +gmd q tx "$TX_HASH" --output json | jq .code # => 0

๐ŸŽ‰ Next steps โ€‹

Congratulations! You've built a local rollup that posts to a local DA network and uses TIA as the gas token!

`,47),$=JSON.parse('{"title":"How to use IBC token (TIA) as gas token in your rollup","description":"Build a sovereign rollup using Rollkit CLI and a local DA network, with TIA as the gas token.","frontmatter":{"description":"Build a sovereign rollup using Rollkit CLI and a local DA network, with TIA as the gas token.","head":[["meta",{"name":"og:title","content":"How to use IBC token (TIA) as gas token in your rollup | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/use-tia-for-gas.md","filePath":"guides/use-tia-for-gas.md","lastUpdated":1717768398000}'),O={name:"guides/use-tia-for-gas.md"},Y=Object.assign(O,{setup(H){return(j,L)=>(t(),c("div",null,[C,s("div",y,[D,r(e)]),i,A,s("ul",null,[s("li",null,[d,s("div",u,[E,h,s("pre",F,[s("code",null,[s("span",g,[m,s("span",b,p(o(l).golangVersion),1)])])])])])]),s("ul",null,[s("li",null,[B,a(": Download and execute the "),s("a",{href:`https://go.dev/dl/go${o(l).golangVersion}.windows-amd64.msi`},"installer",8,_),a(".")])]),k,v,f,s("div",q,[I,T,s("pre",P,[s("code",null,[s("span",w,[N,s("span",x,p(o(l).localDALatestTag),1),S])])])]),M]))}});export{$ as __pageData,Y as default}; diff --git a/pr-383/assets/guides_use-tia-for-gas.md.fdcb6f1c.lean.js b/pr-383/assets/guides_use-tia-for-gas.md.c62fd47c.lean.js similarity index 95% rename from pr-383/assets/guides_use-tia-for-gas.md.fdcb6f1c.lean.js rename to pr-383/assets/guides_use-tia-for-gas.md.c62fd47c.lean.js index 6826a6af5..34e635fa2 100644 --- a/pr-383/assets/guides_use-tia-for-gas.md.fdcb6f1c.lean.js +++ b/pr-383/assets/guides_use-tia-for-gas.md.c62fd47c.lean.js @@ -1 +1 @@ -import{C as e}from"./chunks/callout.d775988b.js";import{c as l}from"./chunks/constants.3fbf9100.js";import{o as t,c,k as s,O as r,t as p,l as o,a,X as n}from"./chunks/framework.be0a7370.js";const C=n("",6),y={class:"tip custom-block"},D=s("p",{class:"custom-block-title"},"TIP",-1),i=s("h2",{id:"dependencies",tabindex:"-1"},[a("๐Ÿ› ๏ธ Dependencies "),s("a",{class:"header-anchor",href:"#dependencies","aria-label":'Permalink to "๐Ÿ› ๏ธ Dependencies {#dependencies}"'},"โ€‹")],-1),A=s("p",null,[a("Rollkit uses the "),s("a",{href:"https://go.dev/dl/",target:"_blank",rel:"noreferrer"},"Go programming language"),a(". Here's how to install it:")],-1),d=s("p",null,[s("strong",null,"Linux or macOS"),a(": Run the provided script:")],-1),u={class:"language-bash"},E=s("button",{title:"Copy Code",class:"copy"},null,-1),h=s("span",{class:"lang"},"bash",-1),F={class:"shiki material-theme-palenight"},g={class:"line"},m=n("",12),b={style:{color:"#C3E88D"}},B=s("strong",null,"Windows",-1),_=["href"],k=s("h2",{id:"running-local-da",tabindex:"-1"},[a("๐ŸŒ Running a Local DA Network "),s("a",{class:"header-anchor",href:"#running-local-da","aria-label":'Permalink to "๐ŸŒ Running a Local DA Network {#running-local-da}"'},"โ€‹")],-1),v=s("p",null,"Learn to run a local DA network, designed for educational purposes, on your machine.",-1),f=s("p",null,"To set up a local DA network node:",-1),q={class:"language-bash"},I=s("button",{title:"Copy Code",class:"copy"},null,-1),T=s("span",{class:"lang"},"bash",-1),P={class:"shiki material-theme-palenight"},w={class:"line"},N=n("",19),x={style:{color:"#C3E88D"}},S=s("span",{style:{color:"#89DDFF"}},")",-1),M=n("",47),$=JSON.parse('{"title":"How to use IBC token (TIA) as gas token in your rollup","description":"Build a sovereign rollup using Rollkit CLI and a local DA network, with TIA as the gas token.","frontmatter":{"description":"Build a sovereign rollup using Rollkit CLI and a local DA network, with TIA as the gas token.","head":[["meta",{"name":"og:title","content":"How to use IBC token (TIA) as gas token in your rollup | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/use-tia-for-gas.md","filePath":"guides/use-tia-for-gas.md","lastUpdated":1717671233000}'),O={name:"guides/use-tia-for-gas.md"},Y=Object.assign(O,{setup(H){return(j,L)=>(t(),c("div",null,[C,s("div",y,[D,r(e)]),i,A,s("ul",null,[s("li",null,[d,s("div",u,[E,h,s("pre",F,[s("code",null,[s("span",g,[m,s("span",b,p(o(l).golangVersion),1)])])])])])]),s("ul",null,[s("li",null,[B,a(": Download and execute the "),s("a",{href:`https://go.dev/dl/go${o(l).golangVersion}.windows-amd64.msi`},"installer",8,_),a(".")])]),k,v,f,s("div",q,[I,T,s("pre",P,[s("code",null,[s("span",w,[N,s("span",x,p(o(l).localDALatestTag),1),S])])])]),M]))}});export{$ as __pageData,Y as default}; +import{C as e}from"./chunks/callout.d775988b.js";import{c as l}from"./chunks/constants.6a6fd4fb.js";import{o as t,c,k as s,O as r,t as p,l as o,a,X as n}from"./chunks/framework.be0a7370.js";const C=n("",6),y={class:"tip custom-block"},D=s("p",{class:"custom-block-title"},"TIP",-1),i=s("h2",{id:"dependencies",tabindex:"-1"},[a("๐Ÿ› ๏ธ Dependencies "),s("a",{class:"header-anchor",href:"#dependencies","aria-label":'Permalink to "๐Ÿ› ๏ธ Dependencies {#dependencies}"'},"โ€‹")],-1),A=s("p",null,[a("Rollkit uses the "),s("a",{href:"https://go.dev/dl/",target:"_blank",rel:"noreferrer"},"Go programming language"),a(". Here's how to install it:")],-1),d=s("p",null,[s("strong",null,"Linux or macOS"),a(": Run the provided script:")],-1),u={class:"language-bash"},E=s("button",{title:"Copy Code",class:"copy"},null,-1),h=s("span",{class:"lang"},"bash",-1),F={class:"shiki material-theme-palenight"},g={class:"line"},m=n("",12),b={style:{color:"#C3E88D"}},B=s("strong",null,"Windows",-1),_=["href"],k=s("h2",{id:"running-local-da",tabindex:"-1"},[a("๐ŸŒ Running a Local DA Network "),s("a",{class:"header-anchor",href:"#running-local-da","aria-label":'Permalink to "๐ŸŒ Running a Local DA Network {#running-local-da}"'},"โ€‹")],-1),v=s("p",null,"Learn to run a local DA network, designed for educational purposes, on your machine.",-1),f=s("p",null,"To set up a local DA network node:",-1),q={class:"language-bash"},I=s("button",{title:"Copy Code",class:"copy"},null,-1),T=s("span",{class:"lang"},"bash",-1),P={class:"shiki material-theme-palenight"},w={class:"line"},N=n("",19),x={style:{color:"#C3E88D"}},S=s("span",{style:{color:"#89DDFF"}},")",-1),M=n("",47),$=JSON.parse('{"title":"How to use IBC token (TIA) as gas token in your rollup","description":"Build a sovereign rollup using Rollkit CLI and a local DA network, with TIA as the gas token.","frontmatter":{"description":"Build a sovereign rollup using Rollkit CLI and a local DA network, with TIA as the gas token.","head":[["meta",{"name":"og:title","content":"How to use IBC token (TIA) as gas token in your rollup | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/use-tia-for-gas.md","filePath":"guides/use-tia-for-gas.md","lastUpdated":1717768398000}'),O={name:"guides/use-tia-for-gas.md"},Y=Object.assign(O,{setup(H){return(j,L)=>(t(),c("div",null,[C,s("div",y,[D,r(e)]),i,A,s("ul",null,[s("li",null,[d,s("div",u,[E,h,s("pre",F,[s("code",null,[s("span",g,[m,s("span",b,p(o(l).golangVersion),1)])])])])])]),s("ul",null,[s("li",null,[B,a(": Download and execute the "),s("a",{href:`https://go.dev/dl/go${o(l).golangVersion}.windows-amd64.msi`},"installer",8,_),a(".")])]),k,v,f,s("div",q,[I,T,s("pre",P,[s("code",null,[s("span",w,[N,s("span",x,p(o(l).localDALatestTag),1),S])])])]),M]))}});export{$ as __pageData,Y as default}; diff --git a/pr-383/assets/guides_zkml.md.f27a520c.js b/pr-383/assets/guides_zkml.md.5dd6d1ec.js similarity index 99% rename from pr-383/assets/guides_zkml.md.f27a520c.js rename to pr-383/assets/guides_zkml.md.5dd6d1ec.js index 31af85d10..3cc89d6f7 100644 --- a/pr-383/assets/guides_zkml.md.f27a520c.js +++ b/pr-383/assets/guides_zkml.md.5dd6d1ec.js @@ -1,4 +1,4 @@ -import{_ as s,o as a,c as n,X as o}from"./chunks/framework.be0a7370.js";const A=JSON.parse('{"title":"zkML Rollup Tutorial with Sindri","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"zkML Rollup Tutorial with Sindri | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/zkml.md","filePath":"guides/zkml.md","lastUpdated":1717671233000}'),l={name:"guides/zkml.md"},e=o(`

zkML Rollup Tutorial with Sindri โ€‹

Introduction - Code Once, Verify Anywhere โ€‹

This guide will show you how to build verifiable machine learning inference into your Rollkit rollup using zero-knowledge proofs generated on Sindri. The rollup will rely on a local Celestia devnet for consensus and ensuring data availability.

We will focus on using a ZK circuit that incorporates a compact deep neural network model to enable verifiable ML inference. In this guide, we will deploy the circuit on Sindri, obtain a smart contract verifier (automatically generated by Sindri) for that circuit, deploy it on Rollkit, create a proof of ML inference on Sindri, and verify the proof on-chain.

This approach not only secures the verification process of machine learning models, but also leverages the decentralized security and scalability of Celestia's architecture.

Prerequisites โ€‹

Setting Up the Polaris EVM using Rollkit โ€‹

This walkthrough assumes you started the Polaris EVM using Rollkit and should be interpreted as a direct continuation of this Polaris EVM and Rollkit guide.

Installing the Sindri Python SDK โ€‹

Because we're working with ML, we're going to build with Sindri's Python SDK because Python is widely used in ML development. The Sindri Python SDK Quickstart Guide contains installation instructions and a high-level walkthrough of the functionality of this package, but the following will suffice if you have pip installed:

bash
pip install sindri

Deploying and Proving a Cool zkML Circuit to Sindri โ€‹

For this tutorial, we'll be working with a pre-built zkML circuit built by Sindri. For a more in-depth description of this circuit and its corresponding ML model's behavior and design, please see here.

Clone โ€‹

Clone the Sindri Resources GitHub repo.

bash
cd $HOME
+import{_ as s,o as a,c as n,X as o}from"./chunks/framework.be0a7370.js";const A=JSON.parse('{"title":"zkML Rollup Tutorial with Sindri","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"zkML Rollup Tutorial with Sindri | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/zkml.md","filePath":"guides/zkml.md","lastUpdated":1717768398000}'),l={name:"guides/zkml.md"},e=o(`

zkML Rollup Tutorial with Sindri โ€‹

Introduction - Code Once, Verify Anywhere โ€‹

This guide will show you how to build verifiable machine learning inference into your Rollkit rollup using zero-knowledge proofs generated on Sindri. The rollup will rely on a local Celestia devnet for consensus and ensuring data availability.

We will focus on using a ZK circuit that incorporates a compact deep neural network model to enable verifiable ML inference. In this guide, we will deploy the circuit on Sindri, obtain a smart contract verifier (automatically generated by Sindri) for that circuit, deploy it on Rollkit, create a proof of ML inference on Sindri, and verify the proof on-chain.

This approach not only secures the verification process of machine learning models, but also leverages the decentralized security and scalability of Celestia's architecture.

Prerequisites โ€‹

Setting Up the Polaris EVM using Rollkit โ€‹

This walkthrough assumes you started the Polaris EVM using Rollkit and should be interpreted as a direct continuation of this Polaris EVM and Rollkit guide.

Installing the Sindri Python SDK โ€‹

Because we're working with ML, we're going to build with Sindri's Python SDK because Python is widely used in ML development. The Sindri Python SDK Quickstart Guide contains installation instructions and a high-level walkthrough of the functionality of this package, but the following will suffice if you have pip installed:

bash
pip install sindri

Deploying and Proving a Cool zkML Circuit to Sindri โ€‹

For this tutorial, we'll be working with a pre-built zkML circuit built by Sindri. For a more in-depth description of this circuit and its corresponding ML model's behavior and design, please see here.

Clone โ€‹

Clone the Sindri Resources GitHub repo.

bash
cd $HOME
 git clone https://github.com/Sindri-Labs/sindri-resources.git

Navigate to the food_ml circuit tutorial directory.

bash
cd sindri-resources/circuit_tutorials/circom/food_ml/

Here, you will find a handful of files. The circuit/ directory contains the circuit code that we will upload to Sindri. The circuit/sindri.json file is the Sindri manifest for your upload. Within it, you can modify the circuit's "name" value to whatever you like.

Modify โ€‹

Open the compile_and_prove.py script and append the following lines to the very bottom.

python
# Obtain smart contract verifier for our circuit and save it to a file
 smart_contract_code: str = sindri.get_circuit_smart_contract_verifier(circuit_id)
 verifier_code_file: str = "Verifier.sol"
diff --git a/pr-383/assets/guides_zkml.md.f27a520c.lean.js b/pr-383/assets/guides_zkml.md.5dd6d1ec.lean.js
similarity index 88%
rename from pr-383/assets/guides_zkml.md.f27a520c.lean.js
rename to pr-383/assets/guides_zkml.md.5dd6d1ec.lean.js
index 809a80eb5..9aa1e447c 100644
--- a/pr-383/assets/guides_zkml.md.f27a520c.lean.js
+++ b/pr-383/assets/guides_zkml.md.5dd6d1ec.lean.js
@@ -1 +1 @@
-import{_ as s,o as a,c as n,X as o}from"./chunks/framework.be0a7370.js";const A=JSON.parse('{"title":"zkML Rollup Tutorial with Sindri","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"zkML Rollup Tutorial with Sindri | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/zkml.md","filePath":"guides/zkml.md","lastUpdated":1717671233000}'),l={name:"guides/zkml.md"},e=o("",59),t=[e];function p(r,c,i,y,d,C){return a(),n("div",null,t)}const u=s(l,[["render",p]]);export{A as __pageData,u as default};
+import{_ as s,o as a,c as n,X as o}from"./chunks/framework.be0a7370.js";const A=JSON.parse('{"title":"zkML Rollup Tutorial with Sindri","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"zkML Rollup Tutorial with Sindri | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"guides/zkml.md","filePath":"guides/zkml.md","lastUpdated":1717768398000}'),l={name:"guides/zkml.md"},e=o("",59),t=[e];function p(r,c,i,y,d,C){return a(),n("div",null,t)}const u=s(l,[["render",p]]);export{A as __pageData,u as default};
diff --git a/pr-383/assets/index.md.db7783e0.js b/pr-383/assets/index.md.1f1d03f9.js
similarity index 95%
rename from pr-383/assets/index.md.db7783e0.js
rename to pr-383/assets/index.md.1f1d03f9.js
index 131e7e6af..c2b32bd60 100644
--- a/pr-383/assets/index.md.db7783e0.js
+++ b/pr-383/assets/index.md.1f1d03f9.js
@@ -1 +1 @@
-import{_ as e,o as t,c as o}from"./chunks/framework.be0a7370.js";const m=JSON.parse('{"title":"","titleTemplate":":title","description":"","frontmatter":{"layout":"home","titleTemplate":":title","hero":{"name":"Rollkit","text":"The first sovereign rollup framework","tagline":"Launch a sovereign, customizable blockchain as easily as a smart contract","image":{"src":"/img/logo-big.svg","alt":"Rollkit"},"actions":[{"theme":"brand","text":"Quick start","link":"/tutorials/quick-start"},{"theme":"alt","text":"Introduction","link":"/learn/intro"}]},"features":[{"title":"Build with the Best","details":"Utilize all the existing powerful tooling in the Cosmos ecosystem including IBC, ABCI++, and CometBFT RPC equivalency.","link":"/learn/about#why-rollkit","icon":"โœจ"},{"title":"Optimize for your needs","details":"Take full advantage of modularity by optimizing your rollup to your needs. Tailor your block production. Choose your VM. Pick your DA layer.","link":"/learn/stack","icon":"โš™๏ธ"},{"title":"Take Control","details":"Retain the ability to upgrade via hard forks. Break free of offchain councils holding upgrade keys. Allow your community to be sovereign.","link":"/learn/intro","icon":"๐ŸŽฎ"}],"head":[["meta",{"name":"og:title","content":"Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"index.md","filePath":"index.md","lastUpdated":1717671233000}'),i={name:"index.md"};function a(l,n,r,s,c,d){return t(),o("div")}const k=e(i,[["render",a]]);export{m as __pageData,k as default};
+import{_ as e,o as t,c as o}from"./chunks/framework.be0a7370.js";const m=JSON.parse('{"title":"","titleTemplate":":title","description":"","frontmatter":{"layout":"home","titleTemplate":":title","hero":{"name":"Rollkit","text":"The first sovereign rollup framework","tagline":"Launch a sovereign, customizable blockchain as easily as a smart contract","image":{"src":"/img/logo-big.svg","alt":"Rollkit"},"actions":[{"theme":"brand","text":"Quick start","link":"/tutorials/quick-start"},{"theme":"alt","text":"Introduction","link":"/learn/intro"}]},"features":[{"title":"Build with the Best","details":"Utilize all the existing powerful tooling in the Cosmos ecosystem including IBC, ABCI++, and CometBFT RPC equivalency.","link":"/learn/about#why-rollkit","icon":"โœจ"},{"title":"Optimize for your needs","details":"Take full advantage of modularity by optimizing your rollup to your needs. Tailor your block production. Choose your VM. Pick your DA layer.","link":"/learn/stack","icon":"โš™๏ธ"},{"title":"Take Control","details":"Retain the ability to upgrade via hard forks. Break free of offchain councils holding upgrade keys. Allow your community to be sovereign.","link":"/learn/intro","icon":"๐ŸŽฎ"}],"head":[["meta",{"name":"og:title","content":"Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"index.md","filePath":"index.md","lastUpdated":1717768398000}'),i={name:"index.md"};function a(l,n,r,s,c,d){return t(),o("div")}const k=e(i,[["render",a]]);export{m as __pageData,k as default};
diff --git a/pr-383/assets/index.md.db7783e0.lean.js b/pr-383/assets/index.md.1f1d03f9.lean.js
similarity index 95%
rename from pr-383/assets/index.md.db7783e0.lean.js
rename to pr-383/assets/index.md.1f1d03f9.lean.js
index 131e7e6af..c2b32bd60 100644
--- a/pr-383/assets/index.md.db7783e0.lean.js
+++ b/pr-383/assets/index.md.1f1d03f9.lean.js
@@ -1 +1 @@
-import{_ as e,o as t,c as o}from"./chunks/framework.be0a7370.js";const m=JSON.parse('{"title":"","titleTemplate":":title","description":"","frontmatter":{"layout":"home","titleTemplate":":title","hero":{"name":"Rollkit","text":"The first sovereign rollup framework","tagline":"Launch a sovereign, customizable blockchain as easily as a smart contract","image":{"src":"/img/logo-big.svg","alt":"Rollkit"},"actions":[{"theme":"brand","text":"Quick start","link":"/tutorials/quick-start"},{"theme":"alt","text":"Introduction","link":"/learn/intro"}]},"features":[{"title":"Build with the Best","details":"Utilize all the existing powerful tooling in the Cosmos ecosystem including IBC, ABCI++, and CometBFT RPC equivalency.","link":"/learn/about#why-rollkit","icon":"โœจ"},{"title":"Optimize for your needs","details":"Take full advantage of modularity by optimizing your rollup to your needs. Tailor your block production. Choose your VM. Pick your DA layer.","link":"/learn/stack","icon":"โš™๏ธ"},{"title":"Take Control","details":"Retain the ability to upgrade via hard forks. Break free of offchain councils holding upgrade keys. Allow your community to be sovereign.","link":"/learn/intro","icon":"๐ŸŽฎ"}],"head":[["meta",{"name":"og:title","content":"Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"index.md","filePath":"index.md","lastUpdated":1717671233000}'),i={name:"index.md"};function a(l,n,r,s,c,d){return t(),o("div")}const k=e(i,[["render",a]]);export{m as __pageData,k as default};
+import{_ as e,o as t,c as o}from"./chunks/framework.be0a7370.js";const m=JSON.parse('{"title":"","titleTemplate":":title","description":"","frontmatter":{"layout":"home","titleTemplate":":title","hero":{"name":"Rollkit","text":"The first sovereign rollup framework","tagline":"Launch a sovereign, customizable blockchain as easily as a smart contract","image":{"src":"/img/logo-big.svg","alt":"Rollkit"},"actions":[{"theme":"brand","text":"Quick start","link":"/tutorials/quick-start"},{"theme":"alt","text":"Introduction","link":"/learn/intro"}]},"features":[{"title":"Build with the Best","details":"Utilize all the existing powerful tooling in the Cosmos ecosystem including IBC, ABCI++, and CometBFT RPC equivalency.","link":"/learn/about#why-rollkit","icon":"โœจ"},{"title":"Optimize for your needs","details":"Take full advantage of modularity by optimizing your rollup to your needs. Tailor your block production. Choose your VM. Pick your DA layer.","link":"/learn/stack","icon":"โš™๏ธ"},{"title":"Take Control","details":"Retain the ability to upgrade via hard forks. Break free of offchain councils holding upgrade keys. Allow your community to be sovereign.","link":"/learn/intro","icon":"๐ŸŽฎ"}],"head":[["meta",{"name":"og:title","content":"Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"index.md","filePath":"index.md","lastUpdated":1717768398000}'),i={name:"index.md"};function a(l,n,r,s,c,d){return t(),o("div")}const k=e(i,[["render",a]]);export{m as __pageData,k as default};
diff --git a/pr-383/assets/learn_about.md.eab2b488.js b/pr-383/assets/learn_about.md.04dc482d.js
similarity index 99%
rename from pr-383/assets/learn_about.md.eab2b488.js
rename to pr-383/assets/learn_about.md.04dc482d.js
index 810db5d50..5294b57c8 100644
--- a/pr-383/assets/learn_about.md.eab2b488.js
+++ b/pr-383/assets/learn_about.md.04dc482d.js
@@ -1 +1 @@
-import{_ as e,o as t,c as a,X as o}from"./chunks/framework.be0a7370.js";const y=JSON.parse('{"title":"About Rollkit","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"About Rollkit | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"learn/about.md","filePath":"learn/about.md","lastUpdated":1717671233000}'),i={name:"learn/about.md"},l=o('

About Rollkit โ€‹

Our mission is allow anyone to launch their own sovereign, customizable blockchain as easily as a smart contract by utilizing the shared security of a modular data availability network.

TIP

In order to use Rollkit, it's important to have some familiarity with Cosmos SDK. You can get up to speed on Cosmos SDK by visiting their official documentation page.

If you're familiar with Rollkit, you may want to skip to the tutorials section.

What is Rollkit? โ€‹

Rollkit is a sovereign rollup framework that gives developers the freedom to deploy rollups throughout the modular stack, opening new possibilities for rapid experimentation and innovation.

Read more on the Celestia blog to learn more about the concept of sovereign rollups.

Rollkit is an open-source framework. It features a modular node that can run rollups and exposes an ABCI-compatible client interface, which can be used as a substitute for CometBFT in any ABCI-compatible blockchain application.

Rollkit uses data availability (DA) layers by having a unified client interface which can be implemented for use with different DA networks, such as Celestia.

Our goal is to empower developers to quickly innovate and create new classes of rollups with minimal trade-offs, and to make deploying a new chain as easy as deploying a smart contract.

What problems is Rollkit solving? โ€‹

1. Scalability and customizability โ€‹

Deploying your decentralized application as a smart contract on a shared blockchain has many limitations. Your smart contract has to share computational resources with every other application, so scalability is limited.

Plus, you're restricted to the execution environment that the shared blockchain uses, so developer flexibility is limited.

2. Security and time to market โ€‹

Deploying a new chain might sound like the perfect solution for the problems listed above. While it's somewhat true, deploying a new layer 1 chain presents a complex set of challenges and trade-offs for developers looking to build blockchain products.

Deploying a new layer 1 requires significant resources, including time, capital, and expertise, which can be a barrier to entry for some developers.

In order to secure the network, developers must bootstrap a sufficiently secure set of validators, incurring the overhead of managing a full consensus network. This requires paying validators with inflationary tokens, putting the business sustainability of the network at risk. A strong community and network effect are also critical for success, but can be challenging to achieve as the network must gain widespread adoption to be secure and valuable.

In a potential future with millions of chains, it's unlikely all of those chains will be able to sustainably attract a sufficiently secure and decentralized validator set.

Why Rollkit? โ€‹

Rollkit solves the challenges encountered during the deployment of a smart contract or a new layer 1, by minimizing these tradeoffs through the implementation of rollup chains (rollups).

With Rollkit, developers can benefit from:

  • Shared security: Rollups inherit security from a data availability layer, by posting blocks to it. Rollups reduce the trust assumptions placed on rollup sequencers by allowing full nodes to download and verify the transactions in the blocks posted by the sequencer. For optimistic or zk rollups, in case of fraudulent blocks, full nodes can generate fraud or zk proofs, which they can share with the rest of the network, including light nodes. Our roadmap includes the ability for light clients to receive and verify proofs, so that everyday users can enjoy high security guarantees.

  • Scalability: Rollkit rollups are deployed on specialized data availability layers like Celestia, which directly leverages the scalability of the DA layer. Additionally, rollup transactions are executed off-chain rather than the data availability layer. This means rollups have their own dedicated computational resources, rather than sharing computational resources with other applications.

  • Customizability: Rollkit is built as an open source modular framework, to make it easier for developers to reuse the four main components and customize their rollups. These components are data availability layers, execution environments, proof systems, and sequencer schemes. The components used by the Rollkit stack are customizable.

  • Faster time to market: Rollkit eliminates the need to bootstrap a validator set, manage a consensus network, incur high economic costs, and face other trade-offs that come with deploying a new layer 1. Rollkit's goal is to make deploying a rollup as easy as it is to deploy a smart contract, cutting the time it takes to bring blockchain products to market from months or even years to just minutes.

  • Sovereignty: Rollkit also enables developers to deploy sovereign rollups for cases where communities require sovereignty.

How can you use Rollkit? โ€‹

As briefly mentioned above, Rollkit could be used in many different ways. From sovereign rollups, to settlement layers, and in the future even to L3s.

Rollup with any execution environment โ€‹

Rollkit gives developers the flexibility to use pre-existing ABCI-compatible state machines or create a custom state machine tailored to their rollup needs. Rollkit does not restrict the use of any specific virtual machine, allowing developers to experiment and bring innovative applications to life.

Sovereign rollup with Cosmos SDK โ€‹

Similarly to how developers utilize the Cosmos SDK to build a sovereign layer 1 chain, the Cosmos SDK could be utilized to create a Rollkit-compatible rollup chain. Cosmos-SDK has great documentation and tooling that developers can leverage to learn.

Another possibility is taking an existing layer 1 built with the Cosmos SDK and deploying it as a Rollkit rollup. This can provide a great opportunity for experimentation and growth.

Build a settlement layer โ€‹

Settlement layers are ideal for developers who want to avoid deploying sovereign rollups. They provide a platform for rollups to verify proofs and resolve disputes. Additionally, they act as a hub for rollups to facilitate trust-minimized token transfers and liquidity sharing between rollups that share the same settlement layer. Think of settlement layers as a special type of execution layer.

When can you use Rollkit? โ€‹

As of today, Rollkit is still in the alpha stage. The framework currently provides a centralized sequencer, an execution interface (ABCI or Cosmos SDK), and a connection to a data availability layer.

We're currently working on implementing many new and exciting features such as light nodes and state fraud proofs.

Head down to the next section to learn more about what's coming for Rollkit. If you're ready to start building, you can skip to the Tutorials section.

Spoiler alert, whichever you choose, it's going to be a great rabbit hole!

',36),r=[l];function s(n,c,h,u,p,d){return t(),a("div",null,r)}const f=e(i,[["render",s]]);export{y as __pageData,f as default}; +import{_ as e,o as t,c as a,X as o}from"./chunks/framework.be0a7370.js";const y=JSON.parse('{"title":"About Rollkit","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"About Rollkit | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"learn/about.md","filePath":"learn/about.md","lastUpdated":1717768398000}'),i={name:"learn/about.md"},l=o('

About Rollkit โ€‹

Our mission is allow anyone to launch their own sovereign, customizable blockchain as easily as a smart contract by utilizing the shared security of a modular data availability network.

TIP

In order to use Rollkit, it's important to have some familiarity with Cosmos SDK. You can get up to speed on Cosmos SDK by visiting their official documentation page.

If you're familiar with Rollkit, you may want to skip to the tutorials section.

What is Rollkit? โ€‹

Rollkit is a sovereign rollup framework that gives developers the freedom to deploy rollups throughout the modular stack, opening new possibilities for rapid experimentation and innovation.

Read more on the Celestia blog to learn more about the concept of sovereign rollups.

Rollkit is an open-source framework. It features a modular node that can run rollups and exposes an ABCI-compatible client interface, which can be used as a substitute for CometBFT in any ABCI-compatible blockchain application.

Rollkit uses data availability (DA) layers by having a unified client interface which can be implemented for use with different DA networks, such as Celestia.

Our goal is to empower developers to quickly innovate and create new classes of rollups with minimal trade-offs, and to make deploying a new chain as easy as deploying a smart contract.

What problems is Rollkit solving? โ€‹

1. Scalability and customizability โ€‹

Deploying your decentralized application as a smart contract on a shared blockchain has many limitations. Your smart contract has to share computational resources with every other application, so scalability is limited.

Plus, you're restricted to the execution environment that the shared blockchain uses, so developer flexibility is limited.

2. Security and time to market โ€‹

Deploying a new chain might sound like the perfect solution for the problems listed above. While it's somewhat true, deploying a new layer 1 chain presents a complex set of challenges and trade-offs for developers looking to build blockchain products.

Deploying a new layer 1 requires significant resources, including time, capital, and expertise, which can be a barrier to entry for some developers.

In order to secure the network, developers must bootstrap a sufficiently secure set of validators, incurring the overhead of managing a full consensus network. This requires paying validators with inflationary tokens, putting the business sustainability of the network at risk. A strong community and network effect are also critical for success, but can be challenging to achieve as the network must gain widespread adoption to be secure and valuable.

In a potential future with millions of chains, it's unlikely all of those chains will be able to sustainably attract a sufficiently secure and decentralized validator set.

Why Rollkit? โ€‹

Rollkit solves the challenges encountered during the deployment of a smart contract or a new layer 1, by minimizing these tradeoffs through the implementation of rollup chains (rollups).

With Rollkit, developers can benefit from:

  • Shared security: Rollups inherit security from a data availability layer, by posting blocks to it. Rollups reduce the trust assumptions placed on rollup sequencers by allowing full nodes to download and verify the transactions in the blocks posted by the sequencer. For optimistic or zk rollups, in case of fraudulent blocks, full nodes can generate fraud or zk proofs, which they can share with the rest of the network, including light nodes. Our roadmap includes the ability for light clients to receive and verify proofs, so that everyday users can enjoy high security guarantees.

  • Scalability: Rollkit rollups are deployed on specialized data availability layers like Celestia, which directly leverages the scalability of the DA layer. Additionally, rollup transactions are executed off-chain rather than the data availability layer. This means rollups have their own dedicated computational resources, rather than sharing computational resources with other applications.

  • Customizability: Rollkit is built as an open source modular framework, to make it easier for developers to reuse the four main components and customize their rollups. These components are data availability layers, execution environments, proof systems, and sequencer schemes. The components used by the Rollkit stack are customizable.

  • Faster time to market: Rollkit eliminates the need to bootstrap a validator set, manage a consensus network, incur high economic costs, and face other trade-offs that come with deploying a new layer 1. Rollkit's goal is to make deploying a rollup as easy as it is to deploy a smart contract, cutting the time it takes to bring blockchain products to market from months or even years to just minutes.

  • Sovereignty: Rollkit also enables developers to deploy sovereign rollups for cases where communities require sovereignty.

How can you use Rollkit? โ€‹

As briefly mentioned above, Rollkit could be used in many different ways. From sovereign rollups, to settlement layers, and in the future even to L3s.

Rollup with any execution environment โ€‹

Rollkit gives developers the flexibility to use pre-existing ABCI-compatible state machines or create a custom state machine tailored to their rollup needs. Rollkit does not restrict the use of any specific virtual machine, allowing developers to experiment and bring innovative applications to life.

Sovereign rollup with Cosmos SDK โ€‹

Similarly to how developers utilize the Cosmos SDK to build a sovereign layer 1 chain, the Cosmos SDK could be utilized to create a Rollkit-compatible rollup chain. Cosmos-SDK has great documentation and tooling that developers can leverage to learn.

Another possibility is taking an existing layer 1 built with the Cosmos SDK and deploying it as a Rollkit rollup. This can provide a great opportunity for experimentation and growth.

Build a settlement layer โ€‹

Settlement layers are ideal for developers who want to avoid deploying sovereign rollups. They provide a platform for rollups to verify proofs and resolve disputes. Additionally, they act as a hub for rollups to facilitate trust-minimized token transfers and liquidity sharing between rollups that share the same settlement layer. Think of settlement layers as a special type of execution layer.

When can you use Rollkit? โ€‹

As of today, Rollkit is still in the alpha stage. The framework currently provides a centralized sequencer, an execution interface (ABCI or Cosmos SDK), and a connection to a data availability layer.

We're currently working on implementing many new and exciting features such as light nodes and state fraud proofs.

Head down to the next section to learn more about what's coming for Rollkit. If you're ready to start building, you can skip to the Tutorials section.

Spoiler alert, whichever you choose, it's going to be a great rabbit hole!

',36),r=[l];function s(n,c,h,u,p,d){return t(),a("div",null,r)}const f=e(i,[["render",s]]);export{y as __pageData,f as default}; diff --git a/pr-383/assets/learn_about.md.eab2b488.lean.js b/pr-383/assets/learn_about.md.04dc482d.lean.js similarity index 87% rename from pr-383/assets/learn_about.md.eab2b488.lean.js rename to pr-383/assets/learn_about.md.04dc482d.lean.js index b8609808c..34a4160e8 100644 --- a/pr-383/assets/learn_about.md.eab2b488.lean.js +++ b/pr-383/assets/learn_about.md.04dc482d.lean.js @@ -1 +1 @@ -import{_ as e,o as t,c as a,X as o}from"./chunks/framework.be0a7370.js";const y=JSON.parse('{"title":"About Rollkit","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"About Rollkit | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"learn/about.md","filePath":"learn/about.md","lastUpdated":1717671233000}'),i={name:"learn/about.md"},l=o("",36),r=[l];function s(n,c,h,u,p,d){return t(),a("div",null,r)}const f=e(i,[["render",s]]);export{y as __pageData,f as default}; +import{_ as e,o as t,c as a,X as o}from"./chunks/framework.be0a7370.js";const y=JSON.parse('{"title":"About Rollkit","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"About Rollkit | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"learn/about.md","filePath":"learn/about.md","lastUpdated":1717768398000}'),i={name:"learn/about.md"},l=o("",36),r=[l];function s(n,c,h,u,p,d){return t(),a("div",null,r)}const f=e(i,[["render",s]]);export{y as __pageData,f as default}; diff --git a/pr-383/assets/learn_building-and-deploying-a-rollup.md.fc0e2943.js b/pr-383/assets/learn_building-and-deploying-a-rollup.md.5a676a18.js similarity index 98% rename from pr-383/assets/learn_building-and-deploying-a-rollup.md.fc0e2943.js rename to pr-383/assets/learn_building-and-deploying-a-rollup.md.5a676a18.js index 0b45bcb39..1656e16ed 100644 --- a/pr-383/assets/learn_building-and-deploying-a-rollup.md.fc0e2943.js +++ b/pr-383/assets/learn_building-and-deploying-a-rollup.md.5a676a18.js @@ -1 +1 @@ -import{_ as e,o as t,c as a,X as l}from"./chunks/framework.be0a7370.js";const m=JSON.parse('{"title":"๐Ÿ—ž๏ธ Building a rollup and testnet deployment","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"๐Ÿ—ž๏ธ Building a rollup and testnet deployment | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"learn/building-and-deploying-a-rollup.md","filePath":"learn/building-and-deploying-a-rollup.md","lastUpdated":1717671233000}'),r={name:"learn/building-and-deploying-a-rollup.md"},o=l('

๐Ÿ—ž๏ธ Building a rollup and testnet deployment โ€‹

The following tutorials will help you get started building Cosmos-SDK and EVM applications that connect to Celestia's data availability (DA) layer via Rollkit to Celestia's Mocha testnet or Arabica devnet. We call those chains Sovereign Rollups.

You can get started with the following tutorials:

1. Beginner โ€‹

2๏ธ. Intermediate โ€‹

3๏ธ. Advanced โ€‹

๐Ÿ’ป Support โ€‹

The tutorials will explore developing with Rollkit, which is still in Alpha stage. If you run into bugs, please write a GitHub issue or let us know in our Telegram. Furthermore, while Rollkit allows you to build sovereign rollups on Celestia, it currently does not support fraud proofs yet and is therefore running in "pessimistic" mode, where nodes would need to re-execute the transactions to check the validity of the chain (i.e. a full node). Furthermore, Rollkit currently only supports a single sequencer.

',11),i=[o];function n(s,d,u,p,c,h){return t(),a("div",null,i)}const f=e(r,[["render",n]]);export{m as __pageData,f as default}; +import{_ as e,o as t,c as a,X as l}from"./chunks/framework.be0a7370.js";const m=JSON.parse('{"title":"๐Ÿ—ž๏ธ Building a rollup and testnet deployment","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"๐Ÿ—ž๏ธ Building a rollup and testnet deployment | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"learn/building-and-deploying-a-rollup.md","filePath":"learn/building-and-deploying-a-rollup.md","lastUpdated":1717768398000}'),r={name:"learn/building-and-deploying-a-rollup.md"},o=l('

๐Ÿ—ž๏ธ Building a rollup and testnet deployment โ€‹

The following tutorials will help you get started building Cosmos-SDK and EVM applications that connect to Celestia's data availability (DA) layer via Rollkit to Celestia's Mocha testnet or Arabica devnet. We call those chains Sovereign Rollups.

You can get started with the following tutorials:

1. Beginner โ€‹

2๏ธ. Intermediate โ€‹

3๏ธ. Advanced โ€‹

๐Ÿ’ป Support โ€‹

The tutorials will explore developing with Rollkit, which is still in Alpha stage. If you run into bugs, please write a GitHub issue or let us know in our Telegram. Furthermore, while Rollkit allows you to build sovereign rollups on Celestia, it currently does not support fraud proofs yet and is therefore running in "pessimistic" mode, where nodes would need to re-execute the transactions to check the validity of the chain (i.e. a full node). Furthermore, Rollkit currently only supports a single sequencer.

',11),i=[o];function n(s,d,u,p,c,h){return t(),a("div",null,i)}const f=e(r,[["render",n]]);export{m as __pageData,f as default}; diff --git a/pr-383/assets/learn_building-and-deploying-a-rollup.md.fc0e2943.lean.js b/pr-383/assets/learn_building-and-deploying-a-rollup.md.5a676a18.lean.js similarity index 90% rename from pr-383/assets/learn_building-and-deploying-a-rollup.md.fc0e2943.lean.js rename to pr-383/assets/learn_building-and-deploying-a-rollup.md.5a676a18.lean.js index 24e42bd00..6925a61c0 100644 --- a/pr-383/assets/learn_building-and-deploying-a-rollup.md.fc0e2943.lean.js +++ b/pr-383/assets/learn_building-and-deploying-a-rollup.md.5a676a18.lean.js @@ -1 +1 @@ -import{_ as e,o as t,c as a,X as l}from"./chunks/framework.be0a7370.js";const m=JSON.parse('{"title":"๐Ÿ—ž๏ธ Building a rollup and testnet deployment","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"๐Ÿ—ž๏ธ Building a rollup and testnet deployment | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"learn/building-and-deploying-a-rollup.md","filePath":"learn/building-and-deploying-a-rollup.md","lastUpdated":1717671233000}'),r={name:"learn/building-and-deploying-a-rollup.md"},o=l("",11),i=[o];function n(s,d,u,p,c,h){return t(),a("div",null,i)}const f=e(r,[["render",n]]);export{m as __pageData,f as default}; +import{_ as e,o as t,c as a,X as l}from"./chunks/framework.be0a7370.js";const m=JSON.parse('{"title":"๐Ÿ—ž๏ธ Building a rollup and testnet deployment","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"๐Ÿ—ž๏ธ Building a rollup and testnet deployment | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"learn/building-and-deploying-a-rollup.md","filePath":"learn/building-and-deploying-a-rollup.md","lastUpdated":1717768398000}'),r={name:"learn/building-and-deploying-a-rollup.md"},o=l("",11),i=[o];function n(s,d,u,p,c,h){return t(),a("div",null,i)}const f=e(r,[["render",n]]);export{m as __pageData,f as default}; diff --git a/pr-383/assets/learn_intro.md.127f8fa5.js b/pr-383/assets/learn_intro.md.603d0257.js similarity index 95% rename from pr-383/assets/learn_intro.md.127f8fa5.js rename to pr-383/assets/learn_intro.md.603d0257.js index 4a1a04eea..bde208881 100644 --- a/pr-383/assets/learn_intro.md.127f8fa5.js +++ b/pr-383/assets/learn_intro.md.603d0257.js @@ -1 +1 @@ -import{_ as e,o,c as a,k as t,a as i}from"./chunks/framework.be0a7370.js";const g=JSON.parse('{"title":"Introduction","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Introduction | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"learn/intro.md","filePath":"learn/intro.md","lastUpdated":1717671233000}'),n={name:"learn/intro.md"},r=t("h1",{id:"introduction",tabindex:"-1"},[i("Introduction "),t("a",{class:"header-anchor",href:"#introduction","aria-label":'Permalink to "Introduction"'},"โ€‹")],-1),s=t("p",null,"Welcome to the Rollkit docs. We're happy you made it here! Our mission is to allow anyone to launch their own sovereign, customizable blockchain as easily as a smart contract by utilizing the shared security of a modular data availability network.",-1),l=t("p",null,"Rollkit is the first sovereign rollup framework.",-1),c=t("p",null,"Our mission is allow anyone to launch their own sovereign, customizable blockchain as easily as a smart contract by utilizing the shared security of a modular data availability network.",-1),d=t("p",null,"We're setting the bar high for developers' flexibility and ability to customize rollups however they see fit.",-1),h=[r,s,l,c,d];function u(m,_,p,f,y,b){return o(),a("div",null,h)}const v=e(n,[["render",u]]);export{g as __pageData,v as default}; +import{_ as e,o,c as a,k as t,a as i}from"./chunks/framework.be0a7370.js";const g=JSON.parse('{"title":"Introduction","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Introduction | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"learn/intro.md","filePath":"learn/intro.md","lastUpdated":1717768398000}'),n={name:"learn/intro.md"},r=t("h1",{id:"introduction",tabindex:"-1"},[i("Introduction "),t("a",{class:"header-anchor",href:"#introduction","aria-label":'Permalink to "Introduction"'},"โ€‹")],-1),s=t("p",null,"Welcome to the Rollkit docs. We're happy you made it here! Our mission is to allow anyone to launch their own sovereign, customizable blockchain as easily as a smart contract by utilizing the shared security of a modular data availability network.",-1),l=t("p",null,"Rollkit is the first sovereign rollup framework.",-1),c=t("p",null,"Our mission is allow anyone to launch their own sovereign, customizable blockchain as easily as a smart contract by utilizing the shared security of a modular data availability network.",-1),d=t("p",null,"We're setting the bar high for developers' flexibility and ability to customize rollups however they see fit.",-1),h=[r,s,l,c,d];function u(m,_,p,f,y,b){return o(),a("div",null,h)}const v=e(n,[["render",u]]);export{g as __pageData,v as default}; diff --git a/pr-383/assets/learn_intro.md.127f8fa5.lean.js b/pr-383/assets/learn_intro.md.603d0257.lean.js similarity index 95% rename from pr-383/assets/learn_intro.md.127f8fa5.lean.js rename to pr-383/assets/learn_intro.md.603d0257.lean.js index 4a1a04eea..bde208881 100644 --- a/pr-383/assets/learn_intro.md.127f8fa5.lean.js +++ b/pr-383/assets/learn_intro.md.603d0257.lean.js @@ -1 +1 @@ -import{_ as e,o,c as a,k as t,a as i}from"./chunks/framework.be0a7370.js";const g=JSON.parse('{"title":"Introduction","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Introduction | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"learn/intro.md","filePath":"learn/intro.md","lastUpdated":1717671233000}'),n={name:"learn/intro.md"},r=t("h1",{id:"introduction",tabindex:"-1"},[i("Introduction "),t("a",{class:"header-anchor",href:"#introduction","aria-label":'Permalink to "Introduction"'},"โ€‹")],-1),s=t("p",null,"Welcome to the Rollkit docs. We're happy you made it here! Our mission is to allow anyone to launch their own sovereign, customizable blockchain as easily as a smart contract by utilizing the shared security of a modular data availability network.",-1),l=t("p",null,"Rollkit is the first sovereign rollup framework.",-1),c=t("p",null,"Our mission is allow anyone to launch their own sovereign, customizable blockchain as easily as a smart contract by utilizing the shared security of a modular data availability network.",-1),d=t("p",null,"We're setting the bar high for developers' flexibility and ability to customize rollups however they see fit.",-1),h=[r,s,l,c,d];function u(m,_,p,f,y,b){return o(),a("div",null,h)}const v=e(n,[["render",u]]);export{g as __pageData,v as default}; +import{_ as e,o,c as a,k as t,a as i}from"./chunks/framework.be0a7370.js";const g=JSON.parse('{"title":"Introduction","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Introduction | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"learn/intro.md","filePath":"learn/intro.md","lastUpdated":1717768398000}'),n={name:"learn/intro.md"},r=t("h1",{id:"introduction",tabindex:"-1"},[i("Introduction "),t("a",{class:"header-anchor",href:"#introduction","aria-label":'Permalink to "Introduction"'},"โ€‹")],-1),s=t("p",null,"Welcome to the Rollkit docs. We're happy you made it here! Our mission is to allow anyone to launch their own sovereign, customizable blockchain as easily as a smart contract by utilizing the shared security of a modular data availability network.",-1),l=t("p",null,"Rollkit is the first sovereign rollup framework.",-1),c=t("p",null,"Our mission is allow anyone to launch their own sovereign, customizable blockchain as easily as a smart contract by utilizing the shared security of a modular data availability network.",-1),d=t("p",null,"We're setting the bar high for developers' flexibility and ability to customize rollups however they see fit.",-1),h=[r,s,l,c,d];function u(m,_,p,f,y,b){return o(),a("div",null,h)}const v=e(n,[["render",u]]);export{g as __pageData,v as default}; diff --git a/pr-383/assets/learn_specifications.md.a8519675.js b/pr-383/assets/learn_specifications.md.828ea458.js similarity index 94% rename from pr-383/assets/learn_specifications.md.a8519675.js rename to pr-383/assets/learn_specifications.md.828ea458.js index 9aef65614..9ffbaf73c 100644 --- a/pr-383/assets/learn_specifications.md.a8519675.js +++ b/pr-383/assets/learn_specifications.md.828ea458.js @@ -1 +1 @@ -import{_ as i,o as a,c as n,k as e,a as t}from"./chunks/framework.be0a7370.js";const k=JSON.parse('{"title":"Technical specifications","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Technical specifications | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"learn/specifications.md","filePath":"learn/specifications.md","lastUpdated":1717671233000}'),o={name:"learn/specifications.md"},c=e("h1",{id:"technical-specifications",tabindex:"-1"},[t("Technical specifications "),e("a",{class:"header-anchor",href:"#technical-specifications","aria-label":'Permalink to "Technical specifications"'},"โ€‹")],-1),s=e("p",null,[e("a",{href:"https://rollkit.github.io/rollkit/index.html",target:"_blank",rel:"noreferrer"},"Rollkit specifications"),t(" - is comprehensive documentation on the inner components of Rollkit, including data storage, transaction processing, and more. Itโ€™s an essential resource for developers looking to understand, contribute to and leverage the full capabilities of Rollkit.")],-1),r=[c,s];function l(d,p,f,h,m,_){return a(),n("div",null,r)}const g=i(o,[["render",l]]);export{k as __pageData,g as default}; +import{_ as i,o as a,c as n,k as e,a as t}from"./chunks/framework.be0a7370.js";const k=JSON.parse('{"title":"Technical specifications","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Technical specifications | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"learn/specifications.md","filePath":"learn/specifications.md","lastUpdated":1717768398000}'),o={name:"learn/specifications.md"},c=e("h1",{id:"technical-specifications",tabindex:"-1"},[t("Technical specifications "),e("a",{class:"header-anchor",href:"#technical-specifications","aria-label":'Permalink to "Technical specifications"'},"โ€‹")],-1),s=e("p",null,[e("a",{href:"https://rollkit.github.io/rollkit/index.html",target:"_blank",rel:"noreferrer"},"Rollkit specifications"),t(" - is comprehensive documentation on the inner components of Rollkit, including data storage, transaction processing, and more. Itโ€™s an essential resource for developers looking to understand, contribute to and leverage the full capabilities of Rollkit.")],-1),r=[c,s];function l(d,p,f,h,m,_){return a(),n("div",null,r)}const g=i(o,[["render",l]]);export{k as __pageData,g as default}; diff --git a/pr-383/assets/learn_specifications.md.a8519675.lean.js b/pr-383/assets/learn_specifications.md.828ea458.lean.js similarity index 94% rename from pr-383/assets/learn_specifications.md.a8519675.lean.js rename to pr-383/assets/learn_specifications.md.828ea458.lean.js index 9aef65614..9ffbaf73c 100644 --- a/pr-383/assets/learn_specifications.md.a8519675.lean.js +++ b/pr-383/assets/learn_specifications.md.828ea458.lean.js @@ -1 +1 @@ -import{_ as i,o as a,c as n,k as e,a as t}from"./chunks/framework.be0a7370.js";const k=JSON.parse('{"title":"Technical specifications","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Technical specifications | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"learn/specifications.md","filePath":"learn/specifications.md","lastUpdated":1717671233000}'),o={name:"learn/specifications.md"},c=e("h1",{id:"technical-specifications",tabindex:"-1"},[t("Technical specifications "),e("a",{class:"header-anchor",href:"#technical-specifications","aria-label":'Permalink to "Technical specifications"'},"โ€‹")],-1),s=e("p",null,[e("a",{href:"https://rollkit.github.io/rollkit/index.html",target:"_blank",rel:"noreferrer"},"Rollkit specifications"),t(" - is comprehensive documentation on the inner components of Rollkit, including data storage, transaction processing, and more. Itโ€™s an essential resource for developers looking to understand, contribute to and leverage the full capabilities of Rollkit.")],-1),r=[c,s];function l(d,p,f,h,m,_){return a(),n("div",null,r)}const g=i(o,[["render",l]]);export{k as __pageData,g as default}; +import{_ as i,o as a,c as n,k as e,a as t}from"./chunks/framework.be0a7370.js";const k=JSON.parse('{"title":"Technical specifications","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Technical specifications | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"learn/specifications.md","filePath":"learn/specifications.md","lastUpdated":1717768398000}'),o={name:"learn/specifications.md"},c=e("h1",{id:"technical-specifications",tabindex:"-1"},[t("Technical specifications "),e("a",{class:"header-anchor",href:"#technical-specifications","aria-label":'Permalink to "Technical specifications"'},"โ€‹")],-1),s=e("p",null,[e("a",{href:"https://rollkit.github.io/rollkit/index.html",target:"_blank",rel:"noreferrer"},"Rollkit specifications"),t(" - is comprehensive documentation on the inner components of Rollkit, including data storage, transaction processing, and more. Itโ€™s an essential resource for developers looking to understand, contribute to and leverage the full capabilities of Rollkit.")],-1),r=[c,s];function l(d,p,f,h,m,_){return a(),n("div",null,r)}const g=i(o,[["render",l]]);export{k as __pageData,g as default}; diff --git a/pr-383/assets/learn_stack.md.f7713922.js b/pr-383/assets/learn_stack.md.77442c25.js similarity index 99% rename from pr-383/assets/learn_stack.md.f7713922.js rename to pr-383/assets/learn_stack.md.77442c25.js index d50c1c3e8..2a0fc0b16 100644 --- a/pr-383/assets/learn_stack.md.f7713922.js +++ b/pr-383/assets/learn_stack.md.77442c25.js @@ -1 +1 @@ -import{_ as l,K as i,o,c as n,b as s,w as a,a5 as c,k as e,a as t,X as d,O as h}from"./chunks/framework.be0a7370.js";const C=JSON.parse('{"title":"Rollkit stack","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Rollkit stack | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"learn/stack.md","filePath":"learn/stack.md","lastUpdated":1717671233000}'),p={name:"learn/stack.md"},u=e("h1",{id:"rollkit-stack",tabindex:"-1"},[t("Rollkit stack "),e("a",{class:"header-anchor",href:"#rollkit-stack","aria-label":'Permalink to "Rollkit stack"'},"โ€‹")],-1),f=e("p",null,"This page will cover the main components of Rollkit.",-1),m=e("p",null,"Rollup sequencer nodes collect transactions from users, aggregate them into blocks, and post the blocks onto a data availability (DA) layer (such as Celestia) to be ordered and finalized. Full nodes execute and verify rollup blocks, and in the case of an optimistic rollup, propagate fraud proofs when needed. Light clients will receive headers, verify proofs (fraud, zk, etc), and authenticate trust-minimized queries about the state.",-1),g=e("h2",{id:"application-structure",tabindex:"-1"},[t("Application structure "),e("a",{class:"header-anchor",href:"#application-structure","aria-label":'Permalink to "Application structure"'},"โ€‹")],-1),b=d('

ABCI interface โ€‹

Rollkit is a fully functional Application BlockChain Interface (ABCI) client software. It can be used as a CometBFT replacement for any ABCI application. Thanks to this compatibility, you can use tools like abci-cli to test and debug your rollup.

Cosmos SDK โ€‹

Would you like to change your Cosmos SDK application to a Rollkit rollup? No problem! You need to replace the Cosmos SDK Go dependency with a Rollkit-enabled version, which can be found at the rollkit/cosmos-sdk repository.

Note the rollkit/cosmos-sdk repository follows the release branches of upstream Cosmos SDK, but with the bonus of using Rollkit instead of CometBFT as the ABCI client.

And don't forget to replace another dependency, CometBFT, with rollkit/cometbft, which has an enhanced ABCI interface that includes the methods needed for state fraud proofs.

Data availability โ€‹

Data availability (DA) can be accessed using generic interfaces. This design allows for seamless integration with any DA layer. New implementations can be plugged in programmatically, without a need to fork Rollkit.

The DataAvailabilityLayerClient interface includes essential lifecycle methods (Init, Start, Stop) as well as data availability methods (SubmitBlocks, RetrieveBlocks).

The BlockRetriever interface serves to enable syncing of full nodes from the data availability layer. It's important to keep in mind that there is no direct correlation between the DA layer block height and the rollup height. Each DA layer block may contain an arbitrary number of rollup blocks.

Celestia โ€‹

Celestia is a prominent example of a data availability integration implemented for Rollkit. It's using the Celestia Node API via the rollkit/celestia-da package. To deploy a Rollkit rollup on Celestia you also have to run a Celestia light node.

New DA layer integrations can be added by using the go-da interface.

Node components โ€‹

Mempool โ€‹

The mempool is inspired by the CometBFT mempool. By default, transactions are handled in a First Come, First Served (FCFS) manner. Ordering of transactions can be implemented on the application level; currently this is possible by returning a priority on CheckTx, and once we support ABCI++ it is also possible via PrepareProposal and the application mempool.

Block manager โ€‹

The block manager contains routines AggregationLoop, RetrieveLoop, and SyncLoop that communicate through Go channels. These Go routines are ran when a Rollkit node starts up (OnStart). Only the sequencer nodes run AggregationLoop which controls the frequency of block production for a rollup with a timer as per the BlockTime in BlockManager.

All nodes run SyncLoop which looks for the following operations:

  • Receive block headers: block headers are received through a channel HeaderInCh and Rollkit nodes attempt to verify the block with the corresponding block data.
  • Receive block data: block bodies are received through a channel blockInCh and Rollkit nodes attempt to verify the block.
  • Signal RetrieveLoop with timer as per the DABlockTime in BlockManager.

All nodes also run RetrieveLoop which is responsible for interacting with the data availability layer. It checks the last updated DAHeight to retrieve a block with timer DABlockTime signaled by SyncLoop. Note that the start height of the DA layer for the rollup, DAStartHeight, is configurable in BlockManager.

RPC โ€‹

Rollkit's RPC fully implements the CometBFT RPC interfaces and APIs for querying:

  • Information about the rollup node: information such as node's health, status, and network info.
  • The rollup blockchain: getting information about the rollup blockchain such as blocks and block headers.
  • The rollup transactions: getting transaction information and broadcasting raw transactions, with search capabilities.
  • ABCI: rollup application information.

The following RPC protocols are currently supported:

  • URI over HTTP
  • JSON-RPC over HTTP
  • JSON-RPC over WebSockets

P2P layer โ€‹

Rollkit's P2P layer enables direct communication between rollup nodes. It's used to gossip transactions, headers of newly created blocks, and state fraud proofs. The P2P layer is implemented using libp2p.

Rollkit uses DHT-based active peer discovery. Starting a node connects to pre-configured bootstrap peers, and advertises its namespace ID in the DHT. This solution is flexible, because multiple rollup networks may reuse the same DHT/bootstrap nodes, but specific rollup network might decide to use dedicated nodes as well.

Rollkit node types โ€‹

Rollkit nodes are implemented in the node package.

Full node โ€‹

Full nodes verify all blocks, and produce fraud proofs for optimistic rollups. Since they fully verify all rollup blocks, they don't rely on fraud or validity proofs for security.

Light node (work in progress) โ€‹

Light nodes are light-weight rollup nodes that authenticate block headers, and can be secured by fraud proofs or validity proofs. They're recommended for average users on low-resource devices. Users running light nodes can make trust-minimized queries about the rollup's state. Currently, Rollkit light nodes are still under development.

Sequencer node โ€‹

Rollups can utilize sequencer nodes. Sequencers are block producers for rollups, responsible for aggregating transactions into blocks, and typically executing transactions to produce a state root, used by the rollup's light clients.

Rollkit plans to support multiple different pluggable sequencer schemes:

Deploy in one-clickFaster soft-confirmations than L1Control over rollup's transaction orderingAtomic composability with other rollupsCensorship resistanceImplementation Status
Centralized sequencerRequires spinning up a sequencerYes โœ…Yes โœ…No โŒEventual โณ*โœ… Implemented!
Decentralized sequencerRequires spinning up a sequencer setYes โœ…Yes โœ…No โŒReal-time โšก๏ธPlanned
Shared decentralized sequencerYes โœ…Yes โœ…No โŒYes โœ…Real-time โšก๏ธPlanned
Pure fork-choice ruleYes โœ…No โŒMaybe ๐ŸŸกMaybe ๐ŸŸกEventual โณPlanned

"Pure fork-choice rule" refers to any rollup without privileged sequencers, e.g. nodes defer to the data availability layer for ordering and apply a "first-come-first-serve" fork-choice rule.

* implementation of this property is in progress.

State validity modes โ€‹

Pessimistic (full nodes only) โ€‹

A pessimistic rollup is a rollup that only supports full nodes that replay all the transactions in the rollup in order to check its validity. Rollkit supports pessimistic rollups by default.

Pessimistic rollups are similar to how Tether uses Bitcoin as a data availability layer via OmniLayer.

Optimistic (fraud proofs) (work in progress) โ€‹

Rollkit's current design consists of a single sequencer that posts blocks to the DA layer, and multiple (optional) full nodes. Sequencers gossip block headers to full nodes and full nodes fetch posted blocks from the DA layer. Full nodes then execute transactions in these blocks to update their state, and gossip block headers over the P2P network to Rollkit light nodes.

Once state fraud proofs are enabled, when a block contains a fraudulent state transition, Rollkit full nodes can detect it by comparing intermediate state roots (ISRs) between transactions, and generate a state fraud proof that can be gossiped over the P2P network to Rollkit light nodes. These Rollkit light nodes can then use this state fraud proof to verify whether a fraudulent state transition occurred or not by themselves.

Overall, state fraud proofs will enable trust-minimization between full nodes and light nodes as long as there is at least one honest full node in the system that will generate state fraud proofs.

Note that Rollkit state fraud proofs are still a work in progress and will require new methods on top of ABCI, specifically, GenerateFraudProof, VerifyFraudProof, and GetAppHash.

You can find current detailed design and the remaining work needed to push state fraud proofs towards completion in this Architecture Decision Record (ADR).

Validity (ZK proofs) โ€‹

Validity (ZK) rollups are planned, but not currently supported by Rollkit.

',54);function k(y,v,w,x,q,R){const r=i("Mermaid");return o(),n("div",null,[u,f,m,g,(o(),s(c,null,{default:a(()=>[h(r,{id:"mermaid-12",graph:"graph%20TD%0A%20%20%20%20A%5BRollkit%20Rollup%5D%0A%20%20%20%20B%5BRollkit%5D%0A%20%20%20%20C%5BData%20Availability%20Chain%5D%0A%20%20%20%20%0A%20%20%20%20A%20%3C--%3E%7CABCI%7C%20B%0A%20%20%20%20B%20%3C--%3E%7CDA%20API%7C%20C%0A"})]),fallback:a(()=>[t(" Loading... ")]),_:1})),b])}const _=l(p,[["render",k]]);export{C as __pageData,_ as default}; +import{_ as l,K as i,o,c as n,b as s,w as a,a5 as c,k as e,a as t,X as d,O as h}from"./chunks/framework.be0a7370.js";const C=JSON.parse('{"title":"Rollkit stack","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Rollkit stack | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"learn/stack.md","filePath":"learn/stack.md","lastUpdated":1717768398000}'),p={name:"learn/stack.md"},u=e("h1",{id:"rollkit-stack",tabindex:"-1"},[t("Rollkit stack "),e("a",{class:"header-anchor",href:"#rollkit-stack","aria-label":'Permalink to "Rollkit stack"'},"โ€‹")],-1),f=e("p",null,"This page will cover the main components of Rollkit.",-1),m=e("p",null,"Rollup sequencer nodes collect transactions from users, aggregate them into blocks, and post the blocks onto a data availability (DA) layer (such as Celestia) to be ordered and finalized. Full nodes execute and verify rollup blocks, and in the case of an optimistic rollup, propagate fraud proofs when needed. Light clients will receive headers, verify proofs (fraud, zk, etc), and authenticate trust-minimized queries about the state.",-1),g=e("h2",{id:"application-structure",tabindex:"-1"},[t("Application structure "),e("a",{class:"header-anchor",href:"#application-structure","aria-label":'Permalink to "Application structure"'},"โ€‹")],-1),b=d('

ABCI interface โ€‹

Rollkit is a fully functional Application BlockChain Interface (ABCI) client software. It can be used as a CometBFT replacement for any ABCI application. Thanks to this compatibility, you can use tools like abci-cli to test and debug your rollup.

Cosmos SDK โ€‹

Would you like to change your Cosmos SDK application to a Rollkit rollup? No problem! You need to replace the Cosmos SDK Go dependency with a Rollkit-enabled version, which can be found at the rollkit/cosmos-sdk repository.

Note the rollkit/cosmos-sdk repository follows the release branches of upstream Cosmos SDK, but with the bonus of using Rollkit instead of CometBFT as the ABCI client.

And don't forget to replace another dependency, CometBFT, with rollkit/cometbft, which has an enhanced ABCI interface that includes the methods needed for state fraud proofs.

Data availability โ€‹

Data availability (DA) can be accessed using generic interfaces. This design allows for seamless integration with any DA layer. New implementations can be plugged in programmatically, without a need to fork Rollkit.

The DataAvailabilityLayerClient interface includes essential lifecycle methods (Init, Start, Stop) as well as data availability methods (SubmitBlocks, RetrieveBlocks).

The BlockRetriever interface serves to enable syncing of full nodes from the data availability layer. It's important to keep in mind that there is no direct correlation between the DA layer block height and the rollup height. Each DA layer block may contain an arbitrary number of rollup blocks.

Celestia โ€‹

Celestia is a prominent example of a data availability integration implemented for Rollkit. It's using the Celestia Node API via the rollkit/celestia-da package. To deploy a Rollkit rollup on Celestia you also have to run a Celestia light node.

New DA layer integrations can be added by using the go-da interface.

Node components โ€‹

Mempool โ€‹

The mempool is inspired by the CometBFT mempool. By default, transactions are handled in a First Come, First Served (FCFS) manner. Ordering of transactions can be implemented on the application level; currently this is possible by returning a priority on CheckTx, and once we support ABCI++ it is also possible via PrepareProposal and the application mempool.

Block manager โ€‹

The block manager contains routines AggregationLoop, RetrieveLoop, and SyncLoop that communicate through Go channels. These Go routines are ran when a Rollkit node starts up (OnStart). Only the sequencer nodes run AggregationLoop which controls the frequency of block production for a rollup with a timer as per the BlockTime in BlockManager.

All nodes run SyncLoop which looks for the following operations:

  • Receive block headers: block headers are received through a channel HeaderInCh and Rollkit nodes attempt to verify the block with the corresponding block data.
  • Receive block data: block bodies are received through a channel blockInCh and Rollkit nodes attempt to verify the block.
  • Signal RetrieveLoop with timer as per the DABlockTime in BlockManager.

All nodes also run RetrieveLoop which is responsible for interacting with the data availability layer. It checks the last updated DAHeight to retrieve a block with timer DABlockTime signaled by SyncLoop. Note that the start height of the DA layer for the rollup, DAStartHeight, is configurable in BlockManager.

RPC โ€‹

Rollkit's RPC fully implements the CometBFT RPC interfaces and APIs for querying:

  • Information about the rollup node: information such as node's health, status, and network info.
  • The rollup blockchain: getting information about the rollup blockchain such as blocks and block headers.
  • The rollup transactions: getting transaction information and broadcasting raw transactions, with search capabilities.
  • ABCI: rollup application information.

The following RPC protocols are currently supported:

  • URI over HTTP
  • JSON-RPC over HTTP
  • JSON-RPC over WebSockets

P2P layer โ€‹

Rollkit's P2P layer enables direct communication between rollup nodes. It's used to gossip transactions, headers of newly created blocks, and state fraud proofs. The P2P layer is implemented using libp2p.

Rollkit uses DHT-based active peer discovery. Starting a node connects to pre-configured bootstrap peers, and advertises its namespace ID in the DHT. This solution is flexible, because multiple rollup networks may reuse the same DHT/bootstrap nodes, but specific rollup network might decide to use dedicated nodes as well.

Rollkit node types โ€‹

Rollkit nodes are implemented in the node package.

Full node โ€‹

Full nodes verify all blocks, and produce fraud proofs for optimistic rollups. Since they fully verify all rollup blocks, they don't rely on fraud or validity proofs for security.

Light node (work in progress) โ€‹

Light nodes are light-weight rollup nodes that authenticate block headers, and can be secured by fraud proofs or validity proofs. They're recommended for average users on low-resource devices. Users running light nodes can make trust-minimized queries about the rollup's state. Currently, Rollkit light nodes are still under development.

Sequencer node โ€‹

Rollups can utilize sequencer nodes. Sequencers are block producers for rollups, responsible for aggregating transactions into blocks, and typically executing transactions to produce a state root, used by the rollup's light clients.

Rollkit plans to support multiple different pluggable sequencer schemes:

Deploy in one-clickFaster soft-confirmations than L1Control over rollup's transaction orderingAtomic composability with other rollupsCensorship resistanceImplementation Status
Centralized sequencerRequires spinning up a sequencerYes โœ…Yes โœ…No โŒEventual โณ*โœ… Implemented!
Decentralized sequencerRequires spinning up a sequencer setYes โœ…Yes โœ…No โŒReal-time โšก๏ธPlanned
Shared decentralized sequencerYes โœ…Yes โœ…No โŒYes โœ…Real-time โšก๏ธPlanned
Pure fork-choice ruleYes โœ…No โŒMaybe ๐ŸŸกMaybe ๐ŸŸกEventual โณPlanned

"Pure fork-choice rule" refers to any rollup without privileged sequencers, e.g. nodes defer to the data availability layer for ordering and apply a "first-come-first-serve" fork-choice rule.

* implementation of this property is in progress.

State validity modes โ€‹

Pessimistic (full nodes only) โ€‹

A pessimistic rollup is a rollup that only supports full nodes that replay all the transactions in the rollup in order to check its validity. Rollkit supports pessimistic rollups by default.

Pessimistic rollups are similar to how Tether uses Bitcoin as a data availability layer via OmniLayer.

Optimistic (fraud proofs) (work in progress) โ€‹

Rollkit's current design consists of a single sequencer that posts blocks to the DA layer, and multiple (optional) full nodes. Sequencers gossip block headers to full nodes and full nodes fetch posted blocks from the DA layer. Full nodes then execute transactions in these blocks to update their state, and gossip block headers over the P2P network to Rollkit light nodes.

Once state fraud proofs are enabled, when a block contains a fraudulent state transition, Rollkit full nodes can detect it by comparing intermediate state roots (ISRs) between transactions, and generate a state fraud proof that can be gossiped over the P2P network to Rollkit light nodes. These Rollkit light nodes can then use this state fraud proof to verify whether a fraudulent state transition occurred or not by themselves.

Overall, state fraud proofs will enable trust-minimization between full nodes and light nodes as long as there is at least one honest full node in the system that will generate state fraud proofs.

Note that Rollkit state fraud proofs are still a work in progress and will require new methods on top of ABCI, specifically, GenerateFraudProof, VerifyFraudProof, and GetAppHash.

You can find current detailed design and the remaining work needed to push state fraud proofs towards completion in this Architecture Decision Record (ADR).

Validity (ZK proofs) โ€‹

Validity (ZK) rollups are planned, but not currently supported by Rollkit.

',54);function k(y,v,w,x,q,R){const r=i("Mermaid");return o(),n("div",null,[u,f,m,g,(o(),s(c,null,{default:a(()=>[h(r,{id:"mermaid-12",graph:"graph%20TD%0A%20%20%20%20A%5BRollkit%20Rollup%5D%0A%20%20%20%20B%5BRollkit%5D%0A%20%20%20%20C%5BData%20Availability%20Chain%5D%0A%20%20%20%20%0A%20%20%20%20A%20%3C--%3E%7CABCI%7C%20B%0A%20%20%20%20B%20%3C--%3E%7CDA%20API%7C%20C%0A"})]),fallback:a(()=>[t(" Loading... ")]),_:1})),b])}const _=l(p,[["render",k]]);export{C as __pageData,_ as default}; diff --git a/pr-383/assets/learn_stack.md.f7713922.lean.js b/pr-383/assets/learn_stack.md.77442c25.lean.js similarity index 96% rename from pr-383/assets/learn_stack.md.f7713922.lean.js rename to pr-383/assets/learn_stack.md.77442c25.lean.js index 1230655fa..db90d2719 100644 --- a/pr-383/assets/learn_stack.md.f7713922.lean.js +++ b/pr-383/assets/learn_stack.md.77442c25.lean.js @@ -1 +1 @@ -import{_ as l,K as i,o,c as n,b as s,w as a,a5 as c,k as e,a as t,X as d,O as h}from"./chunks/framework.be0a7370.js";const C=JSON.parse('{"title":"Rollkit stack","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Rollkit stack | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"learn/stack.md","filePath":"learn/stack.md","lastUpdated":1717671233000}'),p={name:"learn/stack.md"},u=e("h1",{id:"rollkit-stack",tabindex:"-1"},[t("Rollkit stack "),e("a",{class:"header-anchor",href:"#rollkit-stack","aria-label":'Permalink to "Rollkit stack"'},"โ€‹")],-1),f=e("p",null,"This page will cover the main components of Rollkit.",-1),m=e("p",null,"Rollup sequencer nodes collect transactions from users, aggregate them into blocks, and post the blocks onto a data availability (DA) layer (such as Celestia) to be ordered and finalized. Full nodes execute and verify rollup blocks, and in the case of an optimistic rollup, propagate fraud proofs when needed. Light clients will receive headers, verify proofs (fraud, zk, etc), and authenticate trust-minimized queries about the state.",-1),g=e("h2",{id:"application-structure",tabindex:"-1"},[t("Application structure "),e("a",{class:"header-anchor",href:"#application-structure","aria-label":'Permalink to "Application structure"'},"โ€‹")],-1),b=d("",54);function k(y,v,w,x,q,R){const r=i("Mermaid");return o(),n("div",null,[u,f,m,g,(o(),s(c,null,{default:a(()=>[h(r,{id:"mermaid-12",graph:"graph%20TD%0A%20%20%20%20A%5BRollkit%20Rollup%5D%0A%20%20%20%20B%5BRollkit%5D%0A%20%20%20%20C%5BData%20Availability%20Chain%5D%0A%20%20%20%20%0A%20%20%20%20A%20%3C--%3E%7CABCI%7C%20B%0A%20%20%20%20B%20%3C--%3E%7CDA%20API%7C%20C%0A"})]),fallback:a(()=>[t(" Loading... ")]),_:1})),b])}const _=l(p,[["render",k]]);export{C as __pageData,_ as default}; +import{_ as l,K as i,o,c as n,b as s,w as a,a5 as c,k as e,a as t,X as d,O as h}from"./chunks/framework.be0a7370.js";const C=JSON.parse('{"title":"Rollkit stack","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Rollkit stack | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"learn/stack.md","filePath":"learn/stack.md","lastUpdated":1717768398000}'),p={name:"learn/stack.md"},u=e("h1",{id:"rollkit-stack",tabindex:"-1"},[t("Rollkit stack "),e("a",{class:"header-anchor",href:"#rollkit-stack","aria-label":'Permalink to "Rollkit stack"'},"โ€‹")],-1),f=e("p",null,"This page will cover the main components of Rollkit.",-1),m=e("p",null,"Rollup sequencer nodes collect transactions from users, aggregate them into blocks, and post the blocks onto a data availability (DA) layer (such as Celestia) to be ordered and finalized. Full nodes execute and verify rollup blocks, and in the case of an optimistic rollup, propagate fraud proofs when needed. Light clients will receive headers, verify proofs (fraud, zk, etc), and authenticate trust-minimized queries about the state.",-1),g=e("h2",{id:"application-structure",tabindex:"-1"},[t("Application structure "),e("a",{class:"header-anchor",href:"#application-structure","aria-label":'Permalink to "Application structure"'},"โ€‹")],-1),b=d("",54);function k(y,v,w,x,q,R){const r=i("Mermaid");return o(),n("div",null,[u,f,m,g,(o(),s(c,null,{default:a(()=>[h(r,{id:"mermaid-12",graph:"graph%20TD%0A%20%20%20%20A%5BRollkit%20Rollup%5D%0A%20%20%20%20B%5BRollkit%5D%0A%20%20%20%20C%5BData%20Availability%20Chain%5D%0A%20%20%20%20%0A%20%20%20%20A%20%3C--%3E%7CABCI%7C%20B%0A%20%20%20%20B%20%3C--%3E%7CDA%20API%7C%20C%0A"})]),fallback:a(()=>[t(" Loading... ")]),_:1})),b])}const _=l(p,[["render",k]]);export{C as __pageData,_ as default}; diff --git a/pr-383/assets/learn_transaction-flow.md.10ffbc09.js b/pr-383/assets/learn_transaction-flow.md.54d7b688.js similarity index 98% rename from pr-383/assets/learn_transaction-flow.md.10ffbc09.js rename to pr-383/assets/learn_transaction-flow.md.54d7b688.js index 25432681e..fb4dc45fb 100644 --- a/pr-383/assets/learn_transaction-flow.md.10ffbc09.js +++ b/pr-383/assets/learn_transaction-flow.md.54d7b688.js @@ -1 +1 @@ -import{_ as r,K as d,o as t,c,b as n,w as o,a5 as l,X as h,k as a,a as e,O as s}from"./chunks/framework.be0a7370.js";const D=JSON.parse('{"title":"Transaction flow","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Transaction flow | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"learn/transaction-flow.md","filePath":"learn/transaction-flow.md","lastUpdated":1717671233000}'),u={name:"learn/transaction-flow.md"},p=h('

Transaction flow โ€‹

Rollup users use a light node to communicate with the rollup P2P network for two primary reasons:

  • submitting transactions
  • gossipping headers and fraud proofs

WARNING

Light nodes are still a work in progress.

Here's what the typical transaction flow looks like:

Transaction submission โ€‹

',6),f=a("h2",{id:"transaction-validation-and-processing",tabindex:"-1"},[e("Transaction validation and processing "),a("a",{class:"header-anchor",href:"#transaction-validation-and-processing","aria-label":'Permalink to "Transaction validation and processing"'},"โ€‹")],-1),m=a("h2",{id:"block-processing",tabindex:"-1"},[e("Block processing "),a("a",{class:"header-anchor",href:"#block-processing","aria-label":'Permalink to "Block processing"'},"โ€‹")],-1),A=a("h2",{id:"fraud-proof-gossip-and-forking",tabindex:"-1"},[e("Fraud proof gossip and forking "),a("a",{class:"header-anchor",href:"#fraud-proof-gossip-and-forking","aria-label":'Permalink to "Fraud proof gossip and forking"'},"โ€‹")],-1),g=a("p",null,"To transact, users submit a transaction to their light node, which gossips the transaction to a full node. Before adding the transaction to their mempool, the full node checks its validity. Valid transactions are included in the mempool, while invalid ones are refused, and the user's transaction will not be processed.",-1),b=a("p",null,"If the transaction is valid and has been included in the mempool, the sequencer can add it to a rollup block, which is then submitted to the data availability (DA) layer. This results in a successful transaction flow for the user, and the state of the rollup is updated accordingly.",-1),k=a("p",null,"After the block is submitted to the DA layer, the full nodes download and validate the block. However, there is a possibility that the sequencer may maliciously submit a block to the DA layer with invalid transactions or state. In such cases, the full nodes of the rollup chain will consider the block invalid. In the case of an optimistic rollup, if they find the block invalid, they generate fraud proofs and gossip them in the P2P network among other full and light nodes.",-1),_=a("p",null,[e("As a result, the rollup chain will halt, and the network will decide to fork the chain through social consensus. In the future, when a decentralized sequencer scheme is in place, additional options will be available, such as slashing the sequencer or selecting another full node as the sequencer. However, in any case, a new block must be created and submitted to the DA layer. You can read more about sequencer nodes "),a("a",{href:"/docs-preview/pr-383/learn/stack#sequencer-node"},"here"),e(".")],-1);function w(E,N,v,F,y,T){const i=d("Mermaid");return t(),c("div",null,[p,(t(),n(l,null,{default:o(()=>[s(i,{id:"mermaid-29",graph:"sequenceDiagram%0A%20%20%20%20participant%20User%0A%20%20%20%20participant%20LightNode%0A%20%20%20%20participant%20FullNode%0A%20%20%20%20%0A%20%20%20%20User-%3E%3ELightNode%3A%20Submit%20Transaction%0A%20%20%20%20LightNode-%3E%3EFullNode%3A%20Gossip%20Transaction%0A%20%20%20%20FullNode--%3E%3EUser%3A%20Refuse%20(if%20invalid)%0A"})]),fallback:o(()=>[e(" Loading... ")]),_:1})),f,(t(),n(l,null,{default:o(()=>[s(i,{id:"mermaid-33",graph:"sequenceDiagram%0A%20%20%20%20participant%20FullNode%0A%20%20%20%20participant%20Sequencer%0A%0A%20%20%20%20FullNode-%3E%3EFullNode%3A%20Check%20Validity%0A%20%20%20%20FullNode-%3E%3EFullNode%3A%20Add%20to%20Mempool%20(if%20valid)%0A%20%20%20%20FullNode--%3E%3EUser%3A%20Transaction%20Processed%20(if%20valid)%0A%20%20%20%20FullNode-%3E%3ESequencer%3A%20Inform%20about%20Valid%20Transaction%0A%20%20%20%20Sequencer-%3E%3EDALayer%3A%20Add%20to%20Rollup%20Block%0A"})]),fallback:o(()=>[e(" Loading... ")]),_:1})),m,(t(),n(l,null,{default:o(()=>[s(i,{id:"mermaid-37",graph:"sequenceDiagram%0A%20%20%20%20participant%20DALayer%0A%20%20%20%20participant%20FullNode%0A%20%20%20%20participant%20RollupChain%0A%0A%20%20%20%20DALayer-%3E%3ERollupChain%3A%20Update%20State%0A%20%20%20%20DALayer-%3E%3EFullNode%3A%20Download%20%26%20Validate%20Block%0A%20%20%20%20FullNode-%3E%3EFullNode%3A%20Generate%20Fraud%20Proofs%20(if%20invalid)%0A"})]),fallback:o(()=>[e(" Loading... ")]),_:1})),A,(t(),n(l,null,{default:o(()=>[s(i,{id:"mermaid-41",graph:"sequenceDiagram%0A%20%20%20%20participant%20FullNode%0A%20%20%20%20participant%20LightNode%0A%20%20%20%20participant%20RollupChain%0A%0A%20%20%20%20FullNode-%3E%3ELightNode%3A%20Gossip%20Fraud%20Proofs%20(if%20invalid)%0A%20%20%20%20RollupChain-%3E%3ERollupChain%3A%20Halt%20%26%20Decide%20to%20Fork%20(if%20invalid)%0A%20%20%20%20RollupChain-%3E%3EDALayer%3A%20Submit%20New%20Block%20(after%20fork)%0A"})]),fallback:o(()=>[e(" Loading... ")]),_:1})),g,b,k,_])}const P=r(u,[["render",w]]);export{D as __pageData,P as default}; +import{_ as r,K as d,o as t,c,b as n,w as o,a5 as l,X as h,k as a,a as e,O as s}from"./chunks/framework.be0a7370.js";const D=JSON.parse('{"title":"Transaction flow","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Transaction flow | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"learn/transaction-flow.md","filePath":"learn/transaction-flow.md","lastUpdated":1717768398000}'),u={name:"learn/transaction-flow.md"},p=h('

Transaction flow โ€‹

Rollup users use a light node to communicate with the rollup P2P network for two primary reasons:

  • submitting transactions
  • gossipping headers and fraud proofs

WARNING

Light nodes are still a work in progress.

Here's what the typical transaction flow looks like:

Transaction submission โ€‹

',6),f=a("h2",{id:"transaction-validation-and-processing",tabindex:"-1"},[e("Transaction validation and processing "),a("a",{class:"header-anchor",href:"#transaction-validation-and-processing","aria-label":'Permalink to "Transaction validation and processing"'},"โ€‹")],-1),m=a("h2",{id:"block-processing",tabindex:"-1"},[e("Block processing "),a("a",{class:"header-anchor",href:"#block-processing","aria-label":'Permalink to "Block processing"'},"โ€‹")],-1),A=a("h2",{id:"fraud-proof-gossip-and-forking",tabindex:"-1"},[e("Fraud proof gossip and forking "),a("a",{class:"header-anchor",href:"#fraud-proof-gossip-and-forking","aria-label":'Permalink to "Fraud proof gossip and forking"'},"โ€‹")],-1),g=a("p",null,"To transact, users submit a transaction to their light node, which gossips the transaction to a full node. Before adding the transaction to their mempool, the full node checks its validity. Valid transactions are included in the mempool, while invalid ones are refused, and the user's transaction will not be processed.",-1),b=a("p",null,"If the transaction is valid and has been included in the mempool, the sequencer can add it to a rollup block, which is then submitted to the data availability (DA) layer. This results in a successful transaction flow for the user, and the state of the rollup is updated accordingly.",-1),k=a("p",null,"After the block is submitted to the DA layer, the full nodes download and validate the block. However, there is a possibility that the sequencer may maliciously submit a block to the DA layer with invalid transactions or state. In such cases, the full nodes of the rollup chain will consider the block invalid. In the case of an optimistic rollup, if they find the block invalid, they generate fraud proofs and gossip them in the P2P network among other full and light nodes.",-1),_=a("p",null,[e("As a result, the rollup chain will halt, and the network will decide to fork the chain through social consensus. In the future, when a decentralized sequencer scheme is in place, additional options will be available, such as slashing the sequencer or selecting another full node as the sequencer. However, in any case, a new block must be created and submitted to the DA layer. You can read more about sequencer nodes "),a("a",{href:"/docs-preview/pr-383/learn/stack#sequencer-node"},"here"),e(".")],-1);function w(E,N,v,F,y,T){const i=d("Mermaid");return t(),c("div",null,[p,(t(),n(l,null,{default:o(()=>[s(i,{id:"mermaid-29",graph:"sequenceDiagram%0A%20%20%20%20participant%20User%0A%20%20%20%20participant%20LightNode%0A%20%20%20%20participant%20FullNode%0A%20%20%20%20%0A%20%20%20%20User-%3E%3ELightNode%3A%20Submit%20Transaction%0A%20%20%20%20LightNode-%3E%3EFullNode%3A%20Gossip%20Transaction%0A%20%20%20%20FullNode--%3E%3EUser%3A%20Refuse%20(if%20invalid)%0A"})]),fallback:o(()=>[e(" Loading... ")]),_:1})),f,(t(),n(l,null,{default:o(()=>[s(i,{id:"mermaid-33",graph:"sequenceDiagram%0A%20%20%20%20participant%20FullNode%0A%20%20%20%20participant%20Sequencer%0A%0A%20%20%20%20FullNode-%3E%3EFullNode%3A%20Check%20Validity%0A%20%20%20%20FullNode-%3E%3EFullNode%3A%20Add%20to%20Mempool%20(if%20valid)%0A%20%20%20%20FullNode--%3E%3EUser%3A%20Transaction%20Processed%20(if%20valid)%0A%20%20%20%20FullNode-%3E%3ESequencer%3A%20Inform%20about%20Valid%20Transaction%0A%20%20%20%20Sequencer-%3E%3EDALayer%3A%20Add%20to%20Rollup%20Block%0A"})]),fallback:o(()=>[e(" Loading... ")]),_:1})),m,(t(),n(l,null,{default:o(()=>[s(i,{id:"mermaid-37",graph:"sequenceDiagram%0A%20%20%20%20participant%20DALayer%0A%20%20%20%20participant%20FullNode%0A%20%20%20%20participant%20RollupChain%0A%0A%20%20%20%20DALayer-%3E%3ERollupChain%3A%20Update%20State%0A%20%20%20%20DALayer-%3E%3EFullNode%3A%20Download%20%26%20Validate%20Block%0A%20%20%20%20FullNode-%3E%3EFullNode%3A%20Generate%20Fraud%20Proofs%20(if%20invalid)%0A"})]),fallback:o(()=>[e(" Loading... ")]),_:1})),A,(t(),n(l,null,{default:o(()=>[s(i,{id:"mermaid-41",graph:"sequenceDiagram%0A%20%20%20%20participant%20FullNode%0A%20%20%20%20participant%20LightNode%0A%20%20%20%20participant%20RollupChain%0A%0A%20%20%20%20FullNode-%3E%3ELightNode%3A%20Gossip%20Fraud%20Proofs%20(if%20invalid)%0A%20%20%20%20RollupChain-%3E%3ERollupChain%3A%20Halt%20%26%20Decide%20to%20Fork%20(if%20invalid)%0A%20%20%20%20RollupChain-%3E%3EDALayer%3A%20Submit%20New%20Block%20(after%20fork)%0A"})]),fallback:o(()=>[e(" Loading... ")]),_:1})),g,b,k,_])}const P=r(u,[["render",w]]);export{D as __pageData,P as default}; diff --git a/pr-383/assets/learn_transaction-flow.md.10ffbc09.lean.js b/pr-383/assets/learn_transaction-flow.md.54d7b688.lean.js similarity index 98% rename from pr-383/assets/learn_transaction-flow.md.10ffbc09.lean.js rename to pr-383/assets/learn_transaction-flow.md.54d7b688.lean.js index 8e31b348b..fc0dddfae 100644 --- a/pr-383/assets/learn_transaction-flow.md.10ffbc09.lean.js +++ b/pr-383/assets/learn_transaction-flow.md.54d7b688.lean.js @@ -1 +1 @@ -import{_ as r,K as d,o as t,c,b as n,w as o,a5 as l,X as h,k as a,a as e,O as s}from"./chunks/framework.be0a7370.js";const D=JSON.parse('{"title":"Transaction flow","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Transaction flow | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"learn/transaction-flow.md","filePath":"learn/transaction-flow.md","lastUpdated":1717671233000}'),u={name:"learn/transaction-flow.md"},p=h("",6),f=a("h2",{id:"transaction-validation-and-processing",tabindex:"-1"},[e("Transaction validation and processing "),a("a",{class:"header-anchor",href:"#transaction-validation-and-processing","aria-label":'Permalink to "Transaction validation and processing"'},"โ€‹")],-1),m=a("h2",{id:"block-processing",tabindex:"-1"},[e("Block processing "),a("a",{class:"header-anchor",href:"#block-processing","aria-label":'Permalink to "Block processing"'},"โ€‹")],-1),A=a("h2",{id:"fraud-proof-gossip-and-forking",tabindex:"-1"},[e("Fraud proof gossip and forking "),a("a",{class:"header-anchor",href:"#fraud-proof-gossip-and-forking","aria-label":'Permalink to "Fraud proof gossip and forking"'},"โ€‹")],-1),g=a("p",null,"To transact, users submit a transaction to their light node, which gossips the transaction to a full node. Before adding the transaction to their mempool, the full node checks its validity. Valid transactions are included in the mempool, while invalid ones are refused, and the user's transaction will not be processed.",-1),b=a("p",null,"If the transaction is valid and has been included in the mempool, the sequencer can add it to a rollup block, which is then submitted to the data availability (DA) layer. This results in a successful transaction flow for the user, and the state of the rollup is updated accordingly.",-1),k=a("p",null,"After the block is submitted to the DA layer, the full nodes download and validate the block. However, there is a possibility that the sequencer may maliciously submit a block to the DA layer with invalid transactions or state. In such cases, the full nodes of the rollup chain will consider the block invalid. In the case of an optimistic rollup, if they find the block invalid, they generate fraud proofs and gossip them in the P2P network among other full and light nodes.",-1),_=a("p",null,[e("As a result, the rollup chain will halt, and the network will decide to fork the chain through social consensus. In the future, when a decentralized sequencer scheme is in place, additional options will be available, such as slashing the sequencer or selecting another full node as the sequencer. However, in any case, a new block must be created and submitted to the DA layer. You can read more about sequencer nodes "),a("a",{href:"/docs-preview/pr-383/learn/stack#sequencer-node"},"here"),e(".")],-1);function w(E,N,v,F,y,T){const i=d("Mermaid");return t(),c("div",null,[p,(t(),n(l,null,{default:o(()=>[s(i,{id:"mermaid-29",graph:"sequenceDiagram%0A%20%20%20%20participant%20User%0A%20%20%20%20participant%20LightNode%0A%20%20%20%20participant%20FullNode%0A%20%20%20%20%0A%20%20%20%20User-%3E%3ELightNode%3A%20Submit%20Transaction%0A%20%20%20%20LightNode-%3E%3EFullNode%3A%20Gossip%20Transaction%0A%20%20%20%20FullNode--%3E%3EUser%3A%20Refuse%20(if%20invalid)%0A"})]),fallback:o(()=>[e(" Loading... ")]),_:1})),f,(t(),n(l,null,{default:o(()=>[s(i,{id:"mermaid-33",graph:"sequenceDiagram%0A%20%20%20%20participant%20FullNode%0A%20%20%20%20participant%20Sequencer%0A%0A%20%20%20%20FullNode-%3E%3EFullNode%3A%20Check%20Validity%0A%20%20%20%20FullNode-%3E%3EFullNode%3A%20Add%20to%20Mempool%20(if%20valid)%0A%20%20%20%20FullNode--%3E%3EUser%3A%20Transaction%20Processed%20(if%20valid)%0A%20%20%20%20FullNode-%3E%3ESequencer%3A%20Inform%20about%20Valid%20Transaction%0A%20%20%20%20Sequencer-%3E%3EDALayer%3A%20Add%20to%20Rollup%20Block%0A"})]),fallback:o(()=>[e(" Loading... ")]),_:1})),m,(t(),n(l,null,{default:o(()=>[s(i,{id:"mermaid-37",graph:"sequenceDiagram%0A%20%20%20%20participant%20DALayer%0A%20%20%20%20participant%20FullNode%0A%20%20%20%20participant%20RollupChain%0A%0A%20%20%20%20DALayer-%3E%3ERollupChain%3A%20Update%20State%0A%20%20%20%20DALayer-%3E%3EFullNode%3A%20Download%20%26%20Validate%20Block%0A%20%20%20%20FullNode-%3E%3EFullNode%3A%20Generate%20Fraud%20Proofs%20(if%20invalid)%0A"})]),fallback:o(()=>[e(" Loading... ")]),_:1})),A,(t(),n(l,null,{default:o(()=>[s(i,{id:"mermaid-41",graph:"sequenceDiagram%0A%20%20%20%20participant%20FullNode%0A%20%20%20%20participant%20LightNode%0A%20%20%20%20participant%20RollupChain%0A%0A%20%20%20%20FullNode-%3E%3ELightNode%3A%20Gossip%20Fraud%20Proofs%20(if%20invalid)%0A%20%20%20%20RollupChain-%3E%3ERollupChain%3A%20Halt%20%26%20Decide%20to%20Fork%20(if%20invalid)%0A%20%20%20%20RollupChain-%3E%3EDALayer%3A%20Submit%20New%20Block%20(after%20fork)%0A"})]),fallback:o(()=>[e(" Loading... ")]),_:1})),g,b,k,_])}const P=r(u,[["render",w]]);export{D as __pageData,P as default}; +import{_ as r,K as d,o as t,c,b as n,w as o,a5 as l,X as h,k as a,a as e,O as s}from"./chunks/framework.be0a7370.js";const D=JSON.parse('{"title":"Transaction flow","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Transaction flow | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"learn/transaction-flow.md","filePath":"learn/transaction-flow.md","lastUpdated":1717768398000}'),u={name:"learn/transaction-flow.md"},p=h("",6),f=a("h2",{id:"transaction-validation-and-processing",tabindex:"-1"},[e("Transaction validation and processing "),a("a",{class:"header-anchor",href:"#transaction-validation-and-processing","aria-label":'Permalink to "Transaction validation and processing"'},"โ€‹")],-1),m=a("h2",{id:"block-processing",tabindex:"-1"},[e("Block processing "),a("a",{class:"header-anchor",href:"#block-processing","aria-label":'Permalink to "Block processing"'},"โ€‹")],-1),A=a("h2",{id:"fraud-proof-gossip-and-forking",tabindex:"-1"},[e("Fraud proof gossip and forking "),a("a",{class:"header-anchor",href:"#fraud-proof-gossip-and-forking","aria-label":'Permalink to "Fraud proof gossip and forking"'},"โ€‹")],-1),g=a("p",null,"To transact, users submit a transaction to their light node, which gossips the transaction to a full node. Before adding the transaction to their mempool, the full node checks its validity. Valid transactions are included in the mempool, while invalid ones are refused, and the user's transaction will not be processed.",-1),b=a("p",null,"If the transaction is valid and has been included in the mempool, the sequencer can add it to a rollup block, which is then submitted to the data availability (DA) layer. This results in a successful transaction flow for the user, and the state of the rollup is updated accordingly.",-1),k=a("p",null,"After the block is submitted to the DA layer, the full nodes download and validate the block. However, there is a possibility that the sequencer may maliciously submit a block to the DA layer with invalid transactions or state. In such cases, the full nodes of the rollup chain will consider the block invalid. In the case of an optimistic rollup, if they find the block invalid, they generate fraud proofs and gossip them in the P2P network among other full and light nodes.",-1),_=a("p",null,[e("As a result, the rollup chain will halt, and the network will decide to fork the chain through social consensus. In the future, when a decentralized sequencer scheme is in place, additional options will be available, such as slashing the sequencer or selecting another full node as the sequencer. However, in any case, a new block must be created and submitted to the DA layer. You can read more about sequencer nodes "),a("a",{href:"/docs-preview/pr-383/learn/stack#sequencer-node"},"here"),e(".")],-1);function w(E,N,v,F,y,T){const i=d("Mermaid");return t(),c("div",null,[p,(t(),n(l,null,{default:o(()=>[s(i,{id:"mermaid-29",graph:"sequenceDiagram%0A%20%20%20%20participant%20User%0A%20%20%20%20participant%20LightNode%0A%20%20%20%20participant%20FullNode%0A%20%20%20%20%0A%20%20%20%20User-%3E%3ELightNode%3A%20Submit%20Transaction%0A%20%20%20%20LightNode-%3E%3EFullNode%3A%20Gossip%20Transaction%0A%20%20%20%20FullNode--%3E%3EUser%3A%20Refuse%20(if%20invalid)%0A"})]),fallback:o(()=>[e(" Loading... ")]),_:1})),f,(t(),n(l,null,{default:o(()=>[s(i,{id:"mermaid-33",graph:"sequenceDiagram%0A%20%20%20%20participant%20FullNode%0A%20%20%20%20participant%20Sequencer%0A%0A%20%20%20%20FullNode-%3E%3EFullNode%3A%20Check%20Validity%0A%20%20%20%20FullNode-%3E%3EFullNode%3A%20Add%20to%20Mempool%20(if%20valid)%0A%20%20%20%20FullNode--%3E%3EUser%3A%20Transaction%20Processed%20(if%20valid)%0A%20%20%20%20FullNode-%3E%3ESequencer%3A%20Inform%20about%20Valid%20Transaction%0A%20%20%20%20Sequencer-%3E%3EDALayer%3A%20Add%20to%20Rollup%20Block%0A"})]),fallback:o(()=>[e(" Loading... ")]),_:1})),m,(t(),n(l,null,{default:o(()=>[s(i,{id:"mermaid-37",graph:"sequenceDiagram%0A%20%20%20%20participant%20DALayer%0A%20%20%20%20participant%20FullNode%0A%20%20%20%20participant%20RollupChain%0A%0A%20%20%20%20DALayer-%3E%3ERollupChain%3A%20Update%20State%0A%20%20%20%20DALayer-%3E%3EFullNode%3A%20Download%20%26%20Validate%20Block%0A%20%20%20%20FullNode-%3E%3EFullNode%3A%20Generate%20Fraud%20Proofs%20(if%20invalid)%0A"})]),fallback:o(()=>[e(" Loading... ")]),_:1})),A,(t(),n(l,null,{default:o(()=>[s(i,{id:"mermaid-41",graph:"sequenceDiagram%0A%20%20%20%20participant%20FullNode%0A%20%20%20%20participant%20LightNode%0A%20%20%20%20participant%20RollupChain%0A%0A%20%20%20%20FullNode-%3E%3ELightNode%3A%20Gossip%20Fraud%20Proofs%20(if%20invalid)%0A%20%20%20%20RollupChain-%3E%3ERollupChain%3A%20Halt%20%26%20Decide%20to%20Fork%20(if%20invalid)%0A%20%20%20%20RollupChain-%3E%3EDALayer%3A%20Submit%20New%20Block%20(after%20fork)%0A"})]),fallback:o(()=>[e(" Loading... ")]),_:1})),g,b,k,_])}const P=r(u,[["render",w]]);export{D as __pageData,P as default}; diff --git a/pr-383/assets/testnets_cosmwasm-testnet.md.1af3813a.js b/pr-383/assets/testnets_cosmwasm-testnet.md.92cb90bd.js similarity index 99% rename from pr-383/assets/testnets_cosmwasm-testnet.md.1af3813a.js rename to pr-383/assets/testnets_cosmwasm-testnet.md.92cb90bd.js index 0c4e481dd..a479e1e75 100644 --- a/pr-383/assets/testnets_cosmwasm-testnet.md.1af3813a.js +++ b/pr-383/assets/testnets_cosmwasm-testnet.md.92cb90bd.js @@ -69,4 +69,4 @@ import{_ as r,$ as D,o as p,c as t,k as e,a as l,O as F,X as y}from"./chunks/fra "account_number": "7", "sequence": "0" } -}
  • Block Explorer: https://canary.modular.cloud/rollkit-cosmwasm
  • WARNING

    The modular.cloud explorer is work in progress. In the meanwhile, the wasm CLI can be used to query the accounts. For example: to collect the transactions for any account, following command can be used.

    wasmd query txs --query "message.sender='wasm1lysztpn74kl40w6ghfhy7xr0v44r658szuysl5'" --node https://rpc.rosm.rollkit.dev

    Add Rosm to Keplr โ€‹

    Don't have the Keplr Browser extension? Add Keplr Wallet Here

    ',8),g=JSON.parse('{"title":"CosmWasm Testnet","description":"This page provides details about Rollkit testnets.","frontmatter":{"description":"This page provides details about Rollkit testnets.","head":[["meta",{"name":"og:title","content":"CosmWasm Testnet | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"testnets/cosmwasm-testnet.md","filePath":"testnets/cosmwasm-testnet.md","lastUpdated":1717671233000}'),B={name:"testnets/cosmwasm-testnet.md"},w=Object.assign(B,{setup(s){return(a,n)=>(p(),t("div",null,[m,e("p",null,[l("Click "),F(h),l(" to add Rosm testnet to your Keplr wallet")])]))}});export{g as __pageData,w as default}; +}
  • Block Explorer: https://canary.modular.cloud/rollkit-cosmwasm
  • WARNING

    The modular.cloud explorer is work in progress. In the meanwhile, the wasm CLI can be used to query the accounts. For example: to collect the transactions for any account, following command can be used.

    wasmd query txs --query "message.sender='wasm1lysztpn74kl40w6ghfhy7xr0v44r658szuysl5'" --node https://rpc.rosm.rollkit.dev

    Add Rosm to Keplr โ€‹

    Don't have the Keplr Browser extension? Add Keplr Wallet Here

    ',8),g=JSON.parse('{"title":"CosmWasm Testnet","description":"This page provides details about Rollkit testnets.","frontmatter":{"description":"This page provides details about Rollkit testnets.","head":[["meta",{"name":"og:title","content":"CosmWasm Testnet | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"testnets/cosmwasm-testnet.md","filePath":"testnets/cosmwasm-testnet.md","lastUpdated":1717768398000}'),B={name:"testnets/cosmwasm-testnet.md"},w=Object.assign(B,{setup(s){return(a,n)=>(p(),t("div",null,[m,e("p",null,[l("Click "),F(h),l(" to add Rosm testnet to your Keplr wallet")])]))}});export{g as __pageData,w as default}; diff --git a/pr-383/assets/testnets_cosmwasm-testnet.md.1af3813a.lean.js b/pr-383/assets/testnets_cosmwasm-testnet.md.92cb90bd.lean.js similarity index 96% rename from pr-383/assets/testnets_cosmwasm-testnet.md.1af3813a.lean.js rename to pr-383/assets/testnets_cosmwasm-testnet.md.92cb90bd.lean.js index 24f3c4520..0c2c4135e 100644 --- a/pr-383/assets/testnets_cosmwasm-testnet.md.1af3813a.lean.js +++ b/pr-383/assets/testnets_cosmwasm-testnet.md.92cb90bd.lean.js @@ -1 +1 @@ -import{_ as r,$ as D,o as p,c as t,k as e,a as l,O as F,X as y}from"./chunks/framework.be0a7370.js";const C="/docs-preview/pr-383/assets/faucet.a7295624.png",A="/docs-preview/pr-383/assets/keplr.7151e633.png",i={name:"app",methods:{async addNetwork(){try{const s=await D(()=>import("./chunks/rosm.edd5b616.js"),[]);console.log("got back settings",s);try{await window.keplr.enable(s.chainId),alert(s.chainId+" already added")}catch{console.log("Unable to connect to wallet natively, so trying experimental chain");try{await window.keplr.experimentalSuggestChain(s),await window.keplr.enable(s.chainId)}catch(n){console.log("and yet there is a problem in trying to do that too",n)}}}catch(s){if(s instanceof SyntaxError)alert("There was a syntax error. Please correct it and try again: "+s.message);else throw s}}}},u=e("img",{src:A,alt:"",width:"20",height:"20"},null,-1),q=[u];function d(s,a,n,_,E,o){return p(),t("button",{onClick:a[0]||(a[0]=(...c)=>o.addNetwork&&o.addNetwork(...c))},q)}const h=r(i,[["render",d]]),m=y("",8),g=JSON.parse('{"title":"CosmWasm Testnet","description":"This page provides details about Rollkit testnets.","frontmatter":{"description":"This page provides details about Rollkit testnets.","head":[["meta",{"name":"og:title","content":"CosmWasm Testnet | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"testnets/cosmwasm-testnet.md","filePath":"testnets/cosmwasm-testnet.md","lastUpdated":1717671233000}'),B={name:"testnets/cosmwasm-testnet.md"},w=Object.assign(B,{setup(s){return(a,n)=>(p(),t("div",null,[m,e("p",null,[l("Click "),F(h),l(" to add Rosm testnet to your Keplr wallet")])]))}});export{g as __pageData,w as default}; +import{_ as r,$ as D,o as p,c as t,k as e,a as l,O as F,X as y}from"./chunks/framework.be0a7370.js";const C="/docs-preview/pr-383/assets/faucet.a7295624.png",A="/docs-preview/pr-383/assets/keplr.7151e633.png",i={name:"app",methods:{async addNetwork(){try{const s=await D(()=>import("./chunks/rosm.edd5b616.js"),[]);console.log("got back settings",s);try{await window.keplr.enable(s.chainId),alert(s.chainId+" already added")}catch{console.log("Unable to connect to wallet natively, so trying experimental chain");try{await window.keplr.experimentalSuggestChain(s),await window.keplr.enable(s.chainId)}catch(n){console.log("and yet there is a problem in trying to do that too",n)}}}catch(s){if(s instanceof SyntaxError)alert("There was a syntax error. Please correct it and try again: "+s.message);else throw s}}}},u=e("img",{src:A,alt:"",width:"20",height:"20"},null,-1),q=[u];function d(s,a,n,_,E,o){return p(),t("button",{onClick:a[0]||(a[0]=(...c)=>o.addNetwork&&o.addNetwork(...c))},q)}const h=r(i,[["render",d]]),m=y("",8),g=JSON.parse('{"title":"CosmWasm Testnet","description":"This page provides details about Rollkit testnets.","frontmatter":{"description":"This page provides details about Rollkit testnets.","head":[["meta",{"name":"og:title","content":"CosmWasm Testnet | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"testnets/cosmwasm-testnet.md","filePath":"testnets/cosmwasm-testnet.md","lastUpdated":1717768398000}'),B={name:"testnets/cosmwasm-testnet.md"},w=Object.assign(B,{setup(s){return(a,n)=>(p(),t("div",null,[m,e("p",null,[l("Click "),F(h),l(" to add Rosm testnet to your Keplr wallet")])]))}});export{g as __pageData,w as default}; diff --git a/pr-383/assets/tutorials_bitcoin.md.91a66aaf.js b/pr-383/assets/tutorials_bitcoin.md.da6ebe93.js similarity index 99% rename from pr-383/assets/tutorials_bitcoin.md.91a66aaf.js rename to pr-383/assets/tutorials_bitcoin.md.da6ebe93.js index a28eecc3e..19c79d58e 100644 --- a/pr-383/assets/tutorials_bitcoin.md.91a66aaf.js +++ b/pr-383/assets/tutorials_bitcoin.md.da6ebe93.js @@ -1,4 +1,4 @@ -import{_ as s}from"./chunks/rollkit-bitcoin-1.d0e25124.js";import{_ as a,o as n,c as l,X as o}from"./chunks/framework.be0a7370.js";const h=JSON.parse('{"title":"Bitcoin rollup tutorial","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Bitcoin rollup tutorial | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/bitcoin.md","filePath":"tutorials/bitcoin.md","lastUpdated":1717671233000}'),p={name:"tutorials/bitcoin.md"},e=o('

    Bitcoin rollup tutorial โ€‹

    โ˜€๏ธIntroduction โ€‹

    In this tutorial, we will explore how to use Rollkit to create sovereign rollups on Bitcoin. First, we will install Bitcoin Core to run a local testnet. Then, we will install and set up a Rollkit node to work with Bitcoin as a data availability layer. Lastly, we'll look at how to create a custom EVM execution environment and how to deploy a sovereign rollup on Bitcoin using Rollkit.

    By the end of this tutorial, you will have a good understanding of how Rollkit works and how to create sovereign rollups on Bitcoin using Rollkit. You will also have the knowledge and skills needed to customize Rollkit with different execution environments and data availability layers, opening up new possibilities for creating scalable and efficient blockchain applications.

    Read more in our blog post.

    rollkit-bitcoin

    ๐Ÿ“– The stack โ€‹

    Sovereign rollups on Bitcoin are made possible through a module that allows Rollkit rollups to use Bitcoin for data availability. This integration opens up possibilities for developers to create rollups with arbitrary execution environments that inherit Bitcoinโ€™s data availability guarantees and security guarantees.

    The Taproot upgrade and Ordinals usage of Bitcoin for publishing arbitrary data made it possible to integrate Bitcoin as a data availability layer into Rollkit. The modular design of Rollkit allows for easy integration of new data availability layers, making it possible to deploy sovereign rollups on Bitcoin.

    The goal of Rollkit is to make it easy to build and customize rollups, enabling developers to build sovereign rollups on Bitcoin or customize Rollkit with different execution environments and data availability layers.

    ๐Ÿ’ป Prerequisites โ€‹

    An Ubuntu machine with:

    • 8GB RAM
    • 160 GB SSD
    • Ubuntu 22.10
    • 4 core AMD CPU

    ๐Ÿ› ๏ธ Dependency setup โ€‹

    First, make sure to update and upgrade the OS:

    bash
    sudo apt update && sudo apt upgrade -y

    These are essential packages that are necessary to execute many tasks like downloading files, compiling, and monitoring the nodes:

    bash
    sudo apt install curl tar wget clang pkg-config libssl-dev jq build-essential git make ncdu snapd npm -y

    Now, we will install the remaining dependencies.

    ๐Ÿƒ Golang โ€‹

    We will use golang to build and run our test networks. Install it for AMD with these commands:

    bash
    ver="1.19.1"
    +import{_ as s}from"./chunks/rollkit-bitcoin-1.d0e25124.js";import{_ as a,o as n,c as l,X as o}from"./chunks/framework.be0a7370.js";const h=JSON.parse('{"title":"Bitcoin rollup tutorial","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Bitcoin rollup tutorial | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/bitcoin.md","filePath":"tutorials/bitcoin.md","lastUpdated":1717768398000}'),p={name:"tutorials/bitcoin.md"},e=o('

    Bitcoin rollup tutorial โ€‹

    โ˜€๏ธIntroduction โ€‹

    In this tutorial, we will explore how to use Rollkit to create sovereign rollups on Bitcoin. First, we will install Bitcoin Core to run a local testnet. Then, we will install and set up a Rollkit node to work with Bitcoin as a data availability layer. Lastly, we'll look at how to create a custom EVM execution environment and how to deploy a sovereign rollup on Bitcoin using Rollkit.

    By the end of this tutorial, you will have a good understanding of how Rollkit works and how to create sovereign rollups on Bitcoin using Rollkit. You will also have the knowledge and skills needed to customize Rollkit with different execution environments and data availability layers, opening up new possibilities for creating scalable and efficient blockchain applications.

    Read more in our blog post.

    rollkit-bitcoin

    ๐Ÿ“– The stack โ€‹

    Sovereign rollups on Bitcoin are made possible through a module that allows Rollkit rollups to use Bitcoin for data availability. This integration opens up possibilities for developers to create rollups with arbitrary execution environments that inherit Bitcoinโ€™s data availability guarantees and security guarantees.

    The Taproot upgrade and Ordinals usage of Bitcoin for publishing arbitrary data made it possible to integrate Bitcoin as a data availability layer into Rollkit. The modular design of Rollkit allows for easy integration of new data availability layers, making it possible to deploy sovereign rollups on Bitcoin.

    The goal of Rollkit is to make it easy to build and customize rollups, enabling developers to build sovereign rollups on Bitcoin or customize Rollkit with different execution environments and data availability layers.

    ๐Ÿ’ป Prerequisites โ€‹

    An Ubuntu machine with:

    • 8GB RAM
    • 160 GB SSD
    • Ubuntu 22.10
    • 4 core AMD CPU

    ๐Ÿ› ๏ธ Dependency setup โ€‹

    First, make sure to update and upgrade the OS:

    bash
    sudo apt update && sudo apt upgrade -y

    These are essential packages that are necessary to execute many tasks like downloading files, compiling, and monitoring the nodes:

    bash
    sudo apt install curl tar wget clang pkg-config libssl-dev jq build-essential git make ncdu snapd npm -y

    Now, we will install the remaining dependencies.

    ๐Ÿƒ Golang โ€‹

    We will use golang to build and run our test networks. Install it for AMD with these commands:

    bash
    ver="1.19.1"
     cd $HOME
     wget "https://golang.org/dl/go$ver.linux-amd64.tar.gz"
     sudo rm -rf /usr/local/go
    diff --git a/pr-383/assets/tutorials_bitcoin.md.91a66aaf.lean.js b/pr-383/assets/tutorials_bitcoin.md.da6ebe93.lean.js
    similarity index 89%
    rename from pr-383/assets/tutorials_bitcoin.md.91a66aaf.lean.js
    rename to pr-383/assets/tutorials_bitcoin.md.da6ebe93.lean.js
    index 42198de84..f67348dc6 100644
    --- a/pr-383/assets/tutorials_bitcoin.md.91a66aaf.lean.js
    +++ b/pr-383/assets/tutorials_bitcoin.md.da6ebe93.lean.js
    @@ -1 +1 @@
    -import{_ as s}from"./chunks/rollkit-bitcoin-1.d0e25124.js";import{_ as a,o as n,c as l,X as o}from"./chunks/framework.be0a7370.js";const h=JSON.parse('{"title":"Bitcoin rollup tutorial","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Bitcoin rollup tutorial | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/bitcoin.md","filePath":"tutorials/bitcoin.md","lastUpdated":1717671233000}'),p={name:"tutorials/bitcoin.md"},e=o("",138),t=[e];function c(r,i,C,y,D,A){return n(),l("div",null,t)}const u=a(p,[["render",c]]);export{h as __pageData,u as default};
    +import{_ as s}from"./chunks/rollkit-bitcoin-1.d0e25124.js";import{_ as a,o as n,c as l,X as o}from"./chunks/framework.be0a7370.js";const h=JSON.parse('{"title":"Bitcoin rollup tutorial","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Bitcoin rollup tutorial | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/bitcoin.md","filePath":"tutorials/bitcoin.md","lastUpdated":1717768398000}'),p={name:"tutorials/bitcoin.md"},e=o("",138),t=[e];function c(r,i,C,y,D,A){return n(),l("div",null,t)}const u=a(p,[["render",c]]);export{h as __pageData,u as default};
    diff --git a/pr-383/assets/tutorials_celestia-da.md.f41860ea.js b/pr-383/assets/tutorials_celestia-da.md.b2b0ce5f.js
    similarity index 56%
    rename from pr-383/assets/tutorials_celestia-da.md.f41860ea.js
    rename to pr-383/assets/tutorials_celestia-da.md.b2b0ce5f.js
    index a3feef517..2f7da2a0d 100644
    --- a/pr-383/assets/tutorials_celestia-da.md.f41860ea.js
    +++ b/pr-383/assets/tutorials_celestia-da.md.b2b0ce5f.js
    @@ -1,8 +1,11 @@
    -import{_ as a,o as s,c as e,X as o}from"./chunks/framework.be0a7370.js";const C=JSON.parse('{"title":"GM world rollup: Deploying to Celestia","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"GM world rollup: Deploying to Celestia | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/celestia-da.md","filePath":"tutorials/celestia-da.md","lastUpdated":1717671233000}'),n={name:"tutorials/celestia-da.md"},l=o(`

    GM world rollup: Deploying to Celestia โ€‹

    ๐ŸŒž Introduction โ€‹

    This tutorial serves as a comprehensive guide for deploying your GM world rollup on Celestia's data availability (DA) network. From the Rollkit perspective, there's no difference in posting blocks to Celestia's testnets or Mainnet Beta.

    Before proceeding, ensure that you have completed the GM world rollup tutorial, which covers setting up a local sovereign gm-world rollup and connecting it to a local (mock) DA node.

    ๐Ÿชถ Running a Celestia light node โ€‹

    Before you can start your rollup node, you need to initiate, sync, and possibly fund a light node on one of Celestia's networks:

    The main difference lies in how you fund your wallet address: using testnet TIA or TIA for Mainnet Beta.

    After successfully starting a light node, it's time to start posting the batches of blocks of data that your rollup generates.

    ๐Ÿงน Cleaning previous chain history โ€‹

    From the GM world rollup tutorial, you should already have the gmd binary and the $HOME/.gm directory.

    To clear old rollup data:

    bash
    rm -r $(which gmd) && rm -rf $HOME/.gm

    ๐Ÿ—๏ธ Building your rollup โ€‹

    Now we need to rebuild our rollup by simply running the existing init.sh script:

    bash
    cd $HOME/gm && bash init.sh

    This process creates a new $HOME/.gm directory and a new gmd binary. Next, we need to connect our rollup to the running Celestia light node.

    ๐Ÿ› ๏ธ Configuring flags for DA โ€‹

    Now we're prepared to initiate our rollup and establish a connection with the Celestia light node. The gmd start command requires three DA configuration flags:

    • --rollkit.da_start_height
    • --rollkit.da_auth_token
    • --rollkit.da_namespace

    Let's determine what to provide for each of them.

    First, let's query the DA Layer start height using an RPC endpoint provided by Celestia Labs. For Mocha testnet it would be - https://rpc-mocha.pops.one/block, and for mainnet beta - https://rpc.lunaroasis.net/block

    Here is an example for the Mocha testnet (replace URL for mainnet beta if needed):

    bash
    DA_BLOCK_HEIGHT=$(curl https://rpc-mocha.pops.one/block | jq -r '.result.block.header.height')
    +import{_ as s,o as a,c as e,X as o}from"./chunks/framework.be0a7370.js";const y=JSON.parse('{"title":"GM world rollup: Deploying to Celestia","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"GM world rollup: Deploying to Celestia | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/celestia-da.md","filePath":"tutorials/celestia-da.md","lastUpdated":1717768398000}'),l={name:"tutorials/celestia-da.md"},n=o(`

    GM world rollup: Deploying to Celestia โ€‹

    ๐ŸŒž Introduction โ€‹

    This tutorial serves as a comprehensive guide for deploying your GM world rollup on Celestia's data availability (DA) network. From the Rollkit perspective, there's no difference in posting blocks to Celestia's testnets or Mainnet Beta.

    Before proceeding, ensure that you have completed the GM world rollup tutorial, which covers setting up a local sovereign gm-world rollup and connecting it to a local (mock) DA node.

    ๐Ÿชถ Running a Celestia light node โ€‹

    Before you can start your rollup node, you need to initiate, sync, and possibly fund a light node on one of Celestia's networks:

    The main difference lies in how you fund your wallet address: using testnet TIA or TIA for Mainnet Beta.

    After successfully starting a light node, it's time to start posting the batches of blocks of data that your rollup generates.

    ๐Ÿ—๏ธ Prerequisites โ€‹

    From the GM world rollup tutorial, you should already have the rollkit CLI and ignite installed.

    ๐Ÿ—๏ธ Building Your Sovereign Rollup โ€‹

    Run the following command to setup our project for our new gm blockchain.

    bash
    ignite scaffold chain gm --address-prefix gm  --minimal --skip-proto

    Now we need to install the Rollkit app to Ignite, run the following command:

    bash
    cd gm
    +ignite app install github.com/ignite/apps/rollkit@rollkit/v0.2.0

    Next, add Rollkit to gm project by running:

    bash
    ignite rollkit add

    Initialize the Rollkit chain configuration:

    bash
    ignite rollkit init

    This will create a $HOME/.gm directory with the chain configuration files.

    ๐Ÿงฐ Configuring Your Rollup โ€‹

    From inside the $HOME/gm directory, generate a rollkit.toml file by running:

    bash
    rollkit toml init

    The output should be similar to this (our $HOME is /root):

    Found rollup entrypoint: /root/gm/cmd/gmd/main.go, adding to rollkit.toml
    +Found rollup configuration under /root/.gm, adding to rollkit.toml
    +Initialized rollkit.toml file in the current directory.

    ๐Ÿ› ๏ธ Configuring flags for DA โ€‹

    Now we're prepared to initiate our rollup and establish a connection with the Celestia light node. The rollkit start command requires three DA configuration flags:

    • --rollkit.da_start_height
    • --rollkit.da_auth_token
    • --rollkit.da_namespace

    Let's determine what to provide for each of them.

    First, let's query the DA Layer start height using an RPC endpoint provided by Celestia Labs. For Mocha testnet it would be - https://rpc-mocha.pops.one/block, and for mainnet beta - https://rpc.lunaroasis.net/block

    Here is an example for the Mocha testnet (replace URL for mainnet beta if needed):

    bash
    DA_BLOCK_HEIGHT=$(curl https://rpc-mocha.pops.one/block | jq -r '.result.block.header.height')
     echo -e "\\n Your DA_BLOCK_HEIGHT is $DA_BLOCK_HEIGHT \\n"

    You will see the output like this:

    bash
    Your DA_BLOCK_HEIGHT is 1777655

    Now, obtain an authentication token for your light node as follows (for Mainnet Beta, simply omit the --p2p.network flag):

    bash
    AUTH_TOKEN=$(celestia light auth write --p2p.network mocha)
    -echo -e "\\n Your DA AUTH_TOKEN is $AUTH_TOKEN \\n"

    The output will look like this:

    bash
    Your DA AUTH_TOKEN is eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJBbGxvdyI6WyJwdWJsaWMiLCJyZWFkIiwid3JpdGUiXX0.cSrJjpfUdTNFtzGho69V0D_8kyECn9Mzv8ghJSpKRDE

    Now, let's also set up a namespace for our blocks by simply setting a variable like this:

    bash
    DA_NAMESPACE=00000000000000000000000000000000000000000008e5f679bf7116cb

    TIP

    00000000000000000000000000000000000000000008e5f679bf7116cb is a default namespace for Mocha testnet. You can set your own by using a command similar to this (or, you could get creative ๐Ÿ˜Ž):

    bash
    openssl rand -hex 10

    Replace the last 20 characters (10 bytes) in 00000000000000000000000000000000000000000008e5f679bf7116cb with the newly generated 10 bytes.

    Learn more about namespaces.

    ๐Ÿ”ฅ Running your rollup connected to a Celestia light node โ€‹

    Now let's run our rollup node with all DA flags:

    bash
    gmd start \\
    +echo -e "\\n Your DA AUTH_TOKEN is $AUTH_TOKEN \\n"

    The output will look like this:

    bash
    Your DA AUTH_TOKEN is eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJBbGxvdyI6WyJwdWJsaWMiLCJyZWFkIiwid3JpdGUiXX0.cSrJjpfUdTNFtzGho69V0D_8kyECn9Mzv8ghJSpKRDE

    Now, let's also set up a namespace for our blocks by simply setting a variable like this:

    bash
    DA_NAMESPACE=00000000000000000000000000000000000000000008e5f679bf7116cb

    TIP

    00000000000000000000000000000000000000000008e5f679bf7116cb is a default namespace for Mocha testnet. You can set your own by using a command similar to this (or, you could get creative ๐Ÿ˜Ž):

    bash
    openssl rand -hex 10

    Replace the last 20 characters (10 bytes) in 00000000000000000000000000000000000000000008e5f679bf7116cb with the newly generated 10 bytes.

    Learn more about namespaces.

    ๐Ÿ”ฅ Running your rollup connected to a Celestia light node โ€‹

    Now let's run our rollup node with all DA flags:

    bash
    rollkit start \\
         --rollkit.aggregator \\
         --rollkit.da_auth_token $AUTH_TOKEN \\
         --rollkit.da_namespace $DA_NAMESPACE \\
         --rollkit.da_start_height $DA_BLOCK_HEIGHT \\
    -    --minimum-gas-prices="0.025stake"

    Now, the rollup is running and posting blocks (aggregated in batches) to Celestia. You can view your rollup by finding your namespace or account on Mocha testnet or mainnet beta explorers.

    INFO

    For details on configuring gas prices specifically for the DA network, see our DA Network Gas Price Guide. This is separate from the --minimum-gas-prices="0.025stake" setting, which is used for rollup network operations.

    ๐ŸŽ‰ Next steps โ€‹

    Congratulations! You've built a local rollup that posts to Celestia's testnets or Mainnet Beta. Well done! Now, go forth and build something great! Good luck!

    `,40),t=[l];function r(p,i,c,d,h,u){return s(),e("div",null,t)}const g=a(n,[["render",r]]);export{C as __pageData,g as default}; + --minimum-gas-prices="0.025stake"

    Now, the rollup is running and posting blocks (aggregated in batches) to Celestia. You can view your rollup by finding your namespace or account on Mocha testnet or mainnet beta explorers.

    INFO

    For details on configuring gas prices specifically for the DA network, see our DA Network Gas Price Guide. This is separate from the --minimum-gas-prices="0.025stake" setting, which is used for rollup network operations.

    ๐ŸŽ‰ Next steps โ€‹

    Congratulations! You've built a local rollup that posts to Celestia's testnets or Mainnet Beta. Well done! Now, go forth and build something great! Good luck!

    `,49),t=[n];function p(r,i,c,d,u,h){return a(),e("div",null,t)}const g=s(l,[["render",p]]);export{y as __pageData,g as default}; diff --git a/pr-383/assets/tutorials_celestia-da.md.b2b0ce5f.lean.js b/pr-383/assets/tutorials_celestia-da.md.b2b0ce5f.lean.js new file mode 100644 index 000000000..31e6076f0 --- /dev/null +++ b/pr-383/assets/tutorials_celestia-da.md.b2b0ce5f.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as e,X as o}from"./chunks/framework.be0a7370.js";const y=JSON.parse('{"title":"GM world rollup: Deploying to Celestia","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"GM world rollup: Deploying to Celestia | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/celestia-da.md","filePath":"tutorials/celestia-da.md","lastUpdated":1717768398000}'),l={name:"tutorials/celestia-da.md"},n=o("",49),t=[n];function p(r,i,c,d,u,h){return a(),e("div",null,t)}const g=s(l,[["render",p]]);export{y as __pageData,g as default}; diff --git a/pr-383/assets/tutorials_celestia-da.md.f41860ea.lean.js b/pr-383/assets/tutorials_celestia-da.md.f41860ea.lean.js deleted file mode 100644 index ee2e33bd5..000000000 --- a/pr-383/assets/tutorials_celestia-da.md.f41860ea.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as a,o as s,c as e,X as o}from"./chunks/framework.be0a7370.js";const C=JSON.parse('{"title":"GM world rollup: Deploying to Celestia","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"GM world rollup: Deploying to Celestia | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/celestia-da.md","filePath":"tutorials/celestia-da.md","lastUpdated":1717671233000}'),n={name:"tutorials/celestia-da.md"},l=o("",40),t=[l];function r(p,i,c,d,h,u){return s(),e("div",null,t)}const g=a(n,[["render",r]]);export{C as __pageData,g as default}; diff --git a/pr-383/assets/tutorials_cosmwasm.md.79f07a6e.js b/pr-383/assets/tutorials_cosmwasm.md.5bcdfd4f.js similarity index 99% rename from pr-383/assets/tutorials_cosmwasm.md.79f07a6e.js rename to pr-383/assets/tutorials_cosmwasm.md.5bcdfd4f.js index cde38f508..47e6820bf 100644 --- a/pr-383/assets/tutorials_cosmwasm.md.79f07a6e.js +++ b/pr-383/assets/tutorials_cosmwasm.md.5bcdfd4f.js @@ -29,13 +29,13 @@ import{C as n}from"./chunks/callout.d775988b.js";import{o,c as l,k as s,O as p,a wget https://rollkit.dev/cosmwasm/init.sh

    This copies over our init.sh script to initialize our CosmWasm rollup.

    You can view the contents of the script to see how we initialize the CosmWasm Rollup.

    You can initialize the script with the following command:

    bash
    bash init.sh

    With that, we have kickstarted our wasmd network!

    ๐Ÿ’  Optional: see what's inside the script โ€‹

    You can skip this section, but it is important to know how Rollkit is initializing the cosmwasm rollup.

    View the script.

    ๐Ÿ“’ Contract deployment on CosmWasm with Rollkit โ€‹

    ๐Ÿค– Compile the smart contract โ€‹

    In a new terminal instance, we will run the following commands to pull down the Nameservice smart contract and compile it:

    bash
    git clone https://github.com/InterWasm/cw-contracts
     cd cw-contracts
     cd contracts/nameservice
    -cargo wasm

    The compiled contract is outputted to: target/wasm32-unknown-unknown/release/cw_nameservice.wasm.

    ๐Ÿงช Unit tests โ€‹

    If we want to run tests, we can do so with the following command in the ~/cw-contracts/contracts/nameservice directory:

    bash
    cargo unit-test

    ๐ŸŽ๏ธ Optimized smart contract โ€‹

    Because we are deploying the compiled smart contract to wasmd, we want it to be as small as possible.

    The CosmWasm team provides a tool called rust-optimizer, which requires Docker in order to compile.

    Run the following command in the ~/cw-contracts/contracts/nameservice directory:

    bash
    sudo docker run --rm -v "$(pwd)":/code \\
    +cargo wasm

    The compiled contract is outputted to: target/wasm32-unknown-unknown/release/cw_nameservice.wasm.

    ๐Ÿงช Unit tests โ€‹

    If we want to run tests, we can do so with the following command in the ~/cw-contracts/contracts/nameservice directory:

    bash
    cargo unit-test

    ๐ŸŽ๏ธ Optimized smart contract โ€‹

    Because we are deploying the compiled smart contract to wasmd, we want it to be as small as possible.

    The CosmWasm team provides a tool called rust-optimizer, which requires Docker in order to compile.

    Run the following command in the ~/cw-contracts/contracts/nameservice directory:

    bash
    sudo docker run --rm -v "$(pwd)":/code \\
       --mount type=volume,source="$(basename "$(pwd)")_cache",target=/code/target \\
       --mount type=volume,source=registry_cache,target=/usr/local/cargo/registry \\
       cosmwasm/rust-optimizer:0.12.6
    bash
    sudo docker run --platform linux/arm64 --rm -v "$(pwd)":/code \\
       --mount type=volume,source="$(basename "$(pwd)")_cache",target=/code/target \\
       --mount type=volume,source=registry_cache,target=/usr/local/cargo/registry \\
    -  cosmwasm/rust-optimizer-arm64:0.12.8

    This will place the optimized Wasm bytecode at artifacts/cw_nameservice.wasm.

    ๐Ÿš€ Contract deployment โ€‹

    Let's now deploy our smart contract!

    In order to deploy a contract, you can use the command line as described below. For a better experience and to use Rust code instead of the command line to deploy/script and test your contracts, you can use cw-orchestrator.

    Run the following in the ~/cw-contracts/contracts/nameservice directory:

    bash
    TX_HASH=$(wasmd tx wasm store artifacts/cw_nameservice.wasm --from localwasm-key --keyring-backend test --chain-id localwasm --gas-prices 0.025uwasm --gas auto --gas-adjustment 1.3 --node http://127.0.0.1:36657 --output json -y | jq -r '.txhash') && echo $TX_HASH
    bash
    TX_HASH=$(wasmd tx wasm store artifacts/cw_nameservice-aarch64.wasm --from localwasm-key --keyring-backend test --chain-id localwasm --gas-prices 0.025uwasm --gas auto --gas-adjustment 1.3 --node http://127.0.0.1:36657 --output json -y | jq -r '.txhash') && echo $TX_HASH

    This will get you the transaction hash for the smart contract deployment.

    DANGER

    If you run into errors with variables on the previous command, or commands in the remainder of the tutorial, cross-reference the variables in the command with the variables in the init.sh script.

    ๐ŸŒŸ Contract interaction on CosmWasm โ€‹

    In the previous steps, we have stored out contract's tx hash in an environment variable for later use.

    The following guide will show you how to deploy and interact with a contract using CLI. For scripting using Rust, you can use cw-orchestrator.

    ๐Ÿ”Ž Contract querying โ€‹

    Now, let's query our transaction hash for its code ID:

    bash
    CODE_ID=$(wasmd query tx --type=hash $TX_HASH --node http://127.0.0.1:36657 --output json | jq -r '.events[-1].attributes[1].value')
    +  cosmwasm/rust-optimizer-arm64:0.12.8

    This will place the optimized Wasm bytecode at artifacts/cw_nameservice.wasm.

    ๐Ÿš€ Contract deployment โ€‹

    Let's now deploy our smart contract!

    In order to deploy a contract, you can use the command line as described below. For a better experience and to use Rust code instead of the command line to deploy/script and test your contracts, you can use cw-orchestrator.

    Run the following in the ~/cw-contracts/contracts/nameservice directory:

    bash
    TX_HASH=$(wasmd tx wasm store artifacts/cw_nameservice.wasm --from localwasm-key --keyring-backend test --chain-id localwasm --gas-prices 0.025uwasm --gas auto --gas-adjustment 1.3 --node http://127.0.0.1:36657 --output json -y | jq -r '.txhash') && echo $TX_HASH
    bash
    TX_HASH=$(wasmd tx wasm store artifacts/cw_nameservice-aarch64.wasm --from localwasm-key --keyring-backend test --chain-id localwasm --gas-prices 0.025uwasm --gas auto --gas-adjustment 1.3 --node http://127.0.0.1:36657 --output json -y | jq -r '.txhash') && echo $TX_HASH

    This will get you the transaction hash for the smart contract deployment.

    DANGER

    If you run into errors with variables on the previous command, or commands in the remainder of the tutorial, cross-reference the variables in the command with the variables in the init.sh script.

    ๐ŸŒŸ Contract interaction on CosmWasm โ€‹

    In the previous steps, we have stored out contract's tx hash in an environment variable for later use.

    The following guide will show you how to deploy and interact with a contract using CLI. For scripting using Rust, you can use cw-orchestrator.

    ๐Ÿ”Ž Contract querying โ€‹

    Now, let's query our transaction hash for its code ID:

    bash
    CODE_ID=$(wasmd query tx --type=hash $TX_HASH --node http://127.0.0.1:36657 --output json | jq -r '.events[-1].attributes[1].value')
     echo $CODE_ID

    This will give us back the Code ID of the deployed contract.

    In our case, since it's the first contract deployed on our local network, the value is 1.

    Now, we can take a look at the contracts instantiated by this Code ID:

    bash
    wasmd query wasm list-contract-by-code $CODE_ID --node http://127.0.0.1:36657 --output json

    We get the following output:

    json
    {"contracts":[],"pagination":{"next_key":null,"total":"0"}}

    ๐Ÿ“ƒ Contract instantiation โ€‹

    We start instantiating the contract by writing up the following INIT message for nameservice contract. Here, we are specifying that purchase_price of a name is 100uwasm and transfer_price is 999uwasm.

    bash
    INIT='{"purchase_price":{"amount":"100","denom":"uwasm"},"transfer_price":{"amount":"999","denom":"uwasm"}}'
     wasmd tx wasm instantiate $CODE_ID "$INIT" --from localwasm-key --keyring-backend test --label "name service" --chain-id localwasm --gas-prices 0.025uwasm --gas auto --gas-adjustment 1.3 -y --no-admin --node http://127.0.0.1:36657

    ๐Ÿ“„ Contract interaction โ€‹

    Now that we instantiated it, we can interact further with the contract:

    bash
    wasmd query wasm list-contract-by-code $CODE_ID --output json --node http://127.0.0.1:36657
     CONTRACT=$(wasmd query wasm list-contract-by-code $CODE_ID --output json --node http://127.0.0.1:36657 | jq -r '.contracts[-1]')
    @@ -72,4 +72,4 @@ import{C as n}from"./chunks/callout.d775988b.js";import{o,c as l,k as s,O as p,a
     timestamp: ""
     tx: null
     txhash: C147257485B72E7FFA5FDB943C94CE951A37817554339586FFD645AD2AA397C3

    If you try to register the same name again, you'll see an expected error:

    bash
    Error: rpc error: code = Unknown desc = rpc error: code = Unknown desc = failed to execute message; message index: 0: Name has been taken (name fred): execute wasm contract failed [CosmWasm/wasmd/x/wasm/keeper/keeper.go:364] With gas wanted: '0' and gas used: '123809' : unknown request

    Next, query the owner of the name record:

    bash
    NAME_QUERY='{"resolve_record": {"name": "fred"}}'
    -wasmd query wasm contract-state smart $CONTRACT "$NAME_QUERY" --node http://127.0.0.1:36657 --output json

    You'll see the owner's address in a JSON response:

    bash
    {"data":{"address":"wasm1y9ceqvnsnm9xtcdmhrjvv4rslgwfzmrzky2c5z"}}

    With that, we have instantiated and interacted with the CosmWasm nameservice smart contract on our local DA network using Rollkit!

    `,98),F=JSON.parse('{"title":"๐Ÿ—ž๏ธ CosmWasm rollup","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"๐Ÿ—ž๏ธ CosmWasm rollup | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/cosmwasm.md","filePath":"tutorials/cosmwasm.md","lastUpdated":1717671233000}'),y={name:"tutorials/cosmwasm.md"},m=Object.assign(y,{setup(D){return(A,d)=>(o(),l("div",null,[e,c,s("div",r,[C,p(n)]),i]))}});export{F as __pageData,m as default}; +wasmd query wasm contract-state smart $CONTRACT "$NAME_QUERY" --node http://127.0.0.1:36657 --output json

    You'll see the owner's address in a JSON response:

    bash
    {"data":{"address":"wasm1y9ceqvnsnm9xtcdmhrjvv4rslgwfzmrzky2c5z"}}

    With that, we have instantiated and interacted with the CosmWasm nameservice smart contract on our local DA network using Rollkit!

    `,98),F=JSON.parse('{"title":"๐Ÿ—ž๏ธ CosmWasm rollup","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"๐Ÿ—ž๏ธ CosmWasm rollup | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/cosmwasm.md","filePath":"tutorials/cosmwasm.md","lastUpdated":1717768398000}'),y={name:"tutorials/cosmwasm.md"},m=Object.assign(y,{setup(D){return(A,d)=>(o(),l("div",null,[e,c,s("div",r,[C,p(n)]),i]))}});export{F as __pageData,m as default}; diff --git a/pr-383/assets/tutorials_cosmwasm.md.79f07a6e.lean.js b/pr-383/assets/tutorials_cosmwasm.md.5bcdfd4f.lean.js similarity index 94% rename from pr-383/assets/tutorials_cosmwasm.md.79f07a6e.lean.js rename to pr-383/assets/tutorials_cosmwasm.md.5bcdfd4f.lean.js index 85f042c0f..a0c7d9561 100644 --- a/pr-383/assets/tutorials_cosmwasm.md.79f07a6e.lean.js +++ b/pr-383/assets/tutorials_cosmwasm.md.5bcdfd4f.lean.js @@ -1 +1 @@ -import{C as n}from"./chunks/callout.d775988b.js";import{o,c as l,k as s,O as p,a,X as t}from"./chunks/framework.be0a7370.js";const e=s("h1",{id:"๐Ÿ—ž๏ธ-cosmwasm-rollup",tabindex:"-1"},[a("๐Ÿ—ž๏ธ CosmWasm rollup "),s("a",{class:"header-anchor",href:"#๐Ÿ—ž๏ธ-cosmwasm-rollup","aria-label":'Permalink to "๐Ÿ—ž๏ธ CosmWasm rollup"'},"โ€‹")],-1),c=s("p",null,[a("CosmWasm is a smart contracting platform built for the Cosmos ecosystem by making use of "),s("a",{href:"https://webassembly.org",target:"_blank",rel:"noreferrer"},"WebAssembly"),a(" (Wasm) to build smart contracts for Cosmos-SDK. In this tutorial, we will be exploring how to integrate CosmWasm with local DA layer using Rollkit.")],-1),r={class:"tip custom-block"},C=s("p",{class:"custom-block-title"},"TIP",-1),i=t("",98),F=JSON.parse('{"title":"๐Ÿ—ž๏ธ CosmWasm rollup","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"๐Ÿ—ž๏ธ CosmWasm rollup | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/cosmwasm.md","filePath":"tutorials/cosmwasm.md","lastUpdated":1717671233000}'),y={name:"tutorials/cosmwasm.md"},m=Object.assign(y,{setup(D){return(A,d)=>(o(),l("div",null,[e,c,s("div",r,[C,p(n)]),i]))}});export{F as __pageData,m as default}; +import{C as n}from"./chunks/callout.d775988b.js";import{o,c as l,k as s,O as p,a,X as t}from"./chunks/framework.be0a7370.js";const e=s("h1",{id:"๐Ÿ—ž๏ธ-cosmwasm-rollup",tabindex:"-1"},[a("๐Ÿ—ž๏ธ CosmWasm rollup "),s("a",{class:"header-anchor",href:"#๐Ÿ—ž๏ธ-cosmwasm-rollup","aria-label":'Permalink to "๐Ÿ—ž๏ธ CosmWasm rollup"'},"โ€‹")],-1),c=s("p",null,[a("CosmWasm is a smart contracting platform built for the Cosmos ecosystem by making use of "),s("a",{href:"https://webassembly.org",target:"_blank",rel:"noreferrer"},"WebAssembly"),a(" (Wasm) to build smart contracts for Cosmos-SDK. In this tutorial, we will be exploring how to integrate CosmWasm with local DA layer using Rollkit.")],-1),r={class:"tip custom-block"},C=s("p",{class:"custom-block-title"},"TIP",-1),i=t("",98),F=JSON.parse('{"title":"๐Ÿ—ž๏ธ CosmWasm rollup","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"๐Ÿ—ž๏ธ CosmWasm rollup | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/cosmwasm.md","filePath":"tutorials/cosmwasm.md","lastUpdated":1717768398000}'),y={name:"tutorials/cosmwasm.md"},m=Object.assign(y,{setup(D){return(A,d)=>(o(),l("div",null,[e,c,s("div",r,[C,p(n)]),i]))}});export{F as __pageData,m as default}; diff --git a/pr-383/assets/tutorials_gm-world-arabica-testnet.md.3d55a9f4.js b/pr-383/assets/tutorials_gm-world-arabica-testnet.md.636d72b3.js similarity index 99% rename from pr-383/assets/tutorials_gm-world-arabica-testnet.md.3d55a9f4.js rename to pr-383/assets/tutorials_gm-world-arabica-testnet.md.636d72b3.js index 231ff5bf0..ab291fef4 100644 --- a/pr-383/assets/tutorials_gm-world-arabica-testnet.md.3d55a9f4.js +++ b/pr-383/assets/tutorials_gm-world-arabica-testnet.md.636d72b3.js @@ -30,4 +30,4 @@ import{_ as e}from"./chunks/gm.062c6da2.js";import{C as o}from"./chunks/callout. ctx := sdk.UnwrapSDKContext(goCtx) _ = ctx return &types.QueryGmResponse{Text: "gm world!"}, nil -}

    Theย queryย command has also scaffolded x/gm/client/cli/query_gm.goย that implements a CLI equivalent of the gm query and mounted this command in x/gm/client/cli/query.go.

    Restart your rollup โ€‹

    Restart your rollup by running the init-arabica-testnet.sh script again.

    Query your rollup โ€‹

    In a separate window, run the following command:

    bash
    gmd q gm gm

    We will get the following JSON response:

    bash
    text: gm world!

    gm.png

    Next steps โ€‹

    Congratulations ๐ŸŽ‰ you've successfully built your first rollup and queried it!

    In the next tutorial, you'll learn how to post data to Celestia's Mainnet Beta.

    If you're interested in setting up a full node alongside your sequencer, see the Full and sequencer node rollup setup tutorial.

    ',64),F=JSON.parse('{"title":"GM world rollup: Part 2","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"GM world rollup: Part 2 | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/gm-world-arabica-testnet.md","filePath":"tutorials/gm-world-arabica-testnet.md","lastUpdated":1717671233000}'),y={name:"tutorials/gm-world-arabica-testnet.md"},m=Object.assign(y,{setup(C){return(d,u)=>(n(),l("div",null,[p,s("div",r,[c,t(o)]),i]))}});export{F as __pageData,m as default}; +}

    Theย queryย command has also scaffolded x/gm/client/cli/query_gm.goย that implements a CLI equivalent of the gm query and mounted this command in x/gm/client/cli/query.go.

    Restart your rollup โ€‹

    Restart your rollup by running the init-arabica-testnet.sh script again.

    Query your rollup โ€‹

    In a separate window, run the following command:

    bash
    gmd q gm gm

    We will get the following JSON response:

    bash
    text: gm world!

    gm.png

    Next steps โ€‹

    Congratulations ๐ŸŽ‰ you've successfully built your first rollup and queried it!

    In the next tutorial, you'll learn how to post data to Celestia's Mainnet Beta.

    If you're interested in setting up a full node alongside your sequencer, see the Full and sequencer node rollup setup tutorial.

    ',64),F=JSON.parse('{"title":"GM world rollup: Part 2","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"GM world rollup: Part 2 | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/gm-world-arabica-testnet.md","filePath":"tutorials/gm-world-arabica-testnet.md","lastUpdated":1717768398000}'),y={name:"tutorials/gm-world-arabica-testnet.md"},m=Object.assign(y,{setup(C){return(d,u)=>(n(),l("div",null,[p,s("div",r,[c,t(o)]),i]))}});export{F as __pageData,m as default}; diff --git a/pr-383/assets/tutorials_gm-world-arabica-testnet.md.3d55a9f4.lean.js b/pr-383/assets/tutorials_gm-world-arabica-testnet.md.636d72b3.lean.js similarity index 92% rename from pr-383/assets/tutorials_gm-world-arabica-testnet.md.3d55a9f4.lean.js rename to pr-383/assets/tutorials_gm-world-arabica-testnet.md.636d72b3.lean.js index 15458c534..49a5203af 100644 --- a/pr-383/assets/tutorials_gm-world-arabica-testnet.md.3d55a9f4.lean.js +++ b/pr-383/assets/tutorials_gm-world-arabica-testnet.md.636d72b3.lean.js @@ -1 +1 @@ -import{_ as e}from"./chunks/gm.062c6da2.js";import{C as o}from"./chunks/callout.d775988b.js";import{o as n,c as l,k as s,O as t,X as a}from"./chunks/framework.be0a7370.js";const p=a("",4),r={class:"tip custom-block"},c=s("p",{class:"custom-block-title"},"TIP",-1),i=a("",64),F=JSON.parse('{"title":"GM world rollup: Part 2","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"GM world rollup: Part 2 | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/gm-world-arabica-testnet.md","filePath":"tutorials/gm-world-arabica-testnet.md","lastUpdated":1717671233000}'),y={name:"tutorials/gm-world-arabica-testnet.md"},m=Object.assign(y,{setup(C){return(d,u)=>(n(),l("div",null,[p,s("div",r,[c,t(o)]),i]))}});export{F as __pageData,m as default}; +import{_ as e}from"./chunks/gm.062c6da2.js";import{C as o}from"./chunks/callout.d775988b.js";import{o as n,c as l,k as s,O as t,X as a}from"./chunks/framework.be0a7370.js";const p=a("",4),r={class:"tip custom-block"},c=s("p",{class:"custom-block-title"},"TIP",-1),i=a("",64),F=JSON.parse('{"title":"GM world rollup: Part 2","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"GM world rollup: Part 2 | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/gm-world-arabica-testnet.md","filePath":"tutorials/gm-world-arabica-testnet.md","lastUpdated":1717768398000}'),y={name:"tutorials/gm-world-arabica-testnet.md"},m=Object.assign(y,{setup(C){return(d,u)=>(n(),l("div",null,[p,s("div",r,[c,t(o)]),i]))}});export{F as __pageData,m as default}; diff --git a/pr-383/assets/tutorials_gm-world-frontend.md.282d1299.js b/pr-383/assets/tutorials_gm-world-frontend.md.bb566fda.js similarity index 98% rename from pr-383/assets/tutorials_gm-world-frontend.md.282d1299.js rename to pr-383/assets/tutorials_gm-world-frontend.md.bb566fda.js index 9bb3aa63e..f53792ec9 100644 --- a/pr-383/assets/tutorials_gm-world-frontend.md.282d1299.js +++ b/pr-383/assets/tutorials_gm-world-frontend.md.bb566fda.js @@ -1,4 +1,4 @@ -import{c as o}from"./chunks/constants.3fbf9100.js";import{C as l}from"./chunks/callout.d775988b.js";import{o as p,c as r,k as s,O as c,t as e,l as n,a,X as t}from"./chunks/framework.be0a7370.js";const i="/docs-preview/pr-383/img/gm-world-frontend-wallet-connected.png",d=s("h1",{id:"gm-world-ui-app",tabindex:"-1"},[a("GM world UI app "),s("a",{class:"header-anchor",href:"#gm-world-ui-app","aria-label":'Permalink to "GM world UI app"'},"โ€‹")],-1),C=s("p",null,[a("This tutorial aims to demonstrate the user interface (UI) application aspect of connecting a wallet to a rollup, showcasing that it's as straightforward as connecting to any other blockchain. It assumes you have the "),s("a",{href:"https://www.keplr.app/",target:"_blank",rel:"noreferrer"},"Keplr"),a(" wallet extension installed in your browser.")],-1),h={class:"tip custom-block"},u=s("p",{class:"custom-block-title"},"TIP",-1),y=s("h2",{id:"๐Ÿ› -prerequisites",tabindex:"-1"},[a("๐Ÿ›  Prerequisites "),s("a",{class:"header-anchor",href:"#๐Ÿ› -prerequisites","aria-label":'Permalink to "๐Ÿ›  Prerequisites"'},"โ€‹")],-1),m=s("p",null,[a("Before you start, ensure you have completed the "),s("a",{href:"/docs-preview/pr-383/tutorials/gm-world"},"GM world"),a(" tutorial. Your rollup needs to be running since the app will connect to it via RPC.")],-1),_=s("p",null,"You will also need Yarn installed for web app development.",-1),A={class:"tip custom-block"},g=s("p",{class:"custom-block-title"},"TIP",-1),D=s("p",null,"If you don't have Yarn or Node.js, run this command to install it using cURL on most Linux distros and macOS:",-1),b={class:"language-bash"},f=s("button",{title:"Copy Code",class:"copy"},null,-1),w=s("span",{class:"lang"},"bash",-1),E={class:"shiki material-theme-palenight"},v={class:"line"},k=t('curl -sSL https://rollkit.dev/install-yarn.sh | bash -s ',12),F={style:{color:"#C3E88D"}},B=s("span",{style:{color:"#A6ACCD"}}," ",-1),x={style:{color:"#C3E88D"}},P=t(`

    ๐Ÿ“ฆ Cloning the repo โ€‹

    First, clone the repo with a simple frontend app that connects to the rollup:

    bash
    git clone https://github.com/rollkit/gm-frontend.git
    +import{c as o}from"./chunks/constants.6a6fd4fb.js";import{C as l}from"./chunks/callout.d775988b.js";import{o as p,c as r,k as s,O as c,t as e,l as n,a,X as t}from"./chunks/framework.be0a7370.js";const i="/docs-preview/pr-383/img/gm-world-frontend-wallet-connected.png",d=s("h1",{id:"gm-world-ui-app",tabindex:"-1"},[a("GM world UI app "),s("a",{class:"header-anchor",href:"#gm-world-ui-app","aria-label":'Permalink to "GM world UI app"'},"โ€‹")],-1),C=s("p",null,[a("This tutorial aims to demonstrate the user interface (UI) application aspect of connecting a wallet to a rollup, showcasing that it's as straightforward as connecting to any other blockchain. It assumes you have the "),s("a",{href:"https://www.keplr.app/",target:"_blank",rel:"noreferrer"},"Keplr"),a(" wallet extension installed in your browser.")],-1),h={class:"tip custom-block"},u=s("p",{class:"custom-block-title"},"TIP",-1),y=s("h2",{id:"๐Ÿ› -prerequisites",tabindex:"-1"},[a("๐Ÿ›  Prerequisites "),s("a",{class:"header-anchor",href:"#๐Ÿ› -prerequisites","aria-label":'Permalink to "๐Ÿ›  Prerequisites"'},"โ€‹")],-1),m=s("p",null,[a("Before you start, ensure you have completed the "),s("a",{href:"/docs-preview/pr-383/tutorials/gm-world"},"GM world"),a(" tutorial. Your rollup needs to be running since the app will connect to it via RPC.")],-1),_=s("p",null,"You will also need Yarn installed for web app development.",-1),A={class:"tip custom-block"},g=s("p",{class:"custom-block-title"},"TIP",-1),D=s("p",null,"If you don't have Yarn or Node.js, run this command to install it using cURL on most Linux distros and macOS:",-1),b={class:"language-bash"},f=s("button",{title:"Copy Code",class:"copy"},null,-1),w=s("span",{class:"lang"},"bash",-1),E={class:"shiki material-theme-palenight"},v={class:"line"},k=t('curl -sSL https://rollkit.dev/install-yarn.sh | bash -s ',12),F={style:{color:"#C3E88D"}},B=s("span",{style:{color:"#A6ACCD"}}," ",-1),x={style:{color:"#C3E88D"}},P=t(`

    ๐Ÿ“ฆ Cloning the repo โ€‹

    First, clone the repo with a simple frontend app that connects to the rollup:

    bash
    git clone https://github.com/rollkit/gm-frontend.git
     cd gm-frontend

    Next, install the dependencies:

    bash
    yarn

    ๐Ÿš€ Running the app โ€‹

    Now, you can run the app using the following command:

    bash
    yarn dev

    You should see the following output indicating that the development server is up and running:

    bash
    ready - started server on 0.0.0.0:3000, url: http://localhost:3000
     info  - SWC minify release candidate enabled. https://nextjs.link/swcmin
    -event - compiled client and server successfully in 7.8s (2225 modules)

    ๐Ÿ”— Connecting your wallet โ€‹

    To connect your Keplr wallet to the application, simply open your browser and go to http://localhost:3000.

    Click the "Connect Wallet" button on the page, and approve the connection request in the Keplr prompt.

    Once authorized, your wallet address will be displayed, confirming that your wallet is successfully connected.

    gm-world-frontend-connected

    TIP

    If you run into any issues, make sure your Keplr wallet is updated and set to connect to your local environment.

    ๐ŸŽ‰ Next steps โ€‹

    Congratulations! You've experienced connecting to a rollup from the user side โ€” simple and straightforward. Now, you might consider exploring how to add more application logic to your rollup using the Cosmos SDK, as demonstrated in our Wordle App tutorial.

    ',18),U=JSON.parse('{"title":"GM world UI app","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"GM world UI app | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/gm-world-frontend.md","filePath":"tutorials/gm-world-frontend.md","lastUpdated":1717671233000}'),T={name:"tutorials/gm-world-frontend.md"},Y=Object.assign(T,{setup(q){return(I,N)=>(p(),r("div",null,[d,C,s("div",h,[u,c(l)]),y,m,_,s("div",A,[g,D,s("div",b,[f,w,s("pre",E,[s("code",null,[s("span",v,[k,s("span",F,e(n(o).nodeVersion),1),B,s("span",x,e(n(o).yarnVersion),1)])])])])]),P]))}});export{U as __pageData,Y as default}; +event - compiled client and server successfully in 7.8s (2225 modules)

    ๐Ÿ”— Connecting your wallet โ€‹

    To connect your Keplr wallet to the application, simply open your browser and go to http://localhost:3000.

    Click the "Connect Wallet" button on the page, and approve the connection request in the Keplr prompt.

    Once authorized, your wallet address will be displayed, confirming that your wallet is successfully connected.

    gm-world-frontend-connected

    TIP

    If you run into any issues, make sure your Keplr wallet is updated and set to connect to your local environment.

    ๐ŸŽ‰ Next steps โ€‹

    Congratulations! You've experienced connecting to a rollup from the user side โ€” simple and straightforward. Now, you might consider exploring how to add more application logic to your rollup using the Cosmos SDK, as demonstrated in our Wordle App tutorial.

    ',18),U=JSON.parse('{"title":"GM world UI app","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"GM world UI app | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/gm-world-frontend.md","filePath":"tutorials/gm-world-frontend.md","lastUpdated":1717768398000}'),T={name:"tutorials/gm-world-frontend.md"},Y=Object.assign(T,{setup(q){return(I,N)=>(p(),r("div",null,[d,C,s("div",h,[u,c(l)]),y,m,_,s("div",A,[g,D,s("div",b,[f,w,s("pre",E,[s("code",null,[s("span",v,[k,s("span",F,e(n(o).nodeVersion),1),B,s("span",x,e(n(o).yarnVersion),1)])])])])]),P]))}});export{U as __pageData,Y as default}; diff --git a/pr-383/assets/tutorials_gm-world-frontend.md.282d1299.lean.js b/pr-383/assets/tutorials_gm-world-frontend.md.bb566fda.lean.js similarity index 95% rename from pr-383/assets/tutorials_gm-world-frontend.md.282d1299.lean.js rename to pr-383/assets/tutorials_gm-world-frontend.md.bb566fda.lean.js index 1ff9b7281..fe5f939b7 100644 --- a/pr-383/assets/tutorials_gm-world-frontend.md.282d1299.lean.js +++ b/pr-383/assets/tutorials_gm-world-frontend.md.bb566fda.lean.js @@ -1 +1 @@ -import{c as o}from"./chunks/constants.3fbf9100.js";import{C as l}from"./chunks/callout.d775988b.js";import{o as p,c as r,k as s,O as c,t as e,l as n,a,X as t}from"./chunks/framework.be0a7370.js";const i="/docs-preview/pr-383/img/gm-world-frontend-wallet-connected.png",d=s("h1",{id:"gm-world-ui-app",tabindex:"-1"},[a("GM world UI app "),s("a",{class:"header-anchor",href:"#gm-world-ui-app","aria-label":'Permalink to "GM world UI app"'},"โ€‹")],-1),C=s("p",null,[a("This tutorial aims to demonstrate the user interface (UI) application aspect of connecting a wallet to a rollup, showcasing that it's as straightforward as connecting to any other blockchain. It assumes you have the "),s("a",{href:"https://www.keplr.app/",target:"_blank",rel:"noreferrer"},"Keplr"),a(" wallet extension installed in your browser.")],-1),h={class:"tip custom-block"},u=s("p",{class:"custom-block-title"},"TIP",-1),y=s("h2",{id:"๐Ÿ› -prerequisites",tabindex:"-1"},[a("๐Ÿ›  Prerequisites "),s("a",{class:"header-anchor",href:"#๐Ÿ› -prerequisites","aria-label":'Permalink to "๐Ÿ›  Prerequisites"'},"โ€‹")],-1),m=s("p",null,[a("Before you start, ensure you have completed the "),s("a",{href:"/docs-preview/pr-383/tutorials/gm-world"},"GM world"),a(" tutorial. Your rollup needs to be running since the app will connect to it via RPC.")],-1),_=s("p",null,"You will also need Yarn installed for web app development.",-1),A={class:"tip custom-block"},g=s("p",{class:"custom-block-title"},"TIP",-1),D=s("p",null,"If you don't have Yarn or Node.js, run this command to install it using cURL on most Linux distros and macOS:",-1),b={class:"language-bash"},f=s("button",{title:"Copy Code",class:"copy"},null,-1),w=s("span",{class:"lang"},"bash",-1),E={class:"shiki material-theme-palenight"},v={class:"line"},k=t("",12),F={style:{color:"#C3E88D"}},B=s("span",{style:{color:"#A6ACCD"}}," ",-1),x={style:{color:"#C3E88D"}},P=t("",18),U=JSON.parse('{"title":"GM world UI app","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"GM world UI app | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/gm-world-frontend.md","filePath":"tutorials/gm-world-frontend.md","lastUpdated":1717671233000}'),T={name:"tutorials/gm-world-frontend.md"},Y=Object.assign(T,{setup(q){return(I,N)=>(p(),r("div",null,[d,C,s("div",h,[u,c(l)]),y,m,_,s("div",A,[g,D,s("div",b,[f,w,s("pre",E,[s("code",null,[s("span",v,[k,s("span",F,e(n(o).nodeVersion),1),B,s("span",x,e(n(o).yarnVersion),1)])])])])]),P]))}});export{U as __pageData,Y as default}; +import{c as o}from"./chunks/constants.6a6fd4fb.js";import{C as l}from"./chunks/callout.d775988b.js";import{o as p,c as r,k as s,O as c,t as e,l as n,a,X as t}from"./chunks/framework.be0a7370.js";const i="/docs-preview/pr-383/img/gm-world-frontend-wallet-connected.png",d=s("h1",{id:"gm-world-ui-app",tabindex:"-1"},[a("GM world UI app "),s("a",{class:"header-anchor",href:"#gm-world-ui-app","aria-label":'Permalink to "GM world UI app"'},"โ€‹")],-1),C=s("p",null,[a("This tutorial aims to demonstrate the user interface (UI) application aspect of connecting a wallet to a rollup, showcasing that it's as straightforward as connecting to any other blockchain. It assumes you have the "),s("a",{href:"https://www.keplr.app/",target:"_blank",rel:"noreferrer"},"Keplr"),a(" wallet extension installed in your browser.")],-1),h={class:"tip custom-block"},u=s("p",{class:"custom-block-title"},"TIP",-1),y=s("h2",{id:"๐Ÿ› -prerequisites",tabindex:"-1"},[a("๐Ÿ›  Prerequisites "),s("a",{class:"header-anchor",href:"#๐Ÿ› -prerequisites","aria-label":'Permalink to "๐Ÿ›  Prerequisites"'},"โ€‹")],-1),m=s("p",null,[a("Before you start, ensure you have completed the "),s("a",{href:"/docs-preview/pr-383/tutorials/gm-world"},"GM world"),a(" tutorial. Your rollup needs to be running since the app will connect to it via RPC.")],-1),_=s("p",null,"You will also need Yarn installed for web app development.",-1),A={class:"tip custom-block"},g=s("p",{class:"custom-block-title"},"TIP",-1),D=s("p",null,"If you don't have Yarn or Node.js, run this command to install it using cURL on most Linux distros and macOS:",-1),b={class:"language-bash"},f=s("button",{title:"Copy Code",class:"copy"},null,-1),w=s("span",{class:"lang"},"bash",-1),E={class:"shiki material-theme-palenight"},v={class:"line"},k=t("",12),F={style:{color:"#C3E88D"}},B=s("span",{style:{color:"#A6ACCD"}}," ",-1),x={style:{color:"#C3E88D"}},P=t("",18),U=JSON.parse('{"title":"GM world UI app","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"GM world UI app | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/gm-world-frontend.md","filePath":"tutorials/gm-world-frontend.md","lastUpdated":1717768398000}'),T={name:"tutorials/gm-world-frontend.md"},Y=Object.assign(T,{setup(q){return(I,N)=>(p(),r("div",null,[d,C,s("div",h,[u,c(l)]),y,m,_,s("div",A,[g,D,s("div",b,[f,w,s("pre",E,[s("code",null,[s("span",v,[k,s("span",F,e(n(o).nodeVersion),1),B,s("span",x,e(n(o).yarnVersion),1)])])])])]),P]))}});export{U as __pageData,Y as default}; diff --git a/pr-383/assets/tutorials_gm-world-mainnet.md.45f86e76.js b/pr-383/assets/tutorials_gm-world-mainnet.md.fd459b42.js similarity index 99% rename from pr-383/assets/tutorials_gm-world-mainnet.md.45f86e76.js rename to pr-383/assets/tutorials_gm-world-mainnet.md.fd459b42.js index df5fb637e..36972e536 100644 --- a/pr-383/assets/tutorials_gm-world-mainnet.md.45f86e76.js +++ b/pr-383/assets/tutorials_gm-world-mainnet.md.fd459b42.js @@ -1 +1 @@ -import{C as t}from"./chunks/callout.d775988b.js";import{o as s,c as o,k as e,O as l,a,X as n}from"./chunks/framework.be0a7370.js";const r=e("h1",{id:"gm-world-rollup-part-3",tabindex:"-1"},[a("GM world rollup: Part 3 "),e("a",{class:"header-anchor",href:"#gm-world-rollup-part-3","aria-label":'Permalink to "GM world rollup: Part 3"'},"โ€‹")],-1),i=e("p",null,[a("This tutorial is part 3 of the GM world rollup tutorials. In this tutorial, it is expected that you've completed "),e("a",{href:"./gm-world"},"part 1"),a(" or "),e("a",{href:"./gm-world-mocha-testnet"},"part 2"),a(" of the tutorial and are familiar with running a local rollup devnet or posting to a Celestia testnet.")],-1),p={class:"tip custom-block"},c=e("p",{class:"custom-block-title"},"TIP",-1),d=n('

    Deploying to Celestia Mainnet Beta โ€‹

    ๐Ÿชถย Run a Celestia light node โ€‹

    Fully sync and fund a light node on Mainnet beta (celestia). Follow instructions to install and start your Celestia data availability layer light node selecting the Arabica network. You can find instructions to install and run the node. After the node is synced, stop the light node.

    Clear previous chain history โ€‹

    Before starting the rollup, we need to remove the old project folders:

    bash
    rm -r $HOME/go/bin/gmd && rm -rf $HOME/.gm

    Start the rollup on mainnet โ€‹

    For this portion, you will need to stop the rollup that you have running from parts 1 and 2 of the tutorial, using Control + C in the terminal.

    1. Download the script for deploying to Celestia's Mainnet Beta:

      bash
      # From inside the `gm` directory\nwget https://rollkit.dev/gm/init-mainnet.sh
    2. Ensure that the account for your light node is funded.

    3. Run the init-mainnet.sh script:

      bash
      bash init-mainnet.sh
    4. Watch as your rollup posts blocks to Celestia!

    5. View your rollup by finding your namespace or account Celenium.

    View the example rollup's namespace on Celenium.

    TIP

    init-mainnet.sh script uses a default namespace 00000000000000000000000000000000000000000008e5f679bf7116cb. You can set your own by using a command similar to this (or, you could get creative ๐Ÿ˜Ž):

    bash
    openssl rand -hex 10

    Replace the last 10 characters in 00000000000000000000000000000000000000000008e5f679bf7116cb with the newly generated 10 characters.

    Learn more about namespaces .

    Restarting your rollup โ€‹

    When you ran init-mainnet.sh, the script generated a script called restart-mainnet.sh in the $HOME/gm directory for you to use to restart your rollup.

    In order to do so, restart celestia light node and then run:

    bash
    bash restart-mainnet.sh

    Next steps โ€‹

    Congratulations! You have a Rollkit rollup running on Celestia's Mainnet Beta.

    If you're interested in setting up a full node alongside your sequencer, see the Full and sequencer node rollup setup tutorial.

    ',18),b=JSON.parse('{"title":"GM world rollup: Part 3","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"GM world rollup: Part 3 | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/gm-world-mainnet.md","filePath":"tutorials/gm-world-mainnet.md","lastUpdated":1717671233000}'),h={name:"tutorials/gm-world-mainnet.md"},f=Object.assign(h,{setup(u){return(m,y)=>(s(),o("div",null,[r,i,e("div",p,[c,l(t)]),d]))}});export{b as __pageData,f as default}; +import{C as t}from"./chunks/callout.d775988b.js";import{o as s,c as o,k as e,O as l,a,X as n}from"./chunks/framework.be0a7370.js";const r=e("h1",{id:"gm-world-rollup-part-3",tabindex:"-1"},[a("GM world rollup: Part 3 "),e("a",{class:"header-anchor",href:"#gm-world-rollup-part-3","aria-label":'Permalink to "GM world rollup: Part 3"'},"โ€‹")],-1),i=e("p",null,[a("This tutorial is part 3 of the GM world rollup tutorials. In this tutorial, it is expected that you've completed "),e("a",{href:"./gm-world"},"part 1"),a(" or "),e("a",{href:"./gm-world-mocha-testnet"},"part 2"),a(" of the tutorial and are familiar with running a local rollup devnet or posting to a Celestia testnet.")],-1),p={class:"tip custom-block"},c=e("p",{class:"custom-block-title"},"TIP",-1),d=n('

    Deploying to Celestia Mainnet Beta โ€‹

    ๐Ÿชถย Run a Celestia light node โ€‹

    Fully sync and fund a light node on Mainnet beta (celestia). Follow instructions to install and start your Celestia data availability layer light node selecting the Arabica network. You can find instructions to install and run the node. After the node is synced, stop the light node.

    Clear previous chain history โ€‹

    Before starting the rollup, we need to remove the old project folders:

    bash
    rm -r $HOME/go/bin/gmd && rm -rf $HOME/.gm

    Start the rollup on mainnet โ€‹

    For this portion, you will need to stop the rollup that you have running from parts 1 and 2 of the tutorial, using Control + C in the terminal.

    1. Download the script for deploying to Celestia's Mainnet Beta:

      bash
      # From inside the `gm` directory\nwget https://rollkit.dev/gm/init-mainnet.sh
    2. Ensure that the account for your light node is funded.

    3. Run the init-mainnet.sh script:

      bash
      bash init-mainnet.sh
    4. Watch as your rollup posts blocks to Celestia!

    5. View your rollup by finding your namespace or account Celenium.

    View the example rollup's namespace on Celenium.

    TIP

    init-mainnet.sh script uses a default namespace 00000000000000000000000000000000000000000008e5f679bf7116cb. You can set your own by using a command similar to this (or, you could get creative ๐Ÿ˜Ž):

    bash
    openssl rand -hex 10

    Replace the last 10 characters in 00000000000000000000000000000000000000000008e5f679bf7116cb with the newly generated 10 characters.

    Learn more about namespaces .

    Restarting your rollup โ€‹

    When you ran init-mainnet.sh, the script generated a script called restart-mainnet.sh in the $HOME/gm directory for you to use to restart your rollup.

    In order to do so, restart celestia light node and then run:

    bash
    bash restart-mainnet.sh

    Next steps โ€‹

    Congratulations! You have a Rollkit rollup running on Celestia's Mainnet Beta.

    If you're interested in setting up a full node alongside your sequencer, see the Full and sequencer node rollup setup tutorial.

    ',18),b=JSON.parse('{"title":"GM world rollup: Part 3","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"GM world rollup: Part 3 | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/gm-world-mainnet.md","filePath":"tutorials/gm-world-mainnet.md","lastUpdated":1717768398000}'),h={name:"tutorials/gm-world-mainnet.md"},f=Object.assign(h,{setup(u){return(m,y)=>(s(),o("div",null,[r,i,e("div",p,[c,l(t)]),d]))}});export{b as __pageData,f as default}; diff --git a/pr-383/assets/tutorials_gm-world-mainnet.md.45f86e76.lean.js b/pr-383/assets/tutorials_gm-world-mainnet.md.fd459b42.lean.js similarity index 95% rename from pr-383/assets/tutorials_gm-world-mainnet.md.45f86e76.lean.js rename to pr-383/assets/tutorials_gm-world-mainnet.md.fd459b42.lean.js index 6236f8c95..727e857e7 100644 --- a/pr-383/assets/tutorials_gm-world-mainnet.md.45f86e76.lean.js +++ b/pr-383/assets/tutorials_gm-world-mainnet.md.fd459b42.lean.js @@ -1 +1 @@ -import{C as t}from"./chunks/callout.d775988b.js";import{o as s,c as o,k as e,O as l,a,X as n}from"./chunks/framework.be0a7370.js";const r=e("h1",{id:"gm-world-rollup-part-3",tabindex:"-1"},[a("GM world rollup: Part 3 "),e("a",{class:"header-anchor",href:"#gm-world-rollup-part-3","aria-label":'Permalink to "GM world rollup: Part 3"'},"โ€‹")],-1),i=e("p",null,[a("This tutorial is part 3 of the GM world rollup tutorials. In this tutorial, it is expected that you've completed "),e("a",{href:"./gm-world"},"part 1"),a(" or "),e("a",{href:"./gm-world-mocha-testnet"},"part 2"),a(" of the tutorial and are familiar with running a local rollup devnet or posting to a Celestia testnet.")],-1),p={class:"tip custom-block"},c=e("p",{class:"custom-block-title"},"TIP",-1),d=n("",18),b=JSON.parse('{"title":"GM world rollup: Part 3","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"GM world rollup: Part 3 | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/gm-world-mainnet.md","filePath":"tutorials/gm-world-mainnet.md","lastUpdated":1717671233000}'),h={name:"tutorials/gm-world-mainnet.md"},f=Object.assign(h,{setup(u){return(m,y)=>(s(),o("div",null,[r,i,e("div",p,[c,l(t)]),d]))}});export{b as __pageData,f as default}; +import{C as t}from"./chunks/callout.d775988b.js";import{o as s,c as o,k as e,O as l,a,X as n}from"./chunks/framework.be0a7370.js";const r=e("h1",{id:"gm-world-rollup-part-3",tabindex:"-1"},[a("GM world rollup: Part 3 "),e("a",{class:"header-anchor",href:"#gm-world-rollup-part-3","aria-label":'Permalink to "GM world rollup: Part 3"'},"โ€‹")],-1),i=e("p",null,[a("This tutorial is part 3 of the GM world rollup tutorials. In this tutorial, it is expected that you've completed "),e("a",{href:"./gm-world"},"part 1"),a(" or "),e("a",{href:"./gm-world-mocha-testnet"},"part 2"),a(" of the tutorial and are familiar with running a local rollup devnet or posting to a Celestia testnet.")],-1),p={class:"tip custom-block"},c=e("p",{class:"custom-block-title"},"TIP",-1),d=n("",18),b=JSON.parse('{"title":"GM world rollup: Part 3","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"GM world rollup: Part 3 | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/gm-world-mainnet.md","filePath":"tutorials/gm-world-mainnet.md","lastUpdated":1717768398000}'),h={name:"tutorials/gm-world-mainnet.md"},f=Object.assign(h,{setup(u){return(m,y)=>(s(),o("div",null,[r,i,e("div",p,[c,l(t)]),d]))}});export{b as __pageData,f as default}; diff --git a/pr-383/assets/tutorials_gm-world-mocha-testnet.md.155432dd.js b/pr-383/assets/tutorials_gm-world-mocha-testnet.md.3a6787c5.js similarity index 99% rename from pr-383/assets/tutorials_gm-world-mocha-testnet.md.155432dd.js rename to pr-383/assets/tutorials_gm-world-mocha-testnet.md.3a6787c5.js index 3ecefcd72..7edd81a02 100644 --- a/pr-383/assets/tutorials_gm-world-mocha-testnet.md.155432dd.js +++ b/pr-383/assets/tutorials_gm-world-mocha-testnet.md.3a6787c5.js @@ -30,4 +30,4 @@ import{_ as e}from"./chunks/gm.062c6da2.js";import{C as o}from"./chunks/callout. ctx := sdk.UnwrapSDKContext(goCtx) _ = ctx return &types.QueryGmResponse{Text: "gm world!"}, nil -}

    Theย queryย command has also scaffolded x/gm/client/cli/query_gm.goย that implements a CLI equivalent of the gm query and mounted this command in x/gm/client/cli/query.go.

    Restart your rollup โ€‹

    Restart your rollup by running the init-mocha-testnet.sh script again.

    Query your rollup โ€‹

    In a separate window, run the following command:

    bash
    gmd q gm gm

    We will get the following JSON response:

    bash
    text: gm world!

    gm.png

    Next steps โ€‹

    Congratulations ๐ŸŽ‰ you've successfully built your first rollup and queried it!

    In the next tutorial, you'll learn how to post data to Celestia's Mainnet Beta.

    If you're interested in setting up a full node alongside your sequencer, see the Full and sequencer node rollup setup tutorial.

    ',64),F=JSON.parse('{"title":"GM world rollup: Part 2","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"GM world rollup: Part 2 | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/gm-world-mocha-testnet.md","filePath":"tutorials/gm-world-mocha-testnet.md","lastUpdated":1717671233000}'),y={name:"tutorials/gm-world-mocha-testnet.md"},m=Object.assign(y,{setup(C){return(d,u)=>(n(),l("div",null,[p,s("div",r,[c,t(o)]),i]))}});export{F as __pageData,m as default}; +}

    Theย queryย command has also scaffolded x/gm/client/cli/query_gm.goย that implements a CLI equivalent of the gm query and mounted this command in x/gm/client/cli/query.go.

    Restart your rollup โ€‹

    Restart your rollup by running the init-mocha-testnet.sh script again.

    Query your rollup โ€‹

    In a separate window, run the following command:

    bash
    gmd q gm gm

    We will get the following JSON response:

    bash
    text: gm world!

    gm.png

    Next steps โ€‹

    Congratulations ๐ŸŽ‰ you've successfully built your first rollup and queried it!

    In the next tutorial, you'll learn how to post data to Celestia's Mainnet Beta.

    If you're interested in setting up a full node alongside your sequencer, see the Full and sequencer node rollup setup tutorial.

    ',64),F=JSON.parse('{"title":"GM world rollup: Part 2","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"GM world rollup: Part 2 | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/gm-world-mocha-testnet.md","filePath":"tutorials/gm-world-mocha-testnet.md","lastUpdated":1717768398000}'),y={name:"tutorials/gm-world-mocha-testnet.md"},m=Object.assign(y,{setup(C){return(d,u)=>(n(),l("div",null,[p,s("div",r,[c,t(o)]),i]))}});export{F as __pageData,m as default}; diff --git a/pr-383/assets/tutorials_gm-world-mocha-testnet.md.155432dd.lean.js b/pr-383/assets/tutorials_gm-world-mocha-testnet.md.3a6787c5.lean.js similarity index 92% rename from pr-383/assets/tutorials_gm-world-mocha-testnet.md.155432dd.lean.js rename to pr-383/assets/tutorials_gm-world-mocha-testnet.md.3a6787c5.lean.js index 072975883..1a3e4fee3 100644 --- a/pr-383/assets/tutorials_gm-world-mocha-testnet.md.155432dd.lean.js +++ b/pr-383/assets/tutorials_gm-world-mocha-testnet.md.3a6787c5.lean.js @@ -1 +1 @@ -import{_ as e}from"./chunks/gm.062c6da2.js";import{C as o}from"./chunks/callout.d775988b.js";import{o as n,c as l,k as s,O as t,X as a}from"./chunks/framework.be0a7370.js";const p=a("",4),r={class:"tip custom-block"},c=s("p",{class:"custom-block-title"},"TIP",-1),i=a("",64),F=JSON.parse('{"title":"GM world rollup: Part 2","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"GM world rollup: Part 2 | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/gm-world-mocha-testnet.md","filePath":"tutorials/gm-world-mocha-testnet.md","lastUpdated":1717671233000}'),y={name:"tutorials/gm-world-mocha-testnet.md"},m=Object.assign(y,{setup(C){return(d,u)=>(n(),l("div",null,[p,s("div",r,[c,t(o)]),i]))}});export{F as __pageData,m as default}; +import{_ as e}from"./chunks/gm.062c6da2.js";import{C as o}from"./chunks/callout.d775988b.js";import{o as n,c as l,k as s,O as t,X as a}from"./chunks/framework.be0a7370.js";const p=a("",4),r={class:"tip custom-block"},c=s("p",{class:"custom-block-title"},"TIP",-1),i=a("",64),F=JSON.parse('{"title":"GM world rollup: Part 2","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"GM world rollup: Part 2 | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/gm-world-mocha-testnet.md","filePath":"tutorials/gm-world-mocha-testnet.md","lastUpdated":1717768398000}'),y={name:"tutorials/gm-world-mocha-testnet.md"},m=Object.assign(y,{setup(C){return(d,u)=>(n(),l("div",null,[p,s("div",r,[c,t(o)]),i]))}});export{F as __pageData,m as default}; diff --git a/pr-383/assets/tutorials_gm-world.md.c0fc4059.js b/pr-383/assets/tutorials_gm-world.md.a5bbe595.js similarity index 99% rename from pr-383/assets/tutorials_gm-world.md.c0fc4059.js rename to pr-383/assets/tutorials_gm-world.md.a5bbe595.js index a56d0e2ad..3dd96d2ca 100644 --- a/pr-383/assets/tutorials_gm-world.md.c0fc4059.js +++ b/pr-383/assets/tutorials_gm-world.md.a5bbe595.js @@ -1,4 +1,4 @@ -import{C as e}from"./chunks/callout.d775988b.js";import{c as l}from"./chunks/constants.3fbf9100.js";import{o as t,c,k as s,O as r,t as o,l as p,X as n,a}from"./chunks/framework.be0a7370.js";const C=n('

    GM world rollup โ€‹

    ๐ŸŒž Introduction โ€‹

    This tutorial will guide you through building a sovereign gm-world rollup (gm stands for "good morning") using Rollkit. Unlike the quick start guide, this tutorial provides a more practical approach to understanding sovereign rollup development.

    We will cover:

    • Building and configuring a Cosmos-SDK application-specific rollup blockchain.
    • Posting rollup data to a Data Availability (DA) network.
    • Executing transactions (the end goal).

    No prior understanding of the build process is required, just that it utilizes the Cosmos SDK for blockchain applications.

    ',6),y={class:"tip custom-block"},D=s("p",{class:"custom-block-title"},"TIP",-1),i=s("h2",{id:"dependencies",tabindex:"-1"},[a("๐Ÿ› ๏ธ Dependencies "),s("a",{class:"header-anchor",href:"#dependencies","aria-label":'Permalink to "๐Ÿ› ๏ธ Dependencies {#dependencies}"'},"โ€‹")],-1),A=s("p",null,[a("If you followed the "),s("a",{href:"/docs-preview/pr-383/tutorials/quick-start"},"quick start guide"),a(", you should have the Rollkit CLI and Golang installed already. If not, here's the script for you:")],-1),u={class:"language-bash"},d=s("button",{title:"Copy Code",class:"copy"},null,-1),F=s("span",{class:"lang"},"bash",-1),h={class:"shiki material-theme-palenight"},E={class:"line"},g=n('curl -sSL https://rollkit.dev/install.sh | sh -s ',12),m={style:{color:"#C3E88D"}},B=s("h2",{id:"running-local-da",tabindex:"-1"},[a("๐ŸŒ Running a Local DA Network "),s("a",{class:"header-anchor",href:"#running-local-da","aria-label":'Permalink to "๐ŸŒ Running a Local DA Network {#running-local-da}"'},"โ€‹")],-1),b=s("p",null,"Learn to run a local DA network, designed for educational purposes, on your machine.",-1),k=s("p",null,"To set up a local DA network node:",-1),_={class:"language-bash"},v=s("button",{title:"Copy Code",class:"copy"},null,-1),q=s("span",{class:"lang"},"bash",-1),f={class:"shiki material-theme-palenight"},w={class:"line"},P=n('curl -sSL https://rollkit.dev/install-local-da.sh | bash -s ',12),S={style:{color:"#C3E88D"}},I=n(`

    This script builds and runs the node, now listening on port 7980.

    ๐Ÿ—๏ธ Building Your Sovereign Rollup โ€‹

    With the local DA network running, letโ€™s prepare your rollup blockchain.

    To make it simple we will download a repository with a gm-world rollup that has all app chain config set up for you:

    bash
    cd $HOME && bash -c "$(curl -sSL https://rollkit.dev/install-gm-rollup.sh)"

    ๐Ÿงฐ Configuring Your Rollup โ€‹

    Generate rollkit.toml file by running:

    bash
    rollkit toml init

    The output should be similar to this:

    Found rollup entrypoint: /root/gm/cmd/gmd/main.go, adding to rollkit.toml
    +import{C as e}from"./chunks/callout.d775988b.js";import{c as l}from"./chunks/constants.6a6fd4fb.js";import{o as t,c,k as s,O as r,t as o,l as p,X as n,a}from"./chunks/framework.be0a7370.js";const C=n('

    GM world rollup โ€‹

    ๐ŸŒž Introduction โ€‹

    This tutorial will guide you through building a sovereign gm-world rollup (gm stands for "good morning") using Rollkit. Unlike the quick start guide, this tutorial provides a more practical approach to understanding sovereign rollup development.

    We will cover:

    • Building and configuring a Cosmos-SDK application-specific rollup blockchain.
    • Posting rollup data to a Data Availability (DA) network.
    • Executing transactions (the end goal).

    No prior understanding of the build process is required, just that it utilizes the Cosmos SDK for blockchain applications.

    ',6),y={class:"tip custom-block"},D=s("p",{class:"custom-block-title"},"TIP",-1),i=s("h2",{id:"dependencies",tabindex:"-1"},[a("๐Ÿ› ๏ธ Dependencies "),s("a",{class:"header-anchor",href:"#dependencies","aria-label":'Permalink to "๐Ÿ› ๏ธ Dependencies {#dependencies}"'},"โ€‹")],-1),A=s("p",null,[a("If you followed the "),s("a",{href:"/docs-preview/pr-383/tutorials/quick-start"},"quick start guide"),a(", you should have the Rollkit CLI and Golang installed already. If not, here's the script for you:")],-1),u={class:"language-bash"},d=s("button",{title:"Copy Code",class:"copy"},null,-1),F=s("span",{class:"lang"},"bash",-1),h={class:"shiki material-theme-palenight"},E={class:"line"},g=n('curl -sSL https://rollkit.dev/install.sh | sh -s ',12),m={style:{color:"#C3E88D"}},B=s("h2",{id:"running-local-da",tabindex:"-1"},[a("๐ŸŒ Running a Local DA Network "),s("a",{class:"header-anchor",href:"#running-local-da","aria-label":'Permalink to "๐ŸŒ Running a Local DA Network {#running-local-da}"'},"โ€‹")],-1),b=s("p",null,"Learn to run a local DA network, designed for educational purposes, on your machine.",-1),k=s("p",null,"To set up a local DA network node:",-1),_={class:"language-bash"},v=s("button",{title:"Copy Code",class:"copy"},null,-1),q=s("span",{class:"lang"},"bash",-1),f={class:"shiki material-theme-palenight"},w={class:"line"},P=n('curl -sSL https://rollkit.dev/install-local-da.sh | bash -s ',12),S={style:{color:"#C3E88D"}},I=n(`

    This script builds and runs the node, now listening on port 7980.

    ๐Ÿ—๏ธ Building Your Sovereign Rollup โ€‹

    With the local DA network running, letโ€™s prepare your rollup blockchain.

    To make it simple we will download a repository with a gm-world rollup that has all app chain config set up for you:

    bash
    cd $HOME && bash -c "$(curl -sSL https://rollkit.dev/install-gm-rollup.sh)"

    ๐Ÿงฐ Configuring Your Rollup โ€‹

    Generate rollkit.toml file by running:

    bash
    rollkit toml init

    The output should be similar to this:

    Found rollup entrypoint: /root/gm/cmd/gmd/main.go, adding to rollkit.toml
     Could not find rollup config under gm. Please put the chain.config_dir in the rollkit.toml file manually.
     Initialized rollkit.toml file in the current directory.

    From the output, you can see that the rollup entrypoint is ~/gm/cmd/gmd/main.go.

    Open the rollkit.toml file and under the [chain] section set config_dir to the ./.gm directory. Your rollkit.toml file should look like this:

    bash
    entrypoint = "./cmd/gmd/main.go"
     
    @@ -72,4 +72,4 @@ import{C as e}from"./chunks/callout.d775988b.js";import{c as l}from"./chunks/con
       denom: stake
     pagination:
       next_key: null
    -  total: "0"

    ๐ŸŽ‰ Next steps โ€‹

    Congratulations! You've built a local rollup that posts to a local DA network. So far so good, keep diving deeper if you like it. Good luck!

    `,43),L=JSON.parse('{"title":"GM world rollup","description":"Build a sovereign rollup using only Rollkit CLI and a local DA network.","frontmatter":{"description":"Build a sovereign rollup using only Rollkit CLI and a local DA network.","head":[["meta",{"name":"og:title","content":"GM world rollup | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/gm-world.md","filePath":"tutorials/gm-world.md","lastUpdated":1717671233000}'),N={name:"tutorials/gm-world.md"},K=Object.assign(N,{setup(T){return(x,M)=>(t(),c("div",null,[C,s("div",y,[D,r(e)]),i,A,s("div",u,[d,F,s("pre",h,[s("code",null,[s("span",E,[g,s("span",m,o(p(l).rollkitLatestTag),1)])])])]),B,b,k,s("div",_,[v,q,s("pre",f,[s("code",null,[s("span",w,[P,s("span",S,o(p(l).localDALatestTag),1)])])])]),I]))}});export{L as __pageData,K as default}; + total: "0"

    ๐ŸŽ‰ Next steps โ€‹

    Congratulations! You've built a local rollup that posts to a local DA network. So far so good, keep diving deeper if you like it. Good luck!

    `,43),L=JSON.parse('{"title":"GM world rollup","description":"Build a sovereign rollup using only Rollkit CLI and a local DA network.","frontmatter":{"description":"Build a sovereign rollup using only Rollkit CLI and a local DA network.","head":[["meta",{"name":"og:title","content":"GM world rollup | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/gm-world.md","filePath":"tutorials/gm-world.md","lastUpdated":1717768398000}'),N={name:"tutorials/gm-world.md"},K=Object.assign(N,{setup(T){return(x,M)=>(t(),c("div",null,[C,s("div",y,[D,r(e)]),i,A,s("div",u,[d,F,s("pre",h,[s("code",null,[s("span",E,[g,s("span",m,o(p(l).rollkitLatestTag),1)])])])]),B,b,k,s("div",_,[v,q,s("pre",f,[s("code",null,[s("span",w,[P,s("span",S,o(p(l).localDALatestTag),1)])])])]),I]))}});export{L as __pageData,K as default}; diff --git a/pr-383/assets/tutorials_gm-world.md.c0fc4059.lean.js b/pr-383/assets/tutorials_gm-world.md.a5bbe595.lean.js similarity index 94% rename from pr-383/assets/tutorials_gm-world.md.c0fc4059.lean.js rename to pr-383/assets/tutorials_gm-world.md.a5bbe595.lean.js index 772cec8de..1b4863bee 100644 --- a/pr-383/assets/tutorials_gm-world.md.c0fc4059.lean.js +++ b/pr-383/assets/tutorials_gm-world.md.a5bbe595.lean.js @@ -1 +1 @@ -import{C as e}from"./chunks/callout.d775988b.js";import{c as l}from"./chunks/constants.3fbf9100.js";import{o as t,c,k as s,O as r,t as o,l as p,X as n,a}from"./chunks/framework.be0a7370.js";const C=n("",6),y={class:"tip custom-block"},D=s("p",{class:"custom-block-title"},"TIP",-1),i=s("h2",{id:"dependencies",tabindex:"-1"},[a("๐Ÿ› ๏ธ Dependencies "),s("a",{class:"header-anchor",href:"#dependencies","aria-label":'Permalink to "๐Ÿ› ๏ธ Dependencies {#dependencies}"'},"โ€‹")],-1),A=s("p",null,[a("If you followed the "),s("a",{href:"/docs-preview/pr-383/tutorials/quick-start"},"quick start guide"),a(", you should have the Rollkit CLI and Golang installed already. If not, here's the script for you:")],-1),u={class:"language-bash"},d=s("button",{title:"Copy Code",class:"copy"},null,-1),F=s("span",{class:"lang"},"bash",-1),h={class:"shiki material-theme-palenight"},E={class:"line"},g=n("",12),m={style:{color:"#C3E88D"}},B=s("h2",{id:"running-local-da",tabindex:"-1"},[a("๐ŸŒ Running a Local DA Network "),s("a",{class:"header-anchor",href:"#running-local-da","aria-label":'Permalink to "๐ŸŒ Running a Local DA Network {#running-local-da}"'},"โ€‹")],-1),b=s("p",null,"Learn to run a local DA network, designed for educational purposes, on your machine.",-1),k=s("p",null,"To set up a local DA network node:",-1),_={class:"language-bash"},v=s("button",{title:"Copy Code",class:"copy"},null,-1),q=s("span",{class:"lang"},"bash",-1),f={class:"shiki material-theme-palenight"},w={class:"line"},P=n("",12),S={style:{color:"#C3E88D"}},I=n("",43),L=JSON.parse('{"title":"GM world rollup","description":"Build a sovereign rollup using only Rollkit CLI and a local DA network.","frontmatter":{"description":"Build a sovereign rollup using only Rollkit CLI and a local DA network.","head":[["meta",{"name":"og:title","content":"GM world rollup | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/gm-world.md","filePath":"tutorials/gm-world.md","lastUpdated":1717671233000}'),N={name:"tutorials/gm-world.md"},K=Object.assign(N,{setup(T){return(x,M)=>(t(),c("div",null,[C,s("div",y,[D,r(e)]),i,A,s("div",u,[d,F,s("pre",h,[s("code",null,[s("span",E,[g,s("span",m,o(p(l).rollkitLatestTag),1)])])])]),B,b,k,s("div",_,[v,q,s("pre",f,[s("code",null,[s("span",w,[P,s("span",S,o(p(l).localDALatestTag),1)])])])]),I]))}});export{L as __pageData,K as default}; +import{C as e}from"./chunks/callout.d775988b.js";import{c as l}from"./chunks/constants.6a6fd4fb.js";import{o as t,c,k as s,O as r,t as o,l as p,X as n,a}from"./chunks/framework.be0a7370.js";const C=n("",6),y={class:"tip custom-block"},D=s("p",{class:"custom-block-title"},"TIP",-1),i=s("h2",{id:"dependencies",tabindex:"-1"},[a("๐Ÿ› ๏ธ Dependencies "),s("a",{class:"header-anchor",href:"#dependencies","aria-label":'Permalink to "๐Ÿ› ๏ธ Dependencies {#dependencies}"'},"โ€‹")],-1),A=s("p",null,[a("If you followed the "),s("a",{href:"/docs-preview/pr-383/tutorials/quick-start"},"quick start guide"),a(", you should have the Rollkit CLI and Golang installed already. If not, here's the script for you:")],-1),u={class:"language-bash"},d=s("button",{title:"Copy Code",class:"copy"},null,-1),F=s("span",{class:"lang"},"bash",-1),h={class:"shiki material-theme-palenight"},E={class:"line"},g=n("",12),m={style:{color:"#C3E88D"}},B=s("h2",{id:"running-local-da",tabindex:"-1"},[a("๐ŸŒ Running a Local DA Network "),s("a",{class:"header-anchor",href:"#running-local-da","aria-label":'Permalink to "๐ŸŒ Running a Local DA Network {#running-local-da}"'},"โ€‹")],-1),b=s("p",null,"Learn to run a local DA network, designed for educational purposes, on your machine.",-1),k=s("p",null,"To set up a local DA network node:",-1),_={class:"language-bash"},v=s("button",{title:"Copy Code",class:"copy"},null,-1),q=s("span",{class:"lang"},"bash",-1),f={class:"shiki material-theme-palenight"},w={class:"line"},P=n("",12),S={style:{color:"#C3E88D"}},I=n("",43),L=JSON.parse('{"title":"GM world rollup","description":"Build a sovereign rollup using only Rollkit CLI and a local DA network.","frontmatter":{"description":"Build a sovereign rollup using only Rollkit CLI and a local DA network.","head":[["meta",{"name":"og:title","content":"GM world rollup | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/gm-world.md","filePath":"tutorials/gm-world.md","lastUpdated":1717768398000}'),N={name:"tutorials/gm-world.md"},K=Object.assign(N,{setup(T){return(x,M)=>(t(),c("div",null,[C,s("div",y,[D,r(e)]),i,A,s("div",u,[d,F,s("pre",h,[s("code",null,[s("span",E,[g,s("span",m,o(p(l).rollkitLatestTag),1)])])])]),B,b,k,s("div",_,[v,q,s("pre",f,[s("code",null,[s("span",w,[P,s("span",S,o(p(l).localDALatestTag),1)])])])]),I]))}});export{L as __pageData,K as default}; diff --git a/pr-383/assets/tutorials_polaris-evm.md.215da9f0.js b/pr-383/assets/tutorials_polaris-evm.md.ce54e49c.js similarity index 99% rename from pr-383/assets/tutorials_polaris-evm.md.215da9f0.js rename to pr-383/assets/tutorials_polaris-evm.md.ce54e49c.js index c6f3eb914..11779e52e 100644 --- a/pr-383/assets/tutorials_polaris-evm.md.215da9f0.js +++ b/pr-383/assets/tutorials_polaris-evm.md.ce54e49c.js @@ -58,4 +58,4 @@ import{C as n}from"./chunks/callout.d775988b.js";import{o,c as l,k as s,O as e,X --gateway

    Setup Polaris script โ€‹

    First, ensure you're on the correct branch of Polaris:

    bash
    cd $HOME/polaris && git checkout rollkit

    Before starting your rollup, you'll want to make a change in $HOME/polaris/e2e/testapp/entrypoint.sh to point to the right DA start height:

    bash
    # set the data availability layer's block height from local-celestia-devnet
     DA_BLOCK_HEIGHT=$(docker exec $(docker ps -q) celestia header local-head --token $AUTH_TOKEN | jq '.result.header.height' -r) 
     DA_BLOCK_HEIGHT=$(curl https://rpc-mocha.pops.one/block |jq -r '.result.block.header.height') 

    Start the EVM rollup โ€‹

    Change into the Polaris directory in your terminal:

    bash
    cd $HOME/polaris
    -make start

    Congratulations! Your light node is now posting your rollup's data to Celestia's Mocha testnet.

    Find an explorer to view the default namespace in the tutorial or search for your own namespace on Celenium.

    `,71),g=JSON.parse('{"title":"Polaris EVM and Rollkit","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Polaris EVM and Rollkit | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/polaris-evm.md","filePath":"tutorials/polaris-evm.md","lastUpdated":1717671233000}'),y={name:"tutorials/polaris-evm.md"},F=Object.assign(y,{setup(D){return(A,d)=>(o(),l("div",null,[r,s("div",c,[C,e(n)]),i]))}});export{g as __pageData,F as default}; +make start

    Congratulations! Your light node is now posting your rollup's data to Celestia's Mocha testnet.

    Find an explorer to view the default namespace in the tutorial or search for your own namespace on Celenium.

    `,71),g=JSON.parse('{"title":"Polaris EVM and Rollkit","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Polaris EVM and Rollkit | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/polaris-evm.md","filePath":"tutorials/polaris-evm.md","lastUpdated":1717768398000}'),y={name:"tutorials/polaris-evm.md"},F=Object.assign(y,{setup(D){return(A,d)=>(o(),l("div",null,[r,s("div",c,[C,e(n)]),i]))}});export{g as __pageData,F as default}; diff --git a/pr-383/assets/tutorials_polaris-evm.md.215da9f0.lean.js b/pr-383/assets/tutorials_polaris-evm.md.ce54e49c.lean.js similarity index 92% rename from pr-383/assets/tutorials_polaris-evm.md.215da9f0.lean.js rename to pr-383/assets/tutorials_polaris-evm.md.ce54e49c.lean.js index 3c5af07b1..a7e167686 100644 --- a/pr-383/assets/tutorials_polaris-evm.md.215da9f0.lean.js +++ b/pr-383/assets/tutorials_polaris-evm.md.ce54e49c.lean.js @@ -1 +1 @@ -import{C as n}from"./chunks/callout.d775988b.js";import{o,c as l,k as s,O as e,X as a}from"./chunks/framework.be0a7370.js";const p="/docs-preview/pr-383/polaris-evm/polaris-start-site.png",t="/docs-preview/pr-383/polaris-evm/polaris-evm.png",r=a("",3),c={class:"tip custom-block"},C=s("p",{class:"custom-block-title"},"TIP",-1),i=a("",71),g=JSON.parse('{"title":"Polaris EVM and Rollkit","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Polaris EVM and Rollkit | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/polaris-evm.md","filePath":"tutorials/polaris-evm.md","lastUpdated":1717671233000}'),y={name:"tutorials/polaris-evm.md"},F=Object.assign(y,{setup(D){return(A,d)=>(o(),l("div",null,[r,s("div",c,[C,e(n)]),i]))}});export{g as __pageData,F as default}; +import{C as n}from"./chunks/callout.d775988b.js";import{o,c as l,k as s,O as e,X as a}from"./chunks/framework.be0a7370.js";const p="/docs-preview/pr-383/polaris-evm/polaris-start-site.png",t="/docs-preview/pr-383/polaris-evm/polaris-evm.png",r=a("",3),c={class:"tip custom-block"},C=s("p",{class:"custom-block-title"},"TIP",-1),i=a("",71),g=JSON.parse('{"title":"Polaris EVM and Rollkit","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Polaris EVM and Rollkit | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/polaris-evm.md","filePath":"tutorials/polaris-evm.md","lastUpdated":1717768398000}'),y={name:"tutorials/polaris-evm.md"},F=Object.assign(y,{setup(D){return(A,d)=>(o(),l("div",null,[r,s("div",c,[C,e(n)]),i]))}});export{g as __pageData,F as default}; diff --git a/pr-383/assets/tutorials_quick-start.md.3bb83944.js b/pr-383/assets/tutorials_quick-start.md.21b9828d.js similarity index 97% rename from pr-383/assets/tutorials_quick-start.md.3bb83944.js rename to pr-383/assets/tutorials_quick-start.md.21b9828d.js index 1f1ee01a5..46166eb54 100644 --- a/pr-383/assets/tutorials_quick-start.md.3bb83944.js +++ b/pr-383/assets/tutorials_quick-start.md.21b9828d.js @@ -1,7 +1,7 @@ -import{c as o}from"./chunks/constants.3fbf9100.js";import{o as n,c as t,k as s,t as e,l as p,a,X as l}from"./chunks/framework.be0a7370.js";const r=s("h1",{id:"quick-start-guide",tabindex:"-1"},[a("Quick start guide "),s("a",{class:"header-anchor",href:"#quick-start-guide","aria-label":'Permalink to "Quick start guide"'},"โ€‹")],-1),c=s("p",null,"Welcome to Rollkit, a sovereign rollup framework! The easiest way to launch your sovereign rollup node is by using the Rollkit CLI.",-1),i=s("h2",{id:"๐Ÿ“ฆ-install-rollkit-cli",tabindex:"-1"},[a("๐Ÿ“ฆ Install Rollkit (CLI) "),s("a",{class:"header-anchor",href:"#๐Ÿ“ฆ-install-rollkit-cli","aria-label":'Permalink to "๐Ÿ“ฆ Install Rollkit (CLI)"'},"โ€‹")],-1),C=s("p",null,"To install Rollkit, run the following command in your terminal:",-1),y={class:"language-bash"},d=s("button",{title:"Copy Code",class:"copy"},null,-1),u=s("span",{class:"lang"},"bash",-1),D={class:"shiki material-theme-palenight"},h={class:"line"},A=l('curl -sSL https://rollkit.dev/install.sh | sh -s ',12),_={style:{color:"#C3E88D"}},F=l(`

    Verify the installation by checking the Rollkit version:

    bash
    rollkit version

    A successful installation will display the version number and its associated git commit hash.

    ๐Ÿš€ Run your sovereign rollup node โ€‹

    To start a basic sovereign rollup node, execute:

    bash
    rollkit start

    Upon execution, the CLI will output log entries that provide insights into the node's initialization and operation:

    bash
    I[2024-05-01|09:58:46.001] Found private validator                      module=main keyFile=/root/.rollkit/config/priv_validator_key.json stateFile=/root/.rollkit/data/priv_validator_state.json
    +import{c as o}from"./chunks/constants.6a6fd4fb.js";import{o as n,c as t,k as s,t as e,l as p,a,X as l}from"./chunks/framework.be0a7370.js";const r=s("h1",{id:"quick-start-guide",tabindex:"-1"},[a("Quick start guide "),s("a",{class:"header-anchor",href:"#quick-start-guide","aria-label":'Permalink to "Quick start guide"'},"โ€‹")],-1),c=s("p",null,"Welcome to Rollkit, a sovereign rollup framework! The easiest way to launch your sovereign rollup node is by using the Rollkit CLI.",-1),i=s("h2",{id:"๐Ÿ“ฆ-install-rollkit-cli",tabindex:"-1"},[a("๐Ÿ“ฆ Install Rollkit (CLI) "),s("a",{class:"header-anchor",href:"#๐Ÿ“ฆ-install-rollkit-cli","aria-label":'Permalink to "๐Ÿ“ฆ Install Rollkit (CLI)"'},"โ€‹")],-1),C=s("p",null,"To install Rollkit, run the following command in your terminal:",-1),y={class:"language-bash"},d=s("button",{title:"Copy Code",class:"copy"},null,-1),u=s("span",{class:"lang"},"bash",-1),D={class:"shiki material-theme-palenight"},h={class:"line"},A=l('curl -sSL https://rollkit.dev/install.sh | sh -s ',12),_={style:{color:"#C3E88D"}},F=l(`

    Verify the installation by checking the Rollkit version:

    bash
    rollkit version

    A successful installation will display the version number and its associated git commit hash.

    ๐Ÿš€ Run your sovereign rollup node โ€‹

    To start a basic sovereign rollup node, execute:

    bash
    rollkit start

    Upon execution, the CLI will output log entries that provide insights into the node's initialization and operation:

    bash
    I[2024-05-01|09:58:46.001] Found private validator                      module=main keyFile=/root/.rollkit/config/priv_validator_key.json stateFile=/root/.rollkit/data/priv_validator_state.json
     I[2024-05-01|09:58:46.002] Found node key                               module=main path=/root/.rollkit/config/node_key.json
     I[2024-05-01|09:58:46.002] Found genesis file                           module=main path=/root/.rollkit/config/genesis.json
     ...
     I[2024-05-01|09:58:46.080] Started node                                 module=main
     I[2024-05-01|09:58:46.081] Creating and publishing block                module=BlockManager height=223
    -I[2024-05-01|09:58:46.082] Finalized block                              module=BlockManager height=223 num_txs_res=0 num_val_updates=0 block_app_hash=

    ๐ŸŽ‰ Conclusion โ€‹

    That's it! Your sovereign rollup node is now up and running. It's incredibly simple to start a blockchain (which is essentially what a rollup is) these days using Rollkit. Explore further and discover how you can build useful applications on Rollkit. Good luck!

    `,10),v=JSON.parse('{"title":"Quick start guide","description":"Quickly start a rollup node using the Rollkit CLI.","frontmatter":{"description":"Quickly start a rollup node using the Rollkit CLI.","head":[["meta",{"name":"og:title","content":"Quick start guide | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/quick-start.md","filePath":"tutorials/quick-start.md","lastUpdated":1717671233000}'),g={name:"tutorials/quick-start.md"},f=Object.assign(g,{setup(k){return(m,E)=>(n(),t("div",null,[r,c,i,C,s("div",y,[d,u,s("pre",D,[s("code",null,[s("span",h,[A,s("span",_,e(p(o).rollkitLatestTag),1)])])])]),F]))}});export{v as __pageData,f as default}; +I[2024-05-01|09:58:46.082] Finalized block module=BlockManager height=223 num_txs_res=0 num_val_updates=0 block_app_hash=

    ๐ŸŽ‰ Conclusion โ€‹

    That's it! Your sovereign rollup node is now up and running. It's incredibly simple to start a blockchain (which is essentially what a rollup is) these days using Rollkit. Explore further and discover how you can build useful applications on Rollkit. Good luck!

    `,10),v=JSON.parse('{"title":"Quick start guide","description":"Quickly start a rollup node using the Rollkit CLI.","frontmatter":{"description":"Quickly start a rollup node using the Rollkit CLI.","head":[["meta",{"name":"og:title","content":"Quick start guide | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/quick-start.md","filePath":"tutorials/quick-start.md","lastUpdated":1717768398000}'),g={name:"tutorials/quick-start.md"},f=Object.assign(g,{setup(k){return(m,E)=>(n(),t("div",null,[r,c,i,C,s("div",y,[d,u,s("pre",D,[s("code",null,[s("span",h,[A,s("span",_,e(p(o).rollkitLatestTag),1)])])])]),F]))}});export{v as __pageData,f as default}; diff --git a/pr-383/assets/tutorials_quick-start.md.3bb83944.lean.js b/pr-383/assets/tutorials_quick-start.md.21b9828d.lean.js similarity index 92% rename from pr-383/assets/tutorials_quick-start.md.3bb83944.lean.js rename to pr-383/assets/tutorials_quick-start.md.21b9828d.lean.js index 790b92eab..d9f475b7e 100644 --- a/pr-383/assets/tutorials_quick-start.md.3bb83944.lean.js +++ b/pr-383/assets/tutorials_quick-start.md.21b9828d.lean.js @@ -1 +1 @@ -import{c as o}from"./chunks/constants.3fbf9100.js";import{o as n,c as t,k as s,t as e,l as p,a,X as l}from"./chunks/framework.be0a7370.js";const r=s("h1",{id:"quick-start-guide",tabindex:"-1"},[a("Quick start guide "),s("a",{class:"header-anchor",href:"#quick-start-guide","aria-label":'Permalink to "Quick start guide"'},"โ€‹")],-1),c=s("p",null,"Welcome to Rollkit, a sovereign rollup framework! The easiest way to launch your sovereign rollup node is by using the Rollkit CLI.",-1),i=s("h2",{id:"๐Ÿ“ฆ-install-rollkit-cli",tabindex:"-1"},[a("๐Ÿ“ฆ Install Rollkit (CLI) "),s("a",{class:"header-anchor",href:"#๐Ÿ“ฆ-install-rollkit-cli","aria-label":'Permalink to "๐Ÿ“ฆ Install Rollkit (CLI)"'},"โ€‹")],-1),C=s("p",null,"To install Rollkit, run the following command in your terminal:",-1),y={class:"language-bash"},d=s("button",{title:"Copy Code",class:"copy"},null,-1),u=s("span",{class:"lang"},"bash",-1),D={class:"shiki material-theme-palenight"},h={class:"line"},A=l("",12),_={style:{color:"#C3E88D"}},F=l("",10),v=JSON.parse('{"title":"Quick start guide","description":"Quickly start a rollup node using the Rollkit CLI.","frontmatter":{"description":"Quickly start a rollup node using the Rollkit CLI.","head":[["meta",{"name":"og:title","content":"Quick start guide | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/quick-start.md","filePath":"tutorials/quick-start.md","lastUpdated":1717671233000}'),g={name:"tutorials/quick-start.md"},f=Object.assign(g,{setup(k){return(m,E)=>(n(),t("div",null,[r,c,i,C,s("div",y,[d,u,s("pre",D,[s("code",null,[s("span",h,[A,s("span",_,e(p(o).rollkitLatestTag),1)])])])]),F]))}});export{v as __pageData,f as default}; +import{c as o}from"./chunks/constants.6a6fd4fb.js";import{o as n,c as t,k as s,t as e,l as p,a,X as l}from"./chunks/framework.be0a7370.js";const r=s("h1",{id:"quick-start-guide",tabindex:"-1"},[a("Quick start guide "),s("a",{class:"header-anchor",href:"#quick-start-guide","aria-label":'Permalink to "Quick start guide"'},"โ€‹")],-1),c=s("p",null,"Welcome to Rollkit, a sovereign rollup framework! The easiest way to launch your sovereign rollup node is by using the Rollkit CLI.",-1),i=s("h2",{id:"๐Ÿ“ฆ-install-rollkit-cli",tabindex:"-1"},[a("๐Ÿ“ฆ Install Rollkit (CLI) "),s("a",{class:"header-anchor",href:"#๐Ÿ“ฆ-install-rollkit-cli","aria-label":'Permalink to "๐Ÿ“ฆ Install Rollkit (CLI)"'},"โ€‹")],-1),C=s("p",null,"To install Rollkit, run the following command in your terminal:",-1),y={class:"language-bash"},d=s("button",{title:"Copy Code",class:"copy"},null,-1),u=s("span",{class:"lang"},"bash",-1),D={class:"shiki material-theme-palenight"},h={class:"line"},A=l("",12),_={style:{color:"#C3E88D"}},F=l("",10),v=JSON.parse('{"title":"Quick start guide","description":"Quickly start a rollup node using the Rollkit CLI.","frontmatter":{"description":"Quickly start a rollup node using the Rollkit CLI.","head":[["meta",{"name":"og:title","content":"Quick start guide | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/quick-start.md","filePath":"tutorials/quick-start.md","lastUpdated":1717768398000}'),g={name:"tutorials/quick-start.md"},f=Object.assign(g,{setup(k){return(m,E)=>(n(),t("div",null,[r,c,i,C,s("div",y,[d,u,s("pre",D,[s("code",null,[s("span",h,[A,s("span",_,e(p(o).rollkitLatestTag),1)])])])]),F]))}});export{v as __pageData,f as default}; diff --git a/pr-383/assets/tutorials_wordle.md.bf1e602f.js b/pr-383/assets/tutorials_wordle.md.2e8d5bf4.js similarity index 73% rename from pr-383/assets/tutorials_wordle.md.bf1e602f.js rename to pr-383/assets/tutorials_wordle.md.2e8d5bf4.js index a33739b94..a0f913835 100644 --- a/pr-383/assets/tutorials_wordle.md.bf1e602f.js +++ b/pr-383/assets/tutorials_wordle.md.2e8d5bf4.js @@ -1,4 +1,4 @@ -import{C as p}from"./chunks/callout.d775988b.js";import{c as o}from"./chunks/constants.3fbf9100.js";import{o as t,c as r,k as s,O as c,t as l,l as e,a as n,X as a}from"./chunks/framework.be0a7370.js";const D="/docs-preview/pr-383/wordle/wordle.png",y=s("h1",{id:"๐Ÿ•น๏ธ-wordle-app",tabindex:"-1"},[n("๐Ÿ•น๏ธ Wordle app "),s("a",{class:"header-anchor",href:"#๐Ÿ•น๏ธ-wordle-app","aria-label":'Permalink to "๐Ÿ•น๏ธ Wordle app"'},"โ€‹")],-1),i=s("p",null,[s("img",{src:D,alt:"wordle-app"})],-1),C=s("p",null,[n("This tutorial guide will go over building a cosmos-sdk app for Rollkit, the Sovereign-Rollup implementation of CometBFT, for the popular game "),s("a",{href:"https://www.nytimes.com/games/wordle/index.html",target:"_blank",rel:"noreferrer"},"Wordle"),n(".")],-1),F=s("p",null,"This tutorial will go over how to setup Rollkit in the Ignite CLI and use it to build the game. The tutorial will go over the simple design, as well as conclude with future implementations and ideas to extend this codebase.",-1),A={class:"tip custom-block"},d=s("p",{class:"custom-block-title"},"TIP",-1),u=a('

    ๐Ÿ’ป Pre-requisites โ€‹

    Given this tutorial is targeted for developers who are experienced in Cosmos-SDK, we recommend you go over the following tutorials in Ignite to understand all the different components in Cosmos-SDK before proceeding with this tutorial.

    You do not have to do those guides in order to follow this Wordle tutorial, but doing so helps you understand the architecture of Cosmos-SDK better.

    ๐Ÿ“– Design implementation โ€‹

    The rules of Wordle are simple: You have to guess the word of the day.

    Key Points to Consider:

    • The word is a five-letter word.
    • You have 6 guesses.
    • Every 24 hours, thereโ€™s a new word.

    The GUI for Wordle shows you a few indicators: a green highlight on a letter in a certain position means thatโ€™s the correct letter for the Wordle in the right position. A yellow highlight means itโ€™s a correct letter for the Wordle included in the wrong position. A grey highlight means the letter isnโ€™t part of the Wordle.

    For simplicity of the design, we will avoid those hints, although there are ways to extend this codebase to implement that, which we will show at the end.

    In this current design, we implement the following rules:

    • 1 Wordle can be submitted per day
    • Every address will have 6 tries to guess the word
    • It must be a five-letter word.
    • Whoever guesses the word correctly before their 6 tries are over gets an award of 100 WORDLE tokens.

    We will go over the architecture to achieve this further in the guide. But for now, we will get started setting up our development environment.

    โ›“๏ธ Ignite and scaffolding the wordle chain โ€‹

    ๐Ÿ”ฅ Ignite โ€‹

    Ignite is an amazing CLI tool to help us get started building our own blockchains for cosmos-sdk apps. It provides lots of power toolings and scaffoldings for adding messages, types, and modules with a host of cosmos-sdk libraries provided.

    You can read more about Ignite here.

    To install Ignite, you can run this command in your terminal:

    ',18),h={class:"language-bash"},m=s("button",{title:"Copy Code",class:"copy"},null,-1),g=s("span",{class:"lang"},"bash",-1),f={class:"shiki material-theme-palenight"},b={class:"line"},w=s("span",{style:{color:"#FFCB6B"}},"curl",-1),k=s("span",{style:{color:"#A6ACCD"}}," ",-1),E={style:{color:"#C3E88D"}},_=s("span",{style:{color:"#A6ACCD"}}," ",-1),q=s("span",{style:{color:"#89DDFF"}},"|",-1),v=s("span",{style:{color:"#A6ACCD"}}," ",-1),B=s("span",{style:{color:"#FFCB6B"}},"bash",-1),T=a('sudo mv ignite /usr/local/bin/',1),S=a('

    This installs Ignite CLI in your local machine. This tutorial uses a macOS but it should work for Windows. For Windows users, check out the Ignite docs on installation for Windows machines.

    Now, refresh your terminal using source or open a new terminal session for the change to take place.

    If you run the following:

    bash
    ignite --help

    You should see an output of help commands meaning Ignite was installed successfully!

    โ›“๏ธ Scaffolding the wordle chain โ€‹

    Now, comes the fun part, creating a new blockchain! With Ignite, the process is pretty easy and straightforward.

    Ignite CLI comes with several scaffolding commands that are designed to make development more straightforward by creating everything you need to build your blockchain.

    First, we will use Ignite CLI to build the foundation of a fresh Cosmos SDK blockchain. Ignite minimizes how much blockchain code you must write yourself. If you are coming from the EVM-world, think of Ignite as a Cosmos-SDK version of Foundry or Hardhat but specifically designed to build blockchains.

    We first run the following command to setup our project for our new blockchain, Wordle.

    bash
    ignite scaffold chain wordle --no-module

    This command scaffolds a new chain directory called wordle in your local directory from which you ran the command. Notice that we passed the --no-module flag, this is because we will be creating the module after.

    ๐Ÿ—‚๏ธ Wordle directory โ€‹

    Now, itโ€™s time to enter the directory:

    bash
    cd wordle

    Inside you will see several directories and architecture for your cosmos-sdk blockchain.

    File/directoryPurpose
    app/Files that wire together the blockchain. The most important file is app.go that contains type definition of the blockchain and functions to create and initialize it.
    cmd/The main package responsible for the CLI of compiled binary.
    docs/Directory for project documentation. By default, an OpenAPI spec is generated.
    proto/Protocol buffer files describing the data structure.
    testutil/Helper functions for testing.
    vue/A Vue 3 web app template.
    x/Cosmos SDK modules and custom modules.
    config.ymlA configuration file for customizing a chain in development.
    readme.mdA readme file for your sovereign application-specific blockchain project.

    Going over each one is outside the scope of this guide, but we encourage you to read about it here.

    Most of the tutorial work will happen inside the x directory.

    ๐Ÿ› ๏ธ Setting up Rollkit โ€‹

    Before we continue with building our Wordle App, we need to set up Rollkit on our codebase.

    ๐Ÿ—ž๏ธ Installing Rollkit โ€‹

    Run the following command inside the wordle directory.

    ',23),W={class:"language-bash"},x=s("button",{title:"Copy Code",class:"copy"},null,-1),I=s("span",{class:"lang"},"bash",-1),G={class:"shiki material-theme-palenight"},P={class:"line"},R=a('go mod edit -replace ',8),N={style:{color:"#C3E88D"}},H=a('go mod tidy',1),K=a('go mod download',1),V=a(`

    With that, we have Rollkit changes added to the project directory. Now, let's build the Wordle app!

    โœจ Creating the wordle module โ€‹

    For the Wordle module, we can add dependencies offered by Cosmos-SDK.

    From the Cosmos-SDK docs, a module is defined as the following:

    In a Cosmos SDK blockchain, application-specific logic is implemented in separate modules. Modules keep code easy to understand and reuse. Each module contains its own message and transaction processor, while the Cosmos SDK is responsible for routing each message to its respective module.

    Many modules exist for slashing, validating, auth.

    ๐Ÿ”– Scaffolding a module โ€‹

    We will be using the bank module dependency for transactions.

    From the Cosmos-SDK docs, the bank module is defined as the following:

    The bank module is responsible for handling multi-asset coin transfers between accounts and tracking special-case pseudo-transfers which must work differently with particular kinds of accounts (notably delegating/undelegating for vesting accounts). It exposes several interfaces with varying capabilities for secure interaction with other modules which must alter user balances.

    We build the module with the bank dependency with the following command:

    bash
    ignite scaffold module wordle --dep bank

    This will scaffold the Wordle module to our Wordle Chain project.

    โœ‰๏ธ Messages โ€‹

    Messages allow us to process and submit information to our specific module.

    From the Cosmos-SDK docs, messages are:

    In the Cosmos SDK, messages are objects that are contained in transactions to trigger state transitions. Each Cosmos SDK module defines a list of messages and how to handle them.

    For messages for Wordle, given our initial design, we will make 2 messages with ignite.

    • The first one is: SubmitWordle and it only passes the Wordle of the Day.
    • The second one is: SubmitGuess and it attempts to guess the submitted wordle. It also passes a word as a guess.

    With these initial designs, we can start creating our messages!

    ๐Ÿ’ฌ Scaffolding a message โ€‹

    To create the SubmitWordle message, we run the following command:

    bash
    ignite scaffold message submit-wordle word

    This creates the submit-wordle message that takes in word as a parameter.

    We now create the final message, SubmitGuess:

    bash
    ignite scaffold message submit-guess word

    Here, we are passing a word as a guess with submit-guess.

    ๐ŸŽจ Wordle types โ€‹

    For the next steps, we will be creating types to be used by the messages we created.

    ๐Ÿ—๏ธ Scaffolding wordle types โ€‹

    bash
    ignite scaffold map wordle word submitter --no-message

    This type is a map called Wordle with two values of word and submitter. submitter is the address of the person that submitted the Wordle.

    The second type is the Guess type. It allows us to store the latest guess for each address that submitted a solution.

    bash
    ignite scaffold map guess word submitter count --no-message

    Here, we are also storing count to count how many guesses this address submitted.

    ๐Ÿ” Keeper functions โ€‹

    Now itโ€™s time to implement the Keeper functions for each message. From the Cosmos-SDK docs, Keeper is defined as the following:

    The main core of a Cosmos SDK module is a piece called the keeper. The keeper handles interactions with the store, has references to other keepers for cross-module interactions, and contains most of the core functionality of a module.

    Keeper is an abstraction on Cosmos that allows us to interact with the Key-Value store and change the state of the blockchain.

    Here, it will help us outline the logic for each message we create.

    ๐Ÿ“ค SubmitWordle function โ€‹

    We first start with the SubmitWordle function.

    Open up the following file: x/wordle/keeper/msg_server_submit_wordle.go

    Inside the following, replace the current code with the following code, which we will go over in a bit:

    go
    package keeper
    +import{C as p}from"./chunks/callout.d775988b.js";import{c as o}from"./chunks/constants.6a6fd4fb.js";import{o as t,c as r,k as s,O as c,t as l,l as e,a as n,X as a}from"./chunks/framework.be0a7370.js";const D="/docs-preview/pr-383/wordle/wordle.png",y=s("h1",{id:"๐Ÿ•น๏ธ-wordle-app",tabindex:"-1"},[n("๐Ÿ•น๏ธ Wordle app "),s("a",{class:"header-anchor",href:"#๐Ÿ•น๏ธ-wordle-app","aria-label":'Permalink to "๐Ÿ•น๏ธ Wordle app"'},"โ€‹")],-1),i=s("p",null,[s("img",{src:D,alt:"wordle-app"})],-1),C=s("p",null,[n("This tutorial guide will go over building a cosmos-sdk app for Rollkit, the Sovereign-Rollup implementation of CometBFT, for the popular game "),s("a",{href:"https://www.nytimes.com/games/wordle/index.html",target:"_blank",rel:"noreferrer"},"Wordle"),n(".")],-1),F=s("p",null,"This tutorial will go over how to setup Rollkit in the Ignite CLI and use it to build the game. The tutorial will go over the simple design, as well as conclude with future implementations and ideas to extend this codebase.",-1),A={class:"tip custom-block"},d=s("p",{class:"custom-block-title"},"TIP",-1),u=a('

    ๐Ÿ’ป Pre-requisites โ€‹

    Given this tutorial is targeted for developers who are experienced in Cosmos-SDK, we recommend you go over the following tutorials in Ignite to understand all the different components in Cosmos-SDK before proceeding with this tutorial.

    You do not have to do those guides in order to follow this Wordle tutorial, but doing so helps you understand the architecture of Cosmos-SDK better.

    ๐Ÿ“– Design implementation โ€‹

    The rules of Wordle are simple: You have to guess the word of the day.

    Key Points to Consider:

    • The word is a five-letter word.
    • You have 6 guesses.
    • Every 24 hours, thereโ€™s a new word.

    The GUI for Wordle shows you a few indicators: a green highlight on a letter in a certain position means thatโ€™s the correct letter for the Wordle in the right position. A yellow highlight means itโ€™s a correct letter for the Wordle included in the wrong position. A grey highlight means the letter isnโ€™t part of the Wordle.

    For simplicity of the design, we will avoid those hints, although there are ways to extend this codebase to implement that, which we will show at the end.

    In this current design, we implement the following rules:

    • 1 Wordle can be submitted per day
    • Every address will have 6 tries to guess the word
    • It must be a five-letter word.
    • Whoever guesses the word correctly before their 6 tries are over gets an award of 100 WORDLE tokens.

    We will go over the architecture to achieve this further in the guide. But for now, we will get started setting up our development environment.

    โ›“๏ธ Ignite and scaffolding the wordle chain โ€‹

    ๐Ÿ”ฅ Ignite โ€‹

    Ignite is an amazing CLI tool to help us get started building our own blockchains for cosmos-sdk apps. It provides lots of power toolings and scaffoldings for adding messages, types, and modules with a host of cosmos-sdk libraries provided.

    You can read more about Ignite here.

    To install Ignite, you can run this command in your terminal:

    ',18),h={class:"language-bash"},m=s("button",{title:"Copy Code",class:"copy"},null,-1),g=s("span",{class:"lang"},"bash",-1),f={class:"shiki material-theme-palenight"},b={class:"line"},w=s("span",{style:{color:"#FFCB6B"}},"curl",-1),k=s("span",{style:{color:"#A6ACCD"}}," ",-1),E={style:{color:"#C3E88D"}},q=s("span",{style:{color:"#A6ACCD"}}," ",-1),v=s("span",{style:{color:"#89DDFF"}},"|",-1),B=s("span",{style:{color:"#A6ACCD"}}," ",-1),_=s("span",{style:{color:"#FFCB6B"}},"bash",-1),S=a(`

    This installs Ignite CLI in your local machine. This tutorial uses a macOS but it should work for Windows. For Windows users, check out the Ignite docs on installation for Windows machines.

    Now, refresh your terminal using source or open a new terminal session for the change to take place.

    If you run the following:

    bash
    ignite --help

    You should see an output of help commands meaning Ignite was installed successfully!

    โ›“๏ธ Scaffolding the wordle chain โ€‹

    Now, comes the fun part, creating a new blockchain! With Ignite, the process is pretty easy and straightforward.

    Ignite CLI comes with several scaffolding commands that are designed to make development more straightforward by creating everything you need to build your blockchain.

    First, we will use Ignite CLI to build the foundation of a fresh Cosmos SDK blockchain. Ignite minimizes how much blockchain code you must write yourself. If you are coming from the EVM-world, think of Ignite as a Cosmos-SDK version of Foundry or Hardhat but specifically designed to build blockchains.

    we first run the following command to setup our project for our new blockchain, wordle.

    bash
    ignite scaffold chain wordle --no-module

    This command scaffolds a new chain directory called wordle in your local directory from which you ran the command. Notice that we passed the --no-module flag, this is because we will be creating the module after.

    ๐Ÿ—‚๏ธ Wordle directory โ€‹

    Now, itโ€™s time to enter the directory:

    bash
    cd wordle

    Inside you will see several directories and architecture for your cosmos-sdk blockchain.

    File/directoryPurpose
    app/Files that wire together the blockchain. The most important file is app.go that contains type definition of the blockchain and functions to create and initialize it.
    cmd/The main package responsible for the CLI of compiled binary.
    docs/Directory for project documentation. By default, an OpenAPI spec is generated.
    proto/Protocol buffer files describing the data structure.
    testutil/Helper functions for testing.
    vue/A Vue 3 web app template.
    x/Cosmos SDK modules and custom modules.
    config.ymlA configuration file for customizing a chain in development.
    readme.mdA readme file for your sovereign application-specific blockchain project.

    Going over each one is outside the scope of this guide, but we encourage you to read about it here.

    Most of the tutorial work will happen inside the x directory.

    ๐Ÿ› ๏ธ Setting up Rollkit โ€‹

    Before we continue with building our Wordle App, we need to set up Rollkit on our codebase.

    ๐Ÿ—ž๏ธ Installing Rollkit โ€‹

    To install the Rollkit app to Ignite, run the following command:

    bash
    ignite app install github.com/ignite/apps/rollkit@rollkit/v0.2.0

    Next, add Rollkit to your project by running:

    bash
    ignite rollkit add

    Initialize the Rollkit chain configuration for a local DA network with this command:

    bash
    ignite rollkit init --local-da

    This will create a ~/.wordle directory with all the necessary files to run a rollup on a local DA network. With these steps, Rollkit is now added. Let's build the Wordle app!

    โœจ Creating the wordle module โ€‹

    For the Wordle module, we can add dependencies offered by Cosmos-SDK.

    From the Cosmos-SDK docs, a module is defined as the following:

    In a Cosmos SDK blockchain, application-specific logic is implemented in separate modules. Modules keep code easy to understand and reuse. Each module contains its own message and transaction processor, while the Cosmos SDK is responsible for routing each message to its respective module.

    Many modules exist for slashing, validating, auth.

    ๐Ÿ”– Scaffolding a module โ€‹

    We will be using the bank module dependency for transactions.

    From the Cosmos-SDK docs, the bank module is defined as the following:

    The bank module is responsible for handling multi-asset coin transfers between accounts and tracking special-case pseudo-transfers which must work differently with particular kinds of accounts (notably delegating/undelegating for vesting accounts). It exposes several interfaces with varying capabilities for secure interaction with other modules which must alter user balances.

    We build the module with the bank dependency with the following command:

    bash
    ignite scaffold module wordle --dep bank

    This will scaffold the Wordle module to our Wordle Chain project.

    โœ‰๏ธ Messages โ€‹

    Messages allow us to process and submit information to our specific module.

    From the Cosmos-SDK docs, messages are:

    In the Cosmos SDK, messages are objects that are contained in transactions to trigger state transitions. Each Cosmos SDK module defines a list of messages and how to handle them.

    For messages for Wordle, given our initial design, we will make 2 messages with ignite.

    • The first one is: SubmitWordle and it only passes the Wordle of the Day.
    • The second one is: SubmitGuess and it attempts to guess the submitted wordle. It also passes a word as a guess.

    With these initial designs, we can start creating our messages!

    ๐Ÿ’ฌ Scaffolding a message โ€‹

    To create the SubmitWordle message, we run the following command:

    bash
    ignite scaffold message submit-wordle word

    This creates the submit-wordle message that takes in word as a parameter.

    We now create the final message, SubmitGuess:

    bash
    ignite scaffold message submit-guess word

    Here, we are passing a word as a guess with submit-guess.

    ๐ŸŽจ Wordle types โ€‹

    For the next steps, we will be creating types to be used by the messages we created.

    ๐Ÿ—๏ธ Scaffolding wordle types โ€‹

    bash
    ignite scaffold map wordle word submitter --no-message

    This type is a map called Wordle with two values of word and submitter. submitter is the address of the person that submitted the Wordle.

    The second type is the Guess type. It allows us to store the latest guess for each address that submitted a solution.

    bash
    ignite scaffold map guess word submitter count --no-message

    Here, we are also storing count to count how many guesses this address submitted.

    ๐Ÿ” Keeper functions โ€‹

    Now itโ€™s time to implement the Keeper functions for each message. From the Cosmos-SDK docs, Keeper is defined as the following:

    The main core of a Cosmos SDK module is a piece called the keeper. The keeper handles interactions with the store, has references to other keepers for cross-module interactions, and contains most of the core functionality of a module.

    Keeper is an abstraction on Cosmos that allows us to interact with the Key-Value store and change the state of the blockchain.

    Here, it will help us outline the logic for each message we create.

    ๐Ÿ“ค SubmitWordle function โ€‹

    We first start with the SubmitWordle function.

    Open up the following file: x/wordle/keeper/msg_server_submit_wordle.go

    Inside the following, replace the current code with the following code, which we will go over in a bit:

    go
    package keeper
     
     import (
       "context"
    @@ -160,8 +160,7 @@ import{C as p}from"./chunks/callout.d775988b.js";import{c as o}from"./chunks/con
       string body = 2;
     }

    Next file is x/wordle/types/expected_keepers.go

    Here, we need to add the SendCoins method to the BankKeeper interface in order to allow sending the reward to the right guesser.

    go
    type BankKeeper interface {
       SendCoins(ctx sdk.Context, fromAddr sdk.AccAddress, toAddr sdk.AccAddress, amt sdk.Coins) error
    -}

    With that, we implemented all our Keeper functions! Time to compile the blockchain and take it out for a test drive.

    โ›“๏ธ Run the wordle chain โ€‹

    ๐Ÿชถ Run a local DA node โ€‹

    To set up a local data availability network node run:

    `,65),L={class:"language-bash"},M=s("button",{title:"Copy Code",class:"copy"},null,-1),Y=s("span",{class:"lang"},"bash",-1),j={class:"shiki material-theme-palenight"},z={class:"line"},O=a('curl -sSL https://rollkit.dev/install-local-da.sh | sh ',10),U={style:{color:"#C3E88D"}},J=a(`

    This script builds and runs the node, now listening on port 7980.

    After you have Go and Ignite CLI installed, and your local data availability node running on your machine, you're ready to build, test, and launch your own sovereign rollup.

    ๐ŸŸข Building and running wordle chain โ€‹

    We have a handy init.sh found in this repo.

    We can copy it over to our directory with the following commands:

    bash
    # From inside the \`wordle\` directory
    -wget https://rollkit.dev/wordle/init.sh

    This copies over our init.sh script to initialize our Wordle Rollup.

    You can view the contents of the script to see how we initialize the Wordle Rollup.

    You can initialize the script with the following command:

    bash
    bash init.sh

    With that, we have kickstarted our wordled network!

    In another window, run the following to submit a Wordle:

    bash
    wordled tx wordle submit-wordle giant --from wordle-key --keyring-backend test --chain-id wordle -b async -y

    NOTE: We are submitting a transaction asynchronously to avoid any timeout errors. With Rollkit as a replacement to CometBFT, we need to wait for the data availability network to ensure a block was included from Wordle, before proceeding to the next block. Currently, in Rollkit, the single aggregator is not moving forward with the next block production as long as it is trying to submit the current block to the DA network. In the future, with leader selection, block production and sync logic improves dramatically.

    This will ask you to confirm the transaction with the following message:

    json
    {
    +}

    With that, we implemented all our Keeper functions! Time to compile the blockchain and take it out for a test drive.

    โ›“๏ธ Run the wordle chain โ€‹

    ๐Ÿชถ Run a local DA node โ€‹

    To set up a local data availability network node run:

    `,93),T={class:"language-bash"},x=s("button",{title:"Copy Code",class:"copy"},null,-1),W=s("span",{class:"lang"},"bash",-1),I={class:"shiki material-theme-palenight"},G={class:"line"},R=a('curl -sSL https://rollkit.dev/install-local-da.sh | sh -s ',12),P={style:{color:"#C3E88D"}},H=a(`

    This script builds and runs the node, now listening on port 7980.

    After you have Go and Ignite CLI installed, and your local data availability node running on your machine, you're ready to build, test, and launch your own sovereign rollup.

    ๐ŸŸข Building and running wordle chain โ€‹

    Now let's initialize a rollkit.toml file in the worldle directory by running:

    bash
    rollkit toml init

    To start running a rollup with the Wordle chain, run the following command:

    bash
    rollkit start --rollkit.aggregator --rollkit.da_address http://localhost:7980

    With that, we have kickstarted our wordle network!

    In another window, from the ~/wordle directory (where rollkit.toml is located) run the following command to submit a Wordle:

    bash
    rollkit tx wordle submit-wordle giant --from wordle-key --keyring-backend test --chain-id wordle -b async -y

    NOTE: We are submitting a transaction asynchronously to avoid any timeout errors. With Rollkit as a replacement to CometBFT, we need to wait for the data availability network to ensure a block was included from Wordle, before proceeding to the next block. Currently, in Rollkit, the single aggregator is not moving forward with the next block production as long as it is trying to submit the current block to the DA network. In the future, with leader selection, block production and sync logic improves dramatically.

    This will ask you to confirm the transaction with the following message:

    json
    {
       "body":{
         "messages":[
            {
    @@ -202,8 +201,5 @@ import{C as p}from"./chunks/callout.d775988b.js";import{c as o}from"./chunks/con
     raw_log: ""
     timestamp: ""
     tx: null
    -txhash: F159E11116EC9505FC2C0D97E605357FEC0F3DAE06B57BFB17EA6A548905043E

    Note, this does not mean the transaction was included in the block yet. Let's query the transaction hash to check whether it has been included in the block yet or if there are any errors.

    bash
    wordled query tx --type=hash F159E11116EC9505FC2C0D97E605357FEC0F3DAE06B57BFB17EA6A548905043E --chain-id wordle --output json | jq -r '.raw_log'

    This should display an output like the following:

    json
    [{"events":[{"type":"message","attributes":[{"key":"action","value":"submit_wordle"
    -}]}]}]

    Test out a few things for fun:

    bash
    wordled tx wordle submit-guess 12345 --from wordle-key --keyring-backend test --chain-id wordle -b async -y

    After confirming the transaction, query the txhash given the same way you did above. You will see the response shows an Invalid Error because you submitted integers.

    Now try:

    bash
    wordled tx wordle submit-guess ABCDEFG --from wordle-key --keyring-backend test --chain-id wordle -b async -y

    After confirming the transaction, query the txhash given the same way you did above. You will see the response shows an Invalid Error because you submitted a word larger than 5 characters.

    Now try to submit another wordle even though one was already submitted

    bash
    wordled tx wordle submit-wordle meter --from wordle-key --keyring-backend test --chain-id wordle -b async -y

    After submitting the transactions and confirming, query the txhash given the same way you did above. You will get an error that a wordle has already been submitted for the day.

    Now letโ€™s try to guess a five letter word:

    bash
    wordled tx wordle submit-guess least --from wordle-key --keyring-backend test --chain-id wordle -b async -y

    After submitting the transactions and confirming, query the txhash given the same way you did above. Given you didnโ€™t guess the correct word, it will increment the guess count for wordle-key's account.

    We can verify this by querying the list:

    bash
    wordled q wordle list-guess --output json

    This outputs all Guess objects submitted so far, with the index being todayโ€™s date and the address of the submitter.

    With that, we implemented a basic example of Wordle using Cosmos-SDK and Ignite and Rollkit. Read on to how you can extend the code base.

    ๐Ÿ”ฎ Extending in the future โ€‹

    There are many ways this codebase can be extended:

    1. You can improve messaging around when you guess the correct word.
    2. You can hash the word prior to submitting it to the chain, ensuring the hashing is local so that itโ€™s not revealed via front-running by others monitoring the plaintext string when itโ€™s submitted on-chain.
    3. You can improve the UI in terminal using a nice interface for Wordle. Some examples are here.
    4. You can improve current date to stick to a specific timezone.
    5. You can create a bot that submits a wordle every day at a specific time.
    6. You can create a vue.js front-end with Ignite using example open-source repositories here and here.

    ๐ŸŽ‰ Next steps โ€‹

    Congratulations! You've built a Wordle app using Cosmos-SDK and Rollkit. Now, explore connecting your rollup to DA networks like Celestia.

    `,46),os=JSON.parse('{"title":"๐Ÿ•น๏ธ Wordle app","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"๐Ÿ•น๏ธ Wordle app | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/wordle.md","filePath":"tutorials/wordle.md","lastUpdated":1717671233000}'),X={name:"tutorials/wordle.md"},ls=Object.assign(X,{setup(Q){return(Z,$)=>(t(),r("div",null,[y,i,C,F,s("div",A,[d,c(p)]),u,s("div",h,[m,g,s("pre",f,[s("code",null,[s("span",b,[w,k,s("span",E,"https://get.ignite.com/cli@"+l(e(o).igniteVersionTag)+"!",1),_,q,v,B]),n(` -`),T])])]),S,s("div",W,[x,I,s("pre",G,[s("code",null,[s("span",P,[R,s("span",N,"github.com/cosmos/cosmos-sdk=github.com/rollkit/cosmos-sdk@"+l(e(o).rollkitCosmosSDKVersion),1)]),n(` -`),H,n(` -`),K])])]),V,s("div",L,[M,Y,s("pre",j,[s("code",null,[s("span",z,[O,s("span",U,l(e(o).localDALatestTag),1)])])])]),J]))}});export{os as __pageData,ls as default}; +txhash: F159E11116EC9505FC2C0D97E605357FEC0F3DAE06B57BFB17EA6A548905043E

    Note, this does not mean the transaction was included in the block yet. Let's query the transaction hash to check whether it has been included in the block yet or if there are any errors.

    bash
    rollkit query tx --type=hash F159E11116EC9505FC2C0D97E605357FEC0F3DAE06B57BFB17EA6A548905043E --chain-id wordle --output json | jq -r '.raw_log'

    This should display an output like the following:

    json
    [{"events":[{"type":"message","attributes":[{"key":"action","value":"submit_wordle"
    +}]}]}]

    Test out a few things for fun:

    bash
    rollkit tx wordle submit-guess 12345 --from wordle-key --keyring-backend test --chain-id wordle -b async -y

    After confirming the transaction, query the txhash given the same way you did above. You will see the response shows an Invalid Error because you submitted integers.

    Now try:

    bash
    rollkit  tx wordle submit-guess ABCDEFG --from wordle-key --keyring-backend test --chain-id wordle -b async -y

    After confirming the transaction, query the txhash given the same way you did above. You will see the response shows an Invalid Error because you submitted a word larger than 5 characters.

    Now try to submit another wordle even though one was already submitted

    bash
    rollkit tx wordle submit-wordle meter --from wordle-key --keyring-backend test --chain-id wordle -b async -y

    After submitting the transactions and confirming, query the txhash given the same way you did above. You will get an error that a wordle has already been submitted for the day.

    Now letโ€™s try to guess a five letter word:

    bash
    rollkit tx wordle submit-guess least --from wordle-key --keyring-backend test --chain-id wordle -b async -y

    After submitting the transactions and confirming, query the txhash given the same way you did above. Given you didnโ€™t guess the correct word, it will increment the guess count for wordle-key's account.

    We can verify this by querying the list:

    bash
    rollkit q wordle list-guess --output json

    This outputs all Guess objects submitted so far, with the index being todayโ€™s date and the address of the submitter.

    With that, we implemented a basic example of Wordle using Cosmos-SDK and Ignite and Rollkit. Read on to how you can extend the code base.

    ๐Ÿ”ฎ Extending in the future โ€‹

    There are many ways this codebase can be extended:

    1. You can improve messaging around when you guess the correct word.
    2. You can hash the word prior to submitting it to the chain, ensuring the hashing is local so that itโ€™s not revealed via front-running by others monitoring the plaintext string when itโ€™s submitted on-chain.
    3. You can improve the UI in terminal using a nice interface for Wordle. Some examples are here.
    4. You can improve current date to stick to a specific timezone.
    5. You can create a bot that submits a wordle every day at a specific time.
    6. You can create a vue.js front-end with Ignite using example open-source repositories here and here.

    ๐ŸŽ‰ Next steps โ€‹

    Congratulations! You've built a Wordle app using Cosmos-SDK and Rollkit. Now, explore connecting your rollup to DA networks like Celestia.

    `,43),O=JSON.parse('{"title":"๐Ÿ•น๏ธ Wordle app","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"๐Ÿ•น๏ธ Wordle app | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/wordle.md","filePath":"tutorials/wordle.md","lastUpdated":1717768398000}'),N={name:"tutorials/wordle.md"},z=Object.assign(N,{setup(K){return(L,M)=>(t(),r("div",null,[y,i,C,F,s("div",A,[d,c(p)]),u,s("div",h,[m,g,s("pre",f,[s("code",null,[s("span",b,[w,k,s("span",E,"https://get.ignite.com/cli@"+l(e(o).igniteVersionTag)+"!",1),q,v,B,_])])])]),S,s("div",T,[x,W,s("pre",I,[s("code",null,[s("span",G,[R,s("span",P,l(e(o).localDALatestTag),1)])])])]),H]))}});export{O as __pageData,z as default}; diff --git a/pr-383/assets/tutorials_wordle.md.2e8d5bf4.lean.js b/pr-383/assets/tutorials_wordle.md.2e8d5bf4.lean.js new file mode 100644 index 000000000..d1af8ee19 --- /dev/null +++ b/pr-383/assets/tutorials_wordle.md.2e8d5bf4.lean.js @@ -0,0 +1 @@ +import{C as p}from"./chunks/callout.d775988b.js";import{c as o}from"./chunks/constants.6a6fd4fb.js";import{o as t,c as r,k as s,O as c,t as l,l as e,a as n,X as a}from"./chunks/framework.be0a7370.js";const D="/docs-preview/pr-383/wordle/wordle.png",y=s("h1",{id:"๐Ÿ•น๏ธ-wordle-app",tabindex:"-1"},[n("๐Ÿ•น๏ธ Wordle app "),s("a",{class:"header-anchor",href:"#๐Ÿ•น๏ธ-wordle-app","aria-label":'Permalink to "๐Ÿ•น๏ธ Wordle app"'},"โ€‹")],-1),i=s("p",null,[s("img",{src:D,alt:"wordle-app"})],-1),C=s("p",null,[n("This tutorial guide will go over building a cosmos-sdk app for Rollkit, the Sovereign-Rollup implementation of CometBFT, for the popular game "),s("a",{href:"https://www.nytimes.com/games/wordle/index.html",target:"_blank",rel:"noreferrer"},"Wordle"),n(".")],-1),F=s("p",null,"This tutorial will go over how to setup Rollkit in the Ignite CLI and use it to build the game. The tutorial will go over the simple design, as well as conclude with future implementations and ideas to extend this codebase.",-1),A={class:"tip custom-block"},d=s("p",{class:"custom-block-title"},"TIP",-1),u=a("",18),h={class:"language-bash"},m=s("button",{title:"Copy Code",class:"copy"},null,-1),g=s("span",{class:"lang"},"bash",-1),f={class:"shiki material-theme-palenight"},b={class:"line"},w=s("span",{style:{color:"#FFCB6B"}},"curl",-1),k=s("span",{style:{color:"#A6ACCD"}}," ",-1),E={style:{color:"#C3E88D"}},q=s("span",{style:{color:"#A6ACCD"}}," ",-1),v=s("span",{style:{color:"#89DDFF"}},"|",-1),B=s("span",{style:{color:"#A6ACCD"}}," ",-1),_=s("span",{style:{color:"#FFCB6B"}},"bash",-1),S=a("",93),T={class:"language-bash"},x=s("button",{title:"Copy Code",class:"copy"},null,-1),W=s("span",{class:"lang"},"bash",-1),I={class:"shiki material-theme-palenight"},G={class:"line"},R=a("",12),P={style:{color:"#C3E88D"}},H=a("",43),O=JSON.parse('{"title":"๐Ÿ•น๏ธ Wordle app","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"๐Ÿ•น๏ธ Wordle app | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/wordle.md","filePath":"tutorials/wordle.md","lastUpdated":1717768398000}'),N={name:"tutorials/wordle.md"},z=Object.assign(N,{setup(K){return(L,M)=>(t(),r("div",null,[y,i,C,F,s("div",A,[d,c(p)]),u,s("div",h,[m,g,s("pre",f,[s("code",null,[s("span",b,[w,k,s("span",E,"https://get.ignite.com/cli@"+l(e(o).igniteVersionTag)+"!",1),q,v,B,_])])])]),S,s("div",T,[x,W,s("pre",I,[s("code",null,[s("span",G,[R,s("span",P,l(e(o).localDALatestTag),1)])])])]),H]))}});export{O as __pageData,z as default}; diff --git a/pr-383/assets/tutorials_wordle.md.bf1e602f.lean.js b/pr-383/assets/tutorials_wordle.md.bf1e602f.lean.js deleted file mode 100644 index 62dece41b..000000000 --- a/pr-383/assets/tutorials_wordle.md.bf1e602f.lean.js +++ /dev/null @@ -1,4 +0,0 @@ -import{C as p}from"./chunks/callout.d775988b.js";import{c as o}from"./chunks/constants.3fbf9100.js";import{o as t,c as r,k as s,O as c,t as l,l as e,a as n,X as a}from"./chunks/framework.be0a7370.js";const D="/docs-preview/pr-383/wordle/wordle.png",y=s("h1",{id:"๐Ÿ•น๏ธ-wordle-app",tabindex:"-1"},[n("๐Ÿ•น๏ธ Wordle app "),s("a",{class:"header-anchor",href:"#๐Ÿ•น๏ธ-wordle-app","aria-label":'Permalink to "๐Ÿ•น๏ธ Wordle app"'},"โ€‹")],-1),i=s("p",null,[s("img",{src:D,alt:"wordle-app"})],-1),C=s("p",null,[n("This tutorial guide will go over building a cosmos-sdk app for Rollkit, the Sovereign-Rollup implementation of CometBFT, for the popular game "),s("a",{href:"https://www.nytimes.com/games/wordle/index.html",target:"_blank",rel:"noreferrer"},"Wordle"),n(".")],-1),F=s("p",null,"This tutorial will go over how to setup Rollkit in the Ignite CLI and use it to build the game. The tutorial will go over the simple design, as well as conclude with future implementations and ideas to extend this codebase.",-1),A={class:"tip custom-block"},d=s("p",{class:"custom-block-title"},"TIP",-1),u=a("",18),h={class:"language-bash"},m=s("button",{title:"Copy Code",class:"copy"},null,-1),g=s("span",{class:"lang"},"bash",-1),f={class:"shiki material-theme-palenight"},b={class:"line"},w=s("span",{style:{color:"#FFCB6B"}},"curl",-1),k=s("span",{style:{color:"#A6ACCD"}}," ",-1),E={style:{color:"#C3E88D"}},_=s("span",{style:{color:"#A6ACCD"}}," ",-1),q=s("span",{style:{color:"#89DDFF"}},"|",-1),v=s("span",{style:{color:"#A6ACCD"}}," ",-1),B=s("span",{style:{color:"#FFCB6B"}},"bash",-1),T=a("",1),S=a("",23),W={class:"language-bash"},x=s("button",{title:"Copy Code",class:"copy"},null,-1),I=s("span",{class:"lang"},"bash",-1),G={class:"shiki material-theme-palenight"},P={class:"line"},R=a("",8),N={style:{color:"#C3E88D"}},H=a("",1),K=a("",1),V=a("",65),L={class:"language-bash"},M=s("button",{title:"Copy Code",class:"copy"},null,-1),Y=s("span",{class:"lang"},"bash",-1),j={class:"shiki material-theme-palenight"},z={class:"line"},O=a("",10),U={style:{color:"#C3E88D"}},J=a("",46),os=JSON.parse('{"title":"๐Ÿ•น๏ธ Wordle app","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"๐Ÿ•น๏ธ Wordle app | Rollkit"},{"name":"og:description","content":false}]]},"headers":[],"relativePath":"tutorials/wordle.md","filePath":"tutorials/wordle.md","lastUpdated":1717671233000}'),X={name:"tutorials/wordle.md"},ls=Object.assign(X,{setup(Q){return(Z,$)=>(t(),r("div",null,[y,i,C,F,s("div",A,[d,c(p)]),u,s("div",h,[m,g,s("pre",f,[s("code",null,[s("span",b,[w,k,s("span",E,"https://get.ignite.com/cli@"+l(e(o).igniteVersionTag)+"!",1),_,q,v,B]),n(` -`),T])])]),S,s("div",W,[x,I,s("pre",G,[s("code",null,[s("span",P,[R,s("span",N,"github.com/cosmos/cosmos-sdk=github.com/rollkit/cosmos-sdk@"+l(e(o).rollkitCosmosSDKVersion),1)]),n(` -`),H,n(` -`),K])])]),V,s("div",L,[M,Y,s("pre",j,[s("code",null,[s("span",z,[O,s("span",U,l(e(o).localDALatestTag),1)])])])]),J]))}});export{os as __pageData,ls as default}; diff --git a/pr-383/blog/overview.html b/pr-383/blog/overview.html index 95e676a46..89fbbbf57 100644 --- a/pr-383/blog/overview.html +++ b/pr-383/blog/overview.html @@ -7,32 +7,32 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -59,8 +59,8 @@
    On this page

    Blog โ€‹

    Welcome to our blog! Here, you'll find a variety of articles on a range of topics. Use this overview to navigate through our content.

    Table of contents โ€‹

    Stay tuned for more exciting content!

    Released under the APACHE-2.0 License

    - +
    On this page

    Blog โ€‹

    Welcome to our blog! Here, you'll find a variety of articles on a range of topics. Use this overview to navigate through our content.

    Table of contents โ€‹

    Stay tuned for more exciting content!

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/blog/rollkit-the-first-sovereign-rollup-framework.html b/pr-383/blog/rollkit-the-first-sovereign-rollup-framework.html index 43401ffb0..30220538c 100644 --- a/pr-383/blog/rollkit-the-first-sovereign-rollup-framework.html +++ b/pr-383/blog/rollkit-the-first-sovereign-rollup-framework.html @@ -7,32 +7,32 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -61,8 +61,8 @@
    On this page

    Rollkit: The First Sovereign Rollup Framework โ€‹

    By Rollkit

    Rollkit blog cover

    Bitcoin to Ethereum took 7 years. Ethereum to more scalable alt-L1s took 1โ€“2 years. And then Cosmos SDK and CometBFT brought down time-to-launch a sovereign L1 to months.

    Now, Rollkit makes deploying any VM or application on its own sovereign chain as easy as typing rollkit start.

    Rollkit provides a path to one-click sovereignty for any crypto application, enabling any developer to launch their own sovereign rollups within seconds.

    Sovereign rollups combine the self-governance of a Layer 1 with the ease of deploying a rollup. They remove the need to recruit a secure validator set or bootstrap security by prematurely launching a token. Just like an independent L1, sovereign rollups retain the ability to hard fork which allows them to protect against hacks or bugs. This provides its community the ability to enforce social consensus and be sovereign.

    Without the overhead of a settlement layer, sovereign rollups can directly interoperate with shared security when using the same DA layer.

    By using a generic application interface like ABCI++, Rollkit is compatible with the Cosmos SDK, the leading framework for building sovereign blockchains. This enables all Cosmos SDK developers to build a sovereign rollup and tap into all the powerful cosmos ecosystem tooling theyโ€™re used to including IBC, ABCI++, and Skip Protocol's Slinky and BlockSDK.

    Developers have full-freedom to deploy a VM or define their own execution environment, unconstrained by the overhead of an enshrined settlement layer that must process fraud or ZK proofs for their rollups. This means that instead of a canonical on-chain light client that comes with an enshrined settlement layer, sovereign rollups can define how they interoperate with other blockchains by having on-chain light clients of each other as needed.

    Take Control โ€‹

    In the past, developers have been compelled to accept a degree of trust in convincing validators to organize and independently run nodes that secure a new blockchain. This requires launching premature tokens, inflating away their token supply in order to maintain incentive alignment with validators and offset their operational costs. This does not let developers focus on the core product theyโ€™re building. Sovereign rollups empower developers to get rid of this need to launch a token prematurely for bootstrapping a validator set and spending an excessively high amount of internal resources on blockchain development.

    Existing settled rollups come with the overhead of an enshrined settlement layer like Ethereum L1 where it is difficult and expensive to unwind a token on an L2 and move to another L2 without relying on trusted liquidity bridging intermediaries. This also comes with becoming subordinate to the social consensus of an enshrined settlement layer, which they may or may not align with.

    Sovereign rollups donโ€™t need to settle to an external blockchain and can instead fully own their settlement. This allows them to protect against hacks and bugs, and facilitate upgrades via hard forks. They introduce rollup light clients that verify DA directly through data availability sampling and verify execution state proofs allowing asynchronous composability as needed. This in turn paves the path forward for trust-minimized interoperability between sovereign chains that share the same DA layer.

    Sovereign rollups remove the need to have a bridge contract that is upgradeable by an offchain council and instead allows the sovereign community to define rules via fully onchain governance.

    Build with the Best โ€‹

    Cosmos SDKโ€™s rich array of developer tooling, battle-tested and refined over the past several years, is available to Rollkit developers from day one. Developers can use popular wallet infrastructure, block explorers and indexers supporting CometBFT RPCs, speak IBC across the interchain, have Cosmwasm smart contracts along with Abstract SDK, utilize MEV and free lanes via the BlockSDK and enshrine oracles in block production with Slinky from Skip Protocol. More cosmos related resources.

    Rollkit rollups interact with a state machine via the Application Blockchain Interface (ABCI++). This allows it to be used as an alternative to CometBFT for any ABCI application. Rollkit comes with a custom start handler that can be used by Cosmos SDK blockchains to use it as its ABCI client while still following the release branches of upstream Cosmos SDK. This compatibility enables developers to use tools like abci-cli to test and debug rollups.

    Optimize for your needs โ€‹

    Rollkit allows developers to optimize between the different modular components of a sovereign chain as needed. Rollkit allows you to:

    • Choose between data availability layers that implement the go-da interface.

    • Choose any ABCI++ compatible virtual machine.

    • Utilize the Sequencing API to delegate sequencing to the shared sequencer network of your choice or even delegate sequencing to the DA layer to go based. Choose between state validity modes: Pessimistic, Optimistic, or ZK or use a combination of both zk and optimistic schemes. Eliminate the need to launch a token or designate the native token or any token for gas fees.

    • Customize block time to just a couple hundred milliseconds and produce blocks only when needed.

    • Configure the fork choice rule.

    Rollkit rollups pay only for data availability on demand. There is no sequencer split required, nor will there ever be any kind of rent seeking model imposed on Rollkit rollups. Rollkit rollups preserve the advantages of a Cosmos SDK blockchain but reduce the overhead of deploying and maintaining a validator set.

    Break Free. Be Sovereign. โ€‹

    Get started with launching your own sovereign chain with Rollkit. If youโ€™re thinking of building a sovereign chain, weโ€™d love to hear from you. Fill out this form.

    Released under the APACHE-2.0 License

    - +
    On this page

    Rollkit: The First Sovereign Rollup Framework โ€‹

    By Rollkit

    Rollkit blog cover

    Bitcoin to Ethereum took 7 years. Ethereum to more scalable alt-L1s took 1โ€“2 years. And then Cosmos SDK and CometBFT brought down time-to-launch a sovereign L1 to months.

    Now, Rollkit makes deploying any VM or application on its own sovereign chain as easy as typing rollkit start.

    Rollkit provides a path to one-click sovereignty for any crypto application, enabling any developer to launch their own sovereign rollups within seconds.

    Sovereign rollups combine the self-governance of a Layer 1 with the ease of deploying a rollup. They remove the need to recruit a secure validator set or bootstrap security by prematurely launching a token. Just like an independent L1, sovereign rollups retain the ability to hard fork which allows them to protect against hacks or bugs. This provides its community the ability to enforce social consensus and be sovereign.

    Without the overhead of a settlement layer, sovereign rollups can directly interoperate with shared security when using the same DA layer.

    By using a generic application interface like ABCI++, Rollkit is compatible with the Cosmos SDK, the leading framework for building sovereign blockchains. This enables all Cosmos SDK developers to build a sovereign rollup and tap into all the powerful cosmos ecosystem tooling theyโ€™re used to including IBC, ABCI++, and Skip Protocol's Slinky and BlockSDK.

    Developers have full-freedom to deploy a VM or define their own execution environment, unconstrained by the overhead of an enshrined settlement layer that must process fraud or ZK proofs for their rollups. This means that instead of a canonical on-chain light client that comes with an enshrined settlement layer, sovereign rollups can define how they interoperate with other blockchains by having on-chain light clients of each other as needed.

    Take Control โ€‹

    In the past, developers have been compelled to accept a degree of trust in convincing validators to organize and independently run nodes that secure a new blockchain. This requires launching premature tokens, inflating away their token supply in order to maintain incentive alignment with validators and offset their operational costs. This does not let developers focus on the core product theyโ€™re building. Sovereign rollups empower developers to get rid of this need to launch a token prematurely for bootstrapping a validator set and spending an excessively high amount of internal resources on blockchain development.

    Existing settled rollups come with the overhead of an enshrined settlement layer like Ethereum L1 where it is difficult and expensive to unwind a token on an L2 and move to another L2 without relying on trusted liquidity bridging intermediaries. This also comes with becoming subordinate to the social consensus of an enshrined settlement layer, which they may or may not align with.

    Sovereign rollups donโ€™t need to settle to an external blockchain and can instead fully own their settlement. This allows them to protect against hacks and bugs, and facilitate upgrades via hard forks. They introduce rollup light clients that verify DA directly through data availability sampling and verify execution state proofs allowing asynchronous composability as needed. This in turn paves the path forward for trust-minimized interoperability between sovereign chains that share the same DA layer.

    Sovereign rollups remove the need to have a bridge contract that is upgradeable by an offchain council and instead allows the sovereign community to define rules via fully onchain governance.

    Build with the Best โ€‹

    Cosmos SDKโ€™s rich array of developer tooling, battle-tested and refined over the past several years, is available to Rollkit developers from day one. Developers can use popular wallet infrastructure, block explorers and indexers supporting CometBFT RPCs, speak IBC across the interchain, have Cosmwasm smart contracts along with Abstract SDK, utilize MEV and free lanes via the BlockSDK and enshrine oracles in block production with Slinky from Skip Protocol. More cosmos related resources.

    Rollkit rollups interact with a state machine via the Application Blockchain Interface (ABCI++). This allows it to be used as an alternative to CometBFT for any ABCI application. Rollkit comes with a custom start handler that can be used by Cosmos SDK blockchains to use it as its ABCI client while still following the release branches of upstream Cosmos SDK. This compatibility enables developers to use tools like abci-cli to test and debug rollups.

    Optimize for your needs โ€‹

    Rollkit allows developers to optimize between the different modular components of a sovereign chain as needed. Rollkit allows you to:

    • Choose between data availability layers that implement the go-da interface.

    • Choose any ABCI++ compatible virtual machine.

    • Utilize the Sequencing API to delegate sequencing to the shared sequencer network of your choice or even delegate sequencing to the DA layer to go based. Choose between state validity modes: Pessimistic, Optimistic, or ZK or use a combination of both zk and optimistic schemes. Eliminate the need to launch a token or designate the native token or any token for gas fees.

    • Customize block time to just a couple hundred milliseconds and produce blocks only when needed.

    • Configure the fork choice rule.

    Rollkit rollups pay only for data availability on demand. There is no sequencer split required, nor will there ever be any kind of rent seeking model imposed on Rollkit rollups. Rollkit rollups preserve the advantages of a Cosmos SDK blockchain but reduce the overhead of deploying and maintaining a validator set.

    Break Free. Be Sovereign. โ€‹

    Get started with launching your own sovereign chain with Rollkit. If youโ€™re thinking of building a sovereign chain, weโ€™d love to hear from you. Fill out this form.

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/blog/sovereign-rollups-on-bitcoin.html b/pr-383/blog/sovereign-rollups-on-bitcoin.html index 1f2557a5f..08d77c404 100644 --- a/pr-383/blog/sovereign-rollups-on-bitcoin.html +++ b/pr-383/blog/sovereign-rollups-on-bitcoin.html @@ -7,33 +7,33 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -62,9 +62,9 @@
    On this page

    Sovereign rollups on Bitcoin with Rollkit โ€‹

    By Rollkit

    rollkit-bitcoinOriginally published on 5 March 2023

    Today, we are proud to announce that Rollkit is the first rollup framework to support sovereign rollups on Bitcoin. An early research implementation allows Rollkit rollups to use Bitcoin for data availability.

    Rollkit is opening the door for developers to create rollups with arbitrary execution environments that inherit Bitcoinโ€™s data availability guarantees and re-org resistance. With the new integration it is now possible to run the EVM on Bitcoin as a Rollkit sovereign rollup. Sovereign rollups on Bitcoin not only expand the possibilities for rollups, but also have the potential to help bootstrap a healthy blockspace fee market on Bitcoin, enabling a more sustainable security budget.

    Tl;dr โ€‹

    • Sovereign rollups using Bitcoin for data availability are now a reality with Rollkitโ€™s new early research integration.
    • Follow along with a demo of the EVM running on Bitcoin as a sovereign Rollkit rollup.
    • The implementation was possible due to Bitcoin's Taproot upgrade and Ordinals' usage of Bitcoin for publishing arbitrary data.

    Posting data on Bitcoin with Taproot โ€‹

    On Feb. 1, 2023, the Luxor mining pool mined the largest Bitcoin block (#774628) ever, approximately 4 MB. Most of the blockspace was used to inscribe a Taproot Wizards NFT with Ordinals, a project that implements NFTs on Bitcoin by publishing the image data on-chain.

    Bitcoin NFTs use Taproot witnesses to inscribe arbitrary data, enabled by Bitcoin's Taproot upgrade. Taproot witnesses provide a slightly better payload-to-data ratio than SegWit transactions. A standard transaction can include up to around 390kB of arbitrary data while still passing through the public mempool. A non-standard transaction, included by a miner directly without passing through the mempool, can include close to 4MB of arbitrary data. In short, with SegWit, it became viable to post big blobs of data to the Bitcoin blockchain.

    Since then, the usage of Ordinals for NFT inscriptions and Taproot utilization has kicked off. Eric Wall found that at the time of his tweet, posting data on Bitcoin was 7x cheaper than Ethereum. Now that there are thousands of inscriptions on Bitcoin, it has become clear that sovereign rollups and an ecosystem of dapps on Bitcoin could become a reality. The missing piece: a rollup framework for easily integrating Bitcoin as a data availability layer.

    Integrating Bitcoin as a data availability layer into Rollkit โ€‹

    Rollkit is a modular framework for rollups, where developers can plug-in custom execution layers and data availability layers. Initially, Rollkit only supported Celestia as an option for data availability and consensus. Now, Bitcoin is an option, thanks to an early research implementation of a Bitcoin data availability module for Rollkit. In this case, sovereign rollups manage their own execution and settlement while offloading consensus and data availability to Bitcoin.

    rollkit-bitcoin-rollup

    How Rollkit posts data to Bitcoin โ€‹

    To write and read data on Bitcoin, we make use of Taproot transactions. To facilitate this, we implemented a Go package called bitcoin-da that provides a reader/writer interface to Bitcoin. For details of how the interface works and how it uses Taproot, see the specs. The package can be re-used by any project that wants to read or write data on Bitcoin.

    Rollkit was built with modularity at its core. It has a data availability interface so that developers can simply implement specific methods to add a new data availability layer. To add a data availability layer, implementers need to satisfy the DataAvailabilityLayerClient interface which defines the behavior of the data availability client, and the BlockRetriever interface which defines how blocks can be synced. These interfaces live in the da package. The most important methods in these interfaces are SubmitBlock and RetrieveBlock for reading and writing the blocks.

    After implementing the Taproot reader/writer interface for Bitcoin (bitcoin-da), adding it as a data availability module for Rollkit took less than a day. We mostly only had to implement the SubmitBlock and RetrieveBlocks functions for Rollkit to call the Read and Write methods in bitcoin-da.

    rollkit-bitcoin-rollup-2

    EVM on Bitcoin demo โ€‹

    Rollkit supports custom execution layers, including EVM, CosmWasm, or the Cosmos SDK. To test the integration, we used Rollkit to run the EVM (using Ethermint) as a sovereign rollup on a local Bitcoin test network. See below for a demo.

    Conclusion โ€‹

    As we move towards a future where sovereign communities will form around different applications, asking them to incur the high cost and overhead of deploying a layer 1 blockchain to be sovereign is not sustainable. Sovereign rollups fix this by making it possible to deploy a sovereign chain that inherits the data availability and consensus of another layer 1 chain such as Bitcoin.

    Our goal with Rollkit is to make it easy to build and customize rollups. We invite you to play around Rollkit and build sovereign rollups on Bitcoin, or customize Rollkit with different execution environments and data availability layers. For details on how to run Rollkit with the Bitcoin data availability module, see the instructions here. Keep in mind that the integration is an early research implementation and it is not yet production-ready!

    Modularism, not maximalism.

    Released under the APACHE-2.0 License

    - +
    On this page

    Sovereign rollups on Bitcoin with Rollkit โ€‹

    By Rollkit

    rollkit-bitcoinOriginally published on 5 March 2023

    Today, we are proud to announce that Rollkit is the first rollup framework to support sovereign rollups on Bitcoin. An early research implementation allows Rollkit rollups to use Bitcoin for data availability.

    Rollkit is opening the door for developers to create rollups with arbitrary execution environments that inherit Bitcoinโ€™s data availability guarantees and re-org resistance. With the new integration it is now possible to run the EVM on Bitcoin as a Rollkit sovereign rollup. Sovereign rollups on Bitcoin not only expand the possibilities for rollups, but also have the potential to help bootstrap a healthy blockspace fee market on Bitcoin, enabling a more sustainable security budget.

    Tl;dr โ€‹

    • Sovereign rollups using Bitcoin for data availability are now a reality with Rollkitโ€™s new early research integration.
    • Follow along with a demo of the EVM running on Bitcoin as a sovereign Rollkit rollup.
    • The implementation was possible due to Bitcoin's Taproot upgrade and Ordinals' usage of Bitcoin for publishing arbitrary data.

    Posting data on Bitcoin with Taproot โ€‹

    On Feb. 1, 2023, the Luxor mining pool mined the largest Bitcoin block (#774628) ever, approximately 4 MB. Most of the blockspace was used to inscribe a Taproot Wizards NFT with Ordinals, a project that implements NFTs on Bitcoin by publishing the image data on-chain.

    Bitcoin NFTs use Taproot witnesses to inscribe arbitrary data, enabled by Bitcoin's Taproot upgrade. Taproot witnesses provide a slightly better payload-to-data ratio than SegWit transactions. A standard transaction can include up to around 390kB of arbitrary data while still passing through the public mempool. A non-standard transaction, included by a miner directly without passing through the mempool, can include close to 4MB of arbitrary data. In short, with SegWit, it became viable to post big blobs of data to the Bitcoin blockchain.

    Since then, the usage of Ordinals for NFT inscriptions and Taproot utilization has kicked off. Eric Wall found that at the time of his tweet, posting data on Bitcoin was 7x cheaper than Ethereum. Now that there are thousands of inscriptions on Bitcoin, it has become clear that sovereign rollups and an ecosystem of dapps on Bitcoin could become a reality. The missing piece: a rollup framework for easily integrating Bitcoin as a data availability layer.

    Integrating Bitcoin as a data availability layer into Rollkit โ€‹

    Rollkit is a modular framework for rollups, where developers can plug-in custom execution layers and data availability layers. Initially, Rollkit only supported Celestia as an option for data availability and consensus. Now, Bitcoin is an option, thanks to an early research implementation of a Bitcoin data availability module for Rollkit. In this case, sovereign rollups manage their own execution and settlement while offloading consensus and data availability to Bitcoin.

    rollkit-bitcoin-rollup

    How Rollkit posts data to Bitcoin โ€‹

    To write and read data on Bitcoin, we make use of Taproot transactions. To facilitate this, we implemented a Go package called bitcoin-da that provides a reader/writer interface to Bitcoin. For details of how the interface works and how it uses Taproot, see the specs. The package can be re-used by any project that wants to read or write data on Bitcoin.

    Rollkit was built with modularity at its core. It has a data availability interface so that developers can simply implement specific methods to add a new data availability layer. To add a data availability layer, implementers need to satisfy the DataAvailabilityLayerClient interface which defines the behavior of the data availability client, and the BlockRetriever interface which defines how blocks can be synced. These interfaces live in the da package. The most important methods in these interfaces are SubmitBlock and RetrieveBlock for reading and writing the blocks.

    After implementing the Taproot reader/writer interface for Bitcoin (bitcoin-da), adding it as a data availability module for Rollkit took less than a day. We mostly only had to implement the SubmitBlock and RetrieveBlocks functions for Rollkit to call the Read and Write methods in bitcoin-da.

    rollkit-bitcoin-rollup-2

    EVM on Bitcoin demo โ€‹

    Rollkit supports custom execution layers, including EVM, CosmWasm, or the Cosmos SDK. To test the integration, we used Rollkit to run the EVM (using Ethermint) as a sovereign rollup on a local Bitcoin test network. See below for a demo.

    Conclusion โ€‹

    As we move towards a future where sovereign communities will form around different applications, asking them to incur the high cost and overhead of deploying a layer 1 blockchain to be sovereign is not sustainable. Sovereign rollups fix this by making it possible to deploy a sovereign chain that inherits the data availability and consensus of another layer 1 chain such as Bitcoin.

    Our goal with Rollkit is to make it easy to build and customize rollups. We invite you to play around Rollkit and build sovereign rollups on Bitcoin, or customize Rollkit with different execution environments and data availability layers. For details on how to run Rollkit with the Bitcoin data availability module, see the instructions here. Keep in mind that the integration is an early research implementation and it is not yet production-ready!

    Modularism, not maximalism.

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/guides/block-times.html b/pr-383/guides/block-times.html index bd9ad8c0e..c3aecf2f9 100644 --- a/pr-383/guides/block-times.html +++ b/pr-383/guides/block-times.html @@ -7,32 +7,32 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -59,10 +59,10 @@
    On this page

    How to change speed of block production โ€‹

    If you have gone through both the GM world and the Full and sequencer node rollup setup already, you're now ready to experiment with faster block times.

    In your gmd start [args...] command, you will need to add a flag and then the argument for block time.

    The flag is:

    bash
    --rollkit.block_time 1s

    Where 1s can be adjusted to the speed of your choosing.

    Here is an example:

    bash
    # start the chain
    +
    On this page

    How to change speed of block production โ€‹

    If you have gone through both the GM world and the Full and sequencer node rollup setup already, you're now ready to experiment with faster block times.

    In your gmd start [args...] command, you will need to add a flag and then the argument for block time.

    The flag is:

    bash
    --rollkit.block_time 1s

    Where 1s can be adjusted to the speed of your choosing.

    Here is an example:

    bash
    # start the chain
     gmd start [existing flags...] 
    -gmd start [existing flags...] --rollkit.block_time 1s 

    In the above example, we've changed it to one second blocks. Alternatively, you could slow your rollup down to 30 seconds:

    bash
    --rollkit.block_time 30s

    Or speed it up even more, to sub-second block times (100 milliseconds):

    bash
    --rollkit.block_time 0.1ms

    Released under the APACHE-2.0 License

    - +gmd start [existing flags...] --rollkit.block_time 1s

    In the above example, we've changed it to one second blocks. Alternatively, you could slow your rollup down to 30 seconds:

    bash
    --rollkit.block_time 30s

    Or speed it up even more, to sub-second block times (100 milliseconds):

    bash
    --rollkit.block_time 0.1ms

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/guides/connect-local-da.html b/pr-383/guides/connect-local-da.html new file mode 100644 index 000000000..3da41813a --- /dev/null +++ b/pr-383/guides/connect-local-da.html @@ -0,0 +1,68 @@ + + + + + + How to Connect a Rollup to a Local DA Network | Rollkit + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Skip to content
    On this page

    How to Connect a Rollup to a Local DA Network โ€‹

    This guide provides a quick and straightforward method to start a local Data Availability (DA) network and configure your rollup to post data to it.

    Setting Up a Local DA Network โ€‹

    To set up a local DA network node on your machine, run the following script to install and start the local DA node:

    bash
    curl -sSL https://rollkit.dev/install-local-da.sh | bash -s {{constants.localDALatestTag}}

    This script will build and run the node, which will then listen on port 7980.

    Configuring Your Rollup to Connect to the Local DA Network โ€‹

    To connect your rollup to the local DA network, you need to pass the --rollkit.da_address flag with the local DA node address.

    Run Your Rollup: โ€‹

    Start your rollup node with the following command, ensuring to include the DA address flag:

    bash
    rollkit start \
    +    --rollkit.da_address http://localhost:7980 \
    +    <other-flags>

    Summary โ€‹

    By following these steps, you will set up a local DA network node and configure your rollup to post data to it. This setup is useful for testing and development in a controlled environment.

    Released under the APACHE-2.0 License

    + + + + \ No newline at end of file diff --git a/pr-383/guides/create-genesis.html b/pr-383/guides/create-genesis.html new file mode 100644 index 000000000..cccbcfcd2 --- /dev/null +++ b/pr-383/guides/create-genesis.html @@ -0,0 +1,75 @@ + + + + + + How to Create a Genesis for Your Rollup | Rollkit + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Skip to content
    On this page

    How to Create a Genesis for Your Rollup โ€‹

    This guide will walk you through the process of setting up a genesis for your rollup. Follow the steps below to initialize your rollup chain, add a genesis account, and start the chain.

    1. Setting Variables โ€‹

    First, set the necessary variables for your chain, here is an example:

    sh
    VALIDATOR_NAME=validator1
    +CHAIN_ID=rollup-chain
    +KEY_NAME=rollup-key
    +CHAINFLAG="--chain-id ${CHAIN_ID}"
    +TOKEN_AMOUNT="10000000000000000000000000stake"
    +STAKING_AMOUNT="1000000000stake"

    2. Ensuring rollkit.toml is Present and Building Entrypoint โ€‹

    Ensure that rollkit.toml is present in the root of your rollup directory (if not, follow a Guide to set it up) and run the following command to (re)generate an entrypoint binary out of the code:

    sh
    rollkit rebuild

    This creates an entrypoint binary in the root of your rollup directory. which is used to run all the operations on the rollup chain.

    Ensure that chain configuration directory is set correctly in the rollkit.toml file, if you doubt it, you can remove the rollkit.toml file and run the following command to generate a new one:

    sh
    rollkit toml init

    3. Resetting Existing Genesis/Chain Data โ€‹

    Reset any existing genesis or chain data:

    sh
    rollkit tendermint unsafe-reset-all

    4. Initializing the Validator โ€‹

    Initialize the validator with the chain ID you set:

    sh
    rollkit init $VALIDATOR_NAME --chain-id $CHAIN_ID

    5. Adding a Key to Keyring Backend โ€‹

    Add a key to the keyring-backend:

    sh
    rollkit keys add $KEY_NAME --keyring-backend test

    6. Adding a Genesis Account โ€‹

    Add a genesis account with the specified token amount:

    sh
    rollkit genesis add-genesis-account $KEY_NAME $TOKEN_AMOUNT --keyring-backend test

    7. Setting the Staking Amount in the Genesis Transaction โ€‹

    Set the staking amount in the genesis transaction:

    sh
    rollkit genesis gentx $KEY_NAME $STAKING_AMOUNT --chain-id $CHAIN_ID --keyring-backend test

    8. Collecting Genesis Transactions โ€‹

    Collect the genesis transactions:

    sh
    rollkit genesis collect-gentxs

    9. Configuring the Genesis File โ€‹

    Copy the centralized sequencer address into genesis.json:

    sh
    ADDRESS=$(jq -r '.address' ~/.rollup/config/priv_validator_key.json)
    +PUB_KEY=$(jq -r '.pub_key' ~/.rollup/config/priv_validator_key.json)
    +jq --argjson pubKey "$PUB_KEY" '.consensus["validators"]=[{"address": "'$ADDRESS'", "pub_key": $pubKey, "power": "1000", "name": "Rollkit Sequencer"}]' ~/.rollup/config/genesis.json > temp.json && mv temp.json ~/.rollup/config/genesis.json

    10. Creating a Restart Script โ€‹

    Create a restart-rollup.sh file to restart the chain later, notice the rollkit.da_address flag which is the address of the data availability node, for other DA layers it will different set of flags (in case of Celestia check out the tutorial here):

    sh
    [ -f restart-rollup.sh ] && rm restart-rollup.sh
    +
    +echo "rollkit start --rollkit.aggregator --rpc.laddr tcp://127.0.0.1:36657 --grpc.address 127.0.0.1:9290 --p2p.laddr \"0.0.0.0:36656\" --minimum-gas-prices=\"0.025stake\" --rollkit.da_address \"http://localhost:7980\"" >> restart-rollup.sh

    11. Starting the Chain โ€‹

    Finally, start the chain with the following command:

    sh
    rollkit start --rollkit.aggregator --rpc.laddr tcp://127.0.0.1:36657 --grpc.address 127.0.0.1:9290 --p2p.laddr "0.0.0.0:36656" --minimum-gas-prices="0.025stake" --rollkit.da_address "http://localhost:7980"

    Summary โ€‹

    By following these steps, you will set up the genesis for your rollup, initialize the validator, add a genesis account, and start the chain on a local data availability network (DA). This guide provides a basic framework for configuring and starting your rollup using the Rollkit CLI. Make sure rollkit.toml is present in the root of your rollup directory and use the rollkit command for all operations.

    Released under the APACHE-2.0 License

    + + + + \ No newline at end of file diff --git a/pr-383/guides/cw-orch.html b/pr-383/guides/cw-orch.html index b66e1e22b..684abc807 100644 --- a/pr-383/guides/cw-orch.html +++ b/pr-383/guides/cw-orch.html @@ -7,32 +7,32 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -59,7 +59,7 @@
    On this page

    Speed up your development with cw-orchestrator โ€‹

    Introduction โ€‹

    cw-orchestrator is the most advanced scripting, testing, and deployment framework for CosmWasm smart-contracts. It makes it easy to write cross-environment compatible code for cw-multi-test, Test Tube, Starship (alpha), and live networks, significantly reducing code duplication and test-writing time.

    Get ready to change the way you interact with contracts and simplify you smart-contracts journey. The following steps will allow you to integrate cw-orch and write clean code such as:

    rust
    counter.upload()?;
    +
    On this page

    Speed up your development with cw-orchestrator โ€‹

    Introduction โ€‹

    cw-orchestrator is the most advanced scripting, testing, and deployment framework for CosmWasm smart-contracts. It makes it easy to write cross-environment compatible code for cw-multi-test, Test Tube, Starship (alpha), and live networks, significantly reducing code duplication and test-writing time.

    Get ready to change the way you interact with contracts and simplify you smart-contracts journey. The following steps will allow you to integrate cw-orch and write clean code such as:

    rust
    counter.upload()?;
     counter.instantiate(&InstantiateMsg { count: 0 }, None, None)?;
     counter.increment()?;
     let count = counter.get_count()?;
    @@ -149,8 +149,8 @@
         โ”œโ”€โ”€ cw20_base.rs
         โ”œโ”€โ”€ cw20_ics20.rs
         โ””โ”€โ”€ ..

    When importing your crates to get the messages types, you can use the following command in the interface folder.

    shell
    cargo add cw20-base --path ../contracts/cw20-base/
    -cargo add cw20 --path ../packages/cw20

    Integrating single contracts โ€‹

    Now that you workspace is setup, you can integrate with single contracts using the above section

    More examples and scripts โ€‹

    You can find more example interactions on the counter-contract example directly in the cw-orchestrator repo:

    FINAL ADVICE: Learn more and explore our full cw-orch documentation !.

    Released under the APACHE-2.0 License

    - +cargo add cw20 --path ../packages/cw20

    Integrating single contracts โ€‹

    Now that you workspace is setup, you can integrate with single contracts using the above section

    More examples and scripts โ€‹

    You can find more example interactions on the counter-contract example directly in the cw-orchestrator repo:

    FINAL ADVICE: Learn more and explore our full cw-orch documentation !.

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/guides/full-and-sequencer-node.html b/pr-383/guides/full-and-sequencer-node.html index 35b151ad2..88b68b633 100644 --- a/pr-383/guides/full-and-sequencer-node.html +++ b/pr-383/guides/full-and-sequencer-node.html @@ -7,32 +7,32 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -59,7 +59,7 @@
    On this page

    Full and sequencer node rollup setup โ€‹

    This guide will cover how to set up the GM world rollup example as a multi-node network using a full and sequencer node.

    About โ€‹

    This guide is using a feature released in v0.10.2 that uses go-header, which uses libp2p that syncs blocks over a peer-to-peer (p2p) network.

    This is the same way that celestia-node syncs blocks over p2p.

    Prerequisites โ€‹

    First, you'll need to complete the GM world tutorial.

    In this demo, we'll be using the local-celestia-devnet setup used in part 1.

    Getting started โ€‹

    For running a full node, you will need to update DA_HEIGHT and P2P_ID manually. You can retrieve namespace and height from your terminal output from when you ran the init-local.sh script.

    They will be printed before your chain starts:

    txt
    ______         _  _  _     _  _
    +
    On this page

    Full and sequencer node rollup setup โ€‹

    This guide will cover how to set up the GM world rollup example as a multi-node network using a full and sequencer node.

    About โ€‹

    This guide is using a feature released in v0.10.2 that uses go-header, which uses libp2p that syncs blocks over a peer-to-peer (p2p) network.

    This is the same way that celestia-node syncs blocks over p2p.

    Prerequisites โ€‹

    First, you'll need to complete the GM world tutorial.

    In this demo, we'll be using the local-celestia-devnet setup used in part 1.

    Getting started โ€‹

    For running a full node, you will need to update DA_HEIGHT and P2P_ID manually. You can retrieve namespace and height from your terminal output from when you ran the init-local.sh script.

    They will be printed before your chain starts:

    txt
    ______         _  _  _     _  _
     | ___ \       | || || |   (_)| |
     | |_/ /  ___  | || || | __ _ | |_
     |    /  / _ \ | || || |/ /| || __|
    @@ -86,8 +86,8 @@
     # if you are running a separate celestia-node for full node
     # use the auth token from that node
     AUTH_TOKEN=$(docker exec $(docker ps -q) celestia bridge auth admin --node.store /home/celestia/bridge)

    Start the full node โ€‹

    Now run your full node with the script:

    bash
    # from the gm directory
    -bash init-full-node.sh

    Congratulations! You will now have a full node running alongside your Rollkit sequencer.

    Released under the APACHE-2.0 License

    - +bash init-full-node.sh

    Congratulations! You will now have a full node running alongside your Rollkit sequencer.

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/guides/gas-price.html b/pr-383/guides/gas-price.html index 3b140802c..bcf17b1d5 100644 --- a/pr-383/guides/gas-price.html +++ b/pr-383/guides/gas-price.html @@ -7,32 +7,32 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -59,8 +59,8 @@
    On this page

    How to configure gas price โ€‹

    In most cases, the gas price can be left to the defaults, which ensures that the price is greater than the minimum gas price accepted by the core node.

    The gas price can also be configured manually with the flag --rollkit.da_gas_price:

    bash
    gmd start --rollkit.da_gas_price=0.1 [existing flags...]

    This configures the rollup to always use the fixed gas price of 0.1utia/gas.

    When running a rollup against a live network, the gas price may see occasional spikes during periods of high mempool congestion.

    To avoid such transient blob submission failures, the flag --rollkit.da_gas_multiplier may be used:

    bash
    gmd start --rollkit.da_gas_price=0.1 --rollkit.da_gas_multiplier=1.2 [...]

    This configures the rollup to keep increasing the gas price by a factor of 1.2x of the previous price until the transaction is accepted by the core node.

    When the blob submission transaction eventually succeeds, the gas price will gradually return to the default, decreasing by the same factor.

    The gas multiplier will only be used if the gas price has been manually configured.

    Released under the APACHE-2.0 License

    - +
    On this page

    How to configure gas price โ€‹

    In most cases, the gas price can be left to the defaults, which ensures that the price is greater than the minimum gas price accepted by the core node.

    The gas price can also be configured manually with the flag --rollkit.da_gas_price:

    bash
    gmd start --rollkit.da_gas_price=0.1 [existing flags...]

    This configures the rollup to always use the fixed gas price of 0.1utia/gas.

    When running a rollup against a live network, the gas price may see occasional spikes during periods of high mempool congestion.

    To avoid such transient blob submission failures, the flag --rollkit.da_gas_multiplier may be used:

    bash
    gmd start --rollkit.da_gas_price=0.1 --rollkit.da_gas_multiplier=1.2 [...]

    This configures the rollup to keep increasing the gas price by a factor of 1.2x of the previous price until the transaction is accepted by the core node.

    When the blob submission transaction eventually succeeds, the gas price will gradually return to the default, decreasing by the same factor.

    The gas multiplier will only be used if the gas price has been manually configured.

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/guides/ibc-connection.html b/pr-383/guides/ibc-connection.html index 6d9b75724..b38af2264 100644 --- a/pr-383/guides/ibc-connection.html +++ b/pr-383/guides/ibc-connection.html @@ -7,32 +7,32 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -59,7 +59,7 @@
    On this page

    IBC connection tutorial โ€‹

    In this tutorial, we'll learn how to use an Inter-Blockchain Communication (IBC) Protocol relayer to create an IBC connection between a GM world rollup and an Osmosis local testnet.

    Disclaimer

    This initial version of IBC has high trust assumptions where receiving chains only verify the signature of the single rollup node. For use in production, it's recommended to wait for trust-minimized IBC support which includes state proofs and conditional clients. Learn more about how conditional clients work in ibc-go issue 5112 and a tracking issue for state proofs in rollkit issue 1632.

    ๐Ÿ’ป Pre-requisites โ€‹

    Software requirements โ€‹

    • Docker running on your machine
    • Go version โ‰ฅ 1.21.0
    • Ignite version โ‰ฅ v28.2.0

    Run a GM rollup chain โ€‹

    Before you can create an IBC connection, you need to start a local-celestia-devnet instance in a separate terminal:

    bash
    docker run -t -i --platform linux/amd64 -p 26657:26657 -p 26658:26658 -p 26659:26659 -p 9090:9090 ghcr.io/rollkit/local-celestia-devnet:v0.13.1

    WARNING

    You will need to use Ignite v28.2.0, which you can install with:

    bash
    curl https://get.ignite.com/cli@v28.3.0! | bash

    Scaffold the GM chain:

    bash
    cd $HOME
    +
    On this page

    IBC connection tutorial โ€‹

    In this tutorial, we'll learn how to use an Inter-Blockchain Communication (IBC) Protocol relayer to create an IBC connection between a GM world rollup and an Osmosis local testnet.

    Disclaimer

    This initial version of IBC has high trust assumptions where receiving chains only verify the signature of the single rollup node. For use in production, it's recommended to wait for trust-minimized IBC support which includes state proofs and conditional clients. Learn more about how conditional clients work in ibc-go issue 5112 and a tracking issue for state proofs in rollkit issue 1632.

    ๐Ÿ’ป Pre-requisites โ€‹

    Software requirements โ€‹

    • Docker running on your machine
    • Go version โ‰ฅ 1.21.0
    • Ignite version โ‰ฅ v28.2.0

    Run a GM rollup chain โ€‹

    Before you can create an IBC connection, you need to start a local-celestia-devnet instance in a separate terminal:

    bash
    docker run -t -i --platform linux/amd64 -p 26657:26657 -p 26658:26658 -p 26659:26659 -p 9090:9090 ghcr.io/rollkit/local-celestia-devnet:v0.13.1

    WARNING

    You will need to use Ignite v28.2.0, which you can install with:

    bash
    curl https://get.ignite.com/cli@v28.3.0! | bash

    Scaffold the GM chain:

    bash
    cd $HOME
     ignite scaffold chain gm --address-prefix gm

    Change into the gm directory and install Rollkit with IBC compatibility:

    bash
    cd gm
     go mod edit -replace github.com/cosmos/cosmos-sdk=github.com/rollkit/cosmos-sdk@v0.50.6-rollkit-v0.13.3-no-fraud-proofs
     go mod tidy
    @@ -165,8 +165,8 @@
     - amount: "9999999999999999999897679"
       denom: stake
     pagination:
    -  total: "1"

    Released under the APACHE-2.0 License

    - + total: "1"

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/guides/lazy-sequencing.html b/pr-383/guides/lazy-sequencing.html index 24a8e97e2..cb9ac7011 100644 --- a/pr-383/guides/lazy-sequencing.html +++ b/pr-383/guides/lazy-sequencing.html @@ -7,32 +7,32 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -59,10 +59,10 @@
    On this page

    How to use lazy sequencing (aggregation) โ€‹

    In this guide, we'll go over how to use lazy sequencing.

    This feature was introduced in Rollkit v0.7.0 and allows rollup operators to wait for transactions to build blocks. This prevents the rollup from building empty blocks.

    To turn on lazy sequencing, add the following flag to your start command:

    bash
    --rollkit.lazy_aggregator

    An example command would look like this:

    bash
    # start the chain
    +
    On this page

    How to use lazy sequencing (aggregation) โ€‹

    In this guide, we'll go over how to use lazy sequencing.

    This feature was introduced in Rollkit v0.7.0 and allows rollup operators to wait for transactions to build blocks. This prevents the rollup from building empty blocks.

    To turn on lazy sequencing, add the following flag to your start command:

    bash
    --rollkit.lazy_aggregator

    An example command would look like this:

    bash
    # start the chain
     gmd start [existing flags...] 
    -gmd start [existing flags...] --rollkit.lazy_aggregator 

    Released under the APACHE-2.0 License

    - +gmd start [existing flags...] --rollkit.lazy_aggregator

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/guides/overview.html b/pr-383/guides/overview.html index 248e2b262..42eefa765 100644 --- a/pr-383/guides/overview.html +++ b/pr-383/guides/overview.html @@ -7,32 +7,32 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -59,8 +59,8 @@
    On this page

    How To Guides โ€‹

    Welcome to the Rollkit guides section! Here, you'll find a wide range of guides designed to help you understand and effectively use Rollkit, the first sovereign rollup framework.

    Hopefully you've gone through some of the tutorials and are ready to dive deeper. These guides will go into detail on some specific topics that will make your life easier when developing with Rollkit.

    In this section, you'll find:

    ๐Ÿ’ป Support โ€‹

    The guides will explore developing with Rollkit, which is still in Alpha stage. If you run into bugs, please write a GitHub issue or let us know in our Telegram.

    Released under the APACHE-2.0 License

    - +
    On this page

    How To Guides โ€‹

    Welcome to the Rollkit guides section! Here, you'll find a wide range of guides designed to help you understand and effectively use Rollkit, the first sovereign rollup framework.

    Hopefully you've gone through some of the tutorials and are ready to dive deeper. These guides will go into detail on some specific topics that will make your life easier when developing with Rollkit.

    In this section, you'll find:

    ๐Ÿ’ป Support โ€‹

    The guides will explore developing with Rollkit, which is still in Alpha stage. If you run into bugs, please write a GitHub issue or let us know in our Telegram.

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/guides/restart-rollup.html b/pr-383/guides/restart-rollup.html index 6ccb1ee81..218238df9 100644 --- a/pr-383/guides/restart-rollup.html +++ b/pr-383/guides/restart-rollup.html @@ -7,32 +7,32 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -59,7 +59,7 @@
    On this page

    ๐Ÿ”„ How to restart your rollup โ€‹

    This guide will teach you how to restart your Rollkit rollup.

    Restart rollup โ€‹

    This section covers the case where you need to restart your rollup.

    In order to restart your rollup, you will need to run the <your-binary>d start [...args] command for your rollup. This is the example for the GM world tutorial.

    For the GM world tutorial, you can restart the chain by running the restart-local.sh script that was generated by init-local.sh.

    Use the DA_START_HEIGHT, NAMESPACE, and AUTH_TOKEN variables from your original start command.

    Using the gmd rollup as an example, you can add something similar to your respective start script to make it easier to save variables for later use:

    bash
    # the rest of your init script
    +
    On this page

    ๐Ÿ”„ How to restart your rollup โ€‹

    This guide will teach you how to restart your Rollkit rollup.

    Restart rollup โ€‹

    This section covers the case where you need to restart your rollup.

    In order to restart your rollup, you will need to run the <your-binary>d start [...args] command for your rollup. This is the example for the GM world tutorial.

    For the GM world tutorial, you can restart the chain by running the restart-local.sh script that was generated by init-local.sh.

    Use the DA_START_HEIGHT, NAMESPACE, and AUTH_TOKEN variables from your original start command.

    Using the gmd rollup as an example, you can add something similar to your respective start script to make it easier to save variables for later use:

    bash
    # the rest of your init script
     
     # create a restart-local.sh file to restart the chain later
     rm restart-local.sh
    @@ -71,8 +71,8 @@
     4:51PM ERR DA layer submission failed error="Codespace: 'sdk', Code: 19, Message: " attempt=1 module=BlockManager
     4:51PM ERR DA layer submission failed Error="Codespace: 'sdk', Code: 19, Message: " attempt=2 module=BlockManager
     4:51PM ERR DA layer submission failed error="Codespace: 'sdk', Code: 19, Message: " attempt=3 module=BlockManager

    ๐Ÿ’ฐ Re-fund your account โ€‹

    First, you'll need to send more tokens to the account running your Celestia node. If you didn't keep track of your key, you can run the following to get your address:

    bash
    cd $HOME && cd celestia-node
    -./cel-key list --keyring-backend test --node.type light --p2p.network <network>

    ๐Ÿ›‘ Stopping your rollup โ€‹

    You can stop your gm chain (or other Rollkit rollup) by using Control + C in your terminal where the node is running.

    โ›ฝ Increase the gas fee โ€‹

    To reiterate, before restarting the chain, you will need to increase the gas fee in order to avoid a Code: 19 error:

    bash
    gmd start --rollkit.aggregator --rollkit.da_auth_token=$AUTH_TOKEN --rollkit.da_namespace $NAMESPACE --rollkit.da_start_height $DA_BLOCK_HEIGHT --rpc.laddr tcp://127.0.0.1:36657 --grpc.address 127.0.0.1:9290 --p2p.laddr "0.0.0.0:36656"

    ๐Ÿ” Restarting your rollup โ€‹

    Follow the restart rollup section above.

    ๐Ÿ›ข๏ธ Reduce gas fee & restart again โ€‹

    In order to save your TIA, we also recommend stopping the chain with Control + C, changing the gas fee back to the default (in our case, 8000 utia) and restarting the chain:

    bash
    gmd start --rollkit.aggregator --rollkit.da_auth_token=$AUTH_TOKEN --rollkit.da_namespace $NAMESPACE --rollkit.da_start_height $DA_BLOCK_HEIGHT --rpc.laddr tcp://127.0.0.1:36657 --grpc.address 127.0.0.1:9290 --p2p.laddr "0.0.0.0:36656"

    ๐ŸŽŠ Congrats! You've successfully restarted your Rollkit rollup after running out of TIA.

    Released under the APACHE-2.0 License

    - +./cel-key list --keyring-backend test --node.type light --p2p.network <network>

    ๐Ÿ›‘ Stopping your rollup โ€‹

    You can stop your gm chain (or other Rollkit rollup) by using Control + C in your terminal where the node is running.

    โ›ฝ Increase the gas fee โ€‹

    To reiterate, before restarting the chain, you will need to increase the gas fee in order to avoid a Code: 19 error:

    bash
    gmd start --rollkit.aggregator --rollkit.da_auth_token=$AUTH_TOKEN --rollkit.da_namespace $NAMESPACE --rollkit.da_start_height $DA_BLOCK_HEIGHT --rpc.laddr tcp://127.0.0.1:36657 --grpc.address 127.0.0.1:9290 --p2p.laddr "0.0.0.0:36656"

    ๐Ÿ” Restarting your rollup โ€‹

    Follow the restart rollup section above.

    ๐Ÿ›ข๏ธ Reduce gas fee & restart again โ€‹

    In order to save your TIA, we also recommend stopping the chain with Control + C, changing the gas fee back to the default (in our case, 8000 utia) and restarting the chain:

    bash
    gmd start --rollkit.aggregator --rollkit.da_auth_token=$AUTH_TOKEN --rollkit.da_namespace $NAMESPACE --rollkit.da_start_height $DA_BLOCK_HEIGHT --rpc.laddr tcp://127.0.0.1:36657 --grpc.address 127.0.0.1:9290 --p2p.laddr "0.0.0.0:36656"

    ๐ŸŽŠ Congrats! You've successfully restarted your Rollkit rollup after running out of TIA.

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/guides/rollkit-monitoring.html b/pr-383/guides/rollkit-monitoring.html index b420823d7..96c0f5513 100644 --- a/pr-383/guides/rollkit-monitoring.html +++ b/pr-383/guides/rollkit-monitoring.html @@ -7,32 +7,32 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -59,8 +59,8 @@
    On this page

    How to integrate Range with your rollup โ€‹

    This section illustrates how Rollkit developers can leverage the Range platform to monitor their rollup activity and explore relevant addresses and transactions in less than 5 minutes.

    Overview โ€‹

    In this guide, weโ€™ll go over the steps of the integration of our sample rollup GM, which is divided into three sections:

    1. Integrate your rollup with Range and start the indexing.
    2. Add your addresses and contracts.
    3. Create your first alert and explore transactions.

    Prerequisites โ€‹

    You need to have an operational rollkit rollup. If you haven't done so, you'll need to complete the GM world tutorial first.

    1. Integrate Your Rollup โ€‹

    Weโ€™ll integrate our rollup GM into Range and start indexing blocks and transactions in real-time.

    custom-network

    Steps โ€‹

    • Create an account in Range
    • Make sure you have a public RPC endpoint of your Rollkit rollup
    • Go to the settings tab on your account profile in the top-right corner
    • Click the Add Network button in the Custom Network section
    • Choose Rollkit and fill out the form
    • Congrats! Your rollup should be integrated in Range in less than 15 seconds.

    2. Add Your Addresses and Contracts โ€‹

    Now that your rollup is integrated into Range, you can customize your workspace. The first step is adding addresses and contracts that you want to monitor. For that, head to the Address section:

    import-address

    Once youโ€™ve added one or multiple addresses, you can start looking at the real-time transactions explorer in the Transactions tab.

    3. Creating Your First Alert Rule โ€‹

    Now, you can set up alerts to monitor specific events or transactions in your rollup. As an example, we can create an alert that notifies us every time our address is involved in a successful transaction:

    alert-rules

    After executing a sample transaction:

    bash
    gmd tx bank send gm-991hesf7xgmjwttag2n2wzk43rvxh47nn4ckh3e6s gm-991rcctqc5l4px95k6tdg4pjrms70m2a9t35rl50t 4039stake --keyring-backend test --node tcp://127.0.0.1:36657 --chain-id gm --fees 5000stake

    The alert events will appear both in the Overview tab and the Alerting section:

    alert-events

    ๐ŸŽŠ Congrats! You've detected the first monitored transaction in your GM rollup.

    Released under the APACHE-2.0 License

    - +
    On this page

    How to integrate Range with your rollup โ€‹

    This section illustrates how Rollkit developers can leverage the Range platform to monitor their rollup activity and explore relevant addresses and transactions in less than 5 minutes.

    Overview โ€‹

    In this guide, weโ€™ll go over the steps of the integration of our sample rollup GM, which is divided into three sections:

    1. Integrate your rollup with Range and start the indexing.
    2. Add your addresses and contracts.
    3. Create your first alert and explore transactions.

    Prerequisites โ€‹

    You need to have an operational rollkit rollup. If you haven't done so, you'll need to complete the GM world tutorial first.

    1. Integrate Your Rollup โ€‹

    Weโ€™ll integrate our rollup GM into Range and start indexing blocks and transactions in real-time.

    custom-network

    Steps โ€‹

    • Create an account in Range
    • Make sure you have a public RPC endpoint of your Rollkit rollup
    • Go to the settings tab on your account profile in the top-right corner
    • Click the Add Network button in the Custom Network section
    • Choose Rollkit and fill out the form
    • Congrats! Your rollup should be integrated in Range in less than 15 seconds.

    2. Add Your Addresses and Contracts โ€‹

    Now that your rollup is integrated into Range, you can customize your workspace. The first step is adding addresses and contracts that you want to monitor. For that, head to the Address section:

    import-address

    Once youโ€™ve added one or multiple addresses, you can start looking at the real-time transactions explorer in the Transactions tab.

    3. Creating Your First Alert Rule โ€‹

    Now, you can set up alerts to monitor specific events or transactions in your rollup. As an example, we can create an alert that notifies us every time our address is involved in a successful transaction:

    alert-rules

    After executing a sample transaction:

    bash
    gmd tx bank send gm-991hesf7xgmjwttag2n2wzk43rvxh47nn4ckh3e6s gm-991rcctqc5l4px95k6tdg4pjrms70m2a9t35rl50t 4039stake --keyring-backend test --node tcp://127.0.0.1:36657 --chain-id gm --fees 5000stake

    The alert events will appear both in the Overview tab and the Alerting section:

    alert-events

    ๐ŸŽŠ Congrats! You've detected the first monitored transaction in your GM rollup.

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/guides/use-tia-for-gas.html b/pr-383/guides/use-tia-for-gas.html index 8f3f7957f..7131ec9b6 100644 --- a/pr-383/guides/use-tia-for-gas.html +++ b/pr-383/guides/use-tia-for-gas.html @@ -7,34 +7,34 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - + + @@ -61,7 +61,7 @@
    On this page

    How to use IBC token (TIA) as gas token in your rollup โ€‹

    ๐ŸŒž Introduction โ€‹

    This tutorial will guide you through building a sovereign gm-world rollup using Rollkit, with TIA as the gas token. Unlike the quick start guide, which uses a native rollup token for gas, this tutorial demonstrates how to integrate an IBC-enabled token, TIA, as the gas token within the rollup, providing a deeper exploration of sovereign rollup development.

    We will cover:

    • Building and configuring a Cosmos-SDK application-specific rollup blockchain.
    • Posting rollup data to a Data Availability (DA) network.
    • Executing transactions using TIA as the gas token (the end goal).

    No prior understanding of the build process is required, just that it utilizes the Cosmos SDK for blockchain applications.

    TIP

    This tutorial explores Rollkit, currently in Alpha. If you encounter bugs, please report them via a GitHub issue ticket or reach out in our Telegram group.

    ๐Ÿ› ๏ธ Dependencies โ€‹

    Rollkit uses the Go programming language. Here's how to install it:

    • Linux or macOS: Run the provided script:

      bash
      curl -sSL https://rollkit.dev/install-go.sh | bash -s go1.22.3

    ๐ŸŒ Running a Local DA Network โ€‹

    Learn to run a local DA network, designed for educational purposes, on your machine.

    To set up a local DA network node:

    bash
    (cd /tmp && curl -sSL https://rollkit.dev/install-local-da.sh | bash -s v0.2.0)

    This script builds and runs the node, now listening on port 7980.

    ๐Ÿ—๏ธ Building Your Sovereign Rollup โ€‹

    With the local DA network running, letโ€™s prepare your rollup blockchain.

    To make it simple, we will download a repository with a gm-world rollup that includes an init.sh script to handle all the setup for you.

    Download and build a gm-world rollup with an interactive script in a new terminal:

    WARNING

    Ensure the jq command line tool is installed before proceeding. Install it using sudo apt-get install jq on Ubuntu or brew install jq on macOS.

    TIP

    If you get errors of gmd not found, you may need to add the go/bin directory to your PATH. You can do this by running export PATH=$PATH:$HOME/go/bin and then running the init.sh script manually again.

    bash
    (cd /tmp && bash -c "$(curl -sSL https://rollkit.dev/install-gm-rollup.sh)")

    ๐Ÿš€ Starting your rollup โ€‹

    Start the rollup, posting to the local DA network:

    bash
    gmd start --rollkit.aggregator --rollkit.da_address http://localhost:7980 --minimum-gas-prices="0.02ibc/C3E53D20BC7A4CC993B17C7971F8ECD06A433C10B6A96F4C4C3714F0624C56DA,0.025stake"

    Note that we specified the gas token to be IBC TIA. We still haven't made an IBC connection to Celestia's Mocha testnet, however, if we assume our first channel will be an ICS-20 transfer channel to Celestia, we can already calculate the token denom using this formula:

    js
    "ibc/" + toHex(sha256(toUtf8("transfer/channel-0/utia"))).toUpperCase();

    Now you should see the logs of the running node:

    bash
    12:21PM INF starting node with ABCI CometBFT in-process module=server
    +
    On this page

    How to use IBC token (TIA) as gas token in your rollup โ€‹

    ๐ŸŒž Introduction โ€‹

    This tutorial will guide you through building a sovereign gm-world rollup using Rollkit, with TIA as the gas token. Unlike the quick start guide, which uses a native rollup token for gas, this tutorial demonstrates how to integrate an IBC-enabled token, TIA, as the gas token within the rollup, providing a deeper exploration of sovereign rollup development.

    We will cover:

    • Building and configuring a Cosmos-SDK application-specific rollup blockchain.
    • Posting rollup data to a Data Availability (DA) network.
    • Executing transactions using TIA as the gas token (the end goal).

    No prior understanding of the build process is required, just that it utilizes the Cosmos SDK for blockchain applications.

    TIP

    This tutorial explores Rollkit, currently in Alpha. If you encounter bugs, please report them via a GitHub issue ticket or reach out in our Telegram group.

    ๐Ÿ› ๏ธ Dependencies โ€‹

    Rollkit uses the Go programming language. Here's how to install it:

    • Linux or macOS: Run the provided script:

      bash
      curl -sSL https://rollkit.dev/install-go.sh | bash -s go1.22.3

    ๐ŸŒ Running a Local DA Network โ€‹

    Learn to run a local DA network, designed for educational purposes, on your machine.

    To set up a local DA network node:

    bash
    (cd /tmp && curl -sSL https://rollkit.dev/install-local-da.sh | bash -s v0.2.0)

    This script builds and runs the node, now listening on port 7980.

    ๐Ÿ—๏ธ Building Your Sovereign Rollup โ€‹

    With the local DA network running, letโ€™s prepare your rollup blockchain.

    To make it simple, we will download a repository with a gm-world rollup that includes an init.sh script to handle all the setup for you.

    Download and build a gm-world rollup with an interactive script in a new terminal:

    WARNING

    Ensure the jq command line tool is installed before proceeding. Install it using sudo apt-get install jq on Ubuntu or brew install jq on macOS.

    TIP

    If you get errors of gmd not found, you may need to add the go/bin directory to your PATH. You can do this by running export PATH=$PATH:$HOME/go/bin and then running the init.sh script manually again.

    bash
    (cd /tmp && bash -c "$(curl -sSL https://rollkit.dev/install-gm-rollup.sh)")

    ๐Ÿš€ Starting your rollup โ€‹

    Start the rollup, posting to the local DA network:

    bash
    gmd start --rollkit.aggregator --rollkit.da_address http://localhost:7980 --minimum-gas-prices="0.02ibc/C3E53D20BC7A4CC993B17C7971F8ECD06A433C10B6A96F4C4C3714F0624C56DA,0.025stake"

    Note that we specified the gas token to be IBC TIA. We still haven't made an IBC connection to Celestia's Mocha testnet, however, if we assume our first channel will be an ICS-20 transfer channel to Celestia, we can already calculate the token denom using this formula:

    js
    "ibc/" + toHex(sha256(toUtf8("transfer/channel-0/utia"))).toUpperCase();

    Now you should see the logs of the running node:

    bash
    12:21PM INF starting node with ABCI CometBFT in-process module=server
     12:21PM INF starting node with Rollkit in-process module=server
     12:21PM INF service start impl=multiAppConn module=proxy msg="Starting multiAppConn service"
     12:21PM INF service start connection=query impl=localClient module=abci-client msg="Starting localClient service"
    @@ -182,8 +182,8 @@
     TX_HASH=$(gmd tx bank send "$ACCOUNT_ON_ROLLUP" "$ACCOUNT_ON_ROLLUP" 1stake --keyring-backend test --chain-id gm --gas-prices 0.02ibc/C3E53D20BC7A4CC993B17C7971F8ECD06A433C10B6A96F4C4C3714F0624C56DA -y --output json | jq -r .txhash)
     
     # Verify success
    -gmd q tx "$TX_HASH" --output json | jq .code # => 0

    ๐ŸŽ‰ Next steps โ€‹

    Congratulations! You've built a local rollup that posts to a local DA network and uses TIA as the gas token!

    Released under the APACHE-2.0 License

    - +gmd q tx "$TX_HASH" --output json | jq .code # => 0

    ๐ŸŽ‰ Next steps โ€‹

    Congratulations! You've built a local rollup that posts to a local DA network and uses TIA as the gas token!

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/guides/zkml.html b/pr-383/guides/zkml.html index 8cd9e566d..90e90b513 100644 --- a/pr-383/guides/zkml.html +++ b/pr-383/guides/zkml.html @@ -7,32 +7,32 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -59,7 +59,7 @@
    On this page

    zkML Rollup Tutorial with Sindri โ€‹

    Introduction - Code Once, Verify Anywhere โ€‹

    This guide will show you how to build verifiable machine learning inference into your Rollkit rollup using zero-knowledge proofs generated on Sindri. The rollup will rely on a local Celestia devnet for consensus and ensuring data availability.

    We will focus on using a ZK circuit that incorporates a compact deep neural network model to enable verifiable ML inference. In this guide, we will deploy the circuit on Sindri, obtain a smart contract verifier (automatically generated by Sindri) for that circuit, deploy it on Rollkit, create a proof of ML inference on Sindri, and verify the proof on-chain.

    This approach not only secures the verification process of machine learning models, but also leverages the decentralized security and scalability of Celestia's architecture.

    Prerequisites โ€‹

    Setting Up the Polaris EVM using Rollkit โ€‹

    This walkthrough assumes you started the Polaris EVM using Rollkit and should be interpreted as a direct continuation of this Polaris EVM and Rollkit guide.

    Installing the Sindri Python SDK โ€‹

    Because we're working with ML, we're going to build with Sindri's Python SDK because Python is widely used in ML development. The Sindri Python SDK Quickstart Guide contains installation instructions and a high-level walkthrough of the functionality of this package, but the following will suffice if you have pip installed:

    bash
    pip install sindri

    Deploying and Proving a Cool zkML Circuit to Sindri โ€‹

    For this tutorial, we'll be working with a pre-built zkML circuit built by Sindri. For a more in-depth description of this circuit and its corresponding ML model's behavior and design, please see here.

    Clone โ€‹

    Clone the Sindri Resources GitHub repo.

    bash
    cd $HOME
    +
    On this page

    zkML Rollup Tutorial with Sindri โ€‹

    Introduction - Code Once, Verify Anywhere โ€‹

    This guide will show you how to build verifiable machine learning inference into your Rollkit rollup using zero-knowledge proofs generated on Sindri. The rollup will rely on a local Celestia devnet for consensus and ensuring data availability.

    We will focus on using a ZK circuit that incorporates a compact deep neural network model to enable verifiable ML inference. In this guide, we will deploy the circuit on Sindri, obtain a smart contract verifier (automatically generated by Sindri) for that circuit, deploy it on Rollkit, create a proof of ML inference on Sindri, and verify the proof on-chain.

    This approach not only secures the verification process of machine learning models, but also leverages the decentralized security and scalability of Celestia's architecture.

    Prerequisites โ€‹

    Setting Up the Polaris EVM using Rollkit โ€‹

    This walkthrough assumes you started the Polaris EVM using Rollkit and should be interpreted as a direct continuation of this Polaris EVM and Rollkit guide.

    Installing the Sindri Python SDK โ€‹

    Because we're working with ML, we're going to build with Sindri's Python SDK because Python is widely used in ML development. The Sindri Python SDK Quickstart Guide contains installation instructions and a high-level walkthrough of the functionality of this package, but the following will suffice if you have pip installed:

    bash
    pip install sindri

    Deploying and Proving a Cool zkML Circuit to Sindri โ€‹

    For this tutorial, we'll be working with a pre-built zkML circuit built by Sindri. For a more in-depth description of this circuit and its corresponding ML model's behavior and design, please see here.

    Clone โ€‹

    Clone the Sindri Resources GitHub repo.

    bash
    cd $HOME
     git clone https://github.com/Sindri-Labs/sindri-resources.git

    Navigate to the food_ml circuit tutorial directory.

    bash
    cd sindri-resources/circuit_tutorials/circom/food_ml/

    Here, you will find a handful of files. The circuit/ directory contains the circuit code that we will upload to Sindri. The circuit/sindri.json file is the Sindri manifest for your upload. Within it, you can modify the circuit's "name" value to whatever you like.

    Modify โ€‹

    Open the compile_and_prove.py script and append the following lines to the very bottom.

    python
    # Obtain smart contract verifier for our circuit and save it to a file
     smart_contract_code: str = sindri.get_circuit_smart_contract_verifier(circuit_id)
     verifier_code_file: str = "Verifier.sol"
    @@ -144,8 +144,8 @@
     transactionHash         0x58096aabd3cb58bdef28501bda01b6cf4a37ed0ba482f81462bc1043bb91f996
     transactionIndex        0
     type                    2
    -to                      0x5C59C83c099F72FcE832208f96a23a1E43737a14

    TIP

    Note: To see the decoded output of the contract call (to check if the proof was verified), you will need to view the call in a block explorer.

    Congratulations โ€‹

    Congratulations, you've just verified a zkML circuit on Rollkit.

    For further reading, check out Sindri's blog post explaining how using Sindri + Rollkit x Celestia means verifiable ML doesnโ€™t have to be prohibitively expensive for operators or end users.

    Released under the APACHE-2.0 License

    - +to 0x5C59C83c099F72FcE832208f96a23a1E43737a14

    TIP

    Note: To see the decoded output of the contract call (to check if the proof was verified), you will need to view the call in a block explorer.

    Congratulations โ€‹

    Congratulations, you've just verified a zkML circuit on Rollkit.

    For further reading, check out Sindri's blog post explaining how using Sindri + Rollkit x Celestia means verifiable ML doesnโ€™t have to be prohibitively expensive for operators or end users.

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/hashmap.json b/pr-383/hashmap.json index 22a9d3d43..ca36ebd49 100644 --- a/pr-383/hashmap.json +++ b/pr-383/hashmap.json @@ -1 +1 @@ -{"guides_block-times.md":"1fe2e118","guides_zkml.md":"f27a520c","learn_intro.md":"127f8fa5","tutorials_cosmwasm.md":"79f07a6e","guides_overview.md":"808e087f","learn_stack.md":"f7713922","learn_specifications.md":"a8519675","testnets_cosmwasm-testnet.md":"1af3813a","tutorials_gm-world-arabica-testnet.md":"3d55a9f4","guides_use-tia-for-gas.md":"fdcb6f1c","tutorials_gm-world.md":"c0fc4059","index.md":"db7783e0","tutorials_quick-start.md":"3bb83944","guides_rollkit-monitoring.md":"aa13d519","tutorials_celestia-da.md":"f41860ea","learn_building-and-deploying-a-rollup.md":"fc0e2943","guides_lazy-sequencing.md":"2c57ff6b","blog_overview.md":"0a87de80","guides_gas-price.md":"6941c255","guides_cw-orch.md":"e511a14b","blog_rollkit-the-first-sovereign-rollup-framework.md":"ee4e4d6c","readme.md":"148122d1","tutorials_wordle.md":"bf1e602f","tutorials_bitcoin.md":"91a66aaf","learn_transaction-flow.md":"10ffbc09","guides_ibc-connection.md":"ca5b61e3","guides_full-and-sequencer-node.md":"d80f1b45","tutorials_gm-world-mocha-testnet.md":"155432dd","tutorials_polaris-evm.md":"215da9f0","learn_about.md":"eab2b488","blog_sovereign-rollups-on-bitcoin.md":"aab6757b","guides_restart-rollup.md":"6ebc8a40","tutorials_gm-world-frontend.md":"282d1299","tutorials_gm-world-mainnet.md":"45f86e76"} +{"blog_overview.md":"781fbb8c","guides_connect-local-da.md":"7a20b17d","guides_lazy-sequencing.md":"336f1b93","guides_overview.md":"9a88b161","guides_restart-rollup.md":"7a47ad3f","guides_zkml.md":"5dd6d1ec","guides_rollkit-monitoring.md":"953491f9","learn_specifications.md":"828ea458","guides_create-genesis.md":"d2739937","testnets_cosmwasm-testnet.md":"92cb90bd","readme.md":"9799c6fd","tutorials_bitcoin.md":"da6ebe93","index.md":"1f1d03f9","learn_building-and-deploying-a-rollup.md":"5a676a18","blog_rollkit-the-first-sovereign-rollup-framework.md":"156637b0","learn_about.md":"04dc482d","guides_full-and-sequencer-node.md":"845c9497","guides_use-tia-for-gas.md":"c62fd47c","learn_transaction-flow.md":"54d7b688","learn_stack.md":"77442c25","blog_sovereign-rollups-on-bitcoin.md":"b1f2b92d","tutorials_celestia-da.md":"b2b0ce5f","guides_cw-orch.md":"ff556bd1","guides_gas-price.md":"c97936cd","guides_block-times.md":"17724d2e","guides_ibc-connection.md":"c27aa7d5","tutorials_cosmwasm.md":"5bcdfd4f","learn_intro.md":"603d0257","tutorials_gm-world-mocha-testnet.md":"3a6787c5","tutorials_gm-world-arabica-testnet.md":"636d72b3","tutorials_gm-world-frontend.md":"bb566fda","tutorials_wordle.md":"2e8d5bf4","tutorials_gm-world.md":"a5bbe595","tutorials_gm-world-mainnet.md":"fd459b42","tutorials_polaris-evm.md":"ce54e49c","tutorials_quick-start.md":"21b9828d"} diff --git a/pr-383/index.html b/pr-383/index.html index 11048a81b..6eb627da6 100644 --- a/pr-383/index.html +++ b/pr-383/index.html @@ -7,32 +7,32 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -60,7 +60,7 @@

    Released under the APACHE-2.0 License

    - + \ No newline at end of file diff --git a/pr-383/learn/about.html b/pr-383/learn/about.html index d8fa61af2..cb53a1ad7 100644 --- a/pr-383/learn/about.html +++ b/pr-383/learn/about.html @@ -7,32 +7,32 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -59,8 +59,8 @@
    On this page

    About Rollkit โ€‹

    Our mission is allow anyone to launch their own sovereign, customizable blockchain as easily as a smart contract by utilizing the shared security of a modular data availability network.

    TIP

    In order to use Rollkit, it's important to have some familiarity with Cosmos SDK. You can get up to speed on Cosmos SDK by visiting their official documentation page.

    If you're familiar with Rollkit, you may want to skip to the tutorials section.

    What is Rollkit? โ€‹

    Rollkit is a sovereign rollup framework that gives developers the freedom to deploy rollups throughout the modular stack, opening new possibilities for rapid experimentation and innovation.

    Read more on the Celestia blog to learn more about the concept of sovereign rollups.

    Rollkit is an open-source framework. It features a modular node that can run rollups and exposes an ABCI-compatible client interface, which can be used as a substitute for CometBFT in any ABCI-compatible blockchain application.

    Rollkit uses data availability (DA) layers by having a unified client interface which can be implemented for use with different DA networks, such as Celestia.

    Our goal is to empower developers to quickly innovate and create new classes of rollups with minimal trade-offs, and to make deploying a new chain as easy as deploying a smart contract.

    What problems is Rollkit solving? โ€‹

    1. Scalability and customizability โ€‹

    Deploying your decentralized application as a smart contract on a shared blockchain has many limitations. Your smart contract has to share computational resources with every other application, so scalability is limited.

    Plus, you're restricted to the execution environment that the shared blockchain uses, so developer flexibility is limited.

    2. Security and time to market โ€‹

    Deploying a new chain might sound like the perfect solution for the problems listed above. While it's somewhat true, deploying a new layer 1 chain presents a complex set of challenges and trade-offs for developers looking to build blockchain products.

    Deploying a new layer 1 requires significant resources, including time, capital, and expertise, which can be a barrier to entry for some developers.

    In order to secure the network, developers must bootstrap a sufficiently secure set of validators, incurring the overhead of managing a full consensus network. This requires paying validators with inflationary tokens, putting the business sustainability of the network at risk. A strong community and network effect are also critical for success, but can be challenging to achieve as the network must gain widespread adoption to be secure and valuable.

    In a potential future with millions of chains, it's unlikely all of those chains will be able to sustainably attract a sufficiently secure and decentralized validator set.

    Why Rollkit? โ€‹

    Rollkit solves the challenges encountered during the deployment of a smart contract or a new layer 1, by minimizing these tradeoffs through the implementation of rollup chains (rollups).

    With Rollkit, developers can benefit from:

    • Shared security: Rollups inherit security from a data availability layer, by posting blocks to it. Rollups reduce the trust assumptions placed on rollup sequencers by allowing full nodes to download and verify the transactions in the blocks posted by the sequencer. For optimistic or zk rollups, in case of fraudulent blocks, full nodes can generate fraud or zk proofs, which they can share with the rest of the network, including light nodes. Our roadmap includes the ability for light clients to receive and verify proofs, so that everyday users can enjoy high security guarantees.

    • Scalability: Rollkit rollups are deployed on specialized data availability layers like Celestia, which directly leverages the scalability of the DA layer. Additionally, rollup transactions are executed off-chain rather than the data availability layer. This means rollups have their own dedicated computational resources, rather than sharing computational resources with other applications.

    • Customizability: Rollkit is built as an open source modular framework, to make it easier for developers to reuse the four main components and customize their rollups. These components are data availability layers, execution environments, proof systems, and sequencer schemes. The components used by the Rollkit stack are customizable.

    • Faster time to market: Rollkit eliminates the need to bootstrap a validator set, manage a consensus network, incur high economic costs, and face other trade-offs that come with deploying a new layer 1. Rollkit's goal is to make deploying a rollup as easy as it is to deploy a smart contract, cutting the time it takes to bring blockchain products to market from months or even years to just minutes.

    • Sovereignty: Rollkit also enables developers to deploy sovereign rollups for cases where communities require sovereignty.

    How can you use Rollkit? โ€‹

    As briefly mentioned above, Rollkit could be used in many different ways. From sovereign rollups, to settlement layers, and in the future even to L3s.

    Rollup with any execution environment โ€‹

    Rollkit gives developers the flexibility to use pre-existing ABCI-compatible state machines or create a custom state machine tailored to their rollup needs. Rollkit does not restrict the use of any specific virtual machine, allowing developers to experiment and bring innovative applications to life.

    Sovereign rollup with Cosmos SDK โ€‹

    Similarly to how developers utilize the Cosmos SDK to build a sovereign layer 1 chain, the Cosmos SDK could be utilized to create a Rollkit-compatible rollup chain. Cosmos-SDK has great documentation and tooling that developers can leverage to learn.

    Another possibility is taking an existing layer 1 built with the Cosmos SDK and deploying it as a Rollkit rollup. This can provide a great opportunity for experimentation and growth.

    Build a settlement layer โ€‹

    Settlement layers are ideal for developers who want to avoid deploying sovereign rollups. They provide a platform for rollups to verify proofs and resolve disputes. Additionally, they act as a hub for rollups to facilitate trust-minimized token transfers and liquidity sharing between rollups that share the same settlement layer. Think of settlement layers as a special type of execution layer.

    When can you use Rollkit? โ€‹

    As of today, Rollkit is still in the alpha stage. The framework currently provides a centralized sequencer, an execution interface (ABCI or Cosmos SDK), and a connection to a data availability layer.

    We're currently working on implementing many new and exciting features such as light nodes and state fraud proofs.

    Head down to the next section to learn more about what's coming for Rollkit. If you're ready to start building, you can skip to the Tutorials section.

    Spoiler alert, whichever you choose, it's going to be a great rabbit hole!

    Released under the APACHE-2.0 License

    - +
    On this page

    About Rollkit โ€‹

    Our mission is allow anyone to launch their own sovereign, customizable blockchain as easily as a smart contract by utilizing the shared security of a modular data availability network.

    TIP

    In order to use Rollkit, it's important to have some familiarity with Cosmos SDK. You can get up to speed on Cosmos SDK by visiting their official documentation page.

    If you're familiar with Rollkit, you may want to skip to the tutorials section.

    What is Rollkit? โ€‹

    Rollkit is a sovereign rollup framework that gives developers the freedom to deploy rollups throughout the modular stack, opening new possibilities for rapid experimentation and innovation.

    Read more on the Celestia blog to learn more about the concept of sovereign rollups.

    Rollkit is an open-source framework. It features a modular node that can run rollups and exposes an ABCI-compatible client interface, which can be used as a substitute for CometBFT in any ABCI-compatible blockchain application.

    Rollkit uses data availability (DA) layers by having a unified client interface which can be implemented for use with different DA networks, such as Celestia.

    Our goal is to empower developers to quickly innovate and create new classes of rollups with minimal trade-offs, and to make deploying a new chain as easy as deploying a smart contract.

    What problems is Rollkit solving? โ€‹

    1. Scalability and customizability โ€‹

    Deploying your decentralized application as a smart contract on a shared blockchain has many limitations. Your smart contract has to share computational resources with every other application, so scalability is limited.

    Plus, you're restricted to the execution environment that the shared blockchain uses, so developer flexibility is limited.

    2. Security and time to market โ€‹

    Deploying a new chain might sound like the perfect solution for the problems listed above. While it's somewhat true, deploying a new layer 1 chain presents a complex set of challenges and trade-offs for developers looking to build blockchain products.

    Deploying a new layer 1 requires significant resources, including time, capital, and expertise, which can be a barrier to entry for some developers.

    In order to secure the network, developers must bootstrap a sufficiently secure set of validators, incurring the overhead of managing a full consensus network. This requires paying validators with inflationary tokens, putting the business sustainability of the network at risk. A strong community and network effect are also critical for success, but can be challenging to achieve as the network must gain widespread adoption to be secure and valuable.

    In a potential future with millions of chains, it's unlikely all of those chains will be able to sustainably attract a sufficiently secure and decentralized validator set.

    Why Rollkit? โ€‹

    Rollkit solves the challenges encountered during the deployment of a smart contract or a new layer 1, by minimizing these tradeoffs through the implementation of rollup chains (rollups).

    With Rollkit, developers can benefit from:

    • Shared security: Rollups inherit security from a data availability layer, by posting blocks to it. Rollups reduce the trust assumptions placed on rollup sequencers by allowing full nodes to download and verify the transactions in the blocks posted by the sequencer. For optimistic or zk rollups, in case of fraudulent blocks, full nodes can generate fraud or zk proofs, which they can share with the rest of the network, including light nodes. Our roadmap includes the ability for light clients to receive and verify proofs, so that everyday users can enjoy high security guarantees.

    • Scalability: Rollkit rollups are deployed on specialized data availability layers like Celestia, which directly leverages the scalability of the DA layer. Additionally, rollup transactions are executed off-chain rather than the data availability layer. This means rollups have their own dedicated computational resources, rather than sharing computational resources with other applications.

    • Customizability: Rollkit is built as an open source modular framework, to make it easier for developers to reuse the four main components and customize their rollups. These components are data availability layers, execution environments, proof systems, and sequencer schemes. The components used by the Rollkit stack are customizable.

    • Faster time to market: Rollkit eliminates the need to bootstrap a validator set, manage a consensus network, incur high economic costs, and face other trade-offs that come with deploying a new layer 1. Rollkit's goal is to make deploying a rollup as easy as it is to deploy a smart contract, cutting the time it takes to bring blockchain products to market from months or even years to just minutes.

    • Sovereignty: Rollkit also enables developers to deploy sovereign rollups for cases where communities require sovereignty.

    How can you use Rollkit? โ€‹

    As briefly mentioned above, Rollkit could be used in many different ways. From sovereign rollups, to settlement layers, and in the future even to L3s.

    Rollup with any execution environment โ€‹

    Rollkit gives developers the flexibility to use pre-existing ABCI-compatible state machines or create a custom state machine tailored to their rollup needs. Rollkit does not restrict the use of any specific virtual machine, allowing developers to experiment and bring innovative applications to life.

    Sovereign rollup with Cosmos SDK โ€‹

    Similarly to how developers utilize the Cosmos SDK to build a sovereign layer 1 chain, the Cosmos SDK could be utilized to create a Rollkit-compatible rollup chain. Cosmos-SDK has great documentation and tooling that developers can leverage to learn.

    Another possibility is taking an existing layer 1 built with the Cosmos SDK and deploying it as a Rollkit rollup. This can provide a great opportunity for experimentation and growth.

    Build a settlement layer โ€‹

    Settlement layers are ideal for developers who want to avoid deploying sovereign rollups. They provide a platform for rollups to verify proofs and resolve disputes. Additionally, they act as a hub for rollups to facilitate trust-minimized token transfers and liquidity sharing between rollups that share the same settlement layer. Think of settlement layers as a special type of execution layer.

    When can you use Rollkit? โ€‹

    As of today, Rollkit is still in the alpha stage. The framework currently provides a centralized sequencer, an execution interface (ABCI or Cosmos SDK), and a connection to a data availability layer.

    We're currently working on implementing many new and exciting features such as light nodes and state fraud proofs.

    Head down to the next section to learn more about what's coming for Rollkit. If you're ready to start building, you can skip to the Tutorials section.

    Spoiler alert, whichever you choose, it's going to be a great rabbit hole!

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/learn/building-and-deploying-a-rollup.html b/pr-383/learn/building-and-deploying-a-rollup.html index 49978d36a..f42462810 100644 --- a/pr-383/learn/building-and-deploying-a-rollup.html +++ b/pr-383/learn/building-and-deploying-a-rollup.html @@ -7,32 +7,32 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -59,8 +59,8 @@
    On this page

    ๐Ÿ—ž๏ธ Building a rollup and testnet deployment โ€‹

    The following tutorials will help you get started building Cosmos-SDK and EVM applications that connect to Celestia's data availability (DA) layer via Rollkit to Celestia's Mocha testnet or Arabica devnet. We call those chains Sovereign Rollups.

    You can get started with the following tutorials:

    1. Beginner โ€‹

    2๏ธ. Intermediate โ€‹

    3๏ธ. Advanced โ€‹

    ๐Ÿ’ป Support โ€‹

    The tutorials will explore developing with Rollkit, which is still in Alpha stage. If you run into bugs, please write a GitHub issue or let us know in our Telegram. Furthermore, while Rollkit allows you to build sovereign rollups on Celestia, it currently does not support fraud proofs yet and is therefore running in "pessimistic" mode, where nodes would need to re-execute the transactions to check the validity of the chain (i.e. a full node). Furthermore, Rollkit currently only supports a single sequencer.

    Released under the APACHE-2.0 License

    - +
    On this page

    ๐Ÿ—ž๏ธ Building a rollup and testnet deployment โ€‹

    The following tutorials will help you get started building Cosmos-SDK and EVM applications that connect to Celestia's data availability (DA) layer via Rollkit to Celestia's Mocha testnet or Arabica devnet. We call those chains Sovereign Rollups.

    You can get started with the following tutorials:

    1. Beginner โ€‹

    2๏ธ. Intermediate โ€‹

    3๏ธ. Advanced โ€‹

    ๐Ÿ’ป Support โ€‹

    The tutorials will explore developing with Rollkit, which is still in Alpha stage. If you run into bugs, please write a GitHub issue or let us know in our Telegram. Furthermore, while Rollkit allows you to build sovereign rollups on Celestia, it currently does not support fraud proofs yet and is therefore running in "pessimistic" mode, where nodes would need to re-execute the transactions to check the validity of the chain (i.e. a full node). Furthermore, Rollkit currently only supports a single sequencer.

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/learn/intro.html b/pr-383/learn/intro.html index 5469314eb..3784d7422 100644 --- a/pr-383/learn/intro.html +++ b/pr-383/learn/intro.html @@ -7,32 +7,32 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -59,8 +59,8 @@
    On this page

    Introduction โ€‹

    Welcome to the Rollkit docs. We're happy you made it here! Our mission is to allow anyone to launch their own sovereign, customizable blockchain as easily as a smart contract by utilizing the shared security of a modular data availability network.

    Rollkit is the first sovereign rollup framework.

    Our mission is allow anyone to launch their own sovereign, customizable blockchain as easily as a smart contract by utilizing the shared security of a modular data availability network.

    We're setting the bar high for developers' flexibility and ability to customize rollups however they see fit.

    Released under the APACHE-2.0 License

    - +
    On this page

    Introduction โ€‹

    Welcome to the Rollkit docs. We're happy you made it here! Our mission is to allow anyone to launch their own sovereign, customizable blockchain as easily as a smart contract by utilizing the shared security of a modular data availability network.

    Rollkit is the first sovereign rollup framework.

    Our mission is allow anyone to launch their own sovereign, customizable blockchain as easily as a smart contract by utilizing the shared security of a modular data availability network.

    We're setting the bar high for developers' flexibility and ability to customize rollups however they see fit.

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/learn/specifications.html b/pr-383/learn/specifications.html index 1696d0584..a262a4b38 100644 --- a/pr-383/learn/specifications.html +++ b/pr-383/learn/specifications.html @@ -7,32 +7,32 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -59,8 +59,8 @@
    On this page

    Technical specifications โ€‹

    Rollkit specifications - is comprehensive documentation on the inner components of Rollkit, including data storage, transaction processing, and more. Itโ€™s an essential resource for developers looking to understand, contribute to and leverage the full capabilities of Rollkit.

    Released under the APACHE-2.0 License

    - +
    On this page

    Technical specifications โ€‹

    Rollkit specifications - is comprehensive documentation on the inner components of Rollkit, including data storage, transaction processing, and more. Itโ€™s an essential resource for developers looking to understand, contribute to and leverage the full capabilities of Rollkit.

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/learn/stack.html b/pr-383/learn/stack.html index 147ff8c68..2082de457 100644 --- a/pr-383/learn/stack.html +++ b/pr-383/learn/stack.html @@ -7,32 +7,32 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -59,8 +59,8 @@
    On this page

    Rollkit stack โ€‹

    This page will cover the main components of Rollkit.

    Rollup sequencer nodes collect transactions from users, aggregate them into blocks, and post the blocks onto a data availability (DA) layer (such as Celestia) to be ordered and finalized. Full nodes execute and verify rollup blocks, and in the case of an optimistic rollup, propagate fraud proofs when needed. Light clients will receive headers, verify proofs (fraud, zk, etc), and authenticate trust-minimized queries about the state.

    Application structure โ€‹

    null

    ABCI interface โ€‹

    Rollkit is a fully functional Application BlockChain Interface (ABCI) client software. It can be used as a CometBFT replacement for any ABCI application. Thanks to this compatibility, you can use tools like abci-cli to test and debug your rollup.

    Cosmos SDK โ€‹

    Would you like to change your Cosmos SDK application to a Rollkit rollup? No problem! You need to replace the Cosmos SDK Go dependency with a Rollkit-enabled version, which can be found at the rollkit/cosmos-sdk repository.

    Note the rollkit/cosmos-sdk repository follows the release branches of upstream Cosmos SDK, but with the bonus of using Rollkit instead of CometBFT as the ABCI client.

    And don't forget to replace another dependency, CometBFT, with rollkit/cometbft, which has an enhanced ABCI interface that includes the methods needed for state fraud proofs.

    Data availability โ€‹

    Data availability (DA) can be accessed using generic interfaces. This design allows for seamless integration with any DA layer. New implementations can be plugged in programmatically, without a need to fork Rollkit.

    The DataAvailabilityLayerClient interface includes essential lifecycle methods (Init, Start, Stop) as well as data availability methods (SubmitBlocks, RetrieveBlocks).

    The BlockRetriever interface serves to enable syncing of full nodes from the data availability layer. It's important to keep in mind that there is no direct correlation between the DA layer block height and the rollup height. Each DA layer block may contain an arbitrary number of rollup blocks.

    Celestia โ€‹

    Celestia is a prominent example of a data availability integration implemented for Rollkit. It's using the Celestia Node API via the rollkit/celestia-da package. To deploy a Rollkit rollup on Celestia you also have to run a Celestia light node.

    New DA layer integrations can be added by using the go-da interface.

    Node components โ€‹

    Mempool โ€‹

    The mempool is inspired by the CometBFT mempool. By default, transactions are handled in a First Come, First Served (FCFS) manner. Ordering of transactions can be implemented on the application level; currently this is possible by returning a priority on CheckTx, and once we support ABCI++ it is also possible via PrepareProposal and the application mempool.

    Block manager โ€‹

    The block manager contains routines AggregationLoop, RetrieveLoop, and SyncLoop that communicate through Go channels. These Go routines are ran when a Rollkit node starts up (OnStart). Only the sequencer nodes run AggregationLoop which controls the frequency of block production for a rollup with a timer as per the BlockTime in BlockManager.

    All nodes run SyncLoop which looks for the following operations:

    • Receive block headers: block headers are received through a channel HeaderInCh and Rollkit nodes attempt to verify the block with the corresponding block data.
    • Receive block data: block bodies are received through a channel blockInCh and Rollkit nodes attempt to verify the block.
    • Signal RetrieveLoop with timer as per the DABlockTime in BlockManager.

    All nodes also run RetrieveLoop which is responsible for interacting with the data availability layer. It checks the last updated DAHeight to retrieve a block with timer DABlockTime signaled by SyncLoop. Note that the start height of the DA layer for the rollup, DAStartHeight, is configurable in BlockManager.

    RPC โ€‹

    Rollkit's RPC fully implements the CometBFT RPC interfaces and APIs for querying:

    • Information about the rollup node: information such as node's health, status, and network info.
    • The rollup blockchain: getting information about the rollup blockchain such as blocks and block headers.
    • The rollup transactions: getting transaction information and broadcasting raw transactions, with search capabilities.
    • ABCI: rollup application information.

    The following RPC protocols are currently supported:

    • URI over HTTP
    • JSON-RPC over HTTP
    • JSON-RPC over WebSockets

    P2P layer โ€‹

    Rollkit's P2P layer enables direct communication between rollup nodes. It's used to gossip transactions, headers of newly created blocks, and state fraud proofs. The P2P layer is implemented using libp2p.

    Rollkit uses DHT-based active peer discovery. Starting a node connects to pre-configured bootstrap peers, and advertises its namespace ID in the DHT. This solution is flexible, because multiple rollup networks may reuse the same DHT/bootstrap nodes, but specific rollup network might decide to use dedicated nodes as well.

    Rollkit node types โ€‹

    Rollkit nodes are implemented in the node package.

    Full node โ€‹

    Full nodes verify all blocks, and produce fraud proofs for optimistic rollups. Since they fully verify all rollup blocks, they don't rely on fraud or validity proofs for security.

    Light node (work in progress) โ€‹

    Light nodes are light-weight rollup nodes that authenticate block headers, and can be secured by fraud proofs or validity proofs. They're recommended for average users on low-resource devices. Users running light nodes can make trust-minimized queries about the rollup's state. Currently, Rollkit light nodes are still under development.

    Sequencer node โ€‹

    Rollups can utilize sequencer nodes. Sequencers are block producers for rollups, responsible for aggregating transactions into blocks, and typically executing transactions to produce a state root, used by the rollup's light clients.

    Rollkit plans to support multiple different pluggable sequencer schemes:

    Deploy in one-clickFaster soft-confirmations than L1Control over rollup's transaction orderingAtomic composability with other rollupsCensorship resistanceImplementation Status
    Centralized sequencerRequires spinning up a sequencerYes โœ…Yes โœ…No โŒEventual โณ*โœ… Implemented!
    Decentralized sequencerRequires spinning up a sequencer setYes โœ…Yes โœ…No โŒReal-time โšก๏ธPlanned
    Shared decentralized sequencerYes โœ…Yes โœ…No โŒYes โœ…Real-time โšก๏ธPlanned
    Pure fork-choice ruleYes โœ…No โŒMaybe ๐ŸŸกMaybe ๐ŸŸกEventual โณPlanned

    "Pure fork-choice rule" refers to any rollup without privileged sequencers, e.g. nodes defer to the data availability layer for ordering and apply a "first-come-first-serve" fork-choice rule.

    * implementation of this property is in progress.

    State validity modes โ€‹

    Pessimistic (full nodes only) โ€‹

    A pessimistic rollup is a rollup that only supports full nodes that replay all the transactions in the rollup in order to check its validity. Rollkit supports pessimistic rollups by default.

    Pessimistic rollups are similar to how Tether uses Bitcoin as a data availability layer via OmniLayer.

    Optimistic (fraud proofs) (work in progress) โ€‹

    Rollkit's current design consists of a single sequencer that posts blocks to the DA layer, and multiple (optional) full nodes. Sequencers gossip block headers to full nodes and full nodes fetch posted blocks from the DA layer. Full nodes then execute transactions in these blocks to update their state, and gossip block headers over the P2P network to Rollkit light nodes.

    Once state fraud proofs are enabled, when a block contains a fraudulent state transition, Rollkit full nodes can detect it by comparing intermediate state roots (ISRs) between transactions, and generate a state fraud proof that can be gossiped over the P2P network to Rollkit light nodes. These Rollkit light nodes can then use this state fraud proof to verify whether a fraudulent state transition occurred or not by themselves.

    Overall, state fraud proofs will enable trust-minimization between full nodes and light nodes as long as there is at least one honest full node in the system that will generate state fraud proofs.

    Note that Rollkit state fraud proofs are still a work in progress and will require new methods on top of ABCI, specifically, GenerateFraudProof, VerifyFraudProof, and GetAppHash.

    You can find current detailed design and the remaining work needed to push state fraud proofs towards completion in this Architecture Decision Record (ADR).

    Validity (ZK proofs) โ€‹

    Validity (ZK) rollups are planned, but not currently supported by Rollkit.

    Released under the APACHE-2.0 License

    - +
    On this page

    Rollkit stack โ€‹

    This page will cover the main components of Rollkit.

    Rollup sequencer nodes collect transactions from users, aggregate them into blocks, and post the blocks onto a data availability (DA) layer (such as Celestia) to be ordered and finalized. Full nodes execute and verify rollup blocks, and in the case of an optimistic rollup, propagate fraud proofs when needed. Light clients will receive headers, verify proofs (fraud, zk, etc), and authenticate trust-minimized queries about the state.

    Application structure โ€‹

    null

    ABCI interface โ€‹

    Rollkit is a fully functional Application BlockChain Interface (ABCI) client software. It can be used as a CometBFT replacement for any ABCI application. Thanks to this compatibility, you can use tools like abci-cli to test and debug your rollup.

    Cosmos SDK โ€‹

    Would you like to change your Cosmos SDK application to a Rollkit rollup? No problem! You need to replace the Cosmos SDK Go dependency with a Rollkit-enabled version, which can be found at the rollkit/cosmos-sdk repository.

    Note the rollkit/cosmos-sdk repository follows the release branches of upstream Cosmos SDK, but with the bonus of using Rollkit instead of CometBFT as the ABCI client.

    And don't forget to replace another dependency, CometBFT, with rollkit/cometbft, which has an enhanced ABCI interface that includes the methods needed for state fraud proofs.

    Data availability โ€‹

    Data availability (DA) can be accessed using generic interfaces. This design allows for seamless integration with any DA layer. New implementations can be plugged in programmatically, without a need to fork Rollkit.

    The DataAvailabilityLayerClient interface includes essential lifecycle methods (Init, Start, Stop) as well as data availability methods (SubmitBlocks, RetrieveBlocks).

    The BlockRetriever interface serves to enable syncing of full nodes from the data availability layer. It's important to keep in mind that there is no direct correlation between the DA layer block height and the rollup height. Each DA layer block may contain an arbitrary number of rollup blocks.

    Celestia โ€‹

    Celestia is a prominent example of a data availability integration implemented for Rollkit. It's using the Celestia Node API via the rollkit/celestia-da package. To deploy a Rollkit rollup on Celestia you also have to run a Celestia light node.

    New DA layer integrations can be added by using the go-da interface.

    Node components โ€‹

    Mempool โ€‹

    The mempool is inspired by the CometBFT mempool. By default, transactions are handled in a First Come, First Served (FCFS) manner. Ordering of transactions can be implemented on the application level; currently this is possible by returning a priority on CheckTx, and once we support ABCI++ it is also possible via PrepareProposal and the application mempool.

    Block manager โ€‹

    The block manager contains routines AggregationLoop, RetrieveLoop, and SyncLoop that communicate through Go channels. These Go routines are ran when a Rollkit node starts up (OnStart). Only the sequencer nodes run AggregationLoop which controls the frequency of block production for a rollup with a timer as per the BlockTime in BlockManager.

    All nodes run SyncLoop which looks for the following operations:

    • Receive block headers: block headers are received through a channel HeaderInCh and Rollkit nodes attempt to verify the block with the corresponding block data.
    • Receive block data: block bodies are received through a channel blockInCh and Rollkit nodes attempt to verify the block.
    • Signal RetrieveLoop with timer as per the DABlockTime in BlockManager.

    All nodes also run RetrieveLoop which is responsible for interacting with the data availability layer. It checks the last updated DAHeight to retrieve a block with timer DABlockTime signaled by SyncLoop. Note that the start height of the DA layer for the rollup, DAStartHeight, is configurable in BlockManager.

    RPC โ€‹

    Rollkit's RPC fully implements the CometBFT RPC interfaces and APIs for querying:

    • Information about the rollup node: information such as node's health, status, and network info.
    • The rollup blockchain: getting information about the rollup blockchain such as blocks and block headers.
    • The rollup transactions: getting transaction information and broadcasting raw transactions, with search capabilities.
    • ABCI: rollup application information.

    The following RPC protocols are currently supported:

    • URI over HTTP
    • JSON-RPC over HTTP
    • JSON-RPC over WebSockets

    P2P layer โ€‹

    Rollkit's P2P layer enables direct communication between rollup nodes. It's used to gossip transactions, headers of newly created blocks, and state fraud proofs. The P2P layer is implemented using libp2p.

    Rollkit uses DHT-based active peer discovery. Starting a node connects to pre-configured bootstrap peers, and advertises its namespace ID in the DHT. This solution is flexible, because multiple rollup networks may reuse the same DHT/bootstrap nodes, but specific rollup network might decide to use dedicated nodes as well.

    Rollkit node types โ€‹

    Rollkit nodes are implemented in the node package.

    Full node โ€‹

    Full nodes verify all blocks, and produce fraud proofs for optimistic rollups. Since they fully verify all rollup blocks, they don't rely on fraud or validity proofs for security.

    Light node (work in progress) โ€‹

    Light nodes are light-weight rollup nodes that authenticate block headers, and can be secured by fraud proofs or validity proofs. They're recommended for average users on low-resource devices. Users running light nodes can make trust-minimized queries about the rollup's state. Currently, Rollkit light nodes are still under development.

    Sequencer node โ€‹

    Rollups can utilize sequencer nodes. Sequencers are block producers for rollups, responsible for aggregating transactions into blocks, and typically executing transactions to produce a state root, used by the rollup's light clients.

    Rollkit plans to support multiple different pluggable sequencer schemes:

    Deploy in one-clickFaster soft-confirmations than L1Control over rollup's transaction orderingAtomic composability with other rollupsCensorship resistanceImplementation Status
    Centralized sequencerRequires spinning up a sequencerYes โœ…Yes โœ…No โŒEventual โณ*โœ… Implemented!
    Decentralized sequencerRequires spinning up a sequencer setYes โœ…Yes โœ…No โŒReal-time โšก๏ธPlanned
    Shared decentralized sequencerYes โœ…Yes โœ…No โŒYes โœ…Real-time โšก๏ธPlanned
    Pure fork-choice ruleYes โœ…No โŒMaybe ๐ŸŸกMaybe ๐ŸŸกEventual โณPlanned

    "Pure fork-choice rule" refers to any rollup without privileged sequencers, e.g. nodes defer to the data availability layer for ordering and apply a "first-come-first-serve" fork-choice rule.

    * implementation of this property is in progress.

    State validity modes โ€‹

    Pessimistic (full nodes only) โ€‹

    A pessimistic rollup is a rollup that only supports full nodes that replay all the transactions in the rollup in order to check its validity. Rollkit supports pessimistic rollups by default.

    Pessimistic rollups are similar to how Tether uses Bitcoin as a data availability layer via OmniLayer.

    Optimistic (fraud proofs) (work in progress) โ€‹

    Rollkit's current design consists of a single sequencer that posts blocks to the DA layer, and multiple (optional) full nodes. Sequencers gossip block headers to full nodes and full nodes fetch posted blocks from the DA layer. Full nodes then execute transactions in these blocks to update their state, and gossip block headers over the P2P network to Rollkit light nodes.

    Once state fraud proofs are enabled, when a block contains a fraudulent state transition, Rollkit full nodes can detect it by comparing intermediate state roots (ISRs) between transactions, and generate a state fraud proof that can be gossiped over the P2P network to Rollkit light nodes. These Rollkit light nodes can then use this state fraud proof to verify whether a fraudulent state transition occurred or not by themselves.

    Overall, state fraud proofs will enable trust-minimization between full nodes and light nodes as long as there is at least one honest full node in the system that will generate state fraud proofs.

    Note that Rollkit state fraud proofs are still a work in progress and will require new methods on top of ABCI, specifically, GenerateFraudProof, VerifyFraudProof, and GetAppHash.

    You can find current detailed design and the remaining work needed to push state fraud proofs towards completion in this Architecture Decision Record (ADR).

    Validity (ZK proofs) โ€‹

    Validity (ZK) rollups are planned, but not currently supported by Rollkit.

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/learn/transaction-flow.html b/pr-383/learn/transaction-flow.html index e8d627b1f..5fbd50aeb 100644 --- a/pr-383/learn/transaction-flow.html +++ b/pr-383/learn/transaction-flow.html @@ -7,32 +7,32 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -59,8 +59,8 @@
    On this page

    Transaction flow โ€‹

    Rollup users use a light node to communicate with the rollup P2P network for two primary reasons:

    • submitting transactions
    • gossipping headers and fraud proofs

    WARNING

    Light nodes are still a work in progress.

    Here's what the typical transaction flow looks like:

    Transaction submission โ€‹

    null

    Transaction validation and processing โ€‹

    null

    Block processing โ€‹

    null

    Fraud proof gossip and forking โ€‹

    null

    To transact, users submit a transaction to their light node, which gossips the transaction to a full node. Before adding the transaction to their mempool, the full node checks its validity. Valid transactions are included in the mempool, while invalid ones are refused, and the user's transaction will not be processed.

    If the transaction is valid and has been included in the mempool, the sequencer can add it to a rollup block, which is then submitted to the data availability (DA) layer. This results in a successful transaction flow for the user, and the state of the rollup is updated accordingly.

    After the block is submitted to the DA layer, the full nodes download and validate the block. However, there is a possibility that the sequencer may maliciously submit a block to the DA layer with invalid transactions or state. In such cases, the full nodes of the rollup chain will consider the block invalid. In the case of an optimistic rollup, if they find the block invalid, they generate fraud proofs and gossip them in the P2P network among other full and light nodes.

    As a result, the rollup chain will halt, and the network will decide to fork the chain through social consensus. In the future, when a decentralized sequencer scheme is in place, additional options will be available, such as slashing the sequencer or selecting another full node as the sequencer. However, in any case, a new block must be created and submitted to the DA layer. You can read more about sequencer nodes here.

    Released under the APACHE-2.0 License

    - +
    On this page

    Transaction flow โ€‹

    Rollup users use a light node to communicate with the rollup P2P network for two primary reasons:

    • submitting transactions
    • gossipping headers and fraud proofs

    WARNING

    Light nodes are still a work in progress.

    Here's what the typical transaction flow looks like:

    Transaction submission โ€‹

    null

    Transaction validation and processing โ€‹

    null

    Block processing โ€‹

    null

    Fraud proof gossip and forking โ€‹

    null

    To transact, users submit a transaction to their light node, which gossips the transaction to a full node. Before adding the transaction to their mempool, the full node checks its validity. Valid transactions are included in the mempool, while invalid ones are refused, and the user's transaction will not be processed.

    If the transaction is valid and has been included in the mempool, the sequencer can add it to a rollup block, which is then submitted to the data availability (DA) layer. This results in a successful transaction flow for the user, and the state of the rollup is updated accordingly.

    After the block is submitted to the DA layer, the full nodes download and validate the block. However, there is a possibility that the sequencer may maliciously submit a block to the DA layer with invalid transactions or state. In such cases, the full nodes of the rollup chain will consider the block invalid. In the case of an optimistic rollup, if they find the block invalid, they generate fraud proofs and gossip them in the P2P network among other full and light nodes.

    As a result, the rollup chain will halt, and the network will decide to fork the chain through social consensus. In the future, when a decentralized sequencer scheme is in place, additional options will be available, such as slashing the sequencer or selecting another full node as the sequencer. However, in any case, a new block must be created and submitted to the DA layer. You can read more about sequencer nodes here.

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/sitemap.xml b/pr-383/sitemap.xml index 2039cb302..e14760497 100644 --- a/pr-383/sitemap.xml +++ b/pr-383/sitemap.xml @@ -1 +1 @@ -https://rollkit.dev/README2024-06-06T10:53:53.000Zhttps://rollkit.dev/blog/overview2024-06-06T10:53:53.000Zhttps://rollkit.dev/blog/rollkit-the-first-sovereign-rollup-framework2024-06-06T10:53:53.000Zhttps://rollkit.dev/blog/sovereign-rollups-on-bitcoin2024-06-06T10:53:53.000Zhttps://rollkit.dev/guides/block-times2024-06-06T10:53:53.000Zhttps://rollkit.dev/guides/cw-orch2024-06-06T10:53:53.000Zhttps://rollkit.dev/guides/full-and-sequencer-node2024-06-06T10:53:53.000Zhttps://rollkit.dev/guides/gas-price2024-06-06T10:53:53.000Zhttps://rollkit.dev/guides/ibc-connection2024-06-06T10:53:53.000Zhttps://rollkit.dev/guides/lazy-sequencing2024-06-06T10:53:53.000Zhttps://rollkit.dev/guides/overview2024-06-06T10:53:53.000Zhttps://rollkit.dev/guides/restart-rollup2024-06-06T10:53:53.000Zhttps://rollkit.dev/guides/rollkit-monitoring2024-06-06T10:53:53.000Zhttps://rollkit.dev/guides/use-tia-for-gas2024-06-06T10:53:53.000Zhttps://rollkit.dev/guides/zkml2024-06-06T10:53:53.000Zhttps://rollkit.dev/2024-06-06T10:53:53.000Zhttps://rollkit.dev/learn/about2024-06-06T10:53:53.000Zhttps://rollkit.dev/learn/building-and-deploying-a-rollup2024-06-06T10:53:53.000Zhttps://rollkit.dev/learn/intro2024-06-06T10:53:53.000Zhttps://rollkit.dev/learn/specifications2024-06-06T10:53:53.000Zhttps://rollkit.dev/learn/stack2024-06-06T10:53:53.000Zhttps://rollkit.dev/learn/transaction-flow2024-06-06T10:53:53.000Zhttps://rollkit.dev/testnets/cosmwasm-testnet2024-06-06T10:53:53.000Zhttps://rollkit.dev/tutorials/bitcoin2024-06-06T10:53:53.000Zhttps://rollkit.dev/tutorials/celestia-da2024-06-06T10:53:53.000Zhttps://rollkit.dev/tutorials/cosmwasm2024-06-06T10:53:53.000Zhttps://rollkit.dev/tutorials/gm-world-arabica-testnet2024-06-06T10:53:53.000Zhttps://rollkit.dev/tutorials/gm-world-frontend2024-06-06T10:53:53.000Zhttps://rollkit.dev/tutorials/gm-world-mainnet2024-06-06T10:53:53.000Zhttps://rollkit.dev/tutorials/gm-world-mocha-testnet2024-06-06T10:53:53.000Zhttps://rollkit.dev/tutorials/gm-world2024-06-06T10:53:53.000Zhttps://rollkit.dev/tutorials/polaris-evm2024-06-06T10:53:53.000Zhttps://rollkit.dev/tutorials/quick-start2024-06-06T10:53:53.000Zhttps://rollkit.dev/tutorials/wordle2024-06-06T10:53:53.000Z \ No newline at end of file +https://rollkit.dev/README2024-06-07T13:53:18.000Zhttps://rollkit.dev/blog/overview2024-06-07T13:53:18.000Zhttps://rollkit.dev/blog/rollkit-the-first-sovereign-rollup-framework2024-06-07T13:53:18.000Zhttps://rollkit.dev/blog/sovereign-rollups-on-bitcoin2024-06-07T13:53:18.000Zhttps://rollkit.dev/guides/block-times2024-06-07T13:53:18.000Zhttps://rollkit.dev/guides/connect-local-da2024-06-07T13:53:18.000Zhttps://rollkit.dev/guides/create-genesis2024-06-07T13:53:18.000Zhttps://rollkit.dev/guides/cw-orch2024-06-07T13:53:18.000Zhttps://rollkit.dev/guides/full-and-sequencer-node2024-06-07T13:53:18.000Zhttps://rollkit.dev/guides/gas-price2024-06-07T13:53:18.000Zhttps://rollkit.dev/guides/ibc-connection2024-06-07T13:53:18.000Zhttps://rollkit.dev/guides/lazy-sequencing2024-06-07T13:53:18.000Zhttps://rollkit.dev/guides/overview2024-06-07T13:53:18.000Zhttps://rollkit.dev/guides/restart-rollup2024-06-07T13:53:18.000Zhttps://rollkit.dev/guides/rollkit-monitoring2024-06-07T13:53:18.000Zhttps://rollkit.dev/guides/use-tia-for-gas2024-06-07T13:53:18.000Zhttps://rollkit.dev/guides/zkml2024-06-07T13:53:18.000Zhttps://rollkit.dev/2024-06-07T13:53:18.000Zhttps://rollkit.dev/learn/about2024-06-07T13:53:18.000Zhttps://rollkit.dev/learn/building-and-deploying-a-rollup2024-06-07T13:53:18.000Zhttps://rollkit.dev/learn/intro2024-06-07T13:53:18.000Zhttps://rollkit.dev/learn/specifications2024-06-07T13:53:18.000Zhttps://rollkit.dev/learn/stack2024-06-07T13:53:18.000Zhttps://rollkit.dev/learn/transaction-flow2024-06-07T13:53:18.000Zhttps://rollkit.dev/testnets/cosmwasm-testnet2024-06-07T13:53:18.000Zhttps://rollkit.dev/tutorials/bitcoin2024-06-07T13:53:18.000Zhttps://rollkit.dev/tutorials/celestia-da2024-06-07T13:53:18.000Zhttps://rollkit.dev/tutorials/cosmwasm2024-06-07T13:53:18.000Zhttps://rollkit.dev/tutorials/gm-world-arabica-testnet2024-06-07T13:53:18.000Zhttps://rollkit.dev/tutorials/gm-world-frontend2024-06-07T13:53:18.000Zhttps://rollkit.dev/tutorials/gm-world-mainnet2024-06-07T13:53:18.000Zhttps://rollkit.dev/tutorials/gm-world-mocha-testnet2024-06-07T13:53:18.000Zhttps://rollkit.dev/tutorials/gm-world2024-06-07T13:53:18.000Zhttps://rollkit.dev/tutorials/polaris-evm2024-06-07T13:53:18.000Zhttps://rollkit.dev/tutorials/quick-start2024-06-07T13:53:18.000Zhttps://rollkit.dev/tutorials/wordle2024-06-07T13:53:18.000Z \ No newline at end of file diff --git a/pr-383/testnets/cosmwasm-testnet.html b/pr-383/testnets/cosmwasm-testnet.html index 98b8d41c4..c682281c1 100644 --- a/pr-383/testnets/cosmwasm-testnet.html +++ b/pr-383/testnets/cosmwasm-testnet.html @@ -7,33 +7,33 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -60,7 +60,7 @@
    On this page

    CosmWasm Testnet โ€‹

    Our CosmWasm testnet is deployed by following the cosmwasm tutorial. The rollkit/wasmd contains the code for the same.

    Details of ROSM testnet โ€‹

    • Chain ID: rosm
    • Address Prefix: wasm
      • e.g., wasm1lysztpn74kl40w6ghfhy7xr0v44r658szuysl5
    • Rollkit version: v0.13.1
    • RPC: https://rpc.rosm.rollkit.dev/
      • Example: https://rpc.rosm.rollkit.dev/block?height=1

        json
        {
        +
    On this page

    CosmWasm Testnet โ€‹

    Our CosmWasm testnet is deployed by following the cosmwasm tutorial. The rollkit/wasmd contains the code for the same.

    Details of ROSM testnet โ€‹

    • Chain ID: rosm
    • Address Prefix: wasm
      • e.g., wasm1lysztpn74kl40w6ghfhy7xr0v44r658szuysl5
    • Rollkit version: v0.13.1
    • RPC: https://rpc.rosm.rollkit.dev/
      • Example: https://rpc.rosm.rollkit.dev/block?height=1

        json
        {
             "jsonrpc": "2.0",
             "result": {
                 "block_id": {
        @@ -131,8 +131,8 @@
                 "account_number": "7",
                 "sequence": "0"
             }
        -}
      • Block Explorer: https://canary.modular.cloud/rollkit-cosmwasm

      WARNING

      The modular.cloud explorer is work in progress. In the meanwhile, the wasm CLI can be used to query the accounts. For example: to collect the transactions for any account, following command can be used.

      wasmd query txs --query "message.sender='wasm1lysztpn74kl40w6ghfhy7xr0v44r658szuysl5'" --node https://rpc.rosm.rollkit.dev

      Add Rosm to Keplr โ€‹

      Don't have the Keplr Browser extension? Add Keplr Wallet Here

      Click to add Rosm testnet to your Keplr wallet

    Released under the APACHE-2.0 License

    - +}
  • Block Explorer: https://canary.modular.cloud/rollkit-cosmwasm
  • WARNING

    The modular.cloud explorer is work in progress. In the meanwhile, the wasm CLI can be used to query the accounts. For example: to collect the transactions for any account, following command can be used.

    wasmd query txs --query "message.sender='wasm1lysztpn74kl40w6ghfhy7xr0v44r658szuysl5'" --node https://rpc.rosm.rollkit.dev

    Add Rosm to Keplr โ€‹

    Don't have the Keplr Browser extension? Add Keplr Wallet Here

    Click to add Rosm testnet to your Keplr wallet

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/tutorials/bitcoin.html b/pr-383/tutorials/bitcoin.html index 31d761098..7284c50fb 100644 --- a/pr-383/tutorials/bitcoin.html +++ b/pr-383/tutorials/bitcoin.html @@ -7,33 +7,33 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -60,7 +60,7 @@
    On this page

    Bitcoin rollup tutorial โ€‹

    โ˜€๏ธIntroduction โ€‹

    In this tutorial, we will explore how to use Rollkit to create sovereign rollups on Bitcoin. First, we will install Bitcoin Core to run a local testnet. Then, we will install and set up a Rollkit node to work with Bitcoin as a data availability layer. Lastly, we'll look at how to create a custom EVM execution environment and how to deploy a sovereign rollup on Bitcoin using Rollkit.

    By the end of this tutorial, you will have a good understanding of how Rollkit works and how to create sovereign rollups on Bitcoin using Rollkit. You will also have the knowledge and skills needed to customize Rollkit with different execution environments and data availability layers, opening up new possibilities for creating scalable and efficient blockchain applications.

    Read more in our blog post.

    rollkit-bitcoin

    ๐Ÿ“– The stack โ€‹

    Sovereign rollups on Bitcoin are made possible through a module that allows Rollkit rollups to use Bitcoin for data availability. This integration opens up possibilities for developers to create rollups with arbitrary execution environments that inherit Bitcoinโ€™s data availability guarantees and security guarantees.

    The Taproot upgrade and Ordinals usage of Bitcoin for publishing arbitrary data made it possible to integrate Bitcoin as a data availability layer into Rollkit. The modular design of Rollkit allows for easy integration of new data availability layers, making it possible to deploy sovereign rollups on Bitcoin.

    The goal of Rollkit is to make it easy to build and customize rollups, enabling developers to build sovereign rollups on Bitcoin or customize Rollkit with different execution environments and data availability layers.

    ๐Ÿ’ป Prerequisites โ€‹

    An Ubuntu machine with:

    • 8GB RAM
    • 160 GB SSD
    • Ubuntu 22.10
    • 4 core AMD CPU

    ๐Ÿ› ๏ธ Dependency setup โ€‹

    First, make sure to update and upgrade the OS:

    bash
    sudo apt update && sudo apt upgrade -y

    These are essential packages that are necessary to execute many tasks like downloading files, compiling, and monitoring the nodes:

    bash
    sudo apt install curl tar wget clang pkg-config libssl-dev jq build-essential git make ncdu snapd npm -y

    Now, we will install the remaining dependencies.

    ๐Ÿƒ Golang โ€‹

    We will use golang to build and run our test networks. Install it for AMD with these commands:

    bash
    ver="1.19.1"
    +
    On this page

    Bitcoin rollup tutorial โ€‹

    โ˜€๏ธIntroduction โ€‹

    In this tutorial, we will explore how to use Rollkit to create sovereign rollups on Bitcoin. First, we will install Bitcoin Core to run a local testnet. Then, we will install and set up a Rollkit node to work with Bitcoin as a data availability layer. Lastly, we'll look at how to create a custom EVM execution environment and how to deploy a sovereign rollup on Bitcoin using Rollkit.

    By the end of this tutorial, you will have a good understanding of how Rollkit works and how to create sovereign rollups on Bitcoin using Rollkit. You will also have the knowledge and skills needed to customize Rollkit with different execution environments and data availability layers, opening up new possibilities for creating scalable and efficient blockchain applications.

    Read more in our blog post.

    rollkit-bitcoin

    ๐Ÿ“– The stack โ€‹

    Sovereign rollups on Bitcoin are made possible through a module that allows Rollkit rollups to use Bitcoin for data availability. This integration opens up possibilities for developers to create rollups with arbitrary execution environments that inherit Bitcoinโ€™s data availability guarantees and security guarantees.

    The Taproot upgrade and Ordinals usage of Bitcoin for publishing arbitrary data made it possible to integrate Bitcoin as a data availability layer into Rollkit. The modular design of Rollkit allows for easy integration of new data availability layers, making it possible to deploy sovereign rollups on Bitcoin.

    The goal of Rollkit is to make it easy to build and customize rollups, enabling developers to build sovereign rollups on Bitcoin or customize Rollkit with different execution environments and data availability layers.

    ๐Ÿ’ป Prerequisites โ€‹

    An Ubuntu machine with:

    • 8GB RAM
    • 160 GB SSD
    • Ubuntu 22.10
    • 4 core AMD CPU

    ๐Ÿ› ๏ธ Dependency setup โ€‹

    First, make sure to update and upgrade the OS:

    bash
    sudo apt update && sudo apt upgrade -y

    These are essential packages that are necessary to execute many tasks like downloading files, compiling, and monitoring the nodes:

    bash
    sudo apt install curl tar wget clang pkg-config libssl-dev jq build-essential git make ncdu snapd npm -y

    Now, we will install the remaining dependencies.

    ๐Ÿƒ Golang โ€‹

    We will use golang to build and run our test networks. Install it for AMD with these commands:

    bash
    ver="1.19.1"
     cd $HOME
     wget "https://golang.org/dl/go$ver.linux-amd64.tar.gz"
     sudo rm -rf /usr/local/go
    @@ -180,8 +180,8 @@
     $RPC_URL  --private-key $ANVIL_KEY --broadcast

    Once the contract has been deployed locally, Anvil will log out the contract address.

    Next, set the contract address as an environment variable:

    bash
    export CONTRACT_ADDRESS=<contract-address>

    We can then test sending transactions to it with cast send.

    bash
    cast send $CONTRACT_ADDRESS "incrementCounter()" \
     --private-key $ANVIL_KEY --rpc-url $RPC_URL

    We can then perform read operations with cast call:

    bash
    cast call $CONTRACT_ADDRESS "getCount()(int)" --rpc-url $RPC_URL

    ๐Ÿงช Deploying to the Ethermint sovereign rollup โ€‹

    Now that we've deployed and tested locally, we can deploy to our Ethermint chain.

    First, we will need to export the private key generated by the ethermint init.sh script:

    bash
    PRIVATE_KEY=$(ethermintd keys unsafe-export-eth-key mykey --keyring-backend test)

    NOTE: Here, the key name from init.sh is mykey but you can modify the init.sh to change the name of your key.

    Now, we can start deploying the smart contract to our Ethermint chain.

    To do so, run the following script:

    bash
    forge script script/Counter.s.sol:CounterScript \
     --rpc-url http://127.0.0.1:8545 --private-key $PRIVATE_KEY --broadcast

    Set the contract address in the output as the CONTRACT_ADDRESS variable:

    bash
    export CONTRACT_ADDRESS=<new-contract-address>

    Once the contract has been deployed to the Ethermint rollup, we can use cast send to test sending transactions to it:

    bash
    cast send $CONTRACT_ADDRESS "incrementCounter()" \
    ---rpc-url http://127.0.0.1:8545 --private-key $PRIVATE_KEY

    We can then perform read operations with cast call:

    bash
    cast call $CONTRACT_ADDRESS "getCount()(int)" --rpc-url http://127.0.0.1:8545

    Released under the APACHE-2.0 License

    - +--rpc-url http://127.0.0.1:8545 --private-key $PRIVATE_KEY

    We can then perform read operations with cast call:

    bash
    cast call $CONTRACT_ADDRESS "getCount()(int)" --rpc-url http://127.0.0.1:8545

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/tutorials/celestia-da.html b/pr-383/tutorials/celestia-da.html index 9623326dd..890707533 100644 --- a/pr-383/tutorials/celestia-da.html +++ b/pr-383/tutorials/celestia-da.html @@ -7,32 +7,32 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -59,15 +59,18 @@
    On this page

    GM world rollup: Deploying to Celestia โ€‹

    ๐ŸŒž Introduction โ€‹

    This tutorial serves as a comprehensive guide for deploying your GM world rollup on Celestia's data availability (DA) network. From the Rollkit perspective, there's no difference in posting blocks to Celestia's testnets or Mainnet Beta.

    Before proceeding, ensure that you have completed the GM world rollup tutorial, which covers setting up a local sovereign gm-world rollup and connecting it to a local (mock) DA node.

    ๐Ÿชถ Running a Celestia light node โ€‹

    Before you can start your rollup node, you need to initiate, sync, and possibly fund a light node on one of Celestia's networks:

    The main difference lies in how you fund your wallet address: using testnet TIA or TIA for Mainnet Beta.

    After successfully starting a light node, it's time to start posting the batches of blocks of data that your rollup generates.

    ๐Ÿงน Cleaning previous chain history โ€‹

    From the GM world rollup tutorial, you should already have the gmd binary and the $HOME/.gm directory.

    To clear old rollup data:

    bash
    rm -r $(which gmd) && rm -rf $HOME/.gm

    ๐Ÿ—๏ธ Building your rollup โ€‹

    Now we need to rebuild our rollup by simply running the existing init.sh script:

    bash
    cd $HOME/gm && bash init.sh

    This process creates a new $HOME/.gm directory and a new gmd binary. Next, we need to connect our rollup to the running Celestia light node.

    ๐Ÿ› ๏ธ Configuring flags for DA โ€‹

    Now we're prepared to initiate our rollup and establish a connection with the Celestia light node. The gmd start command requires three DA configuration flags:

    • --rollkit.da_start_height
    • --rollkit.da_auth_token
    • --rollkit.da_namespace

    Let's determine what to provide for each of them.

    First, let's query the DA Layer start height using an RPC endpoint provided by Celestia Labs. For Mocha testnet it would be - https://rpc-mocha.pops.one/block, and for mainnet beta - https://rpc.lunaroasis.net/block

    Here is an example for the Mocha testnet (replace URL for mainnet beta if needed):

    bash
    DA_BLOCK_HEIGHT=$(curl https://rpc-mocha.pops.one/block | jq -r '.result.block.header.height')
    +
    On this page

    GM world rollup: Deploying to Celestia โ€‹

    ๐ŸŒž Introduction โ€‹

    This tutorial serves as a comprehensive guide for deploying your GM world rollup on Celestia's data availability (DA) network. From the Rollkit perspective, there's no difference in posting blocks to Celestia's testnets or Mainnet Beta.

    Before proceeding, ensure that you have completed the GM world rollup tutorial, which covers setting up a local sovereign gm-world rollup and connecting it to a local (mock) DA node.

    ๐Ÿชถ Running a Celestia light node โ€‹

    Before you can start your rollup node, you need to initiate, sync, and possibly fund a light node on one of Celestia's networks:

    The main difference lies in how you fund your wallet address: using testnet TIA or TIA for Mainnet Beta.

    After successfully starting a light node, it's time to start posting the batches of blocks of data that your rollup generates.

    ๐Ÿ—๏ธ Prerequisites โ€‹

    From the GM world rollup tutorial, you should already have the rollkit CLI and ignite installed.

    ๐Ÿ—๏ธ Building Your Sovereign Rollup โ€‹

    Run the following command to setup our project for our new gm blockchain.

    bash
    ignite scaffold chain gm --address-prefix gm  --minimal --skip-proto

    Now we need to install the Rollkit app to Ignite, run the following command:

    bash
    cd gm
    +ignite app install github.com/ignite/apps/rollkit@rollkit/v0.2.0

    Next, add Rollkit to gm project by running:

    bash
    ignite rollkit add

    Initialize the Rollkit chain configuration:

    bash
    ignite rollkit init

    This will create a $HOME/.gm directory with the chain configuration files.

    ๐Ÿงฐ Configuring Your Rollup โ€‹

    From inside the $HOME/gm directory, generate a rollkit.toml file by running:

    bash
    rollkit toml init

    The output should be similar to this (our $HOME is /root):

    Found rollup entrypoint: /root/gm/cmd/gmd/main.go, adding to rollkit.toml
    +Found rollup configuration under /root/.gm, adding to rollkit.toml
    +Initialized rollkit.toml file in the current directory.

    ๐Ÿ› ๏ธ Configuring flags for DA โ€‹

    Now we're prepared to initiate our rollup and establish a connection with the Celestia light node. The rollkit start command requires three DA configuration flags:

    • --rollkit.da_start_height
    • --rollkit.da_auth_token
    • --rollkit.da_namespace

    Let's determine what to provide for each of them.

    First, let's query the DA Layer start height using an RPC endpoint provided by Celestia Labs. For Mocha testnet it would be - https://rpc-mocha.pops.one/block, and for mainnet beta - https://rpc.lunaroasis.net/block

    Here is an example for the Mocha testnet (replace URL for mainnet beta if needed):

    bash
    DA_BLOCK_HEIGHT=$(curl https://rpc-mocha.pops.one/block | jq -r '.result.block.header.height')
     echo -e "\n Your DA_BLOCK_HEIGHT is $DA_BLOCK_HEIGHT \n"

    You will see the output like this:

    bash
    Your DA_BLOCK_HEIGHT is 1777655

    Now, obtain an authentication token for your light node as follows (for Mainnet Beta, simply omit the --p2p.network flag):

    bash
    AUTH_TOKEN=$(celestia light auth write --p2p.network mocha)
    -echo -e "\n Your DA AUTH_TOKEN is $AUTH_TOKEN \n"

    The output will look like this:

    bash
    Your DA AUTH_TOKEN is eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJBbGxvdyI6WyJwdWJsaWMiLCJyZWFkIiwid3JpdGUiXX0.cSrJjpfUdTNFtzGho69V0D_8kyECn9Mzv8ghJSpKRDE

    Now, let's also set up a namespace for our blocks by simply setting a variable like this:

    bash
    DA_NAMESPACE=00000000000000000000000000000000000000000008e5f679bf7116cb

    TIP

    00000000000000000000000000000000000000000008e5f679bf7116cb is a default namespace for Mocha testnet. You can set your own by using a command similar to this (or, you could get creative ๐Ÿ˜Ž):

    bash
    openssl rand -hex 10

    Replace the last 20 characters (10 bytes) in 00000000000000000000000000000000000000000008e5f679bf7116cb with the newly generated 10 bytes.

    Learn more about namespaces.

    ๐Ÿ”ฅ Running your rollup connected to a Celestia light node โ€‹

    Now let's run our rollup node with all DA flags:

    bash
    gmd start \
    +echo -e "\n Your DA AUTH_TOKEN is $AUTH_TOKEN \n"

    The output will look like this:

    bash
    Your DA AUTH_TOKEN is eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJBbGxvdyI6WyJwdWJsaWMiLCJyZWFkIiwid3JpdGUiXX0.cSrJjpfUdTNFtzGho69V0D_8kyECn9Mzv8ghJSpKRDE

    Now, let's also set up a namespace for our blocks by simply setting a variable like this:

    bash
    DA_NAMESPACE=00000000000000000000000000000000000000000008e5f679bf7116cb

    TIP

    00000000000000000000000000000000000000000008e5f679bf7116cb is a default namespace for Mocha testnet. You can set your own by using a command similar to this (or, you could get creative ๐Ÿ˜Ž):

    bash
    openssl rand -hex 10

    Replace the last 20 characters (10 bytes) in 00000000000000000000000000000000000000000008e5f679bf7116cb with the newly generated 10 bytes.

    Learn more about namespaces.

    ๐Ÿ”ฅ Running your rollup connected to a Celestia light node โ€‹

    Now let's run our rollup node with all DA flags:

    bash
    rollkit start \
         --rollkit.aggregator \
         --rollkit.da_auth_token $AUTH_TOKEN \
         --rollkit.da_namespace $DA_NAMESPACE \
         --rollkit.da_start_height $DA_BLOCK_HEIGHT \
    -    --minimum-gas-prices="0.025stake"

    Now, the rollup is running and posting blocks (aggregated in batches) to Celestia. You can view your rollup by finding your namespace or account on Mocha testnet or mainnet beta explorers.

    INFO

    For details on configuring gas prices specifically for the DA network, see our DA Network Gas Price Guide. This is separate from the --minimum-gas-prices="0.025stake" setting, which is used for rollup network operations.

    ๐ŸŽ‰ Next steps โ€‹

    Congratulations! You've built a local rollup that posts to Celestia's testnets or Mainnet Beta. Well done! Now, go forth and build something great! Good luck!

    Released under the APACHE-2.0 License

    - + --minimum-gas-prices="0.025stake"

    Now, the rollup is running and posting blocks (aggregated in batches) to Celestia. You can view your rollup by finding your namespace or account on Mocha testnet or mainnet beta explorers.

    INFO

    For details on configuring gas prices specifically for the DA network, see our DA Network Gas Price Guide. This is separate from the --minimum-gas-prices="0.025stake" setting, which is used for rollup network operations.

    ๐ŸŽ‰ Next steps โ€‹

    Congratulations! You've built a local rollup that posts to Celestia's testnets or Mainnet Beta. Well done! Now, go forth and build something great! Good luck!

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/tutorials/cosmwasm.html b/pr-383/tutorials/cosmwasm.html index 00d2d2af8..98c913f8c 100644 --- a/pr-383/tutorials/cosmwasm.html +++ b/pr-383/tutorials/cosmwasm.html @@ -7,33 +7,33 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -60,7 +60,7 @@
    On this page

    ๐Ÿ—ž๏ธ CosmWasm rollup โ€‹

    CosmWasm is a smart contracting platform built for the Cosmos ecosystem by making use of WebAssembly (Wasm) to build smart contracts for Cosmos-SDK. In this tutorial, we will be exploring how to integrate CosmWasm with local DA layer using Rollkit.

    TIP

    This tutorial explores Rollkit, currently in Alpha. If you encounter bugs, please report them via a GitHub issue ticket or reach out in our Telegram group.

    The smart contract we will use for this tutorial is one provided by the CosmWasm team for Nameservice purchasing.

    You can check out the contract here.

    How to write the Rust smart contract for Nameservice is outside the scope of this tutorial.

    ๐Ÿ’ป CosmWasm dependency installations โ€‹

    ๐Ÿƒ Golang โ€‹

    For this tutorial, we will need go and jq installed on your machine. You can install them by running our script:

    bash
    curl -sSL https://rollkit.dev/install-go.sh | bash -s go1.22.3

    ๐Ÿฆ€ Rust โ€‹

    First, before installing Rust, you would need to install rustup.

    On Mac and Linux systems, here are the commands for installing it:

    bash
    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

    TIP

    You will see a note similar to below after installing Rust:

    bash
    Rust is installed now. Great!
    +
    On this page

    ๐Ÿ—ž๏ธ CosmWasm rollup โ€‹

    CosmWasm is a smart contracting platform built for the Cosmos ecosystem by making use of WebAssembly (Wasm) to build smart contracts for Cosmos-SDK. In this tutorial, we will be exploring how to integrate CosmWasm with local DA layer using Rollkit.

    TIP

    This tutorial explores Rollkit, currently in Alpha. If you encounter bugs, please report them via a GitHub issue ticket or reach out in our Telegram group.

    The smart contract we will use for this tutorial is one provided by the CosmWasm team for Nameservice purchasing.

    You can check out the contract here.

    How to write the Rust smart contract for Nameservice is outside the scope of this tutorial.

    ๐Ÿ’ป CosmWasm dependency installations โ€‹

    ๐Ÿƒ Golang โ€‹

    For this tutorial, we will need go and jq installed on your machine. You can install them by running our script:

    bash
    curl -sSL https://rollkit.dev/install-go.sh | bash -s go1.22.3

    ๐Ÿฆ€ Rust โ€‹

    First, before installing Rust, you would need to install rustup.

    On Mac and Linux systems, here are the commands for installing it:

    bash
    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

    TIP

    You will see a note similar to below after installing Rust:

    bash
    Rust is installed now. Great!
     
     To get started you may need to restart your current shell.
     This would reload your PATH environment variable to include
    @@ -91,13 +91,13 @@
     wget https://rollkit.dev/cosmwasm/init.sh

    This copies over our init.sh script to initialize our CosmWasm rollup.

    You can view the contents of the script to see how we initialize the CosmWasm Rollup.

    You can initialize the script with the following command:

    bash
    bash init.sh

    With that, we have kickstarted our wasmd network!

    ๐Ÿ’  Optional: see what's inside the script โ€‹

    You can skip this section, but it is important to know how Rollkit is initializing the cosmwasm rollup.

    View the script.

    ๐Ÿ“’ Contract deployment on CosmWasm with Rollkit โ€‹

    ๐Ÿค– Compile the smart contract โ€‹

    In a new terminal instance, we will run the following commands to pull down the Nameservice smart contract and compile it:

    bash
    git clone https://github.com/InterWasm/cw-contracts
     cd cw-contracts
     cd contracts/nameservice
    -cargo wasm

    The compiled contract is outputted to: target/wasm32-unknown-unknown/release/cw_nameservice.wasm.

    ๐Ÿงช Unit tests โ€‹

    If we want to run tests, we can do so with the following command in the ~/cw-contracts/contracts/nameservice directory:

    bash
    cargo unit-test

    ๐ŸŽ๏ธ Optimized smart contract โ€‹

    Because we are deploying the compiled smart contract to wasmd, we want it to be as small as possible.

    The CosmWasm team provides a tool called rust-optimizer, which requires Docker in order to compile.

    Run the following command in the ~/cw-contracts/contracts/nameservice directory:

    bash
    sudo docker run --rm -v "$(pwd)":/code \
    +cargo wasm

    The compiled contract is outputted to: target/wasm32-unknown-unknown/release/cw_nameservice.wasm.

    ๐Ÿงช Unit tests โ€‹

    If we want to run tests, we can do so with the following command in the ~/cw-contracts/contracts/nameservice directory:

    bash
    cargo unit-test

    ๐ŸŽ๏ธ Optimized smart contract โ€‹

    Because we are deploying the compiled smart contract to wasmd, we want it to be as small as possible.

    The CosmWasm team provides a tool called rust-optimizer, which requires Docker in order to compile.

    Run the following command in the ~/cw-contracts/contracts/nameservice directory:

    bash
    sudo docker run --rm -v "$(pwd)":/code \
       --mount type=volume,source="$(basename "$(pwd)")_cache",target=/code/target \
       --mount type=volume,source=registry_cache,target=/usr/local/cargo/registry \
       cosmwasm/rust-optimizer:0.12.6
    bash
    sudo docker run --platform linux/arm64 --rm -v "$(pwd)":/code \
       --mount type=volume,source="$(basename "$(pwd)")_cache",target=/code/target \
       --mount type=volume,source=registry_cache,target=/usr/local/cargo/registry \
    -  cosmwasm/rust-optimizer-arm64:0.12.8

    This will place the optimized Wasm bytecode at artifacts/cw_nameservice.wasm.

    ๐Ÿš€ Contract deployment โ€‹

    Let's now deploy our smart contract!

    In order to deploy a contract, you can use the command line as described below. For a better experience and to use Rust code instead of the command line to deploy/script and test your contracts, you can use cw-orchestrator.

    Run the following in the ~/cw-contracts/contracts/nameservice directory:

    bash
    TX_HASH=$(wasmd tx wasm store artifacts/cw_nameservice.wasm --from localwasm-key --keyring-backend test --chain-id localwasm --gas-prices 0.025uwasm --gas auto --gas-adjustment 1.3 --node http://127.0.0.1:36657 --output json -y | jq -r '.txhash') && echo $TX_HASH
    bash
    TX_HASH=$(wasmd tx wasm store artifacts/cw_nameservice-aarch64.wasm --from localwasm-key --keyring-backend test --chain-id localwasm --gas-prices 0.025uwasm --gas auto --gas-adjustment 1.3 --node http://127.0.0.1:36657 --output json -y | jq -r '.txhash') && echo $TX_HASH

    This will get you the transaction hash for the smart contract deployment.

    DANGER

    If you run into errors with variables on the previous command, or commands in the remainder of the tutorial, cross-reference the variables in the command with the variables in the init.sh script.

    ๐ŸŒŸ Contract interaction on CosmWasm โ€‹

    In the previous steps, we have stored out contract's tx hash in an environment variable for later use.

    The following guide will show you how to deploy and interact with a contract using CLI. For scripting using Rust, you can use cw-orchestrator.

    ๐Ÿ”Ž Contract querying โ€‹

    Now, let's query our transaction hash for its code ID:

    bash
    CODE_ID=$(wasmd query tx --type=hash $TX_HASH --node http://127.0.0.1:36657 --output json | jq -r '.events[-1].attributes[1].value')
    +  cosmwasm/rust-optimizer-arm64:0.12.8

    This will place the optimized Wasm bytecode at artifacts/cw_nameservice.wasm.

    ๐Ÿš€ Contract deployment โ€‹

    Let's now deploy our smart contract!

    In order to deploy a contract, you can use the command line as described below. For a better experience and to use Rust code instead of the command line to deploy/script and test your contracts, you can use cw-orchestrator.

    Run the following in the ~/cw-contracts/contracts/nameservice directory:

    bash
    TX_HASH=$(wasmd tx wasm store artifacts/cw_nameservice.wasm --from localwasm-key --keyring-backend test --chain-id localwasm --gas-prices 0.025uwasm --gas auto --gas-adjustment 1.3 --node http://127.0.0.1:36657 --output json -y | jq -r '.txhash') && echo $TX_HASH
    bash
    TX_HASH=$(wasmd tx wasm store artifacts/cw_nameservice-aarch64.wasm --from localwasm-key --keyring-backend test --chain-id localwasm --gas-prices 0.025uwasm --gas auto --gas-adjustment 1.3 --node http://127.0.0.1:36657 --output json -y | jq -r '.txhash') && echo $TX_HASH

    This will get you the transaction hash for the smart contract deployment.

    DANGER

    If you run into errors with variables on the previous command, or commands in the remainder of the tutorial, cross-reference the variables in the command with the variables in the init.sh script.

    ๐ŸŒŸ Contract interaction on CosmWasm โ€‹

    In the previous steps, we have stored out contract's tx hash in an environment variable for later use.

    The following guide will show you how to deploy and interact with a contract using CLI. For scripting using Rust, you can use cw-orchestrator.

    ๐Ÿ”Ž Contract querying โ€‹

    Now, let's query our transaction hash for its code ID:

    bash
    CODE_ID=$(wasmd query tx --type=hash $TX_HASH --node http://127.0.0.1:36657 --output json | jq -r '.events[-1].attributes[1].value')
     echo $CODE_ID

    This will give us back the Code ID of the deployed contract.

    In our case, since it's the first contract deployed on our local network, the value is 1.

    Now, we can take a look at the contracts instantiated by this Code ID:

    bash
    wasmd query wasm list-contract-by-code $CODE_ID --node http://127.0.0.1:36657 --output json

    We get the following output:

    json
    {"contracts":[],"pagination":{"next_key":null,"total":"0"}}

    ๐Ÿ“ƒ Contract instantiation โ€‹

    We start instantiating the contract by writing up the following INIT message for nameservice contract. Here, we are specifying that purchase_price of a name is 100uwasm and transfer_price is 999uwasm.

    bash
    INIT='{"purchase_price":{"amount":"100","denom":"uwasm"},"transfer_price":{"amount":"999","denom":"uwasm"}}'
     wasmd tx wasm instantiate $CODE_ID "$INIT" --from localwasm-key --keyring-backend test --label "name service" --chain-id localwasm --gas-prices 0.025uwasm --gas auto --gas-adjustment 1.3 -y --no-admin --node http://127.0.0.1:36657

    ๐Ÿ“„ Contract interaction โ€‹

    Now that we instantiated it, we can interact further with the contract:

    bash
    wasmd query wasm list-contract-by-code $CODE_ID --output json --node http://127.0.0.1:36657
     CONTRACT=$(wasmd query wasm list-contract-by-code $CODE_ID --output json --node http://127.0.0.1:36657 | jq -r '.contracts[-1]')
    @@ -134,8 +134,8 @@
     timestamp: ""
     tx: null
     txhash: C147257485B72E7FFA5FDB943C94CE951A37817554339586FFD645AD2AA397C3

    If you try to register the same name again, you'll see an expected error:

    bash
    Error: rpc error: code = Unknown desc = rpc error: code = Unknown desc = failed to execute message; message index: 0: Name has been taken (name fred): execute wasm contract failed [CosmWasm/wasmd/x/wasm/keeper/keeper.go:364] With gas wanted: '0' and gas used: '123809' : unknown request

    Next, query the owner of the name record:

    bash
    NAME_QUERY='{"resolve_record": {"name": "fred"}}'
    -wasmd query wasm contract-state smart $CONTRACT "$NAME_QUERY" --node http://127.0.0.1:36657 --output json

    You'll see the owner's address in a JSON response:

    bash
    {"data":{"address":"wasm1y9ceqvnsnm9xtcdmhrjvv4rslgwfzmrzky2c5z"}}

    With that, we have instantiated and interacted with the CosmWasm nameservice smart contract on our local DA network using Rollkit!

    Released under the APACHE-2.0 License

    - +wasmd query wasm contract-state smart $CONTRACT "$NAME_QUERY" --node http://127.0.0.1:36657 --output json

    You'll see the owner's address in a JSON response:

    bash
    {"data":{"address":"wasm1y9ceqvnsnm9xtcdmhrjvv4rslgwfzmrzky2c5z"}}

    With that, we have instantiated and interacted with the CosmWasm nameservice smart contract on our local DA network using Rollkit!

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/tutorials/gm-world-arabica-testnet.html b/pr-383/tutorials/gm-world-arabica-testnet.html index f5067dc02..430dc4194 100644 --- a/pr-383/tutorials/gm-world-arabica-testnet.html +++ b/pr-383/tutorials/gm-world-arabica-testnet.html @@ -7,34 +7,34 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -61,7 +61,7 @@
    On this page

    GM world rollup: Part 2 โ€‹

    Deploying to a Celestia devnet โ€‹

    This tutorial is part 2 of the GM world rollup tutorials. In this tutorial, it is expected that you've completed part 1 of the tutorial and are familiar with running a local rollup devnet.

    The script for this tutorial is built for Celestia's Arabica devnet.

    TIP

    This tutorial explores Rollkit, currently in Alpha. If you encounter bugs, please report them via a GitHub issue ticket or reach out in our Telegram group.

    ๐Ÿชถย Run a Celestia light node โ€‹

    Fully sync and fund a light node on Arabica devnet (arabica-11). Follow instructions to install and start your Celestia data availability layer light node selecting the Arabica network. You can find instructions to install and run the node. Keep the node running while doing the next steps.

    ๐ŸŸขย Start your sovereign rollup โ€‹

    We have a handy init-arabica-testnet.sh found in this repo.

    We can copy it over to our directory with the following commands:

    bash
    # From inside the `gm` directory
    +
    On this page

    GM world rollup: Part 2 โ€‹

    Deploying to a Celestia devnet โ€‹

    This tutorial is part 2 of the GM world rollup tutorials. In this tutorial, it is expected that you've completed part 1 of the tutorial and are familiar with running a local rollup devnet.

    The script for this tutorial is built for Celestia's Arabica devnet.

    TIP

    This tutorial explores Rollkit, currently in Alpha. If you encounter bugs, please report them via a GitHub issue ticket or reach out in our Telegram group.

    ๐Ÿชถย Run a Celestia light node โ€‹

    Fully sync and fund a light node on Arabica devnet (arabica-11). Follow instructions to install and start your Celestia data availability layer light node selecting the Arabica network. You can find instructions to install and run the node. Keep the node running while doing the next steps.

    ๐ŸŸขย Start your sovereign rollup โ€‹

    We have a handy init-arabica-testnet.sh found in this repo.

    We can copy it over to our directory with the following commands:

    bash
    # From inside the `gm` directory
     wget https://rollkit.dev/gm/init-arabica-testnet.sh

    This copies over our init-arabica-testnet.sh script to initialize our gm rollup.

    You can view the contents of the script to see how we initialize the gm rollup.

    TIP

    init-arabica-testnet.sh script uses a default namespace 00000000000000000000000000000000000000000008e5f679bf7116cb. You can set your own by using a command similar to this (or, you could get creative ๐Ÿ˜Ž):

    bash
    openssl rand -hex 10

    Replace the last 10 characters in 00000000000000000000000000000000000000000008e5f679bf7116cb with the newly generated 10 characters.

    Learn more about namespaces .

    Clear previous chain history โ€‹

    Before starting the rollup, we need to remove the old project folders:

    bash
    rm -r $HOME/go/bin/gmd && rm -rf $HOME/.gm

    Start the new chain โ€‹

    Now, you can initialize the script with the following command:

    bash
    bash init-arabica-testnet.sh

    View your rollup by finding your namespace or account an Arabica devnet explorer.

    With that, we have kickstarted our second gmd rollup!

    Optional: Restarting your rollup โ€‹

    If you'd like to stop and restart your rollup for development purposes, you're in luck!

    When you ran init-arabica-testnet.sh, the script generated a script called restart-testnet.sh in the $HOME/gm directory for you to use to restart your rollup.

    In order to do so, restart celestia-da and then run:

    bash
    bash restart-testnet.sh

    Optional: Add a "GM world" query โ€‹

    ๐Ÿ’ฌย Say gm world โ€‹

    Now, we're going to get our blockchain to say gm world! - in order to do so you need to make the following changes:

    • Modify a protocol buffer file
    • Create a keeper query function that returns data

    Protocol buffer files contain proto RPC calls that define Cosmos SDK queries and message handlers, and proto messages that define Cosmos SDK types. The RPC calls are also responsible for exposing an HTTP API.

    The Keeper is required for each Cosmos SDK module and is an abstraction for modifying the state of the blockchain. Keeper functions allow us to query or write to the state.

    โœ‹ย Create your first query โ€‹

    Open a new terminal instance that is not the same that you started the chain in.

    In your new terminal, cd into the gm directory and run this command to create the gm query:

    bash
    ignite scaffold query gm --response text

    Response:

    bash
    modify proto/gm/gm/query.proto
     modify x/gm/client/cli/query.go
     create x/gm/client/cli/query_gm.go
    @@ -93,8 +93,8 @@
     	ctx := sdk.UnwrapSDKContext(goCtx)
     	_ = ctx
     	return &types.QueryGmResponse{Text: "gm world!"}, nil 
    -}

    Theย queryย command has also scaffolded x/gm/client/cli/query_gm.goย that implements a CLI equivalent of the gm query and mounted this command in x/gm/client/cli/query.go.

    Restart your rollup โ€‹

    Restart your rollup by running the init-arabica-testnet.sh script again.

    Query your rollup โ€‹

    In a separate window, run the following command:

    bash
    gmd q gm gm

    We will get the following JSON response:

    bash
    text: gm world!

    gm.png

    Next steps โ€‹

    Congratulations ๐ŸŽ‰ you've successfully built your first rollup and queried it!

    In the next tutorial, you'll learn how to post data to Celestia's Mainnet Beta.

    If you're interested in setting up a full node alongside your sequencer, see the Full and sequencer node rollup setup tutorial.

    Released under the APACHE-2.0 License

    - +}

    Theย queryย command has also scaffolded x/gm/client/cli/query_gm.goย that implements a CLI equivalent of the gm query and mounted this command in x/gm/client/cli/query.go.

    Restart your rollup โ€‹

    Restart your rollup by running the init-arabica-testnet.sh script again.

    Query your rollup โ€‹

    In a separate window, run the following command:

    bash
    gmd q gm gm

    We will get the following JSON response:

    bash
    text: gm world!

    gm.png

    Next steps โ€‹

    Congratulations ๐ŸŽ‰ you've successfully built your first rollup and queried it!

    In the next tutorial, you'll learn how to post data to Celestia's Mainnet Beta.

    If you're interested in setting up a full node alongside your sequencer, see the Full and sequencer node rollup setup tutorial.

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/tutorials/gm-world-frontend.html b/pr-383/tutorials/gm-world-frontend.html index bdf815ba1..d4a27b4d9 100644 --- a/pr-383/tutorials/gm-world-frontend.html +++ b/pr-383/tutorials/gm-world-frontend.html @@ -7,34 +7,34 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + - + @@ -61,11 +61,11 @@
    On this page

    GM world UI app โ€‹

    This tutorial aims to demonstrate the user interface (UI) application aspect of connecting a wallet to a rollup, showcasing that it's as straightforward as connecting to any other blockchain. It assumes you have the Keplr wallet extension installed in your browser.

    TIP

    This tutorial explores Rollkit, currently in Alpha. If you encounter bugs, please report them via a GitHub issue ticket or reach out in our Telegram group.

    ๐Ÿ›  Prerequisites โ€‹

    Before you start, ensure you have completed the GM world tutorial. Your rollup needs to be running since the app will connect to it via RPC.

    You will also need Yarn installed for web app development.

    TIP

    If you don't have Yarn or Node.js, run this command to install it using cURL on most Linux distros and macOS:

    bash
    curl -sSL https://rollkit.dev/install-yarn.sh | bash -s 21.7.2 1.22.19

    ๐Ÿ“ฆ Cloning the repo โ€‹

    First, clone the repo with a simple frontend app that connects to the rollup:

    bash
    git clone https://github.com/rollkit/gm-frontend.git
    +
    On this page

    GM world UI app โ€‹

    This tutorial aims to demonstrate the user interface (UI) application aspect of connecting a wallet to a rollup, showcasing that it's as straightforward as connecting to any other blockchain. It assumes you have the Keplr wallet extension installed in your browser.

    TIP

    This tutorial explores Rollkit, currently in Alpha. If you encounter bugs, please report them via a GitHub issue ticket or reach out in our Telegram group.

    ๐Ÿ›  Prerequisites โ€‹

    Before you start, ensure you have completed the GM world tutorial. Your rollup needs to be running since the app will connect to it via RPC.

    You will also need Yarn installed for web app development.

    TIP

    If you don't have Yarn or Node.js, run this command to install it using cURL on most Linux distros and macOS:

    bash
    curl -sSL https://rollkit.dev/install-yarn.sh | bash -s 21.7.2 1.22.19

    ๐Ÿ“ฆ Cloning the repo โ€‹

    First, clone the repo with a simple frontend app that connects to the rollup:

    bash
    git clone https://github.com/rollkit/gm-frontend.git
     cd gm-frontend

    Next, install the dependencies:

    bash
    yarn

    ๐Ÿš€ Running the app โ€‹

    Now, you can run the app using the following command:

    bash
    yarn dev

    You should see the following output indicating that the development server is up and running:

    bash
    ready - started server on 0.0.0.0:3000, url: http://localhost:3000
     info  - SWC minify release candidate enabled. https://nextjs.link/swcmin
    -event - compiled client and server successfully in 7.8s (2225 modules)

    ๐Ÿ”— Connecting your wallet โ€‹

    To connect your Keplr wallet to the application, simply open your browser and go to http://localhost:3000.

    Click the "Connect Wallet" button on the page, and approve the connection request in the Keplr prompt.

    Once authorized, your wallet address will be displayed, confirming that your wallet is successfully connected.

    gm-world-frontend-connected

    TIP

    If you run into any issues, make sure your Keplr wallet is updated and set to connect to your local environment.

    ๐ŸŽ‰ Next steps โ€‹

    Congratulations! You've experienced connecting to a rollup from the user side โ€” simple and straightforward. Now, you might consider exploring how to add more application logic to your rollup using the Cosmos SDK, as demonstrated in our Wordle App tutorial.

    Released under the APACHE-2.0 License

    - +event - compiled client and server successfully in 7.8s (2225 modules)

    ๐Ÿ”— Connecting your wallet โ€‹

    To connect your Keplr wallet to the application, simply open your browser and go to http://localhost:3000.

    Click the "Connect Wallet" button on the page, and approve the connection request in the Keplr prompt.

    Once authorized, your wallet address will be displayed, confirming that your wallet is successfully connected.

    gm-world-frontend-connected

    TIP

    If you run into any issues, make sure your Keplr wallet is updated and set to connect to your local environment.

    ๐ŸŽ‰ Next steps โ€‹

    Congratulations! You've experienced connecting to a rollup from the user side โ€” simple and straightforward. Now, you might consider exploring how to add more application logic to your rollup using the Cosmos SDK, as demonstrated in our Wordle App tutorial.

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/tutorials/gm-world-mainnet.html b/pr-383/tutorials/gm-world-mainnet.html index 335cdcb38..07a8ff325 100644 --- a/pr-383/tutorials/gm-world-mainnet.html +++ b/pr-383/tutorials/gm-world-mainnet.html @@ -7,33 +7,33 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -60,9 +60,9 @@
    On this page

    GM world rollup: Part 3 โ€‹

    This tutorial is part 3 of the GM world rollup tutorials. In this tutorial, it is expected that you've completed part 1 or part 2 of the tutorial and are familiar with running a local rollup devnet or posting to a Celestia testnet.

    TIP

    This tutorial explores Rollkit, currently in Alpha. If you encounter bugs, please report them via a GitHub issue ticket or reach out in our Telegram group.

    Deploying to Celestia Mainnet Beta โ€‹

    ๐Ÿชถย Run a Celestia light node โ€‹

    Fully sync and fund a light node on Mainnet beta (celestia). Follow instructions to install and start your Celestia data availability layer light node selecting the Arabica network. You can find instructions to install and run the node. After the node is synced, stop the light node.

    Clear previous chain history โ€‹

    Before starting the rollup, we need to remove the old project folders:

    bash
    rm -r $HOME/go/bin/gmd && rm -rf $HOME/.gm

    Start the rollup on mainnet โ€‹

    For this portion, you will need to stop the rollup that you have running from parts 1 and 2 of the tutorial, using Control + C in the terminal.

    1. Download the script for deploying to Celestia's Mainnet Beta:

      bash
      # From inside the `gm` directory
      -wget https://rollkit.dev/gm/init-mainnet.sh
    2. Ensure that the account for your light node is funded.

    3. Run the init-mainnet.sh script:

      bash
      bash init-mainnet.sh
    4. Watch as your rollup posts blocks to Celestia!

    5. View your rollup by finding your namespace or account Celenium.

    View the example rollup's namespace on Celenium.

    TIP

    init-mainnet.sh script uses a default namespace 00000000000000000000000000000000000000000008e5f679bf7116cb. You can set your own by using a command similar to this (or, you could get creative ๐Ÿ˜Ž):

    bash
    openssl rand -hex 10

    Replace the last 10 characters in 00000000000000000000000000000000000000000008e5f679bf7116cb with the newly generated 10 characters.

    Learn more about namespaces .

    Restarting your rollup โ€‹

    When you ran init-mainnet.sh, the script generated a script called restart-mainnet.sh in the $HOME/gm directory for you to use to restart your rollup.

    In order to do so, restart celestia light node and then run:

    bash
    bash restart-mainnet.sh

    Next steps โ€‹

    Congratulations! You have a Rollkit rollup running on Celestia's Mainnet Beta.

    If you're interested in setting up a full node alongside your sequencer, see the Full and sequencer node rollup setup tutorial.

    Released under the APACHE-2.0 License

    - +
    On this page

    GM world rollup: Part 3 โ€‹

    This tutorial is part 3 of the GM world rollup tutorials. In this tutorial, it is expected that you've completed part 1 or part 2 of the tutorial and are familiar with running a local rollup devnet or posting to a Celestia testnet.

    TIP

    This tutorial explores Rollkit, currently in Alpha. If you encounter bugs, please report them via a GitHub issue ticket or reach out in our Telegram group.

    Deploying to Celestia Mainnet Beta โ€‹

    ๐Ÿชถย Run a Celestia light node โ€‹

    Fully sync and fund a light node on Mainnet beta (celestia). Follow instructions to install and start your Celestia data availability layer light node selecting the Arabica network. You can find instructions to install and run the node. After the node is synced, stop the light node.

    Clear previous chain history โ€‹

    Before starting the rollup, we need to remove the old project folders:

    bash
    rm -r $HOME/go/bin/gmd && rm -rf $HOME/.gm

    Start the rollup on mainnet โ€‹

    For this portion, you will need to stop the rollup that you have running from parts 1 and 2 of the tutorial, using Control + C in the terminal.

    1. Download the script for deploying to Celestia's Mainnet Beta:

      bash
      # From inside the `gm` directory
      +wget https://rollkit.dev/gm/init-mainnet.sh
    2. Ensure that the account for your light node is funded.

    3. Run the init-mainnet.sh script:

      bash
      bash init-mainnet.sh
    4. Watch as your rollup posts blocks to Celestia!

    5. View your rollup by finding your namespace or account Celenium.

    View the example rollup's namespace on Celenium.

    TIP

    init-mainnet.sh script uses a default namespace 00000000000000000000000000000000000000000008e5f679bf7116cb. You can set your own by using a command similar to this (or, you could get creative ๐Ÿ˜Ž):

    bash
    openssl rand -hex 10

    Replace the last 10 characters in 00000000000000000000000000000000000000000008e5f679bf7116cb with the newly generated 10 characters.

    Learn more about namespaces .

    Restarting your rollup โ€‹

    When you ran init-mainnet.sh, the script generated a script called restart-mainnet.sh in the $HOME/gm directory for you to use to restart your rollup.

    In order to do so, restart celestia light node and then run:

    bash
    bash restart-mainnet.sh

    Next steps โ€‹

    Congratulations! You have a Rollkit rollup running on Celestia's Mainnet Beta.

    If you're interested in setting up a full node alongside your sequencer, see the Full and sequencer node rollup setup tutorial.

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/tutorials/gm-world-mocha-testnet.html b/pr-383/tutorials/gm-world-mocha-testnet.html index 9faf8cde6..13292118c 100644 --- a/pr-383/tutorials/gm-world-mocha-testnet.html +++ b/pr-383/tutorials/gm-world-mocha-testnet.html @@ -7,34 +7,34 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -61,7 +61,7 @@
    On this page

    GM world rollup: Part 2 โ€‹

    Deploying to a Celestia testnet โ€‹

    This tutorial is part 2 of the GM world rollup tutorials. In this tutorial, it is expected that you've completed part 1 of the tutorial and are familiar with running a local rollup devnet.

    The script for this tutorial is built for Celestia's Mocha testnet.

    TIP

    This tutorial explores Rollkit, currently in Alpha. If you encounter bugs, please report them via a GitHub issue ticket or reach out in our Telegram group.

    ๐Ÿชถย Run a Celestia light node โ€‹

    Fully sync and fund a light node on Mocha testnet (mocha-4). Follow instructions to install and start your Celestia data availability layer light node selecting the Mocha network. You can find instructions to install and run the node. After the node is synced, stop the light node.

    ๐ŸŸขย Start your sovereign rollup โ€‹

    We have a handy init-mocha-testnet.sh found in this repo.

    We can copy it over to our directory with the following commands:

    bash
    # From inside the `gm` directory
    +
    On this page

    GM world rollup: Part 2 โ€‹

    Deploying to a Celestia testnet โ€‹

    This tutorial is part 2 of the GM world rollup tutorials. In this tutorial, it is expected that you've completed part 1 of the tutorial and are familiar with running a local rollup devnet.

    The script for this tutorial is built for Celestia's Mocha testnet.

    TIP

    This tutorial explores Rollkit, currently in Alpha. If you encounter bugs, please report them via a GitHub issue ticket or reach out in our Telegram group.

    ๐Ÿชถย Run a Celestia light node โ€‹

    Fully sync and fund a light node on Mocha testnet (mocha-4). Follow instructions to install and start your Celestia data availability layer light node selecting the Mocha network. You can find instructions to install and run the node. After the node is synced, stop the light node.

    ๐ŸŸขย Start your sovereign rollup โ€‹

    We have a handy init-mocha-testnet.sh found in this repo.

    We can copy it over to our directory with the following commands:

    bash
    # From inside the `gm` directory
     wget https://rollkit.dev/gm/init-mocha-testnet.sh

    This copies over our init-mocha-testnet.sh script to initialize our gm rollup.

    You can view the contents of the script to see how we initialize the gm rollup.

    TIP

    init-mocha-testnet.sh script uses a default namespace 00000000000000000000000000000000000000000008e5f679bf7116cb. You can set your own by using a command similar to this (or, you could get creative ๐Ÿ˜Ž):

    bash
    openssl rand -hex 10

    Replace the last 10 characters in 00000000000000000000000000000000000000000008e5f679bf7116cb with the newly generated 10 characters.

    Learn more about namespaces .

    Clear previous chain history โ€‹

    Before starting the rollup, we need to remove the old project folders:

    bash
    rm -r $HOME/go/bin/gmd && rm -rf $HOME/.gm

    Start the new chain โ€‹

    Now, you can initialize the script with the following command:

    bash
    bash init-mocha-testnet.sh

    View your rollup by finding your namespace or account an Mocha devnet explorer.

    With that, we have kickstarted our second gmd rollup!

    Optional: Restarting your rollup โ€‹

    If you'd like to stop and restart your rollup for development purposes, you're in luck!

    When you ran init-mocha-testnet.sh, the script generated a script called restart-testnet.sh in the $HOME/gm directory for you to use to restart your rollup.

    In order to do so, restart celestia-da and then run:

    bash
    bash restart-testnet.sh

    Optional: Add a "GM world" query โ€‹

    ๐Ÿ’ฌย Say gm world โ€‹

    Now, we're going to get our blockchain to say gm world! - in order to do so you need to make the following changes:

    • Modify a protocol buffer file
    • Create a keeper query function that returns data

    Protocol buffer files contain proto RPC calls that define Cosmos SDK queries and message handlers, and proto messages that define Cosmos SDK types. The RPC calls are also responsible for exposing an HTTP API.

    The Keeper is required for each Cosmos SDK module and is an abstraction for modifying the state of the blockchain. Keeper functions allow us to query or write to the state.

    โœ‹ย Create your first query โ€‹

    Open a new terminal instance that is not the same that you started the chain in.

    In your new terminal, cd into the gm directory and run this command to create the gm query:

    bash
    ignite scaffold query gm --response text

    Response:

    bash
    modify proto/gm/gm/query.proto
     modify x/gm/client/cli/query.go
     create x/gm/client/cli/query_gm.go
    @@ -93,8 +93,8 @@
     	ctx := sdk.UnwrapSDKContext(goCtx)
     	_ = ctx
     	return &types.QueryGmResponse{Text: "gm world!"}, nil 
    -}

    Theย queryย command has also scaffolded x/gm/client/cli/query_gm.goย that implements a CLI equivalent of the gm query and mounted this command in x/gm/client/cli/query.go.

    Restart your rollup โ€‹

    Restart your rollup by running the init-mocha-testnet.sh script again.

    Query your rollup โ€‹

    In a separate window, run the following command:

    bash
    gmd q gm gm

    We will get the following JSON response:

    bash
    text: gm world!

    gm.png

    Next steps โ€‹

    Congratulations ๐ŸŽ‰ you've successfully built your first rollup and queried it!

    In the next tutorial, you'll learn how to post data to Celestia's Mainnet Beta.

    If you're interested in setting up a full node alongside your sequencer, see the Full and sequencer node rollup setup tutorial.

    Released under the APACHE-2.0 License

    - +}

    Theย queryย command has also scaffolded x/gm/client/cli/query_gm.goย that implements a CLI equivalent of the gm query and mounted this command in x/gm/client/cli/query.go.

    Restart your rollup โ€‹

    Restart your rollup by running the init-mocha-testnet.sh script again.

    Query your rollup โ€‹

    In a separate window, run the following command:

    bash
    gmd q gm gm

    We will get the following JSON response:

    bash
    text: gm world!

    gm.png

    Next steps โ€‹

    Congratulations ๐ŸŽ‰ you've successfully built your first rollup and queried it!

    In the next tutorial, you'll learn how to post data to Celestia's Mainnet Beta.

    If you're interested in setting up a full node alongside your sequencer, see the Full and sequencer node rollup setup tutorial.

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/tutorials/gm-world.html b/pr-383/tutorials/gm-world.html index d1a97b8e9..22be53568 100644 --- a/pr-383/tutorials/gm-world.html +++ b/pr-383/tutorials/gm-world.html @@ -7,34 +7,34 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - + + @@ -61,7 +61,7 @@
    On this page

    GM world rollup โ€‹

    ๐ŸŒž Introduction โ€‹

    This tutorial will guide you through building a sovereign gm-world rollup (gm stands for "good morning") using Rollkit. Unlike the quick start guide, this tutorial provides a more practical approach to understanding sovereign rollup development.

    We will cover:

    • Building and configuring a Cosmos-SDK application-specific rollup blockchain.
    • Posting rollup data to a Data Availability (DA) network.
    • Executing transactions (the end goal).

    No prior understanding of the build process is required, just that it utilizes the Cosmos SDK for blockchain applications.

    TIP

    This tutorial explores Rollkit, currently in Alpha. If you encounter bugs, please report them via a GitHub issue ticket or reach out in our Telegram group.

    ๐Ÿ› ๏ธ Dependencies โ€‹

    If you followed the quick start guide, you should have the Rollkit CLI and Golang installed already. If not, here's the script for you:

    bash
    curl -sSL https://rollkit.dev/install.sh | sh -s v0.13.3

    ๐ŸŒ Running a Local DA Network โ€‹

    Learn to run a local DA network, designed for educational purposes, on your machine.

    To set up a local DA network node:

    bash
    curl -sSL https://rollkit.dev/install-local-da.sh | bash -s v0.2.0

    This script builds and runs the node, now listening on port 7980.

    ๐Ÿ—๏ธ Building Your Sovereign Rollup โ€‹

    With the local DA network running, letโ€™s prepare your rollup blockchain.

    To make it simple we will download a repository with a gm-world rollup that has all app chain config set up for you:

    bash
    cd $HOME && bash -c "$(curl -sSL https://rollkit.dev/install-gm-rollup.sh)"

    ๐Ÿงฐ Configuring Your Rollup โ€‹

    Generate rollkit.toml file by running:

    bash
    rollkit toml init

    The output should be similar to this:

    Found rollup entrypoint: /root/gm/cmd/gmd/main.go, adding to rollkit.toml
    +
    On this page

    GM world rollup โ€‹

    ๐ŸŒž Introduction โ€‹

    This tutorial will guide you through building a sovereign gm-world rollup (gm stands for "good morning") using Rollkit. Unlike the quick start guide, this tutorial provides a more practical approach to understanding sovereign rollup development.

    We will cover:

    • Building and configuring a Cosmos-SDK application-specific rollup blockchain.
    • Posting rollup data to a Data Availability (DA) network.
    • Executing transactions (the end goal).

    No prior understanding of the build process is required, just that it utilizes the Cosmos SDK for blockchain applications.

    TIP

    This tutorial explores Rollkit, currently in Alpha. If you encounter bugs, please report them via a GitHub issue ticket or reach out in our Telegram group.

    ๐Ÿ› ๏ธ Dependencies โ€‹

    If you followed the quick start guide, you should have the Rollkit CLI and Golang installed already. If not, here's the script for you:

    bash
    curl -sSL https://rollkit.dev/install.sh | sh -s v0.13.3

    ๐ŸŒ Running a Local DA Network โ€‹

    Learn to run a local DA network, designed for educational purposes, on your machine.

    To set up a local DA network node:

    bash
    curl -sSL https://rollkit.dev/install-local-da.sh | bash -s v0.2.0

    This script builds and runs the node, now listening on port 7980.

    ๐Ÿ—๏ธ Building Your Sovereign Rollup โ€‹

    With the local DA network running, letโ€™s prepare your rollup blockchain.

    To make it simple we will download a repository with a gm-world rollup that has all app chain config set up for you:

    bash
    cd $HOME && bash -c "$(curl -sSL https://rollkit.dev/install-gm-rollup.sh)"

    ๐Ÿงฐ Configuring Your Rollup โ€‹

    Generate rollkit.toml file by running:

    bash
    rollkit toml init

    The output should be similar to this:

    Found rollup entrypoint: /root/gm/cmd/gmd/main.go, adding to rollkit.toml
     Could not find rollup config under gm. Please put the chain.config_dir in the rollkit.toml file manually.
     Initialized rollkit.toml file in the current directory.

    From the output, you can see that the rollup entrypoint is ~/gm/cmd/gmd/main.go.

    Open the rollkit.toml file and under the [chain] section set config_dir to the ./.gm directory. Your rollkit.toml file should look like this:

    bash
    entrypoint = "./cmd/gmd/main.go"
     
    @@ -135,8 +135,8 @@
       denom: stake
     pagination:
       next_key: null
    -  total: "0"

    ๐ŸŽ‰ Next steps โ€‹

    Congratulations! You've built a local rollup that posts to a local DA network. So far so good, keep diving deeper if you like it. Good luck!

    Released under the APACHE-2.0 License

    - + total: "0"

    ๐ŸŽ‰ Next steps โ€‹

    Congratulations! You've built a local rollup that posts to a local DA network. So far so good, keep diving deeper if you like it. Good luck!

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/tutorials/polaris-evm.html b/pr-383/tutorials/polaris-evm.html index fe0f670b8..b97e650ee 100644 --- a/pr-383/tutorials/polaris-evm.html +++ b/pr-383/tutorials/polaris-evm.html @@ -7,33 +7,33 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + @@ -60,7 +60,7 @@
    On this page

    Polaris EVM and Rollkit โ€‹

    DANGER

    We regret to inform that Polaris V1 and Rollkit integration is not fully functional. Current issues are tracked in https://github.com/rollkit/rollkit/issues/1594. We are expecting Polaris V2 release soon and Rollkit support will be added along with update tutorial.

    This tutorial provides step-by-step instructions for running the Polaris EVM using Rollkit. Polaris EVM is a version of the Ethereum Virtual Machine (EVM) that is designed to run the Berachain network. This version has been modified to use Celestia as a data availability layer. This integration uses a local-celestia-devnet. Rollkit is used to deploy a Polaris EVM rollup without needing to set up a data availability and consensus network.

    TIP

    This tutorial explores Rollkit, currently in Alpha. If you encounter bugs, please report them via a GitHub issue ticket or reach out in our Telegram group.

    Prerequisites โ€‹

    Before you can run Polaris EVM using Rollkit, you need to have the following software installed on your machine:

    • Docker running on your machine
    • Go version >= 1.21.0

    Run a local-celestia-devnet โ€‹

    Before you can start Polaris EVM, you need to start a local-celestia-devnet instance in a separate terminal:

    bash
    docker run -t -i --platform linux/amd64 -p 26650:26650 -p 26657:26657 -p 26658:26658 -p 26659:26659 -p 9090:9090 ghcr.io/rollkit/local-celestia-devnet:v0.12.6

    Clone the repo โ€‹

    To get started, clone the Polaris repository and switch to the Rollkit branch:

    bash
    cd $HOME
    +
    On this page

    Polaris EVM and Rollkit โ€‹

    DANGER

    We regret to inform that Polaris V1 and Rollkit integration is not fully functional. Current issues are tracked in https://github.com/rollkit/rollkit/issues/1594. We are expecting Polaris V2 release soon and Rollkit support will be added along with update tutorial.

    This tutorial provides step-by-step instructions for running the Polaris EVM using Rollkit. Polaris EVM is a version of the Ethereum Virtual Machine (EVM) that is designed to run the Berachain network. This version has been modified to use Celestia as a data availability layer. This integration uses a local-celestia-devnet. Rollkit is used to deploy a Polaris EVM rollup without needing to set up a data availability and consensus network.

    TIP

    This tutorial explores Rollkit, currently in Alpha. If you encounter bugs, please report them via a GitHub issue ticket or reach out in our Telegram group.

    Prerequisites โ€‹

    Before you can run Polaris EVM using Rollkit, you need to have the following software installed on your machine:

    • Docker running on your machine
    • Go version >= 1.21.0

    Run a local-celestia-devnet โ€‹

    Before you can start Polaris EVM, you need to start a local-celestia-devnet instance in a separate terminal:

    bash
    docker run -t -i --platform linux/amd64 -p 26650:26650 -p 26657:26657 -p 26658:26658 -p 26659:26659 -p 9090:9090 ghcr.io/rollkit/local-celestia-devnet:v0.12.6

    Clone the repo โ€‹

    To get started, clone the Polaris repository and switch to the Rollkit branch:

    bash
    cd $HOME
     git clone https://github.com/berachain/polaris.git
     cd polaris && git checkout rollkit

    Install Foundry โ€‹

    bash
    curl -L https://foundry.paradigm.xyz | bash

    Start the Polaris EVM using Rollkit โ€‹

    Then start the chain in your first terminal:

    bash
    cd $HOME/polaris && foundryup
     make start

    Congratulations โ€‹

    You now have a Polaris EVM Rollkit rollup running! The rollup logs will begin to look similar to this:

    bash
    7:58PM INF submitting block to DA layer height=11 module=BlockManager 
    @@ -120,8 +120,8 @@
     --gateway

    Setup Polaris script โ€‹

    First, ensure you're on the correct branch of Polaris:

    bash
    cd $HOME/polaris && git checkout rollkit

    Before starting your rollup, you'll want to make a change in $HOME/polaris/e2e/testapp/entrypoint.sh to point to the right DA start height:

    bash
    # set the data availability layer's block height from local-celestia-devnet
     DA_BLOCK_HEIGHT=$(docker exec $(docker ps -q) celestia header local-head --token $AUTH_TOKEN | jq '.result.header.height' -r) 
     DA_BLOCK_HEIGHT=$(curl https://rpc-mocha.pops.one/block |jq -r '.result.block.header.height') 

    Start the EVM rollup โ€‹

    Change into the Polaris directory in your terminal:

    bash
    cd $HOME/polaris
    -make start

    Congratulations! Your light node is now posting your rollup's data to Celestia's Mocha testnet.

    Find an explorer to view the default namespace in the tutorial or search for your own namespace on Celenium.

    Released under the APACHE-2.0 License

    - +make start

    Congratulations! Your light node is now posting your rollup's data to Celestia's Mocha testnet.

    Find an explorer to view the default namespace in the tutorial or search for your own namespace on Celenium.

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/tutorials/quick-start.html b/pr-383/tutorials/quick-start.html index 66af0456e..867467b38 100644 --- a/pr-383/tutorials/quick-start.html +++ b/pr-383/tutorials/quick-start.html @@ -7,33 +7,33 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - + + @@ -60,14 +60,14 @@
    On this page

    Quick start guide โ€‹

    Welcome to Rollkit, a sovereign rollup framework! The easiest way to launch your sovereign rollup node is by using the Rollkit CLI.

    ๐Ÿ“ฆ Install Rollkit (CLI) โ€‹

    To install Rollkit, run the following command in your terminal:

    bash
    curl -sSL https://rollkit.dev/install.sh | sh -s v0.13.3

    Verify the installation by checking the Rollkit version:

    bash
    rollkit version

    A successful installation will display the version number and its associated git commit hash.

    ๐Ÿš€ Run your sovereign rollup node โ€‹

    To start a basic sovereign rollup node, execute:

    bash
    rollkit start

    Upon execution, the CLI will output log entries that provide insights into the node's initialization and operation:

    bash
    I[2024-05-01|09:58:46.001] Found private validator                      module=main keyFile=/root/.rollkit/config/priv_validator_key.json stateFile=/root/.rollkit/data/priv_validator_state.json
    +
    On this page

    Quick start guide โ€‹

    Welcome to Rollkit, a sovereign rollup framework! The easiest way to launch your sovereign rollup node is by using the Rollkit CLI.

    ๐Ÿ“ฆ Install Rollkit (CLI) โ€‹

    To install Rollkit, run the following command in your terminal:

    bash
    curl -sSL https://rollkit.dev/install.sh | sh -s v0.13.3

    Verify the installation by checking the Rollkit version:

    bash
    rollkit version

    A successful installation will display the version number and its associated git commit hash.

    ๐Ÿš€ Run your sovereign rollup node โ€‹

    To start a basic sovereign rollup node, execute:

    bash
    rollkit start

    Upon execution, the CLI will output log entries that provide insights into the node's initialization and operation:

    bash
    I[2024-05-01|09:58:46.001] Found private validator                      module=main keyFile=/root/.rollkit/config/priv_validator_key.json stateFile=/root/.rollkit/data/priv_validator_state.json
     I[2024-05-01|09:58:46.002] Found node key                               module=main path=/root/.rollkit/config/node_key.json
     I[2024-05-01|09:58:46.002] Found genesis file                           module=main path=/root/.rollkit/config/genesis.json
     ...
     I[2024-05-01|09:58:46.080] Started node                                 module=main
     I[2024-05-01|09:58:46.081] Creating and publishing block                module=BlockManager height=223
    -I[2024-05-01|09:58:46.082] Finalized block                              module=BlockManager height=223 num_txs_res=0 num_val_updates=0 block_app_hash=

    ๐ŸŽ‰ Conclusion โ€‹

    That's it! Your sovereign rollup node is now up and running. It's incredibly simple to start a blockchain (which is essentially what a rollup is) these days using Rollkit. Explore further and discover how you can build useful applications on Rollkit. Good luck!

    Released under the APACHE-2.0 License

    - +I[2024-05-01|09:58:46.082] Finalized block module=BlockManager height=223 num_txs_res=0 num_val_updates=0 block_app_hash=

    ๐ŸŽ‰ Conclusion โ€‹

    That's it! Your sovereign rollup node is now up and running. It's incredibly simple to start a blockchain (which is essentially what a rollup is) these days using Rollkit. Explore further and discover how you can build useful applications on Rollkit. Good luck!

    Released under the APACHE-2.0 License

    + \ No newline at end of file diff --git a/pr-383/tutorials/wordle.html b/pr-383/tutorials/wordle.html index 5437b565c..e22052d82 100644 --- a/pr-383/tutorials/wordle.html +++ b/pr-383/tutorials/wordle.html @@ -7,34 +7,34 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - + + @@ -61,10 +61,7 @@
    On this page

    ๐Ÿ•น๏ธ Wordle app โ€‹

    wordle-app

    This tutorial guide will go over building a cosmos-sdk app for Rollkit, the Sovereign-Rollup implementation of CometBFT, for the popular game Wordle.

    This tutorial will go over how to setup Rollkit in the Ignite CLI and use it to build the game. The tutorial will go over the simple design, as well as conclude with future implementations and ideas to extend this codebase.

    TIP

    This tutorial explores Rollkit, currently in Alpha. If you encounter bugs, please report them via a GitHub issue ticket or reach out in our Telegram group.

    ๐Ÿ’ป Pre-requisites โ€‹

    Given this tutorial is targeted for developers who are experienced in Cosmos-SDK, we recommend you go over the following tutorials in Ignite to understand all the different components in Cosmos-SDK before proceeding with this tutorial.

    You do not have to do those guides in order to follow this Wordle tutorial, but doing so helps you understand the architecture of Cosmos-SDK better.

    ๐Ÿ“– Design implementation โ€‹

    The rules of Wordle are simple: You have to guess the word of the day.

    Key Points to Consider:

    • The word is a five-letter word.
    • You have 6 guesses.
    • Every 24 hours, thereโ€™s a new word.

    The GUI for Wordle shows you a few indicators: a green highlight on a letter in a certain position means thatโ€™s the correct letter for the Wordle in the right position. A yellow highlight means itโ€™s a correct letter for the Wordle included in the wrong position. A grey highlight means the letter isnโ€™t part of the Wordle.

    For simplicity of the design, we will avoid those hints, although there are ways to extend this codebase to implement that, which we will show at the end.

    In this current design, we implement the following rules:

    • 1 Wordle can be submitted per day
    • Every address will have 6 tries to guess the word
    • It must be a five-letter word.
    • Whoever guesses the word correctly before their 6 tries are over gets an award of 100 WORDLE tokens.

    We will go over the architecture to achieve this further in the guide. But for now, we will get started setting up our development environment.

    โ›“๏ธ Ignite and scaffolding the wordle chain โ€‹

    ๐Ÿ”ฅ Ignite โ€‹

    Ignite is an amazing CLI tool to help us get started building our own blockchains for cosmos-sdk apps. It provides lots of power toolings and scaffoldings for adding messages, types, and modules with a host of cosmos-sdk libraries provided.

    You can read more about Ignite here.

    To install Ignite, you can run this command in your terminal:

    bash
    curl https://get.ignite.com/cli@v28.3.0! | bash
    -sudo mv ignite /usr/local/bin/

    This installs Ignite CLI in your local machine. This tutorial uses a macOS but it should work for Windows. For Windows users, check out the Ignite docs on installation for Windows machines.

    Now, refresh your terminal using source or open a new terminal session for the change to take place.

    If you run the following:

    bash
    ignite --help

    You should see an output of help commands meaning Ignite was installed successfully!

    โ›“๏ธ Scaffolding the wordle chain โ€‹

    Now, comes the fun part, creating a new blockchain! With Ignite, the process is pretty easy and straightforward.

    Ignite CLI comes with several scaffolding commands that are designed to make development more straightforward by creating everything you need to build your blockchain.

    First, we will use Ignite CLI to build the foundation of a fresh Cosmos SDK blockchain. Ignite minimizes how much blockchain code you must write yourself. If you are coming from the EVM-world, think of Ignite as a Cosmos-SDK version of Foundry or Hardhat but specifically designed to build blockchains.

    We first run the following command to setup our project for our new blockchain, Wordle.

    bash
    ignite scaffold chain wordle --no-module

    This command scaffolds a new chain directory called wordle in your local directory from which you ran the command. Notice that we passed the --no-module flag, this is because we will be creating the module after.

    ๐Ÿ—‚๏ธ Wordle directory โ€‹

    Now, itโ€™s time to enter the directory:

    bash
    cd wordle

    Inside you will see several directories and architecture for your cosmos-sdk blockchain.

    File/directoryPurpose
    app/Files that wire together the blockchain. The most important file is app.go that contains type definition of the blockchain and functions to create and initialize it.
    cmd/The main package responsible for the CLI of compiled binary.
    docs/Directory for project documentation. By default, an OpenAPI spec is generated.
    proto/Protocol buffer files describing the data structure.
    testutil/Helper functions for testing.
    vue/A Vue 3 web app template.
    x/Cosmos SDK modules and custom modules.
    config.ymlA configuration file for customizing a chain in development.
    readme.mdA readme file for your sovereign application-specific blockchain project.

    Going over each one is outside the scope of this guide, but we encourage you to read about it here.

    Most of the tutorial work will happen inside the x directory.

    ๐Ÿ› ๏ธ Setting up Rollkit โ€‹

    Before we continue with building our Wordle App, we need to set up Rollkit on our codebase.

    ๐Ÿ—ž๏ธ Installing Rollkit โ€‹

    Run the following command inside the wordle directory.

    bash
    go mod edit -replace github.com/cosmos/cosmos-sdk=github.com/rollkit/cosmos-sdk@v0.50.6-rollkit-v0.13.3-no-fraud-proofs
    -go mod tidy
    -go mod download

    With that, we have Rollkit changes added to the project directory. Now, let's build the Wordle app!

    โœจ Creating the wordle module โ€‹

    For the Wordle module, we can add dependencies offered by Cosmos-SDK.

    From the Cosmos-SDK docs, a module is defined as the following:

    In a Cosmos SDK blockchain, application-specific logic is implemented in separate modules. Modules keep code easy to understand and reuse. Each module contains its own message and transaction processor, while the Cosmos SDK is responsible for routing each message to its respective module.

    Many modules exist for slashing, validating, auth.

    ๐Ÿ”– Scaffolding a module โ€‹

    We will be using the bank module dependency for transactions.

    From the Cosmos-SDK docs, the bank module is defined as the following:

    The bank module is responsible for handling multi-asset coin transfers between accounts and tracking special-case pseudo-transfers which must work differently with particular kinds of accounts (notably delegating/undelegating for vesting accounts). It exposes several interfaces with varying capabilities for secure interaction with other modules which must alter user balances.

    We build the module with the bank dependency with the following command:

    bash
    ignite scaffold module wordle --dep bank

    This will scaffold the Wordle module to our Wordle Chain project.

    โœ‰๏ธ Messages โ€‹

    Messages allow us to process and submit information to our specific module.

    From the Cosmos-SDK docs, messages are:

    In the Cosmos SDK, messages are objects that are contained in transactions to trigger state transitions. Each Cosmos SDK module defines a list of messages and how to handle them.

    For messages for Wordle, given our initial design, we will make 2 messages with ignite.

    • The first one is: SubmitWordle and it only passes the Wordle of the Day.
    • The second one is: SubmitGuess and it attempts to guess the submitted wordle. It also passes a word as a guess.

    With these initial designs, we can start creating our messages!

    ๐Ÿ’ฌ Scaffolding a message โ€‹

    To create the SubmitWordle message, we run the following command:

    bash
    ignite scaffold message submit-wordle word

    This creates the submit-wordle message that takes in word as a parameter.

    We now create the final message, SubmitGuess:

    bash
    ignite scaffold message submit-guess word

    Here, we are passing a word as a guess with submit-guess.

    ๐ŸŽจ Wordle types โ€‹

    For the next steps, we will be creating types to be used by the messages we created.

    ๐Ÿ—๏ธ Scaffolding wordle types โ€‹

    bash
    ignite scaffold map wordle word submitter --no-message

    This type is a map called Wordle with two values of word and submitter. submitter is the address of the person that submitted the Wordle.

    The second type is the Guess type. It allows us to store the latest guess for each address that submitted a solution.

    bash
    ignite scaffold map guess word submitter count --no-message

    Here, we are also storing count to count how many guesses this address submitted.

    ๐Ÿ” Keeper functions โ€‹

    Now itโ€™s time to implement the Keeper functions for each message. From the Cosmos-SDK docs, Keeper is defined as the following:

    The main core of a Cosmos SDK module is a piece called the keeper. The keeper handles interactions with the store, has references to other keepers for cross-module interactions, and contains most of the core functionality of a module.

    Keeper is an abstraction on Cosmos that allows us to interact with the Key-Value store and change the state of the blockchain.

    Here, it will help us outline the logic for each message we create.

    ๐Ÿ“ค SubmitWordle function โ€‹

    We first start with the SubmitWordle function.

    Open up the following file: x/wordle/keeper/msg_server_submit_wordle.go

    Inside the following, replace the current code with the following code, which we will go over in a bit:

    go
    package keeper
    +
    On this page

    ๐Ÿ•น๏ธ Wordle app โ€‹

    wordle-app

    This tutorial guide will go over building a cosmos-sdk app for Rollkit, the Sovereign-Rollup implementation of CometBFT, for the popular game Wordle.

    This tutorial will go over how to setup Rollkit in the Ignite CLI and use it to build the game. The tutorial will go over the simple design, as well as conclude with future implementations and ideas to extend this codebase.

    TIP

    This tutorial explores Rollkit, currently in Alpha. If you encounter bugs, please report them via a GitHub issue ticket or reach out in our Telegram group.

    ๐Ÿ’ป Pre-requisites โ€‹

    Given this tutorial is targeted for developers who are experienced in Cosmos-SDK, we recommend you go over the following tutorials in Ignite to understand all the different components in Cosmos-SDK before proceeding with this tutorial.

    You do not have to do those guides in order to follow this Wordle tutorial, but doing so helps you understand the architecture of Cosmos-SDK better.

    ๐Ÿ“– Design implementation โ€‹

    The rules of Wordle are simple: You have to guess the word of the day.

    Key Points to Consider:

    • The word is a five-letter word.
    • You have 6 guesses.
    • Every 24 hours, thereโ€™s a new word.

    The GUI for Wordle shows you a few indicators: a green highlight on a letter in a certain position means thatโ€™s the correct letter for the Wordle in the right position. A yellow highlight means itโ€™s a correct letter for the Wordle included in the wrong position. A grey highlight means the letter isnโ€™t part of the Wordle.

    For simplicity of the design, we will avoid those hints, although there are ways to extend this codebase to implement that, which we will show at the end.

    In this current design, we implement the following rules:

    • 1 Wordle can be submitted per day
    • Every address will have 6 tries to guess the word
    • It must be a five-letter word.
    • Whoever guesses the word correctly before their 6 tries are over gets an award of 100 WORDLE tokens.

    We will go over the architecture to achieve this further in the guide. But for now, we will get started setting up our development environment.

    โ›“๏ธ Ignite and scaffolding the wordle chain โ€‹

    ๐Ÿ”ฅ Ignite โ€‹

    Ignite is an amazing CLI tool to help us get started building our own blockchains for cosmos-sdk apps. It provides lots of power toolings and scaffoldings for adding messages, types, and modules with a host of cosmos-sdk libraries provided.

    You can read more about Ignite here.

    To install Ignite, you can run this command in your terminal:

    bash
    curl https://get.ignite.com/cli@v28.4.0! | bash

    This installs Ignite CLI in your local machine. This tutorial uses a macOS but it should work for Windows. For Windows users, check out the Ignite docs on installation for Windows machines.

    Now, refresh your terminal using source or open a new terminal session for the change to take place.

    If you run the following:

    bash
    ignite --help

    You should see an output of help commands meaning Ignite was installed successfully!

    โ›“๏ธ Scaffolding the wordle chain โ€‹

    Now, comes the fun part, creating a new blockchain! With Ignite, the process is pretty easy and straightforward.

    Ignite CLI comes with several scaffolding commands that are designed to make development more straightforward by creating everything you need to build your blockchain.

    First, we will use Ignite CLI to build the foundation of a fresh Cosmos SDK blockchain. Ignite minimizes how much blockchain code you must write yourself. If you are coming from the EVM-world, think of Ignite as a Cosmos-SDK version of Foundry or Hardhat but specifically designed to build blockchains.

    we first run the following command to setup our project for our new blockchain, wordle.

    bash
    ignite scaffold chain wordle --no-module

    This command scaffolds a new chain directory called wordle in your local directory from which you ran the command. Notice that we passed the --no-module flag, this is because we will be creating the module after.

    ๐Ÿ—‚๏ธ Wordle directory โ€‹

    Now, itโ€™s time to enter the directory:

    bash
    cd wordle

    Inside you will see several directories and architecture for your cosmos-sdk blockchain.

    File/directoryPurpose
    app/Files that wire together the blockchain. The most important file is app.go that contains type definition of the blockchain and functions to create and initialize it.
    cmd/The main package responsible for the CLI of compiled binary.
    docs/Directory for project documentation. By default, an OpenAPI spec is generated.
    proto/Protocol buffer files describing the data structure.
    testutil/Helper functions for testing.
    vue/A Vue 3 web app template.
    x/Cosmos SDK modules and custom modules.
    config.ymlA configuration file for customizing a chain in development.
    readme.mdA readme file for your sovereign application-specific blockchain project.

    Going over each one is outside the scope of this guide, but we encourage you to read about it here.

    Most of the tutorial work will happen inside the x directory.

    ๐Ÿ› ๏ธ Setting up Rollkit โ€‹

    Before we continue with building our Wordle App, we need to set up Rollkit on our codebase.

    ๐Ÿ—ž๏ธ Installing Rollkit โ€‹

    To install the Rollkit app to Ignite, run the following command:

    bash
    ignite app install github.com/ignite/apps/rollkit@rollkit/v0.2.0

    Next, add Rollkit to your project by running:

    bash
    ignite rollkit add

    Initialize the Rollkit chain configuration for a local DA network with this command:

    bash
    ignite rollkit init --local-da

    This will create a ~/.wordle directory with all the necessary files to run a rollup on a local DA network. With these steps, Rollkit is now added. Let's build the Wordle app!

    โœจ Creating the wordle module โ€‹

    For the Wordle module, we can add dependencies offered by Cosmos-SDK.

    From the Cosmos-SDK docs, a module is defined as the following:

    In a Cosmos SDK blockchain, application-specific logic is implemented in separate modules. Modules keep code easy to understand and reuse. Each module contains its own message and transaction processor, while the Cosmos SDK is responsible for routing each message to its respective module.

    Many modules exist for slashing, validating, auth.

    ๐Ÿ”– Scaffolding a module โ€‹

    We will be using the bank module dependency for transactions.

    From the Cosmos-SDK docs, the bank module is defined as the following:

    The bank module is responsible for handling multi-asset coin transfers between accounts and tracking special-case pseudo-transfers which must work differently with particular kinds of accounts (notably delegating/undelegating for vesting accounts). It exposes several interfaces with varying capabilities for secure interaction with other modules which must alter user balances.

    We build the module with the bank dependency with the following command:

    bash
    ignite scaffold module wordle --dep bank

    This will scaffold the Wordle module to our Wordle Chain project.

    โœ‰๏ธ Messages โ€‹

    Messages allow us to process and submit information to our specific module.

    From the Cosmos-SDK docs, messages are:

    In the Cosmos SDK, messages are objects that are contained in transactions to trigger state transitions. Each Cosmos SDK module defines a list of messages and how to handle them.

    For messages for Wordle, given our initial design, we will make 2 messages with ignite.

    • The first one is: SubmitWordle and it only passes the Wordle of the Day.
    • The second one is: SubmitGuess and it attempts to guess the submitted wordle. It also passes a word as a guess.

    With these initial designs, we can start creating our messages!

    ๐Ÿ’ฌ Scaffolding a message โ€‹

    To create the SubmitWordle message, we run the following command:

    bash
    ignite scaffold message submit-wordle word

    This creates the submit-wordle message that takes in word as a parameter.

    We now create the final message, SubmitGuess:

    bash
    ignite scaffold message submit-guess word

    Here, we are passing a word as a guess with submit-guess.

    ๐ŸŽจ Wordle types โ€‹

    For the next steps, we will be creating types to be used by the messages we created.

    ๐Ÿ—๏ธ Scaffolding wordle types โ€‹

    bash
    ignite scaffold map wordle word submitter --no-message

    This type is a map called Wordle with two values of word and submitter. submitter is the address of the person that submitted the Wordle.

    The second type is the Guess type. It allows us to store the latest guess for each address that submitted a solution.

    bash
    ignite scaffold map guess word submitter count --no-message

    Here, we are also storing count to count how many guesses this address submitted.

    ๐Ÿ” Keeper functions โ€‹

    Now itโ€™s time to implement the Keeper functions for each message. From the Cosmos-SDK docs, Keeper is defined as the following:

    The main core of a Cosmos SDK module is a piece called the keeper. The keeper handles interactions with the store, has references to other keepers for cross-module interactions, and contains most of the core functionality of a module.

    Keeper is an abstraction on Cosmos that allows us to interact with the Key-Value store and change the state of the blockchain.

    Here, it will help us outline the logic for each message we create.

    ๐Ÿ“ค SubmitWordle function โ€‹

    We first start with the SubmitWordle function.

    Open up the following file: x/wordle/keeper/msg_server_submit_wordle.go

    Inside the following, replace the current code with the following code, which we will go over in a bit:

    go
    package keeper
     
     import (
       "context"
    @@ -226,8 +223,7 @@
       string body = 2;
     }

    Next file is x/wordle/types/expected_keepers.go

    Here, we need to add the SendCoins method to the BankKeeper interface in order to allow sending the reward to the right guesser.

    go
    type BankKeeper interface {
       SendCoins(ctx sdk.Context, fromAddr sdk.AccAddress, toAddr sdk.AccAddress, amt sdk.Coins) error
    -}

    With that, we implemented all our Keeper functions! Time to compile the blockchain and take it out for a test drive.

    โ›“๏ธ Run the wordle chain โ€‹

    ๐Ÿชถ Run a local DA node โ€‹

    To set up a local data availability network node run:

    bash
    curl -sSL https://rollkit.dev/install-local-da.sh | sh v0.2.0

    This script builds and runs the node, now listening on port 7980.

    After you have Go and Ignite CLI installed, and your local data availability node running on your machine, you're ready to build, test, and launch your own sovereign rollup.

    ๐ŸŸข Building and running wordle chain โ€‹

    We have a handy init.sh found in this repo.

    We can copy it over to our directory with the following commands:

    bash
    # From inside the `wordle` directory
    -wget https://rollkit.dev/wordle/init.sh

    This copies over our init.sh script to initialize our Wordle Rollup.

    You can view the contents of the script to see how we initialize the Wordle Rollup.

    You can initialize the script with the following command:

    bash
    bash init.sh

    With that, we have kickstarted our wordled network!

    In another window, run the following to submit a Wordle:

    bash
    wordled tx wordle submit-wordle giant --from wordle-key --keyring-backend test --chain-id wordle -b async -y

    NOTE: We are submitting a transaction asynchronously to avoid any timeout errors. With Rollkit as a replacement to CometBFT, we need to wait for the data availability network to ensure a block was included from Wordle, before proceeding to the next block. Currently, in Rollkit, the single aggregator is not moving forward with the next block production as long as it is trying to submit the current block to the DA network. In the future, with leader selection, block production and sync logic improves dramatically.

    This will ask you to confirm the transaction with the following message:

    json
    {
    +}

    With that, we implemented all our Keeper functions! Time to compile the blockchain and take it out for a test drive.

    โ›“๏ธ Run the wordle chain โ€‹

    ๐Ÿชถ Run a local DA node โ€‹

    To set up a local data availability network node run:

    bash
    curl -sSL https://rollkit.dev/install-local-da.sh | sh -s v0.2.0

    This script builds and runs the node, now listening on port 7980.

    After you have Go and Ignite CLI installed, and your local data availability node running on your machine, you're ready to build, test, and launch your own sovereign rollup.

    ๐ŸŸข Building and running wordle chain โ€‹

    Now let's initialize a rollkit.toml file in the worldle directory by running:

    bash
    rollkit toml init

    To start running a rollup with the Wordle chain, run the following command:

    bash
    rollkit start --rollkit.aggregator --rollkit.da_address http://localhost:7980

    With that, we have kickstarted our wordle network!

    In another window, from the ~/wordle directory (where rollkit.toml is located) run the following command to submit a Wordle:

    bash
    rollkit tx wordle submit-wordle giant --from wordle-key --keyring-backend test --chain-id wordle -b async -y

    NOTE: We are submitting a transaction asynchronously to avoid any timeout errors. With Rollkit as a replacement to CometBFT, we need to wait for the data availability network to ensure a block was included from Wordle, before proceeding to the next block. Currently, in Rollkit, the single aggregator is not moving forward with the next block production as long as it is trying to submit the current block to the DA network. In the future, with leader selection, block production and sync logic improves dramatically.

    This will ask you to confirm the transaction with the following message:

    json
    {
       "body":{
         "messages":[
            {
    @@ -268,9 +264,9 @@
     raw_log: ""
     timestamp: ""
     tx: null
    -txhash: F159E11116EC9505FC2C0D97E605357FEC0F3DAE06B57BFB17EA6A548905043E

    Note, this does not mean the transaction was included in the block yet. Let's query the transaction hash to check whether it has been included in the block yet or if there are any errors.

    bash
    wordled query tx --type=hash F159E11116EC9505FC2C0D97E605357FEC0F3DAE06B57BFB17EA6A548905043E --chain-id wordle --output json | jq -r '.raw_log'

    This should display an output like the following:

    json
    [{"events":[{"type":"message","attributes":[{"key":"action","value":"submit_wordle"
    -}]}]}]

    Test out a few things for fun:

    bash
    wordled tx wordle submit-guess 12345 --from wordle-key --keyring-backend test --chain-id wordle -b async -y

    After confirming the transaction, query the txhash given the same way you did above. You will see the response shows an Invalid Error because you submitted integers.

    Now try:

    bash
    wordled tx wordle submit-guess ABCDEFG --from wordle-key --keyring-backend test --chain-id wordle -b async -y

    After confirming the transaction, query the txhash given the same way you did above. You will see the response shows an Invalid Error because you submitted a word larger than 5 characters.

    Now try to submit another wordle even though one was already submitted

    bash
    wordled tx wordle submit-wordle meter --from wordle-key --keyring-backend test --chain-id wordle -b async -y

    After submitting the transactions and confirming, query the txhash given the same way you did above. You will get an error that a wordle has already been submitted for the day.

    Now letโ€™s try to guess a five letter word:

    bash
    wordled tx wordle submit-guess least --from wordle-key --keyring-backend test --chain-id wordle -b async -y

    After submitting the transactions and confirming, query the txhash given the same way you did above. Given you didnโ€™t guess the correct word, it will increment the guess count for wordle-key's account.

    We can verify this by querying the list:

    bash
    wordled q wordle list-guess --output json

    This outputs all Guess objects submitted so far, with the index being todayโ€™s date and the address of the submitter.

    With that, we implemented a basic example of Wordle using Cosmos-SDK and Ignite and Rollkit. Read on to how you can extend the code base.

    ๐Ÿ”ฎ Extending in the future โ€‹

    There are many ways this codebase can be extended:

    1. You can improve messaging around when you guess the correct word.
    2. You can hash the word prior to submitting it to the chain, ensuring the hashing is local so that itโ€™s not revealed via front-running by others monitoring the plaintext string when itโ€™s submitted on-chain.
    3. You can improve the UI in terminal using a nice interface for Wordle. Some examples are here.
    4. You can improve current date to stick to a specific timezone.
    5. You can create a bot that submits a wordle every day at a specific time.
    6. You can create a vue.js front-end with Ignite using example open-source repositories here and here.

    ๐ŸŽ‰ Next steps โ€‹

    Congratulations! You've built a Wordle app using Cosmos-SDK and Rollkit. Now, explore connecting your rollup to DA networks like Celestia.

    Released under the APACHE-2.0 License

    - +txhash: F159E11116EC9505FC2C0D97E605357FEC0F3DAE06B57BFB17EA6A548905043E

    Note, this does not mean the transaction was included in the block yet. Let's query the transaction hash to check whether it has been included in the block yet or if there are any errors.

    bash
    rollkit query tx --type=hash F159E11116EC9505FC2C0D97E605357FEC0F3DAE06B57BFB17EA6A548905043E --chain-id wordle --output json | jq -r '.raw_log'

    This should display an output like the following:

    json
    [{"events":[{"type":"message","attributes":[{"key":"action","value":"submit_wordle"
    +}]}]}]

    Test out a few things for fun:

    bash
    rollkit tx wordle submit-guess 12345 --from wordle-key --keyring-backend test --chain-id wordle -b async -y

    After confirming the transaction, query the txhash given the same way you did above. You will see the response shows an Invalid Error because you submitted integers.

    Now try:

    bash
    rollkit  tx wordle submit-guess ABCDEFG --from wordle-key --keyring-backend test --chain-id wordle -b async -y

    After confirming the transaction, query the txhash given the same way you did above. You will see the response shows an Invalid Error because you submitted a word larger than 5 characters.

    Now try to submit another wordle even though one was already submitted

    bash
    rollkit tx wordle submit-wordle meter --from wordle-key --keyring-backend test --chain-id wordle -b async -y

    After submitting the transactions and confirming, query the txhash given the same way you did above. You will get an error that a wordle has already been submitted for the day.

    Now letโ€™s try to guess a five letter word:

    bash
    rollkit tx wordle submit-guess least --from wordle-key --keyring-backend test --chain-id wordle -b async -y

    After submitting the transactions and confirming, query the txhash given the same way you did above. Given you didnโ€™t guess the correct word, it will increment the guess count for wordle-key's account.

    We can verify this by querying the list:

    bash
    rollkit q wordle list-guess --output json

    This outputs all Guess objects submitted so far, with the index being todayโ€™s date and the address of the submitter.

    With that, we implemented a basic example of Wordle using Cosmos-SDK and Ignite and Rollkit. Read on to how you can extend the code base.

    ๐Ÿ”ฎ Extending in the future โ€‹

    There are many ways this codebase can be extended:

    1. You can improve messaging around when you guess the correct word.
    2. You can hash the word prior to submitting it to the chain, ensuring the hashing is local so that itโ€™s not revealed via front-running by others monitoring the plaintext string when itโ€™s submitted on-chain.
    3. You can improve the UI in terminal using a nice interface for Wordle. Some examples are here.
    4. You can improve current date to stick to a specific timezone.
    5. You can create a bot that submits a wordle every day at a specific time.
    6. You can create a vue.js front-end with Ignite using example open-source repositories here and here.

    ๐ŸŽ‰ Next steps โ€‹

    Congratulations! You've built a Wordle app using Cosmos-SDK and Rollkit. Now, explore connecting your rollup to DA networks like Celestia.

    Released under the APACHE-2.0 License

    + \ No newline at end of file